EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
在我们之前的学习中,了解到HDMI是一种全数字化视频和声音发送接口,可以发送音频以及视频信号。HDMI向下兼容DVI,DVI只能传输视频信号。HDMI和DVI接口协议在物理层均使用TMDS标准来传输音频或视频信号,接下来就着重了解一下TMDS编码。/ X- A$ m# \) T# V( h8 ?" i, p
6 }- x0 B% a6 D" \/ `: V TMDS(最小化传输差分信号)中,有四个通道,其中包含了三个数据通道和一个时钟通道。其中数据通道用来传输颜色、音频、控制等信号。HDMI默认使用RGB(RGB888)三个数据通道,当然也可以是亮度和色度信息(YCrCb,4:4:4或者4:2:2)。
3 Q: B9 X1 O4 P! q5 w. T: h& c5 ?
. \! ^; ^: Z4 O. B* s7 _
上图为HDMI的链接框架;
' G; y8 {$ }' p& a
5 d* l3 A0 ^6 N( ~, \, I+ Y 通道0传输的数据为:B分量的视频数据、行场同步信号、音频信号。4 N$ t! ?" J9 x& W
1 t- X' I/ l( a5 d& j/ s 通道0传输的数据为:G分量的视频数据、控制信号、音频信号。通道0传输的数据为:R分量的视频数据、控制信号、音频信号。不同的数据在TMDS数据通道中在三种不同的周期中发送。* d; n: y o1 w- p3 n
Y0 F+ }/ A g$ |5 [$ X
: e3 A) H# \0 z/ v2 x& A! G7 o; S+ ~& A4 l2 ^& P7 g3 Q% X
/ ]. W+ r. H: C8 V 在TMDS传输标准中,不论是视频信号、控制信号还是辅助信号,都是以10bit的数据传输,所以需要对这三个信号进行编码,分别采用不同的编码方式。; R# i( z9 { w( ]2 I4 W
) Y$ }. t, g0 {1 | n
3 W+ S$ x$ f7 H0 ?5 z/ `
5 u4 F( |; a4 r: c4 \2 ?9 }2 @
+ |# s% u: q; F9 k b/ R9 S- j; Y7 l
m& e% |) Z3 A N' c9 j5 i
在此,我们着重说一下视频编码,在Xilinx官方给出的一个编码示意图中,我们可以清楚整个的编码流程:
$ X. x3 `' O; s
$ U' i$ ~/ K9 R% k7 {0 D. }' K3 p) s! g0 e' @1 l# G
, L# y3 s* ~ X" [1 o% ]
! `! F ?7 K7 ?3 U/ j4 H. r% q S: R( p, \3 E5 W
# s5 v" N0 t( z2 n" `- q, J 图中也体现出了控制信号的编码方式:& c* ] K$ d4 k% S, l2 ^$ e6 L
& E) C4 V2 t/ b- Z6 b8 S/ @1 c/ }& y" [2 m# B, `0 W
0 k$ q/ E( V; d* \
8 ?6 u* r9 }6 @% n5 ?1 e% k5 T0 q: s
7 V; S. S6 f3 ]9 Q/ H/ I4 M; ~会对应特定的四个值中的一个。
f$ b8 H _5 D; x6 r7 _9 V3 D1 K/ [3 R; y- s* _% S5 ~1 W
' Z9 g k$ ]. Q( x* T3 ~/ e; O 编码如下:* U+ H2 `7 {' ^' ^. Z1 F3 O
+ s/ W% l& y- Y6 j
3 E3 s4 e0 ^0 K+ l L3 j2 P, _+ g* N) `* j
* l% ^9 l7 n5 m7 \
编码完成后,对数据我们需要进行并串转换,此操作我们可以使用原语OSERDES2实现10-to-1的过程。最后用OBUFDS将串行数据转换为差分信号输出即可。6 T1 w; p" \ b% s. }. r, Q" O
|