CN110096474A - 一种基于可重构计算的高性能弹性计算架构及方法 - Google Patents

一种基于可重构计算的高性能弹性计算架构及方法 Download PDF

Info

Publication number
CN110096474A
CN110096474A CN201910350928.5A CN201910350928A CN110096474A CN 110096474 A CN110096474 A CN 110096474A CN 201910350928 A CN201910350928 A CN 201910350928A CN 110096474 A CN110096474 A CN 110096474A
Authority
CN
China
Prior art keywords
rpu
controller
reconfigurable
data access
protocol
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.)
Pending
Application number
CN201910350928.5A
Other languages
English (en)
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.)
Beijing Super Dimension Computing Technology Co Ltd
Original Assignee
Beijing Super Dimension Computing Technology Co Ltd
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 Beijing Super Dimension Computing Technology Co Ltd filed Critical Beijing Super Dimension Computing Technology Co Ltd
Priority to CN201910350928.5A priority Critical patent/CN110096474A/zh
Publication of CN110096474A publication Critical patent/CN110096474A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Bus Control (AREA)

Abstract

本发明涉及一种基于可重构计算的高性能弹性计算架构,包括:可重构数据通路,用于数据流的处理。可重构控制器,用于配置管理和任务映射调度。协议控制器,用于对可重构数据通路和可重构控制器发送的数据进行协议转换。桥接模块,用于对***级的可重构数据通路和RPU内的可重构数据通路之间进行桥接;以及用于对不同RPU子芯片内的RPU内的可重构数据通路之间进行桥接。***级的可重构控制器根据指令,通过协议控制器和桥接模块将配置信息传输至RPU内的可重构控制器,并进行配置。以及通过协议控制器和桥接模块将可重构数据传输至RPU内的可重构数据通路,并进行计算。实现了在统一软件计算架构和编程接口下***计算能力的按需弹性部署。

Description

一种基于可重构计算的高性能弹性计算架构及方法
技术领域
本发明涉及可重构计算领域,尤其是涉及一种基于可重构计算的高性能弹性计算架构及方法。
背景技术
随着科技的进步,一些嵌入式环境对***的性能、能耗等需求不断提高,传统的计算模式暴露出了种种弊端。于是可重构计算便越来越受到业界的重视。可重构计算能够实现算法到计算引擎的空间映射(spatial mapping),并且在被制造成集成电路后还具有定制能力。
可重构计算具有以下几个优势:1、在制造成芯片后具有一定的定制能力,即用硅实现硬件设计后区别于传统的专用集成电路,其计算功能依然可以按需改变。2、区别于传统的指令驱动处理器,可重构计算能够实现很大程度的算法到计算引擎的空间映射。
可重构计算技术是一种介于通用芯片和专用芯片之间的折中方案,其集中了通用芯片和专用芯片的优势,能够提供高效灵活的计算能力。但现有的一些可重构计算方案当被制造成集成电路之后,其内部的可重构计算单元(reconfigurable processing unit,RPU)数量就固定了,无法根据任务对算力的需求增减RPU的数量,无法做到算力弹性部署,硬件部署灵活性差。并且多个可重构计算集成电路之间无法实现RPU阵列的统一部署,软件和算法的部署灵活性差。
发明内容
本发明主要实现解决现有可重构计算架构技术的硬件弹性部署问题和软件部署灵活性问题。实现在统一软件计算架构和编程接口下的***计算能力的按需弹性部署。
为实现上述目的,本发明第一方面提供了一种基于可重构计算的高性能弹性计算架构,包括:***级的可重构数据通路,用于高性能弹性计算(high performance elasticcomputing,HEC)主控***中数据的处理;可重构计算单元RPU内的可重构数据通路,用于RPU子芯片中数据的处理;***级的可重构控制器,用于对***级的可重构数据通路进行配置管理和任务映射调度;RPU内的可重构控制器用于对RPU内的可重构数据通路进行配置管理和任务映射调度;RPU之间的可重构数据通路,用于不同RPU子芯片之间数据的处理;协议控制器,用于对可重构数据通路和可重构控制器发送或接收的数据进行协议转换;桥接模块,用于对***级的可重构数据通路和RPU内的可重构数据通路之间进行桥接;以及用于对不同RPU子芯片内的RPU内的可重构数据通路之间进行桥接;***级的可重构控制器根据指令,通过协议控制器和桥接模块将配置信息传输至RPU内的可重构控制器,并进行配置;其中,RPU内的可重构控制器用于配置RPU内的可重构数据通路的计算功能;以及通过协议控制器和桥接模块将可重构数据传输至RPU内的可重构数据通路,并进行计算;RPU内的可重构数据通路通过协议控制器和桥接模块将计算结果传输至***级的可重构数据通路;或通过RPU之间的可重构数据通路传输至其它RPU子芯片内的RPU内的可重构数据通路进行计算。
优选地,协议控制器包括第一协议控制器和第二协议控制器;第一协议控制器和桥接模块位于HEC主控***中,第二协议控制器位于RPU子芯片中。第一协议控制器将***级的可重构控制器发送的配置信息转换为串行的连接信号,并通过桥接模块发送至第二协议控制器;第二协议控制器将连接信号进行解析,并将解析后的数据发送至RPU内的可重构控制器。
优选地,协议控制器包括第一协议控制器和第二协议控制器;第一协议控制器和桥接模块位于HEC主控***中,第二协议控制器位于RPU子芯片中。第一协议控制器将***级的可重构数据通路发送的可重构数据转换为串行的连接信号,并通过桥接模块发送至第二协议控制器;第二协议控制器将连接信号进行解析,并将解析后的数据发送至RPU内的可重构数据通路。
优选地,协议控制器包括第一协议控制器和第二协议控制器;第一协议控制器和桥接模块位于HEC主控***中,第二协议控制器位于RPU子芯片中。第二协议控制器将RPU内的可重构数据通路的可重构数据转换为串行的连接信号,并通过桥接模块发送至第一协议控制器;第一协议控制器将连接信号进行解析,并将解析后的数据发送至***级的可重构数据通路。
优选地,协议控制器还包括第三协议控制器;其中,第三协议控制器所在的RPU子芯片与第二协议控制器所在的RPU子芯片不是同一个RPU子芯片。第二协议控制器将RPU内的可重构数据通路的可重构数据转换为串行的连接信号,并通过桥接模块发送至第三协议控制器;第三协议控制器将连接信号进行解析,并将解析后的数据发送至RPU内的可重构数据通路。
优选地,RPU内的可重构控制器包括配置信息解析器、配置流程控制器和配置存储器,配置信息解析器、配置流程控制器和配置存储器位于RPU子芯片中。配置信息解析器用于解析***级的可重构控制器写入的配置信息,并将解析后的至少一个配置子信息写入配置存储器中,以及将解析后的流程控制信息写入配置流程控制器;配置流程控制器根据流程控制信息,按照预先设定的流程从配置存储器中读出配置子信息,并对RPU内的可重构数据通路进行配置。
优选地,当RPU内的可重构数据通路完成计算后,配置流程控制器接收RPU内的可重构数据通路发送的反馈信号,并从配置存储器中读出下一次配置的配置子信息,并对RPU内的可重构数据通路进行配置。
优选地,RPU内的可重构数据通路包括:运算单元(processing element,PE)阵列、输入数据存储器、输出数据存储器、中间数据存储器和RPU内直接存储器访问(directmemory access,DMA)控制器,PE阵列、输入数据存储器、输出数据存储器、中间数据存储器和RPU内DMA控制器位于RPU子芯片中。根据RPU内的可重构控制器的配置,RPU内DMA控制器对PE阵列配置计算功能;以及RPU内DMA控制器控制从***级的可重构数据通路中读取原始数据,并写入输入数据存储器中;PE阵列读取输入数据存储器中的原始数据并进行计算,将计算结果存储在输出数据存储器;其中,将计算过程中的中间运算结果存储在中间数据存储器。RPU内DMA控制器从输出数据存储器中读出计算结果,并传输给***级的可重构数据通路。
优选地,***级的可重构数据通路包括主控***直接存储器访问DMA控制器、片上存储器、片外存储控制器和片外存储器,主控***DMA控制器、片上存储器、片外存储控制器和片外存储器位于HEC主控***中。主控***DMA控制器、片上存储器、片外存储控制器通过多层***总线相互连接;片外存储控制器和片外存储器相连接;主控***DMA控制器被***级的可重构控制器配置后,控制片外存储控制器将片外存储器的数据读出并写入片上存储器;或主控***DMA控制器被***级的可重构控制器配置后,控制片外存储控制器将片上存储器的数据读出并写入片外存储器。
优选地,***级的可重构控制器包括主控制器和配置总线,主控制器和配置总线位于HEC主控***中。其中,主控制器通过多层***总线对***级的可重构数据通路进行***级控制;其中,外设控制器位于HEC主控***中;以及主控制器通过配置总线向RPU内的可重构控制器写入配置信息,并控制RPU内的可重构数据通路进行计算。
本发明另一方面提供了一种基于可重构计算的高性能弹性计算方法,包括:根据指令,高性能弹性计算HEC主控***对子芯片阵列中的至少一个RPU子芯片进行配置,并将数据传输给至少一个RPU子芯片进行计算。至少一个RPU子芯片将计算结果传输至HEC主控***。
本发明实现了可重构计算架构技术的硬件弹性部署和软件部署灵活性问题,通过协议控制器和桥接模块可以连接多个RPU,从而达到对硬件的灵活部署,以及实现了在统一软件计算架构和编程接口下***计算能力的按需弹性部署。
附图说明
图1为本发明实施例提供的一种基于可重构计算的高性能弹性计算架构示意图;
图2为本发明实施例提供的一种基于可重构计算的高性能弹性计算的主控***示意图;
图3为本发明实施例提供的一种基于可重构计算的高性能弹性计算的RPU子芯片示意图;
图4为本发明实施例提供的另一种基于可重构计算的高性能弹性计算架构示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
图1为本发明实施例提供的一种基于可重构计算的高性能弹性计算架构示意图。
如图1所示,在一个实施例中,本发明供了一种基于可重构计算的高性能弹性计算架构,包括:
***级的可重构数据通路,用于HEC主控***中数据的处理。
可重构计算单元RPU内的可重构数据通路,用于RPU子芯片中数据的处理。
***级的可重构控制器,用于对***级的可重构数据通路进行配置管理和任务映射调度。
RPU内的可重构控制器,用于对RPU内的可重构数据通路进行配置管理和任务映射调度。
RPU之间的可重构数据通路,用于不同RPU子芯片之间数据的处理。协议控制器,用于对可重构数据通路和可重构控制器发送或接收的数据进行协议转换。
桥接模块,用于对***级的可重构数据通路和RPU内的可重构数据通路之间进行桥接,以及用于对不同RPU子芯片内的RPU子芯片内的RPU内的可重构数据通路之间进行桥接。实现了不同设备之间的路由功能。
在一个例子中,***级的可重构数据通路、RPU内的可重构数据通路和RPU之间的可重构数据通路可以共同构成逻辑上的可重构数据通路,用于数据流的处理。在另一个例子中,***级的可重构控制器和RPU内的可重构控制器可以共同构成逻辑上的可重构控制器,用于对可重构数据通路进行配置管理和任务映射调度。
***级的可重构控制器根据指令,通过协议控制器和桥接模块将配置信息传输至RPU内的可重构控制器,并进行配置;其中,RPU内的可重构控制器用于配置RPU内的可重构数据通路的计算功能。以及通过协议控制器和桥接模块将可重构数据传输至RPU内的可重构数据通路,并进行计算。RPU内的可重构数据通路通过协议控制器和桥接模块将计算结果传输至***级的可重构数据通路;或通过RPU之间的可重构数据通路传输至其他PRU子芯片内的RPU内的可重构数据通路进行计算。
本发明通过协议控制器和桥接模块将***级的可重构控制器和***级的可重构数据通路与多个RPU中的RPU内的可重构控制器和RPU内的可重构数据通路相连接,实现了可重构计算架构技术的硬件弹性部署和软件部署灵活性问题。从而达到对硬件的灵活部署,以及实现了在统一软件计算架构和编程接口下***计算能力的按需弹性部署。
图2为本发明实施例提供的一种基于可重构计算的高性能弹性计算主控***示意图。
如图2所示,在一个实施例中,HEC主控***包含如图1所示的***级可重构控制器、***级的可重构数据通路、第一协议控制器和桥接模块。其中,第一协议控制器表示位于HEC主控***中的协议控制器。
***级的可重构控制器可以包括主控制器和配置总线。***级的可重构数据通路可以包括主控***DMA控制器、片上存储器、片外存储控制器和片外存储器。主控***DMA控制器、片上存储器、片外存储控制器通过多层***总线相互连接,片外存储控制器和片外存储器相连接。在一个例子中,***级的可重构数据通路还可以包括外设控制器。其中,外设控制器也通过多层***总线与主控***DMA控制器、片上存储器、片外存储控制器相连接。
在一个例子中,主控制器可以采用嵌入式核心来实现对***级的控制以及对RPU进行控制。例如可以是高级精简指令集机(advanced RISC machines,ARM)或无内部互锁流水级的微处理器(microprocessor without interlocked piped stages,MIPS)等。主控制器通过多层***总线对主控***DMA控制器、片上存储器、片外存储控制器以及外设控制器进行***级控制。在一个例子中,主控制器通过配置主控***DMA控制器,实现对主控***DMA控制器进行控制,控制片外存储控制器将片外存储器的数据读出并写入片上存储器;或控制片外存储控制器将片上存储器的数据读出并写入片外存储器。在另一个例子中,外设控制器可以控制鼠标、键盘、传感器等外接设备,从而得到相应的数据或者控制指令。当外设控制器从外接设备中获取到数据时,可以通过多层***总线将数据存储在片上存储器或片外存储器。当外设控制器从外接设备中获取到控制指令时,可以通过多层***总线将控制指令传输至主控制器,以便主控制器根据控制指令进行相应的***级控制或进行控制相应的RPU。
主控制器还通过配置总线向RPU内的可重构控制器写入配置信息,并控制RPU内的可重构数据通路进行计算,以完成RPU级控制任务。在一个例子中,主控制器通过配置总线发送配置信息通过第一协议控制器进行协议转换,并通过桥接模块将上述转换后的信息写入至对应的RPU内,从而完成对该RPU的配置。
图3为本发明实施例提供的一种基于可重构计算的高性能弹性计算的RPU子芯片示意图。
如图3所示,在一个实施例中,RPU子芯片包含如图1所示的RPU内的可重构控制器、RPU内的可重构数据通路和第二协议控制器。第二协议控制器通过配置总线和RPU内的可重构控制器相连,以及通过数据总线与RPU内的可重构数据通路相连。其中,第二协议控制器表示位于RPU中的协议控制器。
RPU内的可重构控制器可以包括配置信息解析器、配置流程控制器和配置存储器。RPU内的可重构数据通路可以包括:PE阵列、输入数据存储器、输出数据存储器、中间数据存储器和RPU内直接存储器访问DMA控制器。其中,PE阵列为m*n的阵列,m和n为正整数。在一个例子中m和n可以相同或不同。
第二协议控制器接收到来自主控***的经过转换后的配置信息,然后对接收到的信息进行协议转换,得到主控制器发送的配置信息。然后第二协议控制器通过配置总线将主控制器发送的配置信息发送至配置信息解析器。配置信息解析器用于解析来自主控***的配置信息,并将解析后的一个或多个配置子信息写入配置存储器中。以及将解析后的流程控制信息写入配置流程控制器。配置流程控制器根据流程控制信息,按照预先设定的流程从配置存储器中读出配置子信息,并对RPU内的可重构数据通路进行配置。第二协议控制器还接收到来自主控***的经过转换后的可重构数据,并对接收到的可重构数据进行协议转换。然后第二协议控制器通过数据总线将主控制器发送的可重构数据发送至输入数据存储器,待PE阵列需要计算时进行读取。
在一个实施例中,当RPU内的可重构数据通路完成计算后,配置流程控制器接收RPU内的可重构数据通路发送的反馈信号,并从配置存储器中读出下一次配置的配置子信息,以对RPU内的可重构数据通路进行新的配置。
RPU内DMA控制器根据配置流程控制器读出的配置子信息对PE阵列进行配置,使得PE阵列可以执行相应的计算功能。当需要对数据进行运算时,RPU内DMA控制器控制片外存储控制器从片外存储器中将原始的可重构数据读出,并通过第一协议控制器、桥接模块、第二协议控制器和数据总线将数据写入输入数据存储器中。PE阵列读取输入数据存储器中的原始的可重构数据并进行计算,将计算结果存储在输出数据存储器。在一个实施例中,对于计算过程中的中间运算结果,存储在中间数据存储器。当多次计算完成后,RPU内DMA控制器从输出数据存储器中读出计算结果,并通过数据总线、第二协议控制器、桥接模块和第一协议控制器将计算结果经由片外存储控制器写入片外存储器中。在另一个例子中,还可以通过数据总线、第二协议控制器和桥接模块将计算结果写入其他RPU子芯片中,进行进一步的计算。
图4为本发明实施例提供的另一种基于可重构计算的高性能弹性计算架构示意图。图4是图1的另一种示意方式。
如图4所示,在一个例子中,提供了另一种基于可重构计算的高性能弹性计算架构,包括HEC主控***和RPU子芯片阵列。其中RPU子芯片阵列包含一个或多个RPU子芯片。HEC主控***示意图可参照图2,每个RPU子芯片的示意图可参照图3,在此不再赘述。RPU子芯片阵列中的每个RPU子芯片都通过对应的一条链路总线(HEC_link)与HEC主控***的桥接模块相连接,第一协议控制器也通过对应一条HEC_link与桥接模块相连接。其中,RPU子芯片中的第二协议控制器通过HEC_link与桥接模块相连接。通过第一协议控制器和第二协议控制器,实现了配置信息和可重构数据的并行和/或串行的协议转换。通过第一协议控制器、桥接模块、多条HEC_link以及对应的每个RPU子芯片中的第二协议控制器,实现了HEC主控***和PRU子芯片之间以及不同RPU子芯片之间的双向串行通信。在一个例子中,在HEC_link上传输的信号为高速低压差分信号。
在一个实施例中,主控制器通过配置总线将配置信息发送至第一协议控制器,第一协议控制器将接收到的配置信息转换为串行的连接信号。并通过桥接模块发送至对应PRU子芯片中的第二协议控制器。第二协议控制器将连接信号进行解析,并将解析后的配置信息发送至RPU内的可重构控制器,以便对该RPU进行配置。实现了HEC主控***对RPU子芯片的配置。
在另一个实施例中,片外存储控制器将片外存储器中的可重构数据发送至第一协议控制器,第一协议控制器将可重构数据转换为串行的连接信号。并通过桥接模块发送至对应PRU子芯片中的第二协议控制器。第二协议控制器将连接信号进行解析,并将解析后的可重构数据发送至RPU内的可重构数据通路,以便对该RPU对可重构数据进行计算。实现了HEC主控***向RPU子芯片的数据传输。
再一个实施例中,对于RPU子芯片,其内部的RPU内DMA控制器将存储在输出数据存储器中计算好的可重构数据发送至第二协议控制器,第二协议控制器将计算好的可重构数据转换为串行的连接信号。并通过桥接模块发送至第一协议控制器。第一协议控制器将连接信号进行解析,并将解析后的数据发送至片上存储控制器,以便存储在片外存储器中。实现了RPU子芯片向HEC主控***的数据传输。
本发明的基于可重构计算的高性能弹性计算架构还可以实现RPU子芯片阵列中不同RPU子芯片之间进行数据传输。
在一个实施例中,可重构数据通路还包括RPU之间的可重构数据通路。RPU之间的可重构数据通路用于RPU子芯片阵列中的一个RPU子芯片可以直接获取其它任意一个RPU子芯片内的数据。
在一个例子中,协议控制器还包括第三协议控制器。其中,第三协议控制器所在的RPU子芯片与第二协议控制器所在的RPU子芯片不是同一个RPU子芯片。当第三协议控制器所在的RPU子芯片需要调用第二协议控制器所在的RPU子芯片中的数据时,第二协议控制器将其RPU子芯片内的可重构数据转换为串行的连接信号,并通过桥接模块发送至第三协议控制器。第三协议控制器将连接信号进行解析,并将解析后的可重构数据发送至其内部的RPU内的可重构数据通路。在一个例子中,对于RPU内的可重构数据通路中的输入数据存储器、输出数据存储器和中间数据存储器中存储的数据,均可以在其他RPU子芯片需要时进行调用。换句话说,RPU子芯片阵列中的任意一个RPU子芯片均可以通过其RPU内的DMA控制器直接读取另外一个RPU子芯片中输入数据存储器、输出数据存储器和中间数据存储器中存储的数据,并作为自身PE阵列的输入数据或中间运算数据进行相应的计算。
本发明的一种基于可重构计算的高性能弹性计算架构,在***中所有RPU资源在统一的可重构编译器环境下,将应用程序通过任务划分、代码变换、任务调度以及映射等过程,最终将应用程序编译成可重构计算处理器中的RCC的控制码和RCD的配置信息。
本发明的一种基于可重构计算的高性能弹性计算架构,通过协议控制器和桥接模块将包含不同数量的RPU子芯片综合成为一个整体计算***。所有RPU子芯片内部计算资源组成计算资源池,所有计算资源有HEC主控***统一进行调度。从而实现了统一软件计算架构和编程接口下的***计算能力的按需弹性部署。
本发明还提供了一种基于可重构计算的高性能弹性计算方法,包括:根据指令,HEC主控***对子芯片阵列中的至少一个RPU子芯片进行配置,并将可重构数据传输给至少一个RPU子芯片进行计算。至少一个RPU子芯片将计算结果传输至HEC主控***。
在一个示例中,根据当前计算任务的需求,可以调用不同数量的RPU子芯片进行计算。例如2个RPU子芯片、5个RPU子芯片或更多RPU子芯片。从而实现可以根据算力需求进行RPU子芯片的弹性部署。不同RPU子芯片之间还可以相互调用数据进行计算,最终将计算结果传输至HEC主控***。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种基于可重构计算的高性能弹性计算架构,其特征在于,包括:
***级的可重构数据通路,用于高性能弹性计算HEC主控***中数据的处理;
可重构计算单元RPU内的可重构数据通路,用于RPU子芯片中数据的处理;
***级的可重构控制器,用于对所述***级的可重构数据通路进行配置管理和任务映射调度;
RPU内的可重构控制器,用于对所述RPU内的可重构数据通路进行配置管理和任务映射调度;
RPU之间的可重构数据通路,用于不同RPU子芯片之间数据的处理;
协议控制器,用于对所述可重构数据通路和所述可重构控制器发送或接收的数据进行协议转换;
桥接模块,用于对所述***级的可重构数据通路和所述RPU内的可重构数据通路之间进行桥接;以及用于对不同RPU子芯片内的RPU内的可重构数据通路之间进行桥接;
所述***级的可重构控制器根据指令,通过所述协议控制器和所述桥接模块将配置信息传输至所述RPU内的可重构控制器,并进行配置;其中,所述RPU内的可重构控制器用于配置所述RPU内的可重构数据通路的计算功能;以及
通过所述协议控制器和所述桥接模块将可重构数据传输至所述RPU内的可重构数据通路,并进行计算;
所述RPU内的可重构数据通路通过所述协议控制器和所述桥接模块将计算结果传输至所述***级的可重构数据通路;或通过所述RPU之间的可重构数据通路传输至其它RPU子芯片内的RPU内的可重构数据通路进行计算。
2.根据权利要求1所述的架构,其特征在于,所述协议控制器包括第一协议控制器和第二协议控制器;所述第一协议控制器和所述桥接模块位于HEC主控***中,所述第二协议控制器位于RPU子芯片中;
所述第一协议控制器将所述***级的可重构控制器发送的配置信息转换为串行的连接信号,并通过所述桥接模块发送至所述第二协议控制器;所述第二协议控制器将所述连接信号进行解析,并将解析后的数据发送至所述RPU内的可重构控制器。
3.根据权利要求1所述的架构,其特征在于,所述协议控制器包括第一协议控制器和第二协议控制器;所述第一协议控制器和所述桥接模块位于HEC主控***中,所述第二协议控制器位于RPU子芯片中;
所述第一协议控制器将所述***级的可重构数据通路发送的可重构数据转换为串行的连接信号,并通过所述桥接模块发送至所述第二协议控制器;所述第二协议控制器将所述连接信号进行解析,并将解析后的数据发送至所述RPU内的可重构数据通路。
4.根据权利要求1所述的架构,其特征在于,所述协议控制器包括第一协议控制器和第二协议控制器;所述第一协议控制器和所述桥接模块位于HEC主控***中,所述第二协议控制器位于RPU子芯片中;
所述第二协议控制器将所述RPU内的可重构数据通路的可重构数据转换为串行的连接信号,并通过所述桥接模块发送至所述第一协议控制器;所述第一协议控制器将所述连接信号进行解析,并将解析后的数据发送至所述***级的可重构数据通路。
5.根据权利要求1-4任一所述的架构,其特征在于,所述协议控制器还包括第三协议控制器;其中,所述第三协议控制器所在的RPU子芯片与所述第二协议控制器所在的RPU子芯片不是同一个RPU子芯片;
所述第二协议控制器将所述RPU内的可重构数据通路的可重构数据转换为串行的连接信号,并通过所述桥接模块发送至所述第三协议控制器;所述第三协议控制器将所述连接信号进行解析,并将解析后的数据发送至所述RPU内的可重构数据通路。
6.根据权利要求1所述的架构,其特征在于,所述RPU内的可重构控制器包括配置信息解析器、配置流程控制器和配置存储器,所述配置信息解析器、所述配置流程控制器和所述配置存储器位于RPU子芯片中;
所述配置信息解析器用于解析所述***级的可重构控制器写入的配置信息,并将解析后的至少一个配置子信息写入所述配置存储器中,以及将解析后的流程控制信息写入所述配置流程控制器;
所述配置流程控制器根据所述流程控制信息,按照预先设定的流程从所述配置存储器中读出所述配置子信息,并对所述RPU内的可重构数据通路进行配置。
7.根据权利要求6所述的架构,其特征在于,当所述RPU内的可重构数据通路完成计算后,所述配置流程控制器接收所述RPU内的可重构数据通路发送的反馈信号,并从所述配置存储器中读出下一次配置的所述配置子信息,并对所述RPU内的可重构数据通路进行配置。
8.根据权利要求1所述的架构,其特征在于,所述RPU内的可重构数据通路包括:运算单元PE阵列、输入数据存储器、输出数据存储器、中间数据存储器和RPU内直接存储器访问DMA控制器,所述PE阵列、所述输入数据存储器、所述输出数据存储器、所述中间数据存储器和所述RPU内DMA控制器位于RPU子芯片中;
根据所述RPU内的可重构控制器的配置,所述RPU内DMA控制器对所述PE阵列配置计算功能;以及所述RPU内DMA控制器控制从所述***级的可重构数据通路中读取原始数据,并写入所述输入数据存储器中;
所述PE阵列读取所述输入数据存储器中的原始数据并进行计算,将计算结果存储在所述输出数据存储器;其中,将计算过程中的中间运算结果存储在所述中间数据存储器;
所述RPU内DMA控制器从所述输出数据存储器中读出计算结果,并传输给所述***级的可重构数据通路。
9.一种基于可重构计算的高性能弹性计算方法,其特征在于,包括:
根据指令,高性能弹性计算HEC主控***对子芯片阵列中的至少一个RPU子芯片进行配置,并将数据传输给所述至少一个RPU子芯片进行计算;
所述至少一个RPU子芯片将计算结果传输至所述HEC主控***。
CN201910350928.5A 2019-04-28 2019-04-28 一种基于可重构计算的高性能弹性计算架构及方法 Pending CN110096474A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910350928.5A CN110096474A (zh) 2019-04-28 2019-04-28 一种基于可重构计算的高性能弹性计算架构及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910350928.5A CN110096474A (zh) 2019-04-28 2019-04-28 一种基于可重构计算的高性能弹性计算架构及方法

Publications (1)

Publication Number Publication Date
CN110096474A true CN110096474A (zh) 2019-08-06

Family

ID=67446261

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910350928.5A Pending CN110096474A (zh) 2019-04-28 2019-04-28 一种基于可重构计算的高性能弹性计算架构及方法

Country Status (1)

Country Link
CN (1) CN110096474A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314227A (zh) * 2020-03-16 2020-06-19 优刻得科技股份有限公司 业务路径可编程方法及***架构
CN112580792A (zh) * 2020-12-08 2021-03-30 厦门壹普智慧科技有限公司 一种神经网络多核张量处理器

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343579B2 (en) * 2004-11-30 2008-03-11 Physical Sciences Reconfigurable environmentally adaptive computing
CN101441674A (zh) * 2008-12-15 2009-05-27 浙江大学 基于fpga的动态可重构***的分片配置方法
CN101620588A (zh) * 2008-07-03 2010-01-06 中国人民解放军信息工程大学 高效能计算机中可重构部件的一种连接与管理方法
CN102279729A (zh) * 2011-06-14 2011-12-14 清华大学 动态可重构阵列调用配置信息的方法、缓存器和处理器
CN102279753A (zh) * 2011-09-08 2011-12-14 无锡东集电子有限责任公司 可重构***配置管理的方法及用于可重构***的配置管理单元
CN102541809A (zh) * 2011-12-08 2012-07-04 清华大学 一种动态可重构处理器
CN102750127A (zh) * 2012-06-12 2012-10-24 清华大学 一种协处理器
CN203204615U (zh) * 2013-03-15 2013-09-18 上海安路信息科技有限公司 可适应多种数据流计算模式的动态可重构***
CN105487838A (zh) * 2015-11-23 2016-04-13 上海交通大学 一种动态可重构处理器的任务级并行调度方法与***
CN106970842A (zh) * 2017-03-27 2017-07-21 南京大学 一种动态可重构实时信号处理负载平衡***

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343579B2 (en) * 2004-11-30 2008-03-11 Physical Sciences Reconfigurable environmentally adaptive computing
CN101620588A (zh) * 2008-07-03 2010-01-06 中国人民解放军信息工程大学 高效能计算机中可重构部件的一种连接与管理方法
CN101441674A (zh) * 2008-12-15 2009-05-27 浙江大学 基于fpga的动态可重构***的分片配置方法
CN102279729A (zh) * 2011-06-14 2011-12-14 清华大学 动态可重构阵列调用配置信息的方法、缓存器和处理器
CN102279753A (zh) * 2011-09-08 2011-12-14 无锡东集电子有限责任公司 可重构***配置管理的方法及用于可重构***的配置管理单元
CN102541809A (zh) * 2011-12-08 2012-07-04 清华大学 一种动态可重构处理器
CN102750127A (zh) * 2012-06-12 2012-10-24 清华大学 一种协处理器
CN203204615U (zh) * 2013-03-15 2013-09-18 上海安路信息科技有限公司 可适应多种数据流计算模式的动态可重构***
CN105487838A (zh) * 2015-11-23 2016-04-13 上海交通大学 一种动态可重构处理器的任务级并行调度方法与***
CN106970842A (zh) * 2017-03-27 2017-07-21 南京大学 一种动态可重构实时信号处理负载平衡***

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314227A (zh) * 2020-03-16 2020-06-19 优刻得科技股份有限公司 业务路径可编程方法及***架构
CN112580792A (zh) * 2020-12-08 2021-03-30 厦门壹普智慧科技有限公司 一种神经网络多核张量处理器
CN112580792B (zh) * 2020-12-08 2023-07-25 厦门壹普智慧科技有限公司 一种神经网络多核张量处理器

Similar Documents

Publication Publication Date Title
CN110088737A (zh) 将并发程序转换为可部署在基于fpga的云基础设施上的硬件的综合路径
US11902149B2 (en) Sync network
US20030033374A1 (en) Method and system for implementing a communications core on a single programmable device
CN106886505A (zh) 多波形运行的局部动态可重构***
CN103558812B (zh) 基于fpga和arm的mvb网络四类设备网卡
CN103019744A (zh) 基于计算中间件的雷达信号处理模块库的构建方法及应用
CN110096474A (zh) 一种基于可重构计算的高性能弹性计算架构及方法
CN109980779B (zh) 一种智能变电站多间隔集群测控装置及其部署方法
CN110399221A (zh) 数据处理方法、***及终端设备
Pilato et al. A runtime adaptive controller for supporting hardware components with variable latency
CN110119282A (zh) 一种基于通用嵌入式计算机的物联网终端及***
CN108985459A (zh) 训练模型的方法和装置
CN108459876A (zh) 用于缩减面积的控制寄存器电路的方法与装置
CN101587467B (zh) 一种应用于可重构计算架构的重构信息发送引擎
CN106603113A (zh) 一种雷达信号处理机对外通信控制***
AU2014222148A1 (en) Data processing device and control method therefor
US9727673B1 (en) Simultaneous simulation of multiple blocks using efficient packet communication to emulate inter-block buses
CN111597022B (zh) 一种自动融合多专业业务功能的融合***及融合方法
CN102567281B (zh) 可重构调度算子阵列结构、集成电路阵列结构及控制模块
KR102497801B1 (ko) 시스템-온-칩 자동 설계 장치 및 이의 동작 방법
CN100373329C (zh) 带有集群式ilp处理器的数据处理***
Thid A network on chip simulator
US20130131914A1 (en) Apparatus and method for receiving and sending messages
CN109391582A (zh) 一种通讯协议及激光器控制***
Schonwald et al. Network-on-chip architecture exploration framework

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
AD01 Patent right deemed abandoned
AD01 Patent right deemed abandoned

Effective date of abandoning: 20211126