用DSP和FPGA构建多普勒测量系统
许多情况下,可在同一应用中同时使用处理器和FPGA,采用协处理架构,让FPGA执行预处理或后处理操作,以加快处理速度。
传统上,大量的应用设计使用专门的数字信号处理(DSP)芯片或专用标准产品(ASSP)并通过信号处理算法来处理数字信息,滤波、视频处理、编码与解码、以及音频处理等仅仅是众多采用 DSP 的应用中的一部分而已。
现在,随着FPGA性能和容量的改进,以及可以在大多数DSP应用中看到的通用算术运算的效率的提高,使用FPGA执行DSP功能的做法变得越来越普遍。
在许多情况下,同一应用中同时使用处理器和FPGA,采用协处理架构,让FPGA执行预处理或后处理操作,以加快处理速度。
显示此种趋势的应用之一是多普勒测量系统,它可以测量固体或液体在各种环境中流动的速度。
从管道中流动的油,到人的心脏中流动的血液,相对于以前的方法,基于多普勒测量原理的非侵入式测量方法可以极大地降低风险,减少成本和提高精度。
一般来说,这些系统都是采用 DSP技术,将FPGA和如TI公司提供的固定功能DSP器件之类结合起来使用。
多普勒测量系统
多普勒测量系统利用多普勒效应测量运动目标(固体、液体或气体)的速度。最著名的应用大概要算雷达枪了,交通巡警利用它检测超速汽车。
在测量除汽车速度之外的其他物体的运动(例如心脏中血液的流动)时,需要进行多种测量,来确定更为复杂的流动的细节。方法之一是利用电子束聚集技术。
在这种技术中,将使用大量探测器(许多小雷达枪)测量从发射源返回的频率。这些探测器沿抛物线分布(如图1 所示),因此从焦点返回的信号将会同时到达每个探测器。将这些信号组合起来,并对显著速度的微小波动进行少量处理,就可以确定位于焦点处的物体的速度。如果可以移动探测器来对整个关注区域进行扫描,那么这种方法效果会相当好,但是如果没有这样的条件,则可以采用另外一种技术,它可以获得同样的结果。通过插入一定的可编程的延迟,改变各个探测器的输入组合的时间,可以将焦点改变到关注区域中的几乎任何位置。例如,加入一定的固定额外延迟可以使焦点远移,而改变延迟来缩短探测器一侧的传播路径则会使焦点向该侧移动。
图 2 显示了如何利用可调延迟产生抛物线形效果。可调延迟功能在富含寄存器的FPGA中极易实现,并可能成为从传统DSP中剥离作为协处理器功能的一种功能。
系统实现示例
图 3 显示了一种系统实现示例的框图。位于图中部的FPGA负责产生发射器使用的输出信号。该实现采用Xilinx直接数字频率综合器IP核,可方便地产生各种波形。可以根据测量目标的不同轻松改变探测器测量返回信号的模拟值,产生馈送到FPGA的数字值。FPGA对输入信号执行部分初步滤波运算,来调整探测器的位置。然后FPGA向每个探测器数据流中插入一定可编程延迟,以实现电子束聚集功能。数据流被组合起来,一个数字滤波器负责确定信号的频率分量。这样就得到了确定焦点速度所必需的多普勒读数。
在FPGA的内部有一个MicroBlaze软核,控制着测量过程,从而实现高层次的功能,如扫描、初始化、测试,以及诊断等。
DSP读取和存储FPGA执行操作的结果。一旦完成一系列扫描,处理器就可以构建出一幅针对扫描区域的数字图像。可以为不同的速度分配不同的颜色(按照线性、对数或任何其他比例),并将数字图像转换成视频图像,在图形终端上实时显示或记录下来留待以后回放。利用众多可以得到的软件或工具包中的一个,还可以在处理器中轻松实现到JPEG或其他视频格式的转换, 还可以采用其他系统分割进行实验。如果实时视频处理和存储占用了处理器过多带宽,可以将算法的一部分(比如扫描数据的预处理)放在FPGA中来执行。
测量过程的另一个重要部分是确定目标的质量。可以通过测量从焦点返回探测器的能量大小来实现这一功能。返回的能量越多,则目标越大(一般而言)。当测量的目标具有固定连贯性时(如在管道中流动的油或其他液体),这种测量效果特别好,但当系统中存在各种不同质量或反射时,测量就很困难了。
显然,对被测系统多些了解可以为测量过程提供一些线索。通过存储与返回信号的幅度相对应的数字值,可以为FPGA协处理器增加能量测量功能。该值也是经过了FPGA的延迟。
作为选择,JPEG处理可以作为一项独立的功能通过FPGA来执行,从而使处理器留出更多时间进行数据预处理器。有许多选项可供选择,但提供一种能够快速实现不同分割的易用平台才是至为重要的。
类似的以协处理为本的应用可以从硬件开发平台的使用中获得好处。利用硬件平台可以让您轻松实验各种系统和算法分割--将一些功能在FPGA 中实现,而另一些功能放在DSP中。DSP应用程序一般很难用软件进行仿真,因此快速创建硬件/固件/软件平台的能力可以极大地缩短开发时间。使用赛灵思工具套件中的协仿真工具,通过The MathWorks Simulink和目标硬件进行开发,是一种可以大大缩短设计时间的技巧。
Avnet DSP协处理器设计套件
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电路板,完成开发平台的构建。
套件还包括一些设计示例和用户文档,以便新的DSP设计?r更容易上手。赛灵思网站上提供了多个赛灵思应用说明和参考设计,有些使用了可从 DSP System Generator 工具获得的赛灵思IP核,以帮助用户上手。
本文小结
对广泛的DSP应用而言,同时使用FPGA和固定功能数字信号处理器的方法是可行的。在很多此类应用中,利用专门为协处理应用而开发的硬件设计套件来开发设计原型也是可行的。Avnet设计服务部提供各种设计套件,可组合使用以创建恰好适合您的设计的硬件平台。使用基于硬件的开发平台开始您的设计。
评论