CN113255265A - 分割及验证方法、装置、电子设备、存储介质 - Google Patents
分割及验证方法、装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN113255265A CN113255265A CN202110628401.1A CN202110628401A CN113255265A CN 113255265 A CN113255265 A CN 113255265A CN 202110628401 A CN202110628401 A CN 202110628401A CN 113255265 A CN113255265 A CN 113255265A
- Authority
- CN
- China
- Prior art keywords
- segmentation
- level
- target
- nets
- division
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
- G06F30/331—Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/327—Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本说明书实施例提供一种分割及验证方法、装置、电子设备、存储介质,应用于电子设计自动化技术领域,其中分割方法包括:根据待分割设计对应的设计文件,按设计层级划分多个分割层级,并在各所述分割层级内按进行分割处理,以及将分割结果输出。通过基于设计层级进行多层级分割处理,可支持用户设计自定义分组,满足用户个性化分割验证需求,提高分割验证效率。
Description
技术领域
本发明涉及电子设计自动化技术领域,具体涉及一种分割及验证方法、装置、电子设备、存储介质。
背景技术
随着芯片的集成度与电路复杂度不断提升,一个大型的芯片设计中常常可以包括有上亿、几十亿甚至是上百亿门,而且在同一芯片中还可集成有大量的IP 核、CPU核心、固件代码、微控制器微码、嵌入式软件等。
现有验证方案中,采用多片验证芯片,比如几十片乃至上百片的FPGA(FieldProgrammable Gate Array,现场可编程逻辑门阵列),构成多FPGA原型验证系统,以对一个大规模芯片设计进行分割验证。
现有分割方案中,通常是采用分割算法对芯片设计进行分割,虽然可以在分割算法中部分地考虑用户的一些分割需求,但用户越来越多的个性化、灵活化的分割需求不仅增加了算法复杂性,而且分割、验证等过程耗时长,导致整个芯片设计的分割验证效率低,影响集成电路产品面世。
基于此,亟需一种新的分割方案。
发明内容
有鉴于此,本说明书实施例提供一种分割及验证方法、装置、电子设备、存储介质,可支持用户设计自定义分组,满足用户个性化分组需求,有效提高分割效率。
本说明书实施例提供以下技术方案:
本说明书实施例提供一种分割方法,包括:根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元;将所述分割层级的分割结果输出。
本说明书实施例还提供一种验证方法,包括:根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元;根据所述分割层级的分割结果进行逻辑综合;根据逻辑综合的结果进行验证。
与现有技术相比,本说明书实施例采用的上述至少一个技术方案能够达到的有益效果至少包括:
通过根据待分割验证对应的设计文件,按预设的设计层级进行层级内分割处理,以及将各层级的分割结果整合后输出,即将待分割验证的芯片设计按用户设计的设计层级进行多层级、多分组的分割处理,既可满足用户自定义分组的个性化分割需求,又可缩短超大规模芯片设计(比如SoC,即片上系统)的分割及验证耗时,有利于集成电路产品快速面世。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本说明书实施例提供的一种分割方法中进行分割的结构示意图;
图2是本说明书实施例提供的一种分割方法中进行分割的结构示意图;
图3是本说明书实施例提供的一种分割方法的流程图;
图4是本说明书实施例提供的一种分割方法中相邻层级互连结构示意图;
图5是本说明书实施例提供的一种分割方法中板级分割中互连分配过程的示意图;
图6是本说明书实施例提供的一种分割方法中板级分割中互连分配结果的示意图;
图7是本说明书实施例提供的一种分割装置的结构示意图;
图8是本说明书实施例提供的一种用于分割处理的电子设备的结构示意图;
图9是本说明书实施例提供的一种验证方法的流程图;
图10是本说明书实施例提供的一种验证装置的结构示意图。
具体实施方式
下面结合附图对本申请实施例进行详细描述。
以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本申请,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目和方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本申请的基本构想,图式中仅显示与本申请中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等描述的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
现有分割方案通常是采用分割算法对芯片设计进行分割验证,但随着芯片设计的集成度、复杂度不断提升,以及不断涌现出的用户个性化分割验证需求,现有解决方案只能将分割算法设计得越来越庞大、复杂,这样不仅算法设计效率低,分割及验证效率也低。
例如,一个超大规模的芯片设计中可包含有大量电路单元,比如一个芯片设计可包含有上亿、几十亿甚至是上百亿门,比如在同一芯片中集成有大量的IP 核、CPU核心、固件代码、微控制器微码、嵌入式软件IP核等,这时需要考虑分割算法如何能够有效地分割这些复杂组网的节点。
例如,采用多片验证芯片构成原型验证系统进行验证,比如采用几十片乃至上百片FPGA构成多FPGA原型验证系统,这时分割算法不仅需要考虑如何根据验证芯片进行有效分割,还需要考虑用户个性化的分割及验证需求。
因此,如何有效地对芯片设计进行分割,并满足用户的个性化分割及验证需求,是一个亟需解决的问题。
基于此,发明人通过对芯片设计以及用户分割验证的需求等进行了大量研究分析后,提出一种新的分割思路:如图1所示,可将待分割验证的芯片设计由原型验证系统进行验证,其中原型验证系统可包括有若干Rack(机柜),比如Rack_1至Rack_m,每个Rack中还可包括若干Unit(部件),比如Unit_1至Unit_n,每个Unit中还可包括若干Board(板级),比如Board_1至Board_p,每个Board中还可包括若干FPGA(验证芯片),比如FPGA_1至FPGA_q,每个FPGA中还可包括若干Die(颗粒),比如Die_1至Die_r;当然,根据实际需要,Rack之间也可存在互连关系。
实施中,如图2所示,可基于用户设计的设计层级对待分割验证的芯片设计进行多层级分割思路,即根据设计文件,比如芯片设计文件(如基于Verilog语言设计的Verilog文件),比如根据用户自定义分组、互联资源信息等个性化需求形成的、用于分割验证的相关设计文件,如BoardFile(用于描述板级)、UnitFile(用于描述部件)、RackFile(用于描述机柜)等,可将待分割验证的芯片设计以Rack(机柜)、Unit(部件)、Board(板级)、FPGA(验证芯片)、Die(颗粒)等五个层级(level)进行划分的分割,并在各层级内进行分割(partition)时,可按预设的分割算法对该层级内部的各个组网节点进行分割,得到分割结果(Result),其中可将当前层级中需要向下一个层级进行跨层级的线网的驱动节点指定到下一层级中,可将该层级的相应分割结果转换(convert)后作为下一分割层级的输入,比如图中convert操作形成下一个层级的输入。
例如,将一个待分割验证的芯片设计,通过解析器(Parser)对用户自定义分组、互联资源信息等相关设计文件,比如BoardFile、UnitFile、RackFile等进行语法解析,获得互连信息(interconnection info),然后可将Verilog设计文件和这些互连信息共同作为第一个层级(即Rack-level)的输入,并按Rack、Unit、Board、FPGA、Die等五个层级对整个芯片设计进行划分设计层级的分割,然后在各个层级内进行分割。因此,在按各个层级进行分割后,可获得各个层级对应的分割结果Result,比如在Rack层级,通过分割可将各个Rack单元(比如Rack_1至Rack_m)进行分割得到相应分割结果(比如若干分区),比如在Unit层级对各个Unit单元(比如Unit_1至Unit_n)进行该层级内的分割得到相应分割结果,比如在Board层级对各个Board单元(比如Board_1至Board_p)进行该层级内的分割得到相应分割结果,比如在FPGA层级对各个FPGA单元(比如FPGA_1至FPGA_q)进行该层级内的分割得到相应分割结果,比如在Die层级对各个Die单元(比如Die_1至Die_r)进行该层级内的分割得到相应分割结果。
以及,分割中可将当前层级中需要跨层级的线网的驱动节点指定到下一层级的节点中,比如将Rack层级的Result中需要跨层级的线网的驱动节点固定到Unit层级中,比如将Unit层级的Result中需要跨层级的线网的驱动节点固定到Board层级中,比如将Board层级的Result中需要跨层级的线网的驱动节点固定到FPGA层级中,比如将FPGA层的Result中需要跨层级的线网的驱动节点固定到Die层级中。
还有,可根据分割结果形成相关输出文件,比如根据Die层级的某个分割结果Result,相应输出如FP1.v至FPi.v等文件,方便后续将这些分割结果进一步处理,比如逻辑综合,比如生成可加载到验证系统进行验证的文件等。
需要说明的是,可根据实际应用需要选用相应验证芯片来构成原型验证系统,本说明书实施例中以FPGA为验证芯片作示意说明,但FPGA不对本说明书各个实施例构成限定;还有,用于区分用的m、n、p、q、r、i等标记可为非负整数,这些标记可相同,也可不同,这里不作限定。
通过基于设计层级进行多层级划分的分割,并进行了逐层细化的分割,不仅可对芯片设计中的节点对应的各种组网方式进行有效分割,还可满足用户个性化的多层级、多分组的任意配置分割需求,可缩短芯片设计的分割、验证等过程耗时,提高整个芯片设计的分割验证效率,有助于集成电路产品快速面世。
需要说明的是,本说明书实施例中的分割方法和/或验证方法,可由终端和/或服务端来执行,以及方法中的若干步骤也可由终端和/或服务端来执行,这里不作限定。
以及,终端可包括计算机、平板电脑、移动智能设备等任一种用户终端,服务端可包括服务器或服务器集群等应用服务端,这里终端、服务端并不构成对本说明书各实施例的限定。
以下结合附图,说明本申请各实施例提供的技术方案。
本说明书实施例提供一种分割方法,可在芯片设计的分割验证时,提供一种基于设计层级进行分割的新分割方案。
如图3所示,所述分割方法可包括以下步骤:
步骤S202、根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理。
实施中,分割层级可包括以下至少两种层级:Rack、Unit、Board、FPGA和Die。
实施中,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元。
需要说明的是,待分割设计可为需要进行分割以在原型验证系统中进行验证的芯片设计,因而待分割设计对应的设计文件可为需要进行分割及验证所需的设计文件,比如基于Verilog语言设计的Verilog文件,比如根据用户自定义分组、互联资源信息等个性化需求形成的、用于分割验证的相关设计文件等,这里不作限定。
实施中,分割输入可为各层级互连约束文件信息和设计对应的超图数据,经由Rack Level Partition->Unit Level Partition->Board Level Partition->FPGA LevelPartition->Die Level Partition,可得到最终的分割结果,其中在相邻两层级之间需要进行相应的转换可得到下一层级划分的输入数据,转换可指将当前层级向下一层级传递的数据转换为符合下一层级的输入。
实施中,根据划分的分割层级进行分割时,即在各所述分割层级内按预设的分割策略进行分割处理,相应地可包括以下处理:
Rack层级(Rack-level)内的分割处理:根据设计文件,确定Rack层级中的各个Rack单元,采用预设的第一分割策略对所述Rack单元进行分割以获得第一分割结果,根据所述第一分割结果指定Unit节点,以根据Rack层级分割得到的各个Unit层级中固定节点(如fix节点)的分配信息,然后分别将各个Rack单元中的节点划分结果输入到Unit层级并行进行Unit层级分割;
Unit层级(Unit-level)内的分割处理:根据Unit层级中的各个节点,确定Unit层级中的各个Unit单元,采用预设的第二分割策略对所述Unit单元进行分割以获取第二分割结果,根据所述第二分割结果指定Board节点,以根据Unit层级分割得到的各个Board层级中固定节点的分配信息,然后分别将各个Unit单元中的节点划分结果输入到Board层级并行进行Unit层级分割;
Board层级(Board-level)内的分割处理:根据Board层级中的各个节点,确定Board层级中的各个Board单元,采用预设的第三分割策略对所述Board单元进行分割以获取第三分割结果,根据所述第三分割结果指定FPGA节点,以根据Board层级分割得到的各个FPGA层级中固定节点的分配信息,然后分别将各个Board单元中的节点划分结果输入到FPGA层级并行进行FPGA层级分割;
FPGA层级(FPGA-level)内的分割处理:根据FPGA层级中的各个节点,确定FPGA层级中的各个FPGA单元,采用预设的第四分割策略对所述FPGA单元进行分割以获取第四分割结果,根据所述第四分割结果指定Die节点,以根据FPGA层级分割得到的各个Die层级中固定节点的分配信息,然后分别将各个FPGA单元中的节点划分结果输入到Die层级并行进行Die层级分割;
Die层级(Die-level)内的分割处理:根据Die层级中的各个节点,确定Die层级中的各个Die单元,采用预设的第五分割策略对所述Die单元进行分割以获取第五分割结果。
实施中,如图4所示,相邻层级之间的互联可通过各个层级中的特定单元(即目标单元)进行互连,比如层级Lx_1与层级Lx_2之间的互连,可在相应目标单元L(x-1)_2和目标单元L(x-1)_1之间实现互连,这里不再展开说明。
需要说明的是,本说明书实施例中以Rack、Unit、Board、FPGA和Die等五个设计层级为例进行示意说明,但本领域的技术人员应当能够理解,在具体实施中可根据用户实际设计的若干设计层级来对待分割验证的芯片设计进行层级划分的分割,比如设计层级有Board、FPGA和Die等,这时可按Board、FPGA和Die进行层级划分的分割,下面不再赘述。
步骤S204、将所述分割层级的分割结果输出。
实施中,可根据实际需要对各个分割层级的分割结果进行输出,即各个分割层级可输出自身层级对应的可用验证时使用的相关分割结果,以作后续处理,比如可将Die层级对应的分割结果用于后续逻辑综合处理,比如可将FPGA层级的分割结果中需要指定到下一层级Die层级的节点向下一层级输出,还可将除与跨层级相关节点外的结果进行输出等等,这里不再一一列举。
通过步骤S202至步骤S204,可针对当前用户设计规模的极速增长与分割分组方式的灵活多样等需求,提供一种新分割方案,以将待分割验证的芯片设计按用户设计的设计层级进行多层级、多分组的分割处理,既可满足用户自定义分组的个性化分割需求,又可缩短超大规模芯片设计(比如SoC,即片上系统)的分割及验证耗时,以及可以大大提升设计分割的性能、效率,加速用户前端功能验证的进程,加快集成电路产品的面世。
在一些实施方式中,可根据用户自定义分组、互联资源信息等个性化需求形成的、用于分割验证的相关设计文件,确定分割的层级策略。
实施中,首先读入用户设计并进行语法解析,读入用户自定义分组与互联资源信息等相关文件。
其中,用户自定义分组的形式可为:
#The Hierarchy Partition format,
#HP = M1×N1×... + M2×N2×... + M3×N3×...+ Mn× Nn…
即把整体设计顶层划分为n个分组,其中各乘数项中每个分组下进一步划分为不同的子分组数,子分组层级和分组个数可以灵活定义。
例如,HP = 3× 2 + 4 × 3 × 2 + 4,代表了将设计第一层分组分割为3个大分组,第1个大分组中又被分割为3个子部分,每个子部分又被分割成2个部分,依此类推,不再一一说明。
实施中,用户自定义分组中,逻辑阵列资源及其互联信息的示例格式可如下:
G1: 5024 1080 4000000 4886400 610800 96 48 2584 4320 0 { 0 1200 200 }
G2: 5024 1080 4000000 4886400 610800 96 48 2584 4320 0 { 1200 0 100 }
G3: 5024 1080 4000000 4886400 610800 96 48 2584 4320 0 { 200 100 0 }
其中,G1、G2、G3可为FPGA编号,“G1: 5024 1080 4000000 4886400 610800 96 482584 4320 0”中的各项数字为G1的各项资源数量,{ 0 1200 200 }中的数字代表FPGA之间的互连线数量。
因此,可通过获取用户自定义分组,进而根据所述用户自定义分组确定所述层级策略,即根据用户的自定义分组配置和分组互联信息,更好地对用户设计进行自由、灵活的分组分割,满足用户个性化分组需求。
在一些实施方式中,可对设计文件中的节点进行预先分配,以将待分割设计中的目标节点分配到不同Rack单元,其中所述目标节点包括所需资源超过第一预设阈值的节点。
例如,将各节点中所需资源较大的节点分配到不同Rack,即作为Rack层级中的固定节点(即fix节点),可平衡验证中各个Rack的资源,可有效提高分割及验证的效率。
在一些实施方式中,在将所述目标线网的驱动节点指定到下一层级中的目标单元时,可进行排序处理来提高处理效率。
实施中,可先确定目标互连线的编号顺序,所述目标互连线为用于在两个分割层级之间互连的连线,并将所述目标线网按照节点数升序排序,然后依次将所述目标线网的驱动节点分配到对应的目标互连线两端所处的分割层级。
例如,针对跨Unit线网,在将这些线网中的驱动节点固定在Unit下一层级即Board层级的特定Board单元中时,具体分配方式可为:将跨Unit线网按照节点数升序排序,依次将这些线网的驱动节点分配到各条Unit之间互联线两端所处的Board,互联线的选择顺序按照编号顺序。
例如,以板级分割为例,如图5所示,按照分割算法可得到两个子图(如图中上部分的虚线框所示的节点图),此时这两个子图对应放到两个验证板MB1与MB2中进行验证,这时还需要确定哪些节点为跨板线网(即跨层级的线网),以及根据跨层级线网确定出如何分配到板间互联线上,具体实施中可按照线网节点数升序进行互联线分配,即先进行n1线网分配,再进行n2线网分配。
如图6所示,假如线网n1分配到S1互联线上,而当分配线网n2时,可能由于资源约束或者通道容量的约束,只能将其分配到S3互联线上,所以相应的g1节点固定在MB1中的FPGA1上,g2固定在MB2中FPGA2上。其次,为了最小化出现n1、n2线网在板内跨越FPGA的Hop(跳数)最小,在后一级别进行板内FPGA之间的划分时将其割边代价增大,获得最终两条线网可能的划分结果。
在一些实施方式中,在将所述目标线网的驱动节点指定到下一层级中的目标单元时,应满足相关约束条件。
实施中,可通过判断每条目标互联线上的信号位宽,以保证不超过互联线的通道容量,比如考虑Rack间互联接口的特性为位宽为8的双向传输连线,这时可将目标互联线上的信号位宽约束为不超过8bit。
实施中,可通过判断当前分割层级间线网在所述当前分割层级内部的下一层级之间Hop最小,比如考虑FPGA间线网可以在内部Die之间产生较少Hop。
实施中,可通过判断当前分割层级的固定节点所占资源是否超过预设资源上限阈值,比如可考虑设置资源上限阈值,初步将其设置为70%。
在一些实施方式中,在判断当前分割层级间线网在所述当前分割层级内部的下一层级之间Hop最小时,可按各个分割层级对应的约束条件进行判断。
实施中,可预设各个层级的Hop约束条件:
将跨Rack线网在内部的Unit之间的Hop代价设为最大;
将跨Unit线网在内部的Board之间的Hop代价设为第二大;
将跨Board线网在内部的FPGA之间的Hop代价设为第三大;
将跨FPGA线网在内部的Die之间的Hop代价设为第四大。
在一些实施方式中,各个分割层级的分割策略可根据实际应用需要确定对应的分割策略,各个分割层级的分割策略可相同,也可不同。优选地,可将分割策略设置为最小割策略,即按照最小割优化目标进行层级内分割,比如按照最小割优化目标进行Rack层级分割,以得到分割结果。
需要说明的是,最小割可指分割图中所有的割中,边权值和最小的割。
在一些实施方式中,可对所述分割层级中的不同分组进行多任务并行分割计算。
实施中,采用多任务并行计算分割的方法,对每个分割子步骤产生的不同分组进行多任务并行分割计算,即各分割分组可分别独立进行后续分割计算步骤,可有效降低分割的耗时,快速获得分割结果。
在一些实施方式中,在完成分割后,可将所有细分分组结果整合后输出,以便于进行后续处理。
需要说明的是,整合可指将该层级的分割结果进行合并、聚类等处理,以形成该层级对应的处理结果,比如逻辑综合结果,比如生成加载到原型验证系统中硬件电路的数据文件等,这里不作限定。
在一些实施方式中,可采用TDM(time-division multiplexing,时分复用)来满足互连资源不足的情形。
实施中,可通过判断互连资源是否满足设计要求,并在超出FPGA互连资源时,可在FPGA层级中增加TDM,以将超过FPGA之间互连容量的信号进行互连。
为便于理解分割过程,下面再以示例形式给出各个层级分割的示意说明。
示例一:Rack层级分割。
Rack层级基本单元为各个Rack,可先读入描述Rack单元资源、端口信息、以及互联信息的文件RackFile;然后,设计对应的超图数据,超图数据中包含各电路节点所需资源、线网连接关系、节点约束等信息;接着,将各节点中所需资源较大的节点分配到不同Rack上,以作为Rack中的固定节点(即fix节点),接下来考虑Rack之间的互联约束,按照最小割优化目标进行Rack层级分割,得到分割结果。
分割中在需要考虑互连约束时,需要考虑Rack间互联接口的位宽特性,比如位宽可为8的双向传输连线。
在完成分割后,可根据得到的分割结果,确定跨Rack线网,以将这些线网中的驱动节点固定在Rack下一层级即Unit层级的特定Unit单元中。具体分配实现的方式可以为:将跨Rack线网按照节点数升序排序,依次将这些线网的驱动节点分配到各条Rack之间互联线两端所处的Unit,互联线的选择顺序可按照编号顺序。
在将跨Rack线网指定到Unit层级的特定单元时,可考虑以下三个因素:
a、通道信号互联容量的限制,在分配过程中保证分配到每条互联线上的信号位宽不超过互联线的通道容量;
b、Rack间线网在内部Unit之间的Hop最小,这是因为Rack之间互联线极少以及Rack之间相较于PCB trace(印制板走线)互联线延时较大,因而可将这种跨Rack线网在内部的Unit之间的Hop代价设为最大;
c、资源约束限制,鉴于后续其他节点分配以及插入的TDM同样需要使用资源,因而提前固定的节点所占资源不应过多,这时可设置资源上限阈值,比如初步将其设置为70%。
在获得分割结果后,可根据分割结果将相关分割结果指定Unit固定节点,比如将跨Rack线网的驱动节点指定到Unit中,以及分别将各个Rack单元中的节点划分结果输入到Unit级并行进行Unit层级分割。
示例二:Unit层级分割。
Unit层级基本单元为各个Unit,可先读入描述Unit单元资源、端口信息、以及互联信息的文件UnitFile,Rack层级分割得到的各个Unit中固定节点分配信息;然后,考虑Unit之间的互联约束,按照最小割优化目标进行Unit层级分割,得到分割结果。同样,考虑互连约束时需要考虑Unit间互联接口的位宽特性。
在完成分割后,可根据得到的分割结果,确定跨Unit线网,以将这些线网中的驱动节点固定在Unit下一层级即Board层级的特定Board单元中。具体分配实现的方式可以为:将跨Unit线网按照节点数升序排序,依次将这些线网的驱动节点分配到各条Unit之间互联线两端所处的Board,互联线的选择顺序可按照编号顺序。
在将跨Unit线网指定到Board层级的特定单元时,可考虑三个因素:
a、通道信号互联容量的限制,在分配过程中保证分配到每条互联线上的信号位宽不超过互联线的通道容量;
b、Unit间线网在内部Board之间的Hop最小,这是因为Unit之间互联线极少以及Board之间相较于PCB trace互联线延时较大,因而可将这种跨Unit线网在内部的Board之间的Hop代价设为第二大。
c、资源约束限制,鉴于后续其他节点分配以及TDM同样需要使用资源,因而提前固定的节点所占资源不应过多,这时可设置资源上限阈值,比如初步将其设置为70%。
在获得分割结果后,可根据分割结果将相关分割结果指定Board固定节点,比如将跨Unit线网的驱动节点指定到Board中,以及分别将各个Unit单元中的节点划分结果输入到Board级并行进行Board层级分割。
示例三:Board层级分割。
Board层级基本单元为各个Board,可先读入描述Board单元资源、端口信息、以及互联信息的文件BoardFile,Unit层级分割得到的各个Board中固定节点分配信息;然后,考虑Board之间的互联约束,按照最小割优化目标进行Board层级分割,得到分割结果。同样,考虑互连约束时需要考虑Board间互联接口的位宽特性。
在完成分割后,可根据得到的分割结果,确定跨Board线网,以将这些线网中的驱动节点固定在Board下一层级即FPGA层级的特定FPGA单元中。具体分配实现的方式可以为:将跨Board线网按照节点数升序排序,依次将这些线网的驱动节点分配到各条Board之间互联线两端所处的FPGA,互联线的选择顺序可按照编号顺序。
在将跨Board线网指定到FPGA层级的特定单元时,可考虑三个因素:
a、通道信号互联容量限制,在分配过程中算法保证分配到每条互联线上的信号位宽不能超过互联线的通道容量;
b、Board间线网在内部FPGA之间的Hop最小,这是因为Board之间互联线极少以及Board之间相较于PCB trace互联线延时较大,因而可将这种跨Board线网在内部的FPGA之间的Hop代价设为第三大。
c、资源约束限制,鉴于后续其他节点分配以及TDM同样需要使用资源,因而提前固定的节点所占资源不应过多,这时可设置资源上限阈值,比如初步将其设置为70%。
在获得分割结果后,可根据分割结果将相关分割结果指定FPGA固定节点,比如将跨Board线网的驱动节点指定到FPGA中,以及分别将各个Board单元中的节点划分结果输入到FPGA层级并行进行FPGA层级分割。
示例四:FPGA层级分割。
FPGA层级基本单元为各个FPGA,可先读入描述FPGA单元资源、端口信息、以及互联信息的文件,Board层级分割得到的各个FPGA中固定节点分配信息;然后,考虑FPGA之间的互联约束,按照最小割优化目标进行FPGA层级分割,得到分割结果。
在完成分割后,可根据得到的分割结果,确定跨FPGA线网,以将这些线网中的驱动节点固定在FPGA下一层级即Die层级的特定Die单元中。具体分配实现的方式可以为:将跨FPGA线网按照节点数升序排序,依次将这些线网的驱动节点分配到各条FPGA之间互联线两端所处的Die,互联线的选择顺序可按照编号顺序。
在将跨FPGA线网指定到Die层级的特定单元时,可考虑三个因素:
a、考虑TDM,因为超过FPGA之间互联容量的信号可以采用TDM,在分配过程中需要考虑TDM比例的影响;
b、FPGA间线网可以在内部Die之间产生较少Hop,这是因为FPGA采用的是PCBtrace互联线,相较于前面层级内互联线延时较小,因而可将这种跨FPGA线网在内部的Die之间的Hop代价设为第四大。
c、资源约束限制,鉴于后续其他节点分配以及TDM同样需要使用资源,因而提前固定的节点所占资源不应过多,这时可设置资源上限阈值,比如初步将其设置为70%。
在获得分割结果后,可根据分割结果将相关分割结果指定Die固定节点,以及分别将各个FPGA单元中的节点划分结果输入到Die层级并行进行Die层级分割。
示例五:Die层级分割。
Die层级基本单元为各个Die,可先读入描述Die单元资源、端口信息、以及互联信息的文件,FPGA层级分割得到的各个Die中固定节点分配信息;然后,鉴于前面层级分割选定的固定端口实质上是直接对应于Die上的引脚,所以与FPGA内部节点的连接关系也需要考虑为Die-Die之间的切割代价,这时可考虑Die之间的互联约束,结合指定的Die对应固定节点,按照最小割优化目标进行Die层级分割,得到分割结果。
基于相同发明构思,本说明书实施例还提供与前述分割方法对应的装置、电子设备以及计算机存储介质。
如图7所示,本说明书实施例提供的一种分割装置700,包括:分割模块701,根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元;输出模块703,将所述分割层级的分割结果输出。
可选地,分割装置700还可包括:用户模块(图中未示出),获取用户自定义分组,并根据所述用户自定义分组确定所述层级策略。
可选地,分割装置700还可包括:指定模块(图中未示出),将所述待分割设计中的目标节点分配到不同Rack单元,其中所述目标节点包括所需资源超过第一预设阈值的节点。
可选地,分割装置700还可包括:分配模块(图中未示出),在将所述目标线网的驱动节点指定到下一层级中的目标单元时,确定目标互连线的编号顺序,所述目标互连线为用于在两个分割层级之间互连的连线,将所述目标线网按照节点数升序排序,以及依次将所述目标线网的驱动节点分配到对应的目标互连线两端所处的分割层级。
可选地,分割装置700还可包括:判断模块(图中未示出),在将所述目标线网的驱动节点指定到下一层级中的目标单元时,判断每条目标互联线上的信号位宽是否超过互联线的通道容量,和/或判断当前分割层级间线网在所述当前分割层级内部的下一层级之间Hop最小,和/或判断当前分割层级的固定节点所占资源是否超过预设资源上限阈值。
可选地,分割装置700还可包括:设置模块(图中未示出),在判断当前分割层级间线网在所述当前分割层级内部的下一层级之间Hop最小前,将跨Rack线网在内部的Unit之间的Hop代价设为最大,将跨Unit线网在内部的Board之间的Hop代价设为第二大,将跨Board线网在内部的FPGA之间的Hop代价设为第三大,将跨FPGA线网在内部的Die之间的Hop代价设为第四大。
可选地,所述分割策略包括最小割策略。
可选地,在各所述分割层级内按预设的分割策略进行分割处理,包括:对所述分割层级中的不同分组进行多任务并行分割计算。
可选地,分割装置700还可包括:插入模块(图中未示出),在FPGA层级中增加TDM,以将超过FPGA之间互连容量的信号进行互连。
如图8所示,本说明书实施例提供一种用于分割处理的电子设备,图中示出了该电子设备500的结构,以用于实现前述任一实施例对应的方案,这里电子设备500仅仅是一个示例,不应对本发明实施例的功能和使用范围带来限定。
如图8所示,在电子设备500中,可包括:至少一个处理器510;以及,
与所述至少一个处理器通信连接的存储器520;其中,所述存储器存储520有可被所述至少一个处理器510执行的指令,所述指令被所述至少一个处理器510执行,以使所述至少一个处理器510能够执行:本说明书实施例提供的任意一种分割方法。
需要说明的是,电子设备500可以以通用计算设备的形式表现,例如其可以为服务器设备。
实施中,电子设备500的组件可以包括但不限于:上述至少一个处理器510、上述至少一个存储器520、连接不同系统组件(包括存储器520和处理器510)的总线530,其中总线530可包括数据总线、地址总线和控制总线。
实施中,存储器520可以包括易失性存储器,例如随机存取存储器(RAM)5201和/或高速缓存存储器5202,还可以进一步包括只读存储器(ROM)5203。
存储器520还可以包括具有一组(至少一个)程序模块5204的程序工具5205,这样的程序模块5204包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器510通过运行存储在存储器520中的计算机程序,从而执行各种功能应用以及数据处理。
电子设备500也可以与一个或多个外部设备540(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口550进行。并且,电子设备500还可以通过网络适配器560与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信,网络适配器560通过总线530与电子设备500中的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
基于相同发明构思,本说明书实施例提供一种用于分割处理的计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令设置为:本说明书实施例提供的任意一种分割方法。
需要说明的是,所述计算机存储介质可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以提供将数据处理实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行前述任意一个实施例所述方法中的若干步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明中的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
基于相同发明构思,本说明书实施例提供一种验证方法,以对芯片设计进行原型验证。
如图9所示,本说明书实施例提供的一种验证方法,可包括:
步骤S802、根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元。
步骤S804、根据所述分割层级的分割结果进行逻辑综合。
实施中,可将各分割层级的分割结果整合后输出,方便逻辑综合处理。
步骤S806、根据逻辑综合的结果进行验证。
实施中,可根据综合结果生成用于验证的处理数据,以加载到原型验证系统中进行上电验证。
需要说明的是,前述验证方法中的相关说明,可参照前述分割方法中的说明,以及验证方法中的相关优选实施例方式也可参照前述对应的相关说明内容,这里不再赘述。
基于相同发明构思,本说明书实施例还提供与前述验证方法对应的装置、电子设备以及计算机存储介质。
如图10所示,本说明书实施例提供的一种验证装置900,包括:分割模块901,根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元;综合模块903,根据所述分割层级的分割结果进行逻辑综合;验证模块905,根据逻辑综合的结果进行验证。
基于相同发明构思,本说明书实施例还提供一种用于验证处理的电子设备,以用于实现前述任一实施例对应的验证方案。
需要说明的是,该电子设备,可包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述任一实施例所述的验证方法,具体可参照前述的电子设备实施例的说明方式,这里不再展开说明。
基于相同发明构思,本说明书实施例还提供一种用于验证处理的计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令设置为:用于实现前述任一实施例对应的验证方法的指令。
需要说明的是,该计算机存储介质的说明,具体可参照前述实施例的说明方式,这里不再展开说明。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例侧重说明的都是与其他实施例的不同之处。尤其,对于后面说明的产品实施例而言,由于其与方法是对应的,描述比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中,各个实施例均可为完全硬件实施例、完全软件实施例或结合软件和硬件实施的实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (16)
1.一种分割方法,其特征在于,包括:
根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元;
将所述分割层级的分割结果输出。
2.根据权利要求1所述的分割方法,其特征在于,所述分割方法还包括:
获取用户自定义分组;
根据所述用户自定义分组确定所述层级策略。
3.根据权利要求1所述的分割方法,其特征在于,所述分割方法还包括:
将所述待分割设计中的目标节点分配到不同Rack单元,其中所述目标节点包括所需资源超过第一预设阈值的节点。
4.根据权利要求1所述的分割方法,其特征在于,在将所述目标线网的驱动节点指定到下一层级中的目标单元时,所述分割方法还包括:
确定目标互连线的编号顺序,所述目标互连线为用于在两个分割层级之间互连的连线;
将所述目标线网按照节点数升序排序;
依次将所述目标线网的驱动节点分配到对应的目标互连线两端所处的分割层级。
5.根据权利要求1所述的分割方法,其特征在于,在将所述目标线网的驱动节点指定到下一层级中的目标单元时,所述分割方法还包括:
判断每条目标互联线上的信号位宽是否超过互联线的通道容量;
和/或,判断当前分割层级间线网在所述当前分割层级内部的下一层级之间Hop最小;
和/或,判断当前分割层级的固定节点所占资源是否超过预设资源上限阈值。
6.根据权利要求5所述的分割方法,其特征在于,在判断当前分割层级间线网在所述当前分割层级内部的下一层级之间Hop最小前,所述分割方法还包括:
将跨Rack线网在内部的Unit之间的Hop代价设为最大;
将跨Unit线网在内部的Board之间的Hop代价设为第二大;
将跨Board线网在内部的FPGA之间的Hop代价设为第三大;
将跨FPGA线网在内部的Die之间的Hop代价设为第四大。
7.根据权利要求1所述的分割方法,其特征在于,所述分割策略包括最小割策略。
8.根据权利要求1所述的分割方法,其特征在于,在各所述分割层级内按预设的分割策略进行分割处理,包括:对所述分割层级中的不同分组进行多任务并行分割计算。
9.根据权利要求1所述的分割方法,其特征在于,所述分割方法还包括:
在FPGA层级中增加TDM,以将超过FPGA之间互连容量的信号进行互连。
10.一种验证方法,其特征在于,包括:
根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元;
根据所述分割层级的分割结果进行逻辑综合;
根据逻辑综合的结果进行验证。
11.一种分割装置,其特征在于,包括:
分割模块,根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元;
输出模块,将所述分割层级的分割结果输出。
12.一种验证装置,其特征在于,包括:
分割模块,根据待分割设计对应的设计文件,按预设的层级策略划分多个分割层级,并在各所述分割层级内按预设的分割策略进行分割处理,其中,所述分割层级包括以下至少两种层级:Rack层级、Unit层级、Board层级、FPGA层级和Die层级,在当前分割层级完成分割时,根据所述当前分割层级对应的分割结果,确定所述当前分割层级中的若干目标线网,并将所述目标线网的驱动节点指定到下一层级中的目标单元,所述目标线网为从所述当前分割层级向下一层级进行跨层级互连的线网,所述目标单元为所述下一层级中用于与所述当前分割层级进行跨层级互连的单元;
综合模块,根据所述分割层级的分割结果进行逻辑综合;
验证模块,根据逻辑综合的结果进行验证。
13.一种用于分割处理的电子设备,其特征在于,包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行:如权利要求1-9中任意一项所述的分割方法。
14.一种用于分割处理的计算机存储介质,其特征在于,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令设置为:如权利要求1-9中任意一项所述的分割方法。
15.一种用于验证处理的电子设备,其特征在于,包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行:如权利要求10所述的验证方法。
16.一种用于验证处理的计算机存储介质,其特征在于,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令设置为:如权利要求10所述的验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110628401.1A CN113255265B (zh) | 2021-06-07 | 2021-06-07 | 分割及验证方法、装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110628401.1A CN113255265B (zh) | 2021-06-07 | 2021-06-07 | 分割及验证方法、装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113255265A true CN113255265A (zh) | 2021-08-13 |
CN113255265B CN113255265B (zh) | 2021-09-28 |
Family
ID=77186557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110628401.1A Active CN113255265B (zh) | 2021-06-07 | 2021-06-07 | 分割及验证方法、装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113255265B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338540A (zh) * | 2022-03-17 | 2022-04-12 | 上海国微思尔芯技术股份有限公司 | 信号分流方法、装置、电子设备及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5053836A (en) * | 1989-11-21 | 1991-10-01 | Eastman Kodak Company | Cleaving of diode arrays with scribing channels |
US5784290A (en) * | 1994-10-18 | 1998-07-21 | International Business Machines Corporation | Multi-chip device partitioning process |
US9165098B1 (en) * | 2007-01-10 | 2015-10-20 | Cadence Design Systems, Inc. | Machine readable products for single pass parallel hierarchical timing closure of integrated circuit designs |
CN109087274A (zh) * | 2018-08-10 | 2018-12-25 | 哈尔滨工业大学 | 基于多维融合及语义分割的电子器件缺陷检测方法及装置 |
CN110941934A (zh) * | 2019-12-06 | 2020-03-31 | 思尔芯(上海)信息科技有限公司 | 一种fpga原型验证开发板分割仿真系统、方法、介质及终端 |
CN111027266A (zh) * | 2019-12-06 | 2020-04-17 | 思尔芯(上海)信息科技有限公司 | 一种多个fpga的设计分割的方法、系统、存储介质及终端 |
CN111080655A (zh) * | 2019-12-04 | 2020-04-28 | 腾讯科技(深圳)有限公司 | 图像分割及其模型训练方法、装置、介质及电子设备 |
CN111860495A (zh) * | 2020-06-19 | 2020-10-30 | 上海交通大学 | 一种层级化网络结构搜索方法、设备及可读存储介质 |
CN112183007A (zh) * | 2020-09-28 | 2021-01-05 | 上海国微思尔芯技术股份有限公司 | 一种多个fpga的设计分割方法 |
CN112183002A (zh) * | 2020-12-02 | 2021-01-05 | 上海国微思尔芯技术股份有限公司 | 一种基于fpga逻辑的软件分割方法 |
CN112257369A (zh) * | 2020-12-21 | 2021-01-22 | 上海国微思尔芯技术股份有限公司 | 一种逻辑设计分割方法及系统 |
CN112329368A (zh) * | 2020-10-30 | 2021-02-05 | 盛科网络(苏州)有限公司 | 自动调整分割方案的方法、设备和存储介质 |
CN112861468A (zh) * | 2021-02-08 | 2021-05-28 | 山东云海国创云计算装备产业创新中心有限公司 | 一种软硬件协同仿真验证的方法、装置和介质 |
-
2021
- 2021-06-07 CN CN202110628401.1A patent/CN113255265B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5053836A (en) * | 1989-11-21 | 1991-10-01 | Eastman Kodak Company | Cleaving of diode arrays with scribing channels |
US5784290A (en) * | 1994-10-18 | 1998-07-21 | International Business Machines Corporation | Multi-chip device partitioning process |
US9165098B1 (en) * | 2007-01-10 | 2015-10-20 | Cadence Design Systems, Inc. | Machine readable products for single pass parallel hierarchical timing closure of integrated circuit designs |
CN109087274A (zh) * | 2018-08-10 | 2018-12-25 | 哈尔滨工业大学 | 基于多维融合及语义分割的电子器件缺陷检测方法及装置 |
CN111080655A (zh) * | 2019-12-04 | 2020-04-28 | 腾讯科技(深圳)有限公司 | 图像分割及其模型训练方法、装置、介质及电子设备 |
CN111027266A (zh) * | 2019-12-06 | 2020-04-17 | 思尔芯(上海)信息科技有限公司 | 一种多个fpga的设计分割的方法、系统、存储介质及终端 |
CN110941934A (zh) * | 2019-12-06 | 2020-03-31 | 思尔芯(上海)信息科技有限公司 | 一种fpga原型验证开发板分割仿真系统、方法、介质及终端 |
CN111860495A (zh) * | 2020-06-19 | 2020-10-30 | 上海交通大学 | 一种层级化网络结构搜索方法、设备及可读存储介质 |
CN112183007A (zh) * | 2020-09-28 | 2021-01-05 | 上海国微思尔芯技术股份有限公司 | 一种多个fpga的设计分割方法 |
CN112329368A (zh) * | 2020-10-30 | 2021-02-05 | 盛科网络(苏州)有限公司 | 自动调整分割方案的方法、设备和存储介质 |
CN112183002A (zh) * | 2020-12-02 | 2021-01-05 | 上海国微思尔芯技术股份有限公司 | 一种基于fpga逻辑的软件分割方法 |
CN112257369A (zh) * | 2020-12-21 | 2021-01-22 | 上海国微思尔芯技术股份有限公司 | 一种逻辑设计分割方法及系统 |
CN112861468A (zh) * | 2021-02-08 | 2021-05-28 | 山东云海国创云计算装备产业创新中心有限公司 | 一种软硬件协同仿真验证的方法、装置和介质 |
Non-Patent Citations (2)
Title |
---|
W.K. FUCHS 等: "Optimal interconnect diagnosis of wiring networks", 《IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS》 * |
肖春华 等: "一种面向高性能计算的多FPGA互连结构及划分方法", 《计算机应用研究》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338540A (zh) * | 2022-03-17 | 2022-04-12 | 上海国微思尔芯技术股份有限公司 | 信号分流方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113255265B (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5930499A (en) | Method for mixed placement of structured and non-structured circuit elements | |
JP3513077B2 (ja) | 可解性問題を再構成可能なハードウエアを用いて解く仮想論理システム | |
US20040068331A1 (en) | System and method for reducing wire delay or congestion during synthesis of hardware solvers | |
EP1462964A2 (en) | Method for stimulating functional logic circuit with logical stimulus | |
Russo et al. | A heuristic procedure for the partitioning and mapping of computer logic graphs | |
CN113255264B (zh) | 增量分割处理方法、装置、计算机设备和存储介质 | |
CN114781316B (zh) | 组网布局方法、装置、设备和存储介质 | |
CN112183002A (zh) | 一种基于fpga逻辑的软件分割方法 | |
US10628625B2 (en) | Incrementally distributing logical wires onto physical sockets by reducing critical path delay | |
Chen et al. | Simultaneous timing driven clustering and placement for FPGAs | |
CN113255265B (zh) | 分割及验证方法、装置、电子设备、存储介质 | |
US9946551B2 (en) | System and method that generate reconfiguration information | |
CN114386349A (zh) | 系统级数字电路的布线方法及装置、设备、存储介质 | |
Khalid | Routing architecture and layout synthesis for multi-FPGA systems | |
Baskaya et al. | Placement for large-scale floating-gate field-programable analog arrays | |
US20030208737A1 (en) | Method and system for placing logic nodes based on an estimated wiring congestion | |
CN114330173B (zh) | 边界节点连接关系获取方法、装置、设备和存储介质 | |
CN107122242B (zh) | 一种有效提升分布式运算性能的大数据均衡切片方法 | |
CN113255262B (zh) | 对象分配方法、装置、计算机设备和存储介质 | |
KR100639985B1 (ko) | 온칩 네트워크 토폴로지 생성 장치 및 그 방법 | |
Takahashi et al. | Min-cut placement with global objective functions for large scale sea-of-gates arrays | |
Huang et al. | Hierarchical and dependency-aware task mapping for NoC-based systems | |
Farooq et al. | Inter-FPGA interconnect topologies exploration for multi-FPGA systems | |
Zhu et al. | Interconnection optimization in data path allocation using minimal cost maximal flow algorithm | |
CN113312865B (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 | ||
CP01 | Change in the name or title of a patent holder |
Address after: Room 27, 6th floor, No. 29 and 30, Lane 1775, Qiushan Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai, 201306 Patentee after: Shanghai Sierxin Technology Co.,Ltd. Address before: Room 27, 6th floor, No. 29 and 30, Lane 1775, Qiushan Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai, 201306 Patentee before: Shanghai Guowei silcore Technology Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |