PCI总线具有支持多种外围设备、独立于处理器、数据传输快等优点,已经应用于PC机,工控机等多种场合,如数据采集卡,IO控制卡、总线卡等都采用了PCI总线结构。在某综合测试系统设计时,为提高系统集成化、模块化的要求,设计研制了基于PCI9054的塔康(TACAN)视频信号产生板卡。
1 系统组成及设计要求
该系统主要由电源、PCI接口、FPGA逻辑、DSP、D/A转换等电路组成。其中,电源电路为整个电路板提供电源,PCI接口电路提供PC机和电路板进行信息交互的通道,FPGA负责整个电路系统的逻辑,DSP电路负责整个电路系统的数据运算,D/A转换电路将DSP产生的包络数据转化为模拟信号。塔康视频信号产生电路的系统结构如图1所示。
塔康视频信号产生电路的工作流程为:PC通过PCI接口电路发送控制指令,FPGA通过PCI9054器件接收控制指令并把指令信息传递DSP,DSP接收到指令信息后,产生相应操作,D/A转换电路将DSP产生的包络数据转化为模拟信号传递出来。塔康视频信号产生电路将产生符合要求的正弦包络信号和基准信号。其中,正弦包络信号主要包含15 Hz正弦包络信号和135 Hz正弦包络信号,其函数式为:
式中,f=15 Hz,A0为直流成分,A1、A2分别为15 Hz正弦包络和135 Hz正弦包络的幅度。同时,系统在产生15 Hz正弦包络时还可以产生主基准脉冲群,在产生135 Hz正弦包络时产生辅助基准脉冲群。通过基准脉冲群信号和正弦包络的正斜率过零点之间的时间间隔在正弦包络总时间中占有的比例关系,可确定方位信息。
结合某型塔康的测试需求,该系统的具体设计要求是:15 Hz和135 Hz正弦包络的信号深度均可调,幅度调整的范围都是O~40%,最小调整间隔为1%:15 Hz正弦包络和135Hz正弦包络的幅度之和在总包络的幅度所占大小不超过40%;15 Hz正弦包络的相位在0°~359.9°内可调整,最小调整间隔是0.1°,135 Hz正弦包络的相位在0°~39.9°内可调整,最小调整间隔也是0.1°。
2 系统硬件电路设计
2.1 电源电路
电源电路的主要功能是为整个电路板系统提供电源。电源电路从PCI插槽中取用3.3 V和5 V电源,通过电压转换器LDlll7S18和LDlll7 S12可分别得到1.8 V和1.2 V电压,供不同的器件使用。
2.2 PCI接口电路
PCI接口电路的主要功能是提供PC和塔康视频信号产生电路进行信息交互的通道。选用PLX公司的PCI9054器件,该器件符合PCI本地总线规范 2.2版,突发传输速率可达到132 MB/s,本地总线支持复用/非复用的32位地址/数据,支持主模式、从模式以及DMA传输方式。该器件可靠性高,易于开发,满足系统的要求。
PCI9054通过引导EEPROM进行配置,其与串行EEPROM(IDT70261)的接口电路如图2所示。PCI9054提供4个引脚与串行 IDT70261相连接,它们分别是EEDI,EEDO,EESK,EECS,对应于IDT70261的DI,D0,SK,CS等4个引脚。在上电复位时,PCI9054会通过EEPROM中引导并对寄存器进行配置,完成命令控制和地址映射。
PCI9054局部总线的接口与DSP不完全兼容,需要通过FPGA实现数据的传输。因此在FPGA内部构建一个双口RAM,PCI9054的局部数据线LD[15..0]、局部地址线LA[14..0]与FPGA直接相连,同时PCI9054的局部控制线也与FPGA直接相连,如图2所示。
2.3 FPGA逻辑电路
FPGA电路的功能是负责整个电路系统逻辑。这里选用ALTERA公司的EP2C8器件,该器件具有8 256个逻辑单元,内嵌36个M4K RAM块,最大支持128个用户IO引脚资源,完全满足设计需要。EP2C8配置了2个下载口:JTAG调试接口和AS模式下载口,其中AS模式使用串行配置器件EPC-S4,存储容量为4 Mbit。
2.4 DSP电路
DSP电路是整个电路系统的数据运算单元。选用TI公司的TMS320VC5416型DSP,其内嵌128 K×16 bit的RAM和16 K×16 bit的ROM,以及1个40 bit的算术逻辑单元,其主频可达到160 MHz,满足设计需要。
DSP作为数据运算中心,需要将运算后的数据传递给FPGA,由FPGA进行相关操作。因此,DSP的数据线A[15:0]、地址线 D[15:0],其他控制线等与FPGA直接相连,同时DSP通过JTAG口下载程序。DSP接口电路如图3所示。
2.5 D/A转换电路
D/A转换电路的功能是将DSP产生的包络数据转化为模拟信号。选用ADI公司的12 bit并行高速D/A转换器AD9762,其最大数据刷新率为125 MS/s。D/A转换电路如图4所示。
3 系统软件设计
3.1 FPGA功能实现
FPGA开发采用Altera综合开发平台Quartus II 6.0,利用VHDL语言开发了双口RAM、总线控制、地址译码、D/A转换器控制、脉冲序列产生、波道控制和询问信号检测等7个功能模块,分别为:1) 设计双口RAM,用于实现PCI9054数据和DSP数据的交换:2)实现 PCI9054本地总线逻辑控制,例如:对双口RAM的读写逻辑;3)实现DSP的地址译码逻辑,根据不同的指令选择不同的功能单元;4)实现D/A转换器的逻辑控制;5)产生脉冲序列。根据需要,可产生基准脉冲、填充脉冲、应答脉冲、随机脉冲,组成脉冲序列;6)实现波道控制和衰减控制;7)实现对询问信号的检测等。FPGA内部逻辑如图5所示。
3.2 DSP程序设计
DSP片上程序以CCS2.0为开发平台,主要包括器件初始化程序、系统初始化程序、包络数据(由15 Hz和135 Hz正弦信号组成)产生程序、INTO中断程序、INTl中断程序和定时器中断程序。其中,器件初始化程序完成片内外设的初始化(如锁相环时钟发生器参数的设置,定时器参数的设置,可屏蔽中断的设置等);系统初始化程序完成整个系统的初始化(I0地址分配、全局变量的初始化设置和系统外设的初始化);包络数据产生程序主要产生15 Hz正弦数据表和135Hz正弦数据表两张函数表;INT0中断程序完成接收PC指令:INTl中断主要接收到询问信号后完成应答功能;定时器中断程序完成查找函数表并通过计算产生包络数据,启动D/A转换电路产生包络信号,同时产生脉冲选择信号,控制FPGA输出脉冲序列。DSP主程序流程如图6所示。塔康包络信号波形如图7所示。
3.3 PCI驱动程序开发
根据Windows提供的驱动程序模型,使用VC++6.0和DriverStudio软件编写了WDM驱动程序。该驱动程序对PCI9054起到内存映射和中断管理的作用。驱动程序安装后,应用程序对 PCI卡的访问可通过调用WindowsAPI的函数CreateFile()实现。这样,对端口的操作最终表现为对一个文件的操作。
4 结论
针对系统模块化的设计要求,开发了基于PCI9054的塔康视频信号产生板卡。基于PCI总线的塔康视频信号产生电路适用于多种工控机平台,通用性强,并且满足设计要求,实际使用效果良好,因此具有良好的应用前景。