首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

PCI总线和CPLD的任意信号发生器设计

PCI总线和CPLD的任意信号发生器设计

本帖最后由 yuchengze 于 2016-12-27 13:53 编辑

随着通信、雷达技术的高速发展,稳定度高、信号种类多样、多种调制方式的高质量信号源的需求也越来越广。在电子设备的测量、电磁环境的模拟等应用中,需要能够方便快速地产生各种类型、参数的信号。所以,研究开发了这种基于计算机PCI总线和CPLD控制的任意信号发生器,在PC端对信号的各种参数进行设置,实时产生所需要的各种信号。实现了多种类型、参数信号之间方便快速的切换。  1 基本原理和系统主要框图
  基于PCI总线和CPLD的任意信号发生器如图1所示,PC端的控制程序对信号的频率、相位等各种参数以及调制方式进行设置,通过PCI总线将所设置的各种参数信息传到CPLD中,CPLD根据预先编好的Verilog HDL程序,将PCI总线传来的参数信息转换成DDS的控制信息,控制DDS芯片的工作状态和写入DDS中相应的寄存器,完成DDS的配置,生成所需要的信号。  


  2 系统主要硬件设计
  2.1 PCI总线接口部分设计
  PCI总线作为计算机与外部设备的一个重要连接总线,数据传输稳定、灵活、传输速度快,还具有即插即用和良好的扩展性等优点,被广泛应用在各种与计算机互联的设备中。
  考虑到PCI总线的协议比较复杂,所以本设计采用了PLX公司生产的PCI接口专用芯片PCI9052用于PCI总线的控制。图2是PCI9052芯片的主要接口电路图。主要包括9052与PCI插槽间的连接信号线、与E2PROM之间的连接线和与局部总线之间的连接线。与PCI插槽的信号包括地址数据复用信号AD[31:O].总线命令信号C/BE[3:0]#和PCI协议控制信号PAR,FRAME#,IRDY#,TRDY#,STOP#,IDSEL,DEVSEL#,PERR#,SERR#。与串行E2PROM的连线有4根信号线:EESK,EEDO,EEDI和EECS。本设计中需要传输的数据量比较少,同时考虑到对早期的ISA设备的兼容性,所以采用了9052中的ISA模式。在ISA模式下,9052与ISA总线的连接有数据线LAD[7:0],地址线ISAA[1:O],LA[23:2],I/O读写信号线IOWR#,IORD#,地址锁存BALE。  

  9052的工作方式及配置信息主要由E2PROM加载,这里采用了Motorola公司的93LC46B,E2PROM的数据可以提前用烧写器烧好,也可以在线烧写。配置信息包括:设备号DID、制造商号VID、子设备号SDID、子制造商号SVID、中断号、设备类型号、局部空间基地址、局部空间描述符、工作模式、LOCAL端数据线的宽度、片选以及局部响应控制CNTRL等信号。根据需要配置好这些信息,写入E2PROM中。本设计中E2PROM的配置信息如表1所示。  

  2.2 CPLD控制部分设计
  CPLD在系统中的主要作用是用来将PCI控制器传输过来的数据,经过一定的算法处理,得到DDS外围管脚的状态及向DDS中写入控制寄存器数值,使DDS根据配置信息产生所需要的信号。
  本设计中使用的CPLD是Altera公司的7000S系列,工作电压为5 V,具有192个宏单元,采用通用JTAG方式下载。CPLD与DDS之间的接口电路主要包括8位数据线D[7:O]。6位地址线ADD[5:0],串并选择信号PMODE,复位信号RESET,外部更新信号UDCLK、读写信号WR、RD和控制信号0RAMP、FDATA。如图3所示。  
返回列表