HDMI协议解析 |
您所在的位置:网站首页 › hdmi握手流程 › HDMI协议解析 |
转载请标明出处floater的csdn blog,http://blog.csdn.net/flaoter 本文从软件工程师角度对HDMI spec进行解析,基于的spec版本为1.4,也是设备支持最多最成熟的版本,目前最新版本为2.0。 1 概述HDMI(High-Definition Multiface Interface)是Hitachi, Panasonic, Philips, SiliconImage, Sony, Thomson, Toshiba几家公司共同发布的一款音视频传输协议,主要用于DVD, 机顶盒等音视频source到TV,显示器等sink设备的传输。传输基于的是TMDS(Transition Minimized Differential Signaling)协议。此外,使用TMDS也是DVI标准的主要特点 。 2 物理结构
HDMI传输由三组TMDS通道和一组TMDS clock通道组成,TMDS clock的运行频率是video信号的pixel频率,在每个cycle,每个TMDS data通道发送10bit数据。
video data period以2个字符(pixel)长度的leading gurad band开始,guard band如下: ch0: q_out[9:0] = 0b1011001100 ch1: q_out[9:0] = 0b0100110011 ch2: q_out[9:0] = 0b1011001100 Data Island Perioddata island period传输audio数据和辅助数据,辅助数据包括Infoframe和其他用于音视频信息描述的数据。data island period以2个字符长度的leading guard band开始,并以2个字符宽度的trailing guard band 结束。guard band如下: ch0: q_out[9:0] = n.a ch1: q_out[9:0] = 0b0100110011 ch2: q_out[9:0] = 0b0100110011 data island传输的packet类型和格式详见spec说明。 三个传输阶段的过渡过程如下图所示: 支持三种pixel encoding:RGB4:4:4, YCbCr4:4:4, YCbCr4:2:2 video format除了CEA-861-D中格式外,还会支持一些较特殊的格式 color depth可支持一个像素24, 30, 36和48bits 下面分别是24bit/pixel的RGB444, YCbCr422, YCbCr444的pixel encoding示意图。RGB444每个颜色占8bit, YCbCr422中Y占12bit,C占12bit,YCbCr444中Y,Cb,Cr都占用8bit。 Deep Color模式 Pixel Packing 24 bit mode: 1 pixel/group, 1 fragment/group 30 bit mode: 4 pixel/group, 5 fragment/group 36 bit mode: 2 pixel/group, 3 fragment/group 48 bit mode: 1 pixel/group, 2 fragment/group 1fragment/TMDS clock, 如30bit下的4pixel,需要5次传输完成,每次1个fragment。 Audio数据以Audio Sample Packet或High Bitrate Audio Stream Packet的形式传输,但是HDMI没有传输audio clock,因此sink设备需要进行audio clock regeneration。原理如下: Infoframe以Infoframe packet的形式传输,它的大小不超过30字节加上一个checksum字节。具体infoframe的格式及内容需要查看spec。 AVI(Auxiliary Video Information) Infoframe Audio Infoframe HDMI Vendor Specific Infoframe, 传输4kx2k或3D格式时需要发送此packet EDID & DDCsink设备在ROM中存放EDID信息,source在收到HPD后会通过DDC通道读取EDID得到显示设备的属性。EDID包含两部分,前128字节符合EDID1.3数据结构,128字节的扩展EDID,符合CEA extension verison3。CEA extension verison3如下图所示。 source会监测HPD pin的状态,当source和sink连接后,如果HPD为高电平,说明sink设备正常可以工作,source可通过DDC读取EDID,如果为低电平,说明sink已断开。 sink可通过拉低HPD超过100ms来向source表明EDID发生了变化,此时source会重新读取EDID。 HDCP涉及内容较多,会在单独章节中讲解。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |