Board logo

标题: 基于DSP的彩色TFT-LCD数字图像显示技术研究(2) [打印本页]

作者: yuyang911220    时间: 2016-11-21 11:30     标题: 基于DSP的彩色TFT-LCD数字图像显示技术研究(2)

在本系统中,使用TMS320C6711的EMIF口的8位异步方式与CPLD一起定时刷新外部同步FIFOAL422B,接口电路如图5所示。

   图5 TMS320C6711与FIFOAL422B接口电路

  DSP6711为AL422B提供写复位信号(/WRST)和写使能信号(/WE)。CPLD根据DSP6711提供的外存使能信号(/CE)和写使能信号(/AWE),为AL422B提供写同步时钟(WCK)。DSP6711通过数据总线ED[5:0]将图像数据写入AL422B的内部存储单元。

  4 CPLD设计

  本系统使用ispMACH4064V(简称4064V)作为显示平台的主控逻辑器件。4064V是一款工作在3.3V的新一带CPLD芯片,I/O口兼容5V TTL电平,主要性能数如表1所示。

  ispMACH4064V是实现TFT-LCD、FIFO和DSP的EMIF口三个器件逻辑功能时序的核心器件,为了实现各时序之间的严格同步,使用一个外部时钟参考源输入到ispMACH4064V,ispMACH4064V内部所有的信号都是以这个时钟为基准的。

  系统总流程

  TFT-LCD彩色数字图像显示平台的三个关键器件,分别是DSP、FIFO和CPLD。DSP通过EMIF口定期将图像数据写入FIFO;CPLD并行的不断读取FIFO内的图像数据,驱动TFT-LCD显示动态或静态彩色数字图像。DSP写FIFO的速度高达25MHz,TFT-LCD刷新时钟为6MHz,CPLD读FIFO的速度应大于3倍的TFT-LCD刷新时钟,取24MHz。各器件之间的时序必须严格匹配,才能正常显示图像。本系统使用Lattice公司的CPLD ispMACH4064V,产生TFT-LCD的驱动时序和FIFO的读时序,并配合DSP的EMIF口形成FIFO的写时序。系统时序设计是数字图像显示技术的关键点,也是最困难的部分。

  系统上电后复位CPLD、FIFO和TFT-LCD,DSP定时向FIFO写入图像数据,CPLD并行的读FIFO,同时驱动TFT-LCD逐像素显示图像,系统总流程如图6所示。

   图6系统总流程图

  本系统采用VHDL语言对CPLD要实现的功能进行行为描述,用Synthesis软件对VHDL源代码进行语法检查和逻辑综合后,在ispLEVER3.0环境下对ispMACH4064V进行功能仿真、时序仿真、引脚I/O设置和分配,最后将生成的JEDEC文件用下载电缆写入CPLD,生成实际的数字逻辑。

  基于图像处理系统的性能分析

  图像处理完毕后,需要显示给进行观察和评价。人的视觉系统对色彩非常敏感,图像显示的色彩必须达到或超过人的分辨能力,才不致于丢失有用的图像信息。图像处理系统的图像显示必须达到真彩(18位色)显示。为达到嵌入式数字图像处理系统实时性要求,图像显示模块要尽少占用DSP资源,同时真彩显示意味着更大的数据吞吐量,这些都要求图像显示模块要有更快的处理速度。

  本系统中,一帧图像共有320×240×3=225Kb,DSP采用8位异步模式以25Mb/s的速率向FIFOAL422B写入图像数据,写一帧图像需9ms。若DSP以40ms为间隔刷新AL422B的图像数据,就可以实现平滑动态显示真彩数字图像。这样的数据吞吐速度可以很好地满足实时性要求。

  与市场同类产品的比较:国内外市场上控制彩色TFT-LCD一般采用ARM等带TFT-LCD接口的MCU,或直接使用专用IC,甚至使用工控机来实现,这些方案都难以满足嵌入式系统对成本和功耗的要求。国内市场上,有少数几家公司采用可编程器件+存储器的技术开发出实用产品,大部分采用SRAM作为图像数据存储器。由于要进行复杂的读写端口切换,这类产品一般采用高档可编程器件,同时降低图像显示品质,无法真彩显示,无法平滑地显示动态图像。而本课题实现了18位真彩显示,每秒25帧图像,动态图像可以平滑地显示,而且成本只有40元人民币,大大提高了产品的性价比。

  结语

  本文提出了一种基于DSP的彩色TFT-LCD数字图像显示解决方案,采用高性能DSP和基于DRAM的新型大容量FIFO存储器,用CPLD实现了驱动TFT-LCD以及与DSP数据接口的所有时序。与市场上同类产品相比,本系统大大提高了图像显示品质和显示速度,降低了系统的功耗和成本,在嵌入式图像系统中有广泛的应用前景。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0