基于PCI总线的数字图像处理仿真系统设计方案
摘要:为便于科研人员在电视图像处理系统设计过程中对图像处理的新算法进行评估和测试,降低评估测试板硬件电路的设计复杂性,在此提出了解决方案,并实现了基于PCI总线的电视图像实时仿真系统的设计。该系统首先通过PCI插卡实现对电视图像进行采集、预处理和视频A/D转换,然后选用具有高速特性的PCI总线将数字化后的数字图像信息写入计算机系统内存,最后在计算机终端上,使用高级语言编程,完成图像处理和控制接口软件开发,实现计算机软件对PCI硬件设备的访问,数字图像的实时处理、分割、匹配等算法仿真。
0 引言
随着电视图像处理系统性能的提高,设计人员需要不断采纳新的数字图像处理算法,如何对这些新算法进行评估,如何将理论设计转化成工程应用成为设计人员关心的首要问题。
实现电视图像信号处理需要设计一套复杂的电路系统,且硬件电路的设计应综合考虑高速DSP芯片的开发、超大规模集成电路设计、视频转换、接口等复杂电路。设计印刷电路板和调试将占用设计人员较多的工作时间,较长的研制周期和较高的研制经费均不利于图像处理新思路、新算法向工程应用的转化。仿真系统能较大程度降低硬件电路设计的复杂性,缩短研制周期,有利于科研设计人员集中精力对新算法进行评估和测试。
能否实时采集和实时处理电视图像信号是设计仿真系统的关键问题。鉴于微型计算机运算速度的提高和PCI总线的高速特性,基于PCI总线设计电视图像处理系统的实时仿真系统成为了可能。本系统使用微型计算机仿真电视图像处理系统来对图像进行处理,使用PCI插卡电路,实现图像数据采集数据的实时采集和发送。 PCI总线的发展,打破了传统微型计算机数据传送的瓶颈,传统微型计算机总线的最大缺点是传输
速率太低,不能实现图像数据的实时传输,更不能满足图像处理系统和大型应用程序的要求。PCI总线作为一种同步,且独立于处理器的32位局部总线,其最高工作频率为33 MHz,数据传输峰值吞吐率可达132Mb/s。因而用PCI总线传送1场(256×256×32位数据)信号的时间不大于20 ms。由于电视信号存在空间和时间上的冗余,如对信号进行压缩,则传送一场信号所需的时间将会更短。因此,在仿真系统中,利用PCI总线将数据图像信息直接传输到系统内存中,对数据进行实时传输、存储和处理是可能的。
1 系统的结构与功能
由于采用了微型计算机作为数据处理系统,因而可使硬件电路设计的工作量大大降低,仿真系统仅需要设计一PCI插卡,就可实现图像数据的适时采集和处理。系统的原理框图如图1所示。
采用PCI总线视频处理卡对图像进行预处理和视频A/D转换,再通过PCI总线将数字图像信息写入计算机系统内存,使用高级语言编程,实现数字图像的预处理、分割、目标图像处理、匹配等算法。
2 PCI总线视频信号处理卡
PCI总线视频处理卡由模拟视频信号处理、视频信号A/D转换、PCI总线数据采集和信号传输等部分组成。
2.1 视频处理和视频A/D转换
视频信号经过电缆传输后有一定的衰减并且迭加上噪声信号,对A/D转换前的原始视频信号进行放大和滤波处理,可以有效增强视频信息,降低噪声干扰。视频A/D转换芯片可供选择的种类比较多,如SAA7111,BT218等。
2.2 PCI总线数据采集和信号传输
PCI总线是成组数据的瘁发传输,每组数据是由一个地址信号和一系列的数据信号组成,PCI总线采用地址和数据复用结构,大大减少了信号数量,但PCI总线规范仍然十分复杂,其接口的实现比传统ISA、EISA总线困难,连接到PCI总线上的设备可分为主控设备和目标设备两类,目标设备最少需要47个信号,主控设备最少需要49个信号,其中包括数据/地址复用总线、接口控制线、仲裁、总线命令、系统线等。在设计中,可采用以下两种方案实现PCI总线的接口设计:
2.2.1 采用可编程逻辑器件实现PCI接口设计
目前几乎所有的可编程逻辑器件厂商均有用于微型计算机接口的典型的PLD产品。多数厂家还提供用VHDL、Verilog、AHDL编制的PCI总线接口核心设计模块。利用这些模块可编程逻辑器件可以实现简单的PCI总线接口设计。由于可编程逻辑器件自身的特点,设计人员实现PCI接口设计时有更多的思维想象空间。
虽然使用可编程逻辑器件设计PCI接口具有灵活的特点,但在设计中仍存在以下需要关注的问题:
(1)PCI具有顺从性的特点,几乎所有包含高性能数据和控制路径中的逻辑都需要1个PCI系统时间的拷贝,这与PCI苛刻的负载要求相矛盾。另外,在完成某些功能如数据突发传送时,往往需要很多时钟负载,而时钟上升沿到输出有效时间必须小于11 ns,这进一步加重时钟扇出问题。
(2)PCI规范对传输数据的7 ns建立时间要求苛刻,有时在设计中要使用模拟延迟来解决。
(3)任何完善的PCI接口器件都必须提供PCI配置空间,实现PCI规定功能需要完成逻辑校验、地址译码、实现配置所需的各类寄存器等基本要求,选用的可编程器件对其逻辑门的容量有较大的要求。
此外,在使用可编程逻辑器件设计插卡电路时还需加入FIFO、用户寄存器、后端设备接口等电路,在一定程度上增大了电路设计的难度。
- PCI总线数据输出板驱动程序的开发(05-16)
- PCI9030及其PCI总线接口电路设计(07-28)
- 基于PCI总线的雷达视频高速数据采集接口设计(10-16)
- 基于CPCI总线的智能A/D,D/A模块设计(01-28)
- 基于PCI总线的GP-IB接口电路设计与实现(09-06)
- PCI总线和PCIE总线的差异(12-04)