CN116384296A - 一种基于rlm流图的硬件原型仿真自动分割方法 - Google Patents
一种基于rlm流图的硬件原型仿真自动分割方法 Download PDFInfo
- Publication number
- CN116384296A CN116384296A CN202310664988.0A CN202310664988A CN116384296A CN 116384296 A CN116384296 A CN 116384296A CN 202310664988 A CN202310664988 A CN 202310664988A CN 116384296 A CN116384296 A CN 116384296A
- Authority
- CN
- China
- Prior art keywords
- rlm
- island
- flow
- signal
- graph
- 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
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000011218 segmentation Effects 0.000 title claims abstract description 21
- 238000004088 simulation Methods 0.000 title claims abstract description 17
- 238000010586 diagram Methods 0.000 claims abstract description 25
- 238000005192 partition Methods 0.000 claims abstract description 25
- 230000004931 aggregating effect Effects 0.000 claims abstract description 7
- 239000013598 vector Substances 0.000 claims description 8
- 230000008878 coupling Effects 0.000 claims description 6
- 238000010168 coupling process Methods 0.000 claims description 6
- 238000005859 coupling reaction Methods 0.000 claims description 6
- 230000002776 aggregation Effects 0.000 claims description 4
- 238000004220 aggregation Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 230000008520 organization Effects 0.000 abstract description 5
- 101100416213 Arabidopsis thaliana RLM3 gene Proteins 0.000 description 2
- 101100416212 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RLM1 gene Proteins 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
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/327—Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
- G06F30/343—Logical level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/02—System on chip [SoC] design
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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于RLM流图的硬件原型仿真自动分割方法,包括将ASIC设计分割为多个RLM;获取每个RLM的信号流向,根据RLM之间的信号流向,构建由多个RLM组成的数据流图,得到RLM流图;对RLM流图的逻辑资源进行预估;将RLM流图聚合成孤岛流图,并将孤岛流图分割为孤岛子图,在孤岛子图内部进行RLM分割,得到分割结果;根据分割结果获取每个分割块的逻辑资源,判断每个分割块的逻辑资源是否满足约束条件,若满足,则获取可行的分割分案。以RLM流图作为FPGA原型仿真的ASIC逻辑组织形式,能够代替手动划分自动获得一个可用的分割方案。
Description
技术领域
本发明属于集成电路微电子技术领域,特别是涉及一种基于RLM流图的硬件原型仿真自动分割方法。
背景技术
随着ASIC芯片设计的规模持续扩大,数亿乃至数百亿门级电路已经极为常见,正确的验证超 大规模ASIC芯片的逻辑功能正确性面临巨大挑战。传统ASIC芯片的逻辑功能验证主要通过仿真软件进行仿真,软件仿真虽然能够去验证ASIC设计的逻辑功能正确性,但随着设计规模的增大,耗费的时间是数月乃至数年,严重影响了芯片上市(Time-to-Market)的时间。为了提高仿真的速度,业界开始逐步采用FPGA作为原型,将ASIC芯片的设计分割到多块FPGA中实现。然而,由于ASIC设计与FPGA之间存较大的差异,IC工程师手动将ASIC手动分割到多片FPGA,逻辑资源的分割、多片FPGA之间互联、I/O引脚分配和高速接口都对应用FPGA原型验证提出了苛刻的要求,需要耗费大量的时间和精力去寻找一个可用的分割方案。因此,需要一种自动分割ASIC设计到多片FPGA的流程和方法。
发明内容
针对以上技术问题,本发明提供一种基于RLM流图的硬件原型仿真自动分割方法。
本发明解决其技术问题采用的技术方案是:
一种基于RLM流图的硬件原型仿真自动分割方法,方法包括以下步骤:
S100:将ASIC设计分割为多个RLM;
S200:获取每个RLM的信号流向,根据RLM之间的信号流向,构建由多个RLM组成的数据流图,得到RLM流图;
S300:对RLM流图的逻辑资源进行预估;
S400:将RLM流图聚合成孤岛流图,并将孤岛流图分割为孤岛子图,在孤岛子图内部进行RLM分割,得到分割结果;
S500:根据分割结果获取每个分割块的逻辑资源,判断每个分割块的逻辑资源是否满足约束条件,若满足,则获取可行的分割分案。
优选地,S200包括:
每个RLM信号包括信号来源和信号目的地,信号的来源和目的地构成一条信号的流向边,对应的构建出一条有向边,将有向边不断加入到流图模型中,构成了表示信号流动的RLM流图。
优选地,S200中RLM流图中,RLM表示图的节点,信号流向表示图的边,流动的信号类型包括松耦合信号和紧耦合信号。
优选地,S400包括:
从RLM流图中使用图的聚合方法将多个紧耦合信号相连的RLM聚合在一起形成孤岛流图,每个孤岛由多个RLM组成;
将孤岛流图划分成多个孤岛子图,在划分过程中,不可分的基本元素是孤岛,划分后的各个孤岛子图之间是松耦合连接;
将孤岛子图内部RLM分割到对应的分割块SLICE上,得到分割结果。
优选地,S500中判断每个分割块的逻辑资源是否满足约束条件,包括:
每个分割块中RLM的资源向量和不大于指定阈值,记/>为对应分割块中一个RLM, />表示/>的资源向量,/>表示LUT的数量,/>表示FF的数量,/>表示RAM的数量,/>表示LUT的指定阈值、/>表示FF的指定阈值,表示RAM的指定阈值,有如下约束关系:
优选地,S500还包括:
若不满足,则返回S400,直至获取可行的分割分案。
上述一种基于RLM流图的硬件原型仿真自动分割方法,以RLM流图作为FPGA原型仿真的ASIC逻辑组织形式,能够代替手动划分自动获得一个可用的分割方案。
附图说明
图1为本发明一实施例中一种基于RLM流图的硬件原型仿真自动分割方法的流程图;
图2为本发明另一实施例中一种基于RLM流图的硬件原型仿真自动分割方法的流程图;
图3为本发明一实施例中的RLM流图;
图4为本发明一实施例中的孤岛示意图;
图5为本发明一实施例中的孤岛流图;
图6为本发明一实施例中的孤岛子图。
具体实施方式
为了使本技术领域的人员更好地理解本发明的技术方案,下面结合附图对本发明作进一步的详细说明。
在一个实施例中,如图1和图2所示,一种基于RLM流图的硬件原型仿真自动分割方法,方法包括以下步骤:
S100:将ASIC设计分割为多个RLM。
具体地,RLM(Random Logic Macros),是大型ASIC设计的一种逻辑分块组织单元。
S200:获取每个RLM的信号流向,根据RLM之间的信号流向,构建由多个RLM组成的数据流图,得到RLM流图。
在一个实施例中,S200包括:
每个RLM信号包括信号来源和信号目的地,信号的来源和目的地构成一条信号的流向边,对应的构建出一条有向边,将有向边不断加入到流图模型中,构成了表示信号流动的RLM流图。
具体地,流图的构建步骤主要从电路设计端口的连接关系获得,输出端口表示信号流出,输入端口表示信号流入。信号的流入与流出构成了对应的连接关系。每个RLM信号的描述包括信号来源和信号目的地。信号的来源和目的地构成一条信号的流向边。对应的构建出一条有向边。将这些有向边不断加入到流图模型中,构成了表示信号流动的RLM流图。
S300:对RLM流图的逻辑资源进行预估。
具体地,逻辑资源包括但不限于LUT、FF和RAM等。每个RLM流图对应着Verilog设计,每个设计进行逻辑综合之后会包含特定的逻辑资源。如每个RLM中会包含不定数量的LUT、FF和RAM等。逻辑资源预估需要根据经验和FPGA逻辑综合工具。
在一个实施例中,S200中RLM流图中,RLM表示图的节点,信号流向表示图的边,流动的信号类型包括松耦合信号和紧耦合信号。
具体地,从RLM流图构建对应的图模型,RLM表示图的节点,信号流向表示图的边,流动的型信号有松耦合信号和紧耦合信号两种。图的点权表示RLM中的逻辑资源,图的边权表示信号的带宽。如图3所示为一个RLM流图,该流图包含5个RLM节点,RLM1流向RLM2和RLM2流向RLM1的实线箭头为紧耦合信号,RLM3流向RLM5和RLM5流向RLM3的虚线箭头为松耦合信号。逻辑资源用向量T表示,例如向量T[LUT,FF,RAM]表示RLM包含LUT、FF和RAM三种资源。
S400:将流图聚合成孤岛流图,并将孤岛流图分割为孤岛子图,在孤岛子图内部进行RLM分割,得到分割结果。
在一个实施例中,S400包括:
从RLM流图中使用图的聚合方法将多个紧耦合信号相连的RLM聚合在一起形成孤岛流图,每个孤岛由多个RLM组成;
将孤岛流图划分成多个孤岛子图,在划分过程中,不可分的基本元素是孤岛,划分后的各个孤岛子图之间是松耦合连接;
将孤岛子图内部RLM分割到对应的分割块SLICE上,得到分割结果。
具体地,从RLM流图中使用图的聚合方法将多个紧耦合信号相连的RLM聚合在一起形成孤岛。每个孤岛由多个RLM组成。如图4为孤岛,其中IS1表示一个孤岛。
将孤岛流图划分成多个孤岛子图,这个阶段划分中,不可分的基本元素是孤岛。划分后的各个孤岛子图之间是松耦合连接。如图5为孤岛流图,图6为孤岛子图,其中,SubIS1表示由IS组成的集合。孤岛子图的内部RLM的划分,孤岛子图内部RLM划分到对应的SLICE,SLICE由多个RLM组成,SLICE是IS1、IS2、IS3或IS4里面的元素,是一种逻辑组织形式,SLICE对应为逻辑上的FPGA。
S500:根据分割结果获取每个分割块的逻辑资源,判断每个分割块的逻辑资源是否满足约束条件,若满足,则获取可行的分割分案。
在一个实施例中,S500中判断每个分割块的逻辑资源是否满足约束条件,包括:
每个分割块中RLM的资源向量和不大于指定阈值,记/>为对应分割块中一个RLM, />表示/>的资源向量,/>表示LUT的数量,/>表示FF的数量,/>表示RAM的数量,/>表示LUT的指定阈值、/>表示FF的指定阈值,表示RAM的指定阈值,有如下约束关系:
在一个实施例中,S500还包括:
若不满足,则返回S400,直至获取可行的分割分案。
上述一种基于RLM流图的硬件原型仿真自动分割方法,以RLM流图作为FPGA原型仿真的ASIC逻辑组织形式,能够代替手动划分自动获得一个可用的分割方案。
以上对本发明所提供的一种基于RLM流图的硬件原型仿真自动分割方法进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (6)
1.一种基于RLM流图的硬件原型仿真自动分割方法,其特征在于,所述方法包括以下步骤:
S100:将ASIC设计分割为多个RLM;
S200:获取每个RLM的信号流向,根据RLM之间的信号流向,构建由多个RLM组成的数据流图,得到RLM流图;
S300:对所述RLM流图的逻辑资源进行预估;
S400:将所述RLM流图聚合成孤岛流图,并将所述孤岛流图分割为孤岛子图,在所述孤岛子图内部进行RLM分割,得到分割结果;
S500:根据所述分割结果获取每个分割块的逻辑资源,判断所述每个分割块的逻辑资源是否满足约束条件,若满足,则获取可行的分割分案。
2.根据权利要求1所述的方法,其特征在于,S200包括:
每个RLM信号包括信号来源和信号目的地,信号的来源和目的地构成一条信号的流向边,对应的构建出一条有向边,将所述有向边不断加入到流图模型中,构成了表示信号流动的RLM流图。
3.根据权利要求2所述的方法,其特征在于,S200中所述RLM流图中,RLM表示图的节点,信号流向表示图的边,流动的信号类型包括松耦合信号和紧耦合信号。
4.根据权利要求3所述的方法,其特征在于,S400包括:
从所述RLM流图中使用图的聚合方法将多个紧耦合信号相连的RLM聚合在一起形成孤岛流图,每个孤岛由多个RLM组成;
将所述孤岛流图划分成多个孤岛子图,在划分过程中,不可分的基本元素是孤岛,划分后的各个孤岛子图之间是松耦合连接;
将所述孤岛子图内部RLM分割到对应的分割块SLICE上,得到分割结果。
6.根据权利要求5所述的方法,其特征在于,S500还包括:
若不满足,则返回S400,直至获取可行的分割分案。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310664988.0A CN116384296B (zh) | 2023-06-07 | 2023-06-07 | 一种基于rlm流图的硬件原型仿真自动分割方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310664988.0A CN116384296B (zh) | 2023-06-07 | 2023-06-07 | 一种基于rlm流图的硬件原型仿真自动分割方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116384296A true CN116384296A (zh) | 2023-07-04 |
CN116384296B CN116384296B (zh) | 2023-09-22 |
Family
ID=86979174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310664988.0A Active CN116384296B (zh) | 2023-06-07 | 2023-06-07 | 一种基于rlm流图的硬件原型仿真自动分割方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116384296B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6009256A (en) * | 1997-05-02 | 1999-12-28 | Axis Systems, Inc. | Simulation/emulation system and method |
US6502221B1 (en) * | 1998-07-14 | 2002-12-31 | Nvidia Corporation | Prototype development system |
US20040060023A1 (en) * | 2002-09-25 | 2004-03-25 | International Business Machines Corporation | Voltage island chip implementation |
US20050278676A1 (en) * | 2004-05-25 | 2005-12-15 | Dhanwada Nagashyamala R | Method of physical planning voltage islands for ASICs and system-on-chip designs |
CN112183007A (zh) * | 2020-09-28 | 2021-01-05 | 上海国微思尔芯技术股份有限公司 | 一种多个fpga的设计分割方法 |
CN114117981A (zh) * | 2022-01-26 | 2022-03-01 | 湖南泛联新安信息科技有限公司 | 一种基于先验信息的rtl级逻辑划分方法 |
CN114330174A (zh) * | 2021-11-18 | 2022-04-12 | 国微集团(深圳)有限公司 | 基于多fpga系统的并行rtl综合方法、存储介质 |
CN114595651A (zh) * | 2022-05-10 | 2022-06-07 | 湖南泛联新安信息科技有限公司 | 一种用于多fpga仿真验证平台的电路划分方法 |
CN114595652A (zh) * | 2022-05-10 | 2022-06-07 | 湖南泛联新安信息科技有限公司 | 一种用于硬件仿真平台的主频评估方法 |
-
2023
- 2023-06-07 CN CN202310664988.0A patent/CN116384296B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6009256A (en) * | 1997-05-02 | 1999-12-28 | Axis Systems, Inc. | Simulation/emulation system and method |
US6502221B1 (en) * | 1998-07-14 | 2002-12-31 | Nvidia Corporation | Prototype development system |
US20040060023A1 (en) * | 2002-09-25 | 2004-03-25 | International Business Machines Corporation | Voltage island chip implementation |
US20050278676A1 (en) * | 2004-05-25 | 2005-12-15 | Dhanwada Nagashyamala R | Method of physical planning voltage islands for ASICs and system-on-chip designs |
CN112183007A (zh) * | 2020-09-28 | 2021-01-05 | 上海国微思尔芯技术股份有限公司 | 一种多个fpga的设计分割方法 |
CN114330174A (zh) * | 2021-11-18 | 2022-04-12 | 国微集团(深圳)有限公司 | 基于多fpga系统的并行rtl综合方法、存储介质 |
CN114117981A (zh) * | 2022-01-26 | 2022-03-01 | 湖南泛联新安信息科技有限公司 | 一种基于先验信息的rtl级逻辑划分方法 |
CN114595651A (zh) * | 2022-05-10 | 2022-06-07 | 湖南泛联新安信息科技有限公司 | 一种用于多fpga仿真验证平台的电路划分方法 |
CN114595652A (zh) * | 2022-05-10 | 2022-06-07 | 湖南泛联新安信息科技有限公司 | 一种用于硬件仿真平台的主频评估方法 |
Non-Patent Citations (2)
Title |
---|
ES ALBUQUERQUE: "An FPGA-based accelerator for multiple real-time template matching", 《ACM》, pages 1 - 6 * |
蒋健, 徐平: "可编程系统芯片的设计和验证", 单片机与嵌入式系统应用, no. 10, pages 27 - 30 * |
Also Published As
Publication number | Publication date |
---|---|
CN116384296B (zh) | 2023-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9652576B2 (en) | Detailed placement with search and repair | |
US10776547B1 (en) | Infinite-depth path-based analysis of operational timing for circuit design | |
CN114117981B (zh) | 一种基于先验信息的rtl级逻辑划分方法 | |
US6799308B2 (en) | Timing analysis of latch-controlled digital circuits with detailed clock skew analysis | |
US8789004B2 (en) | Automatic flow of megacell generation | |
CN114742001B (zh) | 一种基于多fpga的系统静态时序分析方法 | |
US7739098B2 (en) | System and method for providing distributed static timing analysis with merged results | |
CN114818553B (zh) | 一种芯片集成设计方法 | |
CN116911227B (zh) | 一种基于硬件的逻辑映射方法、装置、设备及存储介质 | |
US7908575B2 (en) | Enhanced verification through binary decision diagram-based target decomposition using state analysis extraction | |
CN114595651B (zh) | 一种用于多fpga仿真验证平台的电路划分方法 | |
CN111046624A (zh) | 芯片模块接口时钟结构的构建方法、装置、设备及介质 | |
CN112347722A (zh) | 高效评估芯片Feed-through流水级数的方法及装置 | |
US7350169B2 (en) | Method and system for enhanced verification through structural target decomposition | |
CN115422876A (zh) | 高层次综合的流程布局方法 | |
US10628543B1 (en) | Systems and methods for estimating a power consumption of a register-transfer level circuit design | |
CN116384296B (zh) | 一种基于rlm流图的硬件原型仿真自动分割方法 | |
US20040216069A1 (en) | Method of designing low-power semiconductor integrated circuit | |
CN113962177A (zh) | 布线拥塞预估方法及布线拥塞预估系统 | |
US7191417B1 (en) | Method and apparatus for optimization of digital integrated circuits using detection of bottlenecks | |
US20170024502A1 (en) | Simulation of Hierarchical Circuit Element Arrays | |
US20060048085A1 (en) | Method and system for performing timing analysis on a circuit | |
CN116578339A (zh) | 平衡时序违例的寄存器合并方法、装置、终端及存储介质 | |
CN116502578A (zh) | 网表化简时序模型的构建方法及静态时序分析方法 | |
US8904318B1 (en) | Method and apparatus for performing optimization using don't care states |
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 |