概要
最近では、ほぼすべてのザイリンクスIPがAXIインターフェイスを使用しています。 Zynq®、Zynq MP、MicroBlaze™、および新しいVersal™プロセッサはすべてAXIインターフェイスを使用します。 したがって、AXIインターフェイスは、ザイリンクスデバイスのほぼすべての新しいデザインの一部です。 その基本を理解すると、ザイリンクスデバイスでデザインをデザインおよびデバッグするのに役立ちます。
このブログエントリでは、ザイリンクスデバイスでのAXI3 / AXI4の基本について説明します。 まず、あまり刺激的でない部分、理論と用語から始めます。
AXIとは何ですか?
AXI、つまり A高度なeX伸ばせる Iインターフェイスは、ARMによっての一部として定義されたインターフェイスプロトコルです。 AMBA (アドバンストマイクロコントローラバスアーキテクチャ)標準。
AXI3 / AXI4仕様は、ARM Webサイトから無料で入手できます( )だから私はそれをダウンロードすることに興味がある人をお勧めします。
AXI3-Interfaces(AMBA 4)には次の4.0つのタイプがあります。
- AXI4(フルAXI4):高性能用 メモリ-マップされた要件。
- AXI4-Lite:シンプルで低スループットのメモリマップド通信用(たとえば、制御およびステータスとの間の送受信) レジスタ).
- AXI4-Stream:高速用 ストリーミング データ。
- 注: AXI4-Streamはこのエントリではカバーされていません。 ここでの「AXI」とは、AXI3、AXI4、およびAXI4-Liteを指します。
注: AXI3インターフェイスは完全なAXIインターフェイスに近いです。
AXI読み取りおよび書き込みチャネル
AXIプロトコルは、次の5つのチャネルを定義します。
- 2は読み取りトランザクションに使用されます
- 住所の読み取り
- データを読み取る
- 3は書き込みトランザクションに使用されます
- アドレスを書く
- データを書き込む
- 応答を書き込む
A チャンネル は、VALIDおよびREADY信号に関連付けられたAXI信号の独立したコレクションです。
Note:AXI4 / AXI3 / AXI4-Liteインターフェイスは、読み取り専用(2つの読み取りチャネルのみを含む)または書き込み専用(3つの書き込みチャネルのみを含む)にすることができます。
単一のチャネルで送信されるデータの一部は、 転送。 転送は、クロックの立ち上がりエッジがあるときにVALID信号とREADY信号の両方がハイのときに発生します。 たとえば、次の図では、転送はT3で発生しています。
AXI読み取りトランザクション
AXI読み取りトランザクションでは、2つの読み取りチャネルで複数の転送が必要です。
- まず、 アドレス読み取りチャネル アドレスといくつかの制御信号を設定するために、マスターからスレーブに送信されます。
- 次に、このアドレスのデータがスレーブからマスターに送信されます。 データチャネルの読み取り.
次の図のように、アドレスごとに複数のデータ転送が発生する可能性があることに注意してください。 このタイプのトランザクションは、 バースト.
AXI書き込みトランザクション
AXI書き込みトランザクションでは、3つの読み取りチャネルで複数の転送が必要です。
- まず、 アドレス書き込みチャネル アドレスといくつかの制御信号を設定するためにマスターがスレーブに送信されます。
- 次に、このアドレスのデータがマスターからスレーブに送信されます。 データチャネルの書き込み.
- 最後に、書き込み応答がスレーブからマスターに送信されます。 応答チャネルの書き込み 転送が成功したかどうかを示します。
で可能な応答値 応答チャネルの書き込み には次の値があります:
- OKAY(0b00):通常のアクセス成功。 通常のアクセスが成功したことを示します
- EXOKAY(0b01):排他的アクセスは大丈夫です。
- SLVERR(0b10):スレーブエラー。 スレーブに正常に到達しましたが、スレーブは元のマスターにエラー状態を返したいと考えています(たとえば、読み取られたデータが無効です)。
- DECERR(0b11):デコードエラー。 トランザクションアドレスにスレーブがないことを示すために、通常は相互接続コンポーネントによって生成されます
Note:読み取りトランザクションにも応答値がありますが、この応答はの一部として送信されます 応答チャネルの読み取り
AXI4インターフェイスの要件
AXI4仕様に文書化されているいくつかの要件があります。
絶対に覚えておきたいのは次のとおりです。
- VALID(AxVALID / xVALID)信号がアサートされると、スレーブがAxREADY / xREADYをアサートした後、クロックの立ち上がりエッジまでアサートされたままである必要があります。
- 情報を送信するAXIインターフェイスのVALID信号は、その情報を受信するAXIインターフェイスのREADY信号に依存してはなりません。
- ただし、READY信号の状態は、VALID信号に依存する可能性があります。
- 書き込み応答は、それが含まれる書き込みトランザクションの最後の書き込み転送に常に続く必要があります
- 読み取りデータは、常にデータが関連するアドレスに従う必要があります
- スレーブは、有効なデータが利用可能であることを示すためにRVALIDをアサートする前に、ARVALIDとARREADYの両方がアサートされるのを待つ必要があります。
AXI Basicsシリーズの次の記事では、AXI検証IP(AXI VIP)を使用してAXI4インターフェイスをシミュレートします。
PrimeXBTをチェックアウト
ACミランの公式CFDパートナーとの取引
暗号を取引する最も簡単な方法。
出典:https://forums.xilinx.com/t5/Design-and-Debug-Techniques-Blog/AXI-Basics-1-Introduction-to-AXI/ba-p/1053914