Avalon® インターフェイスの仕様書

ID 683091
日付 9/26/2022
Public
ドキュメント目次

3.5.5. バースト転送

バーストでは、すべてのワードを個別に処理するのではなく、複数の転送を 1 つの単位として実行します。バーストにより、一度に複数のワードを処理することでより良い効率を達成するエージェント・ポートのスループットを向上させることができます (SDRAM など)。バーストによる実際の影響は、バーストの期間中に調停がロックされることです。バーストを行う Avalon® -MM インターフェイスが読み出しと書き込みの両方をサポートする場合は、読み出しバーストと書き込みバーストの両方をサポートする必要があります。

バーストを行う Avalon® -MM インターフェイスには、burstcount 出力信号が含まれます。エージェントに burstcount 入力がある場合、そのエージェントはバーストに対応しています。

burstcount 信号は次のように動作します。

  • バーストの開始時に、burstcount はバースト内の連続する転送数を示します。
  • burstcount の幅が <n> の場合、最大バースト長は 2(<n>-1) です。正当な最小バースト長は 1 です。

エージェント読み出しバーストをサポートするには、エージェントで次の内容もサポートする必要があります。

  • 待機状態 (waitrequest 信号を使用)
  • 可変レイテンシーでのパイプライン転送 (readdatavalid 信号を使用)

バーストの開始時に、エージェントは、address とバースト長である burstcount の値を確認します。バーストのアドレスが <a>burstcount の値が <b> の場合、エージェントでは、アドレス <a> から開始する <b> 数の連続する転送を行う必要があります。バーストは、エージェントが <b 番目> のデータワードを受信 (書き込み時) または返信 (読み出し時) した後に完了します。バーストを行うエージェントでは、それぞれのバーストで 1 度だけ addressburstcount をキャプチャーする必要があります。エージェント・ロジックでは、バースト内の最初の転送以外のアドレスを推断する必要があります。エージェントでは、入力信号の beginbursttransfer を使用することもできます。この信号は、インターコネクトがそれぞれのバーストの最初のサイクルでアサートするものです。