FC2カウンター FPGAの部屋 2017年05月02日

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

FPGAの部屋

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

Vivado 2017.1 の新機能8(Zynq-7000 VIP)

今回は、Zynq-7000 VIP について書いてみようと思う。

Vivado 2017.1 からZynq-7000 VIP のライセンスが無料になって、Zynq のPS 込みでシミュレーションできるようになったようだ。(Vivado 2016.4 でPS 込みのシミュレーションをしたところ、AXI BFM のライセンスエラーになってしまった)

Zynq-7000 VIP の資料で見つかったのは唯一”AR# 69031 Zynq-7000 All Programmable SoC VIP - リリース ノートおよび既知の問題”だった。
それによると、「Zynq-7000 All Programmable SoC VIP は Processing System7 IP からのみアクセスできます。」だそうだ。

サンプル・デザインで、Zynq-7000 VIP が試せるという情報があったので、File メニューから Open Examples Project... を選択して、サンプル・プロジェクトを作成した。サンプル・プロジェクトのテンプレートは、Base Zynq を選択した。
Vivado_2017-1_68_170501.png

Base Zynq プロジェクトが開いたところだ。
Vivado_2017-1_62_170501.png

ブロックデザインを示す。
Vivado_2017-1_63_170501.png

Address Editor の画面を示す。
Vivado_2017-1_64_170501.png

Flow Navigator のSIMULATION -> Run Simulation -> Run Behavioral Simulation を選択して、シミュレーションを行った。
Vivado_2017-1_65_170501.png

シミュレーションの波形が示された後に、”run all”を行ったときのVivado画面を示す。
Vivado_2017-1_69_170501.png

AXI VIP Test PASSED が表示された。

まずは、シミュレーションの階層を示す。
Vivado_2017-1_70_170501.png

シミュレーション用のテストベンチ・ファイルのzynq_tb.v にPS からPL へのアクセス方法が書いてあった。zynq_tb.v の一部を画像で引用する。
Vivado_2017-1_71_170501.png

tb.zynq_sys.base_zynq_i.processing_system7_0.inst.write_data(32'h40000000,4, 32'hDEADBEEF, resp);

で0x40000000 番地に 0xDEADBEEF を書いて、

tb.zynq_sys.base_zynq_i.processing_system7_0.inst.read_data(32'h40000000,4,read_data,resp);

で 0x40000000 番地のデータを read_data に読んでくることができる。階層はシミュレーション階層の図の通りだ。
その前にLED を点灯するために 0x41200000 に 0xFFFFFFFF を書いている。

さて、シミュレーション波形を見てみよう。全体の波形は省略するが、Read /Write する場面の波形を示す。
Vivado_2017-1_66_170501.png

0x41200000 に 0xFFFFFFFF を書いているのが分かると思う。その後のトランザクションはよく見えないので、もう少し拡大してみよう。
Vivado_2017-1_67_170501.png

上の波形を見ると、0x40000000 番地に 0xdeadbeef を書いて、0x40000000 を読むと 0xdeadbeef なのが分かる。

これで、PS のままのプロジェクトでもシミュレーションを行うことができた。これは便利だ。今まで、わざわざシミュレーション用にAXI4-Lite のMaster モジュールを付けた専用のプロジェクトを作る必要が無くなった。
  1. 2017年05月02日 04:23 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0