CN110045996B - 可伸缩三维阵列的配置系统及方法、配置器、计算阵列器 - Google Patents

可伸缩三维阵列的配置系统及方法、配置器、计算阵列器 Download PDF

Info

Publication number
CN110045996B
CN110045996B CN201910150205.0A CN201910150205A CN110045996B CN 110045996 B CN110045996 B CN 110045996B CN 201910150205 A CN201910150205 A CN 201910150205A CN 110045996 B CN110045996 B CN 110045996B
Authority
CN
China
Prior art keywords
configuration
computing
configuration file
unit
array
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
CN201910150205.0A
Other languages
English (en)
Other versions
CN110045996A (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.)
Suzhou Institute of Nano Tech and Nano Bionics of CAS
Original Assignee
Suzhou Institute of Nano Tech and Nano Bionics of CAS
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 Suzhou Institute of Nano Tech and Nano Bionics of CAS filed Critical Suzhou Institute of Nano Tech and Nano Bionics of CAS
Priority to CN201910150205.0A priority Critical patent/CN110045996B/zh
Publication of CN110045996A publication Critical patent/CN110045996A/zh
Application granted granted Critical
Publication of CN110045996B publication Critical patent/CN110045996B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)

Abstract

本发明公开了一种可伸缩三维阵列的配置系统,包括计算机设备、计算阵列器及连接计算机设备与计算阵列器的配置器,通过计算机设备发送配置指令至配置器,配置器接收配置指令并根据配置指令从计算机设备获取配置文件,并将获取的配置文件发送至计算阵列器,计算阵列器接收配置文件,并根据配置文件进行配置,从而实现对计算阵列的配置。本发明还公开了一种可伸缩三维阵列的配置方法。本发明也公开了一种配置器。本发明还公开了一种计算阵列器。本发明的配置过程由计算机设备下发配置指令后由配置器进行配置,不需CPU全程参与,极大降低CPU的占用率,提高配置速度。

Description

可伸缩三维阵列的配置系统及方法、配置器、计算阵列器
技术领域
本发明涉及处理器技术领域,具体地,涉及一种可伸缩三维阵列的配置系统及方法、配置器、计算阵列器。
背景技术
计算系统可辅助进行数据计算,广泛地应用于多媒体、通信、人工智能以及数据信号处理等领域。在现有技术中,通常采用专用集成电路、通用处理器和基于FPGA的计算系统。然而专用集成电路计算性能高但灵活性差。通用处理器则计算性能差但灵活性高。而基于FPGA的计算系统能够在系统运行时通过动态配置改变其功能,并且可以同时保持较高性能,兼具高性能和高灵活的计算优势。
随着数据计算的任务日益复杂,单个FPGA已无法满足计算需求。为了获得更高的计算性能和效率,技术人员通过部署大规模FPGA计算阵列以获得一个可收缩的计算性能。
但是大规模FPGA阵列的FPGA间的拓扑关系也越来越复杂。在大规模可重构计算阵列的计算密集型应用中,可重构系统的配置信息较为庞大,可重构系统需要随时切换FPGA上的配置电路。现有技术的大规模PFGA阵列的配置方式,通常采用flash或者prom的形式进行配置,或者采用CPU通过USB进行下载配置。随着计算阵列中FPGA数量的增加,FPGA网络结构的复杂化,传统的配置方式效率低下,配置速度慢。同时,当FPGA阵列的规模到一定级别后,由CPU进行下载配置管理,也会占用HOST PC中CPU处理时间和占用率。从而影响可重构阵列的计算效率,还会长时间占用系统与FPGA阵列的系统总线,降低上位PC主机与FPGA阵列的交互效率。
发明内容
为解决上述现有技术存在的问题,本发明提供了一种高效率的支持复杂网络拓扑结构的可伸缩三维阵列的配置系统及方法、配置器、计算阵列器。
为了达到上述发明目的,本发明采用了如下的技术方案:
根据本发明的一方面,提供了一种配置器,所述配置器包括:
控制部,用于接收计算机设备发送的配置指令,并根据配置指令从计算机设备获取配置文件;
内部存储部,与所述控制部连接,所述内部存储部用于在所述控制部获取的配置文件的大小不超过内部存储部的存储容量时存储所述控制部获取的配置文件;
配置部,分别与所述控制部和所述内部存储部连接,所述配置部用于根据所述配置指令从所述内部存储部获取对应的配置文件并将获取的配置文件发送至计算阵列器。
进一步地,所述配置器还包括外部存储部,所述外部存储部与所述控制部连接,所述外部存储部用于在所述控制部获取的配置文件的大小超过所述内部存储部的存储容量时存储所述控制部获取的配置文件。
根据本发明的另一方面,还提供了一种计算阵列器,所述计算阵列器包括:配置桥阵列部以及与所述配置桥阵列部连接的可重构计算阵列部;
所述配置桥阵列部用于接收配置器发送的配置文件,并将接收的配置文件发送至与其相连的可重构计算阵列部;
所述可重构计算阵列部用于接收所述配置桥阵列部发送的配置文件,并且根据接收的配置文件进行配置。
进一步地,所述配置桥阵列部包括至少两个配置单元,所述配置单元与其相邻的配置单元连接,并且所述配置单元与可重构计算阵列部连接;
其中一个配置单元用于与配置器连接,并用于接收配置器发送的配置文件,且用于将接收的配置文件发送至与其相连的配置单元,所述其中一个配置单元还用于将接收的配置文件发送至与其相连的可重构计算阵列部;
其它的配置单元用于接收相邻的配置单元发送的配置文件,并用于将接收的配置文件发送至与其相连的下一级配置单元,且用于将接收的配置文件发送至与其相连的可重构计算阵列部。
进一步地,所述可重构计算阵列部包括多个计算单元;所述计算单元与其相邻的配置单元连接,和/或所述计算单元与其相邻的计算单元连接;
其中至少一个计算单元用于与配置单元连接,并用于根据接收的所述配置单元发送的配置文件进行配置,所述至少一个计算单元还用于将接收的配置文件发送至与其相连的计算单元;
其它的计算单元用于根据接收的相邻的计算单元发送的配置文件进行配置,并用于将接收的配置文件发送至与其相连的下一级计算单元。
根据本发明的又一方面,还提供了一种可伸缩三维阵列的配置系统,所述配置系统包括:
计算机设备、上述的计算阵列器及连接所述计算机设备与所述计算阵列部的配置器;
所述计算机设备用于发送配置指令至所述配置器;
所述配置器用于接收所述配置指令,所述配置器用于根据所述配置指令从所述计算机设备获取配置文件,并用于将获取的配置文件发送至所述计算阵列器;
所述计算阵列器用于接收所述配置文件,并根据所述配置文件进行配置。
进一步地,所述计算机设备包括CPU和存储器;
所述CPU用于发送配置指令至所述配置器;
所述存储器用于存储配置计算阵列部所需的配置文件;
其中,所述配置器用于通过所述存储器获取配置文件。
根据本发明的另一方面,还公开了一种可伸缩三维阵列的配置方法,所述配置方法包括:
接收计算机设备发送的配置指令;
根据所述配置指令从计算机设备获取配置文件;
将获取的配置文件发送至计算阵列器以控制计算阵列器根据接收的配置文件进行配置。
进一步地,所述计算阵列器包括配置桥阵列部和与配置桥阵列部连接的可重构计算阵列部;所述可重构计算阵列部包括多个计算单元;所述将获取的配置文件发送至计算阵列器以控制计算阵列器根据配接收的配置文件进行配置的方法包括:
给每个计算单元分配地址;
将获取的配置文件发送至配置桥阵列部以控制配置桥阵列部将获取的配置文件发送至计算单元,从而使计算单元根据与其地址对应的配置文件进行配置。
进一步地,所述计算单元所分配的地址各不相同或者所述计算单元所分配的地址均相同或者至少有两个计算单元所分配的地址相同。
根据本发明的另一方面,还公开了一种可伸缩三维阵列的配置方法,所述配置方法包括:
接收配置器发送的配置文件,所述配置文件是所述配置器根据接收的计算机设备发送的配置指令从计算机设备获取得到;
根据接收的配置文件进行配置。
进一步地,所述计算阵列器包括配置桥阵列部和与配置桥阵列部连接的可重构计算阵列部;所述可重构计算阵列部包括多个计算单元;所述可伸缩配置方法包括:
配置桥阵列部给每个计算单元分配地址;
配置桥阵列部接收配置控制器发送的配置文件,并且配置桥阵列部将接收的配置文件发送至计算单元。
进一步地,配置桥阵列部给每个计算单元分配的地址各不相同或者配置桥阵列部给每个计算单元分配的地址均相同或者配置桥阵列部给至少两个计算单元分配相同的地址。
本发明的有益效果:本发明的可伸缩三维阵列的配置系统包括计算机设备、计算阵列器及连接所述计算机设备与所述计算阵列器的配置器,通过所述计算机设备发送配置指令至配置器,配置器接收配置指令并根据配置指令从计算机设备获取配置文件,并将获取的配置文件发送至计算阵列器,计算阵列器接收配置文件,并根据配置文件进行配置,从而实现对计算阵列的配置,计算阵列的配置过程由计算机设备下发配置指令后由配置器进行配置,不需CPU全程参与,极大降低CPU的占用率,提高配置速度。
附图说明
通过结合附图进行的以下描述,本发明的实施例的上述和其它方面、特点和优点将变得更加清楚,附图中:
图1是根据本发明的第一实施例的配置器的结构示意图;
图2是根据本发明的第二实施例的计算阵列器的结构示意图;
图3是根据本发明的第二实施例的FPGA阵列子卡的结构示意图;
图4是根据本发明的第二实施例的另一种实施方式的计算阵列部的结构示意图;
图5是本发明的第三实施例的可伸缩三维阵列的配置系统的结构示意图;
图6是根据本发明的第四实施例的可伸缩三维阵列的配置方法;
图7是根据本发明的第五实施例的可伸缩三维阵列的配置方法;
图8是根据本发明的第六实施例的可伸缩三维阵列的配置方法在单播模式的示意图;
图9是根据本发明的第七实施例的可伸缩三维阵列的配置方法在广播模式的示意图;
图10是根据本发明的第八实施例的可伸缩三维阵列的配置方法在组播模式的示意图。
具体实施方式
以下,将参照附图来详细描述本发明的实施例。然而,可以以许多不同的形式来实施本发明,并且本发明不应该被解释为限制于这里阐述的具体实施例。相反,提供这些实施例是为了解释本发明的原理及其实际应用,从而使本领域的其他技术人员能够理解本发明的各种实施例和适合于特定预期应用的各种修改。在附图中,为了清楚起见,可以夸大元件的形状和尺寸,并且相同的标号将始终被用于表示相同或相似的元件。
实施例一
图1是根据本发明的实施例的配置器的结构示意图。
参照图1所示,本发明的第一实施例公开了一种配置器20,所述配置器20包括:控制部21,内部存储部22以及配置部23,可以理解的是,本发明并不限制于此,根据本发明的实施例的配置器20还可以包括其它必要的部件,例如信号总线。
具体地,控制部21用于接收计算机设备发送的配置指令,并根据配置指令从计算机设备获取配置文件。作为本发明的一种实施方式,控制部21采用PCI-E FPGA控制器,并通过PCI-E协议实现数据通信。在其它实施例中,控制部21可以通过PCI-E DMA功能直接访问计算机设备的存储器,并根据配置指令对响应的配置文件进行下载,从而下载配置文件时,无需CPU全程参与,极大减小CPU占用率。
具体地,内部存储部22与控制部21连接。内部存储部22用于在控制部21获取的配置文件的大小不超过内部存储部的存储容量时存储控制部21获取的配置文件。
具体地,配置部23分别与控制部21和内部存储部22连接。配置部23用于根据配置指令从内部存储部22获取对应的配置文件并将获取的配置文件发送至计算阵列器。作为本发明的一种实施方式,配置部23通过GPIO接口将配置文件发送至计算阵列器。在其它实施方式中,配置部通过GPIO接口将控制指令发送至计算阵列器或通过GPIO接口从计算阵列器获取计算数据。作为本发明的一种实施方式,配置部23采用Select Map的下载配置方式对计算阵列器进行配置。Select Map的下载配置方式能够实现多字节并行下载,是当前xilinx FPGA的一种高速配置方式,并且支持下载配置的回读功能,提升对计算阵列器配置时的debug能力。可以理解的是,本发明并不限制于此,配置部23还可以根据用户的实际需求选择其他合适的高速配置方式。
随着计算机功能的不断丰富扩展,FPGA的规模也越来越大,配置文件可能达到几MB到几十MB或更大。仅靠配置部23的内部存储空间无法完全存储整个配置文件。因此,为了扩展配置器20的存储能力,根据本发明的一种实施方式,配置器20还包括外部存储部24。外部存储部24与控制部21连接。外部存储部24用于在控制获取的配置文件的大小超过内部存储部22的容量时存储控制部21获取的配置文件。
实施例二
图2是根据本发明的实施例的计算阵列器的结构示意图。
参照图2所示,本发明的第二实施例公开了一种计算阵列器30,所述计算阵列器30包括配置桥阵列部31以及与配置桥阵列部31连接的可重构计算阵列部32。可以理解的是,本发明并不限制于此,根据本发明的实施例的计算阵列器30还可以包括其它必要的部件。
进一步地,配置桥阵列部31用于接收配置器发送的配置文件,并将接收的配置文件发送至与其相连的可重构计算阵列部32。作为本发明的一种实施方式,配置桥阵列部31包括至少两个配置单元31a。配置单元31a与其相连的配置单元31a连接,并且配置单元31a与可重构计算阵列部32连接。
具体地,其中一个配置单元31a用于与配置器连接,并用于接收配置器发送的配置文件,且用于将接收的配置文件发送至与其相连的配置单元31a。所述其中一个配置单元31a还用于将接收的配置文件发送至与其相连的可重构计算阵列部32。与配置器连接的配置单元31a用于从配置器获取配置文件并将文件传递给其它与其连接的配置单元31a以及与其连接的可重构计算阵列部32。
具体地,其它的配置单元31a用于接收相邻的配置单元31a发送的配置文件,并用于将接收的配置文件发送至与其相连的下一级配置单元31a,且用于将接收的配置文件发送至与其相连的可重构计算阵列部32。例如第一配置单元31a与第二配置单元31a连接,第二配置单元31a与第三配置单元31a连接,第一配置单元31a接收到配置文件后将配置文件发送至第二配置单元31a,第二配置单元31a接收第一配置单元31a发送的配置文件并将配置文件发送至与其相连的第三配置单元31a。发送配置文件给第二配置单元31a的第一配置单元31a为第二配置单元31a的上一级配置单元31a,接收第二配置单元31a发送的配置文件的第三配置单元31a为第二配置单元31a的下一级配置单元31a。
进一步地,可重构计算阵列部32用于接收配置桥阵列部31发送的配置文件,并且根据接收的配置文件进行配置。作为本发明的一种实施方式,可重构计算阵列部32包括多个计算单元32a。计算单元32a与其相邻的配置单元31a连接,和/或所述计算单元32a与其相邻的计算单元32a连接。
具体地,其中至少一个计算单元32a用于与配置单元31a连接,并用于根据接收的配置单元31a发送的配置文件进行配置。至少一个计算单元32a还用于将接收的配置文件发送至与其相连的计算单元32a。
具体地,其它的计算单元32a用于根据接收的相邻的计算单元32a发送的配置文件进行配置,并用于将接收的配置文件发送至与其相连的下一级计算单元32a。例如第一计算单元32a与第二计算单元32a连接,第二计算单元32a与第三计算单元32a连接,第一计算单元32a接收到配置文件后将配置文件发送至与其相连的第二计算单元32a,第二计算单元32a接收第一计算单元32a发送的配置文件后将配置文件发送至与其相连的第三计算单元32a。发送配置文件给第二计算单元32a的第一计算单元32a为第二计算单元32a的上一级计算单元32a,接收第二计算单元32a发送的配置文件的第三计算单元32a为第二计算单元32a的下一级计算单元32a。
作为本发明的一种实施方式,每个配置单元31a包括一个FPGA阵列子卡。优选地,每个配置单元31a可连接4路计算单元32a。
作为本发明的一种实施方式,每个计算单元32a包括一个FPGA阵列子卡。计算单元32a的数量可以根据实际应用的需要进行增减。
图3是根据本发明的第二实施例的FPGA阵列子卡的结构示意图。
作为本发明的一种实施方式,如图3所示,FPGA阵列子卡A由一枚配置子卡FPGA A1及一枚计算子卡FPGA A2构成。
具体地,配置子卡FPGA A1搭载轻量低功耗小型FPGA,用于实现计算机设备通过配置部传递的配置文件、计算指令、以及相应的协议转换等。配置子卡FPGA A1具有前、后和上共三组接口。其中前后两组接口用于连接相邻的配置子卡FPGA A1,向上的一组接口用于连接相邻的计算子卡FPGA A2,用于对计算子卡FPGA A2进行配置文件、计算指令及数据的传输。
具体地,计算子卡FPGA A2搭载规模较大的FPGA,并搭载DDR外存储,用于存储计算过程中的高速片外缓存数据。计算子卡FPGA A2具有前、后、左、右、上、下共七组接口。其中前、后、左、右、上、下共六组接口用于连接相邻的计算子卡FPGA A2。向下还有一组接口用于连接相邻的配置子卡PFGA A1,用于接收配置子卡FPGA A1传送的配置文件、计算指令以及相关数据的传输。
图4是根据本发明的第二实施例的另一种实施方式的计算阵列部的结构示意图。
参照图4所示,图4中配置桥阵列部31包括2个配置单元31a,当然本发明不限制于此,在其它实施方式中,配置桥阵列部31还可以根据实际需要选择合适数量的配置单元31a。配置桥阵列部31通过彼此相连的配置单元31a,使得相关指令和数据可以通过转发进行传递。
在本发明的实施例中每个配置单元31a与3路计算单元32a连接,相关指令和数据又进一步通过配置单元31a传递给与配置单元31a相连接的计算单元32a。每个计算单元32a又与前后、左右、上下的计算单元32a连接,相关指令和数据又通过相连的计算单元32a进行传递,从而实现对每个计算单元32a的相关指令和数据的传递。
实施例三
图5是本发明的第三实施例的可伸缩三维阵列的配置系统的结构示意图。
参照图5所示,本发明的第三实施例公开了一种可伸缩三维阵列的配置系统,所述配置系统包括:计算机设备10、如实施例二所述的计算阵列器30及连接所述计算机设备10与所述计算阵列器30的如实施例一所述的配置器20。可以理解的是,本发明并不限制于此,本发明的实施例的可伸缩三维阵列的配置系统还可以包括其它必要的部件。
具体地,计算机设备10用于发送配置指令至配置器20。作为本发明的一种实施方式,计算机设备10包括CPU11和存储器12。其中,CPU11用于发送配置指令至配置器20。存储器12用于存储配置计算阵列部所需的配置文件。其中,配置器20通过存储器12获取配置文件。本发明的实施例的计算机设备10可支持多种平台,例如:X86、ARM等。本发明的实施例的计算机设备10可包括人机交互界面,并用于必要文件和数据的存储,以及部分应用的前处理和后处理,通过配置器20实现对计算机阵列器30的配置和数据交互。
具体地,配置器20用于接收配置指令。配置器20用于根据配置指令从计算机设备10获取配置文件,并用于将获取的配置文件发送至计算阵列器30。
具体地,计算阵列器30用于接收配置文件,并根据配置文件进行配置。
本发明的实施例的配置系统包括计算机设备10、计算阵列器30及连接计算机设备10与计算阵列器30的配置器20,通过计算机设备10发送配置指令至配置器20,配置器20接收配置指令并根据配置指令从计算机设备10获取配置文件,并将获取的配置文件发送至计算阵列器30,计算阵列器30接收配置文件,并根据配置文件进行配置,从而实现对计算阵列单元32a的配置,计算阵列单元31a的配置过程由计算机设备10下发配置指令后由配置器20进行配置,不需CPU11全程参与,极大降低CPU11的占用率,提高配置速度。
实施例四
图6是根据本发明的第四实施例的可伸缩三维阵列的配置方法。
参照图6所示,本发明的第四实施例的可伸缩三维阵列的配置方法包括:
A100、接收计算机设备发送的配置指令;
A200、根据所述配置指令从计算机设备获取配置文件;
A300、将获取的配置文件发送至计算阵列器以控制计算阵列器根据接收的配置文件进行配置。
具体地,计算阵列器包括配置桥阵列部和与配置桥阵列部连接的可重构计算阵列部。可重构计算阵列部包括多个计算单元。步骤A300进一步包括:
首先,给每个计算单元分配地址;
其次,将获取的配置文件发送至配置桥阵列部以控制配置桥阵列部将获取的配置文件发送至计算单元,从而使计算单元根据与其地址对应的配置文件进行配置。
根据计算单元所分配的地址的不同情况,可以分为几种不同的配置模式,包括单播模式,广播模式和组播模式。
进一步地,在单播模式下,计算单元所分配的地址各不相同,每个计算单元各自完成一个计算功能。即每个计算单元都相应匹配一个与其地址对应的配置文件,而且各个计算单元的配置文件各不相同。配置文件在计算单元间传播,地址与配置文件的地址匹配的计算单元才会根据配置文件进行配置。
进一步地,在广播模式下,计算单元所分配的地址均相同,所有计算单元共同完成一个计算功能。即计算单元的配置文件均相同。配置文件在计算单元间传播,计算单元根据配置文件进行配置,并将配置文件传给与其相连的下一级计算单元。
进一步地,在组播模式下,至少有两个计算单元分配的地址相同,地址相同的计算单元共同完成一个计算功能。即地址相同的计算单元的配置文件相同。
实施例五
图7是根据本发明的第五实施例的可伸缩三维阵列的配置方法。
参照图7所示,本发明的第五实施例的可伸缩三维阵列的配置方法包括:
B100、接收配置器发送的配置文件,所述配置文件是所述配置器根据接收的计算机设备发送的配置指令从计算机设备获取得到;
B200、根据接收的配置文件进行配置。
具体地,计算阵列器包括配置桥阵列部和与配置桥阵列部连接的可重构计算阵列部。可重构计算阵列部包括多个计算单元。所述步骤B100进一步包括:
首先,配置桥阵列部给每个计算单元分配地址;
其次,配置桥阵列部接收配置控制器发送的配置文件,并且配置桥阵列部将接收的配置文件发送至计算单元。
所述步骤B200进一步包括:
计算单元根据与其地址对应的配置文件进行配置。
根据计算单元所分配的地址的不同情况,可以分为几种不同的配置模式,包括单播模式,广播模式和组播模式。
进一步地,在单播模式下,计算单元所分配的地址各不相同,每个计算单元各自完成一个计算功能。即每个计算单元都相应匹配一个与其地址对应的配置文件,而且各个计算单元的配置文件各不相同。配置文件在计算单元间传播,地址与配置文件的地址匹配的计算单元才会根据配置文件进行配置。
进一步地,在广播模式下,计算单元所分配的地址均相同,所有计算单元共同完成一个计算功能。即计算单元的配置文件均相同。配置文件在计算单元间传播,计算单元根据配置文件进行配置,并将配置文件传给与其相连的下一级计算单元。
进一步地,在组播模式下,至少有两个计算单元分配的地址相同,地址相同的计算单元共同完成一个计算功能。即地址相同的计算单元的配置文件相同。
下面将通过具体地实施方式对不同模式下的配置方法进行具体阐述。
实施例六
图8是根据本发明的第六实施例的可伸缩三维阵列的配置方法在单播模式的示意图。
参照图8所示,在本实施例中,可伸缩三维计算阵列的配置方法的单播模式是指配置桥阵列部31给每个计算单元分配的地址各不相同。具体地,每个应用对应一个计算单元,由对应的计算单元为实现应用的功能进行数据计算。
具体地,计算机设备10发送为实现第一应用APP1、第二应用APP2、第三应用APP3及第四应用APP4的功能进行配置的配置指令至配置器20。配置器20根据配置指令从计算机设备10的存储器12依次下载实现第一应用APP1功能的第一配置文件、实现第二应用APP2功能的第二配置文件、实现第三应用APP3功能的第三配置文件以及实现第四应用功能的第四配置文件。并且配置器20控制配置桥阵列部31给计算单元进行地址分配,依次将第一计算单元32a1的地址设置为ID1、将第二计算单元32a2的地址设置为ID2、将第三计算单元32a3的地址设置为ID3以及将第四计算单元32a4的地址设置为ID4。其中第一配置文件对应地址ID1、第二配置文件对应地址ID2、第三配置文件对应地址ID3以及第四配置文件对应地址ID4。配置控制部依次将第一配置文件、第二配置文件、第三配置文件、第四配置文件发送至配置桥阵列部31,配置桥阵列部31依次将第一配置文件、第二配置文件、第三配置文件、第四配置文件发送至可重构计算阵列部32,可重构计算阵列部32的计算单元32a接收配置文件后,识别配置文件的地址是否与自身的地址相同,若相同,则根据配置文件进行配置,若不同,则将配置文件转发至与其相连的其它计算单元32a。
实施例七
图9是根据本发明的第七实施例的可伸缩三维阵列的配置方法在广播模式的示意图。
参照图9所示,在本实施例中,可伸缩三维阵列的配置方法的广播模式是指配置桥阵列部31给每个计算单元分配的地址均相同。具体地,可重构计算阵列部31的所有计算单元32a5都用于实现第五应用APP5的功能,由全部计算单元32a5为实现第五应用APP5的功能进行数据计算。
具体地,计算机设备10发送为实现第五应用APP5的功能进行配置的配置指令至配置器20。配置器20根据配置指令从计算机设备10的存储器12下载实现第五应用APP5功能的第五配置文件。并且配置器20控制配置桥阵列部31给计算单元进行地址分配,将所有计算单元32a5的地址设置为ID5。其中第五配置文件对应地址ID5。配置器20将第五配置文件发送至配置桥阵列部31,配置桥阵列部31依次将第五配置文件发送至可重构计算阵列部32,可重构计算阵列部32的计算单元32a5接收第五配置文件后,根据第五配置文件进行配置,并且将第五配置文件转发至与其相连的其它计算单元32a5。优选地,可以同时对4层×4行×8列的计算单元进行同时配置。
实施例八
图10是根据本发明的第八实施例的可伸缩三维阵列的配置方法在组播模式的示意图。
参照图10所示,在本实施例中,可伸缩三维阵列的配置方法的组播模式是指配置桥阵列部31给每个计算单元分配的地址中至少有两个计算单元的地址相同。具体地,可重构计算阵列部32的至少两个计算单元用于实现同一应用的功能进行数据计算。
具体地,计算机设备10发送为实现第六应用APP6的功能进行配置的配置指令至配置器20。配置器20根据配置指令从计算机设备10的存储器12下载实现第六应用APP6功能的第六配置文件。并且配置器20控制配置桥阵列部31给计算单元进行地址分配,将至少两个第六计算单元32a6的地址都设置为ID6。其中配置文件6对应地址ID6。配置器20将第六配置文件发送至配置桥阵列部31,配置桥阵列部31将第六配置文件发送至可重计算构阵列部32,可重构计算阵列部32的计算单元接收第六配置文件后,识别配置文件的地址是否与自身的地址相同,若相同,则根据配置文件进行配置,若不同,则将配置文件转发至与其相连的其它计算单元。可以理解的是,本发明并不限制于此,在本实施例中,可同时实现多个应用,例如同时实现第六应用APP6和第七应用APP7的功能,每个应用分别由至少两个计算单元实现其功能,例如将至少两个第六计算单元32a6的地址都设置为ID6,至少两个第六计算单元32a6用于实现第六应用APP6的功能。将至少两个第七计算单元32a7的地址都设置为ID7,至少两个第七计算单元32a7用于实现第七应用APP7的功能。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案或者对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机、计算机、服务器、空调器或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可以做出很多形式,这些均属于本发明的保护之内。
虽然已经参照特定实施例示出并描述了本发明,但是本领域的技术人员将理解:在不脱离由权利要求及其等同物限定的本发明的精神和范围的情况下,可在此进行形式和细节上的各种变化。

Claims (9)

1.一种计算阵列器,其特征在于,所述计算阵列器包括:配置桥阵列部以及与所述配置桥阵列部连接的可重构计算阵列部;所述可重构计算阵列部包括多个计算单元;
所述配置桥阵列部用于给每个计算单元分配地址,并接收配置器发送的配置文件,并将接收的配置文件发送至与其相连的可重构计算阵列部的所述计算单元;
所述可重构计算阵列部的所述计算单元用于接收所述配置桥阵列部发送的配置文件,并且根据与其地址对应的配置文件进行配置,并且在配置文件对应的地址与其被分配的地址不同时将配置文件传递给与其相连的计算单元。
2.根据权利要求1所述的计算阵列器,其特征在于,所述配置桥阵列部包括至少两个配置单元,所述配置单元与其相邻的配置单元连接,并且所述配置单元与可重构计算阵列部连接;
其中一个配置单元用于与配置器连接,并用于接收配置器发送的配置文件,且用于将接收的配置文件发送至与其相连的配置单元,所述其中一个配置单元还用于将接收的配置文件发送至与其相连的可重构计算阵列部;
其它的配置单元用于接收相邻的配置单元发送的配置文件,并用于将接收的配置文件发送至与其相连的下一级配置单元,且用于将接收的配置文件发送至与其相连的可重构计算阵列部。
3.根据权利要求2所述的计算阵列器,其特征在于,所述计算单元与其相邻的配置单元连接,和/或所述计算单元与其相邻的计算单元连接;
其中至少一个计算单元用于与配置单元连接,所述至少一个计算单元还用于将接收的配置文件发送至与其相连的计算单元;
其它的计算单元用于根据接收的与其地址对应的配置文件进行配置,并用于将接收的配置文件发送至与其相连的下一级计算单元。
4.一种可伸缩三维阵列的配置系统,其特征在于,所述配置系统包括:
计算机设备、权利要求1-3任一项所述的计算阵列器及连接所述计算机设备与所述计算阵列器的配置器;
所述计算机设备用于发送配置指令至所述配置器;
所述配置器用于接收所述配置指令,所述配置器用于根据所述配置指令从所述计算机设备获取配置文件,并用于将获取的配置文件发送至所述计算阵列器;
所述计算阵列器用于接收所述配置文件,并根据所述配置文件进行配置。
5.根据权利要求4所述的配置系统,其特征在于,所述计算机设备包括CPU和存储器;
所述CPU用于发送配置指令至所述配置器;
所述存储器用于存储配置计算阵列部所需的配置文件;
其中,所述配置器用于通过所述存储器获取配置文件。
6.一种可伸缩三维阵列的配置方法,其特征在于,所述配置方法包括:
接收计算机设备发送的配置指令;
根据所述配置指令从计算机设备获取配置文件;
将获取的配置文件发送至计算阵列器以控制计算阵列器根据接收的配置文件进行配置;
其中,所述计算阵列器包括配置桥阵列部和与配置桥阵列部连接的可重构计算阵列部;所述可重构计算阵列部包括多个计算单元;所述将获取的配置文件发送至计算阵列器以控制计算阵列器根据配接收的配置文件进行配置的方法包括:
给每个计算单元分配地址;
将获取的配置文件发送至配置桥阵列部以控制配置桥阵列部将获取的配置文件发送至计算单元,从而使计算单元根据与其地址对应的配置文件进行配置;其中,所述计算单元在配置文件对应的地址与其被分配的地址不同时将配置文件传递给与其相连的计算单元。
7.根据权利要求6所述的配置方法,其特征在于,所述计算单元所分配的地址各不相同或者所述计算单元所分配的地址均相同或者至少有两个计算单元所分配的地址相同。
8.一种可伸缩三维阵列的配置方法,其特征在于,所述配置方法包括:
接收配置器发送的配置文件,所述配置文件是所述配置器根据接收的计算机设备发送的配置指令从计算机设备获取得到;
根据接收的配置文件进行配置;
其中,所述计算阵列器包括配置桥阵列部和与配置桥阵列部连接的可重构计算阵列部;所述可重构计算阵列部包括多个计算单元;所述可伸缩配置方法包括:
配置桥阵列部给每个计算单元分配地址;
配置桥阵列部接收配置控制器发送的配置文件,并且配置桥阵列部将接收的配置文件发送至计算单元;
所述计算单元根据与其地址对应的配置文件进行配置,且在配置文件对应的地址与其被分配的地址不同时将配置文件传递给与其相连的计算单元。
9.根据权利要求8所述的配置方法,其特征在于,配置桥阵列部给每个计算单元分配的地址各不相同或者配置桥阵列部给每个计算单元分配的地址均相同或者配置桥阵列部给至少两个计算单元分配相同的地址。
CN201910150205.0A 2019-02-28 2019-02-28 可伸缩三维阵列的配置系统及方法、配置器、计算阵列器 Active CN110045996B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910150205.0A CN110045996B (zh) 2019-02-28 2019-02-28 可伸缩三维阵列的配置系统及方法、配置器、计算阵列器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910150205.0A CN110045996B (zh) 2019-02-28 2019-02-28 可伸缩三维阵列的配置系统及方法、配置器、计算阵列器

Publications (2)

Publication Number Publication Date
CN110045996A CN110045996A (zh) 2019-07-23
CN110045996B true CN110045996B (zh) 2022-07-05

Family

ID=67274298

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910150205.0A Active CN110045996B (zh) 2019-02-28 2019-02-28 可伸缩三维阵列的配置系统及方法、配置器、计算阵列器

Country Status (1)

Country Link
CN (1) CN110045996B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228529A (zh) * 2017-09-28 2018-06-29 清华大学无锡应用技术研究院 用于配置可重构计算阵列的方法及其系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108228529A (zh) * 2017-09-28 2018-06-29 清华大学无锡应用技术研究院 用于配置可重构计算阵列的方法及其系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
可重构计算相关技术研究;孙康;《中国优秀博硕士学位论文全文数据库(博士) 信息科技辑》;20071215;第6章 *

Also Published As

Publication number Publication date
CN110045996A (zh) 2019-07-23

Similar Documents

Publication Publication Date Title
EP3699826A1 (en) Operation device and related products
US10534541B2 (en) Asynchronous discovery of initiators and targets in a storage fabric
CN108733604A (zh) 一种基于modbus通讯协议的485总线智能扩展方法及装置
JP7074832B2 (ja) ネットワークオンチップによるデータ処理方法及び装置
CN109240832B (zh) 一种硬件重构系统及方法
US20190286974A1 (en) Processing circuit and neural network computation method thereof
CN106936739B (zh) 一种报文转发方法及装置
CN113678113A (zh) 计算存储装置与基于网络化的系统
CN106688208A (zh) 利用机架规模架构中的池化存储器进行的网络通信
CN116501684A (zh) 一种服务器系统及其通信方法
EP2913759B1 (en) Memory access processing method based on memory chip interconnection, memory chip, and system
CN110045996B (zh) 可伸缩三维阵列的配置系统及方法、配置器、计算阵列器
KR20200138413A (ko) 네트워크 온칩 데이터 처리 방법 및 장치
KR20200138411A (ko) 네트워크 온칩 데이터 처리 방법 및 장치
CN109952809B (zh) 四元全网状以维度驱动的网络架构
CN111209244A (zh) 数据处理装置及相关产品
CN103299298A (zh) 处理业务的方法和系统
CN109324899B (zh) 基于PCIe池化硬件资源的编址方法、装置及主控节点
CN111027689A (zh) 配置方法、装置及计算系统
CN111381882B (zh) 数据处理装置及相关产品
KR20200138414A (ko) 네트워크 온칩 데이터 처리 방법 및 장치
CN113487020B (zh) 用于神经网络计算的参差存储结构及神经网络计算方法
CN113608861B (zh) 一种软件化载荷计算资源虚拟化分配方法及装置
CN112925739A (zh) 应用于众核芯片的通信方法、众核芯片及存储介质
CN110738017A (zh) 分布式集成电路仿真方法、装置、计算设备及存储介质

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