CN116720474A - 集成电路设计方法及集成电路仿真系统 - Google Patents
集成电路设计方法及集成电路仿真系统 Download PDFInfo
- Publication number
- CN116720474A CN116720474A CN202310685160.3A CN202310685160A CN116720474A CN 116720474 A CN116720474 A CN 116720474A CN 202310685160 A CN202310685160 A CN 202310685160A CN 116720474 A CN116720474 A CN 116720474A
- Authority
- CN
- China
- Prior art keywords
- architecture
- integrity
- integrated circuit
- simulation
- component
- 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.)
- Pending
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 216
- 238000000034 method Methods 0.000 title claims abstract description 119
- 238000013461 design Methods 0.000 title claims abstract description 108
- 230000008569 process Effects 0.000 claims abstract description 72
- 230000000007 visual effect Effects 0.000 claims description 34
- 238000010586 diagram Methods 0.000 claims description 24
- 238000013507 mapping Methods 0.000 claims description 12
- 238000004458 analytical method Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000012795 verification Methods 0.000 abstract description 9
- 238000005457 optimization Methods 0.000 description 26
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 238000003860 storage Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000013467 fragmentation Methods 0.000 description 6
- 238000006062 fragmentation reaction Methods 0.000 description 6
- 230000010354 integration Effects 0.000 description 5
- 239000000758 substrate Substances 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000011960 computer-aided design Methods 0.000 description 2
- 239000007771 core particle Substances 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000009417 prefabrication Methods 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- 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)
- Computer Networks & Wireless Communication (AREA)
- Architecture (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提供一种集成电路设计方法及集成电路仿真系统,涉及电路设计技术领域,其中集成电路设计方法,包括:根据获取的应用信息,基于选取的各元器件生成集成电路的初始架构,并对初始架构进行系统级架构性能仿真,得到架构性能参数;在架构性能参数满足设定性能条件的情况下,根据各元器件的引脚信息,确定各元器件之间的引脚互连信息;基于引脚互连信息和设定工艺约束,对初始架构中各元器件进行引脚连线和布局,得到集成电路的目标架构;对目标架构进行完整性仿真,得到完整性参数,并在完整性参数满足设定完整性条件的情况下,输出目标架构,目标架构用于设计集成电路。可以简化架构仿真流程,提高集成电路的仿真验证效率,缩短硬件设计周期。
Description
技术领域
本发明涉及电路设计技术领域和体系结构仿真领域,尤其涉及一种集成电路设计方法及集成电路仿真系统。
背景技术
随着科学技术的不断发展,晶上系统(System on Wafer,SoW)运用而生。晶上系统属于一种通过系统架构革新和工艺革新带来联乘增益的新型集成电路设计范式。
由于硬件迭代设计周期长,在芯片设计初期通常要对设计方案进行仿真验证。目前已有多种开源仿真器,这些仿真器可单独使用,也可灵活组合搭建多种体系结构。仿真结果能够初步评估体系结构功能正确性、执行时间、吞吐量等体系结构性能。但体系结构级别的仿真结果与真实硬件的性能还有差距,无法对芯片的电源和信号等性能进行仿真。因此,亟需一种有效的方案以解决上述问题。
发明内容
针对现有技术存在的问题,本发明实施例提供一种集成电路设计方法及集成电路仿真系统。
本发明提供一种集成电路设计方法,包括:
根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,并对所述初始架构进行系统级架构性能仿真,得到架构性能参数;
在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;
基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;
对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。
根据本发明提供的一种集成电路设计方法,所述在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息,包括:
在所述架构性能参数满足设定性能条件的情况下,从获取的元器件规范中,读取各所述元器件的引脚信息;
根据所述引脚信息,确定引脚端口映射;
根据所述引脚端口映射和所述初始架构中各所述元器件的元器件互连关系,确定各所述元器件之间的引脚互连信息。
根据本发明提供的一种集成电路设计方法,所述基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构,包括:
根据所述引脚互连信息,对所述初始架构中各所述元器件进行引脚连线,得到所述集成电路的备用架构;
根据所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构。
根据本发明提供的一种集成电路设计方法,所述根据所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构,包括:
通过显示设备显示所述备用架构,以接收用户对所述备用架构的调整指令;
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构;或者
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局并调整各所述元器件之间的引脚连线,得到所述集成电路的目标架构。
根据本发明提供的一种集成电路设计方法,所述根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,包括:
对获取的应用信息进行解析;
根据解析结果和设定性能约束,确定仿真参数,所述仿真参数包括设计所述集成电路的元器件种类、元器件数量和元器件互连信息;
根据所述元器件种类和所述元器件数量,选取至少一个元器件;
根据所述元器件互连信息,对各所述元器件进行元器件连线,生成集成电路的初始架构。
根据本发明提供的一种集成电路设计方法,所述对所述初始架构进行系统级架构性能仿真,得到架构性能参数,包括:
根据所述仿真参数,对所述初始架构进行系统级架构性能仿真,得到架构性能参数;
所述对所述初始架构进行系统级架构性能仿真,得到架构性能参数之后,还包括:
在所述架构性能参数不满足所述设定性能条件的情况下,根据所述应用信息和所述架构性能参数,执行所述选取至少一个元器件,基于各所述元器件生成集成电路的初始架构的步骤;
所述对所述目标架构进行完整性仿真,得到完整性参数之后,还包括:
在所述完整性参数不满足设定完整性条件的情况下,根据所述完整性参数,重新构建所述集成电路的目标架构。
根据本发明提供的一种集成电路设计方法,所述完整性参数包括信号完整性参数和电源完整性参数;
相应地,所述在所述完整性参数不满足设定完整性条件的情况下,根据所述完整性参数,重新构建所述集成电路的目标架构,包括:
在所述电源完整性参数不满足设定完整性条件的情况下,根据所述应用信息和所述电源完整性参数,执行所述选取至少一个元器件,基于各所述元器件生成集成电路的初始架构的步骤;
在所述电源完整性参数满足所述设定完整性条件,且所述信号完整性参数不满足所述设定完整性条件的情况下,基于所述信号完整性参数、所述引脚互连信息和设定工艺约束,执行所述对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构的步骤。
本发明还提供一种集成电路仿真系统,包括:
架构设计生成模块,用于根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构;
系统级仿真模块,用于对所述初始架构进行系统级架构性能仿真,得到架构性能参数;
可视化布局模块,用于在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;
完整性仿真模块,用于对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。
根据本发明提供的一种集成电路仿真系统,所述系统级仿真模块,还用于:
在所述架构性能参数满足设定性能条件的情况下,生成所述初始架构的类原理图文件;
将所述类原理图文件中的元器件种类、元器件数量和元器件互连信息提取至第一数据交换文件;
将所述第一数据交换文件传入所述可视化布局模块;
所述可视化布局模块,还用于:
对接收的所述第一数据交换文件进行解析,得到所述初始架构;
通过显示设备显示所述初始架构,并接收用户基于所述初始架构输入的设定工艺约束。
根据本发明提供的一种集成电路仿真系统,所述可视化布局模块,还用于:
根据所述引脚互连信息,对所述初始架构中各所述元器件进行引脚连线,得到所述集成电路的备用架构;
通过显示设备显示所述初始架构,并在检测到用户触发针对所述初始架构中的指定元器件的放大操作时,通过所述显示设备显示所述备用架构中的所述指定元器件;
接收所述用户对所述备用架构的调整指令;
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构;或者
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局并调整各所述元器件之间的引脚连线,得到所述集成电路的目标架构。
根据本发明提供的一种集成电路仿真系统,所述可视化布局模块,还用于:
根据所述目标架构,生成第二数据交换文件;
将所述第二数据交换文件发送至所述完整性仿真模块;
所述完整性仿真模块,还用于:
对所述第二数据交换文件进行格式转换,得到设定仿真软件指定的目标仿真文件;
调用所述设定仿真软件,基于所述目标仿真文件对所述目标架构进行完整性仿真,得到完整性参数,所述完整性参数包括信号完整性参数和电源完整性参数;
所述完整性仿真模块,还用于:
在所述电源完整性参数不满足设定完整性条件的情况下,将所述电源完整性参数发送至所述架构设计生成模块;
在所述电源完整性参数满足所述设定完整性条件,且所述信号完整性参数不满足所述设定完整性条件的情况下,将所述电源完整性参数发送至所述可视化布局模块。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述集成电路设计方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述集成电路设计方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述集成电路设计方法。
本发明提供的集成电路设计方法及集成电路仿真系统,根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,并对所述初始架构进行系统级架构性能仿真,得到架构性能参数;在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。通过整合集成电路的架构设计技术与仿真工具,由粗粒度集成电路的架构到细粒度的引脚互连自动生成,解决设计工具使用门槛高、工具碎片化的问题;还可以简化集成电路的架构仿真流程,提高集成电路的架构设计仿真验证效率,缩短硬件设计周期,提高架构优化迭代效率。同时为集成电路的设计迭代寻优提供多层次分析数据。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的集成电路设计方法的流程示意图之一;
图2是本发明提供的集成电路设计方法的流程示意图之二;
图3是本发明提供的集成电路仿真系统的结构示意图;
图4是本发明提供的集成电路设计系统的处理流程示意图;
图5是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于更加清晰地理解本发明各实施例,首先对一些相关的背景知识进行如下介绍。
随着科学技术的不断发展,晶上系统(System on Wafer,SoW)运用而生。晶上系统相比于传统的基于印刷电路板(Printed Circuit Board,PCB)设计的系统或者基于先进封装构建的微系统,具有集成规模极大、互连极其复杂、超大密度异质异构集成、超高密度供电散热等特点,属于一种通过系统架构革新和工艺革新带来联乘增益的新型集成电路设计范式。晶上系统直接用完整的晶圆基板来做系统内部各模块的互连底座,用一个密布各种芯粒的晶圆来实现一个完整的系统。这种能减少层级连接之间的性能损耗。
由于硬件迭代设计周期长,在芯片设计初期通常要对设计方案进行仿真验证。目前已有多种开源仿真器,如系统级多核中央处理器(Central Processing Unit,CPU)仿真器Gem5、图像处理器(Graphics Processing Unit,GPU)仿真器GPGPU-sim、内存仿真器DRAMsim和结构仿真工具包(Structural Simulation Toolkit,SST)等。这些仿真器可单独使用,也可灵活组合搭建多种体系结构。仿真结果能够初步评估体系结构功能正确性、执行时间、吞吐量等体系结构性能。但体系结构级别的仿真结果与真实硬件的性能还有差距,无法对芯片的电源、信号等性能进行仿真。同时开源仿真平台大多以配置脚本驱动仿真,缺少可视化界面展示仿真架构。
为了更精确地仿真晶上体系结构的性能,通常需要借助如Cadence和Synopsys等成熟的商用电子设计自动化(Electronic Design Automation,EDA),对体系结构的电源、信号完整性进行验证。这些商用EDA操作较为复杂,想要熟练使用需要投入学习成本。并且从系统级仿真到EDA验证电源、信号完整性的过程中,需要人工修改架构设计方案,以满足EDA工具的输入规范。晶圆级系统(晶上系统)架构集成规模庞大,芯片引脚以及引脚之间的连线复杂,方案修改需要投入时间成本。
晶上系统的架构设计仿真流程需要使用多种工具,工具碎片化导致设计人员需要频繁切换工作环境、设计方案修改,使硬件开发人员无法专注于架构设计。在线计算机辅助设计(Computer Aided Design,CAD)工具Chipuller从一定程度上解决了工具碎片化问题,提供芯粒(Chiplet)芯片设计一站式服务,提高了芯片设计效率。但Chipuller是基于硅基板进行芯片设计,并且缺少仿真验证环节,芯片构建时需要手动创建芯片引脚与硅基板之间的所有连线,不适合超高集成密度的晶圆级芯片设计场景。
晶上系统的架构设计时需满足性能约束和工艺约束条件,折中性能与芯片面积。单个仿真器无法同时满足晶上系统架构设计的仿真需求。针对晶上系统超大集成规模仿真场景,多仿真器协同仿真时,面临跨仿真器输入转换繁琐的问题。
因此,本发明提供了一种集成电路设计方法及集成电路仿真系统,通过根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,并对所述初始架构进行系统级架构性能仿真,得到架构性能参数;在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。通过整合集成电路的架构设计技术与仿真工具,由粗粒度集成电路的架构到细粒度的引脚互连自动生成,解决设计工具使用门槛高、工具碎片化的问题;还可以简化集成电路的架构仿真流程,提高集成电路的架构设计仿真验证效率,缩短硬件设计周期,提高架构优化迭代效率。同时为集成电路的设计迭代寻优提供多层次分析数据。
下面结合图1-图4描述本发明的集成电路设计方法及集成电路仿真系统。
图1是本发明提供的集成电路设计方法的流程示意图之一,参见图1所示,包括步骤101-步骤104,其中:
步骤101:根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,并对所述初始架构进行系统级架构性能仿真,得到架构性能参数。
首先需要说明的是,本发明的执行主体可以是设计集成电路的任何电子设备,例如可以为台式电脑、手提电脑等任何一种。
具体地,应用信息可以是应用程序源码或应用程序特征。集成电路可以是任意一种电路,优选地,集成电路为集成度较高的集成电路,如晶上系统。元器件,也即预制件。初始架构是指多个元器件进行元器件维度的连接后得到的集成电路,例如半导体A与电容B相连,不涉及引脚维度的连接。系统级架构性能,也即体系结构性能,是指在系统级层面,初始架构的性能,包括初始架构的运行时间、功耗、吞吐量、内存和带宽等中的至少一种,架构性能参数是指仿真得到的系统级架构性能对应的参数。
实际应用中,用户上传或输入应用程序源码或应用程序特征,相应地,执行主体获取到应用信息;或者用户触发集成电路设计指令或应用信息获取指令,相应地,执行主体从该指令对应的存储区获取应用信息。
进一步地,调用架构设计算法应用信息,自动构建适配应用的架构,即集成电路的初始架构:调用架构设计算法根据应用信息,从预设元器件库中选取所需的元器件,对各元器件进行连接生成集成电路的初始架构。之后,调用系统级仿真器对初始架构进行系统级架构性能仿真,评价该初始架构的性能,得到架构性能参数。
步骤102:在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息。
具体地,架构性能包括运行时间、功耗、吞吐量、内存和带宽等性能中的至少一个。设定性能条件是指对运行时间、功耗、吞吐量、内存和带宽等性能设置的条件,如运行时长不超过设定时长,功耗低于设定功耗等。引脚信息包含引脚数量和引脚功能等。引脚互连信息是指引脚之间的连接关系。
实际应用中,在获得了架构性能参数的基础上,判断架构性能参数是否满足设定性能条件。如果不满足,则说明初始架构不合格,需要重新构建初始架构,即重新选取至少一个元器件,基于各元器件生成集成电路的初始架构,进行迭代优化,直至得到架构性能参数满足设定性能条件的初始架构。如果满足,则说明初始架构合格,可以获取初始架构中各元器件的引脚信息:根据设定的元器件说明手册或硬件规范,从中抽取各元器件的引脚信息。进一步地,根据各元器件的引脚信息和初始架构中各元器件之间的连接关系,确定各元器件之间的引脚互连信息。
步骤103:基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构。
具体地,设定工艺约束也即工艺约束条件,包括集成电路的体积、元器件之间的间隔和排列方式等等,如晶圆面积、单裸晶(die)面积和die间距等。设定工艺约束可以是用户输入的,也可以是用户触发工艺约束获取指令后,执行主体从工艺约束获取指令所指向的存储区或网站等获取得到。目标架构是指多个元器件进行引脚维度的连接和布局优化后得到的集成电路。
实际应用中,在确定了引脚互连信息后,根据引脚互连信息和设定工艺约束,对初始架构中的各元器件进行引脚维度的连线并调整各元器件之间的布局,得到集成电路的目标架构。
步骤104:对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。
具体地,完整性包括电源完整性(Signal Integrity,SI)和/或信号完整性(PowerIntegrity,PI)。完整性仿真包括可以是电源完整性仿真和信号完整性仿真中的至少一种。设定完整性条件,与完整性仿真相对应,是指针对电源完整性和/或信号完整性设定的要求或条件,可以是执行主体自带,也可以由用户进行输入。
实际应用中,调用完整性仿真器,即设定仿真软件,如Cadence3DIC,对目标架构进行完整性仿真,得到完整性参数。进一步地,判断完整性参数是否满足设定完整性条件,若满足,则说明目标架构合格,集成电路设计成功。之后将目标架构输出,使用户根据目标架构制作集成电路。
本发明提供的集成电路设计方法,根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,并对所述初始架构进行系统级架构性能仿真,得到架构性能参数;在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。通过整合集成电路的架构设计技术与仿真工具,由粗粒度集成电路的架构到细粒度的引脚互连自动生成,解决设计工具使用门槛高、工具碎片化的问题;还可以简化集成电路的架构仿真流程,提高集成电路的架构设计仿真验证效率,缩短硬件设计周期,提高架构优化迭代效率。同时为集成电路的设计迭代寻优提供多层次分析数据。
在本发明一个或更多个可选的实施例中,所述在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息,具体实现过程可以如下:
在所述架构性能参数满足设定性能条件的情况下,从获取的元器件规范中,读取各所述元器件的引脚信息;
根据所述引脚信息,确定引脚端口映射;
根据所述引脚端口映射和所述初始架构中各所述元器件的元器件互连关系,确定各所述元器件之间的引脚互连信息。
具体地,元器件规范是指元器件说明手册和/或硬件规范,用于对各元器件进行说明,可以是用户上传,也可以根据用户触发的元器件规范获取指令进行获取。端口映射就是将某元器件的一个端口映射到另一个元器件的一个端口,提供相应的功能或服务。元器件互连关系是指元器件之间的连接关系。
实际应用中,若架构性能参数满足设定性能条件,则根据元器件规范中,读取各元器件的引脚信息,根据引脚信息定义元器件上端口的映射规则和连接规则,即引脚端口映射。进一步地,根据各元器件的元器件互连关系和引脚端口因袭,确定各元器件之间的引脚互连信息。如此,可以提高引脚互连信息的可靠性和准确度,进而提高集成电路设计的准确度。
在本发明一个或更多个可选的实施例中,所述基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构,具体实现过程可以如下:
根据所述引脚互连信息,对所述初始架构中各所述元器件进行引脚连线,得到所述集成电路的备用架构;
根据所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构。
具体地,备用架构是指多个元器件进行引脚维度的连接但未进行布局优化的集成电路。
实际应用中,在确定了引脚互连信息的基础上,根据引脚互连信息,对初始架构中各元器件进行引脚连线,得到集成电路的备用架构,然后根据设定工艺约束,对备用架构中的各元器件的排布进行调整优化,即进行布局,得到集成电路的目标架构。如此,先基于引脚互连信息进行引脚连线,再基于设定工艺约束进行布局,可以提高生成目标架构的效率,并且可以提高目标架构的精确度和美观性。
可选地,在进行布局时,可以由执行主体根据设定工艺约束调用智能优化算法,对备用架构中的各元器件进行布局的自动优化,如此,避免人工布局,提高了布局的效率。
可选地,所述根据所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构,包括:
通过显示设备显示所述备用架构,以接收所述用户对所述备用架构的调整指令;
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构;或者
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局并调整各所述元器件之间的引脚连线,得到所述集成电路的目标架构。
具体地,显示设备可以是显示窗口、显示器、交互界面等等。
实际应用中,通过显示设备显示备用架构,用户可以手动对备用架构中各元器件进行布局,相应地,执行主体接收到调整指令,基于调整指令和设定工艺约束,对各元器件进行布局;或者用户可以手动对备用架构中各元器件进行布局,并对引脚连线进行调整,相应地,相应地,执行主体接收到调整指令,基于调整指令和设定工艺约束,对各元器件进行布局和调整引脚连线。如此,可以使用户可视化地基于个人意愿进行调整,促进了人机交互,也可以提高用户对目标架构的满意度,更加人性化。
此外,还可以向用户分层级展示初始架构和备用架构:例如,通过显示设备显示初始架构,当检测到用户通过鼠标指针移动到初始架构中的某一元器件上,针对该元器件展示备用架构,即显示备用架构中的该元器件;又如,通过显示设备显示初始架构,当检测用户调整显示界面的缩放程度达到设定缩放值时,向用户展示备用架构,即将显示界面放大后展示备用架构。如此,可以丰富展示效率。
可选地,所述根据所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构,包括:通过显示设备显示所述初始架构,以接收所述设定工艺约束。
在本发明一个或更多个可选的实施例中,所述根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,具体实现过程可以如下:
对获取的应用信息进行解析;
根据解析结果和设定性能约束,确定仿真参数,所述仿真参数包括设计所述集成电路的元器件种类、元器件数量和元器件互连信息;
根据所述元器件种类和所述元器件数量,选取至少一个元器件;
根据所述元器件互连信息,对各所述元器件进行元器件连线,生成集成电路的初始架构。
实际应用中,调用架构设计算法对应用信息进行解析,得到解析结构,然后根据解析结果和设定性能约束,确定所要哪些元器件(元器件种类),每种元器件需要多少个(元器件数量),以及各元器件之间需要如何连接(元器件互连信息),即确定仿真参数。
进一步地,根据元器件种类和元器件数量,从预设元器件库中选取所需的元器件,然后按照元器件互连信息,对选取的所有元器件进行连线,从而得到集成电路的初始架构。如此,可以在一定程度上提高初始架构的性能,进而提高设计集成电路的效率。
需要说明的是,在确定了初始架构的基础上,为了提高系统级架构性能仿真的效率,可以基于初始架构的仿真参数对初始架构进行仿真,即所述对所述初始架构进行系统级架构性能仿真,得到架构性能参数,包括:根据所述仿真参数,对所述初始架构进行系统级架构性能仿真,得到架构性能参数。如此,基于仿真参数对初始架构进行系统级架构性能仿真,无需在系统级架构性能仿真时对初始架构进行解析以便于得到仿真参数,可以提高系统级架构性能仿真的效率,进而提高集成电路的设计效率。
在本发明一个或更多个可选的实施例中,所述对所述初始架构进行系统级架构性能仿真,得到架构性能参数之后,还包括:
在所述架构性能参数不满足所述设定性能条件的情况下,根据所述应用信息和所述架构性能参数,执行所述选取至少一个元器件,基于各所述元器件生成集成电路的初始架构的步骤。
实际应用中,在获得了架构性能参数的基础上,判断架构性能参数是否满足设定性能条件。如果不满足,则说明初始架构不合格,需要重新构建初始架构,即重新选取至少一个元器件,基于各元器件生成集成电路的初始架构,进行迭代优化,直至得到架构性能参数满足设定性能条件的初始架构。如此,在形成初始架构时,可以保证初始架构符合设定性能条件,提高初始架构的性能。
在本发明一个或更多个可选的实施例中,所述完整性仿真包括信号完整性仿真和电源完整性仿真;所述完整性参数包括信号完整性参数和电源完整性参数;相应地,所述对所述目标架构进行完整性仿真,得到完整性参数,具体实现过程可以如下:
对所述目标架构分别进行信号完整性仿真和电源完整性仿真,得到所述信号完整性参数和所述电源完整性参数。
具体地,信号完整性是指电路系统中信号的质量。电源完整性是指确认电源来源及目的端的电压及电流是否符合需求。
实际应用中,为提高集成电路的可靠性和合理性,在对目标架构进行完整性仿真时,可以调用信号电源仿真软件,例如Cadence 3DIC,对目标结构的信号完整性和电源完整性进行仿真。
在本发明一个或更多个可选的实施例中,所述对所述目标架构进行完整性仿真,得到完整性参数之后,还包括:
在所述完整性参数不满足设定完整性条件的情况下,根据所述完整性参数,重新构建所述集成电路的目标架构。
实际应用中,在对完整性进行仿真的基础上,若仿真结果不满足设定完整性条件,即完整性参数不满足设定完整性条件,说明目标架构无法达到设计集成电路的要求,需要重新构建符合要求的目标架构,以保证最终得到的目标架构在完整性上是符合设定完整性条件的,提高目标架构的可靠性,进而提高最终设计的集成电路的可用性。
可选地,所述完整性参数包括信号完整性参数和电源完整性参数;相应地,所述在所述完整性参数不满足设定完整性条件的情况下,根据所述完整性参数,重新构建所述集成电路的目标架构,具体实现过程可以如下:
在所述电源完整性参数不满足设定完整性条件的情况下,根据所述应用信息和所述电源完整性参数,执行所述选取至少一个元器件,基于各所述元器件生成集成电路的初始架构的步骤;
在所述电源完整性参数满足所述设定完整性条件,且所述信号完整性参数不满足所述设定完整性条件的情况下,基于所述信号完整性参数、所述引脚互连信息和设定工艺约束,执行所述对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构的步骤。
实际应用中,在对电源完整性和信号完整性进行仿真的基础上,若电源完整性和信号完整性不满足设定完整性条件,则根据性能类型,对应进行设计优化:若电源完整性参数不满足设定完整性条件,则说明目标架构的架构设计不合理,则返回优化晶上架构算法,继续迭代优化,即返回执行选取至少一个元器件,基于各元器件生成集成电路的初始架构的步骤;若信号完整性参数不满足设定完整性条件,说明目标架构的布局设计不合理,则返回工艺约束相关的布局优化,即返回执行对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构的步骤。
如此,通过对电源完整性和信号完整性的判断,根据相应的完整性类型,返回执行不同的步骤,避免针对不同的完整性类型问题,返回同样的步骤,一定程度上,可以减少设计的流程,提高设计效率。
可选地,所述完整性参数包括信号完整性参数和电源完整性参数;相应地,所述在所述完整性参数不满足设定完整性条件的情况下,根据所述完整性参数,重新构建所述集成电路的目标架构,包括:在所述电源完整性参数和/或信号完整性不满足设定完整性条件的情况下,根据所述应用信息执行所述选取至少一个元器件,基于各元器件生成集成电路的初始架构的步骤。
下面结合图2,对本发明提供的集成电路设计方法进行进一步说明。图2是本发明提供的集成电路设计方法的流程示意图之二,包括:
步骤1:输入应用程序源码。
步骤2:调用晶上系统的架构设计优化算法,根据应用程序源码和性能约束,选取元器件库中的元器件,生成晶上系统的初始架构以及仿真参数。
步骤3:使用系统级仿真器评估初始架构的架构性能,即进行系统级架构性能仿真,得到架构性能参数;若架构性能参数满足需求,即设定性能条件,则输出的初始架构的类原理图,否则返回步骤2继续迭代优化。系统级仿真器同时输出描述类原理图的json文件,通过脚本程序自动将元器件种类、元器件数量和元器件互连信息提取到XML中。
步骤4:根据硬件预制件说明手册或硬件规范,即元器件规范,抽取元器件引脚信息,定义端口的映射规则和互连规则,根据映射规则和互连规则自动生成端口映射、晶圆基板上的引脚互连信息并生成备用架构,保存至XML文件中。
步骤5:解析XML获取备用架构的设计信息,通过软件交互界面展示目标架构并接收输入的工艺约束条件(设定工艺约束)。根据设计信息与工艺约束条件,进行可视化架构布局。可手动调整布局、引脚连线,或通过智能优化算法进行布局的自动优化。优化结果保存至XML文件中。
步骤6:将布局优化后的XML文件转化为信号电源仿真软件要求的文件格式,进行信号完整性仿真和电源完整性仿真。
步骤7:若电源完整性参数和信号完整性参数满足设定完整性条件,则输出目标架构的类原理图,完成晶上系统架构仿真流程,并基于类原理图制造集成电路。若电源完整性参数不满足设定完整性条件,则说明目标架构的架构设计不合理,则返回优化晶上架构算法,继续迭代优化,即返回执行选取各元器件生成集成电路的初始架构的步骤;若信号完整性参数不满足设定完整性条件,说明目标架构的布局设计不合理,则返回工艺约束相关的布局优化,即返回执行对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构的步骤。
下面对本发明提供的集成电路仿真系统进行描述,下文描述的集成电路仿真系统与上文描述的集成电路设计方法可相互对应参照。
图3是本发明提供的集成电路仿真系统的结构示意图,如图3所示,该集成电路仿真系统300包括:架构设计生成模块301、系统级仿真模块302、可视化布局模块303和完整性仿真模块304,其中:
架构设计生成模块301,用于根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构;
系统级仿真模块302,用于对所述初始架构进行系统级架构性能仿真,得到架构性能参数;
可视化布局模块303,用于在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;
完整性仿真模块304,用于对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。
本发明提供的集成电路仿真系统,根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,并对所述初始架构进行系统级架构性能仿真,得到架构性能参数;在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。通过整合集成电路的架构设计技术与仿真工具,形成集成电路仿真系统,由粗粒度集成电路的架构到细粒度的引脚互连自动生成,解决设计工具使用门槛高、工具碎片化的问题;还可以简化集成电路的架构仿真流程,提高集成电路的架构设计仿真验证效率,缩短硬件设计周期,提高架构优化迭代效率。同时为集成电路的设计迭代寻优提供多层次分析数据。
可选地,所述系统级仿真模块302,还用于:
在所述架构性能参数满足设定性能条件的情况下,生成所述初始架构的类原理图文件;
将所述类原理图文件中的元器件种类、元器件数量和元器件互连信息提取至第一数据交换文件;
将所述第一数据交换文件传入所述可视化布局模块。
具体地,类原理图文件是指描述类原理图的文件,如类原理图,类原理图的json文件等。数据交换文件是指集成电路仿真系统使用的、统一标准的、用于各模块之间交互的文件,不同仿真工具、以及可视化布局工具的接口,如XML文件、word文件等。
实际应用中,系统级仿真模块在架构性能参数满足设定性能条件的情况下,输出类原理图文件,如描述类原理图的json文件,通过脚本程序对类原理图文件转化为统一的数据交换文件:即自动对类原理图文件进行解析,将预制件种类、数量、互连信息提取到第一数据交换文件中,如第一XML文件中。进一步地,将第一数据交换文件传入所述可视化布局模块。如此,可以提高可视化布局模块的处理效率,便于不同模块之间的交互。
可选地,所述可视化布局模块303,还用于:
对接收的所述第一数据交换文件进行解析,得到所述初始架构;
通过显示设备显示所述初始架构,并接收用户基于所述初始架构输入的设定工艺约束。
实际应用中,可视化布局模块对系统级仿真模块传输的第一数据交换文件进行解析,得到初始架构,并向用户展示初始架构,即通过显示设备显示初始架构,由用户基于初始机构,输出设定工艺约束,相应地,可视化布局模块接收到设定工艺约束。如此,通过显示初始架构,并接收设定工艺约束,不仅促进了人机交互,还可以基于用户输入的设定工艺约束进行集成电路设计,有利于提高用户的满意度。
可选地,所述可视化布局模块303,还用于:
根据所述引脚互连信息,对所述初始架构中各所述元器件进行引脚连线,得到所述集成电路的备用架构;
通过显示设备显示所述初始架构,并在检测到用户触发针对所述初始架构中的指定元器件的放大操作时,通过所述显示设备显示所述备用架构中的所述指定元器件;
接收所述用户对所述备用架构的调整指令;
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构;或者
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局并调整各所述元器件之间的引脚连线,得到所述集成电路的目标架构。
实际应用中,可视化布局模块可以根据引脚互连信息将初始架构中各元器件的引脚进行连线,从而得到备用架构。进一步地,可视化布局模块向用户展示初始架构,并在检测到用户触发针对初始架构中的指定元器件的放大操作时,向用户展示备用架构中的指定元器件,指定元器件为任意一个元器件。此外,还可以向用户分层级展示初始架构和备用架构:例如,先向用户展示初始架构,当检测到用户通过鼠标指针移动到初始架构中的某一元器件上,针对该元器件展示备用架构,即显示备用架构中的该元器件;又如,先向用户展示初始架构,当检测用户调整显示界面的缩放程度达到设定缩放值时,向用户展示备用架构,即将显示界面放大后展示备用架构。
用户对指定元器件进行布局调整。相应地,可视化布局模块接收到用户对备用架构的调整指令,进而基于调整指令和设定工艺约束,对备用架构中的各元器件进行布局,得到集成电路的目标架构。或者用户对指定元器件进行引脚连线调整和布局调整,可视化布局模块基于调整指令和设定工艺约束,对备用架构中的各元器件进行布局并调整各元器件之间的引脚连线,得到目标架构。如此,实现布局调整的多样性,可以人工调整,又可以自动调整。
可选地,所述可视化布局模块303,还用于:
根据所述目标架构,生成第二数据交换文件;
将所述第二数据交换文件发送至所述完整性仿真模块。
实际应用中,在生成目标架构之后,将目标架构转换为第二数据交换文件,然后将第二数据交换文件传输至完整性仿真模块进行完整性仿真。如此,有利于提高完整性仿真的速率。
可选地,所述完整性仿真模块304,还用于:
对所述第二数据交换文件进行格式转换,得到设定仿真软件指定的目标仿真文件;
调用所述设定仿真软件,基于所述目标仿真文件对所述目标架构进行完整性仿真,得到完整性参数。
实际应用中,完整性仿真模块在得到第二数据交换文件的基础上,根据设定仿真软件指定的文件格式,对第二数据交换文件进行格式转换,得到目标仿真文件,进而将目标仿真文件输入至设定仿真软件中,对目标架构进行完整性仿真,得到完整性参数。如此,可以保证完整性仿真的顺利进行和效率。
可选地,所述完整性参数包括信号完整性参数和电源完整性参数;所述完整性仿真模块304,还用于:
在所述电源完整性参数不满足设定完整性条件的情况下,将所述电源完整性参数发送至所述架构设计生成模块301;
在所述电源完整性参数满足所述设定完整性条件,且所述信号完整性参数不满足所述设定完整性条件的情况下,将所述电源完整性参数发送至所述可视化布局模块303。
实际应用中,在对电源完整性和信号完整性进行仿真的基础上,若电源完整性和信号完整性不满足设定完整性条件,需要根据性能类型,对应进行设计优化:若电源完整性参数不满足设定完整性条件,则说明目标架构的架构设计不合理,则由完整性仿真模块将电源完整性参数发送至架构设计生成模块,由架构设计生成模块基于电源完整性参数和应用信息,重新选取至少一个元器件,基于各元器件生成集成电路的初始架构,直至得到符合完整性条件的目标架构;若信号完整性参数不满足设定完整性条件,说明目标架构的布局设计不合理,则由完整性仿真模块将电源完整性参数发送至可视化布局模块,由可视化布局模块重新对初始架构中各元器件进行引脚连线和布局,得到集成电路的目标架构。
如此,通过对电源完整性和信号完整性的判断,根据相应的完整性类型,返回执行不同的步骤,避免针对不同的完整性类型问题,返回同样的步骤,一定程度上,可以减少设计的流程,提高设计效率。
下面结合图4,对本发明提供的集成电路设计系统进行进一步说明。图4是本发明提供的集成电路设计系统的处理流程示意图,包括:
架构设计生成模块:通过晶上架构设计算法对输入的应用程序源码进行分析,结合性能约束自动构建适配应用的架构设计,得到初始架构和初始架构的仿真参数,并传入系统级仿真模块。
系统级仿真模块:使用开源仿真器进行系统级仿真,根据仿真参数对生成的初始架构进行系统级架构性能仿真。根据仿真输出的性能指标(架构性能参数),迭代优化输出符合设定性能条件的初始机构的类原理图(仅包含初始架构中元器件种类、元器件数量以及元器件互连关系的图)。仿真平台使用统一标准的数据交换文件作为不同仿真工具、以及可视化布局工具的接口。将初始架构的类原理图转化为第一数据交换文件(例如XML),传入可视化布局模块。
可视化布局模块:将第一数据交换文件附加引脚互连信息后,可视化晶圆基板上元器件的布局。通过布局优化算法自动优化布局,使其满足设定工艺约束,得到目标架构。将布局优化后的目标架构对应的第二数据交换文件传入完整性仿真模。
完整性仿真模:进行布局优化后的目标架构设计进一步进行电源完整性仿真和信号完整性仿真。根据仿真结果(完整性参数),若完整性参数满足设定完整性条件,则可根据目标架构的类原理图进行布局布线、原理图设计等下游设计的流程。若完整性参数不满足设定完整性条件,则返回架构设计生成模块或可视化布局模块继续迭代优化设计方案。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行集成电路设计方法。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的集成电路设计方法。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的集成电路设计方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (11)
1.一种集成电路设计方法,其特征在于,包括:
根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,并对所述初始架构进行系统级架构性能仿真,得到架构性能参数;
在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;
基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;
对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。
2.根据权利要求1所述的集成电路设计方法,其特征在于,所述在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息,包括:
在所述架构性能参数满足设定性能条件的情况下,从获取的元器件规范中,读取各所述元器件的引脚信息;
根据所述引脚信息,确定引脚端口映射;
根据所述引脚端口映射和所述初始架构中各所述元器件的元器件互连关系,确定各所述元器件之间的引脚互连信息。
3.根据权利要求1所述的集成电路设计方法,其特征在于,所述基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构,包括:
根据所述引脚互连信息,对所述初始架构中各所述元器件进行引脚连线,得到所述集成电路的备用架构;
根据所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构。
4.根据权利要求3所述的集成电路设计方法,其特征在于,所述根据所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构,包括:
通过显示设备显示所述备用架构,以接收用户对所述备用架构的调整指令;
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构;或者
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局并调整各所述元器件之间的引脚连线,得到所述集成电路的目标架构。
5.根据权利要求1所述的集成电路设计方法,其特征在于,所述根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构,包括:
对获取的应用信息进行解析;
根据解析结果和设定性能约束,确定仿真参数,所述仿真参数包括设计所述集成电路的元器件种类、元器件数量和元器件互连信息;
根据所述元器件种类和所述元器件数量,选取至少一个元器件;
根据所述元器件互连信息,对各所述元器件进行元器件连线,生成集成电路的初始架构。
6.根据权利要求5所述的集成电路设计方法,其特征在于,所述对所述初始架构进行系统级架构性能仿真,得到架构性能参数,包括:
根据所述仿真参数,对所述初始架构进行系统级架构性能仿真,得到架构性能参数;
所述对所述初始架构进行系统级架构性能仿真,得到架构性能参数之后,还包括:
在所述架构性能参数不满足所述设定性能条件的情况下,根据所述应用信息和所述架构性能参数,执行所述选取至少一个元器件,基于各所述元器件生成集成电路的初始架构的步骤;
所述对所述目标架构进行完整性仿真,得到完整性参数之后,还包括:
在所述完整性参数不满足设定完整性条件的情况下,根据所述完整性参数,重新构建所述集成电路的目标架构。
7.根据权利要求6所述的集成电路设计方法,其特征在于,所述完整性参数包括信号完整性参数和电源完整性参数;
相应地,所述在所述完整性参数不满足设定完整性条件的情况下,根据所述完整性参数,重新构建所述集成电路的目标架构,包括:
在所述电源完整性参数不满足设定完整性条件的情况下,根据所述应用信息和所述电源完整性参数,执行所述选取至少一个元器件,基于各所述元器件生成集成电路的初始架构的步骤;
在所述电源完整性参数满足所述设定完整性条件,且所述信号完整性参数不满足所述设定完整性条件的情况下,基于所述信号完整性参数、所述引脚互连信息和设定工艺约束,执行所述对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构的步骤。
8.一种集成电路仿真系统,其特征在于,包括:
架构设计生成模块,用于根据获取的应用信息,选取至少一个元器件,基于各所述元器件生成集成电路的初始架构;
系统级仿真模块,用于对所述初始架构进行系统级架构性能仿真,得到架构性能参数;
可视化布局模块,用于在所述架构性能参数满足设定性能条件的情况下,根据各所述元器件的引脚信息,确定各所述元器件之间的引脚互连信息;基于所述引脚互连信息和设定工艺约束,对所述初始架构中各所述元器件进行引脚连线和布局,得到所述集成电路的目标架构;
完整性仿真模块,用于对所述目标架构进行完整性仿真,得到完整性参数,并在所述完整性参数满足设定完整性条件的情况下,输出所述目标架构,所述目标架构用于设计所述集成电路,所述完整性仿真包括信号完整性仿真和/或电源完整性仿真。
9.根据权利要求8所述的一种集成电路仿真系统,其特征在于,所述系统级仿真模块,还用于:
在所述架构性能参数满足设定性能条件的情况下,生成所述初始架构的类原理图文件;
将所述类原理图文件中的元器件种类、元器件数量和元器件互连信息提取至第一数据交换文件;
将所述第一数据交换文件传入所述可视化布局模块;
所述可视化布局模块,还用于:
对接收的所述第一数据交换文件进行解析,得到所述初始架构;
通过显示设备显示所述初始架构,并接收用户基于所述初始架构输入的设定工艺约束。
10.根据权利要求8所述的一种集成电路仿真系统,其特征在于,所述可视化布局模块,还用于:
根据所述引脚互连信息,对所述初始架构中各所述元器件进行引脚连线,得到所述集成电路的备用架构;
通过显示设备显示所述初始架构,并在检测到用户触发针对所述初始架构中的指定元器件的放大操作时,通过所述显示设备显示所述备用架构中的所述指定元器件;
接收所述用户对所述备用架构的调整指令;
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局,得到所述集成电路的目标架构;或者
根据所述调整指令和所述设定工艺约束,对所述备用架构中的各所述元器件进行布局并调整各所述元器件之间的引脚连线,得到所述集成电路的目标架构。
11.根据权利要求8所述的一种集成电路仿真系统,其特征在于,所述可视化布局模块,还用于:
根据所述目标架构,生成第二数据交换文件;
将所述第二数据交换文件发送至所述完整性仿真模块;
所述完整性仿真模块,还用于:
对所述第二数据交换文件进行格式转换,得到设定仿真软件指定的目标仿真文件;
调用所述设定仿真软件,基于所述目标仿真文件对所述目标架构进行完整性仿真,得到完整性参数,所述完整性参数包括信号完整性参数和电源完整性参数;
所述完整性仿真模块,还用于:
在所述电源完整性参数不满足设定完整性条件的情况下,将所述电源完整性参数发送至所述架构设计生成模块;
在所述电源完整性参数满足所述设定完整性条件,且所述信号完整性参数不满足所述设定完整性条件的情况下,将所述电源完整性参数发送至所述可视化布局模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310685160.3A CN116720474A (zh) | 2023-06-09 | 2023-06-09 | 集成电路设计方法及集成电路仿真系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310685160.3A CN116720474A (zh) | 2023-06-09 | 2023-06-09 | 集成电路设计方法及集成电路仿真系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116720474A true CN116720474A (zh) | 2023-09-08 |
Family
ID=87865514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310685160.3A Pending CN116720474A (zh) | 2023-06-09 | 2023-06-09 | 集成电路设计方法及集成电路仿真系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116720474A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117852487A (zh) * | 2024-03-07 | 2024-04-09 | 西安军捷新创电子科技有限公司 | 基于通道隔离的数据采集电路的设计方法及系统 |
-
2023
- 2023-06-09 CN CN202310685160.3A patent/CN116720474A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117852487A (zh) * | 2024-03-07 | 2024-04-09 | 西安军捷新创电子科技有限公司 | 基于通道隔离的数据采集电路的设计方法及系统 |
CN117852487B (zh) * | 2024-03-07 | 2024-05-28 | 西安军捷新创电子科技有限公司 | 基于通道隔离的数据采集电路的设计方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220076154A1 (en) | Control pulse generation method, system, device and storage medium | |
US7299155B2 (en) | Method and apparatus for decomposing and verifying configurable hardware | |
AU2021240156B2 (en) | Quantum Control Pulse Generation Method And Apparatus, Device, And Storage Medium | |
US9589096B1 (en) | Method and apparatus for integrating spice-based timing using sign-off path-based analysis | |
US8984496B2 (en) | Extensible internal representation of systems with parallel and sequential implementations | |
CN105143895B (zh) | 从交互式图形用户界面中自动生成测试类预编译头 | |
CN115315702A (zh) | 早期阶段电路设计中基于机器学习的度量的预测 | |
CN112052172B (zh) | 第三方通道的快速测试方法、装置和电子设备 | |
CN116720474A (zh) | 集成电路设计方法及集成电路仿真系统 | |
CN111222636B (zh) | 深度学习模型的转化方法、装置、服务器及存储介质 | |
CN113505562A (zh) | 时钟树综合最优策略预测方法、系统及应用 | |
US20240020536A1 (en) | Processor architecture and model exploration system for deep learning | |
CN112446182A (zh) | 一种信号完整性优化的方法和设备 | |
WO2023213094A1 (zh) | 应用于集成电路器件的数据区域动态选取方法、系统、设备和计算机可读存储介质 | |
CN114968741B (zh) | 一种基于场景平台化的性能测试方法、系统、设备和介质 | |
CN114238128A (zh) | 测试用例生成方法、装置、电子设备及计算机可读介质 | |
Shanmugan et al. | Block-oriented systems simulator (BOSS) | |
CN112347723B (zh) | 基于版图的rom代码提取验证方法及装置 | |
CN113885841A (zh) | 脚本生成的方法、装置、电子设备和可读介质 | |
US6912473B2 (en) | Method for verifying cross-sections | |
Sohofi et al. | System‐level assertions: approach for electronic system‐level verification | |
CN118394176B (zh) | 一种基于Python的时钟网络自动生成的方法和装置 | |
US20240135074A1 (en) | Adaptable framework for circuit design simulation verification | |
Jimenez et al. | Simulation of message data in a testbench for the multifunction vehicle bus | |
Chawda et al. | A novel methodology for electronic design exchange |
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 |