视频窗口控制器设计
2009-02-16
作者:王金刚 江 洁 李 伟 郁道银
摘 要: 在描述了多媒体窗口控制器的基础上,介绍了用FPGA实现的电子内窥镜中窗口控制器的设计原理及电路。该方法可灵活改变设置,广泛用于多媒体硬件电路的设计之中。
关键词: 数字视频 多媒体 现场可编程门阵列(FPGA) 窗口控制器 电力内窥镜控制
在多媒体技术中,数字视频处理器的核心部件是视频窗口控制器。由它来实现数字视频信号的采集、存储及显示模式的管理,并且可与计算机接口相联接,可以由计算机灵活设置其采集方式、存储方式、显示模式等实现视频信号的显示,与计算机文本及图形的叠加等。
本文设计的窗口控制器是在深入剖析了当前较高性能的窗口控制器性能的基础上,采用FPGA硬件来实现电子内窥镜中的窗口控制器设计原理及电路。采用该项技术,可以大大克服原来硬件规模大、调试复杂的缺点,而获得了实现周期短、更改设计灵活、调试方便、可靠性高的特点。该项技术也可以移植到其它多媒体领域。为了更清楚说明其工作原理,本文首先介绍硬件实现视频窗口控制器的工作原理,其次介绍电子内窥镜中的窗口控制器原理及电路。
1 窗口控制器原理
在现代多媒体设计中,计算机图像及文本信号都是以数字信号的方式传送及处理的,因此数字视频信号处理电路占有十分重要的位置。当前较流行的多媒体卡中的视频处理的典型产品是82C9001A(PC视窗控制器)[1]其工作原理简要介绍如下。
采用视频窗口控制器的PC视频系统由视频数字量化、视频存储器、视频D/A转换、模拟混合电路及PC视频窗口控制器构成。系统框图如图1所示。从框图中可以清楚看出,窗口控制器是PC视频系统的核心部分。它是由82C9001A大规模集成电路单片实现的。该系统工作时,是以计算机系统总线接口向窗口控制器中设置其工作方式,如开机不重新设置,则以以前设置状态运行。视频源信号是NTSC,PAL及SECAM等多种形式中的一种,彩色电视信号输入,经视频量化器量化后进入窗口控制器,窗口控制器将数字视频信号以4:1:1和4:2:2及16bits RGB数字模式存储,也可以2:1:1 YUV模式存储。输入信号可以是隔行或是逐行的视频信号,输出信号也可以是隔行或是逐行的模式。输出信号可以2、4和8倍放大。
计算机显示卡上的VGA的特征接头和窗口控制器相连,提供VGA的特征信号(包括垂直同步、水平同步的时钟及数据等)。计算机显示接头和模拟混合器连接,实现视频信号与计算机信号的叠加。窗口控制器的工作是由窗口控制器内的50个控制寄存器的内容,提供这些寄存器的主要三大类任务:计算机接口控制,视频捕获控制,显示窗控制等。
窗口控制器捕获的数字信号经存储器存储后读出,该组存储器采用VRAM(双端口视频存储器)可以同时在两个口上分别做读写操作,互不影响。存储器读出的信号经D/A电路转换后输入给模拟混合电路和计算机VGA信号叠加。
2 电子内窥镜控制系统
我们在认真研究了PC视频系统的原理和功能后,采用FPGA实现了电子内窥镜的控制系统,其基本性能与PC视频系统有相似之处,现介绍如下。
2.1 电子内窥镜控制系统原理
电子内窥镜控制系统如图2所示。
该系统由面阵CCD光电传感器、A/D转换、FIFO(先进先出缓存)、VRAM(视频双端口存储器)存储器组、视频D/A转换、彩色编码、时钟及窗口控制器组成。
该系统工作原理如下:CCD输出信号经A/D量化为数字信号后,经FIFO(先入先出缓存)缓存,输入到窗口控制器中,窗口控制器根据输入的信号经过处理后,依次存储到VRAM组成的R、G、B三页存储器中。存储器中的视频信号同时输出经三路D/A转换后,经编码器实现PAL制彩色视频信号。
系统时钟部分提供给系统形成PAL制信号所需的点象素时钟、所有同步信号(包括垂直同步、水平同步、提供给彩色编码电路的色同步信号及消隐信号),以及提供给FPGA稳定可靠的全局时钟。
窗口控制器主要实现以下功能:显示窗口形状控制、显示窗口活动/冻结转换,VRAM写入、读出、刷新控制信号发生,提供A/D转换、D/A转换时钟,提供CCD正常工作的驱动时钟及实现与计算机的通信等。窗口控制器所有的功能都是由FPGA实现的。
2.2 窗口控制器的FPGA实现
窗口控制器是由FPGA实现的,而且在FPGA内部是以模块化设计的,其结构见图3。
外部输入给FPGA的主要有主时钟、行同步信号、场同步信号、大小画面切换、系统复位信号等。主时钟和行、场同步信号由外部时钟发生电路经锁相产生的,大小画面切换和系统复位信号是由外部开关给定。FPGA内部为主控信号发生、接口、VRAM信号切换、VRAM地址发生、FIFO信号切换及VRAM开机复位电路等几个模块构成,每个模块完成自己的一部分功能。
主控信号发生产生所有的控制信号,包括CCD驱动、A/D及D/A时钟、VRAM控制信号、FIFO控制信号及计算机接口信号。
由于VRAM开机后存储单元的内容不定,因此在开机之后先给VRAM存储器复位,即开机后VRAM全清零。
由于VRAM存储器是由三组存储器组成的,分别用于存储红、绿、蓝三种分时得到的图像分量,因此VRAM控制信号必须经过切换分时输入不同的存储器。
系统采用了大小两个FIFO,因此FIFO控制信号也经过切换。
接口部分完成与计算机的输入、输出通信,接收计算机的请求信号,给出应答信号。
图4是主控信号发生的FPGA模块图。
目前系统已能正常工作,图5和图6是从逻辑分析仪截取的最终调试结果。图5是CCD驱动控制信号。在控制VRAM时,为了检测VRAM控制是否正确,在FPGA内部做的彩条测试信号,图6是彩条的波形输出。
我们的窗口控制器是在分析当前较流行的多媒体卡中的视频处理的典型产品82C9001A(PC视窗控制器)其工作原理的基础上,设计并用FPGA实现的。先进的FPGA技术的使用一方面大大缩短了调试的周期,提高了系统的可靠性;另一方面由于其包含大量的门电路使系统控制板集成度高,体积小。由于FPGA器件的使用,系统具有极强的灵活性、适应性和通用性,并可在不更改硬件电路的基础上,在短时间内实现对现有功能的修改和扩充。
参考文献
1 恒志图像.多媒体视频卡硬件设计原理.1996
2 TEXAS Instruments.Data Book of Area Array Image Sensor Products.1994
3 刘宝琴,张芳兰,田立生.ALTERA可编程逻辑器件及其应用.北京:清华大学出版社,1995