你的位置:EETOP 赛灵思(Xilinx) 社区 >> >> 全部 >> 详细内容

一种基于FPGA控制全彩大屏幕显示的设计

发布者:jackzhang 时间:2010-08-03 21:22:00

随着数字技术的飞速发展,各种数字显示屏也随即涌现出来有LED、LCD、DLP等,各种数字大屏幕的控制系统多种多样,有用ARM+FPGA脱机控制系统,也有用PC+DVI接口****芯片+FPGA芯片联机控制系统,在这里我们讲述一种不仅可以用于控制全彩LED大屏幕的显示,而且还可以作为发送端输出高清图像数据。采用的联机控制系统对全彩LED大屏幕进行控制。即PC+DVI接口****芯片+FPGA芯片+输出接口模式的联机控制系统。

DVI接口概述


DVI全称为Digital Visual Interface,它是基于TMDS(Transition Minimized DifferentialSignaling,最小化传输差分信号)电子协议作为基本电气连接。TMDS是一种微分信号机制,可以将像素数据编码,并通过串行连接传递。显卡产生的数字信号由发送器按照TMDS协议编码后通过TMDS通道发送给接收器,经过****送给数字显示设备。


目前的DVI接口分为两种,一个是DVI-D接口,只能接收数字信号,接口上只有3排8列共24个针脚,其中右上角的一个针脚为空,不兼容模拟信号。


另外一种则是DVI-I接口,可同时兼容模拟和数字信号。兼容模拟幸好并不意味着模拟信号的D-Sub接口可以连接在DVI-I接口上,而是必须通过一个转换接头才能使用,一般采用这种接口的显卡都会带有相关的转换接头。


本文叙述中用到的接口是DVI-D全数据接口。


FPGA控制全彩LED大屏幕系统原理


1 DVI****芯片控制原理


图3输入部分显示了FPGA芯片控制****芯片控制原理图,所选的FPGA芯片是Xilinx公司的Spantan_3系列的X3C1400A-5,该芯片可以实现对DDR_SDRAM最大时钟为200MHz的控制。在该系统中用到的DVI****芯片是TI公司生产的芯片型号为tfp401的****芯片,该芯片通过接收由计算机DVI接口传输来的编码图像数据,输出到DVI****芯片,该芯片将串行数据****成24位的R(Red)、G(Green)、B(Blue)三原色并行数据,以及行同步、场同步、数据使能和时钟信号,然后将****后的RGB图像数据、行同步、场同步、数据使能和时钟控制信号送给FPGA芯片,将图像数据缓冲到FPGA芯片的FIFO中,在这里须注意,当采集图像的分辨率很大时,该数据传输的时钟信号最高可达到 165MHz,输出的并行图像数据为24位的数据,所以最大带宽可达到3.96GHz,在选取外部存储器是须考虑带宽的要求。




图1 DVI-D接口


DDC:DisplayData Channel(显示数据通道)----指主机与显示设备的通讯方式。基于End-user的即插即用功能的需求,VESA定义了DDC标准。包含DDC1/DDC2B/DDC2B+等方式。DDC2B是主机与显示设备准双向通信,基于I2C通信协议。只有主机向显示器发出需求信号,并得到显示器的响应后,才送出EDID资料。EDID:Extended Display IdentificationData(外部显示设备标志数据)----指DDC通信中传输的显示设备数据。EDID包含显示设备的基本参数,如制造厂商、产品名称、最大行场频、可支持的分辨率等。图中的E2PROM是一个重要的存储器,存储由计算机传来的制造厂商、产品名称、最大行场频、可支持的分辨率等参数,只有该存储器工作起来后,DVI接口才可以正常工作,该存储器显示数据通道为DDC,在这里与DVI接口插上时,该处有个上拉电阻进行指示,计算机会自动将各种参数输入到该存储器,这样才可以从DVI接口输出以各种参数为标准的图像数据。




图2 DVI-I接口


2 选取存储图像数据的缓冲存储器


根据上述采集图像数据的带宽要求,在这里用的是DDR-SDRAM存储器,时钟最大为200MHz,数据位宽为16位,所以,最高带宽可达到6.4GHz,利用率达到65%即可满足上述DVI接口芯片输入到FPGA芯片的带宽要求。


由于从DVI芯片输入到FPGA芯片的图像数据最大的时钟是165MHz,与输出到DDR-SDRAM存储器的时钟频率200MHz不同步,所以,在这里FPGA芯片中要用到异步FIFO进行缓冲,将从DVI****芯片输入的图像数据缓冲到宽度为24位,深度为2048的FIFO中,其中输入时钟根据输入的图像分辨率计算得出,最大可输出的时钟为165MHz,然后再从FIFO缓冲期将数据输出到DDR-SDRAM存储器,其中输出到DDR-SDRAM的图像数据的时钟为200MHz,输出的时钟为双数据率始终,即数据有效时钟可达到400MHz,再将DDR-SDRAM存储器中的图像数据输出到FPGA芯片中,在这里输出到FPGA芯片的缓冲阶段,需要借助FIFO对输出到外部接口芯片进行缓冲。


3 图像处理


由于人眼看到的图像亮度是非线性等级的,该系统的输出到存储器的图像是线性的,所以需进行校正处理,在这里运用了gamma校正算法进行处理,Y=KXr,FPGA芯片对gamma校正的实现过程就是进行数据的映射,对从FIFO输出到外部接口的图像数据进行数据的一一映射。得到输出图像,从输出接口将校正后的图像数据输出到外部器件。




图3 FPGA控制全彩大屏幕LED系统原理图


4 应用于不同领域的两种输出接口模式


①FPGA芯片输出端连接驱动电流芯片
该接口的使用适合于输出的是多路驱动电流芯片,用FPGA芯片输出管脚时序控制多路外部驱动电流芯片,驱动电流芯片再对RGB发光二极管进行控制,最后将整个电脑想要显示的图像显示到大屏幕LED上。


②接收端为以太网线的接口
该接口适合于对一路输入DVI****芯片接口图像的输出,该接口可以用于远距离传输图像信息,应用于大屏幕的LED的显示。
显示设备采用DVI接口优点


DVI传输的是数字信号,数字图像信息不需经过任何转换,就会直接被传送到显示设备上,减少了数字向模拟再到数字烦琐的转换过程,大大节省了时间,因此它的速度更快,能有效消除拖影现象,使用DVI进行数据传输,信号不衰减,色彩更纯净,更逼真。计算机内部传输的是二进制的数字信号,使用VGA接口连接全彩LED大屏幕显示器,就需要先把信号通过显卡中的D/A转换器转变为R、G、B三原色信号和行、场同步信号,这些信号通过模拟信号线传输到全彩LED大屏幕上,还需要相应的A/D转换器将模拟信号再一次转变成数字信号,才能在全彩LED大屏幕上显示出图像。在上述的D/A、A/D转换和信号传输过程中不可避免信号的损失和受到干扰,从而导致图像出现失真甚至显示错误。DVI接口无须进行这些转换,避免了信号的损失,使图像的清晰度和细节表现力都得到了大大的提高。


结束语


该设计系统实现的FPGA芯片控制全彩大屏幕的图像显示系统,不仅可以用于小尺寸分辨率(256×192)的全彩LED大屏幕控制系统的显示,还可以远距离的以太网传输图像数据,将该图像数据发送到多块接收模板,多块接收板的拼接可以用于显示分辨率(1920×1280)的高清彩****像的大屏幕。

最新课程

  • 深入浅出玩儿转FPGA

    本视频基于Xilinx公司的Artix-7FPGA器件以及各种丰富的入门和进阶外设,提供了一些典型的工程实例,帮助读者从FPGA基础知识、逻辑设计概念

  • 从零开始大战FPGA基础篇

    本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“

  • Verilog基础及典型数字

    课程中首先会给大家讲解在企业中一般数字电路从算法到流片这整个过程中会涉及到哪些流程,都分别使用什么工具,以及其中每个流程都分别做了