LVDS → TMDS 変換

8 4月

[2016/5/11 画像等追記]

SN75DP139 とか、DisplayPort to TMDS 変換ICを使うと簡単ですよっていう話。
未確認だけど、多分 SN75DP129 でもできる。フルHDまでならスペック的には十分なはず。
DP++ (信号レベルは DP だけど、論理的には DVI や HDMI → レベル変換すれば DVI や HDMI として使える) モードのふりをして信号を出してやるわけですな。

FPGA の IO から DVI や HDMI を出力したいけれど、評価ボードの制約や同じバンクの他ポートの制約で電圧を 3.3V に設定できない場合とか、そもそも電圧を 3.3V に設定出来ない IOポートを利用したい場合にぜひ。需要がどの位あるかはわからんが。

ADV7511 みたいなのを使っても良いけど、必要なIOの数が増えるのよね…。どちらを選ぶかはお好みで。
※ ADV7511 は、RGBや色差のデータ + ピクセルクロック + Vde + 同期信号を入れて、3ペアのデータ信号とクロックを生成し、それを TMDS 信号レベルで出力してくれる IC です。他に音声信号や制御信号、HDCP も扱えて便利なんですが、例えば各色8bitの RGB を使うとすると、ビデオ信号部分だけで 24 + 4 = 28本 の LVCMOS 出力が必要です。単にビデオを出力するだけなら、FPGA内部に信号生成ロジックを持ってしまって、IO だけ変換すれば、ビデオ信号部分は 4ペア = 8本 で済みます。音声くらいは自分で埋め込んでも良いですが。DDC 等は必要に応じて PS にやらせれば良いでしょう。

SN75DP139 の話に戻ると、入力差動電圧範囲が 0.15V 〜 1.2V となっているため、LVDS 信号を十分受けられます。例えば、ZYNQ の LVDS_25 だと、出力差動電圧は 247mV 〜 600mV。
同相電圧については、ACカップリングを入れるので気にしなくてよし。なお、直流成分遮断後のバイアスについては、SN75DP139 の入力端において P/N 共に 50Ω で Vterm に終端されているので、適切にバイアスされます。終端抵抗も付けなくて良いので、必要なのはACカップリングだけ。4ch 入っているので、チャンネル毎に CML 変換ICを入れるより楽です。

LVDS-TMDS変換
たったこれだけ

1ペアあたり 1.3Gbps オーバーですが、8b10b エンコードが入っているからか、ZYNQ なんかの HR ポートでもフルHDの信号を出力できます。
※ACカップリングを使うので、いずれにしても 8b10b は必要かと思います。独自のプロトコルの信号を IO仕様だけ TMDS で送りたい、なんていう場合には、適切に直流成分を減らさないと使えないかもしれません。

なお、この IC はドライブ能力が H/L で対称なので、コネクタに配線しにくい場合なんかは以下のようにしてもOK。

LVDS-TMDS変換(P/N逆転版)
LVDS-TMDS変換(P/N逆転版)

RGBまたは色差信号と同期信号等からシリアルのビデオ信号を生成する部分は、Xilinx や Digilent のIPコアを使うと楽でしょう。ピクセルクロックの5倍周波数も必要なので、PLL も要ると思いますが、そこまで周波数の精度は必要ないので、他へクロックを供給する PLL でついでに生成してみても良いかと思います。
※もちろん、エンコードロジックを自分で書いて、シリアライザと組み合わせて生成してもいけますよ。

なお、TMDS → LVDS は、FPGA IO の入力電圧範囲を確認して大丈夫そうなら、AC カップリングしてぶっ込めばいいでしょう。内部終端でいける場合もあると思いますが、必要に応じてバイアスを兼ねた外部終端、または高インピーダンスのバイアス回路 + 内部終端を使うと良いでしょう。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください