FC2カウンター FPGAの部屋 2013年02月01日
FC2ブログ

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

FPGAの部屋

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

ZedBoard Linux のフレームバッファにカメラ画像を表示4(XPSで接続)

前回、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の設定ダイアログで設定できるようにしてある。下に設定ダイアログを示す。
ZedBoard_Linux_47_130201.png

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 タブの画面を下に示す。
ZedBoard_Linux_44_130201.png

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

40MHzのSVGAのピクセルクロックを作るために、PS部分のClock Generator のFCLK_CLK3 を40MHzに 設定した。(2012/02/06:修正)
ZedBoard_Linux_54_130206.png 

Ports タブの追加したIPのポートの接続を示す。(2012/02/06:修正)
ZedBoard_Linux_55_130206.png 

これでDRCが通ったので、ビットストリームの生成を行なっている。
  1. 2013年02月01日 05:28 |
  2. ZedBoard
  3. | トラックバック:0
  4. | コメント:0