一种基于MPSoC和FPGA的可定制异构计算系统及其计算方法技术方案

技术编号:36975704 阅读:13 留言:0更新日期:2023-03-25 17:55
本发明专利技术提出了一种基于MPSoC和FPGA的可定制异构计算系统及其计算方法,计算系统启动,计算状态控制机CSCM进入初始化状态并完成自身的功能初始化,对FPGA处理器和MPSoC处理器的其他模块进行参数配置,启动数据打包/解包模块P/U_DB;通过对数据打包/解包模块P/U_DB解包数据状态的监控,控制乒乓缓存模块PPB开始数据接收和乒乓缓存;监控乒乓缓存模块PPB的状态,在达到缓存设定上限后,启动高并行度计算模块HPC,构建具有高度并行结构的计算单元,进入计算运行状态,直至产生计算结果;在高并行度计算模块HPC完成计算任务后,将计算结果写入FIFO模块,FIFO模块将结果输出,完成计算;本发明专利技术设计的计算架构和系统集成度高、可扩展性强、功耗配置灵活。功耗配置灵活。功耗配置灵活。

【技术实现步骤摘要】
一种基于MPSoC和FPGA的可定制异构计算系统及其计算方法


[0001]本专利技术涉及高能效可定制计算领域,具体地,涉及一种基于MPSoC和FPGA的可定制异构计算系统及其计算方法。

技术介绍

[0002]随着摩尔定律发展速度的放缓,仅依靠半导体工艺制程水平来提高处理器性能的时代已逐渐走向终结,领域定制计算成为当今解决大规模信息处理和高算力需求的重要方法,尤其是针对于边缘端的轻小型化设备或终端,定制计算已经成为平衡计算性能和功耗,以实现高能效处理的主流技术手段。领域可定制的高能效计算技术是一种面向于特定应用领域或任务进行定制化计算机体系架构设计的技术,在特定领域内具有高能效、高可靠和高适应性的特点。
[0003]现场可编程逻辑门阵列(Field

Programmable Gate Array,FPGA)作为一种重要的可重构硬件,因其灵活可编程、高并行度和高能效的特点,在领域定制计算领域受到了广泛的关注,成为高能效定制计算技术研究、应用和实现的主要平台之一,在人工智能、数字信号处理以及大数据领域发挥着越来越重要的作用,特别是在航空、航天以及军事国防等小批量、多品种的特种装备中,应用FPGA实现高性能的计算任务已经成为主流趋势。然而,随着应用场景逐渐趋于多元化发展,FPGA本身的缺陷和技术短板也逐渐显现。FPGA主要由可编程逻辑块、布线资源和IO资源构成,极其适用于处理大规模并行计算,但受芯片面积和功率的限制,FPGA运行频率通常都不会超过300MHz,致使其在处理串行结构的计算任务时性能表现不佳,限制了算法在FPGA上运行时整体性能的发挥,往往容易造成系统设计的次优化,最终难以达到提升系统处理性能,加速计算过程的目的。
[0004]针对复杂且结构多样化的计算任务,现有的方法通常采用可编程片上系统(System ofChip,SoC)或高性能通用处理器进行计算。对于可编程SoC通常是在一块芯片上集成了FPGA和通用处理器核心,虽然具有了处理复杂和简单高并行度任务的能力,但由于嵌入的硬核单元占据了大量芯片面积,致使FPGA部分的计算资源大幅缩减,对于复杂算法的片上部署造成了新的困难;对于高性能通用处理器,虽然可以较高的主频进行运算,且适应于处理更加复杂的任务,但因其固定的硬件结构和有限的并行度设计,在与算法匹配时的灵活性和可扩展性明显不足,在处理计算密集型任务时也存在较大的瓶颈限制。因此,为解决现有技术中,同构计算系统在灵活性、计算性能、通用性和可定制方面难以平衡的问题,需要设计一种能够适应多样化计算任务需要的可定制计算平台,使其能够兼容不同规模和不同类型的计算方法,满足硬件和算法的高度匹配性设计要求,从而为提升和优化计算系统全局性能提供基础支撑。

技术实现思路

[0005]本专利技术针对上述问题,提出了一种基于MPSoC和FPGA的可定制异构计算系统及其计算方法;设计具有可定制、可重构能力的异构计算架构,满足通用和专用计算需求下对计
算系统灵活性和高能效的现实需求;使用可编程逻辑、硬宏单元和高速收发接口完成可重构计算单元和数据调度策略的设计和实现,并对异构部件计算过程中的协同和数据共享方式进行控制。
[0006]本专利技术是通过以下方案实现的:
[0007]一种基于MPSoC和FPGA的可定制异构计算系统:
[0008]所述系统具体包括MPSoC处理器、FPGA处理器、DDR存储颗粒、非易失性存储器和FMC标准接口;
[0009]所述MPSoC处理器包括内嵌的ARM CortexA53和R5硬核处理器核心、视频编解码单元以及I/O资源,所述I/O接口包括QSPI、UART和GPIO;
[0010]所述FPGA处理器包括PL资源和可复用I/O接口;
[0011]所述MPSoC处理器通过高速收发器接口和I/O接口与FPGA处理器相连接;
[0012]所述DDR存储颗粒分别与MPSoC处理器和FPGA处理器相连接,用于数据的高度读写与访问,实现计算数据或结果的临时缓存和交互;
[0013]所述非易失性存储器分别与MPSoC处理器和FPGA处理器相连接,用于数据的长期存储,保存启动程序、处理结果和配置参数;
[0014]所述FMC标准接口分别与MPSoC处理器和FPGA处理器相连接,用于提供标准化I/O接口。
[0015]进一步地,
[0016]所述FPGA处理器包括数据打包/解包模块P/U_DB,乒乓缓存模块PPB,高并行度计算模块HPC,FIFO模块,Aurora数据传输模块DTB,计算状态控制机CSCM,指令传输模块ITB和时钟同步器CS;
[0017]所述MPSoC处理器包括数据打包/解包模块P/U_DB,FIFO模块,Aurora数据传输模块DTB,应用处理器系统APS,指令传输模块ITB和时钟同步器CS。
[0018]进一步地,所述指令传输模块ITB用于计算状态控制机CSCM和应用处理器系统APS之间的指令通讯;
[0019]所述时钟同步器CS用于在MPSoC处理器和FPGA处理器之间形成并维护同步时钟。
[0020]一种应用于所述计算系统的计算方法:
[0021]所述方法具体包括以下步骤:
[0022]步骤一:计算系统启动,计算状态控制机CSCM进入初始化状态并完成自身的功能初始化,对FPGA处理器和MPSoC处理器的其他模块进行参数配置,启动数据打包/解包模块P/U_DB;
[0023]步骤二:根据模块所在位置,将数据打包/解包模块P/U_DB配置为数据打包或解包模式;
[0024]步骤三:通过对数据打包/解包模块P/U_DB解包数据状态的监控,控制乒乓缓存模块PPB开始数据接收和乒乓缓存;
[0025]步骤四:监控乒乓缓存模块PPB的状态,在达到缓存设定上限后,启动高并行度计算模块HPC,构建具有高度并行结构的计算单元,进入计算运行状态,直至产生计算结果;
[0026]步骤五:在高并行度计算模块HPC完成计算任务后,将计算结果写入FIFO模块,FIFO模块将结果输出,完成计算。
[0027]进一步地,在步骤二中,
[0028]当模块位于输入接口时,配置数据打包/解包模块P/U_DB为数据解包模式,根据预先设定的解包格式,对输入原始数据进行提取和分类,确认有效待处理数据中的通用串行计算部分和专用并行可加速计算部分,并传递至不同的数据传输模块进行分发处理;
[0029]当模块位于输出接口时,配置数据打包/解包模块P/U_DB为数据打包模式,根据预先设定的打包格式,进行数据封装,并通过FMC标准接口输出至下一级设备。
[0030]进一步地,在步骤二中,
[0031]通过数据打包/解包模块P/U_DB的数据解包识别为通用计算数据时,计算状态控制机CSCM直接进入数据发送状态,由高速收发器发送至MPSoC处理器中的应用应用处理器系统APS进行计算;
[0032]在运行过程中,如果指令终端信号本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于MPSoC和FPGA的可定制异构计算系统,其特征在于:所述系统具体包括MPSoC处理器、FPGA处理器、DDR存储颗粒、非易失性存储器和FMC标准接口;所述MPSoC处理器包括内嵌的ARM CortexA53和R5硬核处理器核心、视频编解码单元以及I/O资源,所述I/O接口包括QSPI、UART和GPIO;所述FPGA处理器包括PL资源和可复用I/O接口;所述MPSoC处理器通过高速收发器接口和I/O接口与FPGA处理器相连接;所述DDR存储颗粒分别与MPSoC处理器和FPGA处理器相连接,用于数据的高度读写与访问,实现计算数据或结果的临时缓存和交互;所述非易失性存储器分别与MPSoC处理器和FPGA处理器相连接,用于数据的长期存储,保存启动程序、处理结果和配置参数;所述FMC标准接口分别与MPSoC处理器和FPGA处理器相连接,用于提供标准化I/O接口。2.根据权利要求1所述计算系统,其特征在于:所述FPGA处理器包括数据打包/解包模块P/U_DB,乒乓缓存模块PPB,高并行度计算模块HPC,FIFO模块,Aurora数据传输模块DTB,计算状态控制机CSCM,指令传输模块ITB和时钟同步器CS;所述MPSoC处理器包括数据打包/解包模块P/U_DB,FIFO模块,Aurora数据传输模块DTB,应用处理器系统APS,指令传输模块ITB和时钟同步器CS。3.根据权利要求2所述计算系统,其特征在于:所述指令传输模块ITB用于计算状态控制机CSCM和应用处理器系统APS之间的指令通讯;所述时钟同步器CS用于在MPSoC处理器和FPGA处理器之间形成并维护同步时钟。4.一种应用于如权利要求1

3中任意一项所述计算系统的计算方法,其特征在于:所述方法具体包括以下步骤:步骤一:计算系统启动,计算状态控制机CSCM进入初始化状态并完成自身的功能初始化,对FPGA处理器和MPSoC处理器的其他模块进行参数配置,启动数据打包/解包模块P/U_DB;步骤二:根据模块所在位置,将数据打包/解包模块P/U_DB配置为数据打包或解包模式;步骤三:通过对数据打包/解包模块P/U_DB解包数据状态的监控,控制乒乓缓存模块PPB开始数据接收和乒乓缓存;步骤四:监控乒乓缓存模块PPB的状态,在达到缓存设定上限后,启动高并行度计算模块HPC,构建具有高度并行结构的计...

【专利技术属性】
技术研发人员:彭喜元姚博文彭宇刘梓豪刘连胜
申请(专利权)人:哈尔滨工业大学
类型:发明
国别省市:

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

1