FC2カウンター FPGAの部屋 AXI4-Stream のお勉強
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

AXI4-Stream のお勉強

AXI VDMA をやるには、AXI4-Stream が避けて通れない。そこで概要を勉強することにした。
AXI4-Stream はMaster からSlave にデータを転送する。動画の画像データや、カメラのフレームバッファのデータやいろいろなデータ転送に使用される。
AXI4-Stream のプロトコルはAXI4 Master,AXI4 Slave, AXI4 Lite Slaveと比較しても簡単で、ほとんどの信号がオプションとなっている。下に信号の図を示す。(XilinxのAXI4-Steamでの使用条件です)

AXI4-Stream の信号
信号名信号ソース使用条件信号の役割注意事項
TVALIDMaster必須Master が有効な転送を送っていることを示す。TVALIDとTREADYが1の時が有効なデータ転送。
TREADYSlaveオプションSlave は現在のサイクルのデータ転送を受け入れることを示す。使用は任意だが、強く推奨
TDATAMasterオプションストリームデータ。バイト単位
TSTRBMasterオプションバイト・イネーブル。該当するバイトが有効かどうかを示す。スパース・ストリーム信号で使用可能
TKEEPMaster未使用対応するバイトがSlaveに転送されるか、NULLバイトとしてストリームから削除されるかを示す。TRTRBとどう違う?
TLASTMasterオプションパケット境界を示す。例えば、複素数で、実数、虚数と送るとすると虚数を送るときにアサートする。パケットがない場合はアサート
TIDMasterオプションデータ・ストリームID。データ・ストリーム種類エンドポイントIPでは使用されない。インフラストラクチャIPで使用可能
TDESTMasterオプションデータストリームのルーティング情報エンドポイントIPでは使用されない。インフラストラクチャIPで使用可能
TURERMasterオプションデータストリームと同時に転送できるユーザー定義のサイドバンド情報
上の図は、AXI リファレンスガイド、UG761 (v13.2) 2011年7月6日版とAMBA ®  4 AXI4-Stream Protocol Version: 1.0
Specification を参考にさせて頂きました。

AXI4-Stream のタイミングチャート例を図1 に示す。
AXI4_stream_1_130429.png 

図1 スカラーデータのストリーム例

図1 のスカラーデータのストリームについては、TLASTのドライブについて2つの方法があるそうだ。TLASTa の用にデータが有効なところからアサートしても良いが、いつも 0 でも良い。TLASTは削除しても良いそうだ。

複素数のスカラーデータ例のタイミングチャートを図2 に示す。
AXI4_stream_2_130429.png
図2 複素数スカラーデータのストリーム例

図2 の複素数スカラーデータ例については、実部と虚部が交互にデータ出力され、虚部が出力されると1つの複素数が完成するので、そこでTLAST がアサートされる。
このように、結構簡単なプロトコルになっている。
  1. 2013年04月30日 04:32 |
  2. AXI4バス
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/2454-d873bf11
この記事にトラックバックする(FC2ブログユーザー)