|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
摘要:为了提高系统对数据的采集速率,提出了一种基于FPGA的高速数据采集系统。利用FPGA实现对12bit的A/D转换器ADC12D800的控制,使用A/D转换器的1.6Gsps双沿采样工作模式来完成对400MHz以下高频信号的数据采集。把采集到的数据传递给FPGA,FPGA通过设计数据存储方式使数据得已缓存,来降低高频数据传输速率,使数据能够经USB传至PC机来实现高频信号地实时采集与存储。实验结果表明本系统可以实时、高效地完成数据的采集与存储,并且可广泛应用到雷达、通信、电子对抗等领域。$ I8 W: \' J3 h' l, N' v
3 }' |4 P' t& d1、引言
% w9 P# e! ~' @随着信息产业的高速发展,数字信号的获取与处理得到了越来越多的应用,而模拟信号频率的增加使得数字信号的实时获取存在一定的难度。
2 K) E; A: p; }4 l2 u5 W4 ]本系统采用FPGA作为核心模块,通过时钟来控制高速、高精度AD采样芯片进行数据采集。在达到高速数据采集要求的同时降低传输速率,保证采集与处理的实时性,并在体积与速度方面灵活适用,使研发和制造的成本降低[1-3]。* U1 D+ o" Q, u; S" [
2、系统总体设计$ G) D9 c+ R3 C) r1 ~7 g' N }. u |
信号采集系统总体由FPGA处理器作为核心模块,其通过时钟控制AD采集以及FIFO存储。高频的正弦信号经信号调理模块转换为差分信号,由FPGA内部时钟经锁相环芯片倍频后提供的差分时钟控制高速采样芯片ADC12D800[4]进行采样。采样数据在FPGA内部进行多级FIFO缓存存储并且降低数据的传输速率,最后经USB总线传送到PC机。其结构框图如图1所示1 b/ n0 V, {# M6 C3 I# Y' P
( L3 ]) w% b6 w/ X q
: I( y8 n% M) H3、硬件设计
( A9 R* h, d- C& M5 l i# ?1 z3.1信号调理模块
1 o/ k# K% V& J* r一般采集信号为单端高频信号,而ADC12D800要求差分模拟信号输入,所以要求在ADC的前端进行单端信号到差分信号的转换。TI公司的THS4509如图2,它是一个宽带、低噪声、低失真全差动放大器,电源电压在3V~5V之间,根据输入信号的幅度范围来设置其参数获得差分信号。
$ W3 b; _0 m2 Z; ]/ h" M/ K
+ i; ~: U! o8 |5 V6 \- `' [+ z7 Y
0 s; m; ~ J! N9 u# W* Z+ j3.2 AD转换模
5 M0 d2 I' J6 v; ?$ |& cADC12D800 是TI公司的高速双通道模数转换芯片,其芯片框图如图3所示,拥有12位分辨率、单沿采样800Msps/双沿采样1.6Gsps、差分时钟与差分信号输入、1:2或1:4多路分配器LVDS输出等功能。$ v N D9 \2 t+ v9 f8 ]
8 S. [/ f( K" Q2 a1 n# `
本系统利用该芯片的双沿1.6Gsps采样,1:4多路复用[5],由FPGA提供CLK+/CLK-差分时钟输入,采样时钟CLK在上升沿和下降沿同时对输入的模拟信号进行采样,采样点按照DQd、QId、DQ、DI四路的顺序依次载入,这样一个输出时钟周期内有四点的采样值。其时序如图4所示3 h) G- J. X- ~+ e
6 B; t% o" q( k$ @ a8 l
# n+ u( d* |; b a# o$ z% R
3.3 FPGA主控制器5 q" ^8 V7 P/ t/ z0 D
本系统选用的是Xilinx Virtex-4芯片。Virtex系列芯片是Xilinx的高端产品,占据了FPGA供应商的主导地位,在电信基础设施、汽车工业、高端消费电子等方面有举足轻重的作用[6] 。其中Virtex-4系列内部集成了多种具有新功能的结构模块,以此来获取更大的吞吐量,更高的集成度和更低的功耗,从而在使整个FPGA的性能达到一个全新的水平。
1 P B1 G9 T3 b) K, N) zFPGA在本系统中的主要作用是:通过时钟控制锁相环芯片为采样芯片ADC12D800提供800MHz的差分时钟,经采样传输过来的多通道数据,经过FPGA内部多级不同位数的FIFO缓存,其中FIFO读写的时钟由FPGA内部时钟控制,实现数据的重新组合,并且快进慢出,完成高速率采样,低速率传输显示。其内部工作的结构框图如图5所示" `# \( t9 H, V& _
- ], X! p8 K6 x9 ]: k# EADC12D800采样后输出四路DI、DId、DQ、DQd。每一路都是400MHz的12位差分数据,FPGA内部IBUFDS模块(IBUFDS原语的作用是将差分信号转换为标准的单端信号)可以对其进行转换,得到单端数据,再经双倍数据输入模块(IDDR)使每一路分裂为两路,这些数据经过位数扩展后,扩展成48位的数据送入位宽为48的FIFO中,48位FIFO的写数据时钟为400MHz,读数据时钟为200MHz,再以200MHz的速度写进96位宽的FIFO,以100MHz读取,从而降低数据的速率。
3 y7 Y0 Z! j& O1 J3 M0 \
) n7 S- n, e7 U R3.4 传输总线
; Q) ?) \6 F2 MPC机在对高速数据进行读取时,考虑到便携式设备对高速数据接收的问题,选择使用USB协议[7],系统选用CY7C68013A,是赛普拉斯公司推出的一款高集成、低功耗的USB2.0控制芯片。它不再受内部存储器对外部数据存储速度的影响,把USB端点FIFO与外部设备的FIFO融合在一起,实现了内外存储的“胶连接”[8~9]。 通过FPGA作为外设主控制器使数据实现实时传输并且更加高效。
: \7 X* a3 K, v7 @$ g+ ~: k! q" m- D3 u. ^# A7 V5 ?3 M. h1 [
' f4 K: _+ e( b+ ?
|
|