« PCI Experssのカードを挿したPCが再起動してしまう | トップページ | Cosmo-ZのPythonライブラリのマニュアル »

2018.01.24

HDMIミキサー

2つのHDMI入力をアルファ・ブレンディングで混ぜて、1つのHDMI出力を作る回路を作っています。

Blend

動作させたようすは下の動画のとおりです。

ノートPCの出力と、Zynqberryの画像出力を混ぜて、1秒ごとに交互に表示させています。全体の画面サイズは1920×1080ですが、Zynqberryのほうは720pなので、余った領域にはDRAMの初期値が見えています。ノイズっぽいざらざらしたのが、DRAMの初期値です。

この回路はアルバイトさんが、Vivado HLSを使ってさくっと書いてくれました。

構造はこんな感じになっています。

Blend2

実際にアルファブレンディングで混ぜる回路は、8画素単位で並列に処理しています。DRAMの読み出しはバーストなので、1画素ごとに処理すると効率が悪いためです。

これでDDR3メモリの帯域はほぼ100%使い切っているそうです。帯域の3分の1くらいしか使わないんじゃないかなと思っていたのですが、意外と使うようです。

|

« PCI Experssのカードを挿したPCが再起動してしまう | トップページ | Cosmo-ZのPythonライブラリのマニュアル »

コメント

コメントを書く



(ウェブ上には掲載しません)




« PCI Experssのカードを挿したPCが再起動してしまう | トップページ | Cosmo-ZのPythonライブラリのマニュアル »