FC2カウンター FPGAの部屋 ZedBoardでHDMI出力5(BDC の作製1)
FC2ブログ

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

FPGAの部屋

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

ZedBoardでHDMI出力5(BDC の作製1)

HDMI出力とVGA出力を同時に出来るBitmap Display Controller (BDC) を作ることにした。今までのBDC は、VGA出力だけだったが、それにHDMI出力を追加する。

当初は、VDMAやIICコントローラなどの既存のIPを使おうと思ったが、IPのマニュアルを読んだり、構造を勉強したりするのが、結構大変なので、自分のビットマップ・ディスプレイ・コントローラを修正することにした。

HDMI出力を行うためにBDC の内部構造を変更する。そのブロック図を図1に示す。
ZedBoard_HDMI_26_121111.png
図1 Bitmap Display Controller (BDC) ブロック図

Zynq PS HP0ポートからAXI3バスでAXI Interconnect に送られたPixelデータは、AXI4バスでBDC に送られる。そのPixelデータはPixel DMA Controller がMaster としてAXI Interconnect にリクエストを送って取得する。Pixel DMA Controller から出力されたRGB のPixel Data はDisplay Timing Controller に送られる。ここでPixel Dataの取得タイミングとHSYNC, VSYNCなどの表示タイミングを出力する。表示タイミングに揃えたRGBのPixel Data をVGA Controller とHDMI Controller に送る。VGA Controller は従来通りに各4ビットのRGBデータをDACに送る。HDMI Controller はADV7511 (Low-Power HDMI® Transmitter) にYCrCbデータを送る。

HDMI Controller のブロック図を図2に示す。
ZedBoard_HDMI_27_121111.png
図2 HDMI Controlle (HDMIC) ブロック図

I2C Controller を置いて初期化の時に、ADV7511のレジスタに設置値をセットする。Register Configuration File にADV7511 のレジスタの設定値を保存しおく。RGB Pixel DataはRGB to YCbCr Converter でRGBからYCbCr4:2:2 に変換される。変換されたYCbCr4:2:2 データはADV 7511 Display Controller で制御されてADV75111 に送られる。

とりあえずは、この様な回路を構成することにした。なお、ADV7511のデータシートは完全なデータシートが見つからなかったが、ツイッターで教えて頂いた。その他、Programming Guide なども見つけたので、下にURLを示す。
ADV7511 Design Support Files

2012/11/12 修正:以前の上のリンクはADV7511Wという別のHDMI Trasmitter でした。ADV7511のファイルのリンクに修正しました。しかし、何でこんなにわかりにくいところにあるんでしょうか?探すのにとっても苦労しました。)
  1. 2012年11月11日 05:55 |
  2. ZedBoard
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/2304-e929b5e2
この記事にトラックバックする(FC2ブログユーザー)