AXI ID: 単数か複数か - 1.0 日本語

Versal ACAP Programmable Network on Chip and Integrated Memory Controller v1.0 LogiCORE IP 製品ガイド (PG313)

Document ID
PG313
Release Date
2021-04-08
Version
1.0 日本語

Versal™ アーキテクチャおよびインターコネクトは AMBA® AXI 規格に準拠しており、各トランザクションには AXI ID が与えられます。マスターは、発行するすべてのトランザクションに 1 つの AXI ID を使用することも、トランザクションごとに異なる ID を使用することもできます。トランザクションの応答は同じ AXI ID で返されるため、内部デスティネーションが複数あってもマスターはこの ID を使用して応答を適切に転送できます。複雑なマスター内での AXI ID の使用例として、8 チャネル DMA があります。データ転送用に 8 つの異なる AXI ID (各チャネルに 1 つ) を使用し、ディスクリプター アクセス用にも 8 つの AXI ID (各チャネルに 1 つ) を使用します。この場合、DMA ロジックは受信した応答の AXI ID を検査して、その応答の処理方法を決定します。

AXI ID の重要な原則として、AXI ID が同じトランザクションは、発行されたのと同じ順番で応答を返す必要があります。これに対し、AXI ID の異なるトランザクションは任意の順番で返すことができます。ここで、シングル スレッドでデータにアクセスする単純なファンクションがマスターの場合を考えてみます。1 つの ID を使用した場合、トランザクションは常に発行した順で応答が返されます。複数の ID を使用するとトランザクションの応答が任意の順番で返されるため、受信した応答の順番を正しく判断し、必要に応じて順番を入れ替える特別な処理がマスター側で必要となります。したがって、このような場合は 1 つの ID を使用することが推奨されます。ただしほとんどの場合は、複数の ID を使用した方が性能が向上します。したがって、マスターの設計が複雑になることを考慮しながら、どれだけの性能向上が見込めるかを評価することを推奨します。

ただし例外として、NMU から NSU を経由して PS または PL に向かうトランザクションには、この規則は適用されません。NoC から PS および PL へのエグレス ポイントでは、NSU は 2 ビットの ID しかサポートしません。元の AXI ID は、2 ビットの単純なフォーマットの ID に圧縮されます。これは、未処理の ID が 4 に制限されることを意味します。未処理の ID の数が制限されると、OT の数も制限されます。次に、両極端な例を挙げます。
  • すべてのトランザクションが同じ AXI ID を使用した場合、OT の数は最大 64。これは、NoC NMU に 1 つのマスターを接続した場合です。
  • すべてのトランザクションが異なる ID を使用した場合、OT の数は最大 4。

これらの最大値は、読み出しチャネルと書き込みチャネルで独立しています。