FC2カウンター FPGAの部屋 ZYBO用の Linaro Ubuntu のPL部にカメラ・コントローラを搭載する9(デバック)

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

FPGAの部屋

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

ZYBO用の Linaro Ubuntu のPL部にカメラ・コントローラを搭載する9(デバック)

ZYBO用の Linaro Ubuntu のPL部にカメラ・コントローラを搭載する8(実機でテスト)”の続き。

今回は、前回実機で動作しなかったので、デバックを行う。使用するのは、Vivado logic Analyzer (Hardware manager) だ。
Vivado logic Analyzer は残念ながら、Vivado のWeb Packでは使用できない。Digilent のZYBOのWebサイトで、ZYBOと一緒に ZYBO Accessory Kit を購入すると、Voucher for Xilinx Vivado® Design Suite: Design Edition (One full seat, node locked, device-locked to the Zynq-7000 XC7Z010) がもらえて、ライセンスを取ると使えるようになる。
だいぶ途中の手順を抜いてあるので、(全部書くと大変なので)詳しい手順は、”Vivado 2013.4でAXI VDMAを使ったカメラ表示回路の作製15(ハードウェアのデバック3)”を参照下さい。

・V_ZYBO_CAMDfL ブロック・デザインを開いた。

・ブロック・デザインで、見たいネットを右クリックして、右クリックメニューからMark Debugを選択する。
ZYBO_Cam_Linux_60_141118.png

・mt9d111_inf_axi_master_0, bitmap_disp_cntrler_axi_master_0 のAXI4 Masterバスにデバック・マークを付けた。

・processing_system7_0 のM_AXI_GP0 ポートからAXI Interconnect に行っているネットにデバックマークを付けた。
ZYBO_Cam_Linux_59_141118.png

・ブロック・デザインをセーブした。

・Flow Navigator の Synthesis -> Run Synthesis をクリックして、論理合成をスタートした。

・論理合成が終了した。(ダイアログは出さないように設定している)

・Flow Navigator の Synthesis -> Synthesized Desgin をクリックして、Synthesized Design を表示させた。

・Tools メニューから Set up Debug... を選択した。
ZYBO_Cam_Linux_61_141118.png

・Set up Debugダイアログが表示された。Next >ボタンをクリックした。
ZYBO_Cam_Linux_62_141118.png

・何個かダイアログをデフォルトのまま進めると、Nets to Debug ダイアログが出てくる。
ZYBO_Cam_Linux_63_141118.png

・Clock Domain が赤くなって、undefined のところをすべて削除した。(一定の値なので、削除したが、値を見るためには残しておいたほうが良いかもしれない)

・Next >ボタンで進めていって、Summary が表示されたら、Finishボタンをクリックした。

・これで、・Flow Navigator の Program and Debug -> Generate Bitstream をクリックして、ビットストリームを生成した。
ZYBO_Cam_Linux_64_141118.png

・リソースの状況。Vivado logic Analyzer を入れたので、以前と比べてリソース使用量が増えている。
ZYBO_Cam_Linux_65_141118.png

・Vivado logic Analyzer を入れる前のリソース使用量。
ZYBO_Cam_Linux_39_141113.png

Zynq は、PS部が生きていないとFPGA(PL)のクロックも出ていないので、Vivado logic Analyzer を使うためには、一度、ARMプロセッサをブートする必要がある。今回は、PL部のデバックということで、SDKでベアメタル・アプリを作製してそこからデバックを行うことにした。

・SDKを立ちあげて、cam_dispプロジェクトを作った。(SDKはBOOT.bin の作製の時に立ちあげてある)
ZYBO_Cam_Linux_66_141118.png

・ZYBOの電源をONした。

・SDKでビットストリームをダウンロードし、ソフトウェアを起動しておく。
ZYBO_Cam_Linux_67_141118.png

・cam_disp のRun Configuration を作製して、Runした。これで PL にクロックが供給された。
ZYBO_Cam_Linux_68_141118.png

・Flow Navigator からOpen Hardware Manager を立ち上げる。

・Hardware Manager が立ち上がった。Open a new hardware target をクリックした。

・Open Hardware Target ダイアログが表示された。Next >ボタンをクリックした。

・Hardware Server Settings を設定する。Local server のデフォルトのまま、Next >ボタンをクリックした。

・Select Hardware Target を設定する。デフォルトのまま、Next >ボタンをクリックした。

・Summary が表示された。Finishボタンをクリックした。

・Hardware Managerが起動して、ILAが見えた。
ZYBO_Cam_Linux_69_141118.png

・mt9_inf_axi_master_0_M_AXI_AWVALID == R (立ち上がり)でトリガを掛けたが、掛からなかった。カメラのAXI4 Master Write 出ていないようだ。
ZYBO_Cam_Linux_70_141118.png

・PSのAXI4 Lite Slave アクセス、各IPのレジスタ Write は思い通りに行っているようだ。
ZYBO_Cam_Linux_71_141118.png

少なくとも、mt9d111_inf_axi_master_0 のAXI4 Lite Slave 番地 0x43C10000 番地に 0x18000000 を書いているので、カメラのデータをDDR3 SDRAMに書いても良さそうなので、もう一度シミュレーションを確かめてみる。

ZYBO用の Linaro Ubuntu のPL部にカメラ・コントローラを搭載する10(デバック2)”に続く。
  1. 2014年11月19日 05:55 |
  2. ZYBO
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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