前回、Digilent社のLinuxのHDMIフレームバッファのアドレスがわかったので、そのアドレス (0x1A000000~0x1A7E9000) にカメラ画像を表示しようと思う。
まずは、ZedBoard_OOB_Design に mt9d111_inf_axi_master_v1_00_a と bitmap_disp_cntrler_axi_master_v1_00_a を追加した。mt9d111_inf_axi_master_v1_00_a は、CMOSカメラモジュールMT9D111 用のIPで、bitmap_disp_cntrler_axi_master_v1_00_a は、ピクセルデータをディスプレイに表示するIPだ。それらのスタートアドレスを0x1A000000に変更した。
mt9d111_inf_axi_master_v1_00_a は、IPの設定ダイアログで設定できるようにしてある。下に設定ダイアログを示す。

C_DISPLAY_START_ADDRESS が0x1A000000になっているのがわかると思う。
mt9d111_inf_axi_master_v1_00_a には、そのような仕掛けは用意してなかったので、bitmap_disp_engine.v のparameter を以下のように変更した。
parameter DDR2_SDRAM_START_ADDRESS = 32'h1A00_0000; // DDR2 SDRAMのスタートアドレス(ZedBoardのDDR3 SDRAMアドレスは0x00000000~0x1FFFFFFFなので、中間に設定した)
//parameter DDR2_SDRAM_START_ADDRESS = 32'h1000_0000; // DDR2 SDRAMのスタートアドレス(ZedBoardのDDR3 SDRAMアドレスは0x00000000~0x1FFFFFFFなので、中間に設定した)
次に、MT9D111 用のI2C IP、axi_iic_mt9d111 を追加した。更に、axi_gpio_0 を追加した。
XPSのBus_Interface タブの画面を下に示す。

上の図の様に、mt9d111_inf_axi_master_v1_00_a と bitmap_disp_cntrler_axi_master_v1_00_a はAXI_HP1 をイネーブルして、そこに接続した。
次に、Ports タブの外部出力端子の画面を下に示す。

40MHzのSVGAのピクセルクロックを作るために、PS部分のClock Generator のFCLK_CLK3 を40MHzに 設定した。
(2012/02/06:修正)
Ports タブの追加したIPのポートの接続を示す。
(2012/02/06:修正)
これでDRCが通ったので、ビットストリームの生成を行なっている。
- 2013年02月01日 05:28 |
- ZedBoard
-
| トラックバック:0
-
| コメント:0