FC2カウンター FPGAの部屋 2012年11月20日
FC2ブログ

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

FPGAの部屋

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

ZedBoardでHDMI出力10(ADV7511のピクセル入力レジスタ設定)

ZedBoardでHDMI出力7(ADV7511のレジスタ設定1)”、”ZedBoardでHDMI出力8(ADV7511のレジスタ設定2)”、”ZedBoardでHDMI出力9(ADV7511のレジスタ設定3)”で、ANALOG DEVICESのリファレンス・デザインにおける画像の主要なADV7511のレジスタ設定を見た。

今回は自分でADV7511を使うという視点からADV7511にピクセルデータを入力する信号についてまとめていきたいと思う。

・16ビット長のYCbCr4:2:2を入力する。
 ・設定レジスタの0x16番地 [7] Output Format 1= 4:2:2
 ・設定レジスタの0x16番地 [5:4] Color Depth 11 = 8bit(これでADV7511のデータ幅が16ビット決定)
 ・設定レジスタの0x16番地 [3:2] Input Style 01 = style 2
 ・設定レジスタの0x16番地 [0] Output Colorspace for Black Image 1 = YCbCr

・YCbCrの入力方法は”ADV7511 Low-Power HDMI 1.4 Compatible Transmitter with Audio Return Channel PROGRAMMING GUIDE - Revision G– March 2012 ”(このマニュアルは、ADV7511 Design Support Filesからダウンロードできる)の”Table 18 YCbCr 4:2:2 Formats (24, 20, or 16 bits) Input Data Mapping: 0x48[4:3] = ‘01’ (right justified) Input ID = 1 or 2”から調べることができる。
Table 18の一部を下に引用する。
ZedBoard_HDMI_28_121120.png

上の表でピンクで囲ったYCbCr4:2:2 16ビットデータ幅となる。つまり、最初の16ビットはY, Cb、次の16ビットはY, Crと出力する。

・ここで問題となるのは、YはRGB - YCbCr変換のY出力をそのまま使用するが、Cb, Cr はどうするか?ということになる。解決策としては、2つあると思う。
 1.1つ前のCb, Crの値を残しておいて、現在の値との平均を取る。
 2.気にせずに、現在のRGB - YCbCr変換のCbかCrの値を使う。

・色差信号はそんなに急激に変化しないと思うので、どちらでも大丈夫だと思うが、よりなだらかに色が変化するはずの1.の平均を取ることにしようと思う。通常のRGB4:4:4 - YCbCr4:2:2変換はどうやっているのだろうか?

つまりこれって画像圧縮の一種で色差信号の帯域を圧縮しているということになるんだろう?平均を取るとローパスフィルタを通しているのと同じことになると思う。
  1. 2012年11月20日 05:32 |
  2. ZedBoard
  3. | トラックバック:1
  4. | コメント:0