HDMI1.4 硬件设计简介

高清多媒体接口 High Definition Multimedia Interface  是一种全数字化视频和声音发送接口,可以发送未压缩的音频及视频信号

HDMI A Type

应用于HDMI1.0版本,总共有19pin,规格为4.45mm×13.9mm,为最常见的HDMI接头规格,相点对点于DVI Single-Link传输。在HDMI 1.2a之前,最大能传输165MHz的TMDS,所以最大传输规格只能在于1600×1200(TMDS 162.0MHz)

Pin Pin定义
1 TMDS Data2+
2 TMDS Data2 Shield
3 TMDS Data2–
4 TMDS Data1+
5 TMDS Data1 Shield
6 TMDS Data1–
7 TMDS Data0+
8 TMDS Data0 Shield
9 TMDS Data0–
10 TMDS Clock+
11 TMDS Clock Shield
12 TMDS Clock–
13 CEC
14 Reserved(N.C. on device)
15 SCL
16 SDA
17 DDC/CEC Ground
18 +5V Power
19 Hot Plug Detect

TMDS沟道

  • 发送音频、视频及各种辅助数据 [3] 

  • 信号编码方式:遵循DVI1.0规格。Single-link (Type A HDMI) 或 dual-link (Type B HDMI)

  • 视频像素带宽:从25 MHz到340 MHz(Type A, HDMI 1.3)或至680MHz (Type B)。带宽低于25MHz的视频信号如NTSC480i将以倍频方式输出。每个像素的容许数据量从24位至48位。支持每秒120张画面1080p分辨率画面发送以及WQSXGA分辨率[1]

  • 像素编码方式:RGB4:4:4, YCbCr 4:4:4(8-16 bits per component); YCbCr 4:2:2(12 bits per component); YCbCr 4:2:0(HDMI 2.0)

  • 音频采样率:32kHz, 44.1kHz, 48kHz, 88.2kHz, 96kHz, 176.4kHz, 192kHz, 1536kHz(HDMI 2.0)。

  • 音频声道数量:最大8声道。HDMI 2.0支持32声道。

  • 音频流规格:IEC61937兼容流,包括高流量无损信号如Dolby TrueHD、DTS-HD Master Audio。

DDC沟道

  • DDC全文为Display Data Channel

  • 发送端与接收端可利用DDC沟道得知彼此的发送与接收能力,但HDMI仅需单向获知接收端(显示器)的能力。

  • 使用100kHz时钟频率的I²C信号

  • 发送数据结构为VESAEnhanced EDID(V1.3)。

CEC沟道

  • CEC全文为Consumer Electronics Control

  • 必须预留线路,但可以不必实现

  • 用来发送工业规格的AV Link协议信号,以便支持单一遥控器操作多台AV机器

  • 为单芯线双向串列总线

  • 在HDMI 1.0协议中制订,在1.2a版中更新 [1] 

  • 一些制造商可能使用HDMI CEC,但是可能使用不同的名称来代表CEC功能:

    1. Samsung - AnyNet+

    2. Sharp - Aquos Link

    3. Sony - BRAVIA Link and BRAVIA Sync

    4. Hitachi - HDMI-CEC

    5. AOC - E-Link

    6. Pioneer - Kuro Link

    7. Toshiba - CE-Link and Regza Link

    8. Onkyo - RIHD (Remote Interactive over HDMI)

    9. LG - SimpLink

    10. Panasonic - HDAVI Control, EZ-Sync, VIERA Link

    11. Philips - EasyLink

线材规格

在HDMI 2.1版本前,根据规范,所有的HDMI线分为五种,线材的种类,HDMI的版本为规范连接器,大部分情况下线材部分没有更动。

  • 标准缆线 (支持1080i及720p)

  • 标准缆线附带以太网

  • 高速缆线 (支持1080p, 4K@30fps, 3D 与 Deep Color)

  • 高速缆线附带以太网

  • 车用缆线

防拷机制

  • 强制支持HDCP规格1.10版

 

长度限制问题

编辑

HDMI的缆线长度限制是其主要的问题之一,在部分消费者自行测试当中回报标准的28AWG(American Wire Gauge,美国缆线度量)规格HDMI铜线大约在超过5米之后开始信号衰减。此长度通常不足以满足投影机与计算机的连接。

但HDMI组织网页并不认可此限制,其网页常见问答集HDMI FAQ page当中记载:“我们见过有缆线在没有"转接器"之情况下通过不短于十米的HDMI "标准缆线"承诺测试”。

现有通过HDMI认证的10M cable(未使用HDMI equalizer IC),大都使用24AWG的线材去制作。

一些报告指出,增加缆线中铜线的直径以降低阻抗,是有效延长缆线长度的方法之一。另外也有报告指出,24AWG规格的缆线表现较28AWG好。另外也有人使用光纤或两条CAT-5网上缆线来取代标准HDMI铜线。某些厂商也制造HDMI信号增强器以因应用户的需求。

现有单一一颗HDMI equalizer IC,可让24AWG HDMI cable最大使用长度变成50米。

 

 

 

5: 相关信号 Level 标准:
A: TMDS –Termination Voltage ( 差分信号终极电压)
Criteria: 3.125 V ≤ VTERM (TMDS ±Data) ≤ 3.475 V
(Please refer to P.45 of HDMI CTS 1.3 for details)


B: TMDS – Minimum Differential Sensitivity ( 差分信号最小纹波电压)
Criteria: VDIFF (minimum) < 150 mV
(refer to P.46 of HDMI CTS 1.3 for details.)

C: TMDS – Intra- Pair Skew
Criteria:
If TMDS clock frequency <= 222.75MHz(225Mhz)
Inter-Pair Skew < 0.4 T BIT, then FAIL
If TMDS clock frequency > 222.75MHz(225Mhz)
Inter-Pair Skew < 112psecs + 0.15 T BIT , then FAIL
(refer to P.46 of HDMI CTS 1.3 for details.)
(注意: TBIT: Time duration of a single bit carried across the TMDS data channels)


D: SDA/SCL Line Capacitance (SDA/SCL 对地电容值)
Criteria:
HDMI Source Cable Assembly HDMI Sink
SDA – DDC/CEC Ground 50pF 700pF 50pF
SCL – DDC/CEC Ground 50pF 700pF 50pF
(refer to P.46 of HDMI CTS 1.3 for details.)


E: SDA/SCL Line Voltage (SDL/SCL 数据通道电压)
Criteria: (When power on)
4.5V ≤ SDA ≤5.5V
4.5V ≤ SCL ≤5.5V

(关于热插拔信号 后面HPD会有更具体的解答
F: HPD Output Voltage and Output resistance
(HPD pin 输出电压和输出阻抗)
Criteria:
1: Set the +5V Power pin to 0.0V
0.0 V ≤ VHPD ≤ 0.4 V
2: Set the +5V Power pin to 4.8V and 5.3V
2.4 V ≤ VHPD ≤ 5.3 V
3: Output resistance : 800 Ω ≤ ZHPD ≤ 1200 Ω (Z HPD = 1000 ohms ± 20%)
(Please refer to P.53 of HDMI CTS 1.3 for details.)


G: +5V Power Max Current(+5V 的最大电流)
Criteria:
1: Sink DUT is Power ON
ISINK ≤10 mA,
2: Sink DUT is Power OFF , Unplugged from AC
ISINK ≤50 mA,
(Please refer to P.51 of HDMI CTS 1.3 for details.)


H: CEC Line
N/A Please Supplement 1Consumer Electronics Control (CEC)

I :HDMI Impedance (阻抗要求)
Criteria:
Connector Area :
Type A: 100 ohms ±15%
Type C: 100 ohms ±25%
Transition Area :
100 ohms ±15%
Cable Area :
100 ohms ±10%
(Please refer to P18 of HDMI CTS 1.3 for details.)


6: HDMI Support Video format
A: SXGA:1280x1024@85Hz
B: UXGA:1600x1200@60Hz
C: SDTV:480i.480p.576i.576p
D: HDTV:720p.1080i.1080p

 

一般来说, HDMI 传输的编码格式中要包含视频数据(HDMI1.3 版本前每个像素采用24bit )、
控制数据和数据包(数据包中包含音频数据和附加信息数据,例如纠错码等) 。TMDS 每个
通道在传输时要包含一个2bit 的控制数据、8bit 的视频数据或者4bit 的数据包即可。在HDMI
信息传输过程中, 可以分为三个阶段: 视频数据传输周期、控制传输周期和数据岛传输周期,
分别对应上述的三种数据类型。

 

11: HDMI 兼容测试常见问题与解析:
A: +5V 电源输出
有些客户习惯性地在HDMI 输出端口的电源输出通路上串联电阻,起到限流的
作用。但在HDMI Tx 的测试中会接一个吸取55mA 电流的负载, 然后测试输出
电压, 要求电压在4.8V 和5.3V 之间。例如图1 所示例子中串接了一个10 欧姆
的电阻,结果造成输出电压为, 5- 10x0.055 = 4.45V < 4.8V ,此项测试失败。


B: TMDS 信号差分阻抗匹配
现在很多人在设计电路板的时候都会考虑到TMDS信号差分阻抗匹配
的要求,但往往还是会在此项测试中失败,原因在于客户选用的ESD
保护器件或者是抑制EMI 用的共模扼流圈寄生电容太大,导致此项测
试失败。现在很多用于高速线路的ESD保护器件的供应商都会提供推
荐的布线方案,而且也会提供阻抗测试图,客户可以要求这些厂商提
供相关的资料。此项测试是HDMI兼容性测试中为数不多的跟硬件线路
相关的测试项目,此项失败,客户往往需要更改电路板设计,会耽误
投产和上市时间。

 

C: HPD 输出电压
一些设计人员喜欢使用以下电路来利用HDMI 端口的5V 电压,同时利用VCCD
为HDMI 端口的HPD 管脚提供电压,但这会违反HDMI 协议中当HDMI +5V 输入为0V
时, HPD 电压应大于0V, 并小于0.4V 的要求。这里最简单的方法是将HDMI 输入端口的
+5V 电压串联一个1K 的电阻直接路由回HPD 管脚。当然在此还是建议读者利用一个简
单的三极管开关电路对HPD 管脚加以控制,这样可以主动告知源端设备下游的设备是否
已准备好或者告之源端设备重新开始一些验证动作,例如HDCP 等,这可以增强设备的
兼容性。

 

HDMI 规范文件里面规定其差分线阻抗要求控制在 100Ω ±15%,其中 Rev.1.3a 里面规定相对放宽了一些,容忍阻抗失控在100Ω ±25%范围内,不要超过 250ps。 通常,在 PCB 设计时,注意控制走线时的阻抗控制,往往可以做到很好的匹配。 对于通常的聚酯胶片 PCB 来说,传输线的长度和微带线 Stub 效应是需要考虑的, 在本设计指南里面,主要是针对 4 层的 1080+2116 聚酯胶片PCB 进行相关的阻抗匹配控制。

 


2

聚酯胶片 PCB 的选择

 

尽管对于 PC 主板来说,高精度的 2116 材质 FR4 的4 层 PCB 是主流,但是如果需 要进行精确的阻抗控制,则其费用也是不菲的。因而对于 HDMI 应用来说,不推 荐采用此板材,取而代之的是采用中等精度的 1080+2116 板材或者是低精度的2116+7628 板材。对于不同的板材,走线宽带和间距必须做出相应的调整,使其做的阻抗匹配,下面列出了PCB叠层相关的尺寸。
 

表 1:推荐的 PCB 聚酯胶片板材

通常,PCB 厂家能够将线宽和线距控制在±1-mil,然而对于 HDMI 连接器、IC 器件等附近区域,最好能够控制在±0.5mil,以减少偏移。
 

5推荐走线长度

 

为了防止信号反射,信号线的长度不允许超过下面两个约束条件所计算出的走线长度。

1. 小于信号波长(λ )的 1/16,信号波长与信号频率之间的关系由以下公式来确定。

 

这里ε R = 4.3 ~ 4.7,对于 FR4 材质μ R ~ 1
比如,对于运行于 FR4 板材,信号频率为 1.25GHz,其走线长度计算结果如下:
推荐长度< (1/16)λ  ≅ 280 mil

2. 信号上升沿的 1/3 长度,其长度 l 定义为

 

这里 l 为信号上升沿的长度,单位 inch Tr 为信号上升沿时间,单位 ps
D 为信号延时,单位为 ps/inch
对于 FR4 板材,其延时为 180ps/inch,对于 HDMI 信号,Tr 为 200ps,其计算结果不能超过 370 mil,即:

如果信号线太长的话,那么最好将线宽和线距加大,以后线宽和线距加大后,其阻抗连续性更容易控制。详细的线宽和线距的选择请参考表 1.

 

4微带线 Stub 效应

 

stub 将会给 PCB 走线增加电抗,并且减少走线的阻抗,对于 HDMI 走线,存在任 何的 stub 都是不完美的。如果一个 open stub 是 1/2 波长,则其就等效于走线 上的一个对地电容。而如果 short stub 是 1/2 波长,其相对于在一个走线上加 上一个电感。
 

 

如果 stub 是不可避免的话,那么必须将其控制在信号上升沿的 1/6。经验告诉 我们,对于 200-ps 的 HDMI 信号,stub 的长度不允许超过 1/6 × 200ps = 33ps。
 

5焊盘和过孔相关补偿

 

焊盘和过孔往往造成走线的不连续性,其结果使得走线阻抗降低。在器件下面的低平面挖出适当的孔,其有助于减少焊盘或过孔与地平面之间的电容,从而有利于补偿走线的阻抗损失。挖出空白尺寸的大小参考 Section(A)里面的(i)-(iv)。

 

 

HDMI 连接器焊盘之间也许会相互影响,为了达到相应的阻抗,并建立合理的信 号路径,其参考平面,HDMI 连接器推荐的地平面如 Section(A)里面的(v)。 Section(B)是推荐的案例。

Section(A):地平面推荐的挖空尺寸
下面的案例基于 1080+2116 的聚酯胶片,差分线线宽为 8.0mil,线距为 9.3mil。 其相关地平面的挖空尺寸如下。

(i)ESD 或者上拉 0603 电阻焊盘下面挖空情况
HDMI1.4 硬件设计简介_第1张图片

 


图 3.ESD 或者上拉 0603 电阻焊盘下面挖空情况

(ii)ESD 或者上拉 0402 电阻焊盘下面挖空情况
HDMI1.4 硬件设计简介_第2张图片


图 4.ESD 或者上拉 0402 电阻焊盘下面挖空情况

(iii)HDMI 相关器件下面挖空情况
 

HDMI1.4 硬件设计简介_第3张图片



图 5.HDMI 相关器件下面挖空情况 

(iv)过孔下面挖空情况

HDMI1.4 硬件设计简介_第4张图片

图 6.过孔下面挖空情况

(v)HDMI 连接器下面的挖空情况
 

HDMI1.4 硬件设计简介_第5张图片

图 7.HDMI 连接器下面的挖空情况

Section(B):PCB 相关区域约束情况
在实际情况下,在走线时是需要考虑 PCB 的空间问题的,所以在连接 ESD 器件 和上拉电阻时,需要用到过孔和 stubs,且需要在底层走线。下面的参考案例里 面,包含了 ESD 器件、过孔和上拉电阻。
 

HDMI1.4 硬件设计简介_第6张图片

图 8.带有 ESD 器件、过孔和上拉电阻的 PCB 走线情况 

 

6建议走线

 

1.  尽可能的将过孔靠近 HDMI 连接器放置
当信号从 HDMI 连接器到 HDMI 焊盘时,由于电气上的改变,使得阻抗相应 的增加,这种阻抗的增加刚好可以补偿 HDMI 边上过孔说造成的阻抗损失。 由于过孔太靠近 HDMI 连接器,这将使得 HDMI 连接器周围没有足够的空间 去走 100Ω 的差分线,这是将用 50Ω 的单端走线来代替,当必须保证此单 端线足够的短。移除 HDMI 信号和时钟焊盘下面的地平面。

2. 尽可能的采用小封装的上拉电阻和 ESD 器件
0402 封装与 0603 封装相比,具有更小的焊盘,使其在阻抗上具有更小的 损耗。

3. 采用 9mil 线宽和 11mil 线距的差分走线 如果走线够宽,则其阻抗更好的控制。

4. 采用尽可能短的 stubs
ESD 保护器件、过孔和上拉电阻之间的 stub 尽可能的短,不能超过信号 上升沿的 1/6。

5. 移除电阻焊盘和过孔下面的地平面 此挖掉的孔必须要足够大,确保能够覆盖 ESD 器件焊盘、过孔和上拉电阻 焊盘和所有的 HDMI 连接器上信号焊盘。其参考如下图 9。
HDMI1.4 硬件设计简介_第7张图片

 

图 9.ESD 器件、过孔和上拉电阻下面的地平面

 

HDMI,全称为(High Definition Multimedia Interface)高清多媒体接口,主要用于传输高清音视频信号。

 

HDMI引脚:

HDMI有A,B,C,D,E五种引脚类型,目前市面中比较常见的就是Type A:

HDMI1.4 硬件设计简介_第8张图片

其中

  • 1-9 都是TMDS数据传输实际上用到的引脚,分为0,1,2三组
  • 10-12 为TMDS时钟信号,如当前Video Timing为480p@60Hz(Htotal:800,Vtotal:525),则TMDS clock = 800x525x60 = 25.2MHz。TMDS clock就像是对像素的打包,一个clock分别在三个Channel传输一个像素的R、G、B(8bit)信号。
  • 13 为CEC(consumer electronic control)类似一种扩展的HDMI功能,供厂家自己定制HDMI消息,(比如说你有一台sony的DVD与TV,两者用HDMI线接上,如果你用TV的遥控器可以控制DVD,另DVD执行某种功能,那么该功能的命令信号就是通过TV与DVD间的CEC引脚传输的)
  • 14 为保留引脚,未使用(或者也可以为CEC提供多一个引脚)
  • 15-16 为I2C引脚,用于DDC(Display Data Channel,主要用于EDID与HDCP的传输)传输,具体可以查看。在HDMI的流程中,DDC通信几乎是最先做的(前有Hotplug),因为HDMI的主从两个设备需要通过DDC来获得他们对方设备的EDID,从而得到各种信息,并且通过比较timming以确定以后送出来的timming为最合适的
  • 17 为接地引脚
  • 18 为5v的AC引脚
  • 19 为Hotplug(热拔插)引脚(用于监测HDMI设备有没有存在,如果存在(Hotplug为high)那么可以通过DDC去读EDID),HDMI有规定在HDMI 5vAC断电时source device可以读reciever device的EDID,也就是需要Hotplug为High。其中有两种Hotplug相关的情况会导致HDMI被识别为DVI:
    1. Hotplug为High,不过EDID并没有准备好,那么信号源设备会由于无法读到EDID而认为接收设备为DVI,这样会导致HDMI有图像无声的问题。
    2. Hotplug为Low,也会导致信号源无法读到EDID而认为接收设备为DVI,从而导致HDMI有图无声
    3. 在TV这种有多个HDMI通道的情况下,有时会在多个HDMI通道进行切换,切换后HDMI通道应当先初始化,即先把Hotplug拉低,通知HDMI source device之前所用的EDID已经改变,需要重新读取,那么source device在Hotplug被拉高的时候会去读取新的EDID,但是拉低这个过程至少需要100ms,否则source device有可能不会去读取新的EDID,从而输出DVI信号

 

传输流程

HDMI TMDS传输的数据类型有三种(加上Hsync与Vsync就算4种):

  1. Preamble(控制信息),主要用于控制接下来传输的数据是Data Island或者Video Data
  2. Data Island(数据包),各种类型的包信息,包括音频数据包,图像信息包等
  3. Video Data (视频信息),视频像素数据,HDMI可以传输RGB与YUV两种格式的像素数据
  4. 还有Hsync与Vsync

HDMI的数据传输有TMDS0,TMDS1,TMDS2三个通道,每个通道的传输流程都是一样的:

  HDMI1.4 硬件设计简介_第9张图片

如果是8bit的数据进入TMDS编码器,得到抗干扰性强的10bit TMDS信号,然后再进行串行化输出;在接收端收到串行的HDMI信号后,进行信号复原,得到10bit的TMDS信号,最后用TMDS解码器解码得到原来的8bit数据。

总体传输流程如下:

  HDMI1.4 硬件设计简介_第10张图片

  

  1. 如果传输的是Video Data,并且格式为RGB,那么会占用三个通道的所有24bit输入,Channel0[7:0]用于传输B,Channel1[7:0]用于传输G,Channel2[7:0]用于传输R。
  2. 如果传输的是Data Island,则占用三个通道共10bit输入,Channel0[3:2]用于传输Data Island Header(包头),Channel1[0:3]与Channel2[0:3]用于传输Data Island Content(包内数据)。
  3. 如果传输的是Preamble,则占用1,2两个通道共4bit输入,Channel1[1:0]与Channel2[1:0]分别为CTL0,CTL1,CTL2,CTL3,用于判断接下来输入的是Video Data或者Data Island

对于Hsync与VSync,会占用Channel0通道的两个bit输入,Channel0[0]为Hsync,Channel0[1]为Vsync

 

传输周期

HDMI的TMDS数据传输可以分为三个传输周期:

  1. Control Period期间会传输Hsync,Vsync,并且在该时期的最后阶段会传输Preamble
  2. Data Island Period期间会传输Data Island(数据包),也会有Hsync与Vsync
  3. Video Data Period期间会传输Video Data(视频像素数据)

某帧的总体周期如下:

HDMI1.4 硬件设计简介_第11张图片  

三个传输周期的过渡如下:

HDMI1.4 硬件设计简介_第12张图片  

  1. 左边是Control Period,传输有Hsync,Vsync与Preamble
  2. 中间是Data Island Period,传输有Hsync,Vsync,以及两个Packet Header与Packet(每32个clock 一个packet);另外Data Island的两端会用Guard Band保护并隔开Data Island的数据,因为这个阶段传输的数据大多是非常重要的,比如其中就有图像分辨率,决定后面的Video Data数据的显示方式
  3. 右边是Video Data Island,传输视频像素数据,在该时期的开头也有Guard Band

 

Data Island Packet结构

HDMI1.4 硬件设计简介_第13张图片

  

所有Data Island Packet都以32个时钟脉冲为一个周期,也就是说每32 clk传输一个包。

以上图为例,

  1. 包头部是BCH block 4,由Channel0[2]传输,32clk表示有32bit,则为4byte,前三个byte为包头,最后一byte为校验码
  2. 包体为BCH block 0,1,2,3,分别由Channel1,Channel2共8根线传输,共有24byte与6byte的校验码
  3. Parity Bits校验码是用于检验HDMI Cable传输过程中是否发生了错误,如果该Packet在HDMI接收端校验错误,如果只有一个bit的错误,那么可以修正,超过1bit的错误会被判别为无效Packet(由于HDMI是一直在发送数据因此无法重发错误Packet?)

所以说,在接收端,在解完包之后,需要取出各个BCH block的Parity bit,进行Calibration(校验)

Packet类型各种各样,详细请看HDMI Spec

 

Audio Clock

Audio的采样率有44100,48000,192000等,是各种各样,在HDMI传输时,Audio是PCM级(无压缩)传输,把PCM数据打散到各个包内,为了得到每个音频帧的数据,也需要知道Audio的采样率。HDMI中规定Audio的传输方式:

HDMI1.4 硬件设计简介_第14张图片

Audio采样率fs重建依靠的主要参数为:

  1. TMDS Clock
  2. CTS
  3. N

在发送设备这端,已知参数有采样率fs,视频时钟Video Clock(TMDS clock),以及预先设定好的参数N,求CTS:

 

在接收设备这端,TMDS clock通过硬件设备可以得到,N,与CTS通过Audio Packet传输过来,求fs:

 

在接收端为了保持fs的稳定与精确,需要进行锁相,即用VCO(Voltage-controlled oscillator压控振荡器,通过电压控制产生的频率)产生合适的频率,然后用PFD(Phase Frequency Detector)来锁频

HDMI1.4 硬件设计简介_第15张图片

 

  1. 首先,由于VCO有个最佳的工作区域如(200MHz~500MHz),那么为了保证VCO在最佳工作频率内,我们可以从后倒推回来,先对输出的fa128做乘法得到

    由于只有那么几种(44.1k,48k等),所以比较容易得到与

  2. 然后,为了更快进行频率匹配,需要对近来的频率(就是晶振时钟)或者(pixel clock)做除法,也对做除法,令两个趋向相等。对于细微的区别可以用D Code 进行修正
  3. 最后做PFD锁相
  4. 第2,3步的反馈操作循环地进行,最后可以得出比较稳定的
  5. 最终得到

 

HotPlug

HotPlug即热拔插,当接上接口时就可以判定设备是否存在,以进行后续工作。

HDMI source device(HDMI HPD)会监测sink device的Hotplug端口,如果Hotplug为High,则证明设备可以工作,然后去读取DCC,如果为low,则证明设备已断开。

HDMI sink device应该通过把Hotplug拉低,来通知source device EDID已经被改变,那么source device在Hotplug被拉高后,就会重新来读取新的EDID,拉低这段时间应该多于100ms。

HDMI规定,HDMI 的5v引脚通电时,可以通过DCC去读取EDID,即需要保证Hotplug为high,有些Hotplug是直接接到5V上的(如下)。

Hotplug接法:(HDMI HPD(Hotplug detect ?)检测sink的Hotplug端)

HDMI1.4 硬件设计简介_第16张图片

上面用5V引脚进行供电,并接上Hotplug,这样做就能保证每次source device接上sink device时,都可以去读取到EDID。但是这样做有一个缺点,当5V电源断开时,会有5v的电压回灌给HDMI HPD与Hotplug,5V电压会冲击Hotplug,一旦Hotplug引脚无法承受5V电压的回灌,会被打穿。

下面有个较好的Hotplug接法:

 

HDMI1.4 硬件设计简介_第17张图片

上面用的是额外的GPIO引脚加上三极管控制HDMI HPD为0还是1,如果HDMI0_HPD_CTL输出0,那么三极管断开,HDMI0_HPD侦测到High,如果HDMI0_HPD_CTL输出1,那么三极管打通,HDMI0_HPD侦测到low。

 

HDMI Sink

例如像TV这种就是HDMI的接收端,那么HDMI接收端需要做些什么东西。

HDMI可以接收到的有三个通道的TMDS Data,TMDS Clock,可以设置Hotplug,还有DCC传输用的I2C引脚。上面已经讲了TMDS Data,与设置Hotplug,接下来分析TMDS Clock。

TMDS Clock 就是Pixel Clock,即一个像素点所用的时钟频率。TMDS Clock通过clk 引脚传输到接收端,但是接收端并不清楚发送端发过来的TMDS Clock 频率为多少,因此需要通过Phy(PHY是模拟数字转换部分,不同于ADC,PHY是不知道采样频率的,需要自己锁频、锁相,侦测确切的输入频率)来进行锁相得到。但是由于HDMI频宽太宽(480P@60Hz为25.2MHz,1080P@60Hz为162MHz,甚至还有高达340MHz的),一般VCO(压控振荡器,通过电压控制产生的频率)无法覆盖这么大的范围,因此需要分频带来设置Phy:

先侦测输入频率落在哪个频带,然后根据不同频带做不同设置。

用TV产生的晶振来数count,数得count后就知道TDMS Clock了

??

或者用1024个TMDS Clock来数晶振个数

??

 

由于视频信号从RGB个8bit通过TMDS编码后变成了10bit,然后又串行化,所以实际用于接收TMDS Data所用的时钟应该为:

 

另外ReceiveClock也可以不用直接采用上面的乘法,而是采用TMDSClock为参考、硬件锁相的方法来得到。

得到ReceiveClock后就可以去设置频率PLL,然后对三个通道进行采样得到TMDS Data。

 

Timming Detect

在Sink端还有需要进行Timming Detect,因为如果设备可以支持(如chroma),HDMI可以自由更换Timming,而当Timming更换了之后,Sink需要重新设定Phy。因此,通过侦测频率的改变来检测是否更换了Timing是必要的。一般会有一个中断服务(或循环)线程来侦测频率的改变,一旦频率改变后,该进程会通知重新设定Phy,保证HDMI的正确运行 

  

 

HDMI版权内容保护之HDCP

HDCP通过DDC传输

HDCP主要用于版权视频的保护,举例来说,如果有一台蓝光DVD播放机可以播放blueray DVD,并且该DVD已经获得HDCP授权,你现在想把该DVD影像输出到某台TV,但是该TV没有获得HDCP授权,那么该TV可能就没法播放影像,或者播放质量下降,如出现雪花,图像从1080p变为480p,或者没有声音,都有可能。

HDCP是靠两个设备的交互进行HDCP授权认证的,认证流程如下

HDMI1.4 硬件设计简介_第18张图片

 

  1. Transmitter会发送一个key An(64bit)与Aksv(key selection vector 40bit)给Receiver
  2. Receiver接收到An后,也会发送一个Bkvs以及REPEATER(表明B设备是否为Repeater设备)给Transmitter
  3. Transmitter开始HDCP认证码算法:

    要理解算法,首先我们需要知道ksv是用来干嘛的

    1. 在每个HDMI设备内部,都会保存40组64bit的key,key[40]
    2. 40bit的kvs,每一个bit都是一个索引,当kvs的某一位n为1时,会把key[n]取出来,
    3. 把所有的key[n]相加,得到km,
  4. Receiver也会做HDCP认证码算法这个步骤得到km'
  5. Transmitter与Receiver都会用km\km'去做hdcpBlkCipher,得到一个值R0与R0'
  6. 100ms后Receiver把R0'发送到Transmitter与R0做比较,相等则认为认证完毕。当然km = km'才能保证R0 = R0'。
  7. 此后的每一帧,Transmitter与Receiver都会运行一次hdcpBlockCipher,不过参数为上次生成的Ks与M,生成的新参数为Ks,M,T

    HDMI1.4 硬件设计简介_第19张图片

  8. 在第128帧的时候,另R = T
  9. 在间隔第一次通信的2s后,再次进行认证
  10. 后续都采用7,8,9这三个步骤进行迭代认证

HDMI1.4 硬件设计简介_第20张图片

 

此外HDMI自1.1后还支持一个更快速与频繁的认证方式,就是上方设备通信图的下半部分

  1. 在每第16的倍数帧,用T与当前帧的Channel0的0像素做异或得到Pj
  2. Channel0的0像素到达Sink后,也与Sink的T‘做异或得到P'j
  3. Sink把P'j发送到Source,与Pj做比较,相同则通过认证

HDMI1.4 硬件设计简介_第21张图片

了解HDCP对于处理HDMI的异常现象很有帮助,比如说如果时而出现雪花,有可能是信号不好导致Channel0的0像素出错,从而第二阶段的认证有时会不成功...

 

HDMI Sink总流程

HDMI1.4 硬件设计简介_第22张图片

 

  1. 提取与分割10bit的TMDS串行数据
  2. 10bit的数据,通过不同线路进来的,判断是那种类型的:DE,Data Island,RGB,Hs,Vs,Ctrl
  3. TMDS解码
  4. HDCP解码,同时Hs,Vs,DE做delay
  5. RGB与DE,Hs,Vs...
  6. BCH解码得到Packet,错误验证
  7. Packet含义解析
  8. 如果是信息,则存到内存
  9. 如果是Audio Data,生成采样频率
  10. Audio输出

 

 

高清晰度多媒体接口(英文:High Definition Multimedia Interface,HDMI)是一种数字化视频/音频接口技术,是适合影像传输的专用型数字化接口,其可同时传送音频和影音信号,最高数据传输速度为5Gbps。同时无需在信号传送前进行数/模或者模/数转换。

原理图和管脚描述:

HDMI1.4 硬件设计简介_第23张图片

HDMI1.4 硬件设计简介_第24张图片

二、HDMI有什么特性?

1、可以传送无压缩的音频信号及高分辨率视频信号,数字信号,质量高。

2、提高高达5Gbps的数据传输带宽。

3、最高能支持1080P视频。

4、理论20m,实际一般为3m左右。

5、同时传输音频、视频、版权保护,在消费电子领域非常受欢迎。

6、HDMI是外部接口,对于视频的分辨率和色深的提升能力有限。

7、HDMI兼容性不好。

三、HDMI和DVI的区别?

HDMI 相比 DVI 接口支持了音频的输出,并且有着更高的带宽,它可以算是目前最主流的视频输出接口,由于接口变得更小,也被广泛应用于电视机、显示器、笔记本电脑等设备上。HDMI 接口虽然在规范上没有 DVI 那么负载,但是却有着不同的形态。

四、差分线布线和等长匹配的要求

1、差分对信号需要对称布线。

HDMI1.4 硬件设计简介_第25张图片

2、不允许在差分对之间放置任何器件或通孔, 即使信号是对称布线的。差分对之间的通孔可能会导致 emc干扰性问题, 并造成阻抗不连续。

HDMI1.4 硬件设计简介_第26张图片

3、某些差分对高速信号需要串行耦合电容器,放置这样的电容器需要对称。因为电容器和垫片之间会产生阻抗不连续性的问题。

HDMI1.4 硬件设计简介_第27张图片

4、过孔在阻抗方面会引入了巨大的不连续性。尽量将放置的通孔量减少到最小值, 并将过孔对称放置。

HDMI1.4 硬件设计简介_第28张图片

5、为了满足差分对的阻抗要求, 两个信号布线都需要在同一层上进行。在布线中添加过孔的数量也要相同。

HDMI1.4 硬件设计简介_第29张图片

6、差分线等长补偿方式首选蛇形绕线

HDMI1.4 硬件设计简介_第30张图片

7、蛇形绕线应放置在长度不匹配的原点。这可确保正负信号分量在主要部分同步传播。

HDMI1.4 硬件设计简介_第31张图片

8、弯曲是长度不匹配的常见来源。补偿应放在接近最大距离为15毫米的折弯。

HDMI1.4 硬件设计简介_第32张图片

9、通常有两个弯道相互补偿。如果弯曲的距离超过15毫米, 则无需额外用单端绕线进行补偿是必要的。信号不应异步传播到超过15毫米的距离。

HDMI1.4 硬件设计简介_第33张图片

10、差分对连接的每个段都需要单独等长。连接可以由连接器、串行耦合电容器或过孔进行分割。这两个弯道在下面数字将相互补偿。由于通孔将差分对分成两个段,弯道需要单独补偿。这确保了积极和消极信号通过通孔同步传播。

HDMI1.4 硬件设计简介_第34张图片

11、由于差异是很难估计的, 如果可以最好将信号布线到同一层上,因为不同图层的信号速度不相等。

HDMI1.4 硬件设计简介_第35张图片

12、在可能的情况下, 最好是对差分信号的对称布线, 以避免绕蛇形的需要。

HDMI1.4 硬件设计简介_第36张图片
13、如果器件之间的空间允许, 请尝试在较短的布线中添加一个小循环。这是用首选的解决方案, 来匹配长度差异, 而不不需要蛇形绕线。

HDMI1.4 硬件设计简介_第37张图片

五、PCB叠层设计参考

为了减少高速信号下的反射, 有必要匹配阻抗源、接收器和传输线之间。信号布线的阻抗取决于其几何及其相对于任何参照平面的位置。布线宽度和间距对于特定阻抗要求的差分对之间取决于所选的PCB层叠。所以PCB层叠是计算阻抗必不可少的环节。下面我们列出记住叠层参考:

HDMI1.4 硬件设计简介_第38张图片

HDMI1.4 硬件设计简介_第39张图片

HDMI1.4 硬件设计简介_第40张图片

六、PCB设计要求

HDMI IC 原则上推荐靠 HDMI 座摆放。HDMI走线间的长度差建议尽量小,建议不超过 500mil。

HDMI 信号线要求按差分规则走线,需做 100 欧姆阻抗匹配,走线宽度根据各个PCB 厂商的不同工艺而有所不同,按 RK3188 的叠层及 RK 的 PCB 供应商工艺,推荐走线宽度为 7MIL。差分对之间要隔离,拉开间距,间距至少 3W。差分走线要有完整参考层。不能有干扰信号,如屏背光电源,晶体等走线跟 HDMI 信号线临层 平行。
下图是比较理想的 HDMI走线

HDMI1.4 硬件设计简介_第41张图片

相邻GND层走线,空间足够的情况下还要进行包地处理。包地线离差分线间距满足差分线宽的3倍(中心到中心),铺铜离差分线20mil。信号换层的过孔附近放置一些接地的过孔,以便为信号提供最近的回路。

七、阻抗计算要求

1、单端走线控制50欧姆,差分阻抗控制为100欧姆(+/-10%)。

2、过孔小引起的阻抗波动小,过孔大可能会导致阻抗下降,不连续等,所以多层板推荐大家使用过孔尺寸为8mil/16mil。

3、使用完整的电源层和接地层来做参考平面,这样可以避免HDMI跨分割的出线,从而保证信号的稳定性。

八、ESD处理

ESD属于瞬态器件,也是一种保护器件,很短的时间内短路是可以的,添加ESD主要是为了防浪涌。在布局方面,ESD器件一定要靠近HDMI的端子放置,以保证ESD作用能发挥出来。
下面是两种ESD和HDMI布局布线参考:

HDMI1.4 硬件设计简介_第42张图片

至此,HDMI高速PCB设计指南的内容已经全部讲完,希望大家能通过我们的文章学习,更好的设计出符合要求的HDMI。

关注 芒果木有籽的公众号 更多的硬件设计解读

HDMI1.4 硬件设计简介_第43张图片

你可能感兴趣的:(视频)