嵌入式星载异构多核智能计算系统及方法技术方案

技术编号:39044932 阅读:10 留言:0更新日期:2023-10-10 11:57
本发明专利技术提供一种嵌入式星载异构多核智能计算系统及方法,该系统包括主控中央处理模块和神经网络处理模块。其中,主控中央处理模块中,NOR FLASH采用三模冗余实现主程序备份,NAND FLASH中存储数据,上电后激活值数据从NAND FLASH传输至DDR中,权重数据从NAND FLASH传输至LPDDR中,CPU通过总线将指令和激活值数据发送至NPU;神经网络处理模块中,NPU接收指令和激活值数据,从LPDDR中读取权重数据并计算,计算后的数据有两种传输方式,一种通过流水线形式传输给下一级NPU计算,另一种通过总线将计算完成的结果传输回CPU。本发明专利技术支持基于数据流并行的主控CPU+多NPU的神经网络模型推理加速,提升面向星载应用的神经网络计算帧率和能效。计算帧率和能效。计算帧率和能效。

【技术实现步骤摘要】
嵌入式星载异构多核智能计算系统及方法


[0001]本专利技术涉及星载智能计算
,尤其涉及一种嵌入式星载异构多核智能计算系统及方法。

技术介绍

[0002]随着航天器技术的迅猛发展和后续探测任务需求牵引,传统的数传、数据采集、数据处理等业务的星载信息平台已不能满足大型航天智能化计算系统对智能自主和高效计算的要求。因此,星载计算系统需要逐步向智能化、高算力、高能效的计算系统发展。
[0003]传统星载计算系统在星上仅做小尺寸单模图像实时目标检测,多为指令密集型计算任务;而智能化星载计算系统需要在星上执行多模图像实时目标检测与识别任务,尤其是基于深度学习的智能目标检测与识别算法,包含大量神经网络算子,属于典型的数据密集型计算任务,这对星上计算能力提出了更高的要求。传统计算平台的GOPS/W(每瓦十亿次操作)的处理能力成为了关键瓶颈,亟需发展新型星载智能计算系统,形成星载计算系统的算力和能效提升。
[0004]在后摩尔定律时代,单纯依靠生产工艺升级和CPU核数增加来提高计算能效,已经显得力不从心,因为CPU花费大部分资源用于缓存和逻辑控制,只有少部分资源用于计算。面对高算力和高能效的星载计算需求,将通用CPU与神经网络处理器(NPU)相结合组成星载异构多核智能计算系统成为发展趋势。星载异构多核智能计算系统能够充分发挥CPU在通用计算上的灵活性和NPU在人工智能算法上的加速功能,实现对计算资源的有效分配和数据处理的及时响应,达到卓越的算力和能效。

技术实现思路

[0005]针对现有技术存在的问题,本专利技术提供一种嵌入式星载异构多核智能计算系统及方法。
[0006]本专利技术提供一种嵌入式星载异构多核智能计算系统,包括主控中央处理模块和神经网络处理模块,其中:
[0007]所述主控中央处理模块中,NOR FLASH采用三模冗余实现主程序备份,NAND FLASH中存储数据,上电后激活值数据从NAND FLASH传输至DDR中,权重数据从NAND FLASH传输至LPDDR中,CPU通过总线将指令和激活值数据发送至NPU;
[0008]所述神经网络处理模块中,NPU接收指令和激活值数据,从LPDDR中读取权重数据并计算,计算后的数据有两种传输方式,一种通过流水线形式传输给下一级NPU计算,另一种通过总线将计算完成的结果传输回CPU。
[0009]根据本专利技术提供的一种嵌入式星载异构多核智能计算系统,所述神经网络处理模块包括多个NPU计算单元及LPDDR存储单元。
[0010]根据本专利技术提供的一种嵌入式星载异构多核智能计算系统,所述NPU计算单元由多个计算阵列构成。
FLASH单元1013和DDR单元1014。其中,所述CPU单元1011用于通过总线将指令和激活值数据发送至NPU单元;所述NOR FLASH单元1012采用三模冗余实现主程序备份;所述NAND FLASH单元1013中存储数据,上电后激活值数据从所述NAND FLASH传输至所述DDR单元1014中,权重数据从所述NAND FLASH传输至LPDDR中。
[0027]所述神经网络处理模块102中设置有NPU单元1021和LPDDR单元1022。其中,所述NPU计算单元1021接收指令和激活值数据,从所述LPDDR存储单元1022中读取权重数据并计算,计算后的数据有两种传输方式,一种通过流水线形式传输给下一级所述NPU计算单元1021计算,另一种通过总线将计算完成的结果传输回CPU。
[0028]本专利技术提供的一种嵌入式星载异构多核智能计算系统,支持基于数据流并行的主控CPU+多NPU的神经网络模型推理加速,提升面向星载应用的神经网络计算帧率和能效。
[0029]在上述实施例的基础上,所述神经网络处理模块设置有多个NPU计算单元和LPDDR存储单元。
[0030]在上述实施例的基础上,所述NPU计算单元由多个计算阵列构成。
[0031]在本专利技术中,图2为本专利技术提供的一种星载多核智能计算系统流水线的结构示意图。如图2所示,以4个NPU计算单元为一组,在时刻K都处于待机状态。在时刻K+1,第一个NPU单元接收到CPU计算单元发送的指令,将一层权重数据从LPDDR存储单元读取至NPU单元内部后,返回读取完成信号。在时刻K+2,CPU单元将一组激活值数据发送至第一个NPU计算单元,与权重数据进行乘累加计算后得到该层的输出激活值并传输至第二个NPU计算单元,同时,第二个NPU计算单元接收到CPU单元发送的指令,将一层权重数据从LPDDR存储单元读取至NPU计算单元内部后,返回读取完成信号。在时刻K+3至时刻K+5,以相同于时刻K+2的流水线方式进行工作,并在时刻K+5使所有NPU计算单元均处于计算状态。在时刻N,CPU单元将最后一组激活值数据发送至第一个NPU计算单元。在时刻N+1,第一个NPU计算单元的计算完成,将该层的输出激活值传输至第二个NPU计算单元后处于待机状态。在时刻N+2至时刻N+4以相同于时刻N+1的流水线方式进行工作,并在时刻N+4返回计算完成信号,将输出激活值发送至CPU后,使所有NPU计算单元均处于待机状态。
[0032]以上所描述的结构示意图仅仅是示意性的,其中所述一组NPU计算单元可以由M个NPU计算单元组成(M为正整数)。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0033]图3为本专利技术提供的一种基于流水线方法的星载异构多核智能计算系统的流程示意图。如图3所示,本专利技术提供了一种基于上述星载异构多核智能计算系统的流水线方法,包括:
[0034]步骤S1,CPU将指令发送至第一个NPU,等待NPU将一层权重数据从LPDDR读取至NPU内部后,NPU返回读取完成信号。
[0035]步骤S2,CPU将激活值数据发送至第一个NPU,与权重数据进行乘累加计算后得到该层的输出激活值。
[0036]步骤S3,第一个NPU的输出激活值有两种传输方式。当NPU计算结果为神经网络最后一层激活值时,返回计算完成信号,并将输出激活值发送至CPU;当NPU计算结果不为神经网络最后一层激活值时,将输出激活值发送至第二个NPU进行计算。
[0037]步骤S4,在执行步骤S2至步骤S3时,CPU将下一帧激活值数据发送至第一个NPU,同时,第二个NPU将一层权重数据从LPDDR读取至NPU内部,让NPU以流水线方式进行计算。
[0038]步骤S5,最后一个NPU计算完成后,返回计算完成信号,并将输出激活值发送至CPU。
[0039]本专利技术提供的一种基于星载异构多核智能计算系统的流水线方法,通过设计具有流水线方式的星载异构多核智能计算系统架构,能够支持基于数据流并行的主控CPU+多NPU的神经网络模型推理加速,提升面向星载应用的神经网络计算帧率和能效。
[0040]图4为本专利技术提供的一种空间信息系统的结构示意图。如图4所示,该空间信息系统包括:载本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种嵌入式星载异构多核智能计算系统,其特征在于,包括主控中央处理模块和神经网络处理模块,其中:所述主控中央处理模块中,NOR FLASH采用三模冗余实现主程序备份,NAND FLASH中存储数据,上电后激活值数据从NAND FLASH传输至DDR中,权重数据从NAND FLASH传输至LPDDR存储单元中,CPU通过总线将指令和激活值数据发送至NPU计算单元;所述神经网络处理模块中,NPU计算单元接收指令和激活值数据,从LPDDR存储单元中读取权重数据并计算,计算后的数据有两种传输方式,一种通过流水线形式传输给下一级NPU计算单元进行计算,另一种通过总线将计算完成的结果传输回CPU。2.根据权利要求1所述的嵌入式星载异构多核智能计算系统,其特征在于,所述神经网络处理模块包括:多个NPU计算单元及LPDDR存储单元。3.根据权利要求1所述的嵌入式星载异构多核智能计算系统,其特征在于,所述NPU计算单元由多个计算阵列构成。4.一种基于权利要求1至3任一所述嵌入式星载异构多核智能计算系统的流水线方法,其特征在于,包括:步骤S1,CPU将指令发送至...

【专利技术属性】
技术研发人员:黄宇轩刘奎朱坤托王滔程世祺田文波朱新忠
申请(专利权)人:上海航天计算机技术研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1