FPGA之HDMI原理详情

        前面 https://blog.csdn.net/qq_51264805/article/details/122419836 我们对 HDMI 进行了简单介绍,下面我们对其原理进行说明。

        HDMI 系统架构由信源端和接收端组成。某个设备可能有一个或多个 HDMI 输入,一个或多个 HDMI 输出。这些设备上,每个 HDMI 输入都应该遵循 HDMI 接收端规则, 每个 HDMI 输出都应该遵循 HDMI 信源端规则。
        HDMI 线缆和连接器提供四个差分线对,组成 TMDS 数据和时钟通道,这些通道用于传递视频,音频和辅助数据;另外, HDMI 提供一个 VESA DDC 通道,DDC 是用于配置和在一个单独的信源端和一个单独的接收端交换状态;可选择的 CEC 在用户的各种不同的音视频产品中,提供高水平的控制功能;可选择的 HDMI 以太网和音频返回(HEAC), 在连接的设备中提供以太网兼容的网络数据和一个和 TMDS 相对方向的音频回返通道;此外还有热插拔检测信号 HDP ,当显示器等 HDMI 接口的显示设备通过 HDMI 接口与 HDMI 信源端相连或断开连接时, HDMI 信源端能够通过 HPD 引脚检测出这一事件,并做出响应。
FPGA之HDMI原理详情_第1张图片
图1 HDMI数据传输框图
        HDMI 采用和 DVI 相同的传输原理 —— TMDS Transition Minimized Differential signal),即最小化传输差分信号。
        HDMI 中的 TMDS 传输系统分为两个部分:发送端和接收端。 TMDS 发送端收到 HDMI 接口传来的表示 RGB 信号的 24 位并行数据( TMDS 对每个像素的 RGB 三原色分别按 8bit 编码,即 R 信号有 8 位,G 信号有 8 位,B 信号有 8 位),然后对这些数据和时钟信号进行编码和并/串转换,再将表示 3 个 RGB 信号的数据和时钟信号分别分配到独立的传输通道发送出去。接收端接收来自发送端的串行信号,对其进行解码和串/并转换,然后发送到显示器的控制端。与此同时也接收时钟信号,以实现同步。流程框图如下所示:
FPGA之HDMI原理详情_第2张图片
图2 TMDS 信道连接图
        TMDS 通道包括 3 个 RGB 数据传输通道和 1 个时钟信号传输通道。每一通道都通过编码算法,将 8 位的视频、音频数据转换成最小化传输、直流平衡的 10 位数据,8 位数据经过编码和直流平衡得到 10 位最小化数据,看似增加了冗余位,对传输链路的带宽要求会更高,但事实上,通过这种算法得到的 10 位数据在更长的同轴电缆中传输的可靠性增强了。最小化传输差分信号是通过异或及异或非等逻辑算法将原始 8 位数据转换成 10 位数据,前8 位数据由原始信号经逻辑运算后逻辑得到,第 9 位指示运算的方式,第 10 位用来对应直流平衡。
        要实现 TMDS 通道传输,首先要将传入的 8 位的并行数据进行编码、并 / 串转换,添加第 9 位编码位。
FPGA之HDMI原理详情_第3张图片

图3 添加编码位 

         将 8 位并行数据发送到 TMDS 接收端;将接收到的 8 位数据并/串转换;随后进行最小化传输处理,加上第 9 位,即编码过程。

        添加编码位的数据需要进行直流均衡处理。直流平衡(DC-balanced )就是指在编码过程中保证信道中直流偏移为零,使信道中传输数据包含的 1 0 的个数相同。方法是在添加编码位的 9  位数据的后面加上第 10 位数据,保证 10 位数据中 1 0 个数相同。这样,传输的数据趋于直流平衡,使信号对传输线的电磁干扰减少,提高信号传输的可靠性。

        直流均衡处理后的 10 位数据需要进行单端转差分处理。TMDS 差分传动技术是一种利用 2 个引脚间电压差来传送信号的技术。传输数据的数值(“0”或者“1”)由两脚间电压正负极性和大小决定。即采用 2 根线来传输信号,一根线上传输原来的信号,另一根线上传输与原来信号相反的信号。这样接收端就可以通过让一根线上的信号减去另一根线上的信号的方式来屏蔽电磁干扰,从而得到正确的信号。原理图如下图所示:

FPGA之HDMI原理详情_第4张图片

图4 TMDS差分信号

        经过上述处理,我们得到了可以进行 TMDS 通道传输的差分信号,使用这种方法对 24 位图像数据(8 R 信号、 8 G 信号、 8 B 信号)和时钟信号进行处理,将 4 对差分信号通过 HDMI 接口发到接收设备,接收设备通过解码等一系列操作,实现图像后音频再现。
        接下来我会进行相关代码的编写,大家稍后就能见到。

 

你可能感兴趣的:(FPGA,fpga开发)