一种多个FPGA的设计分割方法技术

技术编号:26971251 阅读:17 留言:0更新日期:2021-01-06 00:01
本发明专利技术的一种多个FPGA的设计分割方法,涉及芯片逻辑设计技术领域。该方法包括:S1、逻辑电路建模为超图:配置分组互联大小资源和切割分组平衡因子;S2、超图粗化:将连接紧密顶点聚合在一起,构造子图;S3、初始分割:将聚类后的子图,根据分区大小和切割分组平衡因子,用贪心算法规则遍历无连接关系的聚类(cluster),分配到不同分区;S4、优化调整:根据FM算法计算可移动顶点收益,进行调整,优化切割大小。本发明专利技术可以实现对多FPGA原型系统分割过程中满足FPGA之间互联约束规则下,得到一个最优的分割结果。

【技术实现步骤摘要】
一种多个FPGA的设计分割方法
本公开涉及芯片逻辑设计
,尤其涉及一种多个FPGA的设计分割方法。
技术介绍
当前,IC芯片产业飞速发展,需要进行FPGA原型验证的逻辑设计越来越庞大,一颗业界较大规模的FPGA已经难以容纳下所有的芯片的逻辑功能。用户需要设法将大的设计切割为若干个小的设计,配置到多个FPGA中,同时保证运行时整个设计的逻辑功能正确无误,性能达标。通常整个设计分割过程需要考虑到很多的因素和处理工作,非常耗费精力和时间。而现有技术中,为了解决上述问题,传统的业界基于图论最小割算法的分割工具对多个FPGA原型系统普遍采用FPGA之间自由连接不设限的方式进行切割处理。在一些复杂的原型系统和EMU仿真平台,由于物理位置的连接限制等原因,需要对部分的FPGA间的连接关系进行约束和限制。因此,需要在满足多个FPGA互联约束规则下,提出一种最优的设计分割方法。
技术实现思路
有鉴于此,本公开实施例提供一种多个FPGA的设计分割方法,该方法在传统的基于资源权重最小割算法里面加入一种基于最优迷宫路径规划的处理,可以实现对多FPGA原型系统分割过程中满足FPGA之间互联约束规则下,得到一个最优的分割结果。为了达到上述目的,本专利技术提供如下技术方案:一种多个FPGA的设计分割方法,包括:S1、逻辑电路建模为超图:配置分组互联大小资源和切割分组平衡因子;S2、超图粗化:将连接紧密顶点聚合在一起,构造子图;S3、初始分割:将聚类后的子图,根据分区大小和切割分组平衡因子,用贪心算法规则遍历无连接关系的聚类Cluster,分配到不同分区;S4、优化调整:根据FM算法(Fiduccia-Mattheysesalgorithm)计算可移动顶点收益,进行调整,优化切割大小。进一步地,所述S1中还包括:现场可编程门阵列FPGA(FieldProgrammableGateArray)的逻辑门Gates资源映射为超图顶点Vertices,连线Nets映射为超边Hyperedges,进行逻辑电路到超图的建模;同时将待分割FPGA分组之间的物理连线资源作为设计配置约束资源。进一步地,在配置分组互联优先场景下,若切割大小超出分组互联约束,移动顶点收益较大的顶点,降低切割大小,以满足分组互联规则。进一步地,S2中,构造子图的过程包括,用图的深度优先算法,遍历超图,根据超边连线权重,把权重大的顶点聚类构造为一个子图。进一步地,在S4优化调整过程中,同时计算分组平衡因子和分组互联约束规模:若分组平衡因子和分组互联冲突,根据用户配置优先级调整,满足优先级高的配置约束规则。进一步地,还包括,对分组互联约束规则下的切割分组结果,根据迷宫规划算法遍历分割结果,判断是否所有分组互联可达,若超出互联权重,则跳转S4重新进行优化调整过程。本专利技术的多个FPGA的设计分割方法,该方法在传统的基于资源权重最小割算法里面加入一种基于最优迷宫路径规划的处理,可以实现对多FPGA原型系统分割过程中满足FPGA之间互联约束规则下,得到一个最优的分割结果。附图说明为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本专利技术的设计分割方法示意图;图2为本专利技术的设计分割方法中迷宫路径规划示意图。具体实施方式下面结合附图对本公开实施例进行详细描述。以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。如图1-2所示,本公开实施例提供一种多个FPGA的设计分割方法。包括:S1、逻辑电路建模为超图:根据用户配置分组互联大小资源和切割分组平衡因子;FPGA的逻辑门Gates资源映射为超图顶点Vertices,连线Nets映射为超边,进行逻辑电路到超图的建模;同时将待分割FPGA分组之间的物理连线资源作为设计配置约束资源。在配置分组互联优先场景下,若切割大小超出分组互联约束,移动顶点收益较大的顶点,可能单个分区上分配较多顶点(不满足平衡因子),降低切割大小,以满足分组互联规则。S2、超图粗化:将连接紧密顶点聚合在一起,构造子图,降低切割规模,提高切割性能;构造子图的过程包括,用图的深度优先算法,遍历超图,根据超边连线权重,把权重大的顶点聚类构造为一个子图。S3、初始分割(InitialPartition)阶段:将聚类后的子图,根据分区大小和切割分组平衡因子,用贪心算法规则遍历无连接关系的cluster,分配到不同分区;S4、优化调整、精细化(Uncoarsening&Refinement)阶段:根据FM(Fiduccia-Mattheysesalgorithm)算法计算可移动顶点收益,进行调整,优化切割大小。在S4优化调整过程中,同时计算分组平衡因子和分组互联约束规模:若分组平衡因子和分组互联冲突,根据用户配置优先级调整,满足优先级高的配置约束规则。S5、对分组互联约束规则下的切割分组结果,根据迷宫规划算法遍历分割结果,判断是否所有分组互联可达,若超出互联权重,则跳转S4重新进行优化调整过程。迷宫规划算法主要是连通图的遍历算法,这里使用基于优先级队列的图的广度优先搜索算法本文档来自技高网...

【技术保护点】
1.一种多个FPGA的设计分割方法,其特征在于,包括:/nS1、逻辑电路建模为超图:配置分组互联大小资源和切割分组平衡因子;/nS2、超图粗化:将连接紧密顶点聚合在一起,构造子图;/nS3、初始分割:将聚类后的子图,根据分区大小和切割分组平衡因子,用贪心算法规则遍历无连接关系的聚类Cluster,分配到不同分区;/nS4、优化调整:根据FM算法计算可移动顶点收益,进行调整,优化切割大小。/n

【技术特征摘要】
1.一种多个FPGA的设计分割方法,其特征在于,包括:
S1、逻辑电路建模为超图:配置分组互联大小资源和切割分组平衡因子;
S2、超图粗化:将连接紧密顶点聚合在一起,构造子图;
S3、初始分割:将聚类后的子图,根据分区大小和切割分组平衡因子,用贪心算法规则遍历无连接关系的聚类Cluster,分配到不同分区;
S4、优化调整:根据FM算法计算可移动顶点收益,进行调整,优化切割大小。


2.根据权利要求1所述的多个FPGA的设计分割方法,其特征在于,所述S1中还包括:FPGA的逻辑门Gates资源映射为超图顶点,连线映射为超边,进行逻辑电路到超图的建模;同时将待分割FPGA分组之间的物理连线资源作为设计配置约束资源。


3.根据权利要求2所述的多个FPGA的设计分割方法,其特征在于,在配置分组互...

【专利技术属性】
技术研发人员:李伟张吉峰
申请(专利权)人:上海国微思尔芯技术股份有限公司
类型:发明
国别省市:上海;31

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

1