专栏首页根究FPGAHDMI驱动系列(一)、HDMI简介

HDMI驱动系列(一)、HDMI简介

一、HDMI简介

高清多媒体接口HDMI全程High-DefinitionMultimedia Interface。HDMI接口协议在物理层使用TMDS(最小化传输差分信号)标准传输音视频数据。

TMDS发送端和接收端的连接示意图:

HDMI视频视频传输所使用的的TMDS连接通过四个串行通道实现。HDMI默认使用3个RGB通道,但是它同样可以选择传输像素点的亮度和色度信息(YcrCb 4:4:4或者4:2:2)。第四个通道是时钟通道,用于传输像素时钟,独立的时钟通道用于为接收端提供接收的参考频率,保证数据能在接收端正确恢复。

二、TMDS分析

逻辑功能:

TMDS从逻辑功能上分为“编/解码”和“并/串转换”两个阶段。

TMDS有四个通道,左侧称为源,右侧称为终端,左侧上方的三个通道channel0、channel1、chaannel2分别接收8bit的B、G、R数据,除此之外,通道0还接收行场同步信号,其他还有一些控制信号和音频信号。

编码阶段,编码器将视频源中的像素数据、HDMI音频/附加数据,以及行同步和场同步信号编码成10bit的字符流。

在并转串阶段将上述的10位字符流转换成串行数据流,并将其从三个差分通道发送出去,并转串过程所生成的串行数据速率是实际像素时钟速率的10倍。

三、传输过程

根据HSYNC与VSYNC的组合判断通道上传输的是有效像素字符还是控制字符。即在一帧图像的行与行之间存在行前肩、行同步、行后肩消隐,以及帧与帧之间的场消隐间隔内,数据通道上传输的是控制字符。

HDMI传输的消隐期除了传输控制字符,还可传输音频或者其他附加数据,比如字幕数据etc。

VDE用于各个通道选择输出视频像素数据还是控制数据。HSYNC和VSYNC信号在蓝色通道进行编码得到10位字符,然后在视频消隐期传输。

TMDS具有较好的电磁兼容性能,可以减小传输信号过程的上冲和下冲,直流平衡使信号对传输线的电磁干扰减少,8b/10b编码。

每个通道的8bit像素数据被转换为460个特定10bit字符中的一个,大致实现了传输过程中的直流平衡,即10bit数据的“0”、“1”个数大致相等。每个编码后的10bit字符中状态跳转次数限制在5次之内。

每个通道的2bit控制信号的状态也要进行编码,编码后分别对应4(00,01,10,11)个不同的10bit控制字符。每个控制字符都有7次以上的状态跳转。

视频字符和控制字符状态跳转次数的不同用于发送和接收数据的同步。

四、电气接口

CEC:Consumer Electronic Control,用户电气控制。

EDID:扩展显示标识数据。

五、时序与硬件

时序分析:

硬件分析:

可以两个时钟输入,Pixel Clk与Pixel Clk x5,Pixel Clk用于将串行数据转换为并行数据,Pixel Clk x5用于串行数据解码,将串行数据在一个像素时钟(Pixel Clk)周期发送出去,可以看到在终端对Pixel Clk x5进行TMDS差分处理。

原理图分析:

1、 首先可以看到D0~D2 P/N三个通道,分别传输BGR与控制信号,传输时钟为CLK+/-,差分时钟,双倍传输速率。

2、 HDMI_CEC:用户电气控制,用于HDMI连接线上的设备之间进行信息交换。

3、 HOT PLUG:热插拔检测,该引脚为高电平时,表明视频设备和接收设备连接。当该引脚为低时,表明视频设备和接收设备断开连接(没电了)。

分析PLUG的热插拔电路,NC75Z125M5X是一个三态门,芯片手册https://www.alldatasheet.com/datasheet-pdf/pdf/54061/FAIRCHILD/NC7SZ125M5X.html,其连接框图和真值表为:

NC7WZ07P6X是一个开漏输出芯片,datasheet地址https://pdf1.alldatasheet.com/datasheet-pdf/view/181897/FAIRCHILD/NC7WZ07P6X.html,控制输出低电平时引脚接地,控制输出高电平时引脚既不输出高电平也不输出低电平,为高阻态,其真值表、逻辑符号、引脚描述为:

这就非常nice+interesting了,从视频接收方和视频发送方分别分析:

(1)、当视频接收方(显示屏)带电拔掉时,NC7WZ07P6X的A2管脚输入电压为低,输出为低,NC75Z125M5X的引脚A被拉低。

(2)、当视频发送方(开发板)带电拔掉,NC75Z125M5X的引脚A被拉低。电阻R56用于压降。

(3)、而NC75Z125M5X还有一个EN#信号,该信号用于设置HDMI接口的IO mode,当其为高时,NC7WZ07P6X使能,NC75Z125M5X禁用,HDMI_HPD设置为输出端,作为FPGA的输入信号。

总结起来就是:HDMI_HPD指的是热插拔检测,表明HDMI连接状态,当视频设备与接收设备通过HDMI连接时,接收设备将HPD置为高电平,通知发送设备。当发送设备检测到HPD为低电平时,表明断开连接。

IIC连接线:

HDMI_SCL_LS和HDMI_SDA_LS是HDMI接口的显示数据通道(DDS,Display Data Channel),用于HDMI发送端和接收端之间交换一些配置信息,通过I2C协议通信,读取保存在EEPROM中的EDID数据,获取接收端的信息,确认接收端终端显示的设置和功能,决定和接收端之间以什么格式传输音/视频数据。

下一篇预告:HDMI的并行数据转串行数据算法

本文分享自微信公众号 - 根究FPGA(gh_08b5d93f8fa5),作者:叫什么好呢啊

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-02-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • AMBA之AHB总线学习笔记

    AHB同是由ARM提出的总线规范,全称为Advanced High Performance Bus,高级高性能总线(高性能、高速时钟),主要用于高速模块(如CP...

    根究FPGA
  • AXI总线的4K地址对齐问题

    在ZYNQ的地址分配中,可以将每一个Slave接口定义为一个存储器映射,其由一个或多个地址块(目前只遇到过一个地址块),存储区和子空间映射元素组成,可以通过从属...

    根究FPGA
  • 杂谈 | OSI七层协议

    本系列对OSI七层协议进行讲解和介绍,在接下来的系列中更新其在以太网中的具体应用。

    根究FPGA
  • 高清视频传输系统保障城市整体监控传输网络安全

    高清视频传输系统传输系统是整个社会治安视频监控网络的数据传送平台,承担着平安城市从接入点中心以之间的视频数据传输重担,是搭建整个监控网络的血脉,因此,治安视频监...

    用户5783137
  • 时序逻辑电路基础

    建立时间Tsu(setup):触发器在时钟上升沿到来之前,其数据输入端的数据必须保持不变的最小时间。

    NingHeChuan
  • 短视频软件开发结合美颜SDK打造短视频源码经典

    为什么短视频软件这么火呢?因为它符合了用户碎片化时间的需求,既娱乐了大众,又不会浪费用户太多时间。

    用户4551288
  • 一图了解,网络7层协议之间的关系

    今天是周四(2020-06-04),分享一句谚语 “读书有三到,心到口到眼到” 。分享给大家的是 「网络服务 模块」- 网络7层协议。

    八点半的Bruce、D
  • Java 枚举

    ___________________________________________

    Mirror王宇阳
  • Java——枚举基础应用总结(多例设计模式、Enum类、枚举的实际应用)

    以上代码,JDK1.5前编写OK,但是很麻烦,getInstance方法没什么意义,且内部中实例化对象的个数未知。因此,JDK1.5开始提供了enum关键字,其...

    Winter_world
  • 菜鸟手册9:Jetson gstreamer视频编码和解码

    还记得之前建议大家在NVIDIA Jetson产品上安装一个小工具么?答应我,NVIDIA Jetson这个小工具一定要装上!

    GPUS Lady

扫码关注云+社区

领取腾讯云代金券