引言
显示系统在工业、农业及日常生活中扮演着越来越重要的角色,因此,对其进行设计与研究具有十分重要的意义。
CPLD(Complex Programmable Logic Device;复杂可编程逻辑器件)具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进等优点,用户可根据自身需要构造数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆将代码传送到目标芯片中,从而实现数字系统。CPLD的应用目前已深入网络、仪器仪表、汽车电子、数控机床、航天测控设备等领域,其设计及应用成为电子工程师必备的一项技能。
系统总体设计方案
XC95144XL是XILINX公司推出的5ns引脚延迟、系统频率高达178MHz、144个宏单元、3200个可用逻辑门单元的可编程逻辑器件。本设计采用XC95144XL作为数据传输与控制核心模块,接受来自TMS320C6416T的视频数据,并采用两片IS61WV51216ALL组成缓存,以达到实时输入输出数据的效果。本部分实现框图如图1所示。
图1 视频显示功能框图
系统硬件设计
系统硬件设计主要包括:TMS320C6416T与VGA显示系统的接口设计;2片IS61WV51216ALL SRAM组成的缓存模块;视频DAC模块。
TMS320C6416T与VGA显示系统的接口设计
来自4片TMS320C6416T的图像处理机的EMIFB口连接在一起,并通过CPLD的仲裁,使能哪一块图像处理机输出数据至VGA显示系统。
采用C6416T的EMIFB口输出处理结果,当1片C6416T要求输出数据时,C6416T要通过GP01向CPLD发送输出数据请求,CPLD根据内部逻辑确定是否允许C6416T请求。内部逻辑准则如下:
各个DSP的输出数据请求优先级别相等,请求信号先到者先被允许,后到者不能中断正在响应的请求。对于同时到来的请求,CPLD响应先接收到原始视频信号的C6416T。
当CPLD响应一个C6416T的输出数据请求时,CPLD向C6416T的BHOLD#信号发送响应信号(对EMIFB的保持请求输入信号)。此时,数据开始输出。
2片IS61WV51216ALL SRAM组成的缓存模块
2片XC95144XL各自连接1片IS61WV51216ALL组成的图像缓存模块。
实时显示控制:由CPLD对各个6416T图像处理机数据输出接口(EMIFB)总线进行总线仲裁,实现各个6416T图像处理机的图像数据分时输出。由于VGA的刷新频率大于输入信号的频率,因此采用两片SRAM“乒乓存取”工作方式,组成了图像数据缓冲区,每片SRAM存放一帧图像,由CPLD控制其乒乓读写切换以达到实时显示效果。数据缓存电路框图如图2所示。
图2 数据缓存电路框图
采用一组SRAM作为显存,可以简化系统设计、降低成本。这时可以考虑利用行时序和帧时序中SRAM总线空闲的时序段,在不关闭图像显示的情况下实现显存SRAM的数据更新。该方法的更新率与数据写速度密切相关,显存的写数据速度越快,该方法的更新率就越高。