About the DMA transfer time for S6E2H

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
NoAr_1540581
Level 5
Level 5
Distributor - Macnica (Japan)
5 solutions authored 250 sign-ins 100 replies posted

Hello

[Question]   No.1:

They said that they want to estimate the time required for DMA transfer, but they can't find any useful information.

For example, please tell me the transfer time and the breakdown (time and number of cycles) under the following conditions.

Precondition: HCLK/FCLK: 100MHz, PCLK1: 25MHz, PCLK2: 50MHz

① Transfer mode: Hardware Demand transfer,

Transfer request signal: AD converter Unit1 scan conversion interrupt signal,

Transfer bit width: word (32 bits),

Transfer source address: scan conversion FIFO data register (SCFD)-fixed,

Transfer destination address: SRAM -Increment

② Transfer mode: Hardware Demand transfer,

Transfer request signal: MFS CSIO ch4 receive interrupt signal,

Transfer bit width: byte (8 bits),

Transfer source address: receive data register (RDR) -fixed,

Transfer destination address: SRAM-increment

③ Transfer mode: Hardware demand transfer,

Transfer request signal: MFS CSIO ch4 transmission interrupt signal,

Transfer bit width: byte (8 bits),

Transfer source address: SRAM-increment,

Transfer destination address: transmission data register (TDR) -fixed.

[Question]   No.2:

How long (time/cycles) does the Transfer Gap of DMA take?

[Question]   No.3

When switching channels of DMA, does it take time for the switching process in addition to the transfer gap period? If so, how is the time required for switching and its breakdown (time and number of cycles) determined?

[Question]   No.4

I want to estimate the time required for DSTC transfer, but I can't find any useful information.

For example, what is the transfer time and its breakdown (time and cycle number) under the following conditions?

Precondition: HCLK / FCLK: 100MHz, PCLK1: 25MHz, PCLK2: 50MHz

Transfer mode: Mode 1

Transfer request signal: AD converter Unit1 Scan conversion interrupt signal

Transfer bit width: word (32bit)

Transfer source address: Scan conversion FIFO data register (SCFD)-fixed

Transfer destination address: SRAM-increment

(For details on the DES setting value, see the attached document for "FM4_No.4_supplement.xls".)

[Question]     No.5:

We are verifying that the MFS CSIO communication (clock master, 12.5 MHz) by the DMA transfer②③ of "[Question] No.1" can be performed even if the A / D converter conversion result transfer by the No. 4  DSTC ①and the SRAM access of the program are affected. .

Assuming that the SRAM that performs DMA transfer for CSIO communication and the SRAM that performs DES reading, data transfer, and DES writing back in DSTC are the same SRAM0,

If the DSTC starts operation first and the DMA accesses the SRAM between “1) DES read”, “2) data transfer” and “3) DES write back” of the DSTC, WDuring which processing of the DSTC is the DMA waited, and at what timing can the SRAM be accessed?

Best Regards

Arai

0 Likes
1 Solution

[No.1]及び[No.4]についてのサイクル数。

前提としては、BUSを占有(調停が入らない=waitが入らない)の場合です。

① PeripheralからDMA/DSTCに起動指示するのにPCLK 2cycle

② DMA/DSTCが動作開始するのにHCLK 2cycle

~~~ここから転送 (転送する分だけ足してください)~~~

③ BUS権取得にHCLK 2cycle

④ BUSの乗り換えに1cycle (AHB=>APBの場合HCLK、 APB=>AHBの場合PCLK)

⑤ RAMアクセスにHCLK 2cycle

⑥ PeripheralアクセスにPCLK 2cycle

⑦ DSTCディスクリプタアクセスにHCLK 4cycle

⑧ 下の図のDMAのブロック転送時のTransfer GapにHCLK 6cycle

pastedImage_0.png

データは一回に32bit転送でき、8bitでも32bitでもサイクル数は変わらないです。ただし32bitを8bit*4回の転送に分解すると4倍のサイクル数になります。

View solution in original post

0 Likes
12 Replies
Takashi_M
Moderator
Moderator
Moderator
1000 replies posted 500 solutions authored 750 replies posted

Could you please let us know if you have any actual problem for these DMA transfer?

Or, this is just estimation for time consuming?

thanks.

0 Likes
NoAr_1540581
Level 5
Level 5
Distributor - Macnica (Japan)
5 solutions authored 250 sign-ins 100 replies posted

Hello

This is just estimation  for time consuming. Since they are designing new model, they need to get this answer as soon as possible.

Best Regards

Arai

0 Likes

Arai-san,

thank you for your feedback on this.

Regarding Question 2 and 3, could you please elaborate the transfer gap?

And also, regarding Question 5, we don't really understand your question. Could you please explain more details?

thank you.

P.S. please input one query in one thread as much as possible.

0 Likes
NoAr_1540581
Level 5
Level 5
Distributor - Macnica (Japan)
5 solutions authored 250 sign-ins 100 replies posted

Hello

[No.1]

DMA転送に要する時間を見積もりたいのですが、参考となる情報が見当たりません。例えば以下の条件での転送時間とその内訳(時間とサイクル数)はどうなりますか。

前提:HCLK/FCLK:100MHz、PCLK1:25MHz、PCLK2:50MHz

①転送モード:ハードウェアDemand転送、転送要求信号:ADコンバータUnit1 スキャン変換割り込み信号、転送ビット幅:ワード(32bit)、転送元アドレス:スキャン変換FIFOデータレジスタ(SCFD)-固定、転送先アドレス:SRAM-インクリメント

②転送モード:ハードウェアDemand転送、転送要求信号:MFS CSIO ch4の受信割り込み信号、転送ビット幅:バイト(8bit)、転送元アドレス:受信データレジスタ(RDR)-固定、転送先アドレス:SRAM-インクリメント

③転送モード:ハードウェアDemand転送、転送要求信号:MFS CSIO ch4の送信割り込み信号、転送ビット幅:バイト(8bit)、転送元アドレス:SRAM-インクリメント、転送先アドレス:送信データレジスタ(TDR)-固定

[No.2]

DMAのTransfer Gapの時間帯は具体的にどの程度の期間(時間・サイクル数)を要するのでしょうか。

[No.3]

DMAのch切替時にはTransfer Gapの期間に加えて切替処理分の時間を要するのでしょうか。その場合切替に要する時間とその内訳(時間とサイクル数)はどのように求められますか。

[No.4]

DSTC転送に要する時間を見積もりたいのですが、参考となる情報が見当たりません。例えば以下の条件での転送時間とその内訳(時間とサイクル数)はどうなりますか。

前提:HCLK/FCLK:100MHz、PCLK1:25MHz、PCLK2:50MHz

転送モード:モード1

転送要求信号:ADコンバータUnit1 スキャン変換割り込み信号

転送ビット幅:ワード(32bit)

転送元アドレス:スキャン変換FIFOデータレジスタ(SCFD)-固定

転送先アドレス:SRAM-インクリメント

(DES設定値の詳細は下記参照下さい)

DES setting.png

「No.5]

No.1のDMA転送②、③によるMFS CSIO通信(クロックマスタ・12.5MHz)が、No.4のDSTC①によるADコンバータ変換結果転送やプログラムのSRAMアクセスと被っても成り立つかを検証しています。

仮にCSIO通信用にDMA転送を行うSRAMとDSTCでのDES読み取り、データ転送、DES書き戻しを行うSRAMが同じSRAM0だったとして、先にDSTCが動作を開始した場合にDSTCの1)DES読み取り、2)データ転送、3)DES書き戻しの間でDMAがSRAMにアクセスする場合、DMAはDSTCのどの処理中に待たされ、どのタイミングでSRAMアクセスできるようになりますか。

Best Regards

Arai

0 Likes

Response #3でも問合せさせて頂きましたが、御質問のNo.2及びNo.3に記載されているTransfer Gapの詳細を頂けないでしょうか?

宜しくお願い致します。

0 Likes
NoAr_1540581
Level 5
Level 5
Distributor - Macnica (Japan)
5 solutions authored 250 sign-ins 100 replies posted

Transfer Gapの詳細に関しまして、下記補足致します。

質問の背景として、複数のDMA転送が発生した際に設計上処理が間に合うのかを確認したい。

DMAの転送は転送元からの読み取り、バスでの転送、転送先への書き込みのためのサイクルが発生すると考えています。

それぞれサイクル数がどう求められるのかを知りたいです。

それにあたって、TransferGapについても確認しておく必要があると考えています。

Transfer Gapのタイミングにならないと他のDMAチャネルに転送の権利が渡らないという認識ですが、

Transfer Gapのタイミングで次のDMAチャネルに切り替わるまでに時間がかかるようでしたらその時間も見積もりに入れる必要があるため知りたいです。

補足ですが、

Transfer Gapという名前が、単なるきっかけでしかなくて時間的な幅を持たないのかどうか。その概念も分からないので上記質問になっています。

ペリフェラルマニュアルの説明には「時間帯」となっているので、時間的な幅を持つものだという認識でいます。

仮に時間的な幅を持つのだとしたら、チャネル1の転送サイクルが終了した後、Transfer Gapで例えば2サイクル消費した後にチャネル2の転送が開始されるというイメージを持っています。

Transfer Gapとは別に切り替わりに時間がかかる場合にはそこも分けて時間として積み上げる必要があると考えています。

また、チャネルの優先度や順番などによって切り替わりの時間が変わる可能性があるようでしたらそれも知りたいです。

Best Regards

Arai

0 Likes

[No.1]及び[No.4]についてのサイクル数。

前提としては、BUSを占有(調停が入らない=waitが入らない)の場合です。

① PeripheralからDMA/DSTCに起動指示するのにPCLK 2cycle

② DMA/DSTCが動作開始するのにHCLK 2cycle

~~~ここから転送 (転送する分だけ足してください)~~~

③ BUS権取得にHCLK 2cycle

④ BUSの乗り換えに1cycle (AHB=>APBの場合HCLK、 APB=>AHBの場合PCLK)

⑤ RAMアクセスにHCLK 2cycle

⑥ PeripheralアクセスにPCLK 2cycle

⑦ DSTCディスクリプタアクセスにHCLK 4cycle

⑧ 下の図のDMAのブロック転送時のTransfer GapにHCLK 6cycle

pastedImage_0.png

データは一回に32bit転送でき、8bitでも32bitでもサイクル数は変わらないです。ただし32bitを8bit*4回の転送に分解すると4倍のサイクル数になります。

0 Likes
NoAr_1540581
Level 5
Level 5
Distributor - Macnica (Japan)
5 solutions authored 250 sign-ins 100 replies posted

No.1,No.4のご回答有難うございます。お手数ですが、No.2、No.3、No.5の回答予定日等についてご連絡可能であればお願いできますでしょうか?

Best Regards

Arai

0 Likes

No.2に付きましては、Re: About the DMA transfer time for S6E2H に記載しております。

また、No.3はRe: About the DMA transfer time for S6E2H① PeripheralからDMA/DSTCに起動指示するのにPCLK 2cycleとお考え下さい。

0 Likes
Takashi_M
Moderator
Moderator
Moderator
1000 replies posted 500 solutions authored 750 replies posted

No.5についてですが、

SRAMアクセスが競合した場合、いずれの場所でも切り替わる可能性があります。

(AHBのバスマトリックスの調停次第)

切り替えには4cycleを見積もりください。

しかしながら、ご質問にある切り替わるタイミングを特定することは困難です。

また、DSTCとDMAの間での競合を懸念されておりますが、CPUからのアクセスも競合対象になります。

同じSRAMにアクセスすれば、DSTC/DMAと同じく競合します。

以上です。

0 Likes
NoAr_1540581
Level 5
Level 5
Distributor - Macnica (Japan)
5 solutions authored 250 sign-ins 100 replies posted

回答有難うございます。

添付致しました、”FM4_DMA_estimate for overrun.xlsx”に追加質問させて頂いておりますが、

Q1) No.1(No.4)で回答頂きました内容ベースで、添付ファイルの見積もりをされておりましたが。転送の内訳(構成、順序)について不明との事もあり、正しい考えかどうかのご確認を頂けませんでしょうか?

Q2) No.1の回答では調停が入らない前提となっていますが、調停が入る場合の時間についても教えていただけますか。

シート「見積もり」に想像している内容を記したので、そのあたりを教えていただければと考えています。

Best Regards

Arai

0 Likes
lock attach
Attachments are accessible only for community members.

追加のご質問についてです。

Q1) FM4_DMA_estimate for overrun update.xlsxファイルをご確認ください。"イ),ロ)update"のページを追加しております。

尚、1Byte受信との事なのでTransfer Gap発生しない認識です。

また、エクセルで記載されている時間は調停が入らない場合の最速の時間になります。

Q2) 調停が入場合の時間は見積もることはできません。

これはCPUが何を実行しているか、SWの実装等でどれくらい待たされる関わるからです。

以上、宜しくお願い致します。

0 Likes