双频星载雷达高度计控制处理单元设计与实现

时间:2022-02-15 10:23:57

双频星载雷达高度计控制处理单元设计与实现

摘 要:双频星载雷达高度计是一种主动式微波遥感器,有Ku和C两个波段。控制处理单元用于高精度时序控制、高速数据采集和实时高速处理,硬件主要由DSP,FPGA,A/D组成。这种基于DSP+FPGA设计不但满足整个系统对精度和处理速度的需求,同时还满足了星载设备小型化、低功耗和高可靠性的要求。

关键词:双频雷达高度计;遥感器;DSP;FPGA

中图分类号:TN959.74 文献标识码:B

文章编号:1004373X(2008)0301103

Design and Realization for the Control and Processing Unit of

Double―frequency Spaceborne Radar Altimeter

TANG Yueying,XU Ke,YU Xiufen

(Center for Space Science and Applied Research,Chinese Academy of Sciences,Beijing,100080,China)

Abstract:Double―frequency spaceborne radar altimeter is a kind of active microwave remote sensor with Ku band and C band.The control and processing unit performs the function of high―precision timing control,high―speed data acquisition and real―time processing.The hardware of control and processing unit consists of DSP,FPGA and ADC.This design based on DSP + FPGA can not only meet the requirement of precision and processing speed,but also meet the demand of small size,low power consumption and high reliability.

Keywords:double―frequency radar altimeter;remote sensor;DSP;FPGA

双频星载海洋雷达高度计是一种全天时、全天候主动式微波遥感器,他的直接测量结果是卫星到海面高度、海面有效波高和后向散射系数。方法是通过对回波的跟踪来获取海面回波,并从回波波形中提取高度、海面有效波高和后向散射系数[1]。进一步反演可对全球大洋环流及异常、海平面的变化和海面波浪场进行观测、分析和预报,还可以监测海冰和极区冰层变化[2]。

1 系统总体设计

双频雷达高度计控制处理单元功能框图见图1,主要作用是实现对海洋回波的捕获和跟踪,其中A/D单元采集来自接收机正交I/Q信号再送到FPGA内缓存,然后由DSP读到其片内DRAM中进行FFT转换和跟踪处理。

跟踪结果产生回波波形和相关的科学数据,其中高度跟踪结果送到FPGA中用来控制产生I/Q采集控制脉冲、微波开关控制脉冲、收发信号控制脉冲、功放控制脉冲;AGC跟踪结果通过FPGA控制该通道接收机的自动增益; DDS信号带宽控制也是通过FPGA送出;DSP送出的科学数据包经FPGA通过高速串行总线打包下行;DSP通过双口RAM与1553B总线双向通信。由于该设备需工作在远离地球的空间环境,要求所用关键器件均要有相应的宇航级产品。

2 信号采集

ADC选用ANALOG DEVICES公司的AD871a,Ku和C通道采集时钟均由FPGA时序控制部分产生,采集数据KuI,KuQ,CI,CQ分别存储在FPGA内部4块BRAM中,数据从A口写入,FPGA的时序控制在产生写BRAM地址时需主意考虑ADC的3个流水线延迟。DSP的数据总线、地址总线和读控制信号都连到BRAM的B口,每一组数据采集完成后FPGA内的时序控制产生给DSP的中断,DSP响应中断将数据读到DSP内部进行相关处理。

设计PCB板时为避免数字电路对模拟电路的干扰,将PCB板分区为模拟部分和数字部分,确保模拟信号在电路板所有层的模拟区内布线,而数字信号在数字电路区内布线;模拟与数字部分分别供电;模拟地与数字地分开;分割电地层时要保证布线不可跨越分割间隙。数据采集时序控制及采集数据流向见图2。实验通过加10 kHz,100 kHz,1 MHz等正弦波作为各通道的I/Q输入,用DSP的CCS开发环境直接画出采集信号的频谱,证实该系统AD采集的信噪比和动态有效位满足设计要求。

3 FPGA功能简介

本设计FPGA采用Xilinx公司的FPGA XCV600,该器件提供了各种资源用以实现用户的设计,包括可编程逻辑、可编程I/O、布线、时钟网络和SRAM。80 MHz高稳定度的频踪源通过FPGA专用时钟输入管脚输入,连接到其中一条高稳定度低漂移全局时钟分布网络[3],整个设计都用该时钟来进行同步,这样可以保证各开关控制的精度,XCV600内部丰富的寄存器资源和专用的进位逻辑非常适合做时序控制。

FPGA时序控制程序主要包括AD控制、各控制开关时序、高速串行数据传输控制等,用VHDL语言设计程序。图3是用Mentor 公司的EDA 工具Modelsim 仿真得到的符合系统需求的 C 和Ku 两通道的开关时序(不是完整的一簇)。图4是用逻辑分析仪测得的所有开关控制时序,测试时为了捕获完整的一簇发送脉冲和接收回波,逻辑分析仪的采样周期设为128 ns,测试结果证明时序逻辑正确。再通过设置逻辑分析仪的采样周期为4 ns,测量小的时间范围,看各控制开关的相互关系,证实控制精度也满足系统要求。

XCV600内部有24块4 096 b的同步双口RAM,可用于存储两通道I/Q共4路AD采集值,另外还用他构造FIFO,接收由DSP并行发送来的需通过FPGA打包下行的科学数据包,FIFO的输出经并串转换,并与产生的同步时钟一起送到单端到差分的驱动芯片,经此送到卫星的公共系统。

选用该型号FPGA主要原因就是该器件的可编程I/O的LVTTL接口电平是5 V兼容,使他可以直接与5 V器件相连。而且这种基于SRAM的FPGA可实现在线重构。

4 DSP C6701功能简介

DSP选用TI高性能32位浮点DSP C6701,其主频可达167 MHz,8个功能单元,包括4个定浮点ALUS,2个定点ALUS,2个定浮点乘法器,这8个功能单元可同时工作,运算速度高达1 GFLOPS。片内1 Mb SRAM分为64 kB DRAM和64 kB PRAM/Cache。处理单元采用超长指令结构(VLIW),内部总线是一种改进的哈佛总线结构,对内部DRAM每周期能完成2个64 b的CPU访问和一个32 b的DMA访问。由于片内有大容量的RAM,经过仔细的分析测算,可省去对片外高速RAM需要。

C6701作为整个系统的核心,主要完成以下功能:初始化系统状态,控制和监测FPGA的配置,对经FPGA控制的Ku 和C 通道I/Q采集的数据进行FFT变换和实时跟踪处理;将处理完的结果再传到FPGA用以调整控制时序及AGC等;打包科学数据并发送到FPGA;通过一个双口RAM与星上公用系统通信。

本设计中复数FFT和复杂的实时跟踪处理由DSP的CPU核完成。实时跟踪处理可以分为五个状态:初始自检、搜索、捕获、跟踪和记忆,当处于正常功能运行时,整个系统的运行是一个状态转换、进程激活的机制。为满足陆地、海冰等不同复杂环境的观测要求,双频高度计使用了OCOG (OFFset Center of Gravity)算法,OCOG算法生成的误差信号还要经过α―β滤波器才能得到跟踪结果。本系统是双频雷达,共用一个处理器,且脉冲重复频率很高,DSP的工作时序很紧,必须最大限度地利用8个功能单元,使用软件流水线,尽量让程序无冲突的并行执行,才能满足系统需求。256点复数FFT是雷达信号处理的重要工具,也是最耗时的运算,经测试需用时3 696个时钟周期,设计用132 MHz主频,即28 μs便可完成,可以满足系统需求。

5 FPGA与DSP协同工作设计

5.1 接口设计

DSP利用CE2空间将FPGA作为一个外部SRAM,通过其外部存储器接口EMIF与FPGA异步通信,接口设计见图5,通过FPGA发中断来控制其时序与DSP程序进程相对应。

在本设计中由于C6701没有专用的通用输入输出端口,因此用他的定时器输入输出(TINPxTOUTx)代替。由于该系统用于星载设备,需工作在空间高辐射环境中,在上电时可能遭受单粒子功能中断(Single―Event Functional Interrupt,SEFI)导致配置失效,加固措施是采用监测电路,当配置发生错误时,通过重新配置来恢复系统。具体方法是系统上电时DSP处于RESET状态,TOUT1为低,将此连到FPGA的/PROG脚,FPGA保持在清除状态。DSP开始工作后,通过软件置TOUT1为高电平,此时FPGA开始配置,DSP通过TINP0监测FPGA的DONE是否在一定的时间内变为高,如果没有,说明FPGA未配置成功,DSP再置 TOUT1为低电平一定的时间后再置高,FPGA重新开始一次配置。

5.2 DSP与FPGA数据通信

DSP与FPGA之间大量的数据读和写由DSP的DMA来完成,几乎不占用DSP内核CPU资源。DSP与FPGA异步通信需在满足信号的建立和保持时间的条件下根据器件的数据手册仔细计算出DSP的CE2空间异步读和写的Setup/Strobe/Hold周期数并在软件中设置[4],使之尽可能快的读写,少占用总线、DMA和CPU资源,又同时保证读写的可靠性。I和Q的采集结果分别放在32 b的数据总线的高16位和低16位以同时读取(见图5),每次FPGA控制采集完一组I/Q数据后就向DSP发中断,中断事件触发DSP的DMA,将这组数据读到DSP的内部DRAM中,DMA传输完成后给DSP的CPU发中断,CPU开始对这组数据处理。

6 PCB板信号完整性(SI)分析

本设计使用了高速DSP C6701,指令周期只有6 ns。这样高速的DSP可保证双频高度计高速数据处理的需要。虽然本设计电路板内器件间信号工作频率不高,但是由于C6701输出信号的上升沿很短,由此带来了信号完整性问题。根据传输线理论,传输线上阻抗不匹配会引起信号反射(振荡衰减)。当传输线的长度超过驱动信号上升沿有效电气长度的1/6时,就需要端接[5]。

式中L为传输线线长,Tr为源端信号的上升时间,tpd为传输线上每单位长度的传输延迟。

以常用FR―4做PCB,可以计算出用微带线传输且L≥03 in,带状线传输且L≥023 in时,就必须使用端接技术,实际布局布线时传输线线长都会大于这个值。图6就是根据该设计的实际情况在未作端接处理时源端(C6701数据线A0)与负载端(Bx)信号的波形,由于是源端阻抗不到10 Ω,而传输线阻抗约60 Ω,阻抗不连续造成信号反射,导致负载端有高达17 V的上冲、大于1 V的下冲和震荡,还有可出现多次跨越逻辑电平门限导致功能紊乱。

由于C6701DSP带的负载较多,布局比较困难。设计中借助EDA仿真工具HyperLynx,用基于器件的IBIS模型进行仿真,寻求最佳布局方案和综合使用各种端接策略,对个别信号在布局布线后再进行后仿真,在PCB板制板之前分析验证信号的完整性问题。

7 结 语

本文论述的控制处理单元在双频雷达高度计预研项目中完成了电性样机,已经经过验收测试,完全满足系统要求。目前已经转到星载型号任务初样件的研制阶段。

这种FPGGA+DSP结构,可以作为通用的星载高精度控制和高速数据处理平台。但是作为星载设备,还需更多地关注其可靠性,尤其是XCV600这种基于静态RAM的FPGA构架,用于空间高辐射环境易发生的单粒子效应(SEE)如单粒子翻转(SEU)等导致失效模式,需考虑抗辐照加固措施,这在目前正在进行的型号初样件研制中将着重考虑。

参考文献

[1]许可,董晓龙,张德海,等.HY[CD#*2]2雷达高度计和微波散射计[J].遥感技术与应用,2005,20(1):89―93.

[2]Ridley J K,Partington K C,A Model of Satellite Radar Altimeter Return from the Ice Sheets[J].Int.Remote Sensing,1988,9:601―624.

[3]Xilinx Inc.VirtexTM 25 V Field Programmable Gate Arrays,2001.

[4]Texas Instruments.TMS320C6000 EMIF to External Asynchronous SRAM Interface,2001.

[5]Howard Johnson,Martin Graham.High―Speed Digital Design.

作者简介 唐月英 女,1966年出生,高级工程师。主要研究方向为星载微波遥感器实时信号处理。

许可男,1967年出生,研究员。主要研究方向为星载微波遥感器系统研究。

于秀芬女,1980年出生,助理研究员。主要研究方向是嵌入式软件研制。

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。

上一篇:基于单片机的瞌睡感应报警系统 下一篇:中文图形LCD上位机程序设计