功能单元设计
实现VGA显示,除了实现时序控制,还必须有其他功能单元的支持才能实现完整的图像显示。
(1)控制器:VGA显示有多种模式,需要通过控制器实现模式间切换,还需要对显示的内容进行接收、处理和显示。所以控制器的性能越高,数据更新和显示效果就越好。
(2)显示数据缓存区:VGA显示要求显存速度快、容量大。读速度要达到65MHz以卜,存储容量至少要2MB。可采用高速SRAM或SDRAM作为显示数据缓存。
(3)数模转换器DAC:VGA显示对数模转换DAC有如下要求:一是高速转换,转换的速度应该在80MHz或以上;二是刚步性好,能保证R、G、B三路信号的同步性;三是有相应的精度。可选择一种包括3路8位高速D/A的专用视频芯片。
(4)数据源及其接口:要提高VGA显示的效率,就要不断更新数据,同时还要保证实时性,因此需要非常高的接口速度。VGA显示卡虽可达到100Mbps的数据更新速度,但是一般设备、特别是嵌入式设备达不到这么高的速度,而且大多数情况下也不需要这么高的数据更新率。目前常用接口为EPP接口、USB接口、TCP/IP、RS232C/485等。其中TCP/IP、EPP接口和USB接口是基于计算机的,速度较快;TCP/IP、RS232C/485是基于网络通信的接口,其中RS485速度虽慢,但应用广泛且容易实现远程控制。
在数据源为低速接口时,可以考虑采用Flash或者SM存储卡等预先存储一些常用的图像显示数据和字库文件,在更新数据时直接应用这些数据,从而加快显示缓存的更新速度。这样既能满足高分辨率图像的显示,又能满足文字信息数据的快速更新。刚时为了存储更多的图像,可以先存储JPEG格式图像,再由控制器解码成BMP位图图像后送到显示缓存显示,这样就相对扩展了Flash的存储空间。同时,由于图像的解码速度要大大快于数据源接口的速度,也就相应提高了显示缓存的数据更新速度。
32进32出VGA矩阵切换器
显存数据更新与显示的同步实现
在VGA显示时,要考虑如何实现显存数据更新与显示的同步进行。解决的方案有以下几种:
(1)采用具有缓存作用的双口RAM,这种方法使用的器件数量多、功耗大、成本高,基本不可取。
(2)采用两组SRAM进行乒乓工作模式,一组SRAM用于显示的同时,另一组SRAM用于图像数据的更新,然后在两组SRAM之间切换。这样做会提高一些成本,而且需要更复杂的总线控制。
(3)利用FPAG/CPLD和SDRAM构造双口SRAM。这种方法实时性好,成本较低,时序控制比较复杂,它是实现高性能低成本要求的最佳方案。
(4)采用一组SRAM作为显存,可以简化系统设计、降低成本。这时可以考虑利用行时序和帧时序中SRAM总线空闲的时序段,在不关闭图像显示的情况下实现显存SRAM的数据更新。该方法的更新率与数据写速度密切相关,显存的写数据速度越快,该方法的更新率就越高。
假设CPU的工作时钟最大为60MHz,并采用JPEG解码更新方式。这时如果将解码缓存区分配在CPU片内内存,则更新数据时直接由内存向SRAM写数据,一次需要0.17μs;如果将解码缓存区分配在片外空间,则更新数据时CPU要先从片外读数据,再向SRAM写数据,这样写一次需要0.25μs。在相邻显示的两帧图像只存在局部差别或更新文本显示信息时,可使用局部数据更新方法,以提高更新率。表2给出了显示每帧图像包含的总线空闲时间,以及在不同解码缓存区分配方式下图像全部更新和10%局部更新的帧率。这里提到的帧率是指对显存数据的更新速度,而不是指图像的屏幕刷新率,它对刷新率没有影响。
基于以上方案设计的嵌入式VGA显示系统在只有系统控制板和CRT显示器的情况下实现了嵌入式高分辨率VGA显示。
通过对嵌入式VGA显示系统的设计分析和实际使用,得到如下结论:
(1)由于VGA显示是一个高速过程,所以选择器件时要选择高速器件。
(2)VGA显示时序要求较严格,时序中的前后沿及同步脉冲宽度都要依照严格的参考数据设置。
(3)在一般情况下,由于数据接口的限制,数据更新率不能达到计算机的水平。通过一些特殊设计,还是能够满足大多数嵌入式VGA的需求。
(4)性能、成本和复杂度要综合考虑,要以系统的实际需求为目标,采用合理而实用的设计方案。
VGA信号原理是数字多媒体中控、会议中控、矩阵切换的基础,广州市东巨信息科技有限公司(http://www.dojuit.com)一直致力于VGA矩阵切换器、高清混合矩阵、混合矩阵切换器、HDMI矩阵切换器、DVI矩阵切换器等方面的开发与研究,同时也承建了政府企业多个中小型会议中控、数字多媒体中控项目,为用户提供了一套政府与企业切实的解决方案,打造一个个典型的多媒体中央控制系统,会议中控系统,智能中控系统等案例,我们的产品及服务一致得到用户的好评。