FC2カウンター FPGAの部屋 ZYBOのHDMI入力をVGA出力に出力する7(ラプラシアンフィルタIPを除いたシステム)

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

FPGAの部屋

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

ZYBOのHDMI入力をVGA出力に出力する7(ラプラシアンフィルタIPを除いたシステム)

ZYBOのHDMI入力をVGA出力に出力する6(dvi2rgb IPの信頼性2)”の続き

現在のdvi2rgb IP はDigilent フォーラムの”Help With A Zybo Video Design”の mwingerson さんの書き込みに従って"dvi2rgb.xdc"を修正してある。それに、dvi2rgb IP に hdmi_hpd と hdmi_out_en 端子を追加した。

ブロックデザインは下図を参照のこと。
dvi2vga_40_150910.png
なお、dvi2rgb IP の設定は 720p (60 MHz) に設定してある。

これで、ビットストリームの生成まで行って、ノートパソコンをHDMIに接続して解像度を変えて試してみた。結果を示す。

1920 x 1080 ◯
1280 x 768 ◯
1280 x 720 ◯
1152 x 864 ◯
1024 x 768 ◯
1024 x 600 ◯
800 x 600 X

つまり、800 x 600 だけ画像が出力されなかった。やはり、800 x 600 は映らない。
800 x 600 解像度は諦めて、1280 x 720 60p でやってみることにした。
まずは、ラプラシアンフィルタIP は 800 x 600 固定になっているので、ラプラシアンフィルタを抜いたシステムを構築してみた。dvi2vga_lap_t だ。
dvi2lap2vga_37_150910.png

ブロックデザインを示す。
dvi2lap2vga_38_150910.png
VTCの設定は 720p に設定した。

これでビットストリームの生成まで行って、ノートパソコンからHDMI 端子をZYBOのHDMI 端子に接続して、ZYBOにコンフィグレーションした。
するとノートパソコンの画像が出力された。成功した。。。やった~~~。。。
dvi2lap2vga_39_150910.jpg

入力はノートパソコンで行くことにして、ラプラシアンフィルタを 720p 用に修正することにする。
  1. 2015年09月10日 05:14 |
  2. ZYBO
  3. | トラックバック:0
  4. | コメント:4

コメント

1024x600 60p以上で映るので解決済みですが、

IPマニュアルのResolution でクロックが(148.5M-40MHz)になっていて800x600だとこれ以下になるので
ソースのTMDS_Clocking の kClkRange を1以外にする必要があるのかもしれませんね。
1024x600x60px1.1=40MHz ← OK
800x600x60x1.1=31.7MHz ← NG
  1. 2015/09/11(金) 10:20:22 |
  2. URL |
  3. おる #-
  4. [ 編集 ]

おるさん、おはようございます。

800x600 ピクセルの 60Hzで40MHzのピクセルクロックでやっています。それに、マニュアルに800x600 から対応しますと書いてあるんですよ。
http://tinyvga.com/vga-timing/800x600@60Hz
  1. 2015/09/11(金) 10:34:33 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

マニュアルもHDMIのEDID(dgl_dvi_edid.txt)でも800x600対応になってますね。

TMDS_Clocking.vhd の
kClkRange : natural := 1); -- MULT_F = kClkRange*5 (choose >=120MHz=1, >=60MHz=2, >=40MHz=3, >=30MHz=4, >=25MHz=5
この行がどこの周波数を示しているのかよくわからなかったのですが、元クロックが低い場合は、Rangeを切り替える必要があるのかなと。
  1. 2015/09/11(金) 16:11:04 |
  2. URL |
  3. おる #-
  4. [ 編集 ]

それも全部2日かけて確かめましたが、やはり800x600は映りませんでした。
PLLのVCOの周波数が1200MHz~600MHzなので、その範囲に入れるような倍率にしています。
  1. 2015/09/11(金) 20:06:45 |
  2. URL |
  3. marsee #f1oWVgn2
  4. [ 編集 ]

コメントの投稿


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

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