您现在的位置是:主页 > 电路技术 > 数字电路 >


基于DSP+FPGA的高速数据采集电路设计

2020-03-23 22:37数字电路 人已围观

简介设计了采用高速 ADC、FPGA、DSP、USB2.0等模块组成的高速数据采集系统,以实现对动态应变量的采集和传输。DSP+FPGA 架构兼具了 DSP 的数据处理能力和 FPG...

  传统的数据采集系统,多用单片机或者美国国家仪器公司(nationalinstruments,NI)的数据采集卡作为硬件设备。相较于单片机作为处理器,使用数字信号处理器 (DSP)和现场可编程逻辑门阵列(FPGA)来进行数据采集、处理和传输的控制芯片,具有指令执行速度快、带宽 高、信号处理能力强大等优点,可以完成数据高速、实时的采集、处理和传输的功能。NI数据采集卡,也可以对模拟信号进行自动采集,再送到上位机中进行显示和分析,但是它价格成本较高,且体积大,实用性较 FPGA+DSP架构略差。目前,数据采集系统中,多使用 LabVIEW语言建立上位机的人机界面,实现数据采集、存储、控制等功能。但是,LabVIEW 专业性不强,功能实现上比较简单,程序的流程控制是通过画图一样的操作来完成的, 而 Qt是由 QtCompany开发的跨平台 C++图形用户界面应用程序开发框架,Qt很容易扩展,并且允许真正地组件编程,因此,建议使用 QT 开发出更专业、更稳定的用户界面。
  
  综上所述,为满足系统要求,设计了采用高速 ADC、FPGA、DSP、USB2.0等模块组成的高速数据采集系统,以实现对动态应变量的采集和传输。DSP+FPGA 架构兼具了 DSP 的数据处理能力和 FPGA 的逻辑控制能力, 可以充分发挥二者的优点,高 效的完成一个数据采集系统(更多关于DSP+FPGA的应用可参考这篇文章:《基于DSP+FPGA的数字伺服控制器设计》)。
  

  1 系统整体结构

  
  基于 DSP+FPGA 的高速数据采集系统的整体结构如图1所示。在FPGA 的控制下,一路模拟信号进入A/D 转换模块进行模数转换,得到数字信号之后在FPGA 中进行预处理。然后,FPGA 通过数据总线将数据送至 DSP中进行数字信号处理,之后再将数据通过 USB2.0接口传送到PC 上,进行实时的显示和通信控制。
  图1 系统的整体结构
  图1 系统的整体结构
  
  DSP 除 内 置 存 储 器 之 外,还 外 扩 了 FLASH 和SRAM,FPGA 外扩 SDRAM 存储器,选用超大容量的 8 M×16 位的 MT48LC4M16,可 以保存采集到的临时数据。
  

  2 系统的硬件布局

  
  2.1  高速 AD 采样模块
  
  高动态响应的FBG 应变测量装置,是将 FBG 传感器粘贴在待测大型结构体或大功率器件的表面,当应力产生,Bragg波长会发生相应的变化,此变化量,即带有传感信息的反射光会经过非平衡 M-Z 干涉仪和信号调理电路,最后由本系统对其进行采集和传输。因此,要求 A/D转换芯片的转换速度要高,而对 A/D 转换器的位数没有太高的要求。
  
  为了满足系统要求,实现数据的高速采集,高速 AD 采样模块如图2 所示,由信号输入接口、衰减电路和 AD 芯片组成。高速 AD 芯片选择8 位 AD9280 芯片,最大采样率为32MSPS。衰减电路由芯片 AD8056 构成,信号输入接口可接收的范围是-5~+5V(10Vpp),经过衰减后 A/D 芯片的输入范围为0~2V,转换公式为:
  
  公式1
  
  式中:VIN 为最前端的模拟信号;VAD 为 AD 芯片的输入信号。当输入信号为5V 时,AD 采样信号2V;当输入信号为-5V 时,AD 采样信号0V。FPGA 完成控制数据采集的功能,它与高速 AD 芯片之间的连接如图3 所示,系统中,A/D 转换器共有3路。
  图2 高速 AD 采样模块
  图2 高速 AD 采样模块
  图3  AD9280芯片与 FPGA 相连
  图3  AD9280芯片与 FPGA 相连
  
  2.2  DSP+FPGA 设计
  
  DSP即数字信号处理器,是一种具有特殊结构的微处理器,其内部采用程序和数据分开的哈弗结构,拥有强大数据处理能力和高运行速度。FPGA 具有极高并行度的信号处理引擎,有很好的实时性和信号处理并行性,用户可以对其内部的 CLB 和IOB 进行配置,使得硬件的功能可以像软件一样通过编程来控制。
  
  结合 DSP 和FPGA 的优势,设计了 DSP+FPGA 主从处理器架构,DSP 作为主处理器,读取 FPGA 缓存的采样数据,外扩大容量存储器,并且控制 USB 模块实现数据到PC 的传输。FPGA 作为辅助处理器,负责控制数据采集单元,采样数据临时的存储,与 DSP 进行数据传输,以及完成电平转换和其他时序控制等功能。
  
  DSP 芯 片 采 用  TI 公 司 的 32 位 定 点 芯 片TMS320F2812(简称 2812)。2812 的处理器速度达到了150 MHz,片内内置128K×16位的FLASH 和18K×16位的SRAM。同时,2812 带有12 位16 通道的模- 数转换器,单通道转换的时间是80ns,因此,2812 的转换速度达12.5 MSPS。但是,为了达到更高的采样速度,不使用 DSP 内置的模数转换器,而是采用 FPGA 控制的高速采样模块来采集数据。2812片上带锁相环(PLL),可用于控制倍频系数,外接振荡频率为30 MHz的晶振,再通过修改PLL 控制寄存器5倍频得到最高的150MHz时钟频率。FPGA  选 用  Altera 公 司  Cyclone-Ⅱ 系 列 的 EP2C8Q208C8芯片,EP2C8Q208C8拥有8256 个逻辑单元、8745个寄存器、2个高性能PLL 以及多达139个用户自定义I/O,完全满足本系统的设计要求。
  
  DSP 和FPGA 之间通过地址总线和数据总线连接, 如图4所示。其中数据总线有16 位;CS1 为片选线,DSP另有两路片选线 CS2 和 CS6 分别与外扩的 FLASH 和 SRAM 相连;WR、RD 分别为写使能和读使能;XINT1\ XINT2为 DSP 的外部中断线;DSP_RESET 为复位控制线。
  图4 DSP 与 FPGA 相连
  图4 DSP 与 FPGA 相连
  
  2.3  外部扩展存储器电路
  
  DSP 有外部扩展256K×16 位的SRAM 和512 K×16位的 FLASH,方便数据量过大时存储。SRAM 选用 IS61LV25616AL,原理如图5 所示,A0~A17 共18 根地址线,即 最大容量为 256 KB,另 外有 16 跟数据线为 I/O0~I/O15,片选信号 CS6、读写信号 WR\RD 分别与DSP 相连。FLASH 选用SST39VF800,原理如图6所示, A0~A18共19根地址线,即最大容量为512 KB,另外有 16跟数 据线为 DQ0~ DQ15,片 选信号 CS2、读 写信号 WR\RD 分别与 DSP 相连。
  图5 DSP 外扩SRAM 原理
  图5 DSP 外扩SRAM 原理
  图6 DSP 外扩 FLASH 原理
  图6 DSP 外扩 FLASH 原理
  
  2.4  USB 控制器电路
  
  数据采集完成之后需要传送至 PC 上显示。传统的串口传输方法只适用于系统调试和低速传输,所以本系统采用 USB2.0传输模块。USB 是近几年逐步在 PC 领域广为应用的新型接口技术,支持热插拔以及连接多个设备的特点,USB2.0传输速度可达480 Mbps。
  
  本系统设计中,这部分的控制芯片选用Cypress公司的EZ-USBFX2系列芯片 CY7C68013(简称68013)。FX2 系列芯片最主要的特点是可以通过 USB2.0的通用可编程接口为特定的应用接口编程。USB 的固件程序存储在 24LC64芯片中,上电后可自动运行,原理如图7所示。
  图7  USB2.0模块原理
  图7  USB2.0模块原理
  
  FX2 接口有 3 种方式,端口模式、通用可编程接口GPIF 控制器模式和从属FIFO 模式。考虑到68013的性能,本系统采用从属FIFO 模式,其传输速率高,固件程序较简单,外部控制器(2812)可以向对普通 FIFO 一样对 68013进行读写。

Tags: FPGA 

标签云