2019年5月3日金曜日

ZYBO Z7 (Z7-20)でHDMI Paththroughを作る(IP使用)


 精神統一にははんだ付けとよく言われますが、

ただし0603(metric)、テメーはダメだ

 どうも中の人です。マウスの進捗はぼちぼちです。朝起きたらTrueStudioがNRNDになってCubeIDEが登場していましたね。そのうち部内向けに記事でも書こうかなぁ(現状printfでfloatが吐き出せないのでツラい)。
 今回は研究室に入って触り始めたFPGAの話です。単にFPGAといってもいろいろあるのですが、Digilentから発売されているZYBO Z7を使用して、HDMIの入力をただ出力するだけの回路を作成しようと思います(ZYBO Z7についてはこちらを参照)。まあ備忘録的なものなので、動かなくても責任は負えません。はい。



 このボードには入力用と出力用のHDMIが別々についており入出力用の回路を組むことで、FPGA(が入ったSoC)上でのデータ処理ができます。しゅごい。とりあえず今回組んだ回路はこんな感じ。

 回路構成自体はここのP.22 Figure 3.2を参照し、出力サイズは720pのみに限定しました。ここからは各IPの設定になります。


 Clocking Wizardの設定。Reference Clockとして200MHzを供給しています。(入力の125MHzは外部クロックを引き込んでいるためで、PSから持ってくるなら100MHzになるはず)


 DVI to RGBの設定。720pを使用しますがTMDSのClock Rangeは< 120MHzに設定しないと動きませんでした(なんでだろ)。


 Video in to AXI4-Streamの設定。Click ModeをIndependentにするのを忘れずに。FIFO Depthは適当に4096を選択。


 AXI4-Stream to Video Outの設定。Video in to AXI4-Streamの設定に合わせる形で設定。Timing ModeはSlave、Hysteresis Levelは推奨されている値のうちから12を選択。


 RGB to DVIの設定。DVI to RGBと同じく、TMDS Clock Range は< 120MHzにすること(入力と出力が同期している関係)。


 Constant基HDMIのHPDの設定。常にHIGHになるように設定。

2019/05/06追記:Video Timing Controlerの設定を載せ忘れてました...。



 ここまでで大体の設定が終了し、ここから配線作業になります。今回は時間を溶かしまくったPixel ClockとReference Clock、AXI4-Stream to Video OutのVTG_CEを置いておきます。




 制約ファイルに関しては、ここの必要なところだけ持ってきた感じです。あとはテキトーにBitstream生成すれば動く...はずです(動かなかったらすんません)。

1 件のコメント: