インテルのみ表示可能 — GUID: nik1412467951097
Ixiasoft
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 度だけ address と burstcount をキャプチャーする必要があります。エージェント・ロジックでは、バースト内の最初の転送以外のアドレスを推断する必要があります。エージェントでは、入力信号の beginbursttransfer を使用することもできます。この信号は、インターコネクトがそれぞれのバーストの最初のサイクルでアサートするものです。