基于DSP的FPGA卫星测控多波束系统设计
扫描二维码
随时随地手机看文章
一、引言
卫星测控多波束系统主要针对卫星信号实施测控,它包括两个方面:信号波达方向(DOA)的估计和数字波束合成。
波达方向的估计是对空间信号的方向分布进行超分辨估计,提取空间源信号的参数如方位角、仰角等。
数字波束合成也称为空域滤波,主要是根据信号环境的变化自适应地改变各阵元的加权因子,在期望信号方向形成主波束,在干扰信号方向形成零陷,降低副瓣电平, 目的是在增强期望信号的同时最大程度的抑制无用的干扰和噪声,并提取有用的信号特征以及信号所包含的信息。用于测向和波束合成的算法很多,选择合适的算法来满足系统的需求是一个重要方面。另一方面,该系统对实时性有一定的要求,要求在限定时间内完成测向和波束合成权值的计算。
本文所介绍的卫星测控多波束系统采用ADI公司新近推出的新一代TigerSHARC DSP芯片和FPGA器件相结合组成信号处理模块,利用DSP的软件编程完成测向和波束合成权值的计算,然后用FPGA器件将原始信号和权值进行波束合成,在系统设计中我们使用两片igerSHARCDSP 芯片来完成。高性能的DSP芯片保证了数据能够准确及时的处理,也构成了该系统的重要组成部分。
二、TigerSHARC DSP芯片介绍
TigerSHARC101S 是AD公司新近推出的高性能定/浮点DSP,具有极高的处理能力,它采用静态超标量结构,既有超标量处理器所具有的大容量指令缓冲池和指令跳转功能,又可以在程序执行前就把指令级并行操作用编译器预测出来,其主要的性能指标为:
(1)主频为250 MHz,即单指令周期为4 ns;有2个对等的处理单元来支持SIMD(单指令多数据)模式;
(2)系统内部有3条独立的128位数据总线,分别访问各自的2 Mbit存储空间;
(3)系统外部数据总线为64 bit,地址总线32 bit,外部寻址空间为4G字;
(4)4个8 bit的全双工链路口,各自可以独立工作。在多处理器系统中,链路口可作为处理器之间的点到点通信,组成分布式的多处理器系统。14个DMA通道,可用于后台传输;
(5)可扩展性强,共享并行总线可支持8个TS101S连在一起用于高速的数字信号处理。
由于测向和波束合成的算法计算量大,系统对信号的处理时间有要求,一片DSP不能完成任务,本系统充分利用TS101S DSP芯片的并行处理能力,采用多处理器的并行结构来完成信号的处理。?
三、算法研究
用于测向和波束合成的算法很多,各种算法各有优势,通过对这些算法的模拟和性能比较,最终选择MUSIC(Multiple Signal Characteristic)算法来实现测向,用基于线性约束最小二乘恒模算法进行波束合成。MUSIC算法的基本原理是根据天线阵中不同位置的阵元所接收到的空间来波信号的样本数据、天线位置参数和阵元的特性参数,应用现代谱估计理论和统计学理论及相应的数学运算,对来波的空间谱进行估计,并分析其能量的分布状态,以确定空间来波的方向,也就是从背景噪声中检测出空间源信号并估计出信号的参数如方位角、仰角等,这种测向技术具有在较强干扰环境下同时对同信道内多个信号的快速、高灵敏度、高精度测向的功能。算法实现流程图1所示。
基于线性约束的最小二乘恒模算法是最小二乘算法的一种改进,它克服了最小二乘算法存在的干扰捕获问题,利用线性约束的方法对初始权向量进行优化,使之在迭代过程中可以较快而准确地收敛于我们所期望的信号,并且不受信号功率大小的影响。该算法收敛速度快,输出信号的信干噪比可以接近理想值,并且对幅相差不敏感,通过对阵列信号进行算法仿真,最小二乘恒模算法性能可以达到系统需求。算法的流程如图2所示。
[!--empirenews.page--]
四、DSP模块设计
1.DSP模块功能
系统使用一个C尺寸VXI标准机箱,插槽包括0槽、DSP模块和波束合成模块。DSP模块负责测向和波束合成权值的计算,波束合成模块将原始数据和权值进行波束合成,模块之间的数据交换使用LBUS。控制终端(微机)通过VXI总线给DSP模块发送命令,DSP模块以外部中断2的方式响应接收命令并实现控制中断的对系统的控制,命令格式由内部协议规定。
根据系统需求,DSP模块要完成以下6个功能:
(1) 接收原始数据和合成结果
数据采集部分是由波束合成模块完成的,DSP模块定时器每500 ms接收一次原始数据和结果数据,并在500 ms内完成测向和波束合成权值的计算。数据交换按照两个模块制定的内部协议来执行。
(2)自动跟踪
系统初始或一般状态为自动跟踪状态,来波的初始方位区域已给定,DSP模块每500 ms测向一次从而保证了系统能够紧跟信号来向。
(3)多次测向
考虑到实际信号中存在的干扰和误差,取多次测向中的平均值来作为实测方向。
(4)指定来波方向
指定来波方向后直接计算波束合成的权值,此时不利用接收的原始信号而是自己产生信号来进行波束合成权值的计算。
(5)显示通道波形或幅相差
DSP板将幅相差的数据回传给控制终端后并在终端计算机上显示。
(6)显示合成结果
DSP模块将波束合成的权值传输给波束合成模块,波束合成模块将权值和原始数据合成后回传过来并在控制终端上显示。
DSP模块程序框图如图3所示。
2.DSP模块结构
接收卫星信号的阵列天线为6×6的面阵,多通道接收机完成信号的采样,再经过数字下变频,送到处理单元的是36个通道的I、Q两路共72路数据。由于阵列信号的数据量大,算法也比较复杂,我们需要使用2片TS101S芯片并行处理来实现。
并行系统的互连结构包括2种方式:共享存储器结构和分布式结构。共享存储器结构的连接方式是将所有的处理器都连到一个通道上,该通道一般是一种背板总线(如VXI总线),它既可以作为处理器间的通信媒介也可以作为处理器和共享存储器间的数据通信。这种结构数据传输的带宽远远大于直接连接的通信端口,但是存在着总线竞争问题,随着处理器数目的增加,处理器平均的总线带宽会降低,影响数据吞吐量。分布式结构处理器之间通过链路口进行直接的数据传输,链路口在处理器之间提供了高宽带的点对点通信。这种连接完全为了处理器之间的通信,但是在数据传输时会占用其他DSP芯片的内部资源。
TigerSHARC DSP芯片硬件上可以同时支持这两种并行体系结构,前者通过共享外部地址数据控制总线方式实现,后者通过DSP间的专用的链路口点对点的互连实现。本文所设计的DSP模块结构从通信网络的连接关系来看,既是共享总线系统,又是分布式系统,两片DSP芯片的外部地址总线、数据总线、控制总线直接相连,并且一起通过总线接口连接到VXI总线上,实现和其他模块的数据通信。由于每片DSP内部有6 Mbit的双口RAM,因此不需要外部数据存储器。DSP A和DSP B的链路口也直接相连,两片DSP可以通过链路口交换数据。DSP模块程序采用EPROM方式引导,两片DSP共用一片548K×8bit的FLASH DSM2150作为程序存储器。DSP模块框图如图4所示。
[!--empirenews.page--]
整个DSP模块的处理时间分为3个时间段,分别为从缓冲中读取数据时间、测向时间和波束合成权值计算时间,其中主要的开销是测向的时间。为了使DSP模块具备更高的效率,必须根据该模块的结构和Tiger DSP芯片的性能合理分配任务。由于主要的开销是测向算法,所以解决好测向的并行算法是尤其重要的。在MUSIC算法中,判断出信号个数后要分别对各个信号区域进行峰值搜索,最后锁定信号来向,系统最多可测4个不同来向的信号,因此将峰值搜索的区域划分后交给两片DSP同时进行搜索,可以节约大量的时间。测向和波束合成权值的计算不能同时进行,DSP A通知 DSP B进行波束合成后又可以返回去从缓存区中读取数据,此时DSP B计算波束合成的权值,这样又大大提高了并行度。控制终端对DSP模块的命令是通过外部中断读入,在执行控制终端的命令时将定时器时钟关闭。
DSP模块的程序框架用C语言来构建,在C中插入汇编来提高运算效率,并充分利用TigerDSP芯片双处理器核的SIMD结构,为了更好地对整个的程序进行优化,使用开发软件中的工具Linear profiling 分析各个子函数所占用的时间比例,从而优化程序的瓶颈。并行的系统设计和一些优化措施使DSP模块的运行时间能够满足系统设计的需求。
3.DSP模块设计的特点
在卫星测控多波束系统DSP模块的设计中我们考虑了多方面的因素,可以归纳为以下几个特点:
首先,高性能TigerSHARC DSP并行结构保证了系统的性能,系统要求在500 ms内完成最多4个来波方向的测定和波束合成,使用两片Tiger SHARC DSP并行工作,在300 ms内就可以完成,使得系统有充裕的时间去响应控制终端的命令。
其次,性能优越的测向和波束合成算法保证了系统的稳定工作,测向的精度保证在0.5°范围内,信号经过波束合成后,将噪声信号加以抑制,信噪比有了很大的提高。并且在双DSP处理器中并行分配任务,提高了程序运行效率。
第三,DSP模块和波束合成模块之间以及和外部控制终端之间完备的通信协议保证了数据和命令能构准确的传输。这种通信协议是根据实际需要自定义的,并且具有一定的容错功能,保证了各个模块之间接口的正常运行。
最后,系统控制流程设计合理,我们使用了DSP的外部中断1、2、定时器中断,以及两片DSP之间通信的矢量中断来实现对系统的控制,为了使高速运行的DSP能够有效的与其他模块、外部控制终端进行通信,程序流程的设计经过了仔细的推敲,为DSP的稳定工作提供保障。
五、结束语
本文讨论了卫星测控多波束系统DSP模块中算法的并行实现以及并行处理任务的分配,采取了一系列措施优化DSP模块的整体程序,并应用了模块化的思想,结构设计合理,能够满足系统的需求。