一种软件化雷达信号数据处理系统及方法与流程

文档序号:12862678阅读:1190来源:国知局
本发明涉及软件化雷达设计领域,具体来说,涉及一种软件化雷达信号数据处理系统及方法。
背景技术
::现代作战的过程中,雷达探测已经成为其信息获取的主要途径。在作战过程中,作战环境、对象和对抗手段的快速进步要求雷达系统的设计和更新也能够适应这一快速变化的节奏。传统雷达由于其功能性能与系统软硬件结构硬耦合的特点,导致其开发周期长,维护以及升级困难,而软件化雷达作为一种遵循开放式体系结构、采用商用货架化产品,能够具备一致的标准以及规范的雷达新形态。在软件化雷达中,数字后端是承载系统高效设计、功能重构、性能提升的核心。软件化雷达是指“基于开放的软/硬件平台,软件化定义系统功能”的雷达系统,系统需要严格按照雷达系统中需要的功能进行分解,通常采用“射频前端+数字后端”的系统结构,在上述背景下,本申请提出了基于cpu(中央处理器)+gpu(图形处理器)异构平台的软件化雷达信号数据处理平台。本申请基于典型雷达信号数据处理技术所包含的算法和对信号处理算法并行性的研究。典型雷达信号处理包括四个部分:数字脉冲压缩、数字脉冲积累、杂波处理、恒虚警检测。典型雷达数据处理包含了点迹处理和航迹处理。通过对现有的信号并行处理平台进行研究,结合软件化雷达特点,选择cpu+gpu异构平台实现雷达信号数据处理技术。技术实现要素:本发明的目的在于:解决现有技术存在软件化雷达框架结构限制造成的拓展性差的问题,本发明提供了一种开放式的、可重用的、开发速度快的软件化雷达信号数据处理系统及方法。本发明采用的技术方案如下:本发明提供了一种软件化雷达信号数据处理系统,包括硬件层、系统层、中间层和应用层;所述中间层位于应用层和系统层之间,为上层(应用层)提供通用服务,所述通用服务包括具有通用的协议栈和标准的程序接口,包括数据接收中间件、数据传输中间件、实时存储中间件、信号处理中间件、数据处理中间件和雷达终端显示中间件;所述应用层通过中间层搭建信号数据处理框架用于计算当前雷达数据及信号,包括射频前端数据接收、实时存储、信号处理、数据处理和终端显示。具体地,所述硬件层包括信号处理承载平台、数据处理承载平台和雷达终端显示设备;所述信号处理承载平台,用于进行密集型计算且进行雷达实时处理;所述数据处理承载平台,用于进行雷达数据处理任务;所述雷达终端显示设备,用于最终显示各种雷达回波数据。具体地,所述数据处理中间件采用inteltbb中的concurrent_bounder_queue(concurrent_bounder_queue是inteltbb里面的一个队列,用来实现数据传输中间件)。具体地,所述数据接收中间件,接收不同类型的数据;所述数据传输中间件,传输数据;所述实时存储存储的雷达数据包含存储的时间点、雷达控制字和雷达数据信息;所述信号处理中间件包含脉冲压缩、脉冲积累、杂波处理间件,在实际应用中并不限于这几种中间件;所述数据处理中间件是对信号处理模块获取到的目标参数信息进行点迹预处理、航迹形成处理;所述终端显示中间件对接收到的数据进行显示。具体地,所述射频前端数据接收线程对接收模块初始化、数据传输中间件初始化以及绑定cpu核心;所述数据存储线程将前端信号与系统时间参数一起存储;所述信号处理线程获取前端线程传输的数据,获取雷达回波信息和数据以及存储目标数据缓冲区的地址,对雷达回波信息中的雷达控制字是否改变进行判断,如果改变,对信号处理的部分中间件进行重新设置参数;所述数据处理线程,获取目标数据和雷达信息,判断雷达控制字是否改变,控制字改变,则对数据处理的接口类进行重新创建,如果控制字没有改变,得到最终数据;所述终端显示线程,显示数据处理线程传输的最终数据。本申请还提供了一种软件化雷达信号数据处理方法,包括以下步骤:步骤1:获取射频前端回波数据,通过射频前端数据接收线程获取雷达射频前端回波数据,再将数据通过数据传输中间件传送给信号处理线程;步骤2:处理信号,步骤2.1:通过信号处理线程对信号处理中间件进行初始化,并获取数据传输中间件传输的射频前端回波数据并根据射频前端数据设置信号处理参数,并调用射频前端数据至数据处理中间件再获取数据处理中间件传输的雷达回波信息和数据以及存储目标数据缓冲区的地址;步骤2.2:判断雷达回波信息中的雷达控制字是否改变,如果改变,则对信号处理中间件进行参数重新设置并计算得目标数据并传输至数据处理中间件,如果未改变,则对雷达回波信息和目标数据以及存储目标数据缓冲区的地址计算得目标数据并传输至数据处理中间件;步骤3:处理数据,通过数据处理线程获取数据处理中间件传输的目标数据并判断雷达控制字是否改变,如果改变,则对数据处理的接口类进行重新创建再处理并将处理结果传输至雷达终端显示中间件显示,如果未改变,则行数据处理并将处理结果传输至雷达终端显示中间件显示;步骤4:显示,通过终端显示线程对界面进行初始化再获取其他线程传输的信号数据处理并将处理结果进行显示。具体地,还包括步骤:通过数据存储线程获取数据传输中间件传输的数据并获取当前时间戳一起存储。具体地,所述步骤2具体为:步骤2.1.1,启动信号处理线程并调用initradardspsys接口,对信号处理中间件进行初始化,然后等待信号数据处理的start信号,当收到该信号以后,调用前端数据传输中间件的dequeue接口,获取从射频前端数据接收线程传输过来的数据;然后调用setsysparamter接口设置信号处理的参数;步骤2.1.2,分别调用传输目标数据到数据处理线程中间件的getonebuff接口和获取数字化回波中间件的dequeue接口,获取雷达回波信息和数据以及存储目标数据缓冲区的地址;步骤2.2.1,对雷达回波信息中的雷达控制字是否改变进行判断,如果改变,则对信号处理的部分中间件进行重新设置参数:调用resetparameter接口,将所有参数进行复位,然后便调用setsysparamter接口对信号处理中间件参数重新设置,再按照雷达控制字未改变时的顺序进行信号处理,首先调用setsamplesignal接口获取雷达数字化回波数据和参数,然后调用doprocess接口对数据进行信号处理,通过调用getsignalprocout接口将数据处理后得到的数据从gpu传输到内存中,然后传输目标数据到数据处理线程中间件的enqueue接口将缓冲区地址存储到队列中去,最后调用线程数据传输中间件的refreshbuff接口;如果未改变,则对雷达回波信息和目标数据以及存储目标数据缓冲区的地址计算得目标数据并传输至数据处理中间件;步骤2.2.2,通过show接口中调用信号处理中的get中间件、终端显示线程和与之对应的信号槽并实时显示信号处理中间件处理后的数据图像,循环上述操作,直到线程退出。其中dequeue,setsysparamter,getonebuff,resetparameter,getsignalprocout,setsamplesignal,enqueue,refreshbuff,read_new,gettrackinfo,data_treat,pshow,refreshbuff均为接口函数名。具体地,所述步骤3具体为:步骤3.1,启动数据处理线程并对数据处理的接口类进行创建和初始化,获取start信号后,调用信号处理后传输目标数据中间件的dequeue接口再获取目标数据和雷达信息;步骤3.2,判断雷达控制字是否改变,如果控制字改变,则对数据处理的接口类进行重新创建,控制字没有改变,则调用read_new接口,读取目标数据,再通过data_treat接口进行数据处理,后通过gettrackinfo将数据复制出来,再利用pshow接口调用终端显示的信号槽接口进行最终数据的显示;步骤3.3,所述步骤3.2中处理过程中均要调用数据传输中间件的refreshbuff接口,对缓冲区的地址进行处理。具体地,步骤4具体为:步骤4.1,终端显示线程对界面进行初始化;步骤4.2,通过connect函数将终端显示线程中的信号接收函数和槽函数连接起来,建立应用层中的其他线程;步骤4.3,获取到start信号,开始进行信号数据处理,同时对信号数据处理的结果进行显示。综上所述,由于采用了上述技术方案,本发明的有益效果是:1.本申请可以通过对系统中应用层软件模块的修改,系统可以进行重构,从而满足其他雷达系统的需求,可以根据实际应用,建立完整的雷达信号处理流程,提升了本系统的拓展性,扩大了本申请的使用范围;2.本申请中的软件化雷达信号处理方法具有通用化、模块化、参数化、跨平台移植的优点;3.本申请中系统硬件均可采用商用货架化的产品,所以本申请系统硬件模块具备有标准化、易拓展和可重构等特点;4.雷达系统中的所有处理任务都是通过软件来实现的,系统具有更强大的并行处理能力,能够完成常规雷达中的多种信号的处理;5.本申请以开放式的体系架构,注重软件和硬件的解耦,通过软件定义及参数设置快速开发雷达系统,灵活的实现资源配置、功能扩展和性能提升。附图说明图1是本发明软件化雷达系统基本组件结构;图2是本发明软件化雷达总体结构示意图;图3是本发明软件化雷达应用层框架示意图;图4是本发明软件化雷达应用层应用层框架图;图5是本发明软件化雷达应用层框架处理总流程图;图6是本发明软件化雷达射频前端数据接收线程处理流程图;图7是本发明软件化雷达数据存储线程处理流程图;图8是本发明软件化雷达信号处理线程处理流程图;图9是本发明软件化雷达数据处理线程处理流程图;图10是本发明软件化雷达雷达终端显示处理流程图;图11是本发明软件化雷达数据接收中间件接口类定义图;图12是本发明软件化雷达的雷达数据databuff结构体图;图13是本发明软件化雷达的雷达控制字radarctl结构体图;图14是本发明软件化雷达数据传输中间件结构图;图15是本发明软件化雷达数据传输中间件接口定义图;图16是本发明软件化雷达存储数据接口类定义图;图17是本发明软件化雷达信号处理部分中间件接口定义图;图18是本发明软件化雷达signaltodata结构体图;图19是本发明软件化雷达信号处理功能重构图;图20是本发明软件化雷达数据处理中间件接口定义图;图21是本发明软件化雷达trackinfo结构体图;图22是本发明软件化雷达雷达终端显示中间件接口类定义图;图23是本发明软件化雷达系统接口关系图;图24是本发明软件化雷达信号数据处理流程图;图25是本发明软件化雷达系统时序控制器结构图;图26是本发明软件化雷达系统处理系统的逻辑结构图;图27是本发明软件化雷达实施例应用层框架示意图;图28是本发明软件化雷达信号数据处理流程图;图29是软件化雷达一个脉冲重复性周期处理最大时间、平均时间、最小时间示意图;图30是本发明软件化雷达一个脉冲重复性周期处理时间图形显示图;图31是本发明软件化雷达积累32个脉冲处理最大时间、平均时间、最小时间示意图;图32是积累32个脉冲处理时间图形显示图;图33是cpu+gpu软件雷达信号数据中cpu资源占有示意图。具体实施方式一种软件化雷达信号数据处理系统及方法,具体包括:1.基于cpu+gpu的数字信息处理硬件平台对于一个硬件平台,分别需要信号处理承载平台、数据处理承载平台以及雷达终端显示设备。本申请采用基于cpu+gpu的数字信息处理硬件平台。2.基于cpu+gpu异构平台系统支撑,主要包括redhawk系统,nightstar实时编程工具,inteltbb并行开发库。3.基于cpu+gpu信号数据处理平台的中间层,具体包括:3.1数据接收中间件,实现数据传输中间件时应该设定统一的接口,根据不同的需求而采用不同的中间件。在技术上可以采用c++中的虚拟继承的特性来让不同的中间件映射到统一规范的接口,从而实现不同的功能。数据接收中间件与应用层的接口定义。通过设定统一的接口,可以将某型传输卡中间件或读取回波数据的中间件映射到该接口类中。提及的databuff结构体和radarctl结构体定义图见附图。其中iradar_flag表示雷达控制字是否改变,icnt表示雷达的方位码,ilen表示接收数据单个通道的长度,ichennel表示通道的数目,pradarctl表示雷达控制字符的指针,pbuffer表示雷达的回波数据的指针。其中pradarctl表示雷达控制字符的指针。3.2数据传输中间件,在cpu+gpu的异构架构中对于大量数据传输采用inteltbb中的concurrent_bounder_queue来实现数据传输中间件。数据传输中间件采用线程安全队列线构建两个缓冲区节点地址队列,其中一个队列存储已使用的缓冲区节点地址,另一个队列存储未使用的缓冲区节点地址其接口类定义如下,其中data是指需要传输的数据。对于单个整形或者无符号整形数据,在cpu+gpu的异构架构中采用linux中gcc编译器自带的原子操作。通过__sync_lock_test_and_set函数发送整形数据,通过__sync_fetch_and_add函数在其他线程中接收这个整形数据,从而可以保证数据能够不会被其他程序中断且保证顺序传输。3.3实时存储中间件,实时存储存储的雷达数据包含了存储的时间点、雷达控制字和雷达数据信息,其接口定义见附图。3.4信号处理中间件,信号处理模块包含了脉冲压缩、脉冲积累、杂波处理等中间件。其部分函数的接口定义见附图。涉及到的signaltodata结构体见附图。signaltodata是信号处理线程发送至数据处理线程的结构体。通过在doprocess函数接口中调用所需求信号处理功能的中间件,利用软件化雷达功能可重构的特点,对不同雷达应用开发需求进行快速响应,大大缩减雷达的开发时间。3.5数据处理中间件,数据处理是对信号处理模块获取到的目标参数信息进行点迹预处理、航迹形成等处理。在cpu+gpu异构架构中,其函数接口定义见附图。trackinfo结构体见附图。3.6雷达终端显示中间件,雷达终端在cpu+gpu异构架构中,采用qt开发框架进行开发。需要对不同数据的传输创建不同的信号传输函数,其部分接口定义见附图。显示终端在程序启动以后,连接内部的槽函数与信号传输函数。其他线程的函数通过调用上图中的接口函数,将数据传输到显示线程,然后进行显示。4.基于cpu+gpu异构架构平台的应用层,在cpu+gpu的异构架构中采用实时linux作为系统平台,因此在应用层中使用基于可移植操作系统接口(posix,portableoperatingsysteminterfaceofunix)标准的pthread线程搭建信号数据处理框架,该线程能够在所有的类unix操作系统中都可以进行移植使用。其框架见附图。应用层框架包含了五个部分,分别为射频前端数据接收、信号处理、实时存储、终端显示和数据处理。接下来对每个部分的应用实现过程进行说明。4.1射频前端数据接收线程,雷达射频前端数据通过传输卡以后,传入到处理机中。系统给该线程分配一个cpu核心,并采用数据传输中间件来传输当前线程到其他线程的数据。其处理流程见附图。数据接收线程在启动以后便对整个模块进行各种初始化,包括对接收模块的初始化、数据传输中间件的初始化以及绑定cpu核心等,然后等待信号数据处理的start信号,当收到该信号以后,传输数据的中间件便调用getonebuff,然后将接收到的数据存储到对应的buff中,即调用数据接收中间件的datarec接口函数,最后将该buff的地址指针放入到buffusedqueueitem队列中。然后继续重复调用getonebuff,一直到线程中断退出。4.2实时存储线程,实时存储线程是将前端信号与系统时间等参数一起存储在文件中的线程,处理流程见附图。实时存储线程在启动后便创建以当前系统时间为名字的文件作为今后数据存储的地址,然后等待信号数据处理的start信号,当收到该信号以后,首先调用time系列的函数,获取当前系统时间戳以后,调用前端数据传输中间件的dequeue接口,将传输过来的数据指针地址从buffusedqueueitem推出,然后在将数据与时间戳一起存储在文件中,存储好数据文件以后,再调用refreshbuff接口函数,将使用过后的数据指针地址推入到bufffreequeueitem队列中去。然后继续重复调用time系列的函数获取时间戳,一直到线程中断退出。4.3信号处理线程,信号处理线程既有在cpu运行的部分,也有在gpu运行的部分,线程需要绑定一个cpu核心,防止其他进程抢占等时间消耗。由于信号处理中间件需要根据雷达控制字等参数进行初始化,当雷达控制字发生改变以后,信号处理的部分中间件需要重新设定参数。见附图。信号处理线程在启动后便调用initradardspsys接口,对信号处理中间件进行初始化,然后等待信号数据处理的start信号;当收到该信号以后,调用前端数据传输中间件的dequeue接口,获取从前端线程传输过来的数据;然后调用setsysparamter接口设置信号处理的参数,因为第一帧雷达回波数据对后续信号处理没有任何影响,因此不对数据进行处理,直接调用前端线程数据传输中间件的refreshbuff接口。然后分别调用传输目标数据到数据处理线程中间件的getonebuff接口和获取数字化回波中间件的dequeue接口,从而获取雷达回波信息和数据以及存储目标数据缓冲区的地址,接下来便对雷达回波信息中的雷达控制字是否改变进行判断,如果改变了,那么便需要对信号处理的部分中间件进行重新设置参数。首先调用resetparameter接口,将所有参数进行复位,然后便调用setsysparamter接口对信号处理中间件参数重新设置,接下来便可以按照雷达控制字未改变时的顺序进行信号处理。首先调用setsamplesignal接口获取雷达数字化回波数据和参数,然后调用doprocess接口对数据进行信号处理,通过调用getsignalprocout接口将数据处理后得到的数据从gpu传输到内存中,然后传输目标数据到数据处理线程中间件的enqueue接口将缓冲区地址存储到队列中去,最后调用前端线程数据传输中间件的refreshbuff接口标志着对一次数字化回波数据信号处理完毕。可以在show接口中调用信号处理中的get中间件以及终端显示中与之对应的信号槽,从而可以实时显示信号处理中间件处理后的数据图像。最后便循环上述操作,直到线程退出。上述过程中,doprocess运行在gpu中,dequeue和enqueue运行在cpu中,其他函数则在gpu和cpu中交互运行并传递数据。4.4数据处理线程,数据处理是对信号处理后获取的目标数据进行处理。当雷达控制字改变以后,数据处理模块需要丢掉未改变控制字以前所有的目标数据。数据处理线程运行在cpu中,为了提高数据处理能力,系统将线程绑定在cpu核心中,其处理流程见附图。数据处理线程启动以后便对数据处理的接口类进行创建和初始化,然后等待信息处理的start信号,当获取该信号以后,首先调用信号处理后传输目标数据中间件的dequeue接口,线程获取目标数据和雷达信息,判断雷达控制字是否改变。如果控制字已经改变,则对数据处理的接口类进行重新创建。如果控制字没有改变,则调用read_new接口,读取目标数据,然后通过data_treat接口进行数据处理,最后通过gettrackinfo将数据复制出来,然后利用pshow接口调用终端显示的信号槽接口进行最终数据的显示。最后不管雷达控制字是否改变,都要调用数据传输中间件的refreshbuff接口,对缓冲区的地址进行处理。4.5雷达终端显示线程,雷达终端显示采用qt开发框架进行开发,根据qt的开发属性,直接采用主线程进行数据显示。其处理流程见附图。雷达终端显示线程首先对界面进行初始化,然后通过connect函数将显示主线程中的信号接收函数和槽函数连接起来,接下来便建立应用框架中的其他线程,等待界面中传递过来的信号数据处理start信号。如果接收到了信号,便开始进行信号数据处理,同时对信号数据处理的结果进行显示。综上所述,基于cpu+gpu异构下的软件化雷达信号数据处理应用层架构见附图所示。射频前端接收线程运行在cpu中,利用该线程对从射频前端传输过来的回波数据进行接收,然后将数据通过两个数据传输中间件分别传送给信号处理线程和数据存储线程;数据存储线程运行在cpu中,在接收到回波数据后,便将数据进行存储;信号处理线程既有运行在cpu中的部分,又存在运行在gpu中的部分,首先通过cpu中的函数执行对数据进行接收,并将数据传输给gpu的操作,然后调用信号处理的中间件,在gpu中对数据进行信号处理,处理后将数据传输给cpu,在cpu中通过数据传输中间件将数据传递给数据处理线程,并且对部分模块的结果通过显示中间件传递给终端显示进程进行显示;数据处理线程运行在cpu中,通过数据传输中间件接收信号处理获得的目标信息,然后调用数据处理中间件进行处理,最后将处理后得到的目标数据通过显示中间件传递给终端显示线程进行显示。正常情况下,当雷达控制字未改变时,基于cpu+gpu异构的软件化雷达信号数据处理架构应用层处理流程图见附图。实施例一本实施例提供了软件化雷达信号数据处理系统及方法,具体包括如下:1.系统功能和战术指标,整个信号数据处理系统接收雷达接收机传输过来的4路中频信号,完成a/d数据接收、信号处理功能、数据处理功能和人机交互界面。2.系统功能主要功能:(1)接收从接收机传输过来的4路中频信号进行旁瓣相消和旁瓣匿影。这四路信号中其中两路为接收机的和、差通道;另外两路为接收机的辅助通道;(2)完成数字正交解调和脉压;(3)包含有动目标显示(mti)和动目标检测(mtd)的功能,其中mtd由mti和fft完成;(4)包含有一维cfar、二维cfar和杂波图的cfar;(5)包含非相干积累和m/n检测的功能;(6)能计算目标、方位和速度;(7)能通过人机交互界面来设置信号处理的功能;(8)其中杂波图需要包含有静态和动态的杂波图;(9)根据雷达的工作模式,能够解速度模糊;(10)能够对雷达信号处理系统产生的点迹数据实时接收;(11)数据处理中需进行点迹凝聚、航迹起始、目标跟踪、目标关联、航迹补点和航迹消亡运算;(12)能够对数据处理后的数据在p显的同心圆中实时画出目标的航迹;(13)能够通过表格的方式给出当圈的存在的目标的距离和方位数据;(14)能够对雷达系统中cfar、mti、mtd、回波数据、脉压结果等进行有选择实时显示。3.系统信号数据处理的战术指标:(1)ad转换器需要满足采样率大于14mhz,且具有四个数据通道,采样的分辨率为16位;(2)信号处理中mti为三脉冲对消;mtd中的多普勒滤波器由fft来完成,其中fft的点数范围为8k~32k;虚警概率要≤10-6;m/n准则为2/3;(3)在杂波地图中需要包含静态和动态两种杂波;(4)数据处理在一圈中处理的目标点数不应少于1000点;(5)人机交互界面在进行p显的同时,可以对信号处理中mti、mtd等模块的数据进行显示。4.信号数据处理系统接口,软件化雷达系统的信号数据处理系统与雷达的多个分系统有着紧密的连接,这些分系统包含了接收机、频综、监控台。它们之间的连接关系如附图。5.信号数据处理流程,根据雷达系统要求,整个信号数据处理除了终端显示以外,还包含了数字正交解调、脉压、旁瓣对消、脉压、cfar、测角、点迹凝聚、数据关联等信号处理和数据处理功能。整个信号数据处理系统的框架图如附图。雷达接收的原始模拟回波通过adc转变以后,成为数字中频信号,数字中频信号需要通过浮点数的转换才能进行正交解调,通过解调以后数据成为了双通道的i、q信号。通过正交解调以后所获得的信号具有i、q通道之间幅度一致性高,正交性好的特点。数字脉压部分完成了线性调频信号和二相码的脉压操作。首先cpu将ad卡4个通道采集到数据送给gpu,gpu通过两条辅助支路信号对和通道信号完成旁瓣对消抑制天线的旁瓣干扰,再通过mti或者是mtd抑制杂波,从而改善信杂比。采用mti+fft实现的mtd不但可以改善信杂比,还能够改善信噪比。和支路信号经过对恒虚警检测和非相干积累以后,对检测到的信号通过联合和通道和差通道进行角度求解。最终形成目标点迹。然后将目标点迹传输至数据处理模块,通过对目标进行点迹凝聚、航迹起始、单目标跟踪和数据关联等算法,最终排除干扰,对当前圈的数据和能与前几圈数据形成稳定航迹的点传输给终端模块进行显示。6.信号数据处理后端设计方案,软件化雷达系统设计采用商用货架化的产品,即对于系统内所有的硬件设备都可以通过商用产品购买的方式来实现。在本系统中,包含了采集、处理、存储、控制。这样可以让整个系统能够基于开放式计算结构进行搭建。本系统最终完成了对目标回波信号的量化、信号处理、数据处理、进行原始回波数据的记录、对信号处理,数据处理中部分模块的处理结果以及最终结果进行终端显示等功能,为雷达系统提供了一个高效的、开放的、可重用的实时信号数据处理机。7.数据采集系统,数据采集系统即为adc转换器,其需要完成四路中频模拟回波信号的同步采集与转换。根据雷达接收机信号的指标,采集信号的中频频率为10.5mhz,信号带宽有2mhz、7mhz。由于信号是带通信号,所以adc的采样频率fs必须满足带通采样定律:2fh(m+1)≤fs≤2fl/m(0≤m≤m)(1-1)其中,fh为信号的最高频率,fl为信号的最低频率,m为不大于fh/b的最高正整数。根据信号特征,fl为7mhz,fh为14mhz,m可以取值小于2的正整数。由上面系统参数可知,m取值1,此时fs为14mhz,因此14mhz作为adc的采样频率,同时如果信号带宽为2mhz,根据带通采样定理,采样频率也不需要改变。根据以上的分析,adc系统的主要技术指标和要求如下:(1)4个采样通道数目;(2)14mhz采样率;(3)最高7mhz的信号带宽;(4)adc采集系统的分辨率为16bit;(5)采用pcie2.0*8的传输接口。根据以上的系统要求,以及系统所需要的扩展性能,可以选取采用spectrum公司的m4i.4411-x8采集卡,最高采样率为130mhz,4通道,16bit的分辨率,以pcie2.0x8的接口与计算机相连。8.数据存储系统,信号处理机需要对雷达接收的回波数据经过adc采集后的中频信号进行实时记录,用以后期对数据的进行分析和回放。根据雷达系统的参数,雷达作用距离120km,采样频率14mhz,16bit,4个通道,脉冲重复频率1000hz,那么1秒内,系统需要记录2*120e3/3e8*14e6*4*2*1000=89.5mbytes,如果系统对回波数据连续记录10个小时,系统存储量需要3.25tbytes。同时,整个记录系统需要支持的记录速度是89.5mbytes/s,根据这些分析,数据记录系统的主要指标如下:(1)记录容量:不小于4tbytes(2)记录速度:不小于89.5mbytes/s根据这些指标,选择12tbytes的sffsas的磁盘阵列,传输速度为12*1024mbytes/s。9.串口422传输,雷达的监控分系统监控着雷达的工作状态,它会将雷达的工作状态传输给信号数据处理系统中,同时雷达还需要将其方位码传输给信号处理模块,以确定目标的方位。在该雷达系统中,雷达的控制分系统传输雷达的控制字的串口速率与雷达方位码传输的速率不一样。雷达的控制字按照115200bps的串口422传输速率进行传输,而雷达的方位码按照9600bps的传输速率传输。根据以上分析,串口传输的主要技术指标和要求如下:(1)2路独立的rs422通道;(2)传输速率最低需要满足115.2kbps;(3)传输接口为pcie,根据系统要求,选择了moxa的cp-132l串口卡进行方位码和控制字的传输,其支持两个独立的rs-422口,采用pcie的接口,最大传输速率为921.6kbps,能够适用于一对多点的应用环境。10.系统时序控制器,根据雷达的系统要求,系统时序控制器需要接收频综的时钟信号、脉冲发射出发信号、脉冲变频起点信号,同时接ad卡的采样时钟以及采样出发信号,从而控制ad卡的数据采集的全过程。其结构图如下。系统时序控制器需要以雷达的参考时钟和脉冲发射的触发信号为根据,输出ad卡的触发信号和采集时钟。系统时序控制模块需要保证ad卡的触发信号和采集时钟能够同步,两者的上升沿需要对齐,因为如果没有对齐,ad采集到的数据就会错开一个采集点。系统中ad采集时钟频率是14mhz,即时钟周期是71ns,两者之间的同步精度需要控制在35.5ns以内,因此时序控制器的控制精度需要在10ns以内。根据上述分析技术指标和要求如下:(1)输入系统时钟的信号脉冲为14mhz,信号是ttl的电平;(2)输入的发射脉冲触发信号和变频起点信号都是ttl电平;(3)系统需要对时间的控制精度达到10ns以内。11.处理系统,本系统采用cpu+gpu异构架构的信号处理系统,此系统具备了雷达系统所需要的信号处理和数据处理的实时计算能力,可以对目标回波信号进行数字正交解调、信号处理、数据处理等功能。系统在运行时,ad采集卡在等待系统时序控制器传输过来的采集触发信号,当采集出发信号到来以后,来自雷达接收机的和、方位差、辅助通道1和辅助通道2等四路中频信号输入到信号处理系统,频综的时钟信号到系统时序控制器,四路模拟信号由四通道数据采集器在cpu的控制下利用系统控制器产生的采样时钟和采样触发信号进行同步采集,然后由cpu控制将数据通过pcie2.0x8总线传递给系统内存,再由系统内存传送至gpu进行雷达信号处理;同时雷达的控制字和方位码通过串口卡传输到系统内存中,然后传输至cpu中进行设置,控制gpu进行不同的样式的雷达信号处理,最终系统会将控制字,方位码以及数字化后的雷达回波的数据组合后送至磁盘阵列进行存储。这是信号处理的过程。对于数据处理和终端显示,系统将gpu处理完以后的雷达数据通过系统内存传输给cpu,让cpu对信号处理后的数据进行数据处理,然后显示出来。由于整个系统的信号处理工作都是由gpu完成的,因此gpu需要选择性能强的计算卡。根据雷达系统的需求。本系统选用nividiak40的计算卡,其峰值单精度浮点运算能力为4.29tflops,显存的频率可达6ghz。整个系统的数据处理交由cpu来完成,又因为cpu需要负责实时存储、实时采集ad卡,控制gpu进行信号处理、终端显示、接收串口等操作,其中控制gpu进行信号处理需要一个单独的cpu核心。其中因为需要对信号处理过后的数据进行数据处理,因此正常工作频率不能过低。本系统选用intel的至强e5-2643的cpu芯片,其主频满载可以达到3.456ghz,具有多核多线程的处理性能。在整个软件化雷达信号数据处理系统中,需要插上至少3个pcie的卡,其中包含一张gpu卡,adc采集卡、串口卡,因为系统所选的e5至强cpu内部没有集成的显卡,因此还需要一张普通的显卡,因此选择的处理机需要至少包含4个pcie的插槽。为了保证整个实时系统能够满足雷达系统所需要的工作环境要求,系统必须要能够在确定时序要求的时间节拍以内完成仿真所需要的计算,同时必须能够对外部的中断进行实时响应,并能够实时进行系统中线程之间的切换。对于一般的window操作系统和普通的linux操作系统而言,进行中断响应和切换进程需要1ms~10ms左右的时间,无法满足实时系统的信号处理的要求,因此根据第四章所叙述的,整个系统采用实时的redhawk操作系统来满足雷达系统实时处理的需求。综上所述,基于cpu+gpu的软件化雷达信号数据处理系统通过采用包含cpu和gpu的高性能服务器,通过cpu完成各种事件的调度和数据处理;通过采用基于linux的实时操作系统redhawk,提供对gpu的实时调度支持,从而实现基于cpu+gpu的高性能、实时信号数据处理。其主要的技术指标和要求如下:(1)计算能力不小于3tflops;(2)具备有pcie3.0*16的传输接口,持续传输速度不应该低于9.5gbyte/s;(3)系统调度延时不应该大于20us;(4)具有不少于4个pcie个接口;(5)能够实现系统功能的软件化重构;(6)存储速度应具备1.5gb/s以上的磁盘阵列;(7)能够支持gpu实时调度的实时linux操作系统。根据以上这些技术指标,对整个信号处理服务器,选择hpproliantdl580gen8,此服务器包含9个pci-e插槽,其中包含5根pci-e3.0x16的插槽,完全满足系统各种板卡的需求。并且由于整个系统留有多余的插槽,可以放置更多的gpu卡完成更为复杂的信号处理任务。在系统中进行信号处理算法,全部是基于gpu的软件,因此重构信号处理算法,只需要对gpu的算法进行重构编制即可。对于系统时钟控制卡是信号处理系统的整个时序控制装置,而这张卡上对时序和触发信号所产生,都是通过fpga产生,因此即使更改雷达系统或更改雷达的工作方式,只需要对时钟控制卡上的fpga程序进行重构,即可产生所需要的时序控制信号。总之,整个系统的可重构性都可以通过修改软件实现。而对于系统的扩展性,只需要添加多的gpu卡即可完成。因此系统完全满足可拓展性的要求。12.应用框架由于该雷达系统中采用基于linux的实时操作系统,并且因为软件化雷达的模块化等特点。该系统采用符合posix标准的posix线程搭建雷达系统的应用层框架。对于不同的线程之间的数据传输,采用在4.1.3节中所介绍的inteltbb搭建的传输队列传输数据。该系统采用qt图形界面开发框架进行显示终端界面的开发。通过posix线程,可以在应用层调用满足雷达开发需求的中间件,从而使得系统具有很好的拓展性和灵活性,可以快速响应不同雷达系统开发需求。本申请系统方案测试结果如下:雷达信号数据处理系统需要满足对信号的实时处理,所以实现后的cpu+gpu的信号数据处理系统必须要满足实时性的需求。在整个流程中,信号处理在gpu中进行。对于信号处理,需要满足雷达系统的实时性的需求,下面我们将会对gpu处理的时间性能进行分析。分析雷达工作工作参数需要按照雷达的最高工作参数进行设计,其中雷达工作参数如下:作用距离120km,脉冲重复频率1000hz,中频频率10.5mhz,采样频率为14mhz,16bit,mtd进行fft点数为32个,即需要积累32个脉冲做mti后才进行mtd运算。计算用的gpu采用k40。在上述条件下,信号数据处理机种对信号处理的部分总共分为两个部分,一个脉冲重复性的周期处理和积累32个脉冲后的处理。一个脉冲重复周期内做的工作包含adc中的数据搬移到gpu中、浮点数转化、数字正交解调、旁瓣对消即权值求解、距离脉压、三脉冲mti。积累32个脉冲后的处理包含:mtd、求模、cfar、动态杂波图解算、求角度。根据系统工作参数,系统在一个脉冲里,一个通道的数据采集点数是22.4k,由于位数为16bit,那么采集的数据大小是22.4x2x4=179.2kbytes,而系统中a/d卡的总线带宽为3.4gbytes/s,gpu的总线带宽为9.5gbytes/s,传输数据需要71.2us。通过nightstar工具测得在进行5000次的一个脉冲重复性的周期处理中gpu完成时间最大为0.3ms,而系统的重复周期为1ms,所以整个操作系统完全满足性能要求。并且我们可以从图5-8可以得知,gpu在进行数据处理的过程中,一直保持着高性能、高并发的状态,可以能够可靠的用于软件化雷达信号数据处理的信号数据处理中。通过nightstar工具测得对进行积累32个脉冲后的处理5000次中gpu完成时间最大为0.6ms,而远远大于积累32个脉冲需要32ms,因此计算时间完全满足系统的需求。并且在实际处理过程中,基于cpu+gpu的软件化雷达信号数据处理系统对cpu的实际资源消耗并不高。在进行雷达信号数据处理过程中,只有在进行qt图形界面的显示时需要全部占用cpu的资源,其他处理对于cpu核的占有率不高,即cpu能轻松完成应用程序指定的任务。本申请通过对软件化雷达信号数据处理以及并行处理技术的研究,实现了基于cpu+gpu的软件化雷达信号数据处理机。采用adc、cpu、gpu等商用货架化产品、基于开放式计算机结构搭建雷达信号处理和数据处理的平台。完成对目标回波信号的量化、信号处理和数据处理,以及对原始回波数据进行实时记录和对处理结果的实时显示,从而提供一个开放的、可重用的、高性能的实时信号和数据处理机。通过对系统结构改进和数字后端进行软件化定义,使得该型雷达系统具备软件化雷达的特征。信号数据处理机相比于传统的信号数据处理系统具备开放的计算机架构、更灵活的可重构的特性和更强的处理能力。其主要的特点有:(1)系统硬件采用商用货架化的产品,因此硬件模块具备有标准化、易拓展和可重构等特点;(2)可以通过对系统中应用层软件模块的修改,系统可以进行重构,从而满足其他雷达系统的需求;(3)雷达系统中的所有处理任务都是通过软件来实现的;(4)系统具有更强大的并行处理能力,能够完成常规雷达中的多种信号的处理。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本
技术领域
:的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1