インテル® Agilex™ ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアル

ID 683567
日付 1/19/2023
Public
ドキュメント目次

19.5.6.2.2. 例2: 送信FIFOのウォーターマーク・レベル = 192

以下のように仮定し、この例を検討します。†

DMAバースト長 = FIFO_DEPTH - DMATDLR

この場合、DMAバースト内で転送されるデータアイテムの数は、送信FIFOバッファーの空きスペースに等しくなります。次の内容を考察します。

  • 送信FIFOのウォーターマーク・レベル = DMATDLR = 192 †
  • DMAバースト長 = FIFO_DEPTH - DMATDLR = 64 †
  • SPI送信におけるFIFO_DEPTH = 256 †
  • ブロック・トランザクション・サイズ = 960 †
図 97. 送信FIFOのウォーターマーク・レベル = 192

ブロック内のバースト・トランザクション数は次のとおりです。†

ブロック・トランザクション・サイズ/DMAバースト長 = 960/64 = 15 †

このブロック転送の場合、DMAブロック転送には送信先へのバースト・トランザクションが15あります。ただし、ウォーターマーク・レベルであるDMATDLRが高く、DMAコントローラーには、SPI送信FIFOバッファーが空になる前にバースト・トランザクション送信先からの要求に対応する十分な時間があるため、SPI送信アンダーフローの可能性は低くなります。†

この例では、ブロックあたりのバースト・トランザクションを増やすことでアンダーフローの可能性を下げています。そのため、最初の例よりもブロックあたりのバースト量が増加し、バスの使用率が低下する可能性があります。