用凌华PCI-7300A实现数据高速输入

目的
   实现高速串行数据的计算机输入,并要求严格保证不丢失传输的数据
   应用背景
   某种设备现需要一个统一的数据记录平台,前端设备各不相同,但都含有高速串行输出端口,最高传输数据率近100Mbps。要求数据记录平台保证不变,可以完成对各种串行数据的接口,同时采样数据可以实时存盘
   解决方案
   利用差分驱动芯片实现远距传输;利用ALTRA公司的FPGA实现串行数据至并行数据的转换,利用PCI-7300A的握手信号实现数字信号的实时采集及存盘
   详细介绍
   数据信号的高速远程传输在前端设备实现,主要采用高速差分驱动芯片,可以实现数字信号在长线缆中的高速传输,一个比较重要的问题是阻抗匹配,因为如果匹配不好会造成信号失真严重。
  
  


  

  PCI-7300A是一块32CH高速数字量卡,在此项目中32CH全部用作数字量输入;串行数据至32CH并行数据的转换利用ALTRA的FPGA实现。由于ALTRA的芯片可以实现现场编程,这样对于不同的前端设备,只要写入不同的程序就可以实现匹配。
  为了避免数据的丢失,FPGA与PCI-7300A之间通过握手方式来实现数据传输。具体的方式是:
  1. FPGA把数据准备好后,然后发DI_REQ信号给PCI-7300A
  2. PCI-7300A收到数据后,回馈DI_ACK信号给FPGA。
  3. FPGA收到DI_ACK信号后,准备下一组数据。
  通过这样的握手信号,就可以保证数据的传输不会出现Overrun,也就保证了数据不丢失,同时又能进行高速的数据传输。
   结论
   该客户的样机研制已完成,现已拿给他的用户进行现场试验
  PCI-7300A
  80MB/s超高速32通道数字量I/O卡
  特性
  ·32位PCI总线,即插即用
  ·多种I/O端口配置,包括16 DI与16 DO、32 DI或32 DO
  ·最高80M B/s数据传输率
  ·使用scatter-gather技术的总线主控数据传输
  ·板上内置定时器触发
  ·板上内置两个16k字大小的FIFO用于数字量输入/输出通道
  ·多种数字波形发生器配置
  ·提供用于握手方式数据传输的ACK与REQ信号
  ·多种中断源可编程选择
  ·紧凑的半长卡结构
  ·100-pin SCSI-II连接器