CN113553031B - 软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法 - Google Patents

软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法 Download PDF

Info

Publication number
CN113553031B
CN113553031B CN202110626788.7A CN202110626788A CN113553031B CN 113553031 B CN113553031 B CN 113553031B CN 202110626788 A CN202110626788 A CN 202110626788A CN 113553031 B CN113553031 B CN 113553031B
Authority
CN
China
Prior art keywords
calculation
computing
reconfigurable
array
brain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110626788.7A
Other languages
English (en)
Other versions
CN113553031A (zh
Inventor
刘勤让
高彦钊
虎艳宾
沈剑良
吕平
宋克
祁晓峰
张霞
刘冬培
陈艇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Information Engineering University of PLA Strategic Support Force
Original Assignee
Information Engineering University of PLA Strategic Support Force
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Information Engineering University of PLA Strategic Support Force filed Critical Information Engineering University of PLA Strategic Support Force
Priority to CN202110626788.7A priority Critical patent/CN113553031B/zh
Publication of CN113553031A publication Critical patent/CN113553031A/zh
Application granted granted Critical
Publication of CN113553031B publication Critical patent/CN113553031B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Robotics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)

Abstract

本发明属于信号处理及深度学习技术领域,特别涉及一种软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法,基于拟态计算思想通过建立能够满足传统信号处理与深度学习全流程计算需求的左右脑一体化软件定义变结构计算实现左脑高精度信号处理与右脑低精度深度学习。本发明基于拟态计算思想通过建立混合颗粒度的异构构件化计算资源池、分布式层次化存储结构以及软件定义互连结构,根据任务计算需求与负载变化实现软件定义灵活变结构的左右脑计算方法,一方面解决传统信号处理与深度学习的高效衔接与一体化实现,另一方面通过软件定义变结构计算解决传统信号处理与深度学习的高性能、高效能以及高灵活实现问题,具有较好的应用前景。

Description

软件定义变结构计算架构及利用其实现的左右脑一体化资源 联合分配方法
技术领域
本发明属于信号处理及深度学习技术领域,特别涉及一种软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法。
背景技术
上世纪60年代,美国心理生物学家斯佩里博士通过割裂脑实验的研究提出了左右脑分工理论,即左脑主要负责逻辑思维,右脑主要负责形象思维。虽然后续研究证明该理论有失偏颇,但在以高精度信息处理为代表的科学计算依然重要且以低精度深度学习为代表的人工智能快速发展的当前,左脑逻辑思维与右脑形象思维分工合作的理论为未来智能计算系统的发展提供了一种研究思路。本发明正是基于这样的思路提出的。事实上,从当前人工智能应用的处理流程来看,不论是图像、语音还是文本识别,从原始信号/信息采集到深度学习处理之间仍然需要大量基于传统信号处理方法的信号/信息预处理操作。因此,一个完整的人工智能计算系统不仅应该包括深度学习计算模块本身,而且应当包含传统信号处理模块进行信号/信息预处理,即“左脑”与“右脑”兼备,且两者高效合作。
但是因为传统信号处理(“左脑”)与深度学习(“右脑”)在计算算法、计算流程以及计算精度等层面存在较大差异,所以两者在不仅在算法层面的研究呈相对割裂的态势,而且各自的处理系统设计往往也泾渭分明。例如传统信号处理系统往往基于DSP芯片或CPU+FPGA芯片设计,而深度学习计算系统则多采用GPU、ASIC或可重构计算芯片设计。如果将这两类分立的计算模块简单叠加构成计算系统,不仅会导致功耗的大幅增加,而且模块间通信往往会带来计算系统的性能瓶颈。更进一步,上述各类计算芯片在计算性能、计算效能以及计算灵活性等方面各有优劣,均难以满足多样化应用条件下高性能、高效能以及高灵活的计算需求。
发明内容
为此,本发明提供一种软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法,基于拟态计算思想通过建立能够满足传统信号处理与深度学习全流程计算需求的左右脑一体化软件定义变结构计算来满足人工智能计算系统多样化应用条件下高性能、高效能以及高灵活的计算需求。
按照本发明所提供的设计方案,提供一种软件定义变结构计算架构,包含如下内容:用于信号处理的左脑可重构计算阵列结构,用于深度学习的右脑可重构计算阵列结构,及用于依据外部输入数据和/或外部输入配置对计算任务分解并形成相应计算结构配置的系统控制模块,系统控制模块利用软件定义互连网络将分解的计算任务加载到与计算结构配置相对应的左脑可重构计算阵列结构和/或右脑可重构计算阵列结构,利用左脑可重构计算阵列结构和/或右脑可重构计算阵列结构中算粒完成计算任务。
作为本发明软件定义变结构计算架构,进一步地,所述左脑可重构计算阵列结构包含:由计算单元PE1组成的粗粒度浮点数可重构阵列,由嵌入式FPGA组成的细粒度可重构阵列,利用软件运行计算任务的DSP核,及用于计算资源互连的互连网络,其中,计算单元PE1为用于信号处理计算的硬件逻辑计算构件。
作为本发明软件定义变结构计算架构,进一步地,所述右脑可重构计算阵列结构包含:由计算单元PE2组成的粗粒度定点数可重构阵列,由嵌入式FPGA组成的细粒度可重构阵列,及利用软件运行计算任务的实时处理器,及用于计算资源互连的互连网络,其中,计算单元PE2为用于深度学习的硬件逻辑计算构件。
作为本发明软件定义变结构计算架构,进一步地,还包含:用于原始数据、中间计算数据及最终计算数据存储的分布式层次化存储结构。
进一步地,基于上述的软件定义变结构计算架构,本发明还提供一种基于软件定义的左右脑一体化资源联合分配方法,包含如下内容:
选取用于信号处理的若干算法及用于深度学习的若干算法,形成左脑可重构计算阵列结构和右脑可重构计算阵列结构中各类型算粒;
依据计算需求、存储需求及互连需求提取可重构计算阵列结构中算粒;并针对提取的各算粒通过计算效果的评估优化,构建最优的混合颗粒度可重构计算阵列;
对实时加载的任务结合混合颗粒度可重构计算阵列进行任务模块化分解,并生成计算配置信息;
依据计算配置信息,左脑可重构计算阵列结构和/或右脑可重构计算阵列结构构建计算结构并驱动任务待计算数据输入进行计算;并依据任务执行情况及计算结构实时状态对当前计算任务与计算结构的匹配性进行综合评估和适时调整。
作为本发明基于软件定义的左右脑一体化资源联合分配方法,进一步地,左脑可重构计算阵列结构中的算粒包括但不限于:FFT/IFFT计算、矩阵乘法、矩阵求逆、卷积计算以及匹配滤波。
作为本发明基于软件定义的左右脑一体化资源联合分配方法,进一步地,右脑可重构计算阵列结构中算粒包括但不限于:卷积计算、矩阵乘法、池化处理及全连接处理。
作为本发明基于软件定义的左右脑一体化资源联合分配方法,进一步地,通过迭代算法从计算性能、效能、重构灵活性及重构便捷性来综合评估提取的算粒设计、存储结构设计及互连结构设计,选取综合评估结果最优的情形来构建混合颗粒度可重构计算阵列,其中,构建的混合颗粒度可重构计算阵列包括左脑可重构计算阵列结构和/或右脑可重构计算阵列结构两者中算粒资源池、存储结构及互连结构。
作为本发明基于软件定义的左右脑一体化资源联合分配方法,进一步地,对最优的混合颗粒度可重构计算阵列通过资源虚拟化,并利用主动查询和被动感知相结合方式对资源状态信息进行监控。
作为本发明基于软件定义的左右脑一体化资源联合分配方法,进一步地,生成计算配置信息时,根据计算和/或存储资源及状态运行信息,如果浮点数与定点数粗粒度可重构阵列资源与任务各个模块的计算需求相匹配,则优先使用粗粒度可重构阵列实现任务模块计算;否则,对无法满足计算需求的任务模块进行软硬件划分,对于并行计算可行性小于设定阈值的情形,跳转控制需求大于需求阈值的计算模块采用软件在DSP核或实时处理器上实现,对于并行计算可行性大于设定阈值的情形,计算密集型计算模块采用硬件在嵌入式FPGA构成的细粒度可重构阵列上实现。
本发明的有益效果:
本发明将拟态计算思想应用到传统信号处理与深度学习领域,通过设计软件定义变结构计算实现左脑高精度信号处理与右脑低精度深度学习,不仅满足两者的一体化设计与高效衔接需求,而且通过软件定义变结构计算方式实现两者的高性能、高效能以及高灵活计算,具有较好的应用前景。
附图说明:
图1为实施例中软件定义变结构计算架构示意;
图2为实施例中线下设计流程示意;
图3为实施例中线上工作流程示意;
图4为实施例中空时自适应处理与基于深度学习的图像解译流程示意。
具体实施方式:
为使本发明的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本发明作进一步详细的说明。
深度学习目前在人工智能领域广泛应用,已经成为未来军民用计算平台重要的处理算法。但是,不论作为深度学习处理之前的信息/信号预处理操作还是独立进行信号/信息处理,传统信号处理算法同样是未来计算平台不可或缺的重要组成部分。本发明实施例,提供一种软件定义变结构计算架构,包含如下内容:用于信号处理的左脑可重构计算阵列结构,用于深度学习的右脑可重构计算阵列结构,及用于依据外部输入数据和/或外部输入配置对计算任务分解并形成相应计算结构配置的系统控制模块,系统控制模块利用软件定义互连网络将分解的计算任务加载到与计算结构配置相对应的左脑可重构计算阵列结构和/或右脑可重构计算阵列结构,利用左脑可重构计算阵列结构和/或右脑可重构计算阵列结构中算粒完成计算任务。基于拟态计算思想通过建立能够满足传统信号处理与深度学习全流程计算需求的左右脑一体化软件定义变结构计算来满足人工智能计算系统多样化应用条件下高性能、高效能以及高灵活的计算需求。
作为本发明实施例中软件定义变结构计算架构,进一步地,所述左脑可重构计算阵列结构包含:由计算单元PE1组成的粗粒度浮点数可重构阵列,由嵌入式FPGA组成的细粒度可重构阵列,利用软件运行计算任务的DSP核,及用于计算资源互连的互连网络,其中,计算单元PE1为用于信号处理计算的硬件逻辑计算构件。进一步地,所述右脑可重构计算阵列结构包含:由计算单元PE2组成的粗粒度定点数可重构阵列,由嵌入式FPGA组成的细粒度可重构阵列,及利用软件运行计算任务的实时处理器,及用于计算资源互连的互连网络,其中,计算单元PE2为用于深度学习的硬件逻辑计算构件。进一步地,还包含:用于原始数据、中间计算数据及最终计算数据存储的分布式层次化存储结构。
参见图1所示,左脑可重构计算阵列部分其计算资源包括但不限于DSP核、由PE1组成的粗粒度浮点数可重构阵列以及由嵌入式FPGA组成的细粒度可重构阵列;其存储资源包括单不限于PE1内单PE私有存储模块与PE1外多PE共用存储模块等;其互连资源包括但不限于NoC、Crossbar等互连网络。其中PE1是一类硬件逻辑模块,能够通过软件定义实现多种计算功能,包括但不限于传统信号处理中大量存在且可并行加速的FFT/IFFT计算、矩阵乘法、矩阵求逆、卷积计算以及匹配滤波等,其主要特点是计算精度高、资源异构、混合颗粒度计算构件以及可重构等。右脑可重构计算阵列部分其计算资源包括但不限于实时处理器核、由PE2组成的粗粒度定点数可重构阵列以及由嵌入式FPGA组成的细粒度可重构阵列;其存储资源包括单不限于PE2内单PE私有存储模块与PE2外多PE共用存储模块等;其互连资源包括但不限于NoC、Crossbar等互连网络。其中PE2是一类硬件逻辑模块,能够通过软件定义实现深度学习算法中大量存在且可并行加速的卷积计算、矩阵乘法、池化、激活等,其主要特点是计算精度低、资源异构、混合颗粒度计算构件以及可重构等。部高密度存储部分,包括DMA、HBM以及DDR等,与PE1/PE2私有存储模块、PE1/PE2共用存储模块一起构成分布式层次化存储结构,满足对大规模原始数据、中间结果以及最终计算结果的存储需求,实现近存储计算,加速数据存取效率。系统控制部分,可由系统控制模块组成,从外部接收待计算任务,一方面实现多任务的管理,另一方面实现任务的分析与分解,并形成相应的配置信息。数据通路与配置通路,可包括输入数据管理模块与输入配置信息管理模块等,其中输入数据管理模块的作用是接收并缓存外部传输的待计算数据并进行整形,然后通过软件定义互连网络加载到相应的可重构处理阵列中进行计算;输入配置信息管理模块的作用是接收并缓存外部传输的配置信息与系统控制部分生成的配置信息,然后下发至可重构处理阵列,完成计算结构的配置。通过设计软件定义变结构计算实现左脑高精度信号处理与右脑低精度深度学习,不仅满足两者的一体化设计与高效衔接需求,而且通过软件定义变结构计算方式实现两者的高性能、高效能以及高灵活计算,
进一步地,基于上述的软件定义变结构计算架构,本发明实施例还提供一种基于软件定义的左右脑一体化资源联合分配方法,包含如下内容:
选取用于信号处理的若干算法及用于深度学习的若干算法,形成左脑可重构计算阵列结构和右脑可重构计算阵列结构中各类型算粒;
依据计算需求、存储需求及互连需求提取可重构计算阵列结构中算粒;并针对提取的各算粒通过计算效果的评估优化,构建最优的混合颗粒度可重构计算阵列;
对实时加载的任务结合混合颗粒度可重构计算阵列进行任务模块化分解,并生成计算配置信息;
依据计算配置信息,左脑可重构计算阵列结构和/或右脑可重构计算阵列结构构建计算结构并驱动任务待计算数据输入进行计算;并依据任务执行情况及计算结构实时状态对当前计算任务与计算结构的匹配性进行综合评估和适时调整。
基于拟态计算思想,通过建立混合颗粒度的异构构件化计算资源池、分布式层次化存储结构以及软件定义互连结构,根据任务计算需求与负载变化实现软件定义灵活变结构的左右脑计算方法,一方面解决传统信号处理与深度学习的高效衔接与一体化实现,另一方面通过软件定义变结构计算解决传统信号处理与深度学习的高性能、高效能以及高灵活实现问题。
作为本发明实施例中基于软件定义的左右脑一体化资源联合分配方法,进一步地,左脑可重构计算阵列结构中的算粒包括但不限于:FFT/IFFT计算、矩阵乘法、矩阵求逆、卷积计算以及匹配滤波。进一步地,右脑可重构计算阵列结构中算粒包括但不限于:卷积计算、矩阵乘法、池化处理及全连接处理。进一步地,通过迭代算法从计算性能、效能、重构灵活性及重构便捷性来综合评估提取的算粒设计、存储结构设计及互连结构设计,选取综合评估结果最优的情形来构建混合颗粒度可重构计算阵列,其中,构建的混合颗粒度可重构计算阵列包括左脑可重构计算阵列结构和/或右脑可重构计算阵列结构两者中算粒资源池、存储结构及互连结构。进一步地,对最优的混合颗粒度可重构计算阵列通过资源虚拟化,并利用主动查询和被动感知相结合方式对资源状态信息进行监控。进一步地,生成计算配置信息时,根据计算和/或存储资源及状态运行信息,如果浮点数与定点数粗粒度可重构阵列资源与任务各个模块的计算需求相匹配,则优先使用粗粒度可重构阵列实现任务模块计算;否则,对无法满足计算需求的任务模块进行软硬件划分,对于并行计算可行性小于设定阈值的情形,跳转控制需求大于需求阈值的计算模块采用软件在DSP核或实时处理器上实现,对于并行计算可行性大于设定阈值的情形,计算密集型计算模块采用硬件在嵌入式FPGA构成的细粒度可重构阵列上实现。
结合图2和3,本案方案中方法可分为线下设计和线上重构两部分。其中,信号处理与深度学习一体化软件定义计算架构的线下设计工作流程如图2所示:
第一步,选定若干类典型且常用的信号处理算法与深度学习算法。算法典型是指计算流程中包含了传统信号处理中大量存在且可并行加速的FFT/IFFT计算、矩阵乘法、矩阵求逆、卷积计算以及匹配滤波等模块或者深度学习算法中大量存在且可并行加速的卷积计算、矩阵乘法等模块;算法常用是指目前应用较多、效果较好的算法,未来具有较长的应用周期。
第二步,根据选定的信号处理算法与深度学习算法,从计算需求、存储需求以及互连需求等方面展开分析,完成算粒提取与设计、存储结构设计以及互连结构设计等,并针对选定算法的计算效果,从计算性能、效能、重构灵活性以及重构便捷性的多个方面进行评估;
第三步,判断评估结果是否最优,如最优则进行左脑(图1所示左侧计算阵列)与右脑(图1所示右侧计算阵列)的混合颗粒度可重构计算阵列构建,包括计算资源池、存储结构以及互连结构等;如非最优则重新迭代优化;
第四步,对可重构计算阵列的各类资源进行资源虚拟化,实现对各类资源的准确刻画,为资源调度、管理以及状态监控奠定基础,并向上提供多粒度调度接口;
第五步,基于资源虚拟化建立资源状态监控模块,实现对各类资源状态的实时监控,为计算结构的在线构建与实时优化奠定基础。
信号处理与深度学习一体化软件定义计算架构的线上重构工作流程如附图3所示:
第一步,对实时加载的信号处理与深度学习任务进行调度管理。首先按照任务优先级进行排序,优先级高的任务先进行处理,优先级低的任务后进行处理;
第二步,在系统控制部分对任务进行分析与分解。任务计算流程采用高级语言描述,针对任务计算流程,结合计算/存储资源池算粒构成与布局情况以及资源状态实时监控信息,将其进行模块化分解;
第三步,根据计算/存储资源池算粒构成与布局情况以及资源状态实时监控信息,生成配置信息。如果浮点数与定点数粗粒度可重构阵列资源能够满足任务各个模块的计算需求,则优先使用粗粒度可重构阵列;如果无法满足,则对无法满足计算需求的模块进行软硬件划分:对于并行计算可行性小,跳转控制需求大的计算模块采用软件实现方式,在DSP核或实时处理器上实现;对于并行计算可行性大,计算密集型的计算模块采用硬件实现方式,在嵌入式FPGA上实现;
第四步,将生成的配置信息或者由外部直接输入的配置信息下发至相应的左脑(图1所示左侧阵列)与右脑(图1所示右侧阵列)上;
第五步,根据下发的配置信息,完成相应的计算结构构建,并驱动待计算数据输入进行计算;
第六步,根据任务执行的实施情况或任务结束后的性能与效能指标,并结合计算/存储资源池的实时状态监控信息,对当前计算任务与计算结构的匹配性进行综合评估,如需改进则对计算结构进行适时调整,如无需改进,则维持当前计算结构不变。
本案实施例方案中,基于拟态计算思想通过建立混合颗粒度的异构构件化计算资源池、分布式层次化存储结构以及软件定义互连结构,根据任务计算需求与负载变化实现软件定义灵活变结构计算架构,一方面将通常为浮点数计算的传统信号处理与通常为定点数计算的深度学习计算设计在同一个计算架构下,一方面能够实现传统信号处理的单独执行(定点数深度学习计算阵列关闭以降低功耗)、深度学习计算的单独执行(浮点数信号处理阵列关闭以降低功耗)以及从传统信号处理到深度学习计算的高效衔接,对从原始数据到数据预处理再到深度学习处理的全流程支撑;另一方面通过基于混合颗粒度软硬件协同的变结构计算方式,实现计算结构适应应用,达到传统信号处理与深度学习计算的高性能、高效能以及高灵活,提升计算系统的综合性能指标。
为验证本案方案有效性,下面结合雷达信号空时自适应处理与基于深度学习的R-D图像目标检测这一应用任务对本案方案中线下设计与线上重构两大部分及架构做进一步解释说明:
雷达信号空时自适应处理与基于深度学习的R-D图像解译的处理流程及其主要计算模块如图4所示,包括动目标指示(MTI)、脉冲压缩、相参积累、空时自适应处理(STAP)、基于CNN的图像目标检测等步骤。其中,基于CNN的图像目标检测步骤采用深度学习算法与定点数计算,其主要计算模块包括卷积计算与矩阵乘法计算;其余步骤属于传统信号处理范畴,采用浮点数计算,其主要计算模块包括FFT/IFFT计算、矩阵乘法、矩阵求逆等。
线下设计:
第一步,包含雷达信号空时自适应处理与基于CNN的R-D图像目标检测算法在内,将大斜视SAR成像、光学遥感图像解译、脉冲多普勒雷达信号处理、RNN、LSTM等算法选定为算法集合。这些算法包含了传统信号处理中大量存在且可并行加速的FFT/IFFT计算、矩阵乘法、矩阵求逆、卷积计算以及匹配滤波等模块或者深度学习算法中大量存在且可并行加速的卷积计算、矩阵乘法等模块,且应用效果良好。
第二步,根据选定的信号处理算法与深度学习算法,对各个算法的计算需求、存储需求以及互连需求等方面展开详细分析,从计算流程共通性出发完成算粒提取与设计、存储结构设计以及互连结构设计等,并针对选定算法的计算效果,从计算性能、效能、重构灵活性以及重构便捷性的多个方面进行评估;
第三步,判断评估结果是否最优,如最优则进行左脑信号处理(图1所示左侧计算阵列)与右脑深度学习(图2所示右侧计算阵列)的混合颗粒度可重构计算阵列构建,包括计算资源池、存储结构以及互连结构等;如非最优则重新迭代优化;
第四步,对由PE1与PE2等组成的粗粒度可重构计算阵列、嵌入式FPGA组成的细粒度可重构逻辑以及DSP核与实时处理器核等通用处理核进行虚拟化,对每一部分计算资源、存储资源以及互连资源的性能、效能、存储量、吞吐率以及传输带宽等参数进行形式化描述,构成多粒度调度接口;
第五步,基于资源虚拟化建立资源状态监控模块,采用主动查询与被动感知相结合的方式实现对资源的工作参数信息以及是否可用、是否被占用等状态信息的监控。
线上重构:
第一步,对实时加载的信号处理与深度学习任务进行调度管理。对雷达信号空时自适应处理与基于CNN的R-D图像目标检测算法来说,图1所示左侧左脑可重构计算阵列接收天线阵列下行数据(原始数据),进行MTI、脉冲压缩、相参积累以及STAP处理等,形成R-D图像,然后将R-D图像输入图1所示右脑可重构计算阵列中,进行基于CNN的R-D图像目标检测;
第二步,在系统控制部分对任务进行分析与分解。将传统信号处理中MTI、脉冲压缩、相参积累以及STAP等步骤与CNN网络中卷积层、全连接层、池化层等步骤进行详细分解,得到复数乘法、FFT/IFFT计算、矩阵求逆、矩阵乘法、卷积计算等计算密集且可并行开展的模块以及比较、取最大值等不宜并行计算的模块;
第三步,根据计算/存储资源池算粒构成与布局情况以及资源状态实时监控信息,生成配置信息。如果浮点数与定点数粗粒度可重构阵列资源能够满足任务各个模块的计算需求,则优先使用粗粒度可重构阵列;如果无法满足,则对无法满足计算需求的模块进行软硬件划分:对于并行计算可行性小,跳转控制需求大的计算模块采用软件实现方式,在DSP核或实时处理器上实现;对于并行计算可行性大,计算密集型的计算模块采用硬件实现方式,在嵌入式FPGA上实现;
第四步,将生成的配置信息或者由外部直接输入的配置信息下发至相应的左脑信号处理阵列(图1所示的左侧阵列)与右脑深度学习阵列(图1所示的右侧阵列)上;
第五步,根据下发的配置信息,完成相应的计算结构构建,并驱动待计算数据输入进行计算;
第六步,根据任务执行的实施情况或任务结束后的性能与效能指标,并结合计算/存储资源池的实时状态监控信息,对当前计算任务与计算结构的匹配性进行综合评估,如需改进则对计算结构进行适时调整,如无需改进,则维持当前计算结构不变。
本案实施例方案中,将通常为浮点数计算的传统信号处理与通常为定点数计算的深度学习计算设计在同一个计算架构下,实现对两类算法的兼容计算;通过基于混合颗粒度软硬件协同的变结构计算方式,实现计算结构适应应用,达到传统信号处理与深度学习计算的高性能、高效能以及高灵活。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
基于上述的系统,本发明实施例还提供一种服务器,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的方法。
基于上述的系统,本发明实施例还提供一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现上述的方法。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述系统实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述系统实施例中相应内容。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述系统实施例中的对应过程,在此不再赘述。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、系统和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和系统,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述系统的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (9)

1.一种基于软件定义的左右脑一体化资源联合分配方法,其特征在于,基于软件定义变结构计算架构实现,软件定义变结构计算架构包含:用于信号处理的左脑可重构计算阵列结构,用于深度学习的右脑可重构计算阵列结构,及用于依据外部输入数据和/或外部输入配置对计算任务分解并形成相应计算结构配置的系统控制模块,系统控制模块利用软件定义互连网络将分解的计算任务加载到与计算结构配置相对应的左脑可重构计算阵列结构和/或右脑可重构计算阵列结构,利用左脑可重构计算阵列结构和/或右脑可重构计算阵列结构中算粒完成计算任务;联合分配的实现过程包含如下内容:
选取用于信号处理的若干算法及用于深度学习的若干算法,形成左脑可重构计算阵列结构和右脑可重构计算阵列结构中各类型算粒;
依据计算需求、存储需求及互连需求提取可重构计算阵列结构中算粒;并针对提取的各算粒通过计算效果的评估优化,构建最优的混合颗粒度可重构计算阵列;
对实时加载的任务结合混合颗粒度可重构计算阵列进行任务模块化分解,并生成计算配置信息;
依据计算配置信息,左脑可重构计算阵列结构和/或右脑可重构计算阵列结构构建计算结构并驱动任务待计算数据输入进行计算;并依据任务执行情况及计算结构实时状态对当前计算任务与计算结构的匹配性进行综合评估和适时调整。
2.根据权利要求1所述的基于软件定义的左右脑一体化资源联合分配方法,其特征在于,左脑可重构计算阵列结构中的算粒包括但不限于:FFT/IFFT计算、矩阵乘法、矩阵求逆、卷积计算以及匹配滤波。
3.根据权利要求1所述的基于软件定义的左右脑一体化资源联合分配方法,其特征在于,右脑可重构计算阵列结构中算粒包括但不限于:卷积计算、矩阵乘法、池化处理及全连接处理。
4.根据权利要求1所述的基于软件定义的左右脑一体化资源联合分配方法,其特征在于,通过迭代算法从计算性能、效能、重构灵活性及重构便捷性来综合评估提取的算粒设计、存储结构设计及互连结构设计,选取综合评估结果最优的情形来构建混合颗粒度可重构计算阵列,其中,构建的混合颗粒度可重构计算阵列包括左脑可重构计算阵列结构和/或右脑可重构计算阵列结构两者中算粒资源池、存储结构及互连结构。
5.根据权利要求1所述的基于软件定义的左右脑一体化资源联合分配方法,其特征在于,对最优的混合颗粒度可重构计算阵列通过资源虚拟化,并利用主动查询和被动感知相结合方式对资源状态信息进行监控。
6.根据权利要求1所述的基于软件定义的左右脑一体化资源联合分配方法,其特征在于,生成计算配置信息时,根据计算和/或存储资源及状态运行信息,如果浮点数与定点数粗粒度可重构阵列资源与任务各个模块的计算需求相匹配,则优先使用粗粒度可重构阵列实现任务模块计算;否则,对无法满足计算需求的任务模块进行软硬件划分,对于并行计算可行性小于设定阈值的情形,跳转控制需求大于需求阈值的计算模块采用软件在DSP核或实时处理器上实现,对于并行计算可行性大于设定阈值的情形,计算密集型计算模块采用硬件在嵌入式FPGA构成的细粒度可重构阵列上实现。
7.根据权利要求1所述的基于软件定义的左右脑一体化资源联合分配方法,其特征在于,所述左脑可重构计算阵列结构包含:由计算单元PE1组成的粗粒度浮点数可重构阵列,由嵌入式FPGA组成的细粒度可重构阵列,利用软件运行计算任务的DSP核,及用于计算资源互连的互连网络,其中,计算单元PE1为用于信号处理计算的硬件逻辑计算构件。
8.根据权利要求1所述的基于软件定义的左右脑一体化资源联合分配方法,其特征在于,所述右脑可重构计算阵列结构包含:由计算单元PE2组成的粗粒度定点数可重构阵列,由嵌入式FPGA组成的细粒度可重构阵列,及利用软件运行计算任务的实时处理器,及用于计算资源互连的互连网络,其中,计算单元PE2为用于深度学习的硬件逻辑计算构件。
9.根据权利要求1或7或8所述的基于软件定义的左右脑一体化资源联合分配方法,其特征在于,还包含:用于原始数据、中间计算数据及最终计算数据存储的分布式层次化存储结构。
CN202110626788.7A 2021-06-04 2021-06-04 软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法 Active CN113553031B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110626788.7A CN113553031B (zh) 2021-06-04 2021-06-04 软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110626788.7A CN113553031B (zh) 2021-06-04 2021-06-04 软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法

Publications (2)

Publication Number Publication Date
CN113553031A CN113553031A (zh) 2021-10-26
CN113553031B true CN113553031B (zh) 2023-02-24

Family

ID=78130326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110626788.7A Active CN113553031B (zh) 2021-06-04 2021-06-04 软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法

Country Status (1)

Country Link
CN (1) CN113553031B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117348998A (zh) * 2023-12-04 2024-01-05 北京怀美科技有限公司 应用于检测计算的加速芯片架构及计算方法
CN117851070B (zh) * 2024-01-18 2024-06-07 北京怀美科技有限公司 应用于检测任务的计算芯片架构及计算方法

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7591011B1 (en) * 2005-04-22 2009-09-15 Sun Microsystems, Inc. Assigning higher priority to transactions based on subscription level
CN106294278A (zh) * 2016-08-01 2017-01-04 东南大学 用于动态可重构阵列计算系统的自适硬件预配置控制器
CN106339072A (zh) * 2015-07-09 2017-01-18 中国科学院声学研究所 一种基于左右脑模型的分布式大数据实时处理系统及方法
CN106815070A (zh) * 2016-12-30 2017-06-09 中国科学院计算技术研究所 一种用于图像分析的高性能计算框架方法及系统
CN107273331A (zh) * 2017-06-30 2017-10-20 山东超越数控电子有限公司 一种基于cpu+gpu+fpga架构的异构计算系统和方法
CN108363615A (zh) * 2017-09-18 2018-08-03 清华大学无锡应用技术研究院 用于可重构处理系统的任务分配方法和系统
CN108628800A (zh) * 2018-05-08 2018-10-09 济南浪潮高新科技投资发展有限公司 一种动态可重构的智能计算集群及其配置方法
CN108984309A (zh) * 2018-08-07 2018-12-11 郑州云海信息技术有限公司 一种rack服务器资源池化系统及方法
CN109144688A (zh) * 2015-03-27 2019-01-04 华为技术有限公司 异构多核可重构计算平台上任务调度的方法和装置
CN109274908A (zh) * 2018-08-31 2019-01-25 中国人民解放军军事科学院军事医学研究院 基于左右脑分工理论的增强阈下信息刺激强度的装置
CN110489223A (zh) * 2019-08-26 2019-11-22 北京邮电大学 一种异构集群中任务调度方法、装置及电子设备
CN112398691A (zh) * 2020-11-17 2021-02-23 中国人民解放军战略支援部队信息工程大学 信号处理平台网络架构及硬件设备虚拟化方法和系统
CN112486903A (zh) * 2020-12-18 2021-03-12 清华大学 可重构处理单元、可重构处理单元阵列及其运行方法
CN112800715A (zh) * 2021-01-14 2021-05-14 国家数字交换系统工程技术研究中心 软件定义晶上系统及数据交互方法和系统体系架构

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101833368B (zh) * 2010-04-13 2012-03-28 杭州电子科技大学 一种软硬件协调处理的局部动态可重构系统能量管理方法
CN104391750B (zh) * 2014-11-26 2018-05-04 浪潮(北京)电子信息产业有限公司 一种基于软件定义的混合异构主机系统
CN105487838B (zh) * 2015-11-23 2018-01-26 上海交通大学 一种动态可重构处理器的任务级并行调度方法与系统
US10565016B2 (en) * 2016-09-20 2020-02-18 International Business Machines Corporation Time frame bounded execution of computational algorithms
US10417012B2 (en) * 2016-09-21 2019-09-17 International Business Machines Corporation Reprogramming a field programmable device on-demand
CN107341133B (zh) * 2017-06-24 2021-01-22 中国人民解放军信息工程大学 基于任意维数矩阵lu分解的可重构计算结构的调度方法

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7591011B1 (en) * 2005-04-22 2009-09-15 Sun Microsystems, Inc. Assigning higher priority to transactions based on subscription level
CN109144688A (zh) * 2015-03-27 2019-01-04 华为技术有限公司 异构多核可重构计算平台上任务调度的方法和装置
CN106339072A (zh) * 2015-07-09 2017-01-18 中国科学院声学研究所 一种基于左右脑模型的分布式大数据实时处理系统及方法
CN106294278A (zh) * 2016-08-01 2017-01-04 东南大学 用于动态可重构阵列计算系统的自适硬件预配置控制器
CN106815070A (zh) * 2016-12-30 2017-06-09 中国科学院计算技术研究所 一种用于图像分析的高性能计算框架方法及系统
CN107273331A (zh) * 2017-06-30 2017-10-20 山东超越数控电子有限公司 一种基于cpu+gpu+fpga架构的异构计算系统和方法
CN108363615A (zh) * 2017-09-18 2018-08-03 清华大学无锡应用技术研究院 用于可重构处理系统的任务分配方法和系统
CN108628800A (zh) * 2018-05-08 2018-10-09 济南浪潮高新科技投资发展有限公司 一种动态可重构的智能计算集群及其配置方法
CN108984309A (zh) * 2018-08-07 2018-12-11 郑州云海信息技术有限公司 一种rack服务器资源池化系统及方法
CN109274908A (zh) * 2018-08-31 2019-01-25 中国人民解放军军事科学院军事医学研究院 基于左右脑分工理论的增强阈下信息刺激强度的装置
CN110489223A (zh) * 2019-08-26 2019-11-22 北京邮电大学 一种异构集群中任务调度方法、装置及电子设备
CN112398691A (zh) * 2020-11-17 2021-02-23 中国人民解放军战略支援部队信息工程大学 信号处理平台网络架构及硬件设备虚拟化方法和系统
CN112486903A (zh) * 2020-12-18 2021-03-12 清华大学 可重构处理单元、可重构处理单元阵列及其运行方法
CN112800715A (zh) * 2021-01-14 2021-05-14 国家数字交换系统工程技术研究中心 软件定义晶上系统及数据交互方法和系统体系架构

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Deep Learning and Reconfigurable Platforms in the Internet of Things: Challenges and Opportunities in Algorithms and Hardware;ROBERTO FERNANDEZ MOLANES.et;《IEEE Industrial Electronics Magazine 》;20180626;第12卷(第2期);全文 *
基于FPGA的动态部分可重构智能I/O接口设计与实现;徐健等;《计算机工程》;20160615(第06期);全文 *
基于FPGA的软硬件统一多任务模型及功能调度技术研究;戴竞;《工业控制计算机》;20130525(第05期);全文 *
面向智能计算的国产众核处理器架构研究;李宏亮等;《中国科学》;20190315;第49卷(第3期);全文 *

Also Published As

Publication number Publication date
CN113553031A (zh) 2021-10-26

Similar Documents

Publication Publication Date Title
Abdelouahab et al. Accelerating CNN inference on FPGAs: A survey
CN113553031B (zh) 软件定义变结构计算架构及利用其实现的左右脑一体化资源联合分配方法
WO2020073211A1 (zh) 运算加速器、处理方法及相关设备
CN110633153A (zh) 一种用多核处理器实现神经网络模型拆分方法及相关产品
CN105373517A (zh) 基于Spark的分布式稠密矩阵求逆并行化运算方法
CN108304926B (zh) 一种适用于神经网络的池化计算装置及方法
Zhong et al. DualConv: Dual convolutional kernels for lightweight deep neural networks
Fu et al. Mobile robot object recognition in the internet of things based on fog computing
Sivasankari et al. High-throughput and power-efficient convolutional neural network using one-pass processing elements
CN111382839B (zh) 剪枝神经网络的方法和装置
CN117725963A (zh) 一种用于Transformer模型推理计算的方法、系统及装置
Zhan et al. Field programmable gate array‐based all‐layer accelerator with quantization neural networks for sustainable cyber‐physical systems
Adel et al. Accelerating deep neural networks using FPGA
CN109542513B (zh) 一种卷积神经网络指令数据存储系统及方法
DE102022130788A1 (de) Verfahren, einrichtungen und herstellungsartikel zur erzeugung von befehlslisten zur auslagerung an beschleunigerschaltungsanordnung
Tavakoli et al. A high throughput hardware CNN accelerator using a novel multi-layer convolution processor
Farkaš et al. Artificial Neural Networks and Machine Learning–ICANN 2020: 29th International Conference on Artificial Neural Networks, Bratislava, Slovakia, September 15–18, 2020, Proceedings, Part II
DE112022000723T5 (de) Verzweigungsvorgang für eine schaltung eines neuronalen prozessors
Rao et al. An energy-efficient accelerator for rain removal based on convolutional neural network
WO2021120036A1 (zh) 数据处理装置和数据处理方法
Xu et al. Efficient hardware implementation of cellular neural networks with powers-of-two based incremental quantization
Bai A Flexible and Low-Resource CNN Accelerator on FPGA for Edge Computing
Mahajan et al. Review of Artificial Intelligence Applications and Architectures
Pillai Enhancing Energy Efficiency of Intensive Computing Applications using Approximate Computing
Sharma et al. Energy Efficient Hardware Implementation of 2-D Convolution for Convolutional Neural Network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant