目录

术语

物理结构

HDMI框图

HDMI传输

TMDS信号

HDMI连接架构

HDMI传输模式


HDMI全称(High Definition Multimedia Interface)高清多媒体接口,支持在单线缆上传输全数字高清视频和多声道音频。

HDMI基于TMDS协议传输,主要用于DVD, 机顶盒等音视频source到TV,显示器等sink设备的传输。HDMI向下兼容 DVI,但是 DVI(数字视频接口)只能用来传输视频,而不能同时传输音频,这是两者最主要的差别。

术语

HDMI:High Definition Multimedia Interface高清多媒体接口,传输音视频。

HDCP:High-bandwidth Digital Content Protection 版权保护相关的,通过IIC获取。

EDID:Extended Display Identification Data 扩展显示标识数据,包含有关显示器及其性能的参数,包括供应商信息、最大图像大小、颜色设置、厂商预设置、频率范围的限制以及显示器名和序列号的字符串等。

DDC:Display Data Channel 显示数据通道,其实就是IIC通道,用来获取EDID、HDCP密钥等内容。

HDP:Hot Plug Detect热插拔检测。

CEC:Consumer Electronics Control 用户电气控制,CEC可以控制从设备的一些状态,即遥控器功能。

TMDS:Transition Minimized Differential Signaling最小化传输差分信号,一种差分传输技术

HEAC:HDMI Ethernet and Audio Return Channel 以太网和音频返回,HEAC需要额外的phy才能支持。

Source:A device with an HDMI output

Sink:A device with an HDMI input

CTS:Compliance Test Specification

物理结构

HDMI有A、B、C、D、E五种引脚类型,目前常用的是Type A:

1-9是TMDS data传输用到的引脚,共有三组;

10-12是TMDS clock传输用到的引脚,共有一组;

13是CEC引脚,一种消费电子兼容的传输协议,用作遥控的;

14是保留引脚;

15,16是DDC的引脚,DDC是基于I2C协议传输,故引脚为SCL和SDA;

17是接地;

18是+5V power;

19是HPD引脚,用于热插拔检测。

HDMI框图

HDMI 系统架构由Source端和Sink端组成:Source是指发送HDMI信号的一侧,Sink是指接收HDMI信号的一侧。

HDMI信号四路差分信号组成,包括三路TMDS Data信号和一路TMDS Clock信号。TMDS信号不仅仅用于传输video信号,还传输audio和辅助信息。

HDMI 提供一个 DDC 通道用于在source端和sink端交换状态。

HDP用于热插拔检测,CEC是用户电气控制,一般用作遥控,HEAC以太网和音频返回。CEC和HEAC是HDMI可选协议。

小结:

  • 要想传输音视频,只需要TMDS信号即可;
  • 要想使用遥控器,需要CEC;
  • 要想做到分辨率自适应屏幕,需要DDC;
  • 要支持热插拔,需要实现HPD

HDMI传输

TMDS信号

TMDS 传输系统分为两个部分:发送端source和接收端sink。TMDS 链路包括 3 个传输数据的通道和1个传输时钟信号的通道。

发送端对这些数据进行编码和并/串转换,再将数据分别分配到独立的传输通道发送出去。

接收端接收来自发送端的串行信号,对其进行解码和串/并转换,然后发送到显示器的控制端。

TMDS不仅仅是对video进行编码,还包括audio和控制信号:

  • 对于video周期采用的是video data encoding,将8bits数据转换成10bits数据
  • 对于control周期采用的是CTL encoding,将2bits数据转换成10bits数据
  • 对于DataIsland周期采用的是TERC4 encoding,将4bits数据转换成10bits数据

小结:

  • source端编码,数据加串
  • sink端解码,数据解串

HDMI连接架构

HDMI传输由三组TMDS通道和一组TMDS clock通道组成,TMDS clock的运行频率是video信号的pixel频率,在每个TMDS 时钟通道周期,每个TMDS data通道都发送10bit数据。

channel0传输B数据和HSync、VSync
channel1传输G数据和CTL0、CTL1
channel2传输R数据和CTL2、CTL3

HDMI传输模式

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

Control Period控制周期:主要用于控制接下来传输的是data island还是video data

Data Island Period数据岛周期:各种类型的包信息,包括音频数据包、辅助数据包、图像信息包等

Video Data Period视频数据周期:视频像素数据,HDMI可以传输RGB和YUV两种格式的像素数据

1、左边是Control period:传输有Hsync、Vsync与Preamble。占用1、2两个通道共4bit输入;channel 0传输HSYNC, VSYNC, channel1[1:0]和channel2[1:0] 传输Preamble,用来判断接下来输入的是Video Data还是Data Island。

2、中间是Data Island period:传输有Hsync、Vsync,以及两个Packet Header与Packet,占用三通道共12bit输入,Channel0[3:2]用于传输Data Island Header(包头),Channel1[3:0]与Channel2[3:0]用于传输Data Island Content(包内数据)

3、右边是Video Data period :视频信号经过编码生成三路TMDS数据通道,共24位视频流数据,输入到HDMI Tx中。24位像素的视频信号通过TMDS通道传输,将每通道8位信号转换为10位,在每个10位像素周期传送一个最小化的信号序列,视频信号将被调制为TMDS信号传送出去。

Control Period(preamble)

在数据岛或者视频数据传输周期之前,每一个TMDS通道包含2bit的控制数据,一共6位控制数据。

TMDS Channel D0 D1
0 HSYNC VSYNC
1 CTL0 CTL1
2 CTL2 CTL3

每个TMDS通道使用了D1:D0共2bit,采用2bit到10bit的编码方式。在每个控制周期的最后阶段,CTL0、CTL1、CTL2、CTL3组成的文件头说明下一个周期是视频数据还是数据岛。

CTL0 CTL1 CTL2 CTL3 数据周期类型
1 0 0 0 video data
1 0 1 0 data island

Video Data Period

视频数据周期用来传输视频线的像素,每个视频数据周期以报文头为前导,在报文头之后,视频数据周期以两个字符开始,做为视频前导保护边界对于数据周期,没有末尾保护边界。

Data Island Period

数据岛用来携带音频辅助数据的报文。辅助数据包括Info frame和其他用于音视频信息描述的数据。每个数据岛以2个字符长度的前导保护边界开始,并以2个字符宽度的末尾保护边界结束。

TMDS Channel BitN 传输内容
Channel0 Bit0 HSync
Bit1 VSync
Bit2 packet header
Channel1 Bit3:0 packet
Channel2 Bit3:0 packet

小结:

  • audio是在dataisland周期发送的
  • video是在video周期发送的

HDMI协议介绍(一)--Overview相关推荐

  1. HDMI协议介绍(四)--Video

    目录 视频格式 RGB444 YUV444 YUV422 YUV420 Color Depth Video控制信号 Pixel Repetition HDMI支持多种视频格式和分辨率.以hdmi1.4 ...

  2. HDMI协议介绍(六)--EDID

    目录 什么是EDID EDID结构 1)Header Information 头信息(厂商信息.EDID 版本等) (2)Basic Display Parameters and Features 基 ...

  3. 标定协议之XCP标定协议介绍

    作者 | WenDao_Engineer 微信公众号 | 闻道工程师之家 在<标定协议基础知识介绍>一文中我们介绍了常用的标定协议有CCP和XCP两种,在前面CCP标定协议系列文章对CCP ...

  4. 常用开源协议介绍以及开源软件规范列表

    1. 开源协议介绍 GPL: General Public License,开源项目最常用的许可证,衍生代码的分发需开源并且也要遵守此协议.该协议也有很多变种,不同变种要求会略微不同. MPL: MP ...

  5. open source license主流的开源软件协议介绍

    open source license主流的开源软件协议介绍(20190222) 文章目录: 一.开源软件的直观介绍 二.常用开源协议介绍 三.常用开源协议之间的对比 当Adobe.Microsoft ...

  6. SNMP协议介绍和操作截图

    第一章 SNMP协议介绍 SNMP协议 基于TCP/IP的网络管理包含3个组成部分: 1) 一个管理信息库MIB(Management Information Base).管理信息库包含所有代理进程的 ...

  7. VRRP协议介绍--转

    http://www.cnblogs.com/jony413/articles/2697404.html VRRP协议介绍 参考资料: RFC 3768 1. 前言 VRRP(Virtual Rout ...

  8. Python教程之udp和tcp协议介绍

    UDP介绍 UDP - 用户数据报协议,是一个无连接的简单的面向数据报的运输层协议.UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地.由于UDP在传输数据 ...

  9. (4)ZYNQ AXI4总线协议介绍

    1.1 ZYNQ AXI4总线协议介绍 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)ZYNQ AXI4总线协议介绍: 5)结束语. 1.1.2 本节引言 " ...

最新文章

  1. java反射机制知识_Java反射机制讲解,程序员必须掌握的知识点
  2. 简述osi参考模型各层主要功能_计软考研双日练 | OSI参考模型各层提供什么服务?...
  3. 冷链食品竟然也有 “身份证”?
  4. Booster 系列之——多线程优化
  5. 专题导读:大数据整理
  6. Oracle/PLSQL CURSOR FOR Loop
  7. 关于排版与交互的问题
  8. iOS15绕过激活锁工具TiggerRamDisk3.6,支持最新iOS15.5绕过
  9. 马蜂窝火车票系统服务化改造初探
  10. 动画设计基础(三点一节)-3d max2014 裙摆(飘带插件)
  11. python算法题_Python算法练习题:硬币数量
  12. 盘点互联网大厂的元宇宙布局
  13. python表示差值_Python-dataframe的对应列求差值
  14. 作业成本法中的成本动因分析----by AMT 邓为民
  15. python关于 unittest的常见用法:前置条件与后置条件
  16. 删除微软office正版验证补丁
  17. 【Java】从Java代码到网络编程,三次握手又该如何理解
  18. 手机裂脑纪:中国式审美还有救吗?
  19. 积分会员卡收银系统源码 支持多门店+分销 含详细搭建教程
  20. Cleave js 使用

热门文章

  1. PLC控制系统的接地设计
  2. HTML基础知识整理
  3. 动力节点郭鑫Spring Boot入门学习笔记,收藏起来慢慢看
  4. cad相对坐标快捷键_Auto CAD中常用的快捷键(1)
  5. Android:线性布局介绍,线性布局weight属性,线性布局微调参数gravity,线性布局divider
  6. 【论文发表】认识SCI、EI、ISTP、IEEE等和算法论文
  7. 怎么搜索到最新最全的热点新闻资讯呢?有这四个工具就够了
  8. 单项选择器radio-group
  9. 关于onKeyDown方法
  10. 侯捷C++八部曲笔记(四、C++2.0新特性)