【HDMI原理】HDMI2.1原理浅析(一)
HDMI接口作为当前主流音视频接口,随着高分辨率、高带宽应用场景,HDMI2.1标准也随着推出市场;近期有在做HDMI相关知识总结,详细展开讲讲,有错误之处还望不吝指正。
HDMI2.1 增加了FRL(Fixed Rate Link)模式支持,支持8K@60Hz和4K@120Hz;
FRL模式工作特点
1)HDMI时钟内嵌到数据中,在接收端需要做时钟恢复;
2)用于传输音视频数据通道最多为4个,每个通道最高速率支持12Gbps;
3)编码效率提升,编码方式从8b/10b变为16b/18b;
FRL传输规格说明
1)在3Lane模式下,未使用到的Lane3,source/sink端都需要差分端接电阻(50~150Ω);
2)在4Lane模式下,支持6/8/10/12Gbps四种速率;
FRL支持3Lane/4Lane模式,详细请参考下表
Number of Lanes | Rate per Lane | Total Bandwidth |
---|---|---|
3 | 3 Gbps | 9 Gbps |
3 | 6 Gbps | 18 Gbps |
4 | 6 Gbps | 24 Gbps |
4 | 8 Gbps | 32 Gbps |
4 | 10 Gbps | 40 Gbps |
4 | 12 Gbps | 48 Gbps |
FRL Link Training Procedure
1)EDID的i2c地址0xA0/A1,长度为256字节存储空间,包含sink所支持的分辨率和最高速率等信息。source输出sink支持的分辨率/速率,不能输出sink不支持的分辨率/速率。
2)SCDC是i2c地址为0xA8/A9的存储空间,用于source和sink沟通交换状态和控制信息,部分字节source和sink都可读写。与EDID不同的是,EDID对source来讲是只读的。
3)HDMI2.1 source和sink沟通过程中,HF-VSDB(vendor specific data block)会使用到Sink version,Update Flags,Sink Configuration,Status Flags等信息。
Max_FRL_Rate数值具体含义
Max_FRL_Rate Value | FRL support |
---|---|
0 | No support |
1 | 3 Lane:3Gbps |
2 | 3 Lane:3Gbps,6Gbps |
3 | 3 Lane:3Gbps,6Gbps 4Lane:6Gbps |
4 | 3 Lane:3Gbps,6Gbps 4Lane:6Gbps,8Gbps |
5 | 3 Lane:3Gbps,6Gbps 4Lane:6Gbps,8Gbps,10Gbps |
6 | 3 Lane:3Gbps,6Gbps 4Lane:6Gbps,8Gbps,10Gbps,12Gbps |
7~15 | Reserved |
首次Training会依次经过4个link training state (LTS):
LT state (LTS) | Source Behavior | Sink Behavior |
---|---|---|
LTS:1 Read EDID | 获取sink端EDID信号,判断是否支持FRL模式 1.FRL_Max_Rate>0 2.SCDC present=1 3.Sink version !=0 | 提供EDID和设定SCDC信息 |
LTS:2 Prepare for FRL | 1.source轮询,直到SCDC FLT_ready = 1 2.source设定FRL_Rate 及 FFE level | sink 准备好link training 时,把 SCDC FLT_ready设置为1 |
LTS:3 Training in progress | 1.source根据设定FRL_Rate进行链路训练 2.根据Ln(x)LTP_req暂存器,发出对应的pattern,Ln(x)_LTP_req=0 ,进入下一个LTS:P状态 | 设定FRL_Start=0,并透过Ln(x)_LTP_req暂存器,为每一lane请求pattern |
LTS:P FRL training pass | 开始FRL传输,查询FRL_Start=1时,才开始传输音视频数据 | 检测到FRL传输后,设定FRL_Start=1,并准备接收音视频 |