CN111858461A - Fpga异构加速平台部分重置、系统、设备及介质 - Google Patents
Fpga异构加速平台部分重置、系统、设备及介质 Download PDFInfo
- Publication number
- CN111858461A CN111858461A CN202010664249.8A CN202010664249A CN111858461A CN 111858461 A CN111858461 A CN 111858461A CN 202010664249 A CN202010664249 A CN 202010664249A CN 111858461 A CN111858461 A CN 111858461A
- Authority
- CN
- China
- Prior art keywords
- target
- fpga
- dynamic
- area
- reset
- 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.)
- Withdrawn
Links
- 230000001133 acceleration Effects 0.000 title claims abstract description 106
- 238000000034 method Methods 0.000 claims abstract description 56
- 230000003068 static effect Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 12
- 238000000329 molecular dynamics simulation Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
- G06F15/7871—Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Logic Circuits (AREA)
Abstract
本申请公开了一种FPGA异构加速平台部分重置方法、系统、设备及介质,该方法包括:通过目标FPGA对应的主机将目标比特文件下载到目标FPGA的控制单元中;通过所述控制单元确定目标比特文件对应的待重置区域;如果待重置区域为子动态区域,则利用目标比特文件对目标FPGA的动态区域中的目标子动态区域进行重置;如果待重置区域为全部子动态区域,则利用所述目标比特文件对目标FPGA的全部子动态区域进行重置。这样就可以不连接到专用的JTAG,操作灵活,且根据比特文件对应的待重置区域不同,可以对部分子动态区域进行重置,也可以对全部子动态区域一起进行重置,由此对整个动态区域进行重置,这样使用灵活性较高,且重置消耗时间较少。
Description
技术领域
本申请涉及FPGA技术领域,特别涉及一种FPGA异构加速平台部分重置方法、系统、设备、介质。
背景技术
目前的FPGA(Field Programmable Gate Array,现场可编程与门阵列)动态重配置加载方式是首先将FPGA资源划分一个静态区域和一个动态区域,传统的FPGA重置方法是采用文件烧写的方式,具体的,就是通过JTAG(Joint Test Action Group,联合测试工作组)将重置比特文件烧写到动态区域,以完成整个动态区域重置。现有的技术方案只适用于普通的FPGA平台使用,对于FPGA的异构加速平台而言,加速算法中包含很多加速功能单元,根据项目应用场景的不同,其内部的加速单元实现的功能也不同,如果按照现有技术方案,一旦需要重置就需要对动态区域整体进行编译与更新,不仅要花费较长时间去编译,也使得其他无需修改的功能单元也要重新配置,使用灵活性降低。同时将重置比特文件烧写到FPGA中时需要使用JTAG,造成用户在更新算法时,需要手动连接JTAG到FPGA上,操作不灵活。
发明内容
有鉴于此,本申请的目的在于提供一种FPGA异构加速平台部分重置方法、系统、设备、介质,既能够对FPGA异构加速平台上的部分动态区域进行重置,也可以对整个动态区域进行重置,且消耗时间较少,使用灵活性较高,操作灵活。其具体方案如下:
第一方面,本申请公开了一种FPGA异构加速平台部分重置方法,包括:
通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中;
通过所述控制单元确定所述目标比特文件对应的待重置区域;
如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置;
如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。
可选地,所述通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中之前,还包括:
通过所述主机获取目标加速算法代码,并对所述目标加速算法代码进行编译,得到所述目标比特文件。
可选地,所述通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中之前,还包括:
获取所述目标FPGA对应的区域部署信息;
根据所述区域部署信息将所述目标FPGA的内部逻辑划分为动态区域和静态区域;
根据所述区域部署信息将所述动态区域划分为多个子动态区域。
可选地,所述根据所述区域部署信息将所述目标FPGA的内部逻辑划分为动态区域和静态区域,包括:
根据所述区域部署信息将所述目标FPGA中的接口逻辑划分为所述静态区域;
根据所述区域部署信息将所述目标FPGA中的加速算法划分为所述动态区域。
可选地,所述获取所述目标FPGA对应的区域部署信息之前,还包括:
对所述目标FPGA进行整体编译,得到所述加速算法中各个加速单元的目标信息,其中,所述目标信息包括各个所述加速单元在所述目标FPGA上的位置信息和所占资源信息;
根据所述目标信息确定所述区域部署信息。
可选地,所述根据所述区域部署信息将所述动态区域划分为多个子动态区域之后,还包括:
设置所述动态区域对应的第一加速算法版本号以及各个所述子动态区域对应的第二加速算法版本号,以便根据所述第一加速算法版本号以及所述第二加速算法版本号确定所述待重置区域。
可选地,所述通过所述控制单元确定所述目标比特文件对应的待重置区域,包括:
通过所述控制单元确定所述目标比特文件对应的加速算法版本号;
根据所述目标比特文件对应的加速算法版本号确定所述待重置区域。
第二方面,本申请公开了一种FPGA异构加速平台部分重置系统,包括:
目标FPGA对应的主机,用于将目标比特文件下载到所述目标FPGA的控制单元中;
所述控制单元,用于确定所述目标比特文件对应的待重置区域;
所述控制单元,用于在所述待重置区域为子动态区域时,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置;
所述控制单元,用于在所述待重置区域为全部子动态区域时,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。
第三方面,本申请公开了一种电子设备,包括:
存储器和处理器;
其中,所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以实现前述公开的FPGA异构加速平台部分重置方法。
第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的FPGA异构加速平台部分重置方法。
可见,本申请先通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中,然后通过所述控制单元确定所述目标比特文件对应的待重置区域,如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置,如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。由此可见,本申请在需要对目标FPGA进行重置时,可以通过所述目标FPGA连接的主机直接将需要用到的比特文件下载到FPGA中,这样就可以不需要在连接到专用的JTAG,操作灵活,且根据比特文件对应的待重置区域不同,可以对部分子动态区域进行重置,而不影响不需要重置部分,也可以对全部子动态区域一起进行重置,由此对整个动态区域进行重置,这样使用灵活性较高,且消耗时间较少。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种FPGA异构加速平台部分重置方法流程图;
图2为本申请公开的一种FPGA逻辑划分示意图;
图3为本申请公开的一种具体的FPGA异构加速平台部分重置方法流程图;
图4为本申请公开的一种具体的FPGA异构加速平台部分重置方法流程图;
图5为本申请公开的一种FPGA异构加速平台部分重置系统结构示意图;
图6为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,FPGA重置方法是采用文件烧写的方式,具体的,就是通过JTAG将重置比特文件烧写到动态区域,以完成整个动态区域重置。现有的技术方案只适用于普通的FPGA平台使用,对于FPGA的异构加速平台而言,加速算法中包含很多加速功能单元,根据项目应用场景的不同,其内部的加速单元实现的功能也不同,如果按照现有技术方案,一旦需要重置就需要对动态区域整体进行编译与更新,不仅要花费较长时间去编译,也使得其他无需修改的功能单元也要重新配置,使用灵活性降低。同时将重置比特文件烧写到FPGA中时需要使用JTAG,造成用户在更新算法时,需要手动连接JTAG到FPGA上,操作不灵活。有鉴于此,本申请提出了一种FPGA异构加速平台部分重置方法,既能够对FPGA异构加速平台上的部分动态区域进行重置,也可以对整个动态区域进行重置,且消耗时间较少,使用灵活性较高,操作灵活。
参见图1所示,本申请实施例公开了一种FPGA异构加速平台部分重置方法,该方法包括:
步骤S11:通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中。
在实际应用中,在需要对所述目标FPGA进行部分重置时,需要先通过所述目标FPGA对应的主机将目标比特文件下载到所述FPGA的控制单元中,其中,所述目标FPGA为基于异构加速平台的FPGA。所述目标比特文件为对需要重置部分的加速算法代码进行修改之后编译得到的文件,且所述目标比特文件可以带有对应的比特文件版本号。所述目标比特文件带有的比特文件版本号为根据所述目标比特文件对应的加速算法版本号确定。所述控制单元可以为PR控制器(Partial Reconfiguration,部分重配置)。
步骤S12:通过所述控制单元确定所述目标比特文件对应的待重置区域。
可以理解的是,所述控制单元接收到所述目标比特文件之后,还需要确定出所述目标比特文件对应的待重置区域。具体的,可以根据所述目标比特文件的比特文件版本号以及预设的版本号和区域对应关系确定所述目标比特文件对应的待重置区域。具体的,可以根据所述目标比特文件的比特文件版本号便可以确定出对应的加速算法版本号,然后根据所述目标比特文件对应的加速算法版本号和预设的版本号和区域对应关系确定所述目标比特文件对应的待重置区域。
在所述目标FPGA中将整个内部逻辑划分为静态区域和动态区域,其中,所述动态区域又划分为多个子动态区域。所以需要先确定出待重置区域是哪一部分。参见图2所示,为FPGA逻辑划分示意图。将FPGA的内部逻辑划分为静态区域和动态区域,再将所述动态区域划分为不同的子动态区域,例如,子动态区域1、子动态区域2、子动态区域3到子动态区域N。
步骤S13:如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置;
在确定出所述待重置区域之后,如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置。也即,所述控制单元将所述目标比特文件加载到所述目标子动态区域。
步骤S14:如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。
在确定出所述待重置区域之后,如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。也即,如果所述待重置区域为整个动态区域,则利用所述目标比特文件对所述目标FPGA的整个动态区域进行重置。也即,所述控制单元将所述目标比特文件加载到整个动态区域。
可见,本申请先通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中,然后通过所述控制单元确定所述目标比特文件对应的待重置区域,如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置,如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。由此可见,本申请在需要对目标FPGA进行重置时,可以通过所述目标FPGA连接的主机直接将需要用到的比特文件下载到FPGA中,这样就可以不需要在连接到专用的JTAG,操作灵活,且根据比特文件对应的待重置区域不同,可以对部分子动态区域进行重置,而不影响不需要重置部分,也可以对全部子动态区域一起进行重置,由此对整个动态区域进行重置,这样使用灵活性较高,且消耗时间较少。
参见图3所示,本申请实施例公开了一种具体的FPGA异构加速平台部分重置方法,该方法包括:
步骤S21:获取目标FPGA对应的区域部署信息。
在实际应用中,需要先对目标FPGA的内部逻辑进行区域划分,具体的,需要先获取所述目标FPGA对应的区域部署信息,其中,所述区域部署信息包括静态区域部署信息和动态区域部署信息,所述静态区域部署信息包括静态区域的资源信息,所述动态区域部署信息包括动态区域的资源信息和各个子动态区域的信息。各个子动态区域的信息包括子动态区域数量以及各个子动态区域的资源信息。
获取所述目标FPGA对应的区域部署信息之前,需要先对所述目标FPGA进行整体编译,得到所述目标FPGA中的加速算法中各个加速单元的目标信息,其中,所述目标信息包括各个所述加速单元在所述目标FPGA上的位置信息和所占资源信息;根据所述目标信息确定所述区域部署信息。具体的,就是将目标FPGA的整体的工程以打平的方式进行编译,编译完成后在软件中查看各加速单元在所述目标FPGA中所占的位置与资源,以此为根据在动态区域内为各加速单元划分位置区域。根据所述目标信息中的位置信息确定所述区域划分信息可以使得所述目标FPGA的整体部署更合理,例如,可以将调用接口较多的加速单元划分到距离接口区域较近的区域。
步骤S22:根据所述区域部署信息将所述目标FPGA的内部逻辑划分为动态区域和静态区域。
可以理解的是,在获取到所述区域部署信息之后,根据所述区域部署信息将所述目标FPGA的内部逻辑划分为动态区域和静态区域。具体的,根据所述区域部署信息将所述目标FPGA中的接口逻辑划分为所述静态区域;根据所述区域部署信息将所述目标FPGA中的加速算法划分为所述动态区域。
这样静态区域中包含的主要是接口逻辑,此部分的逻辑是固定设计,如FPGA板卡无相关接口的修改,此部分一旦设计完成就无需改动,除了静态区域外,其余的资源都划分成动态区域,可以使加速算法逻辑得到最大的资源使用。
步骤S23:根据所述区域部署信息将所述动态区域划分为多个子动态区域。
在实际应用中,所述目标FPGA的加速算法包括多个不同的加速单元,所以可以将整个加速算法划分为不同的加速单元,以便在需要部分重置的时候可以对部分加速单元进行重置,而不需要对整个加速算法进行重置。所以还需要根据所述区域部署信息将所述动态区域划分为多个子动态区域。
根据所述区域部署信息将所述动态区域划分为多个子动态区域之后,还需要进行动态区域的层级设置。包括:设置所述动态区域对应的第一加速算法版本号以及各个所述子动态区域对应的第二加速算法版本号,以便根据所述第一加速算法版本号以及所述第二加速算法版本号确定所述待重置区域。具体的,就是先设置所述动态区域对应的第一加速算法版本号,然后以所述第一加速算法版本号为基础设置各个所述子动态区域对应的第二加速算法版本号。还需要通过约束文件设置所述第一加速算法版本号和所述第二加速算法版本号之间的层级关系。且加速算法版本号与比特文件版本号对应。例如,加速算法版本号为A,则对加速算法版本号为A的加速算法的代码进行编译之后得到的比特文件的版本号为A.rpf。
在将所述目标FPGA的内部逻辑划分为静态区域以及各个子动态区域之后,还需要进行布线,每个加速单元的布线都是将划定的子动态区域包含起来设置布线的区域,一般都是以大于子动态区域两个单元格为布线区域。
步骤S24:通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中。
当所述目标FPGA需要进行部分重置时,需要先通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中。具体的,通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中之前,还包括:通过所述主机获取目标加速算法代码,并对所述目标加速算法代码进行编译,得到所述目标比特文件。
步骤S25:通过所述控制单元确定所述目标比特文件对应的待重置区域。
获取到所述目标比特文件之后,还需要通过所述控制单元确定所述目标比特文件对应的待重置区域。具体的,可以先通过所述控制单元确定所述目标比特文件对应的加速算法版本号;根据所述目标比特文件对应的加速算法版本号确定所述待重置区域。具体的,根据所述目标比特文件的比特文件版本号便可以确定出对应的加速算法版本号。如果所述目标比特文件对应的加速算法版本号为所述第一加速算法版本号,则待重置区域为整个动态区域,也即全部子动态区域,如果所述目标比特文件对应的加速算法版本号为所述第二加速算法版本号,则待重置区域为子动态区域,再根据所述第二加速算法版本号便可以确定出目标子动态区域。
步骤S26:如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置。
在确定出所述待重置区域之后,如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置。也即,所述控制单元将所述目标比特文件加载到所述目标子动态区域。
当某一加速应用场景其中一个需求点改变时,只需要修改其对应的加速单元的代码,并以该代码编译后下载到FPGA,只会重配置其对应的子动态区域。
步骤S27:如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。
在确定出所述待重置区域之后,如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的全部子动态区域进行重置。也即,所述控制单元将所述目标比特文件加载到整个动态区域。
当加速应用场景需切换到另一个需求时,可能需要对整个动态区域的逻辑进行修改,此时将修改后加速算法的代码编译下载到FPGA中会对整体的动态区域逻辑重新配置。
参见图4所示,为FPGA异构加速平台部分重置流程图。主机在获取待重置区域对应的目标加速算法代码之后,对目标加速算法代码进行编译,得到PR比特文件(.rbf),将PR比特文件下载到FPGA的PR控制器中,所述PR控制器根据所述PR比特文件将所述PR比特文件重置到待重置的PR区域。
参见图5所示,本申请实施例公开了一种FPGA异构加速平台部分重置系统,包括:
目标FPGA对应的主机11,用于将目标比特文件下载到所述目标FPGA的控制单元中;
所述控制单元12,用于确定所述目标比特文件对应的待重置区域;
所述控制单元12,用于在所述待重置区域为子动态区域时,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置;
所述控制单元12,用于在所述待重置区域为全部子动态区域时,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。
可见,本申请先通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中,然后通过所述控制单元确定所述目标比特文件对应的待重置区域,如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置,如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。由此可见,本申请在需要对目标FPGA进行重置时,可以通过所述目标FPGA连接的主机直接将需要用到的比特文件下载到FPGA中,这样就可以不需要在连接到专用的JTAG,操作灵活,且根据比特文件对应的待重置区域不同,可以对部分子动态区域进行重置,而不影响不需要重置部分,也可以对全部子动态区域一起进行重置,由此对整个动态区域进行重置,这样使用灵活性较高,且消耗时间较少。
进一步的,参见图6所示,本申请实施例还公开了一种电子设备,包括:处理器21和存储器22。
其中,所述存储器22,用于存储计算机程序;所述处理器21,用于执行所述计算机程序,以实现前述实施例中公开的FPGA异构加速平台部分重置方法的步骤。
其中,关于上述FPGA异构加速平台部分重置方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述任一实施例中公开的FPGA异构加速平台部分重置方法。
其中,关于上述FPGA异构加速平台部分重置方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得一系列包含其他要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种FPGA异构加速平台部分重置方法、系统、设备、介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种FPGA异构加速平台部分重置方法,其特征在于,包括:
通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中;
通过所述控制单元确定所述目标比特文件对应的待重置区域;
如果所述待重置区域为子动态区域,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置;
如果所述待重置区域为全部子动态区域,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。
2.根据权利要求1所述的FPGA异构加速平台部分重置方法,其特征在于,所述通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中之前,还包括:
通过所述主机获取目标加速算法代码,并对所述目标加速算法代码进行编译,得到所述目标比特文件。
3.根据权利要求1或2所述的FPGA异构加速平台部分重置方法,其特征在于,所述通过目标FPGA对应的主机将目标比特文件下载到所述目标FPGA的控制单元中之前,还包括:
获取所述目标FPGA对应的区域部署信息;
根据所述区域部署信息将所述目标FPGA的内部逻辑划分为动态区域和静态区域;
根据所述区域部署信息将所述动态区域划分为多个子动态区域。
4.根据权利要求3所述的FPGA异构加速平台部分重置方法,其特征在于,所述根据所述区域部署信息将所述目标FPGA的内部逻辑划分为动态区域和静态区域,包括:
根据所述区域部署信息将所述目标FPGA中的接口逻辑划分为所述静态区域;
根据所述区域部署信息将所述目标FPGA中的加速算法划分为所述动态区域。
5.根据权利要求4所述的FPGA异构加速平台部分重置方法,其特征在于,所述获取所述目标FPGA对应的区域部署信息之前,还包括:
对所述目标FPGA进行整体编译,得到所述加速算法中各个加速单元的目标信息,其中,所述目标信息包括各个所述加速单元在所述目标FPGA上的位置信息和所占资源信息;
根据所述目标信息确定所述区域部署信息。
6.根据权利要求5所述的FPGA异构加速平台部分重置方法,其特征在于,所述根据所述区域部署信息将所述动态区域划分为多个子动态区域之后,还包括:
设置所述动态区域对应的第一加速算法版本号以及各个所述子动态区域对应的第二加速算法版本号,以便根据所述第一加速算法版本号以及所述第二加速算法版本号确定所述待重置区域。
7.根据权利要求6所述的FPGA异构加速平台部分重置方法,其特征在于,所述通过所述控制单元确定所述目标比特文件对应的待重置区域,包括:
通过所述控制单元确定所述目标比特文件对应的加速算法版本号;
根据所述目标比特文件对应的加速算法版本号确定所述待重置区域。
8.一种FPGA异构加速平台部分重置系统,其特征在于,包括:
目标FPGA对应的主机,用于将目标比特文件下载到所述目标FPGA的控制单元中;
所述控制单元,用于确定所述目标比特文件对应的待重置区域;
所述控制单元,用于在所述待重置区域为子动态区域时,则利用所述目标比特文件对所述目标FPGA的动态区域中的目标子动态区域进行重置;
所述控制单元,用于在所述待重置区域为全部子动态区域时,则利用所述目标比特文件对所述目标FPGA的全部子动态区域进行重置。
9.一种电子设备,其特征在于,包括:
存储器和处理器;
其中,所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以实现权利要求1至7任一项所述的FPGA异构加速平台部分重置方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的FPGA异构加速平台部分重置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010664249.8A CN111858461A (zh) | 2020-07-10 | 2020-07-10 | Fpga异构加速平台部分重置、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010664249.8A CN111858461A (zh) | 2020-07-10 | 2020-07-10 | Fpga异构加速平台部分重置、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111858461A true CN111858461A (zh) | 2020-10-30 |
Family
ID=72983016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010664249.8A Withdrawn CN111858461A (zh) | 2020-07-10 | 2020-07-10 | Fpga异构加速平台部分重置、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111858461A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116521614A (zh) * | 2023-07-05 | 2023-08-01 | 西安智多晶微电子有限公司 | 一种fpga动态局部重配置方法 |
CN117971356A (zh) * | 2024-03-29 | 2024-05-03 | 苏州元脑智能科技有限公司 | 基于半监督学习的异构加速方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108776649A (zh) * | 2018-06-11 | 2018-11-09 | 山东超越数控电子股份有限公司 | 一种基于cpu+fpga异构计算系统及其加速方法 |
CN109656872A (zh) * | 2018-12-24 | 2019-04-19 | 中国人民解放军国防科技大学 | 一种动态部分可重构片上系统软硬件划分方法 |
CN109791508A (zh) * | 2016-09-29 | 2019-05-21 | 亚马逊科技公司 | 具有多个可重配置区域的可配置逻辑平台 |
CN110750489A (zh) * | 2019-09-27 | 2020-02-04 | 苏州浪潮智能科技有限公司 | 一种在fpga中部署算子的方法、设备及介质 |
CN110888834A (zh) * | 2019-11-06 | 2020-03-17 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 一种pcie设备中fpga功能动态重构的方法及系统 |
CN111262742A (zh) * | 2020-01-20 | 2020-06-09 | 中国人民解放军国防科技大学 | 一种基于sca的动态部分可重构设备资源虚拟化与波形部署方法 |
-
2020
- 2020-07-10 CN CN202010664249.8A patent/CN111858461A/zh not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109791508A (zh) * | 2016-09-29 | 2019-05-21 | 亚马逊科技公司 | 具有多个可重配置区域的可配置逻辑平台 |
CN108776649A (zh) * | 2018-06-11 | 2018-11-09 | 山东超越数控电子股份有限公司 | 一种基于cpu+fpga异构计算系统及其加速方法 |
CN109656872A (zh) * | 2018-12-24 | 2019-04-19 | 中国人民解放军国防科技大学 | 一种动态部分可重构片上系统软硬件划分方法 |
CN110750489A (zh) * | 2019-09-27 | 2020-02-04 | 苏州浪潮智能科技有限公司 | 一种在fpga中部署算子的方法、设备及介质 |
CN110888834A (zh) * | 2019-11-06 | 2020-03-17 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 一种pcie设备中fpga功能动态重构的方法及系统 |
CN111262742A (zh) * | 2020-01-20 | 2020-06-09 | 中国人民解放军国防科技大学 | 一种基于sca的动态部分可重构设备资源虚拟化与波形部署方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116521614A (zh) * | 2023-07-05 | 2023-08-01 | 西安智多晶微电子有限公司 | 一种fpga动态局部重配置方法 |
CN116521614B (zh) * | 2023-07-05 | 2023-09-15 | 西安智多晶微电子有限公司 | 一种fpga动态局部重配置方法 |
CN117971356A (zh) * | 2024-03-29 | 2024-05-03 | 苏州元脑智能科技有限公司 | 基于半监督学习的异构加速方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109933348B (zh) | 一种电子控制单元中Bootloader的更新方法和装置 | |
CN110673924B (zh) | 一种多架构容器云镜像选择方法、装置、设备及存储介质 | |
CN111858461A (zh) | Fpga异构加速平台部分重置、系统、设备及介质 | |
CN102486733B (zh) | 引导程序的升级方法和装置 | |
CN109977099A (zh) | 数据库部署方法、用户设备、存储介质及装置 | |
CN110543327A (zh) | 业务组件复用方法、装置、计算机设备及存储介质 | |
CN113504918A (zh) | 设备树配置优化方法、装置、计算机设备和存储介质 | |
CN110659061B (zh) | Fpga动态重配置方法、装置、设备及可读存储介质 | |
CN112541313A (zh) | 为逻辑分析态配置触发表达式的方法和装置 | |
CN106708569B (zh) | 一种跨线列车中vobc配置文件的热加载方法及装置 | |
CN116991758A (zh) | 一种空间布局的更新方法、装置、设备及介质 | |
CN114143235A (zh) | Nfv自动测试方法、装置、设备及存储介质 | |
CN111562952A (zh) | 双芯智能电表管理单元的动态装载方法、动态装载装置 | |
CN116521266A (zh) | 车载应用启动配置的管理方法、装置、车辆及存储介质 | |
CN110806891A (zh) | 嵌入式设备软件版本的生成方法及装置 | |
CN108958823A (zh) | 修改基本输入输出系统设定值的方法 | |
CN114492257A (zh) | 芯片验证测试用例随机约束的管理和重用方法、存储介质 | |
CN113515915A (zh) | 插入填充单元的方法、装置、设备以及存储介质 | |
CN113407187A (zh) | 构建文件系统的方法、装置、设备及计算机存储介质 | |
CN114489827A (zh) | 动态库加载方法、核部署的调整方法及相关装置 | |
CN113794589B (zh) | 一种ac固件的打包方法、ap的升级方法和ac | |
CN114021709B (zh) | 多fpga数据处理方法、装置、服务器及存储介质 | |
US11681846B1 (en) | Sub-FPGA level compilation platform with adjustable dynamic region for emulation/prototyping designs | |
JP2004192604A (ja) | 組込みソフトウェア開発装置及び組込みソフトウェア開発方法 | |
CN111221535B (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201030 |