|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
随着FPGA性能和容量的改进,使用FPGA执行DSP功能的做法变得越来越普遍。在许多情况下,同一应用中同时使用处理器和FPGA,采用协处理架构,让FPGA执行预处理或后处理操作,以加快处理速度。本文说明如何将FPGA和与固定功能DSP结合起来使用,设计一个基于多普勒测量原理的非侵入式测量系统。
) {. d; }/ S# G9 k/ n p0 I 0 \, m0 O. m" p
图1:电子束聚集技术。* \& q2 b4 t G' h f) ]
8 h3 c) g# L% d8 B' e8 g) h8 r& \6 A
8 }( Z! G& d$ A+ T% J 传统上,大量的应用设计使用专门的数字信号处理(DSP)芯片或专用标准产品(ASSP)并通过信号处理算法来处理数字信息,滤波、视频处理、编码与解码、以及音频处理等仅仅是众多采用 DSP 的应用中的一部分而已。0 u( ~$ ]9 ]1 t- C+ }1 z, u
" L8 k* X: [1 u3 F B! e. L% O 现在,随着 FPGA 性能和容量的改进,以及可以在大多数 DSP 应用中看到的通用算术运算的效率的提高,使用FPGA执行DSP功能的做法变得越来越普遍。在许多情况下,同一应用中同时使用处理器和FPGA,采用协处理架构,让FPGA执行预处理或后处理操作,以加快处理速度。
2 m9 J, b& R k# q4 n! `6 } 9 Y* z0 i6 V9 o8 w
显示此种趋势的应用之一是多普勒测量系统,它可以测量固体或液体在各种环境中流动的速度。从管道中流动的油,到人的心脏中流动的血液,相对于以前的方法,基于多普勒测量原理的非侵入式测量方法可以极大地降低风险,减少成本和提高精度。一般来说,这些系统都是采用 DSP技术,将FPGA和如TI公司提供的固定功能DSP器件之类结合起来使用。
3 }0 t3 M- T$ s6 H+ h. `: S2 t! R
' Y6 x% p; f2 j6 t) h9 |1 }1 D 多普勒测量系统
# z1 o$ N, |. Q9 y/ f
* d5 c {* i9 v$ G1 i$ C2 Y) U 多普勒测量系统利用多普勒效应测量运动目标(固体、液体或气体)的速度。最著名的应用大概要算雷达枪了,交通巡警利用它检测超速汽车。: o% _: w: A4 K! T" S
, N9 Z1 l7 U' g/ i8 O2 f3 c) ^. T
在测量除汽车速度之外的其他物体的运动(例如心脏中血液的流动)时,需要进行多种测量,来确定更为复杂的流动的细节。方法之一是利用电子束聚集技术。6 N/ f; g" q( t1 w! }: r
3 k o* T/ p) `) S 在这种技术中,将使用大量探测器(许多小雷达枪)测量从发射源返回的频率。这些探测器沿抛物线分布(如图1 所示),因此从焦点返回的信号将会同时到达每个探测器。将这些信号组合起来,并对显著速度的微小波动进行少量处理,就可以确定位于焦点处的物体的速度。如果可以移动探测器来对整个关注区域进行扫描,那么这种方法效果会相当好,但是如果没有这样的条件,则可以采用另外一种技术,它可以获得同样的结果。通过插入一定的可编程的延迟,改变各个探测器的输入组合的时间,可以将焦点改变到关注区域中的几乎任何位置。例如,加入一定的固定额外延迟可以使焦点远移,而改变延迟来缩短探测器一侧的传播路径则会使焦点向该侧移动。
2 V8 D5 z" e$ I0 a
/ H' o, ^+ n$ P( t7 q' d9 R: ?8 ~ 图2 显示了如何利用可调延迟产生抛物线形效果。可调延迟功能在富含寄存器的FPGA中极易实现,并可能成为从传统DSP中剥离作为协处理器功能的一种功能。
! u9 p. i9 E% D ' W. s& x y1 R0 P" W& z/ |- v6 F
系统实现示例7 `. j+ R& {$ K8 m
8 p' }9 T$ |7 d$ P1 t. F
图 3 显示了一种系统实现示例的框图。位于图中部的 FPGA 负责产生发射器使用的输出信号。该实现采用Xilinx直接数字频率综合器IP核,可方便地产生各种波形。可以根据测量目标的不同轻松改变频率。
7 x9 ~0 {' \( ~( z) W. b% ]5 W, Y6 F7 w
$ t+ b9 K* k' t 图2:具有延迟功能的电子束聚集技术。
3 J ]9 r9 l+ k" s" k3 g5 t3 C* j) f/ V% N& R: }( D
( m# }* d- }1 D* o5 F 探测器测量返回信号的模拟值,产生馈送到FPGA的数字值。FPGA对输入信号执行部分初步滤波运算,来调整探测器的位置。然后FPGA向每个探测器数据流中插入一定可编程延迟,以实现电子束聚集功能。数据流被组合起来,一个数字滤波器负责确定信号的频率分量。这样就得到了确定焦点速度所必需的多普勒读数。) s6 a- i- W5 N" L
m g* f& M! ?# k$ H
在FPGA的内部有一个MicroBlaze软核,控制着测量过程,从而实现高层次的功能,如扫描、初始化、测试,以及诊断等。; e2 @4 x, V9 n# P6 M8 k: h
3 J- \2 N, |- v) g3 I
DSP读取和存储FPGA执行操作的结果。一旦完成一系列扫描,处理器就可以构建出一幅针对扫描区域的数字图像。可以为不同的速度分配不同的颜色(按照线性、对数或任何其他比例),并将数字图像转换成视频图像,在图形终端上实时显示或记录下来留待以后回放。利用众多可以得到的软件或工具包中的一个,还可以在处理器中轻松实现到JPEG或其他视频格式的转换, 还可以采用其他系统分割进行实验。如果实时视频处理和存储占用了处理器过多带宽,可以将算法的一部分(比如扫描数据的预处理)放在FPGA中来执行。
7 ^* x! u. O4 k9 ^ ~7 h' x " N# _# f% d3 n. p1 u2 }+ ~
测量过程的另一个重要部分是确定目标的质量。可以通过测量从焦点返回探测器的能量大小来实现这一功能。返回的能量越多,则目标越大(一般而言)。当测量的目标具有固定连贯性时(如在管道中流动的油或其他液体),这种测量效果特别好,但当系统中存在各种不同质量或反射时,测量就很困难了。
1 q" @: ?* U3 v8 \4 X
( w6 v5 b0 D) G8 H- g) f. J4 S 显然,对被测系统多些了解可以为测量过程提供一些线索。通过存储与返回信号的幅度相对应的数字值,可以为FPGA协处理器增加能量测量功能。该值也是经过了FPGA的延迟。2 _8 t! o, l1 S4 L* G- p2 ?- H
- ]" ^4 k( e; y6 b+ ]* }" p
作为选择,JPEG处理可以作为一项独立的功能通过FPGA来执行,从而使处理器留出更多时间进行数据预处理器。有许多选项可供选择,但提供一种能够快速实现不同分割的易用平台才是至为重要的。. `4 c7 `) _& D2 y* f+ ?
; f2 K( O$ K }) K6 I/ r
类似的以协处理为本的应用可以从硬件开发平台的使用中获得好处。利用硬件平台可以让您轻松实验各种系统和算法分割--将一些功能在FPGA 中实现,而另一些功能放在DSP中。DSP应用程序一般很难用软件进行仿真,因此快速创建硬件/固件/软件平台的能力可以极大地缩短开发时间。使用赛灵思工具套件中的协仿真工具,通过The MathWorks Simulink和目标硬件进行开发,是一种可以大大缩短设计时间的技巧。
- ~. W | S7 p- v8 Q6 L: ~
0 d0 j8 i* a2 H; l$ M" X6 ?# b4 P( J 图3:示例系统框图。1 `" P' w3 j: k$ T( l: Y/ U; t
% x! ^- s. ~$ p! ~0 V
Avnet DSP协处理器设计套件8 h: Q( T$ n; Q# w7 W- D
! t/ W/ v0 h' F! [. S8 ?
Avnet DSP协处理设计套件是针对以DSP为导向、同时需要使用FPGA和DSP的广泛应用开发而设计的。套件配有两块主电路板。Virtex-4评估板(如图4所示)配有 Xilinx Virtex-4 SX-FF668 FPGA、平台闪速配置PROM、扩展连接器、Cypress CY7C68013 USB2.0 控制器、国家半导体的DP83847 10/100 以太网端口、128x64 OSRAM 图形显示器、8MB闪存、32MB DDR SDRAM 以及各种用户开关和LED。第二块电路板是 TI DSP 适配器模块(如图5所示),用于在Virtex-4 电路板和各种 TI DSP评估板之间起接口作用。可以从 Avnet公司购买TI电路板,完成开发平台的构建。
8 x+ H% k! K' u- v |
|