基于PCI总线的实时图像识别与跟踪平台设计
1 C6701数字信号处理器简介
C6701芯片内有8个并行处理单元,分为相同的两组。采用甚长指令字VLIW结构,使C6701成为高性能的数字信号处理芯片。其单指令字长为32b,8个指令组成一个指令包,总字长为256b。芯片内部设置了专门的指令分配模块,可以将每个256b指令包同时分配到8个处理单元,8个单元可同时运行。芯片的最高时钟频率达到167MHz,此时浮点运算处理能力可达到1GFLOPS。外部存储器接口EMIF支持8/16/32b数据宽度的各种类型的同步、异步存储器,便于系统扩展。C6701片内有64KB的数据RAM和64KB的程序RAM;片外存储空间分为4个区(CE0、CE1、CE2、CE3);有4个相互独立的可编程DMA通道,还有第五个DMA通道可与HPI接口。
2 PCI9054的主要特点及应用
PCI09054是美国PLX公司生产的一种32b 33MHz的PCI总线主控I/O加速器。采用先进的PLX流水线结构;符合PCI本地总线规范2.2版,突发传输速率达到132MB/s;本地总线复用/非复用的32b地址/数据线,有 M、J、C三种工作模式,但C模式的数据和地址总线是非复用的;支持8b、16b、32b外围设备和存储设备,本地总线操作速率高达50MHz;内部有6种可编程的FIFO,可实现零等待的突发传输及本地总线时钟和PCI总线时钟的异步操作,支持主模式、从模式和DMA传输模式。PCI9054是一种性价比高的PCI桥接芯片。
图1给出了PCI总线接口连接图,使用2K的ST93CS56串行EEPROM作为PCI9054的配置芯片,图中双口RAM可设计成32b、16b或8b。PLX9054工作在C模式下。本地总线晶振为30MHz,经过测试PLX9054工作在从模式单字节读写的情况下,本地总线速度已达12MB/s。根据实际图像传输需要(图像大小为256×256,深度为8b的灰度图像)帧频为25帧/s,已经满足需要。为了再提高传输速度,PLX9054可以开发成突发或DMA传输方式。使用CPLD(Xilinx的XC95108)完成PCI9054到双口RAM的译码电路,本地地址空间可寻址大小为1MB,1MB的本地地址空间映射为地址00000000H~000fffffH,PCI总线的地址空间(计算机自动分配)为ef100000H~ef1fffffH,同时要求PCI基址空间2(对应寄存器PCIBAR2)映射到本地地址空间0(对应寄存器LAS0BA()即LAS0RR寄存器设为fff00000H,LAS0BA寄存器设为00000001H。其中,LAS0BA的最低位置成“1”,表示PCI直接从模式访问本地地址空间0,使能译码;写“0”则禁止使能。PCIBAR2的值为ef100000H。
图2 图像处理系统硬件框图
利用WinDriver6.01驱动程序开发工具生成PCI图像传输卡的WDM驱动程序代码,用VisualC++6.0编写应用程序,完成图像处理版与PC机之间的高速率的图像序列传输。
3 图像处理板硬件设计
系统硬件框图如图2所示。图像处理板以DSP C6701为核心,C6701主要负责图像处理,包括对目标的识别和跟踪,并给出最终的跟踪角误差。源图像通过PCI接口卡传入图像处理板的两片双口RAM,两片双口RAM采用乒乓式存储。即为了保证图像处理的实时性,当一片RAM接收数据时,另一片RAM为DSP提供图像处理的数据。SDRAM用作DSP RAM的扩展,存储图像处理的中间结果。图像处理后的方位与俯仰角度数据通过82C52转换成串行数据,再经DS8921转换成RS-422电平,送给系统的后续电路。
FPGA选用Altera公司的APEXEP20K200,完成整个图像处理板的译码逻辑,并承担部分
PCI总线实时图像识别跟踪平 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)