HDMI接口信号流向及原理图分析

15 篇文章 3 订阅

  基于FPGA的HDMI设计导航页面,点击跳转。


1、HDMI的来源及发展

  如今显示器上最常用的接口无非HDMI(High Definition Multimedia Interface)与DP(DisplayPort)两种,VGA与DVI已经很少使用,原因在于VGA传输的是模拟信号,在发送端需要将数字信号转换为模拟信号,在接收端又需要把模拟信号转换成数字信号,模拟信号在传输过程中及其容易受到外界干扰,逐渐被淘汰。DVI接口与HDMI接口类似,都是传输数字信号,但只能传输视频信号,不能传输音频信号,也极少使用了。

  HDMI接口是松下、索尼这些电视厂商在2002年联合推出的视频传输接口,HDMI1.0最高带宽达到4.96Gbps。2006推出的HDMI1.3版本最高带宽达到10.2Gbps,经过四年发展,HDMI接口从电视领域逐步拓展到游戏主机、笔记本、摄像机、数码相机等产品上,这段时间HDMI风光无限。

  英特尔、英伟达、联想、戴尔等电脑公司不想受制于人,在2006年5月联合发布了DP1.0,最高带宽支持10.8Gbps。2009年的时候HDMI1.4发布,最高支持4K30帧。2013年9月的时候发布HDMI2.0,最高带宽扩展到18Gbps,支持4K60Hz,2017年推出HDMI2.1,数据带宽达到48Gbps。但是DP2.0已经最高支持80gbps的传输速率,并且DP协议是完全免费的,而HDMI是需要支付版权费用的。

  HDMI凭借早期的市场积累优势,HDMI的数据传输速率足够用户日常使用,所以HDMI还是作为最常见的显示器接口存在。

2、HDMI接口类型

  根据接口大小大致可分为四类,如图1所示,分别是A型、B型、C型、D型。
在这里插入图片描述

图1 HDMI接口类型

2.1、A型接口

  A型是最常见的,一般显示器或视频设备,都提供了这种尺寸的接口,该接口宽度为13.9毫米、厚度为4.45毫米,有19针,接口对应的信号分布如图2所示,对应的信号分布如表1所示。

在这里插入图片描述

图2 A型 HDMI接口信号分布

表1 A型HDMI接口的引脚含义
HDMI信号引脚定义
引脚信号引脚信号引脚信号
1数据2+2数据2屏蔽3数据2-
4数据1+5数据1屏蔽6数据1-
7数据0+8数据0屏蔽9数据0-
10时钟+11时钟屏蔽12时钟-
13CEC14保留15SCL
16SDA17DDC/CEC地18+5V电源
19热插拔检测

   HDMI接口包含四对差分线,其中三对差分线用于传输RGB三种信号,剩余一对差分线传输差分时钟。 为了加强抗干扰能力,每对差分线之间还加入了一根屏蔽线,比如数据2+与数据2-之间加入数据2屏蔽线,1、2、3信号线组成1个数据传输通道,10、11、12三根线组成1个时钟传输通道。SCL与SDA使IIC接口,主要用于DDC,进行EDID(相当于一个信息表,会存放显示器的制造商、型号、分辨率等信号)的交互,显示设备和主机可以相互读取。

  CEC是HDMI的一个扩展功能,比如以前在电视上通过影碟机播放光盘的内容,电视机与影碟机采用HDMI进行通信时,用户可以通过电视遥控器去控制影碟机实现视频的快进或倒退,快进或倒退的数据就是通过HDMI的CEC从电视接收器传输给影碟机的,影碟机再去实现视频的快进或倒退。

2.2、B型接口

  B型接口非常罕见,宽度达到21毫米,接口引脚有29针,接口引脚如表2所示,相比A型接口多了三组差分数据线,这代表传输数据带宽是A型接口的2倍,现在该接口只应用于一些专业场合。

表2 B型HDMI接口的引脚含义
HDMI信号引脚定义
引脚信号引脚信号引脚信号
1数据2+2数据2屏蔽3数据2-
4数据1+5数据1屏蔽6数据1-
7数据0+8数据0屏蔽9数据0-
10时钟+11时钟屏蔽12时钟-
13数据5+14数据5屏蔽15数据5-
16数据4+17数据4屏蔽18数据4-
19数据3+20数据3屏蔽21数据3-
22CEC23保留24保留
25SCL26SDA27DDC/CEC 地
28+5电源29热插拔检测

  接口信号除了增加3对数据线之外,与A型接口一致,不再过多介绍。

2.3、C型接口

  C型是为小型设备而生的,其尺寸为2.42 mm × 10.42 mm,相比A型小了将近1/3,应用范围很小。接口引脚与A型接口一致,也是19针,但是引脚的分布有一点区别,差分屏蔽线与差分的P引脚对换了,其余部分信号位置也互换了,如下表3所示。主要用在便携式装置上,例如DV、数码相机、便携式多媒体播放机等。

表3 C型HDMI接口的引脚含义
HDMI信号引脚定义
引脚信号引脚信号引脚信号
1数据2屏蔽2数据2+3数据2-
4数据1屏蔽5数据1+6数据1-
7数据0屏蔽8数据0+9数据0-
10时钟屏蔽11时钟+12时钟-
13DDC/CEC地14CEC15SCL
16SDA17保留18+5V电源
19热插拔检测

2.4、D型接口

  D型是最新的接口类型,接口引脚分布与A型完全一致。尺寸为2.8 mm x 6.4 mm,进—步减小,采用了双排针脚设计,尺寸近似于miniUSB接口,主要应用在一些小型的移动设备上,如手机、MP4等等。

3、HDMI传输数据的信号流向

  FPGA开发板上一般是A型的HDMI接口,本文只对数据的信号流向做简要讲解,便于后文的原理图电路分析,本文不对视频、音频信号的编码原理及FPGA实现进行讲解,这部分将放在后续FPGA实现TMDS编码的章节讲解。

  HDMI可以传输视频信息、音频信息、控制和状态信号,主机与从机交互数据如图3所示,主机先对视频信号、音频信号、状态、控制信号进行编码转换成10bit的冰箱数据,然后将并行数据转换为串行数据,最后将单端信号转换为四路差分信号输出。 从机接收到差分信号后,解码出视频、音频、控制信号,从而实现数据传输。主机可以通过DDC通道读取从机的EDID数据,获取从机的制造商、版本、分辨率等信息。主机和从机还可以通过CEC实现一些数据交互。

在这里插入图片描述

图3 HDMI传输示意图

  详情如下图4所示,HDMI链路包括三个TMDS数据通道和一个TMDS时钟通道。TMDS时钟通道始终以与传输视频的像素速率成比例(比例关系在后续讲解FPGA实现的时候会进行说明)的速率运行。 在TMDS时钟通道的每个周期,三个TMDS数据通道中的每一个都传输一个10位字符。

在这里插入图片描述

图4 HDMI编码器/解码器概述

  由上图4可知,三个数据通道分别传输R、G、B像素对应的数据,其中传输蓝色像素的通道会将行、场同步信号进行编码,传输给从机,从机从该通道解码出行、场同步信号,用于同步接收到各通道的数据,其余两个数据通道会将一些控制信号进行编码传输给从机。 视频信息采用TMDS编码规则进行编码,后续FPGA实现HDMI传输数据时进行详细讲解该编码,音频信号的编码比较复杂没并且一般FPGA不会用来传输音频信号,此处不足过多介绍,想了解的可以查看HDMI手册。

4、硬件原理图分析

  FPGA实现HDMI数据 传输一般会存在两种方式,一种是采用外部解码芯片对HDMI数据进行解码,FPGA只需要与该芯片的接口进行通信即可,FPGA的代码设计难度较低。另一种就是不带解码芯片,FPGA通过编码算法对视频、音频信息进行编码,直接输出差分信号,实现数据的传输,相比前者,后者FPGA开发难度更大,但是成本更低,灵活性更高,也更有利于了解编码规则。

  本文对第二种电路进行分析,第一种直接查看编码/解码芯片手册即可实际电路,难度不大。

  我手里目前有两块开发板带有HDMI接口,这两块开发板硬件电路有一点区别,额外介绍一下以前用过的两外两块开发板的HDMI电路,总共四块开发板的HDMI硬件原理图接口分析。

4.2、达芬奇开发板的HDMI原理图分析

  正点原子的这款开发板有两个相同的双向HDMI接口,对应原理图如图5所示。差分数据线和时钟线通过瞬态抑制二极管后接到FPGA管脚上,并上拉到3.3V, AZ1045-04F用于保护连接到数据和传输线的敏感组件免受静电放电(ESD)引起的过电压的影响,可以理解为集成的瞬态二极管。CEC引脚依旧没有使用,此处接到3.3V。

在这里插入图片描述

图5 达芬奇开发板的HDMI原理图

  稍微复杂一点的就是IIC的数据线以及热插拔引脚的控制,因为HDMI接口是5V电平,而FPGA管脚最高只能提供3.3V电压,所以要进行电平转换。此外该接口是双向接口,作为输出接口时,热插拔应该是外部从机输入提供给FPGA作为判断使用的,作为输入接口时,FPGA热插拔引脚输出连接状态,会存在一个方向切换以及状态检测和发送的作用。

  该开发板通过HDMI_OE和HDMI_HPD信号实现信号的双向传输,在分析这两个信号控制原理前,需了解仙童公司设计的两颗芯片(NC7SZ125M5X和NC7WZ07P6X)的工作原理。NC7SZ125M5X是一个三态门,OE为低电平时,输出引脚Y等于输入引脚A,当OE为高电平时,该芯片输出高阻态。NC7WZ07P6X也是一个双通道的三态门,当输入端A为低电平时,输出端Y为低电平,输入端A为高电平时,输出端Y为高阻态。

  HDMI_OUT_EN信号用来控制HDMI输入、输出的方向,DHMI_OUT_EN输出高电平时表示将HDMI作为输出接口,此时NC7SZ125M5X输出高阻态。HDMI的19号引脚输入低电平时,NC7WZ07P6X的Y2引脚输出低电平,则HDMI_HPD为低电平,HDMI的19号引脚输入5V时,NC7WZ07P6X的Y2引脚输出高阻态,HDMI_HDP被上拉到3.3V,即高电平。所以当HDMI作为输出时,FPGA可以通过检测HDMI_HDP信号电平状态,获取从机是否连接到HDMI接口上,从而决定是否传输数据。

在这里插入图片描述

图6 热插拔检测信号电路

  HDMI_OUT_EN为低电平时,该HDMI接口作为输入,此时HDMI_HDP输出高电平,表示FPGA连接到了HDMI接口,则NC7WZ07P6X输出高电平,HDMI接口的19号引脚被拉高,而NC7WZ07P6X的输入端变为高电平,输出端则为高阻态。HDMI_HDP被拉低时,同样可以分析出HDMI接口的19号引脚被拉低。

  HDMI的供电电路如图7所示,作为输出接口时,开发板的电源给HDMI接口供电,所以该电源芯片的使能端连接HDMI_OUT_EN信号,HDMI_OUT_EN信号为高电平时,电源芯片输出5V电源给HDMI接口供电。HDMI_OUT_EN为低电平时,表示HDMI接口作为输入,则该接口由外部输入设备进行供电,TPS2051BDB芯片不工作。

在这里插入图片描述

图7 HDMI供电电路

  接下来就是IIC的电平转换电路,如图8所示,SCL与SDA的电路原理相同,只是方向相反,此处只分析SDA的电路原理即可。

  1. 当HDMI_SDA是主机,为高电平(3.3V)时,则NMOS的栅源电压U­gs=0,NMOS被关断,左侧HDMI_SDA_LS作为输入,对外呈现高阻态,则HDMI_SDA_LS最终被R195上拉到5V,从而实现5V到3.3V的转换。

  2. 当HDMI_SDA是主机,为低电平时,则NMOS的栅源电压U­gs>0,左侧HDMI_SDA_LS作为输入,对外呈现高阻态,NMOS的源极与漏极导通,则HDMI_SDA_LS被HDMI_SDA拉低,实现低电平的转换。

在这里插入图片描述

图8 IIC的电平转换电路

  3. 当HDMI_SDA_LS是主机,为高电平(5V)时,右侧的HDMI_SDA作为输入,对外呈现高阻态,HDMI_SDA被R136上拉到3.3V,此时U­gs=0,NMOS关闭,HDMI_SDA就能一直保持高电平(3.3V)的状态。

  4. 当HDMI_SDA_LS是主机,为低电平时,右侧的HDMI_SDA作为输入,对外呈现高阻态,HDMI_SDA被R136上拉到3.3V,然后就G了,输入为低电平,输出变为高电平了?

其实是因为这个MOS管的原理图画的不标准,A03400手册上的模型图如图9所示,在源漏之间存在一个二极管,这个时候二极管就起作用了。

由于HDMI_SDA为3.3V,HDMI_SDA_LS为0V,那么源极指向漏极的二极管导通,HDMI_SDA电位被拉低,导致NMOS的栅源电压U­gs>0,NMOS打开,则HDMI_SDA被HDMI_SDA_LS拉低,输出低电平。
在这里插入图片描述

图9 A03400的模型图

  最后如图10所示的一个开发板电源与HDMI接口电源的隔离电路,该NMOS功能与二极管类似,起单向导电的作用。使用MOS管相比二极管的优势,使用二极管导通时会有压降,会损失一些电压。而使用MOS管做隔离,让MOS管饱和导通,通过电流时MOS管几乎不产生压降。

在这里插入图片描述

图10 MOS管隔离电路

  隔离是保证HDMI接口的电压不会影响开发板的电源,比如没有这个隔离电路,那么HDMI接口的3.3V电压直连到开发板的3.3V电源,如果在板子上电之前将外部的HDMI线连接到FPGA开发板上,外部仪器给HDMI接口供电,会导致电压倒灌到开发板内部,导致一些3.3V连接的LED之类的器件工作,但开发板此时还没供电,就会很奇怪。

4.2、AX720的HDMI接口

  小梅哥的ACX20,如图11所示,该开发板有两个HDMI接口,两个接口都是双向传输数据的。

在这里插入图片描述

图11 AX720开发板

  其中一个HDMI的原理图如图12所示,与正点原子的原理图大多一致。J6是HDMI A型接口的金属座子,差分数据线、时钟线和热插拔检测引脚的连接方式与原子的开发板基本一致,由于FPGA没有使用CEC功能,CEC引脚直接悬空。

在这里插入图片描述

图12 ax720 HDMI接口原理图

  相同的电路就不在进行分析了,区别在于IIC的电平转换电路不同,原子使用的是NMOS的分离器件,而小梅哥使用的是集成的电平转换芯片。对于集成芯片,通过数据手册了解功能即可,电平转换芯片GTL2002DP118的内部结构如图13所示:

在这里插入图片描述

图13 GTL2002DP118内部结构

  GTL2002提供2个NMOS通路晶体管(Sn和Dn),带有一个公共栅极(GREF)和一个参考晶体管(SREF和DREF)。该器件允许1.0 V和5.0 V之间的双向电压转换,而无需使用方向引脚。当Sn或Dn端口为LOW时,Sn和Dn端口之间通过低电阻连接。假设Dn端口上的电压较高,当Dn端口为HIGH时,Sn端口上的电压被限制为参考晶体管(SREF)设置的电压。当Sn端口为HIGH时,上拉电阻将Dn端口拉至DREF。由于器件中的所有晶体管都是相同的,因此SREF和DREF可以位于其他两个匹配的Sn/Dn晶体管中的任何一个上,从而使电路板布局更容易。
在这里插入图片描述

图14 IIC电平转换电路

  了解原理后对图14的IIC原理图进行分析,U30的GREF(NMOS的栅极)是接5V,SREF(NMOS管的源极)接3.3V,此时NMOS的栅源电压大于0,根据手册可知此时的NMOS漏源两极是导通的,也就说明栅源电压大于此NMOS的开启电压。而DREF(NMOS的漏极)接在5V,当芯片的S1、S2、D1、D2这些管脚输入低电平时,对应NMOS都是处于打开状态的,源极S端与漏极D端之间只存在微小电阻,两端电压接近相等,从而会把另一端的电位拉低,达到低电平转换效果。当D端输入高电平(近似等于DREF)时,由于该NMOS与参考的NMOS时对称的,那么S端电位也就近似等于SREF的电位了,从而实现5V转3.3V电压。当S端输入高电平(近似等于SREF)时,根据对称原则,D端电位近似等于DREF电位,手册上说此时NMOS处于几乎关断的状态。

  相比原子的少了一个隔离作用的电路,但对HDMI的功能也没有什么影响。

4.3、米联客ZYNQ7030

  我手里现存开发板中的一块,这是一个单向的HDMI接口,对应原理图如图15所示,硬件电路及其简单,差分时钟线和数据线的连接方式与前面开发板一致,由于只能作为输出,所以热插拔检测引脚就只会作为输入使用,直接下接地,连接到FPGA管脚上。

  查看了后续电路,这个HDMI接口上的IIC接口应该是没有连接的,因为没有做电平转换,不可能直接给FPGA使用,实际电路板上R41和R42应该没有焊接,所以单向传输的电路会简单很多。

在这里插入图片描述

图15 zynq7030 HDMI硬件原理图

  我手里另一块带HDMI接口的板子是米联客老版的ZYNQ7020,这个板子的原理图与小梅哥的AX720除电源转换芯片不同之外,基本上完全相同,所以就不贴出来了。

  上述分析三块板子的原理图,除了了解HDMI的接口信号外,也能够熟悉一些电平转换电路,原子开发板所用的IIC电平转换电路就比较经典,后续就是对HDMI的视频编码协议进行解读并采用FPGA实现。

  您的支持是我更新的最大动力!将持续更新工程,如果本文对您有帮助,还请多多点赞👍、评论💬和收藏⭐!

  • 22
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

电路_fpga

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值