TMDS协议

1 概述

1.1    连接结构

图1 TMDS连接结构

数据流中包含了像素和控制数据,发送器在任何给定的输入时钟周期,到底是编码像素数据还是控制数据取决于数据使能信号DE,DE有效时,指示像素数 据要被发送,注意,当发送像素数据的时候,忽略控制数据,反之,发送控制数据的时候,忽略像素数据。在接收端,恢复的像素(控制)数据仅在DE有效(无 效)时才传输。

我们把DE有效期间,成为像素数据有效期间,就是说这段时间发送的是有效像素数据。DE无效期间,成为发送空间隙期间,这段时间发送的数据不包括有效像素数据,仅仅是控制信号。

发送端有3个一模一样的编码器,每个编码器的输入是2个控制信号和8bit的像素数据。依照DE的状态,编码器将按照两个控制信号的状态或8bit像素数据产生10bit的TMDS字符。每个解码器输出是一个连续的串行TMDS字符流。

1.2    时钟

TMDS时钟通道的时钟频率就是字符速率,接收器利用这个时钟,产生用于串行流接收的位采样时钟,由于要求能容忍信号畸变,所以期望每个数据通道的位采样时钟的相位能够单独调整。

1.3    同步

TMDS接收器必须能在串行数据流中确定字符边界。一旦所有的数据通道字符边界被建立,我们就说,此时接收器与数据流同步并可以从数据通道中接收TMDS字符加以译码。TMDS数据流提供周期性的提示用于解码同步。

用来作为像素数据的TMDS字符包含5个或更少的跳变,而用来作为控制数据的TMDS字符包含7个或更多的跳变。在空期间传送的多跳变内容形成解码 端的字符边界的基础,这些字符在串行数据流中个体不是独一无二,但它们足够相似,使得,在发送空间隙期间,解码器它们可以唯一地检测出它们连续的存在。

1.4    编码

TMDS数据通道传送的是一个连续的10bit TMDS字符流,在空期间,传送4个有显著特征的字符,它们直接对应编码器的2个控制信号的4个可能的状态。在数据有效期间,10bit的字符包含 8bit的像素数据,编码的字符提供近似的DC平衡,并最少化数据流的跳变次数,对有效像素数据的编码处理可以认为有两个阶段:第一个阶段是依据输入的 8bit像素数据产生跳变最少的9bit代码字;第二阶段是产生一个10bit的代码字,最终的TMDS字符,将维持发送字符总体的DC平衡。

编码器在第一个阶段产生的9bit代码字由“8bit” + “1bit”组成,“8bit”反映输入的8bit数据位的跳变,“1bit”表示用来描述跳变的两个方法中哪一个被使用,无论哪种方法,输出的最低位都 会与输入的最低位相匹配。用一个建立的初值,输出字的余下7bit的产生是按照顺序将输入的每一位与前一导出的位进行XOR或NOR(XNOR)。使用 XOR还是XNOR要看哪个方法使得编码结果包含最少的跳变,代码字的第9位用来表示导出输出代码是使用XOR还是XNOR,这9bit代码字的解码方法 很简单,就是相邻位的XOR或XNOR操作。从解码输入到解码器输出最低位不改变。

在有效数据期间,编码器执行使传输的数据流维持近似的DC平衡处理,这是通过选择性地反转第一阶段产生的9bit代码中的8bit数据位来实现的, 第10bit被加到代码字上,表示是否进行了反转处理,编码器是基于跟踪发送流中1和0个数的不一致以及当前代码字1和0的数目来确定什么时候反转下一个 TMDS字符。如果太多的1被发送,且输入包含的1多于0,则代码字反转,这个发送端的动态编码决定在接收端可以很简单地解码出来,方法是以TMDS字符 的第10bit决定是否对输入代码进行反转。

1.5    双连接结构

TMDS连接结构的数据通道数目的选择主要基于下面两点考虑:一是视频数据要求的带宽,二是对每个像素的R、G、B分量,每个分量对应于一个通道, 从而使得逻辑简单。在这里双TMDS链路等同于使用6个数据通道共享一个时钟通道,这样使得接口带宽加倍。对于这个配置,第一个数据链路传输奇数像素点, 而第二个数据链路传输偶数像素点。每一行的第一个像素是奇数像素,即为像素1。

2 编码

2.1 通道映射

单链路TMDS发送器由三个相同的编码器组成,如图2,2个控制信号和8bit像素数据映射到每个编码器,双链路发送器增加了三个数据通道,如图3,双链路配置在第一个链路上发送每行的奇像素,在第二个链路上发送每行的偶像素,每一行的第一个像素是奇数像素,即为像素1。

图2 单链路TMDS通道映射

除了行同步HS和场同步VS外,其它控制信号的作用并没有定义,在发送器的输入端,控制信号CTL1、CLT2、CTL3必须保持逻辑低电平,推荐 CTL0也保持逻辑低电平,由于历史原因,某些发送器芯片可以通过CTL0传递一个控制信号,如果这么做,仅需要满足一个条件:这个信号发生在单像素输入 时钟的奇边缘或偶边缘。当链路有效的时候,在奇偶之间一定不要来回切换。

图3 双链路TMDS通道映射

2.2 编码算法

TMDS编码算法,如图5所示,在空间隙,编码器产生4个独一无二的字符,以及在有效的数据期间,产生460个独一无二的10bit字符中的一个,在链路上,除此以外的其它10bit字符是保留的,编码器不会产生这些字符。


D, C0, C1, DE


编码器输入数据集。D是8bit像素数据,C1和C0是通道的控制数据,DE是数据使能。


Cnt


这是个寄存器,用来跟踪数据流的不一致,正值表示发送的1的个数超过的数目,负数表示发送的0的个数超过的数目。表达式cnt{t-1}表示相对于输入数据前一个集的前一个不一致值。表达式cnt{t}表示相对于输入数据当前集的新的不一致设置。


q_out


这些10bit数是编码器产生的。


N1{x}


这个操作符返回参数x中的1的个数


N0{x}


这个操作符返回参数x中的0的个数

图5 TMDS编码算法

2.3 串行化

由编码器形成的TMDS字符流转换为串行数据,用于在TMDS数据通道上发送,低位在前先发送。

3 解码

3.1 时钟恢复

TMDS接收器必须有能力相位锁定与发送时钟,发送时钟的时钟频率范围是25MHz到接收器的最大允许频率,对输入时钟的相位锁定必须发生在从输入时钟满足规定起100ms之前。

3.2 数据同步

接收器要求在任何大于128字符长度的空间隙期间,建立与数据流的同步。

在同步检测之前,和在丢失同步期间,接收器不应该更新接收到的数据流信号。

3.3 解码算法

图6 TMDS解码算法

3.4 通道映射

如图2和图3

3.5 错误处理

TMDS链路不要求错误处理能力。

4 链路定时要求

图7 TMDS链路定时


符号


描述



单位


tB


最小空间隙,为了在接收端确保字符边界的恢复,要求有这个最短的空间隙,空间隙至少每50mS(20Hz)出现一次。


128


Tpixel


tE


最大编码/并转串电路管线延迟


64


Tpixel


tR


最大恢复/串转并电路管线延迟,恢复定时包括通道间的抖动,从在数据通道间最早的DE跳变开始测量,


64


Tpixel

 
时间: 2024-08-05 22:04:24

TMDS协议的相关文章

LVDS/DVI/HDMI Interface

数字视频信号 以SXGA为例,其时序如下: 垂直:         水平: 图中DSPTMG为使能信号,VSYNC为场同步信号,HSYNC为行同步信号.在行场的消隐期(T1与T7),DSPTMG为低电平,在此期间无有效视频数据. 注意一个重要参数:对于这个时序的SXGA点频是108MHz 1066×1688×60=107.964480MHz 1 Open LVDS Display Interface(OpenLDI) LVDS,即Low Voltage Differential Signalin

HDMI接口与协议

深入了解HDMI接口 一.HDMI接口的工作原理这张图是HDMI接口的架构示意图.从左边的信号源中你可以看到,HDMI接口的信源可以是任何支持HDMI输出的设备,而接入端也可以是任何带有HDMI输 入接口的设备.无论他们是音频设备.视频设备还是控制设备,HDMI接口都可以应用其中.在HDMI接口中的数据信号采用的是TMDS最小化传输差分信号协议.这种数据传输协议曾经在DVI接口上得到广泛的应用.而HDMI接口上的数据信号也 沿用了这种协议.这种协议会将标准8bit数据转换为10bit信号,并且在

Cisco-HSRP 热备份路由器协议-配置实例

同样的,首先做一些理论的扫盲.最起码要知道自己在配什么东西才行. 简介 HSRP(Hot StandbyRouter Protocol 热备份路由器协议)是Cisco的专有协议.HSRP把多台路由器组成一个"热备份组",形成一个虚拟路由器.这个组内只有一个路由器是Active(活动)的,并由它来转发数据包,如果活动路由器发生了故障,备份路由器将成为活动路由器.从网络内的主机来看,网关并没有改变. HSRP的工作过程 HSRP路由器利用Hello包来互相监听各自的存在.当路由器长时间没有

WAF——针对Web应用发起的攻击,包括但不限于以下攻击类型:SQL注入、XSS跨站、Webshell上传、命令注入、非法HTTP协议请求、非授权文件访问等

核心概念 WAF Web应用防火墙(Web Application Firewall),简称WAF. Web攻击 针对Web应用发起的攻击,包括但不限于以下攻击类型:SQL注入.XSS跨站.Webshell上传.命令注入.非法HTTP协议请求.非授权文件访问等.

iOS---代理与协议以及通知的使用

一.代理 1.代理的介绍 代理是一种通用的设计模式 代理使用方式:A 让 B 做件事,空口无凭,签个协议. 所以代理有三部分组成: 委托方: 定义协议 协议   : 用来规定代理方可以做什么,必须做什么 代理方: 按照协议完成委托方的需求 2. 协议的介绍 协议是定义了一套公用的接口,是方法的列表,但是无法实现. 可以通过代理,实现协议中的方法. 协议是公用方法,一般写在一个类里面. 如果多个类都使用这个协议,可以写成一个peotocol文件. 3.代理的使用 (1)委托某人做某事   先建立一

如何生成HLS协议的M3U8文件

什么是HLS协议: HLS(Http Live Streaming)是由Apple公司定义的用于实时流传输的协议,HLS基于HTTP协议实现,传输内容包括两部分,一是M3U8描述文件,二是TS媒体文件. HLS协议应用: 由于传输层协议只需要标准的 HTTP 协议, HLS 可以方便的透过防火墙或者代理服务器, 而且可以很方便的利用CDN进行分发加速, 这样就可以很方便的解决大规模应用的瓶颈.并且客户端实现起来也容易. HLS 目前广泛地应用于点播和直播领域,HLS协议是将音视频流通过HTTP协

新Krypt技术服务等级协议

各位用户您好, 自2017年3月20日起,Krypt将对所有独立服务器(Outlet以及R2O除外)的新订单实施新的技术服务等级协议.这项全新的改革,将直接影响到您购买每台独立服务器的成本以及后台技术工单的响应速度.请您仔细阅读下文: 全新的Krypt技术服务等级协议(SLA's)将分为基础级别Basic, 精品级别Essential, 增强级别Plus以及专业级别Pro四个不同的等级,所有已经购买的独立服务器套餐将自动被划分为Legacy等级. Krypt独立服务器与云服务器的基础SLA包括可

Http协议头

######### #概览 ######### 超文本传输协议(Http: Hyper Text Transfer Protocol) :用于发送WWW方式的数据.采用TCP/IP协议,是一个无状态协议.采用了请求/响应模型. ######### #Http请求 Request ######### 客户端向服务器发送一个请求,看图: HTTp请求包括: 1) 请求方法.URI(uniform Resource identity 统一资源标识符question/23133/. URL:统一资源定位

网络基础协议之http协议

作为一个开发人员,掌握必要的 HTTP 协议十分重要,下面就通过本文记录自己对 HTTP 协议的理解.本文很长,希望你有耐心看完,会有很多收获的,面试的时候很受用. 首先让我们从一个问题入手,当我们在浏览器中输入  http://www.baidu.com/ 访问百度的时候浏览器做了哪些事情.(这里以 Chrome 浏览器为例) 首先 Chrome 搜索自身的 DNS 缓存.(如果 DNS 缓存中找到百度的 IP 地址,就跳过了接下来查找 IP 地址步骤,直接访问该 IP 地址.) 搜索操作系统