美文网首页
HDMI-分辨率 时钟频率 lane速率计算

HDMI-分辨率 时钟频率 lane速率计算

作者: xuefeng_apple | 来源:发表于2023-12-14 14:32 被阅读0次

PCLK: pixel clock(像素频率) 计算方法如下:
以1920x1080p/60hz为例,total pixel:2200,total line:1125,filed rate:60Hz,那么:PCLK = 2200112560 = 148.5MHz;
1280x720p/60hz为例,total pixel:1650,total line:750,filed rate:60Hz,那么:PCLK = 165075160 = 74.25MHz;
3840x2160p/60hz YCC444为例,total pixel:4400,total line:2250,filed rate:60Hz,那么:PCLK = 4400225060 = 594MHz;

1920x1080p/60hz:total pixel:2200,total line:1125,filed rate:60Hz. PCLK = 2200 * 1125 * 60 = 148.5MHz;
148.5MHz X 3 =445.5Mhz
148.5MHz X 4 =594Mhz
148.5MHz X 5 =742.5Mhz
148.5MHz X 6 = 891Mhz


图片.png

HDMI TDMS

英文全称:H-High,D-Definition,M-Multimedia,I-Interface;高清晰度多媒体接口。

主要组成:4对TMDS差分对+DDC(I²C)+HPD+CEC

信号介绍:

a.4对TMDS差分信号:1对时钟+3对数据;

TMDS通道0传输B信号,同时H信号和V信号也嵌入该通道

TMDS通道1传输G信号

TMDS通道2传输R信号,R和G通道的多余位置用来传输音频信号

b.CEC:消费电子控制通道,通过这条通道可以控制设备(不过我们公司目前没有开发这功能)

c.DDC:就是I²C信号,主要是获取显示器的基本信息(比如EDID信息)

d.HPD:热插拔信号,该信号比较重要,当HPD引脚大于2V,TMDS才会输出。因此,如果屏幕没有显示,首先要测量该信号!!!

HDMI传输原理和DVI相同,由Silicon Image公司发明的TMDS(Time Minimized Differential Signal)最小化传输差分信号传输技术
每个数据通道都通过编码算法(异或、异或非等),将8位数据转换成10位数据,前8为数据由原始信号经运算后获得,第9位指示运算的方式,第10位用来对应直流平衡。通过这种算法,会使得数据的传输和恢复更加可靠。

HDMI

1.传输最小化


图片.png
第一步:将8位并行RED数据发送到TMDS Tx。
第二步:并/串转换.
第三步:进行最小化传输处理,加上第9位,即编码过程。第9位数据称为编码位。

2、直流平衡(DC-balanced):在编码过程中,保证信道的直流偏移为零。方法是在原来的第9位数据后面加上1位,使得TMDS发送的“0”、“1”数量保持基本一致。这样,传输的数据趋于直流平衡,使信号对传输线的电磁干扰减少,提高信号传输的可靠性。

3、差分信号:利用两引脚间电压差来传送信号。

二 HDMI与分辨率

PCLK:像素时钟
以1920x1080p/60hz为例:1920108060=124.4MHz
以1280x720p/60hz为例:128072060=55.3MHz

带宽:1s内传输的数据量(bit)

4K频率需要的带宽:选最常用的3840x2160分辨率,色深的话常用的是8位,RGB三色就是24bit,目标是60Hz刷新率(60fps)→→→ 3840216024bit*60fps=11.94Gbps

HDMI1.4像素时钟高达340MHz,即最大带宽是:
              →→→ 340MHz10bit(10bit编码)3(3个数据通道)=10.2Gbps

但是由于HDMI采用的是8bit/10bit编码方式,实际效率是理论值的80%,所以10.2Gbps能传输的最大视频带宽是10.2*0.8=8.1Gbps

HDMI 各个版本对比

图片.png 图片.png

HDMI type 类型

图片.png

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了

f crystal =count×f TMDS fcrystal=count×fTMDS f_{crystal} = {count}\times{f_{TMDS}} ??

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

1024×f TMDS =count×f crystal 1024×fTMDS=count×fcrystal {1024}\times{f_{TMDS}} = {count}\times{f_{crystal}} ??

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

f ReceiveClock =10×f TMDS fReceiveClock=10×fTMDS f_{ReceiveClock} = {10}\times{f_{TMDS}}

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

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

Timming Detect

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

参考

https://blog.csdn.net/qq_25814297/article/details/123630942

相关文章

  • PCIE配置

    PCIE 性能 下表列举了各代PCIE的性能,可见 PCIE总的传输速率 = lane数 * 单lane带宽 PC...

  • (五)计算机中的频率、速率

    目录 频率CPU主频、外频、倍频内存频率前端总线频率发展关系 速率带宽速率位宽 # 频率 ## CPU主频,倍频,...

  • 时钟频率

    时钟频率 1. FOSC代表振荡器的频率,也就是晶振的频率 2 .PLL,用来倍频的。S3C2440 CPU主频可...

  • 时钟频率

  • stc-51定时器

    一,什么是定时器 1.1 时钟周期:时钟周期T是时序中最小的时间单位,具体的计算方法就是1/时钟源频率,我们...

  • 混子带你实战复习进阶51单片机之定时器

    一、基本概念 1、时钟周期:时钟周期 T 是时序中最小的时间单位,具体计算的方法就是 1/时钟源频率晶振是 11....

  • 电子芯片计时原理

    智能电器都有一个CPU,(或者定时芯片), CPU有固定频率的信号作为它的时钟,它通过计算这些时钟(DS12R88...

  • linux命令查看机器配置

    CPU:频率,型号内存:型号,速率,容量...,磁盘:容量,速率。。。文件系统:....网络带宽:.... 总核数...

  • stm32--系统时钟

    系统时钟设置步骤 1.时钟树 SystemInit()后时钟频率大小:SYSCLK(系统时钟) =72MHzAHB...

  • Grand Central Dispatch的使用

    在计算机的早期,中央处理器(Central Processing Unit,简称CPU)的主频(即时钟频率, cl...

网友评论

      本文标题:HDMI-分辨率 时钟频率 lane速率计算

      本文链接:https://www.haomeiwen.com/subject/sutwgdtx.html