HDMI

基于FPGA的HDMI高清显示接口驱动

作者:NingHeChuan(宁河川)

HDMI是(High Definition Multimedia Interface)的缩写,意思是高清晰度多媒体接口,是一种数字化视频/音频接口技术,适合影像传输的专用型数字化接口,可同时传送音频和影像信号,最高数据传输速度为48Gbps(2.1版),HDMI相较于VGA接口,它传输的信息量大,色彩度高,传输速度快等显著优点。

  一般来说驱动HDMI有两种方法,有些开发板是用一颗专用的HDMI芯片ADV7511做HDMI的输出使用,ADV7511 是一款高速高清晰度多媒体接口(High Definition Multimedia Interface HDMI)发送器。 能够处理的数据速率高达165MHz(1080p @60H, UXGA @60Hz), 输出数据速率高达 225MHz。

Digilent官方出品的ZYBO开发板,上面一个双向的HDMI端口,直接连接在PL的引脚上,所以这次博主分享的工程是用ZYBO PL端的IO口模拟HDMI接口,首先先来讲一下HDMI的显示原理主要是TMDS,该部分摘自博客:http://blog.sina.com.cn/s/blog_679686370100vgg1.html

ZYNQ基础系列(二) IO口模拟HDMI

IO口直接驱动HDMI接口
HDMI主要用于给高清显示设备传输视频和音频数据,除了使用专门的HMDI芯片外,当然还可以用ZYNQ的PL部分产生相应的时序,本文就是用FPGA的IO口与HDMI显示设备直接进行通信。

本文的工程rgb2dvi的IP核都上传到了这里

一、原理图
本文采用的是米联客的Mi701开发板,可以看到IO口是直接连到接口上的,只加了一些简单的上拉增加一下驱动能力,IIC也是经过了5V的电平转换,HDMI的5V供电由使能引脚控制。

FPGA上实现HDMI(1)

HDMI是一个数字视频接口,通过FPGA可以很快的实现驱动。下面可以看到HDMI是怎么工作的.

connector

标准的HDMI连接器称为"A型",有19个引脚,其中8个引脚是需要注意的,组成了四个差分对TMDS(Transition Min imized Differential Signaling)[过度调制差分信号]。

1. TMDS data2+ and data2-

2. TMDS data1+ and data1-

3. TMDS data0+ and data0-

4. TMDS clock+ and clock-

我们链接HDMI和FPGA很简单,只要使用其中的4对差分信号就可以了。

基于Zynq的HDMI视频解码方式和相关IP核介绍

在图像处理应用开发中,捕获或显示图像的最简单方法之一是使用HDMI(高清晰度多媒体接口)。HDMI是一种可以传输高清数字视频和音频数据的专有标准,被许多显示器和相机支持并广泛采用。这个特点使得HDMI成为Zynq图像处理应用的理想接口标准。

在这篇文章中,我们将向大家介绍如何在不同目标开发板上使用基于Zynq的HDMI传输。

图:Arty Z7 HDMI输入输出案例

图:Arty Z7 HDMI输入输出案例

Zynq学习笔记——一个简单的HDMI显示例子

本文介绍一个简单的HDMI显示例子:

硬件工程

效果


Zynq的HDMI接口设计

HDMI设计:高清晰度多媒体接口是一种数字化视频/音频接口技术,最高数据传输速度为5Gbps(目前到10Gbps)。

1、 HDMI传输原理
HDMI系统的架构由信源(source)和信宿(sink)组成。一个设备上可以有多个HDMO接口,但是每个接口都要遵循HDMI信源和信宿的结构。其接口架构图如下:

HDMI接口包括3个TMDS数据信道和1个TMDS时钟信道。

TMDS差分传输技术是利用两个引脚间电压差来传送信号的技术。

DDC通道:信源通过它来读取信宿的E-EDID,目的是了解信宿的当前配置和能力。

作者:清风流云

Amiga处理器是摩托罗拉的680x0系列处理器,它为高分辨率,快速图形响应,多媒体任务,特别是游戏方面做了专门的设计。是第一代具有真彩显示的计算机之一。自1985年Commodore Business Machines收购了Amiga并将Amiga引入到市场之后,Amiga就成为了高分辨率,快速用户响应接口,以及适合游戏的计算机的同义词。

而HDMI(High Definition Multimedia Interface)高清晰度多媒体接口,是LLC于2010年3月4日发布的多媒体接口标准,是一种数字化视频/音频接口技术,是适合影像传输的专用型数字化接口,其可同时传输音频和影像信号,最高数据传输速度为4.5G/s。

Amiga和HDMI?
现在Lukas F Hartmann是时间的主宰,因为他具有一种特异功能:他可以使得1280x720像数的HDMI兼容Amiga的所有PC,到如今Amiga的标准已经有30年的历史,比HDMI标准出现早整整20年,在Amiga最初出现的是,它的时序在视频显示上具有开创性的意义,不过它的视频显示像数仅640x256,支持64色素。

Xilinx的HDMI的IPCORE输出调试成功

首先要把 主要的架构图看明白, hdmi_tx_ss模块,是需要改动的。主要能够保证进入到 hdmi_tx_0模块的数据是,标准的 行场信号就行。

需要3个信号分量, video_vs, video_de, video_data[143: 0]就行。

只要把 16位的数据,转为 32位的数据位宽传出去。多余的部分补0, 最后合成 144位的数据位宽。

这样 1920 x 1080 x16 位的视频信号 就会 转为 960 x 1080 x 144 位的视频信号。

最后就可以 正常显示了。

Xilinx的HDMI输出的IP CORE调试

xilinx 最近 新出的HDMI模块参考代码。虽然还没有完整形成标准的 IP core.所以调试起来有些难度。

先把 MicroBlaze代码改一下,把它改为了 hdmi1.4,把音频部分去掉。

然后用内部产生的测试模块,用1920 x 1080 @60hz.外部参考时钟 148.5M.这样把HDMI 模块接到输出。就可以产生

这样算是完成了一半。

下面要做的事情,是把HDMI进行封装,使 标准的行场信号可以正常输入进去,并且显示出来。

文章转载自:Bob的专栏

带摄像机接口的HDMI输入输出FMC模块

FMC-HDMI-CAM FMC 模块可为支持 Xilinx FMC 功能的基线板提供高清视频接口。 HDMI 视频源可向该模块提供视频内容。该模块还提供一个显示 FPGA 导向型视频内容的 HDMI 输出。此外,FMC 模块还提供一个用于可选摄像机模块的摄像机接口。

同步内容