FC2カウンター FPGAの部屋 2013年12月09日
fc2ブログ

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

FPGAの部屋

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

Zynq勉強会用AXI4バスの演習資料の作製

今、Zynq勉強会をやっている。その勉強会用にAXI4バスの演習資料を作成しようとしている。ブログに書きながら作っていこうと思う。
Zynq勉強会の項目をいかに示す。

1_Zynq-7000の概要
2_Zynq用ツール概要
3_Zynq用ツールのチュートリアル1
4_Zynq用ツールのチュートリアル2
5_Zynq用ツールのチュートリアル3
6_XPSプロジェクトでカスタムIPを作る方法
7_AXI4 バス説明、AXI4バスを使用したカスタムIPの作成方法


最初はZynqの概要とZynq用ツールの概要を説明する。その後に、ZedBoard.orgのReference Designs/Tutorials
Zynq Concepts, Tools, and Techniques on ZedBoard の ISE14.5 Version のWordマニュアルの31ページ”Chapter3 Embedded System Design Using the Zynq Processing System and Programmable Logic”をPlanAheadプロジェクトからProject Navigator プロジェクトに変更したチュートリアルをライブでやりながら、受講者に一緒に同じ手順をやってもらう。
6番目で、XPSプロジェクトでカスタムIPを作る方法を詳細に解説し、7番目でAXI4バスの説明とAXI4バスを使用したカスタムIPの作成方法のノウハウを説明する。
今はここまでだが、AXI4バスの演習資料を作成しようとしている。演習としては、AXI4 Lite Slave と AXI4 Master のRead とWriteを作れれば良いかな?と思う。
作り方はXPSのAXI4バス・インタフェース作製用のウィザードを使用せずに、XILINXアンサー AR# 37425のAXI4 IPのテンプレートを使用して直接AXI4バスをHDLで記述する。なお、使用するシミュレータはISimとする。その方がXilinxツールの使用者全員が使用できるし、VHDL、Verilog HDL相当とも混在シミュレーションが可能だからだ。
下に予定しているZedBoard用 AXI4バス演習の項目を示す。

1.AXI4 Lite Slave の演習
ZedBoard.orgのReference Designs/Tutorials のZynq Concepts, Tools, and Techniques on ZedBoard の ISE14.5 Version のWordマニュアルの31ページ”Chapter3 Embedded System Design Using the Zynq Processing System and Programmable Logic”の回路に、LED制御を追加する。
具体的には、8つのLEDを制御するIOポートを用意して、値を設定するレジスタを用意する。更に、コマンド・レジスタを用意する。そこには、LEDを+1するコマンド・ビットを用意する。+1する時のクロックのカウント値を決めるレジスタと、そうそうLEDの点灯値を表示するレジスタも必要だ。よってレジスタ構成は次の通りになる。

オフセット0:コマンド・レジスタ(R/W)
 ビット0:1 - LEDの値を+1する 0 - LEDの値はそのまま (デフォルト値は0)
 ビット31~1:リザーブ
オフセット4:LED値のロード・レジスタ(R/W)
 ビット7~0:8ビット分のLEDの値
 ビット31~8:リザーブ(Read時はすべて0)
オフセット8:現在のLEDの値のReadレジスタ(Read Only)
 ビット7~0:8ビット分の現在のLEDの値
 ビット31~8:すべて0
オフセットC:LED値を+1する時のカウント値(R/W)但し、動作クロックは100MHzとする
 ビット31~0:LED値を+1する時のカウント値


ハードウェアをHDLで書いてもらい(穴埋めか?)、XPSプロジェクト用のMPDファイル、PAOファイルなどを書いてもらうことにしよう。SDKを立ちあげて、ソフトウェアも書いて、動作させる。

2.AXI4 Master Read の演習
ビットマップ・ディスプレイ・コントローラ AXI4 Master IPを実装する。キャラクタROM IPも一緒にXPSプロジェクトに入れる。キャラクタROM IPはこちらから提供する。
ソフトウェアでは、キャラクタROM IPからキャラクタを読み込んで、ビットマップ・ディスプレイ・コントローラのフレームバッファにWriteする。キャッシュが効いていて、キャラクタが表示されない場合は、キャッシュをフラッシュする。

3.AXI4 Master Write の演習
DDR3 SDRAMのフレーム・バッファにキャラクタを書き込むchar_write_axi_master IPを作る。”2.AXI4 Master Read の演習”のビットマップ・ディスプレイ・コントローラ AXI4 Master IPを使用して表示する。
ソフトウェアは、2つの AXI4 Master IPを起動するだけの機能とする。
  1. 2013年12月09日 04:39 |
  2. AXI4バスの演習資料
  3. | トラックバック:0
  4. | コメント:0