APP下载

多普勒天气雷达高速数据采集系统的设计

2015-01-05姚振东

成都信息工程大学学报 2015年2期
关键词:信号处理内核命令

宗 安,姚振东,佘 勇,李 建

(成都信息工程学院电子工程学院中国气象局大气探测重点开放实验室,四川成都610225)

0 引言

X波段磁控管接收相参多普勒天气雷达是一种较短波长的雷达,具有高性能价格比的特点,在中小尺度天气探测方面,仍然具有优势[1]。在中国,这种雷达主要应用于地市级与县级的人工影响天气作业指挥和气象灾害应急服务,也可提供专业气象服务的实时天气资料,并在支线航站(机场)的气象保障方面肩负重要作用。过去,这种雷达在较低距离分辨力(约0.5~1 km)的情况下使用,数据率相对较低,使用总线插卡式采集接口,甚至USB接口就能实现实时的雷达数据采集和对雷达的命令交互,不需要专门的高速数据采集系统。在更高的距离分辨力(不大于150 m)条件下,传递反射率因子、平均速度和速度谱宽(ZVW)3个基数据的同时,为了日后的数据分析和更好地完善处理算法,需保存字长增加的大动态范围原始复基带(I/Q)数据,总数据率超过原来的10倍,需要高速数据采集系统才能胜任。

为此,专门设计一个基于千兆以太网的多普勒天气雷达高速数据采集系统,实现较大数据率的雷达原始复基带数据和基数据的实时采集,以及雷达控制命令和状态数据(伺服控制系统、发射机系统)的交互。

考虑到Xilinx公司的FPGA器件zynq-7000具有很好的结构和资源,以及可以使用的IP Core和便于开发的优点[2-3],充分利用其片上系统(SOC)的结构特点以及可实现软件系统运行完成初始化配置和简单运算的灵活性,极大地简化系统的外部硬件构件和提高了内部硬件资源的利用率。

1 硬件系统的构建

Zynq-7000系列的型号XC7Z020器件,集成了两个双核Cortex-A9处理器内核,以及Artix-7系列的现场可编程门阵列(FPGA);并配置丰富的片内外设资源,如DDR控制器、USB控制器、SPI flash控制器、SD/SDIO外设控制器和千兆网以太网控制器等[3]。以XC7Z020为数据采集处理系统的核心器件,配置必要的外围接口和驱动硬件,形成高速数据采集系统如图1所示。

图1 数据采集处理系统硬件方块图

Cortex-A9双处理器内核有很强的处理能力,最高工作主频可达400 MHz,是处理系统(Processing System,PS)的核心;片上存储器、外部存储接口和IO外设为其优质资源。系统用到可由PS支配的千兆以太网、DDR3、SD卡以及串口终端等外部设备。其中,千兆网控制器实现一个10/100/1000Mbps的以太网MAC、兼容IEEE802.2-2008标准、工作在全双工或者半双工的模式下,实现MAC控制发送接收、地址过滤、同步逻辑和DMA控制等操作[4-5]。与控制器相连接的物理以太网芯片接口(PHY)使用88E1518,该器件在噪声环境下能以很低的功耗以每秒千兆的数据速率实现稳定传输性能[6]。异步串行接口UART使用USB转UART芯片CY7C64225,在计算机中安装驱动后就可以通过USB接口对其进行异步串行数据交互。SD卡和DDR3分别用于存储程序和数据。

配置的ADC采集模块用于输入雷达中频信号;RS232隔离与驱动模块用于和雷达状态控制单元通信,读取雷达收发机与电源等工作状态并控制雷达运行,同时实现内外电路的隔离;SPI-RS422隔离与驱动模块用于和雷达伺服系统通信,读取雷达天线(座)方位俯仰与状态信息并控制天线运动,同时实现内外电路的隔离。

FPGA中包含资源丰富的可编程逻辑PL(Programmable Logic),包括可配置逻辑块、乘法器、时钟管理单元、48位的累加器和预加器、大量的随机存储器(RAM)等,为数字中频接收机和天气雷达数字信号处理以及相应接口提供足够的硬件资源。

2 雷达数据采集

雷达的工作是边扫描、边采集、边处理和边传输的连续不间断过程,在雷达角度和距离分辨力的前提下,数据量极大,这就要求采集系统必须具备稳定可靠的高速传输性能。

2.1 高速通带采样

ADC采集模块采用16位250MSPS采样率的中频(IF)采样模数转换器AD9467,在最高中频170 MHz、全量程范围2.5 Vp-p时,具有75.5 dBFS的信噪比,适合天气雷达高动态范围需要,输出兼容LVDS电平,性价比高。

对于1 uS发射脉冲,30 MHz雷达中频信号的带宽为1 MHz,属于窄带信号。根据仙农通带采样定理,可使用欠采样技术以降低采样频率。但是,考虑到过采样及抽取增益的优势,采用100 MSPS的过采样率进行通带采样,处理后的采样率为1 MSPS,获得20 dB的处理增益,信噪比相应提高20 dB,不考虑其他处理,系统实际动态范围将超过95 dB。采样后,获得100 MSPS的数字中频信号。

2.2 数字下变频

由100 MSPS相同频率的数控振荡器(Numerically Controlled Oscillator,NCO)产生复中频本振信号(正余弦各24位),与输入的数字中频信号混频(相乘),完成数字下变频(Digital Down-Conversion,DDC)功能。

由基于积分级联梳状滤波器(Cascade Integrator Comb filter,CIC)的多次抽取电路完成对下变频后的复基带信号的滤波和降采样率抽取,输出各20位的复基带I/Q信号,如图2所示。此过程完成后需要进行磁控管发射微波信号的随机初相校正。

图2 数字下变频示意图

2.3 信号处理与信息提取

信号处理主要实现地物和超折射杂波的抑制,以及ZVW参数的估计等,其他任务留给雷达系统的主控计算机完成。

由于地物和超折射杂波的低频特性,可采用高通滤波器进行抑制。但是,如果这样做,会导致天气回波低频成分损失。目前普遍推崇频域高斯模型自适应处理(GMAP)具有原理上的优越性,能最大限度地补偿天气回波信号损失。然而,由于采样时间不足,从时域到频域的变换将产生失真,且频率分辨力不够,使其几乎失去应用意义。基于时域高斯模型自适应处理(Gaussian Model Adaptive Processing in Time Domain,GMAP-TD)的方法才可兼顾杂波抑制的性能并保证天气回波信号质量[7]。通过FPGA的PL实现这些可选方法。

ZVW参数估计可通过时域脉冲对处理(PPP)或频域(FFT)算法实现。前者可实现通过参差重复频率缓解速度模糊的工作模式;后者则需要改为双(或多)批重复频率缓解速度模糊的工作模式,而这种模式存在天线扫描目标变化问题,且时频变换的原则性问题依然存在。因此,仍使用PPP主流算法。

等效反射率因子Z(dBZ)的计算见公式(1),Pr为雷达测量到的平均回波功率(dBm),R为回波距离(km);LA为路径衰减(线性表示);C为雷达常数,通过公式(2)计算得到。

式(2)中,各变量及其量纲如下:雷达常数 C(mm6/m3),波长 λ(cm),发射脉冲功率 Pt(KW),发射脉宽τ(uS),馈线损耗LT、天线发射接收增益GT、GR(线性表示),方位俯仰波束宽度θ、φ(度)。

采用参差重复频率缓解速度模糊的工作模式,其平均径向速度V可由公式(3)计算[8]。

2个交替脉冲间隔τl和τh选择5∶4比率,θτ为对应τl脉冲间隔的两脉冲回波的1阶相关 ^Rl(τl)的相角,θh则为对应于 τh的1阶相关 ^Rh(τh)的相角。由此,根据相应的0阶相关功率谱 ^Sl和^Sh,可以估算回波速度谱宽,如公式(4)。

通过处理器中的PL实现天气雷达的ZVW参数的估计。

3 命令与状态的交互

命令与状态的交互主要通过2个串行接口完成,分别使用SPI同步串行协议和UART异步串行协议。

3.1 SPI通信的FPGA实现

SPI同步串行通信接口(RS422电平标准)用于和伺服控制系统通信,通过数据采集处理系统的中介,由千兆以太网至主控计算机完成天线的角码、转速、工作状态等数据的传送,并接收控制命令。

伺服控制系统通过天线座及其上安装的旋转变压器获取天线方位、俯仰角度的电信号,最后转换成数字角码的形式,完成轴角信息采集。由此方可实现天线的定位与扫描。

SPI工作于主从模式,时钟4 MHz,字长16位,伺服控制系统为主机,数据采集处理系统为从机。SPI接收到的数据经由PS中的Cortex-A9周转,以存储缓冲方式匹配时钟差异。SPI接口的接收模块中,设有接收数据长度计数器,计数值锁存于寄存器数组中;每次PS中的应用程序读取完接收数据后,将接收寄存器数组及接收长度计数器清空。发送模块中,设有发送始能信号和发送数据长度计数器时钟信号;当发送始能高时,长度计数时钟的上升沿将输入的数据锁存到寄存器中,发送数据长度计数器加1;当发送始能信号低时,开始发送数据。

3.2 UART通信的FPGA实现

UART异步串行通信接口(RS232电平标准)用于和收发系统通信,与SPI相似,完成收发机的工作参数/状态、环境参数、开机及发射时间累积等数据传送,以及接收计算机对雷达及收发机的控制命令。

UART由波特率发生器、接收和发送3个模块构成。类似代码较多,这里从略。

4 雷达数据传输

天气雷达数据量大,要实时传至主控计算机。千兆以太网能较好地满足这种极高的传输速率要求。FPGA中以Cortex-A9作为控制器,设置、调度和使用物理以太网接口芯片88E1518,实现高速传输功能,完成雷达数据采集过程。

4.1 UDP通信协议及其socket类实现

TCP/IP网络通信协议,具有兼容性强、易于实现,成本低的优点。该协议含链路层、网络层、传输层和应用层共4层。链路层数据链路层是负责接收IP数据包并通过网络发送,或者从网络上接收物理帧,抽出IP数据包,交给IP层。网络层对完成数据包分组以及协议实现;传输层用于格式化信息和数据的可靠传输,应用层完成特定功能的处理程序[9]。

传输层协议有2种:传输控制协议TCP和用户数据报协议UDP。TCP协议是面向连接的可靠性数据传输协议,UDP通信协议是面向数据报传输层,设计中使用UDP协议传输,其数据报及封装如图3所示。一个UDP数据报由首部和数据2部分组成。首部由源端口(发送端端口号)、目的端口(接收端端口号)、长度(包括报头和数据部分在内的总字节数)、校验和4个域组成,每个域占2个字节。UDP数据报封装之后,传送至IP协议层;IP协议层将整个UDP数据报作为数据,添加IP头后传送至网络层;网络层添加帧头和IP数据组合成一帧数据传输出去。

图3 UDP数据报及封装示意图

套接字API是专门用于网络通信的API函数,通过调用相关的函数就可以完成数据通信。套接字API中常用的系统函数有:套接字创建函数socket、连接函数connect、IP地址与端口绑定函数blind、发送数据函数 sendto、接收数据函数 recvfrom 等[10]。

UDP通信网络在linux环境中设置的关键代码如下:

查询方式接收数据时存在一个致命弱点,即程序运行到socket网络通信的接收函数时,若没有接收到数据,程序将持续等待,直到有数据接收到为止。这将导致程序处于等待状态而不能及时响应其他处理任务,出现“假死状态”。

4.2 数据格式

数据采集板与计算机之间的通信使用十六进制、“标识码+数据”的分类格式,通过判断后形成相应的命令。计算机发送的命令分为3大类:数据采集类、伺服控制类和发射机系统控制类。

数据采集标识码长度为6个字节:SCNdBz,主要向计算机传回标识码、伺服方位、俯仰角度、以及经过信号处理之后的回波数据总共1006*16 bit,共要传送6组数据约96 kb。这些数据要在1 ms以内传输完毕,传输速度要大于96 Mbps。

数据采集命令分有、无杂波抑制,有、无噪声剔除等。数据结果分等效反射率因子、平均速度及速度谱宽等。命令共有13种,常用4种。伺服控制标识符有24种,长度为4个字节,包括定位、自检、RHI扫描、PPI扫描等操作。发射机控制标识符十几种,长度也为4个字节,包括开发射机、开高压、开灯丝、关灯丝、关高压、发射机状态信息等操作。

这些命令格式很相似,以数据采集命令“SCNdBz”为例作一表述,这里S代表采集回波,C代表有杂波;N代表有噪声,dBz代表等效反射率因子,数据格式见表1。

表1 数据格式

4.3 启动文件制作

数据采集处理系统有调试时的JTAG启动和运行时的SD卡启动2种方式。SD卡启动的工作模式,开机时,由ARM完成对FPGA配置。SD卡启动过程如下:

(1)上电后,烧写在BootROM中的程序启动,初始化芯片,读 SD卡第一分区,寻找 Boot.bin文件,Boot.bin中须包含FSBL(First stage boot loader)程序。

(2)FSBL初始化采集板。如果提供了bitstream文件,初始化FPGA之后Boot.bin中第二块代码将在CPU中运行。

(3)SSBL接管CPU,做一些准备工作之后启动Linux内核,内核将加载设备驱动,启动文件系统等。

(4)内核启动完毕后,用户方可使用操作系统,如运行应用程序、修改文件等。

因此,要使高速采集系统正常工作就需要bitstream文件、FSBL程序、U-Boot、内核镜像文件、文件系统等文件[11]。

4.3.1 FPGA的配置文件及启动文件

高速数据采集后的信号处理、SPI通信和RS232串口通信都是在PL中实现,这些使用verilog语言实现的功能模块要添加到包含PS和PL的嵌入式系统工程中,将PL中的处理模块以用户自定义IP核的模式加载在工程中,作为PS的外设,通过AXI4通信总线相连。工程创建过程如下:

(1)在Xilinx Platform Studio开发环境中创建一个Base System Builder工程,设计中使用官方提供的带有千兆网口、HDMI等外设配置的工程,并将除了千兆网以外的其他外设全部删除。

(2)在工程中添加用户自定IP核:添加SPI核和RS232核时,在选择文件类型时只选择添加HDL文件即可,但添加信号处理模块的IP核时,需要选择添加网络文件选项。本设计中的三个用户自定义IP核均使用AXI-Lite总线的从模式,与PS交换数据使用寄存器方式,且最大寄存器个数为32个,每个寄存器的位宽32 bit。

(3)在工程界面中的IP Catalog对话框中的Project Local PCores下的User下将显示所用用户自定义IP核,双击每个自定义IP核名称即可将IP核添加到工程,在选择ARM处理器时选择处理器0中。添加完用户自定义的IP核之后,需要对各个IP核相关文件修改,主要有:修改MPD文件,添加端口;修改用户逻辑的顶层文件,完成端口映射以及功能模块的顶层例化;在工程中的port标签下修改端口连接,将端口映射到PL部分的外部端口上;在Addresses标签下可修改IP地址,系统使用系统分配的地址;最后修改ucf外部端口映射文件[10]。

(4)添加并修改自定义的IP核后,先编译综合生成PL的配置文件bitstream文件;其次点击export design调用SDK软件并自动加载生成的beatstream文件,创建ZYNQ FSBL工程,编译生成FSBL启动配置文件;最后将FPGA配置文件、FSBL启动配置文件、设备文件u-boot.elf文件一起,使用创建ZYNQ启动文件(Creat ZYNQ Boot Image)工具生成系统启动文件Boot.bin。系统启动的u-boot文件需要在linux环境中创建,详见文献[10]构建嵌入式Linux系统中的内容。

4.3.2 设备树及内核镜像文件

内核镜像文件以及设备树文件的生成需要在linux操作系统中完成。为方便起见,在Windows开发环境中安装的VMware虚拟机系统中安装Ubuntu 12.04版本的linux操作系统,并将官方网站下载的适用于Zedboard平台的linux内核文件解压后放入linux系统中的/home目录下面[12]。

在linux内核文件中的scripts/dtc目录下的digilent-zed.dts文件进行修改,修改后使用如下命令编译:

./scripts/dtc/dtc-I dts-O dtb-o./devicetree.dtb arch/arm/boot/dts/digilent-zed.dts

此命令的输入文件在arch/arm/boot/dts/digilentzed.dts,输出文件devicetree.dtb存放于当前目录下,运行完成之后产生设备树文件。

内核镜像文件的生成分配置和编译两步,可使用以下命令进行配置:

make ARCH=arm digilent-zed-defconfig

make ARCH=arm menuconfig

配置完成后,使用make命令编译即可得到内核镜像文件,至此启动所需文件已齐备。

4.4 驱动及应用程序设计

驱动程序是操作系统中的应用程序和硬件设备数据交互的桥梁,分为字符型设备驱动、块设备驱动和网络设备驱动3大类。系统的外设驱动主要是网络型设备驱动和字符型设备驱动,其中千兆网驱动程序已经集成于内核系统中,SPI、RS232串口和信号处理3个设备使用字符型设备驱动。应用程序是系统运行的灵魂,直接影响到数据传输系统的可靠性、稳健性。系统中,程序要实现千兆网UDP通信、异步串口通信和同步SPI通信,通信速度各不相同,串口通信速率为9600 bps,SPI通信速度为4 Mbps,信号处理之后的数据为96 kb。且要求1 ms内传输完毕,否则帧与帧之间存在数据覆盖,因此传输的速度大于96 Mbps。这3种通信速度和数据量大小都不同,如果只用单线程的顺序执行程序是无法实现系统的要求,要使用定时器、多线程等处理。

4.4.1 驱动程序设计

串口和SPI接收到的数据存储在一定长度的寄存器中,每个数据都有帧头,以防止数据混乱。每次读取串口数据和SPI中的数据后,将缓存寄存器中的所有数据清空。信号处理后获得视频信号数据存储在深度为1024、位宽为16 bit的双端口ROM中。双端口ROM读写使用不同的时钟,解决读写速率不匹配的问题。

以信号处理模块的驱动程序为例。信号处理后的数据存储在双端RAM中,同时设置一些控制端口。驱动中数据交换是通过总线模式进行,使用10个寄存器,其功能见表2。

表2 数据采集寄存器及功能表

字符型设备驱动程序包含设备加载、卸载以及文件操作函数。驱动程序加载时系统调用module-init宏实现模块的初始化操作,在驱动中radar-processinit函数主要完成以下工作:

(1)内核注册MISC型设备驱动;

(2)将信号处理模块物理地址映射到虚拟地址;

调用module-exit宏实现信号处理模块的驱动卸载,radar-process-exit函数完成模块的清除工作,具体实现虚拟地址释放和删除设备文件[13]。

驱动程序中定义了对信号处理处理模块的读写和打开、关闭等操作接口函数,文件操作结构为:

其中,radar-process-open 和 radar-process-release为打开和关闭操作封装函数 在 radar-processopen中完成打开设备,radar-process-ioctl函数用于对雷达处理器的写操作,通过内核函数copy-from-user实现。

radar-process-read函数实现雷达数据读取并传到应用层程序中,数据传递使用地址传输模式,而不是使用内核函数copy-to-user,具体实现代码如下:

驱动程序中读取数据通过buffer指针传到应用程序。驱动设计完成后,在linux环境中编译生成ko文件,并将其加载到内核中运行,才能在应用程序中读写硬件设备。驱动文件可使用insmod和rmsmod命令动态添加模块加载,也可将驱动编译到内核中,系统启动时自动将驱动运行。动态添加驱动的方式比较灵活,易于调试[14]。

4.4.2 应用程序设计

在Linux系统中运行的应用程序要实现数据传输和命令交互的功能,包括UDP网络通信、发射机系统控制及状态读取和伺服系统控制及角度、转速等信息获取。由于RS232异步串口通信速率较慢、状态获取不能影响其他功能的正常运行,UDP接收函数在没接收到数据时一直等待而不做其他操作,这使单线程程序无法满足设计的要求,因此使用多线程编程和定时器编程。应用程序设计使用一个主线程和两个子线程,共三个线程,UDP接收程序占用一个线程,spi接收占用一个线程,主线程中完成服务器发送的命令的解析以及相关函数的调用,线程之间通信使用变量,定时器函数用于RS232串口通信的数据读取。多线程的创建可使用 pthread-create函数[15]。

UDP网络接收函数使用一个线程,此线程中除了接收计算机中传输的数据外,还要对接收到的命令进行检测,除数据采集命令外,其他控制命令只执行一次,此线程的实现代码如下:

定时器函数用于异步串口通信数据读取,每隔一秒钟调用串口读取函数并将数据清空,更新全局变量数据,当接收到计算机应用程序的读取发射机系统状态命令时,无需等待即可将发射机的相关数据传送至计算机。

主函数完成UDP网络通信套接字创建及IP地址、通信端口绑定,定时器初始化,创建线程,打开SPI模块、RS232模块和信号处理设备,命令解析以及数据读取传送,具体流程如图4所示。应用程序设计完成之后,在linux环境中使用交叉编译工具生成的可执行文件才能在数据采集系统中运行。

图4 主线程流程图

5 系统测试与结果

一个制作完成的高速数据采集系统如图5所示。

图5 高速数据采集系统

对高速数据采集系统的测试主要分为功能测试和稳定性测试。功能测试主要有通信速率测试、伺服系统控制、发射机系统控制、数据采集测试,稳定性测试限于条件,考虑采用正常采集数据时系统连续正常工作时间长度的方法考量。

功能测试时由计算机终端应用软件发送控制命令,经信号采集板接收后传送至相应的控制分系统。经测试,数据采集系统中的千兆网通信速率容易达到640 Mbps;能准确地控制伺服系统完成定位、自检、RHI扫描、PPI扫描等控制;控制发射机系统完成开(关)高压(端接假负载,未送到天线上发射)、开(关)灯丝等控制以及发射机当前工作状态信息的回传;用信号源溃入中频信号,经采集系统的前端——中频接收机和信号处理器后的反射率因子、平均径向速度和速度谱宽等雷达基数据能实时无丢失地送到计算机中。

稳定性测试时使用计算机终端处理软件正常的控制数据采集系统连续工作168小时,其间数据采集系统没有出现数据丢失、命令不响应、系统重启等故障问题。有限时间和次数的试验,表明系统在多普勒天气雷达数据采集传输中的适用性;在实际应用中,还需考验其抗干扰能力等环境适应性以及长期稳定可靠工作等性能。

6 结论与展望

多普勒天气雷达数据采集系统是以Xilinx公司的具有SOC结构的FPGA器件zynq7000芯片联合千兆以太网物理芯片88E1518实现硬件结构,通过内嵌处理器和嵌入式系统,运行软件配置和操作调度来完成大量的数据传输和命令及状态交互的。通过FPGA逻辑资源和内嵌处理器的软件运行,系统的功能可以进一步增加;由于软硬件的“可编程”特性,系统也可用于其他需要高速数据采集功能的场合。

采集系统同时具有天气雷达信号处理的功能。中国有望逐步吸收发达国家已经出现的双波长、双偏振、多普勒天气雷达(Dual-Frequency Dual-Polarized Doppler Radar,D3R)先进探测技术,其处理的数据量和复杂程度将大为增加,“硬件处理-高速传输-计算机处理”的方式将经常性地被采用,基于千兆以太网的采集系统的结构将极为有用。而基于无线千兆以太网的构思,对雷达系统的连接简化和维修维护将带来更大的便利。

[1] David McLaughlin,David Pepyne,Brenda Philips,et al.Short-Wavelength Technology and the Potential For Distributed Networks of Small Radar Systems[J].Bull.Amer.Meteor.SoC.,2009,90:1797-1817.

[2] Xilinx.Inc.,A Generation Ahead for Smarter Systems:9 Reasons Why the Xilinx Zynq-7000 all Programmable Soc Platform is the Smartest Solution[BE/OL].http://www.xilinx.com/publications/prod-mktg/zynq-7000-generation-aheadbackgrounder.2014.

[3] Xilinx.Inc.,Zynq-7000 All Programmable SoC O-verview[BE/OL].http://www.xilinx.com/support/documentation/data-sheets/ds190-Zynq-7000-Overview.2014.

[4] Xilinx.Inc.,Zynq-7000 All Programmable SoC Technical Reference Manual[BE/OL].http://www.xilinx.com/support/documentation/userguides/ug585-Zynq-7000-TRM.2013.

[5] Xilinx.Inc.,7 Series FPGAs Memory Interface Solutions User Guide[BE/OL].http://www.xilinx.com/support/documentation/ip-documentation/ug586-7Series-MIS.pdf,2012.

[6] 朱晴,吴宁,顾薛平.基于FPGA的千兆网络数据采集系统设计与实现[J].微型机与应用,2011,30(21):53-59.

[7] Cuong M,Nguyen,V Chandrasekar.Gaussian Model Adaptive Processing in Time Domain(GMAPTD)for Weather Radars[J].J.Atmos.Oceanic Technol.,2013,30:2571-2584.

[8] M Sachidananda,D S Zrnic.Clutter Filtering and Spectral Moment Estimation for Doppler Weather Radars Using Staggered Pulse Repetition Time(PRT)[J].J.Atmos.Oceanic Technol.,2000,17:323-331.

[9] 马文星,一种考虑QoS的多媒体业务跨层设计[J].重庆理工大学学报(自然科学),2011,25(6).

[10] 王雷.TCP/IP网络编程技术基础[M].北京:清华大学出版社,2012.

[11] 陆佳华,江舟,马岷.嵌入式系统软硬件协同设计实战指南[M].北京:机械工业出版社,2013.

[12] 陈可.虚拟机在计算机实践中的应用研究[J].科协论坛,2007,(5):26-27.

[13] 陈涛,余学才,朱良销,等.信号发生模块的Linux驱动程序设计[J].化工自动化及仪表,2010(11):88-91.

[14] Digilent.Inc.,Getting Started With Embedded Linux-ZedBoard[EB/OL].http://www.digilentinc. com/Data/Products/EMBEDDEDLINUX/ZedBoard-GSwEL-Guide.2013.

[15] 陈向群,陈渝,译.操作系统——精髓与设计原理(第七版)[M].北京:电子工业出版社,2012.

猜你喜欢

信号处理内核命令
多内核操作系统综述①
只听主人的命令
强化『高新』内核 打造农业『硅谷』
活化非遗文化 承启设计内核
Linux内核mmap保护机制研究
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会
移防命令下达后