《电子技术应用》
您所在的位置:首页 > 可编程逻辑 > 设计应用 > 基于FPGA的成像声纳FFT波束形成器设计
基于FPGA的成像声纳FFT波束形成器设计
来源:电子技术应用2011年第10期
杨 威,赵极远,孟 蕊
(哈尔滨工程大学 水声技术重点实验室,黑龙江 哈尔滨150001)
摘要: 针对成像声纳波束形成器的特点,设计了一种基于FPGA的FFT波束形成器。整个系统采用Altera公司的DSP Builder构建,FFT波束形成器采用基2-512点DIT-FFT算法,并使用流水线技术、乒乓操作。在Altera StratixII FPGA EP2S90F784I4硬件平台上测试,30 MHz系统时钟,在17.07 ?滋s内得到512点FFT运算结果,满足成像声纳系统波束形成器要求。
中图分类号: TN911.72
文献标识码: A
文章编号: 0258-7998(2011)10-0011-02
Design of the FFT beam former of imaging sonar based on FPGA
Yang Wei,Zhao Jiyuan,Meng Rui
Key Laboratory of Underwater Acoustic Technology, Harbin Engineering University, Harbin 150001,China
Abstract: In terms of the characteristics of the FFT beam former of imaging sonar, the FFT beam former is designed by FPGA. The whole system is built by DSP Builder of Altera. The FFT beam former uses 512 points DIT-FFT radix 2 algorithm, pipeline technology and Ping-Pong operation. The system is tested in the hardware of Altera StratixII EP2S90F784I4.The system can gain the FFT results of 512 points in 17.07 ?滋s under the condition of system clock 30 MHz,which can meet the requirement of the beam former of imaging sonar easily.
Key words : FPGA;imaging sonar;FFT beam former;DSP Builder


    海洋面积占地球表面积的71%,海底蕴藏的石油、天然气等矿产资源量也远远超过陆地。由于能源危机和资源短缺日益严重,世界各国对海洋的开发利用愈发重视。水声成像技术不仅能够探测海底结构,而且相比于传统视频设备,其优点是呈现的图像几乎不受水文条件的影响,无论在军用还是民用领域,声成像技术都是未来船舶与海洋工程研究的主要技术之一[1]。
    对要求实时成像的成像声纳来说,成像速度是衡量其性能优劣的一个非常重要的标准。波束形成器是成像声纳数字系统的重要组成部分,其运算速度影响到整个系统的成像速度,因此提高波束形成运算速度是提升成像声纳成像速度的关键。相移波束形成中的FFT波束形成技术由于具有非常成熟的算法、实现结构和快速的运算速度,成为成像声纳波束形成器首选。
1 FFT波束形成器原理
    波束形成技术是指将按一定几何形状排列的多元基阵的各阵元输出,经过处理形成空间指向性的方法,目的是使多阵元构成的基阵经过适当地处理得到在预定方向的指向性[2]。
    本文采用等间隔直线阵FFT波束形成。一个N元等间隔直线阵阵元间隔为d,当接收信号为单频或窄带信号时,基阵第i号阵元的输出信号可用复数表示为:

    式(2)实际上是离散傅里叶变换的形式,因此计算一个等间隔直线阵各波束输出值就等价于计算各阵元的输出信号xi的离散傅里叶变换,可以利用这一特点对基阵输出信号作快速波束形成处理。
2 FFT波束形成器的DSP Builder实现与验证
2.1 FFT波束形成器的DSP Builder实现

    为了让成像声纳达到较高的分辨率,需要对更多的数据进行实时性处理。因此本设计要求在20 ?滋s内得到512点FFT运算结果,并且运算结果误差在1%以内。考虑参数要求,FFT波束形成器设计包括如下三部分:数据预处理部分(加权、聚焦),512点基2 DIT-FFT算法部分及数据整理部分(ABS计算)。总体框架如图1所示。

2.1.1 流水线技术
    为了提高数据处理能力,采用流水线设计方法提高系统的工作频率。FFT 模块9级运算单元(State0~State8)并行运行,这样9级数据运算时间仅为1级的运算时间。图2给出了9级处理单元(State0~State8)的DSP Builder实现结构图。

2.1.2 乒乓操作
    为了不间断处理数据,本设计采用乒乓操作控制数据流。1 024点RAM划分为PART A(addr:0~511)和PART B(addr:512~1023)两部分。某一时刻T1,向A中写入数据,从B中读取数据;下一时刻T2,向B中写入数据,从A中读取数据,按照上述次序循环写入读取数据。这样,在完成一次512点数据FFT运算后,不需要等待即可开始下一次512点的运算,实现不间断处理数据。
2.2 FFT波束形成器的DSP Builder验证
    分析DSP Builder设计的FFT运算模型与理论之间的误差,使用Simulink中函数Repeating Sequence Stair作为激励输入,实部、虚部循环输入数据[0:1:511]。激励如图3所示。用DSP Builder HIL(Hardware In Loop)模块将设计包裹在一套接口中间,编译然后下载至Stratix II FPGA EP2S90F780I4芯片进行测试,得到512点FFT运算结果,如图4所示。分析发现全部运算结果精度保持在1%以内,满足设计要求。

 

 

3 FFT波束形成器资源消耗与性能分析
    设计采用Altera公司高性能Stratix II FPGA EP2S90F780I4作为硬件实现平台。使用Altera综合与布线工具Quartus II编译设计,逻辑资源使用12%,存储资源使用17%,DSP资源使用56%。
    在编译报告时序分析结果中,查看关键路径最低fmax为31.93 MHz ,也就是系统最高运行速度可达到31.93 MHz。本设计采用30 MHz系统时钟,因此系统可在17.07 ?滋s内得到512点FFT运算结果,满足本设计成像系统波束形成20 μs以内要求。
    本文以成像声纳数字系统的设计为背景,采用DSP Builder完成了FFT波束形成器设计与验证。在Stratix II EP2S90F780I4 FPGA上测试设计,30 MHz系统时钟,17.07 μs内得到512点FFT运算结果、误差在1%以下,满足设计要求。
    与传统的FPGA设计方法(Matlab编写代码设计算法,HDL实现)相比,使用DSP Builder开发成像声纳FFT波束形成器极大地提高了设计的效率,节省了开发时间,并且当算法变动时,修改参数也更为方便、快捷。同时自主设计的FFT运算模型代替了使用FFT IP核,节省了开发成本。
参考文献
[1] 杨长根.基于FPGA的成像算法研究与实现[D].哈尔滨:哈尔滨工程大学,2009.
[2] 田坦,刘国枝,孙大军.声呐技术[M].哈尔滨:哈尔滨工程大学出版社,2000.

此内容为AET网站原创,未经授权禁止转载。