一种硬件可编程异构多核片上系统技术方案

技术编号:25185082 阅读:24 留言:0更新日期:2020-08-07 21:13
本发明专利技术公开一种硬件可编程异构多核片上系统,属于集成电路技术领域。该片上系统将多核DSP、多核MPU、GPU、FPGA以及众多的IP组件,通过片上高速总线互连网络有机地组合在一起,构成一个硬件可编程、处理器多核异构的片上系统芯片,充分发挥各个异构核的专长。本发明专利技术通过多核DSP和FPGA组成的区域,用来完成高吞吐率数据预处理、密集数据运算、底层算法等业务的实现;多核MPU、GPU、FPGA加速器组成的区域,用来完成用户界面、高层算法、应用程序运行、网络传输等业务的实现。并且FPGA还可以实现多核DSP、多核MPU中所需要的硬件加速功能。基于硬件可重构,本芯片架构提高了片上系统集成的灵活性,及后期产品的可扩展性、可升级性。

【技术实现步骤摘要】
一种硬件可编程异构多核片上系统
本专利技术涉及集成电路
,特别涉及一种硬件可编程异构多核片上系统。
技术介绍
当前,通信、机器视觉、辅助驾驶、医学/生物成像、航空电子、大数据分析、物联网等应用领域都需要高性能的数字信号处理、密集数据计算能力以及很强的图形图像处理显示功能,并且还需要系统和算法具有灵活性、自适应能力。现在整机系统的更新换代速度加快,整机系统应要具有一定的升级能力,这需要产品制造后,系统中的芯片能提供一定的修改、优化和重构能力。为了满足上述需求,业界做了很多尝试,推出了相应的产品。首先是异构多核处理器,RISC通用处理器和DSP相结合的异构处理核架构具备更好的性能和更有效率的能耗。在此架构下,DSP用来处理密集数据处理、复杂算法,例如数据滤波、FFT运算等。DSP之所以实现起来效率更高,这得益于DSP的哈佛结构、SIMD结构以及特殊寻址、零开销循环方面的硬件支持等。通用处理器如ARM用来处理用户界面、控制事务、网络连接、运行操作系统和应用程序等,混合系统的总体性能得到大大的提高。传统的DSP处理器核心是一个高性能的运算单元,算法实施时运算是串行进行的,因此比较复杂的算法计算可能需要来回循环几百次才能完成,故DSP处理器处理算法总的运算速度并不是很快。在大规模数据计算时,往往需要数据运算的并行处理和高吞吐率,这样单DSP的劣势就更明显了。当单个处理器性能不能满足需求时,通常的处理方法是提高处理器的工作频率或增加处理器的数量,由于工艺、电路结构、功耗等方面的限制,处理器的工作频率提高的余地有限。现场可编程门阵列(FPGA)在并行计算方面具有较大性能优势,FPGA对信号、数据处理可以采用并行处理结构,FPGA能够实现几十乃至几百个运算单元同时进行运算。但传统的FPGA功能比较单一,主要集中在数据运算和电路控制方面;在电路规模过大时,其芯片配置时间过长。虽然FPGA有动态重配置功能使实现的电路具有一定的灵活性,但还是满足不了算法的动态快速切换以及日益的智能化、系统灵活性的需求。并且FPGA为了保证可编程逻辑块及互连具有灵活的通用编程特性,其综合实现后的实际电路延迟较大,工作频率并不高,并且相对于ASIC其电路面积利用效率偏低,难以获得像ASIC那样的高性能、高集成度、低功耗的目标。在通用处理器和DSP芯片领域,为了支持特定应用领域一些复杂的协议和算法,提升数据处理能力,在处理器中加入了专用的加速器模块,但专用的加速器功能在器件制造之后很难进行修改、扩展,系统的灵活性受到了限定。如通信所要求的带宽依赖于加速器的数量和类型,同时要求加速器具有适应性、灵活性,因此对对异构多核SOC来说,其可扩展性、适应性也是一个问题。硬件可编程异构多核片上系统可以克服上面这个问题,它将通用处理器的灵活性和FPGA的并行计算、硬件加速能力很好地结合起来,是面向大规模计算中比较理想的解决方案。但目前硬件可编程片上系统的研究主要集中在将通用RISC处理器如ARM和FPGA结合起来。很少将通用处理器、DSP、FPGA三者集成在一个芯片中,发挥各自的特长,提供单芯片全可编程异构多核片上系统。经对现有技术文献的检索发现,申请号为201410273439.1、名称为“基于ARM、DSP及FPGA的异构多核处理器及任务调度方法”的专利专利技术公开了一种异构多核处理器技术,该方案同类处理器没有采用多核结构、异构处理器之间的互连采用PCI外设互连总线或简单总线网络,不能解决当前SOC存储界面和总线的瓶颈问题,也没有提出可编程加速器功能,其用于密集数据处理能力、实际应用能力还有待加强。申请号为201110008399.4、名称为“多核DSP可重构专用集成电路系统”的专利专利技术公开了一种用于数字信号处理
的多核DSP可重构专用集成电路系统,以多核DSP为运算核心,根据不同的执行任务由FPGA来实现DSP之间的互连拓扑结构,多核DSP的运算数据由控制处理器通过存储器接口获取并传输给DSP,多核DSP的任务调度和控制是由中央处理器实施;其不足之处是多核DSP之间的互连拓扑结构根据算法运算过程需求进行硬件互连,这样互连拓扑结构参与了运算,这样虽DSP任务块的分配比较清晰,但应用适应性略差,不方便DSP多核的扩展,不方便DSP多核之间的灵活调度,另外多核DSP的任务调度还需由中央处理器实施控制,该可重构专用集成电路系统的应用还是偏重于信号处理、底层数据处理。
技术实现思路
本专利技术的目的在于提供一种硬件可编程异构多核片上系统,在保持DSP、MPU灵活的软件编程、低功耗特点的基础上,增强处理器的能力,具有硬件可编程、并行计算能力和业务功能均衡全面、应用范围广的特点。为解决上述技术问题,本专利技术提供一种硬件可编程异构多核片上系统,包括:多核DSP、多核MPU、GPU、FPGA、FPGA配置外设模块、IO外设A和IO外设B;其中,所述IO外设A通过FE总线与所述多核DSP和所述FPGA连接,向所述多核DSP和所述FPGA中传输待处理数据;所述多核DSP通过DSP-PL总线与所述FPGA实现信号、数据处理任务的切换;所述多核DSP和所述FPGA用于高吞吐率的数据预处理、密集数据处理和底层算法运算;所述多核DSP和所述多核MPU均连接有PS总线;所述FPGA配置外设模块与所述PS总线连接;所述FPGA通过BE总线连接所述IO外设B;所述FPGA通过AIP_DSP总线和AIP_MPU总线分别对所述多核DSP和所述多核MPU实现可编程硬件加速;所述GPU和所述多核MPU连接,所述多核MPU实现系统控制、用户界面及高层次算法运算,所述GPU用于图形加速。可选的,所述FPGA中包括可编程DSP加速器和可编程MPU加速器,对所述多核DSP和所述多核MPU提供可编程硬件加速;所述可编程DSP加速器通过AIP_DSP总线与所述多核DSP相连,所述可编程MPU加速器通过AIP_MPU总线与所述多核MPU相连。可选的,所述AIP_DSP总线和所述AIP_MPU总线为支持Cache一致性的高速总线,分别连到多核DSP的L2Cache存储器和所述多核MPU的L1Cache存储器处;所述PS总线是所述多核DSP和所述多核MPU之间的高速总线。可选的,所述多核DSP和所述多核MPU共享所述FPGA配置外设模块,所述FPGA配置外设模块用于对所述FPGA进行静态配置和动态重构。可选的,所述多核DSP配置片上SRAM、多级Cache以实现加速指令和数据的存取,所述多核DSP的L1、L2Cache/SRAM能够配置成Cache,或片上SRAM。可选的,所述FE总线、所述DSP-PL总线、所述PS总线和所述BE总线之间通过拓扑互连相连,提供整个系统互连的层次性、灵活性。可选的,所述FPGA还包括SRAM、硬件IP、软件可定义IP、宏模块、片上内存和接口控制器,通过可编程交叉总线或片上网络和处理器系统相连,以实现并行数据运算、硬件加速和SOC资源配置。可选的,所述硬件可编程异构多核片本文档来自技高网
...

【技术保护点】
1.一种硬件可编程异构多核片上系统,其特征在于,包括:/n多核DSP(1)、多核MPU(2)、GPU(3)、FPGA(6)、FPGA配置外设模块(7)、IO外设A(8)和IO外设B(9);其中,/n所述IO外设A(8)通过FE总线(10)与所述多核DSP(1)和所述FPGA(6)连接,向所述多核DSP(1)和所述FPGA(6)中传输待处理数据;/n所述多核DSP(1)通过DSP-PL总线(11)与所述FPGA(6)实现信号、数据处理任务的切换;所述多核DSP(1)和所述FPGA(6)用于高吞吐率的数据预处理、密集数据处理和底层算法运算;/n所述多核DSP(1)和所述多核MPU(2)均连接有PS总线(12);所述FPGA配置外设模块(7)与所述PS总线(12)连接;所述FPGA(6)通过BE总线(13)连接所述IO外设B(9);/n所述FPGA(6)通过AIP_DSP总线(14)和AIP_MPU总线(15)分别对所述多核DSP(1)和所述多核MPU(2)实现可编程硬件加速;所述GPU(3)和所述多核MPU(2)连接,所述多核MPU(2)实现系统控制、用户界面及高层次算法运算,所述GPU(3)用于图形加速。/n...

【技术特征摘要】
1.一种硬件可编程异构多核片上系统,其特征在于,包括:
多核DSP(1)、多核MPU(2)、GPU(3)、FPGA(6)、FPGA配置外设模块(7)、IO外设A(8)和IO外设B(9);其中,
所述IO外设A(8)通过FE总线(10)与所述多核DSP(1)和所述FPGA(6)连接,向所述多核DSP(1)和所述FPGA(6)中传输待处理数据;
所述多核DSP(1)通过DSP-PL总线(11)与所述FPGA(6)实现信号、数据处理任务的切换;所述多核DSP(1)和所述FPGA(6)用于高吞吐率的数据预处理、密集数据处理和底层算法运算;
所述多核DSP(1)和所述多核MPU(2)均连接有PS总线(12);所述FPGA配置外设模块(7)与所述PS总线(12)连接;所述FPGA(6)通过BE总线(13)连接所述IO外设B(9);
所述FPGA(6)通过AIP_DSP总线(14)和AIP_MPU总线(15)分别对所述多核DSP(1)和所述多核MPU(2)实现可编程硬件加速;所述GPU(3)和所述多核MPU(2)连接,所述多核MPU(2)实现系统控制、用户界面及高层次算法运算,所述GPU(3)用于图形加速。


2.如权利要求1所述的硬件可编程异构多核片上系统,其特征在于,所述FPGA(6)中包括可编程DSP加速器(16)和可编程MPU加速器(17),对所述多核DSP(1)和所述多核MPU(2)提供可编程硬件加速;所述可编程DSP加速器(16)通过AIP_DSP总线(14)与所述多核DSP(1)相连,所述可编程MPU加速器(17)通过AIP_MPU总线(15)与所述多核MPU(2)相连。


3.如权利要求2所述的硬件可编程异构多核片上...

【专利技术属性】
技术研发人员:谢长生黄旭东张猛华陈振娇
申请(专利权)人:中国电子科技集团公司第五十八研究所
类型:发明
国别省市:江苏;32

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

1