首页> 中国专利> 一种基于CPU刀片服务器的软件化雷达信号处理方法

一种基于CPU刀片服务器的软件化雷达信号处理方法

摘要

本发明涉及一种基于CPU刀片服务器的软件化雷达信号处理方法,该方法在多个计算节点上运行,其中一个是主节点,负责对外通信以及管理从节点,其余节点是从节点,负责完成主节点分配的任务,从节点数可以灵活扩展。主节点接收到参数和数据后,根据从节点的运行状态,选择一个空闲的从节点将参数和数据发给该节点。从节点收到数据后,采用流水线的方式实现并行计算,各模块接收上一级模块输出的参数和数据,完成计算后,将参数和数据发给下一级模块。从节点计算完成后,将检测结果发给主节点,由主节点将最终结果整理后传给显控和数据处理分系统。本发明方法可以将应用程序与硬件资源完全解耦,从而实现可移植、可重构的软件化雷达系统。

著录项

  • 公开/公告号CN116560732A

    专利类型发明专利

  • 公开/公告日2023-08-08

    原文格式PDF

  • 申请/专利权人 西安电子工程研究所;

    申请/专利号CN202310401449.8

  • 申请日2023-04-15

  • 分类号G06F9/38(2018.01);G01S7/02(2006.01);G06F9/50(2006.01);

  • 代理机构西安凯多思知识产权代理事务所(普通合伙) 61290;

  • 代理人刘新琼

  • 地址 710199 陕西省西安市长安区韦曲凤栖东街

  • 入库时间 2024-01-17 01:20:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-08-25

    实质审查的生效 IPC(主分类):G06F 9/38 专利申请号:2023104014498 申请日:20230415

    实质审查的生效

  • 2023-08-08

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及雷达信号处理领域,尤其涉及软件化雷达信号处理方法。本发明具体涉及一种基于CPU刀片服务器的软件化雷达信号处理方法。

背景技术

传统的雷达往往是针对特定应用场景设计,采用专用的硬件平台和软件架构,开发周期长,成本高,软硬件耦合性强,维护和升级即困难又昂贵。随着雷达探测技术、电子对抗技术的发展,现代战场的电磁环境越来越复杂,目标探测的难度越来越大。为适应复杂的电磁环境,阵列雷达的通道数越来越多,信号带宽越来越大,以及先进的抗干扰算法和目标识别算法的引入,都增加了信号处理的复杂度。

传统的雷达信号处理大多采用“FPGA+DSP”处理架构。FPGA集成了大量可编程的数字逻辑构件和RAM块,具有强大的定点运算能力和输入输出带宽,一般用于完成雷达信号处理中的AD采样,数字下变频,数字波束形成等功能。DSP浮点运算能力强,能够满足算法和逻辑比较复杂的场景,当前雷达信号处理系统中应用最广的DSP是TI的TMS320C6678,其浮点处理能力可以达到128GFLOPS(1GHz主频时),一般完成雷达信号处理中的脉冲压缩,动目标检测,横虚警检测,点迹凝聚,测角,杂波图等功能。“FPGA+DSP”架构在过去许多年里一直在雷达信号处理领域占据着主流位置,然而,该架构固有的特性,导致程序的可重用性低,硬件调试困难,开发周期长,难以满足当前瞬息万变的现代化信息战的要求。

针对传统雷达的不足,软件化雷达的概念被提出,不同于传统雷达的“以硬件技术为中心,面向专用功能”特点,软件化雷达是“以软件技术为中心,面向实际需求”的开发模式。软件化雷达通过层次化的开放式体系架构,可以实现硬件资源的灵活扩展。通过中间件技术,可以将应用程序与硬件资源完全解耦,从而实现可移植、可重构的软件化雷达系统。

发明内容

本发明要解决的技术问题是当前在雷达信号处理领域占据主流的FPGA+DSP架构固有的软硬件耦合性强,导致的开发调试困难,扩展性差,移植性差的问题。

为了解决上述技术问题,本发明采用的技术方案为:

一种基于CPU刀片服务器的软件化雷达信号处理方法,其特征在于:该方法在多个计算节点上运行,其中一个是主节点,其余节点是从节点;

主节点接收到参数和数据后,根据从节点的运行状态,选择一个空闲的从节点将参数和数据发给该节点;

从节点收到数据后,采用流水线的方式实现并行计算,各模块接收上一级模块输出的参数和数据,完成计算后,将参数和数据发给下一级模块;

从节点计算完成后,将检测结果发给主节点,由主节点将最终结果整理后上报传给显控和数据处理分系统。

本发明进一步的技术方案:所述的主节点负责对外通信以及管理从节点,所述的从节点负责完成主节点分配的任务。

本发明进一步的技术方案:所述的从节点数量比系统实际需求的数量多,满足出现异常的从节点不影响系统工作。

本发明进一步的技术方案:所述的从节点中模块之间传输的参数和数据组合,是通过使用传址的方式进行传递。

本发明进一步的技术方案:每个模块内有一个循环队列,用于存储参数+数据组合的地址。

本发明进一步的技术方案:所述模块内的线程包括1个管理线程和多个计算线程两种。

本发明进一步的技术方案:所述的管理线程用于判断循环队列的状态,管理计算线程;当计算线程空闲时,管理线程判断循环队列是否为空,如果不为空,就取出最先收到的“参数+数据”组合,根据工作参数,划分好每个计算线程的计算任务,给计算线程发送信号量,启动计算线程开始计算,然后等待计算线程计算完成后发送的信号量;最后将该模块生成的参数和数据发给下一个模块。

本发明进一步的技术方案:所述的计算线程用于完成管理线程分配的计算任务;计算线程空闲时,等待管理线程发送的信号量,收到信号量后开始执行计算任务,计算完成后,给管理线程发送标志着计算完成的信号量,然后继续等待管理线程发送的信号量。

本发明的有益效果在于:

本发明提供的一种基于CPU刀片服务器的软件化雷达信号处理方法,该方法在多个计算节点上运行,其中一个是主节点,负责对外通信以及管理从节点,其余节点是从节点,负责完成主节点分配的任务,从节点数可以灵活扩展。主节点接收到参数和数据后,根据从节点的运行状态,选择一个空闲的从节点将参数和数据发给该节点。从节点收到数据后,采用流水线的方式实现并行计算,各模块接收上一级模块输出的参数和数据,完成计算后,将参数和数据发给下一级模块。从节点计算完成后,将检测结果发给主节点,由主节点将最终结果整理后传给显控和数据处理分系统。本发明方法可以将应用程序与硬件资源完全解耦,从而实现可移植、可重构的软件化雷达系统。

1、该方法在多个计算节点上运行,其中一个是主节点,负责对外通信以及管理从节点,其余节点是从节点,负责完成主节点分配的任务,从节点数可以灵活扩展。为了实现高可用,从节点的数量会比系统实际需求的数量多(假设多m个),这样在有从节点出现异常时(假设异常n个),当n≤m时,整个系统的工作不受影响。

2、从节点中模块之间传输的参数和数据组合,是通过使用传址的方式进行传递,以减少数据传输的时间。

附图说明

附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。

图1为软件化雷达模块示例。

图2为管理线程处理流程。

图3为计算线程处理流程。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。此外,下面描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

本发明提供了一种基于CPU刀片服务器的软件化雷达信号处理实现方法,所述方法在多个计算节点上运行,其中一个是主节点,负责对外通信以及管理从节点,其余节点是从节点,负责完成主节点分配的任务,从节点数可以灵活扩展。为了实现高可用,从节点的数量会比系统实际需求的数量多(假设多m个),这样在有从节点出现异常时(假设异常n个),当n≤m时,整个系统的工作不受影响。

主节点接收到参数和数据后,根据从节点的运行状态,选择一个空闲的从节点将参数和数据发给该节点。从节点收到数据后,采用流水线的方式实现并行计算,各模块接收上一级模块输出的参数和数据,完成计算后,将参数和数据发给下一级模块。从节点计算完成后,将检测结果发给主节点,由主节点将最终结果整理后上报传给显控和数据处理分系统。

节点之间通过通信中间件传输参数和数据,通信中间件符合DDS规范,支持RapidIO和以太网,每个节点通过配置收发主题实现通信。

从节点中,为了保证各模块处理时间的稳定,对各模块分配了固定的核进行处理,首先对这些核进行隔离,然后将各处理模块线程绑定到对应核上。软件化雷达模块示例见附图1。

每个模块内有一个循环队列,用于存储参数+数据组合的地址,队列越大对模块处理时间抖动的容忍度越大,但队列越大对内存的需求也越大,需要根据模块实际的处理时间抖动进行参数化设置。

模块内的线程分为两种,管理线程和计算线程。

每个模块的管理线程只有一个,用于判断循环队列的状态,管理计算线程。当计算线程空闲时,管理线程判断循环队列是否为空,如果不为空,就取出最先收到的“参数+数据”组合,根据工作参数,划分好每个计算线程的计算任务,给计算线程发送信号量,启动计算线程开始计算,然后等待计算线程计算完成后发送的信号量。最后将该模块生成的“参数+数据”组合发给下一个模块。管理线程处理流程见附图2。

每个模块有多个计算线程,计算线程用于完成管理线程分配的计算任务。计算线程空闲时,等待管理线程发送的信号量,收到信号量后开始执行计算任务,计算完成后,给管理线程发送标志着计算完成的信号量,然后继续等待管理线程发送的信号量。管理线程主要是判断循环队列和计算线程的状态,以及完成任务分配,计算量不大,所以无需单独划分一个核,可以和计算线程绑定到同一个核,计算线程数量的选取需根据模块的计算量,以及系统可划分给该模块的核数确定。计算线程处理流程见附图3。

实施例:

所述方法在实施例中采用6块CPU刀片服务器,处理器为志强D-2183IT,主频2.2GHz,最大支持16核/32线程,三级缓存为22MB,采用AVX2.0指令集,板载支持4通道64GB、2400MHz Register DDR4 ECC内存。其中一块作为主节点,其余刀片作为从节点。

主节点通过RapidIO接口接收DBF(Digital Beam Forming)机箱发送过来的系统参数和波束数据,通过千兆网接收控制终端发送过来的控制参数,波束个数为18个,采样率为6.25MHz,波束数据实部虚部都为单精度浮点类型,积累点数为32,距离单元个数为4096。

主节点接收到DBF机箱传来的一个PRI(Pulse Repetition Interval)的系统参数和波束数据后,通过参数判断当前脉冲是否是当前CPI(Coherent Processing Interval)内的第一个脉冲,如果是第一个脉冲,那么在从节点空闲列表中取出第一个空闲的从节点,将当前CPI对应的从节点号记为S,然后将当前脉冲的控制参数、系统参数和波束数据组成参数和数据组合通过通信中间件发给从节点S,后续到来的当前CPI其他脉冲的参数和数据组合也发给从节点S。

从节点内的模块包括数据接收模块,脉冲压缩模块,动目标检测(MTD)模块,恒虚警检测(CFAR)模块,测角模块,数据发送模块。每个模块内有一个循环队列,用于存储参数+数据组合的地址,队列越大对模块处理时间抖动的容忍度越大,但队列越大对内存的需求也越大,需要根据模块实际的处理时间抖动进行合理设置。其中数据接收模块和脉冲压缩模块是以PRI为间隔进行计算,内部循环队列也是以一个PRI的参数和数据作为存储单位,该示例中,这两个模块的队列大小为200。其余模块式以CPI为间隔进行计算,内部循环队列也是以一个CPI的参数+数据作为存储单位,该示例中,这些模块的队列大小为8。

从节点中处理流程采用流水线的方式实现并行计算,各模块接收上一级模块输出的参数和数据,完成计算后,将参数和数据发给下一级模块。这里模块之间传输的参数和数据组合,是通过使用传址的方式进行传递,以减少数据传输的时间。动目标检测(MTD)模块和恒虚警检测(CFAR)模块如附图1所示。

为介绍从节点每个模块内管理线程和计算线程的作用以及流程,本实施例以CFAR模块为例介绍,其余模块流程类似。考虑到整个CPU的核数以及CFAR模块计算量,本例中CFAR模块共分配了3个核,管理线程1个,计算线程三个,三个计算线程分别绑定到三个核,管理线程绑定到第一个核。CFAR模块中循环队列存储着从MTD模块接收到的参数和MTD数据组合,管理线程判断循环队列的状态,管理计算线程。当计算线程空闲时,管理线程判断循环队列是否为空,如果不为空,就取出最先收到的参数和MTD数据组合,根据参数中波束个数(这里是18),按负载均衡的原则为每个计算线程划分任务,该例中,计算线程1处理波束1-6,计算线程2处理波束7-12,计算线程3处理波束13-18。划分好每个计算线程的计算任务后,给计算线程发送信号量,启动计算线程开始计算,然后等待计算线程计算完成后发送的信号量。最后将该模块生成的“参数+数据”组合发给下一个模块(测角模块)。管理线程处理流程如附图2所示。

CFAR模块中的3个计算线程空闲时,等待管理线程发送的信号量,收到信号量后,根据控制参数选择恒虚警类型,完成恒虚警处理,处理完成后,给管理线程发送标志着计算完成的信号量,然后继续等待管理线程发送的信号量。计算线程处理流程如附图3所示。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号