CN116306415B - 静态时序分析方法及其系统 - Google Patents
静态时序分析方法及其系统 Download PDFInfo
- Publication number
- CN116306415B CN116306415B CN202211733246.0A CN202211733246A CN116306415B CN 116306415 B CN116306415 B CN 116306415B CN 202211733246 A CN202211733246 A CN 202211733246A CN 116306415 B CN116306415 B CN 116306415B
- Authority
- CN
- China
- Prior art keywords
- interface
- file
- netlist
- time sequence
- sub
- 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.)
- Active
Links
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/3315—Design verification, e.g. functional simulation or model checking using static timing analysis [STA]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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
技术领域
本申请涉及集成电路时序分析技术领域,尤其是涉及一种静态时序分析方法及其系统。
背景技术
随着电子设备的发展,集成电路芯片已经成为电子设备中必不可少的组成器件之一。在芯片设计流程中,特别是在复杂的大型系统级芯片(System on Chip,SoC)设计中,静态时序分析(Static Timing Analysis,STA)是其中必要的集成电路芯片签核手段,而提供高精度的内核(Intellectual Property,IP)模块的时序接口库是其中的关键任务,因此,如何提取出高精度的时序接口库尤为关键。
在利用网表特征化提取时序接口库时,往往受限于集成电路的电路规模或者仿真时间,特征化过程会有多次迭代,且在关键的接口信号的时序上精确度不足的技术问题。
发明内容
本申请公开了一种静态时序分析方法,能够解决提取时序接口精确度不足的技术问题。
第一方面,本申请提供了一种静态时序分析方法,所述静态时序分析方法包括:
获取网表文件;
对所述网表文件特征化,生成多个第一接口文件;
将至少一个所述第一接口文件标记为兴趣接口文件;
根据所述网表文件对所述兴趣接口文件重新特征化,生成至少一个第二接口文件;
合并所述第一接口文件和所述第二接口文件,生成时序接口库;
对所述时序接口库进行时序分析,生成分析结果。
经过所述网表文件的初次特征化,其产生的所述第一接口文件将整个集成电路的电路规模进行了相当比例的简化,再复用所述第一接口文件,对所述兴趣接口文件重新特征化,可以快速生成较高精确度的所述第二接口文件,通过合并特征化和重新特征化的所述第一接口文件和所述第二接口文件,实现了大幅提升静态时序分析流程的流畅度和精确度。
可选的,所述对所述网表文件特征化,生成多个第一接口文件,具体包括:
以第一精确度对所述网表文件特征化生成多个所述第一接口文件;
所述根据所述网表文件对所述兴趣接口文件重新特征化,生成至少一个第二接口文件,具体包括:
标记所述兴趣接口文件对应所述网表文件中的部分为兴趣子网表;
以第二精确度对所述兴趣子网表重新特征化,生成至少一个所述第二接口文件;
其中,所述第一精确度低于所述第二精确度。
可选的,所述合并所述第一接口文件和所述第二接口文件,生成时序接口库,具体包括:
替换被标记为所述兴趣接口文件的所述第一接口文件为所述第二接口文件;
根据所述第二接口文件和未被替换的所述第一接口文件生成所述时序接口库。
可选的,所述对所述网表文件特征化,生成多个第一接口文件,具体包括:
根据所述网表文件生成多个电路关系图;
提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
可选的,所述对所述时序接口库进行时序分析,生成分析结果,具体包括:
遍历所述时序接口库中的时序接口路径;
判断每个时序接口路径的信号传输时间是否满足预设条件;
根据每个时序接口路径的信号传输时间是否满足预设条件,生成所述分析结果。
第二方面,本申请还提供了一种静态时序分析系统,所述静态时序分析系统包括:
获取模块,用于获取网表文件;
特征化模块,用于对所述网表文件特征化,生成多个第一接口文件;
标记模块,用于将至少一个所述第一接口文件标记为兴趣接口文件;
所述特征化模块还用于根据所述网表文件对所述兴趣接口文件重新特征化,生成至少一个第二接口文件;
合并模块,用于合并所述第一接口文件和所述第二接口文件,生成时序接口库;
分析模块,用于对所述时序接口库进行时序分析,生成分析结果。
可选的,所述特征化模块还用于以第一精确度对所述网表文件特征化生成多个所述第一接口文件;
所述标记模块还用于标记所述兴趣接口文件对应所述网表文件中的部分为兴趣子网表;
所述特征化模块还用于以第二精确度对所述兴趣子网表重新特征化,生成至少一个所述第二接口文件;
其中,所述第一精确度低于所述第二精确度。
可选的,所述合并模块包括:
替换子模块,用于替换被标记为所述兴趣接口文件的所述第一接口文件为所述第二接口文件;
第一生成子模块,用于根据所述第二接口文件和未被替换的所述第一接口文件生成所述时序接口库。
可选的,所述特征化模块包括:
第二生成子模块,用于根据所述网表文件生成多个电路关系图;
提取子模块,用于提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
可选的,所述分析模块包括:
遍历子模块,用于遍历所述时序接口库中的时序接口路径;
判断子模块,用于判断每个时序接口路径的信号传输时间是否满足预设条件;
第三生成子模块,用于根据每个时序接口路径的信号传输时间是否满足预设条件,生成所述分析结果。
附图说明
为了更清楚的说明本申请实施方式中的技术方案,下面将对实施方式中所需要使用的附图作简单的介绍,显而易见的,下面描述中的附图仅仅是本申请的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施方式提供的静态时序分析方法流程示意图。
图2为本申请一实施方式提供的静态时序分析系统框架示意图。
图3为本申请一实施方式提供的合并模块框架示意图。
图4为本申请一实施方式提供的特征化模块框架示意图。
图5为本申请一实施方式提供的分析模块框架示意图。
图6为本申请另一实施方式提供的静态时序分析系统框架示意图。
图7为本申请另一实施方式提供的静态时序分析系统框架示意图。
附图标号说明:静态时序分析系统-1、获取模块-11、特征化模块-12、第二生成子模块-121、提取子模块-122、标记模块-13、合并模块-14、替换子模块-141、第一生成子模块-142、分析模块-15、遍历子模块-151、判断子模块-152、第三生成子模块-153、设置模块-16、拆分模块-17。
具体实施方式
下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整的描述,显然,所描述的实施方式仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。
本申请提供了一种静态时序分析方法,请参阅图1,图1为本申请一实施方式提供的静态时序分析方法流程示意图。所述静态时序分析方法包括:步骤S101、S102、S103、S104、S105、S106,其中,步骤S101、S102、S103、S104、S105、S106的详细介绍如下。
S101,获取网表文件;
S102,对所述网表文件特征化,生成多个第一接口文件;
S103,将至少一个所述第一接口文件标记为兴趣接口文件;
S104,根据所述网表文件对所述兴趣接口文件重新特征化,生成至少一个第二接口文件;
S105,合并所述第一接口文件和所述第二接口文件,生成时序接口库;
S106,对所述时序接口库进行时序分析,生成分析结果。
需要说明的是,所述网表文件通常可以对应为整个集成电路芯片的电连接关系图,对于SoC设计来说,其电路规模往往较大,若直接对所述网表文件提取时序接口库,往往容易出错导致精确度较低,或者提取时间过长导致整个静态时序分析流程过长。因此,在根据所述网表文件提取时序接口库之前,还需要先对所述网表文件特征化,以将所述网表文件的电路规模进行简化,得到多个所述第一接口文件。
具体的,对所述网表文件特征化,可以是对所述网表文件中的集成电路芯片的接口和接口之间的电连接关系进行简化,举例而言,可以根据电容、电阻和电感等电子元器件所处的位置进行部分删除,例如,位于接口和接口电连接线路之外的电子元器件可以完全删除,位于接口和接口之间的电子元器件也可以进行部分删除;或者,将接口和接口之间的多个电子元器件等效为一个电子元器件,从而实现对所述网表文件的特征化,只要不影响将所述网表文件的电路规模进行简化,本申请对此不加以限制。
在本实施方式中,通过将至少一个所述第一接口文件标记为所述兴趣接口文件,举例而言,对于整个集成电路芯片来说,其中也包含相对较为关键的接口部分,为了能够更加精确的提取该接口部分的时序接口库,可以将该接口部分对应的所述第一接口文件标记为所述兴趣接口文件。可以理解的,由于该部分所述第一接口文件已经经过一次特征化,其电路规模进行了相当比例的简化,则根据该部分所述第一接口文件标记的所述兴趣接口文件,重新进行特征化的进程得到了加速,同时,第二次特征化可以在第一次特征化的基础上,实现更高精确度的特征化,即复用了所述第一接口文件进行特征化提取所述时序接口库,从而能够快速生成较高精确度的所述时序接口库。
可以理解的,在本实施方式中,经过所述网表文件的初次特征化,其产生的所述第一接口文件将整个集成电路的电路规模进行了相当比例的简化,再复用所述第一接口文件,对所述兴趣接口文件重新特征化,可以快速生成较高精确度的所述第二接口文件,通过合并特征化和重新特征化的所述第一接口文件和所述第二接口文件,实现了大幅提升静态时序分析流程的流畅度和精确度。
在一种可能的实施方式中,所述对所述网表文件特征化,生成多个第一接口文件,具体包括:
以第一精确度对所述网表文件特征化生成多个所述第一接口文件;
所述根据所述网表文件对所述兴趣接口文件重新特征化,生成至少一个第二接口文件,具体包括:
标记所述兴趣接口文件对应所述网表文件中的部分为兴趣子网表;
以第二精确度对所述兴趣子网表重新特征化,生成至少一个所述第二接口文件;
其中,所述第一精确度低于所述第二精确度。
需要说明的是,在所述网表文件中,不仅包括集成电路芯片,还包括集成电路芯片接口周围的电子元器件,在对所述网表文件特征化时,可以选择性的保留尽可能多的电子元器件,则相应的接口文件的电路规模就越大。具体的,对所述网表文件特征化的精确度,通常指的是特征化后得到的接口文件与实际集成电路对应部分的电路规模的对应程度,也就是说,特征化后得到的接口文件与实际集成电路对应部分的电路规模等同越多,精确度就越大。
在本实施方式中,由于在第一次对所述网表文件特征化后产生的所述第一接口文件中,电路规模已经得到了相当比例的简化。在根据所述网表文件对所述兴趣接口文件重新特征化时,由于标记了所述兴趣接口文件对应所述网表文件中的部分为所述兴趣子网表,对所述兴趣子网表重新特征化时,可以将对应所述第一接口文件中被删除的电子元器件重新特征化,以使得所述第二接口文件中的电路规模包含该部分被删除的电子元器件,从而使得所述第二接口文件的精确度高于对应的所述第一接口文件。
可以理解的,在本实施方式中,由于所述第一精确度低于所述第二精确度,先以所述第一精确度对所述网表文件特征化生成多个所述第一接口文件,能够快速的根据所述网表文件对整个集成电路的电路规模进行相当比例的简化,再根据标记的所述兴趣接口文件,确定对应的所述兴趣子网表,即所述第一接口文件的复用。根据所述第二精确度对所述兴趣子网表重新特征化,从而生成精确度更高的所述第二接口文件,从而实现了大幅提升静态时序分析流程的流畅度和精确度。
在一种可能的实施方式中,所述合并所述第一接口文件和所述第二接口文件,生成时序接口库,具体包括:
替换被标记为所述兴趣接口文件的所述第一接口文件为所述第二接口文件;
根据所述第二接口文件和未被替换的所述第一接口文件生成所述时序接口库。
可以理解的,由于被标记为所述兴趣接口文件的所述第一接口文件被复用于生成所述第二接口文件,而所述第二接口文件的精确度较所述第一接口文件的精确度高,因此,在合并所述第一接口文件和所述第二接口文件时,将所述第二接口文件替换掉被标记为所述兴趣接口文件的所述第一接口文件,从而使得最终合并生成的所述时序接口库的精确度更高。
在一种可能的实施方式中,所述对所述网表文件特征化,生成多个第一接口文件,具体包括:
根据所述网表文件生成多个电路关系图;
提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
可以理解的,所述网表文件通常可以对应为整个集成电路芯片的电连接关系图,所述根据所述网表文件生成多个电路关系图,会按照预设精确度比例对所述网表文件中的整个集成电路的电路规模进行简化,从而生成多个对应的电路关系图。再提取每个所述电路关系图中的时序接口,生成对应的所述第一接口文件。
同理,由于在生成对应的所述第一接口文件的过程中,已经对所述网表文件按照预设精确度进行简化,得到对应的所述电路关系图,那么,在生成所述第二接口文件时,复用相对应的所述电路关系图能够加快生成所述第二接口文件的进程,从而实现快速的生成较高精确度的所述第二接口文件。
可以理解的,在本实施方式中,所述电路关系图作为所述网表文件特征化的中间结果,在生成所述第二接口文件的过程中复用,从而实现了快速的生成较高精确度的所述第二接口文件的目的。
在一种可能的实施方式中,所述对所述时序接口库进行时序分析,生成分析结果,具体包括:
遍历所述时序接口库中的时序接口路径;
判断每个时序接口路径的信号传输时间是否满足预设条件;
根据每个时序接口路径的信号传输时间是否满足预设条件,生成所述分析结果。
需要说明的是,所述时序接口库中包括特征化后得到的多个所述时序接口路径,在静态时序分析方法中,需要遍历所述时序接口库中的所有所述时序接口路径,具体的,通过测试所有所述时序接口路径上信号发送和接收的时间差,来判断每个时序接口路径的信号传输时间是否满足预设条件。
可以理解的,在本实施方式中,由于生成的所述时序接口库由所述第一接口文件和所述第二接口文件合并而成,也就是说,所述时序接口库生成的耗时短,且精确度高,使得生成所述分析结果的流程耗时也随之缩短,且提高了所述分析结果的精确度。
在一种可能的实施方式中,所述静态时序分析方法还包括:
根据多个分组条件对所述网表文件特征化,以同时生成多个对应的第一接口文件。
在本实施方式中,一方面,由于根据所述分组条件对所述网表文件特征化,可以根据所述分组条件对所述网表文件进行初步的分组、简化,从而加快对所述网表文件特征化的进程;另一方面,可以同时生成与所述分组条件相对应的多个所述第一接口文件,再将多个所述第一接口文件合并,以生成所述时序接口库,进一步加快了对所述网表文件特征化的进程。可以理解的,根据单个所述分组条件对所述网表文件特征化,可以生成单个对应的所述第一接口文件,也可以生成多个对应的所述第一接口文件,本申请对此不加以限制。
可以理解的,在本实施方式中,根据所述分组条件同时生成多个对应的所述第一接口文件,即在对所述网表文件特征化时,快速并行的生成多个所述第一接口文件,再将多个所述第一接口文件合并,生成完整的所述时序接口库,从而减少生成所述时序接口库的时间,大幅提升静态时序分析的流畅度。
在一种可能的实施方式中,所述根据多个分组条件对所述网表文件特征化,以同时生成多个对应的第一接口文件,具体包括:
根据多个分组条件对所述网表文件特征化,生成多个电路关系图;
提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
可以理解的,所述网表文件通常可以对应为整个集成电路芯片的电连接关系图,所述根据多个分组条件对所述网表文件特征化,生成多个电路关系图,将按照所述分组条件对所述网表文件中的整个集成电路的电路规模进行初步的分组、简化,从而加快生成多个对应的电路关系图的进程。再提取每个所述电路关系图中的时序接口,生成对应的所述第一接口文件。
具体的,所述分组条件可以是精确度、电容、时钟域中的任意一种或多种。举例而言,对所述网表文件特征化的精确度,通常指的是特征化后得到的第一接口文件与实际集成电路对应部分的电路规模的对应程度,也就是说,特征化后得到的第一接口文件与实际集成电路对应部分的电路规模等同越多,精确度就越大。那么,当所述分组条件为精确度时,可以根据高精确度条件和低精确度条件对所述网表文件特征化,将需求高精确度部分的集成电路根据所述网表文件特征化为具有高精确度的电路关系图,将不需求高精确度部分的集成电路根据所述网表文件特征化为具有较低精确度的电路关系图。可以理解的,对于低精确度的电路关系图来说,其生成时间较短,因此能够加快生成所述第一接口文件的时间。
当所述分组条件为电容时,根据所述网表文件中,集成电路芯片接口和接口之间或之外的电容位置、数量及大小,可以将所述网表文件中的电路规模进行分组、简化。例如,将位于集成电路芯片接口和接口之外的电容划分为一组,将位于集成电路芯片接口和接口之间的电容划分为一组;或者,对于工作环境要求较高的集成电路芯片来说,将其外围电路中的电容划分为一组,对于工作环境要求较低的集成电路芯片来说,将其外围电路中的电容划分为一组;又或者,对于电容容值较大的电容划分为一组,对于电容容值较小的电容划分为一组。对所述网表文件根据电容条件划分分组之后,可以依据不同分组对所述网表文件中的电容快速进行特征化,即选择保留或删除电容,从而能够快速的生成相对应的所述电路关系图。
需要说明的是,对于集成电路来说,其需要至少一个时钟信号作为基准,以驱动其工作。而所谓时钟域,指的是同一个时钟信号驱动下的工作区域。而对于SoC来说,随着设计规模扩大,多时钟域的设计是必要的。当所述分组条件为时钟域时,可以将所述网表文件中的电路规模按不同的时钟域要求进行分组、简化。例如,将时钟信号频率较高的时钟域划分为一组,将时钟信号频率较低的时钟域划分为一组,从而能够快速的生成相对应的所述电路关系图。
可以理解的,在本实施方式中,由于按照所述分组条件对所述网表文件中的整个集成电路的电路规模进行初步的分组、简化,能够加快生成所述电路关系图的时间,因此能够加快生成所述第一接口文件的时间,再将所述第一接口文件合并,从而能够加快生成整个所述时序接口库的进程。
在一种可能的实施方式中,所述电路关系图具有电路规模及仿真时间参数,所述电路关系图的电路规模参数小于预设规模阈值,所述电路关系图的仿真时间参数小于预设时间阈值。
可以理解的,所述电路关系图的电路规模越大,生成对应的所述第一接口文件所需的时间也就越长,相应的所述电路关系图的仿真时间也会越长。所述电路关系图的仿真时间还受到其中电子元器件的复杂程度的影响,例如,集成电路芯片的仿真时间较电阻等较为简单的电子元器件的仿真时间长,电容、电感等电子元器件的仿真时间虽然较集成电路芯片的仿真时间短,但也较电阻等较为简单的电子元器件的仿真时间长,也就是说,若所述电路关系图中的集成电路芯片、电容、电感等电子元器件越多,其仿真时间也会越长。
可以理解的,在本实施方式中,通过控制所述电路关系图的电路规模参数小于预设规模阈值,以及控制所述电路关系图的仿真时间参数小于预设时间阈值,可以加快所述第一接口文件的生成时间。由于根据多个所述分组条件对所述网表文件特征化,可以使得生成多个对应的所述电路关系图的电路规模参数小于预设规模阈值,所述电路关系图的仿真时间参数小于预设时间阈值。
在一种可能的实施方式中,在所述根据多个分组条件对所述网表文件特征化,以同时生成多个对应的第一接口文件之前,所述静态时序分析方法还包括:
设置精确度、电容、时钟域中的任意一种或多种条件为分组条件。
具体的,精确度、电容、时钟域的相关解释请参阅上文描述,本申请在此不再赘述。可以理解的,上述分组条件可以进行任意的组合,所述分组条件也还可以是其他条件,只要不影响根据所述分组条件对所述网表文件进行特征化,能够实现分组、简化所述网表文件的目的,本申请对此不加以限制。
在一种可能的实施方式中,所述静态时序分析方法还包括:
拆分所述网表文件,得到第一子网表和第二子网表,其中,所述第一子网表和所述第二子网表互补;
对所述第一子网表特征化,生成第一接口文件;
根据所述第二子网表对所述第一子网表进行标记;
对所述第一子网表重新特征化,以生成时序接口库。
可以理解的,将所述网表文件拆分为所述第一子网表和所述第二子网表,并对所述第一子网表特征化,从而避免一次性对电路规模较大的所述网表文件特征化,减少生成所述接口文件的时间,降低了对所述网表文件特征化的难度。其中,所述第一子网表和所述第二子网表互补指的是,相对于所述网表文件来说,所述第一子网表和所述第二子网表中不存在同一个电子元器件,且所述第一子网表和所述第二子网表合并后,可以对应于所述网表文件的至少部分,优选的,所述第一子网表和所述第二子网表合并后对应于完整的所述网表文件。需要说明的是,所述第一子网表和所述第二子网表中不存在同一个电子元器件,并不是指同一种类型的电子元器件,而是指区分于不同个体的单个电子元器件。举例而言,所述第一子网表中存在一个电容,则与所述第一子网表互补的所述第二子网表中不存在该个电容,但是可以存在其他电容。
在本实施方式中,由于所述第一子网表和所述第二子网表互补,所述第一子网表中的时序接口路径和所述第二子网表中的电子元器件的寄生信息也是互补的,根据所述第二子网表中的电子元器件的寄生信息对所述第一子网中的时序接口路径表进行标记,从而能够将所述第二子网表中的电子元器件的寄生信息补足于所述第一子网表中,再对标记后的所述第一子网表重新特征化,能够提高生成的所述时序接口库的精确度。
可以理解的,在本实施方式中,通过拆分出互补的所述第一子网表和所述第二子网表,并特征化得到所述第一接口文件,降低了一次性特征化较大规模的所述网表文件的难度,加快了所述网表文件的特征化进程,同时,根据所述第二子网表对所述第一子网表进行标记,提高了最终生成的所述时序接口库的精确度。
在一种可能的实施方式中,所述网表文件为后仿真网表,所述第一子网表为Non-RC网表,所述第二子网表为RC网表。
需要说明的是,所述网表文件为后仿真网表指的是,对所述网表文件根据实际集成电路进行过仿真处理,从而将实际集成电路中的线路连接以及工作环境等效为电容、电阻等电子元器件加入至所述网表文件中,也就是说,相对于前仿真网表来说,后仿真网表的电路规模更大,但精确度也更高,从而生成的所述时序接口库的精确度也越高。
具体的,对于后仿真网表来说,由于通常是对实际集成电路中的线路连接和工作环境进行了仿真处理,从而将线路连接和工作环境等效为电容、电阻等电子元器件。通常情况下,对于SoC电路设计来说,线路连接和工作环境通常较为复杂,根据其实际集成电路中的线路连接和工作环境仿真得到的等效电阻、等效电容的数量。
在本实施方式中,将所述网表文件拆分为所述第一子网表和所述第二子网表,所述第一子网表为Non-RC网表,也就是说,所述第一子网表中不包括电阻、电容,以及经过仿真处理得到的等效电阻、等效电容,从而缩减所述第一子网表的电路规模,减少对所述第一子网表特征化的时间。而所述第二子网表为RC网表,所述第二子网表中包括电阻、电容,以及经过仿真处理得到的等效电阻、等效电容,也就是说,所述第二子网表中包括电阻、电容以及等效电阻、等效电容的时序接口,从而根据所述第二子网表对所述第一子网表进行标记,能够将电阻、电容以及等效电阻、等效电容的时序接口再标记至所述第一子网表中,以使得最终生成较高精确度的所述时序接口库。
可以理解的,在其他可能的实施方式中,所述网表文件也可以是前仿真网表,所述第一子网表和所述第二子网表还可以是其他组合的互补网表,本申请对此不加以限制。
在一种可能的实施方式中,所述对所述第一子网表特征化,生成第一接口文件,具体包括:
对所述第一子网表特征化,生成多个电路关系图;
提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
可以理解的,所述网表文件通常可以对应为整个集成电路芯片的电连接关系图,所述根据所述第一子网表特征化,生成多个所述电路关系图,会按照预设精确度比例对所述第一子网表中的集成电路的电路规模进行简化,从而生成多个对应的所述电路关系图。再提取每个所述电路关系图中的时序接口,生成对应的所述第一接口文件。
可以理解的,在本实施方式中,通过拆分出互补的所述第一子网表和所述第二子网表,并特征化得到所述第一接口文件,降低了一次性特征化较大规模的所述网表文件的难度,加快了所述网表文件的特征化进程。
在一种可能的实施方式中,
所述根据所述第二子网表对所述第一子网表进行标记,具体包括:
根据所述第二子网表和所述第一子网表在所述网表文件中的对应关系,将所述第二子网表中的RC寄生信息标记至所述第一子网表中的对应时序接口路径上。
需要说明的是,即使将所述网表文件拆分得到所述第一子网表和所述第二子网表,所述第一子网表和所述第二子网表中的电子元器件还是与所述网表文件中的电子元器件具有一一对应的位置关系。所谓RC寄生信息,指的是电容、电阻、等效电容和等效电阻分别寄生于所述网表文件中的位置信息。由于所述第一子网表为Non-RC网表,所述第二子网表为RC网表,则可以根据所述第二子网表中的RC寄生信息标记至所述第一子网表中的对应时序接口路径上。
举例而言,所述第二子网表中的某个电容位于所述网表文件中的某个位置,对于与该电容电连接的电子元器件,可能被拆分至所述第一子网表中,进而被特征化于所述电路关系图中。再根据该电容与被特征化于所述电路关系图中的电子元器件,可以将所述第二子网表中,该电容的寄生信息标记至所述第一子网表中对应电子元器件的时序接口路径上,从而实现根据所述第二子网表对所述第一子网表进行标记。
可以理解的,在本实施方式中,根据所述第二子网表和所述第一子网表在所述网表文件中的对应关系,能够直接将所述第二子网表中的RC寄生信息反标至所述第一子网表中的对应时序接口路径上,从而使得根据标记后的所述第一子网表特征化,能够生成较高精确度的所述时序接口库。
本申请还提供了一种静态时序分析系统1,请一并参阅图2,图2为本申请一实施方式提供的静态时序分析系统框架示意图。所述静态时序分析系统1包括:
获取模块11,用于获取网表文件;
特征化模块12,用于对所述网表文件特征化,生成多个第一接口文件;
标记模块13,用于将至少一个所述第一接口文件标记为兴趣接口文件;
所述特征化模块12还用于根据所述网表文件对所述兴趣接口文件重新特征化,生成至少一个第二接口文件;
合并模块14,用于合并所述第一接口文件和所述第二接口文件,生成时序接口库;
分析模块15,用于对所述时序接口库进行时序分析,生成分析结果。
具体的,所述网表文件、特征化、所述第一接口文件、所述兴趣接口文件、所述第二接口文件、所述时序接口库、时序分析和所述分析结果请参阅上文描述,本申请在此不再赘述。
可以理解的,在本实施方式中,所述特征化模块12对所述网表文件进行初次特征化,其产生的所述第一接口文件将整个集成电路的电路规模进行了相当比例的简化,所述标记模块13再标记所述第一接口文件为所述兴趣接口文件,并通过所述特征化模块12对所述兴趣接口文件重新特征化,可以快速生成较高精确度的所述第二接口文件,通过所述合并模块14合并特征化和重新特征化的所述第一接口文件和所述第二接口文件,实现了大幅提升静态时序分析流程的流畅度和精确度。
在一种可能的实施方式中,所述特征化模块12还用于以第一精确度对所述网表文件特征化生成多个所述第一接口文件;
所述标记模块13还用于标记所述兴趣接口文件对应所述网表文件中的部分为兴趣子网表;
所述特征化模块12还用于以第二精确度对所述兴趣子网表重新特征化,生成至少一个所述第二接口文件;
其中,所述第一精确度低于所述第二精确度。
具体的,所述兴趣子网表、所述第一精确度和所述第二精确度请参阅上文描述,本申请在此不再赘述。
可以理解的,在本实施方式中,由于所述第一精确度低于所述第二精确度,所述特征化模块12先以所述第一精确度对所述网表文件特征化生成多个所述第一接口文件,能够快速的根据所述网表文件对整个集成电路的电路规模进行相当比例的简化,所述标记模块13再根据标记的所述第一接口文件,确定对应的所述兴趣子网表,即所述第一接口文件的复用。所述特征化模块12根据所述第二精确度对所述兴趣子网表重新特征化,从而生成精确度更高的所述第二接口文件,从而实现了大幅提升静态时序分析流程的流畅度和精确度。
在一种可能的实施方式中,请一并参阅图3,图3为本申请一实施方式提供的合并模块框架示意图。所述合并模块14包括:
替换子模块141,用于替换被标记为所述兴趣接口文件的所述第一接口文件为所述第二接口文件;
第一生成子模块142,用于根据所述第二接口文件和未被替换的所述第一接口文件生成所述时序接口库。
可以理解的,由于被标记为所述兴趣接口文件的所述第一接口文件被复用于生成所述第二接口文件,而所述第二接口文件的精确度较所述第一接口文件的精确度高,因此,在所述第一生成子模块142合并所述第一接口文件和所述第二接口文件时,所述替换子模块141将所述第二接口文件替换掉被标记为所述兴趣接口文件的所述第一接口文件,从而使得最终合并生成的所述时序接口库的精确度更高。
在一种可能的实施方式中,请一并参阅图4,图4为本申请一实施方式提供的特征化模块框架示意图。所述特征化模块12包括:
第二生成子模块121,用于根据所述网表文件生成多个电路关系图;
提取子模块122,用于提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
具体的,所述电路关系图和所述时序接口请参阅上文描述,本申请在此不再赘述。
可以理解的,在本实施方式中,所述电路关系图作为所述网表文件特征化的中间结果,在生成所述第二接口文件的过程中复用,从而实现了快速的生成较高精确度的所述第二接口文件的目的。
在一种可能的实施方式中,请一并参阅图5,图5为本申请一实施方式提供的分析模块框架示意图。所述分析模块15包括:
遍历子模块151,用于遍历所述时序接口库中的时序接口路径;
判断子模块152,用于判断每个时序接口路径的信号传输时间是否满足预设条件;
第三生成子模块153,用于根据每个时序接口路径的信号传输时间是否满足预设条件,生成所述分析结果。
可以理解的,在本实施方式中,由于所述合并模块14生成的所述时序接口库由所述第一接口文件和所述第二接口文件合并而成,也就是说,所述时序接口库生成的耗时短,且精确度高,使得所述第三生成子模块153生成所述分析结果的流程耗时也随之缩短,且提高了所述分析结果的精确度。
在一种可能的实施方式中,所述特征化模块12还用于根据多个分组条件对所述网表文件特征化,以同时生成多个对应的第一接口文件。
具体的,所述分组条件请参阅上文描述,本申请在此不再赘述。
可以理解的,在本实施方式中,所述特征化模块12根据所述分组条件同时生成多个对应的所述第一接口文件,即在对所述网表文件特征化时,快速并行的生成多个所述第一接口文件,所述合并模块14再将多个所述第一接口文件合并,生成完整的所述时序接口库,从而减少生成所述时序接口库的时间,大幅提升静态时序分析的流畅度。
在一种可能的实施方式中,所述第二生成子模块121还用于根据多个分组条件对所述网表文件特征化,生成多个电路关系图;
所述提取子模块122还用于提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
具体的,所述电路关系图和所述时序接口请参阅上文描述,本申请在此不再赘述。
可以理解的,在本实施方式中,由于所述第二生成子模块121按照所述分组条件对所述网表文件中的整个集成电路的电路规模进行初步的分组、简化,能够加快生成所述电路关系图的时间,因此能够加快所述提取子模块122生成所述第一接口文件的时间,再将所述第一接口文件合并,从而能够加快生成整个所述时序接口库的进程。
在一种可能的实施方式中,请一并参阅图6,图6为本申请另一实施方式提供的静态时序分析系统框架示意图。所述静态时序分析系统1还包括:
设置模块16,用于设置精确度、电容、时钟域中的任意一种或多种条件为分组条件。
具体的,精确度、电容、时钟域条件请参阅上文描述,本申请在此不再赘述。
可以理解的,在本实施方式中,所述设置模块16通过将所述分组条件设置为精确度、电容、时钟域中的任意一种或多种条件,能够实现所述第二生成子模块121分组、简化所述网表文件,并生成对应的所述电路关系图的目的。
在一种可能的实施方式中,请一并参阅图7,图7为本申请另一实施方式提供的静态时序分析系统框架示意图。所述静态时序分析系统1还包括:
拆分模块17,用于拆分所述网表文件,得到第一子网表和第二子网表,其中,所述第一子网表和所述第二子网表互补;
所述特征化模块12还用于对所述第一子网表特征化,生成第一接口文件;
所述标记模块13还用于根据所述第二子网表对所述第一子网表进行标记;
所述特征化模块12还用于对所述第一子网表重新特征化,以生成时序接口库;
具体的,所述第一子网表和所述第二子网表请参阅上文描述,本申请在此不再赘述。
可以理解的,在本实施方式中,所述拆分模块17通过拆分出互补的所述第一子网表和所述第二子网表,并通过所述特征化模块12特征化得到所述第一接口文件,降低了一次性特征化较大规模的所述网表文件的难度,加快了所述网表文件的特征化进程,同时,所述标记模块13根据所述第二子网表对所述第一子网表进行标记,提高了最终生成的所述时序接口库的精确度。
在一种可能的实施方式中,所述第二生成子模块121还用于对所述第一子网表特征化,生成多个电路关系图;
所述提取子模块122用于提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
具体的,所述电路关系图请参阅上文描述,本申请在此不再赘述。
可以理解的,在本实施方式中,所述拆分模块17通过拆分出互补的所述第一子网表和所述第二子网表,并通过所述提取子模块122提取得到所述第一接口文件,降低了一次性特征化较大规模的所述网表文件的难度,加快了所述网表文件的特征化进程。
在一种可能的实施方式中,所述标记模块13还用于根据所述第二子网表和所述电路关系图第一子网表在所述网表文件中的对应关系,将所述第二子网表的RC寄生信息标记至所述第一子网表中的对应时序接口路径上。
可以理解的,在本实施方式中,所述标记模块13根据所述第二子网表和所述第一子网表在所述网表文件中的对应关系,能够直接将所述第二子网表中的RC寄生信息反标至所述第一子网表中的对应时序接口路径上,从而生成较高精确度的所述时序接口库。
本申请还提供了一种计算机可读取介质,所述计算机可读取介质存储有计算机可读取程序,当所述计算机可读取程序被处理器读取并执行时,执行如上文所述的静态时序分析方法。具体的,所述静态时序分析方法请参阅上文描述,本申请在此不再赘述。
需要说明的是,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一可读取介质中,可读取介质可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施方式的说明只是用于帮助理解本申请的核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (6)
1.一种静态时序分析方法,其特征在于,所述静态时序分析方法包括:
获取网表文件;
对所述网表文件特征化,生成多个第一接口文件,其中,所述对所述网表文件特征化包括对所述网表文件中的集成电路芯片的接口和接口之间的电子元器件进行部分删除,或,将所述网表文件中的集成电路芯片的接口和接口之间的多个电子元器件等效为一个电子元器件;
将至少一个所述第一接口文件标记为兴趣接口文件;
根据所述网表文件对所述兴趣接口文件重新特征化,生成至少一个第二接口文件,其中,所述根据所述网表文件对所述兴趣接口文件重新特征化包括将所述兴趣接口对应的所述第一接口文件中被删除的电子元器件重新特征化;
合并所述第一接口文件和所述第二接口文件,生成时序接口库;其中,所述合并所述第一接口文件和所述第二接口文件,生成时序接口库,具体包括:
替换被标记为所述兴趣接口文件的所述第一接口文件为所述第二接口文件;
根据所述第二接口文件和未被替换的所述第一接口文件生成所述时序接口库;
对所述时序接口库进行时序分析,生成分析结果;其中,所述对所述时序接口库进行时序分析,生成分析结果包括:遍历所述时序接口库中的时序接口路径;
判断每个时序接口路径的信号传输时间是否满足预设条件;
根据每个时序接口路径的信号传输时间是否满足预设条件,生成所述分析结果。
2.如权利要求1所述的静态时序分析方法,其特征在于,所述对所述网表文件特征化,生成多个第一接口文件,具体包括:
以第一精确度对所述网表文件特征化生成多个所述第一接口文件;
所述根据所述网表文件对所述兴趣接口文件重新特征化,生成至少一个第二接口文件,具体包括:
标记所述兴趣接口文件对应所述网表文件中的部分为兴趣子网表;
以第二精确度对所述兴趣子网表重新特征化,生成至少一个所述第二接口文件;
其中,所述第一精确度低于所述第二精确度。
3.如权利要求1所述的静态时序分析方法,其特征在于,所述对所述网表文件特征化,生成多个第一接口文件,具体包括:
根据所述网表文件生成多个电路关系图;
提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
4.一种静态时序分析系统,其特征在于,所述静态时序分析系统包括:
获取模块,用于获取网表文件;
特征化模块,用于对所述网表文件中的集成电路芯片的接口和接口之间的电子元器件进行部分删除,或,将所述网表文件中的集成电路芯片的接口和接口之间的多个电子元器件等效为一个电子元器件,以对所述网表文件特征化,生成多个第一接口文件;
标记模块,用于将至少一个所述第一接口文件标记为兴趣接口文件;
所述特征化模块还用于根据所述网表文件对所述兴趣接口文件对应的所述第一接口文件中被删除的电子元器件重新特征化,生成至少一个第二接口文件;
合并模块,用于合并所述第一接口文件和所述第二接口文件,生成时序接口库;
分析模块,用于对所述时序接口库进行时序分析,生成分析结果;
其中,所述合并模块包括:
替换子模块,用于替换被标记为所述兴趣接口文件的所述第一接口文件为所述第二接口文件;
第一生成子模块,用于根据所述第二接口文件和未被替换的所述第一接口文件生成所述时序接口库;
所述分析模块包括:
遍历子模块,用于遍历所述时序接口库中的时序接口路径;
判断子模块,用于判断每个时序接口路径的信号传输时间是否满足预设条件;
第三生成子模块,用于根据每个时序接口路径的信号传输时间是否满足预设条件,生成所述分析结果。
5.如权利要求4所述的静态时序分析系统,其特征在于,所述特征化模块还用于以第一精确度对所述网表文件特征化生成多个所述第一接口文件;
所述标记模块还用于标记所述兴趣接口文件对应所述网表文件中的部分为兴趣子网表;
所述特征化模块还用于以第二精确度对所述兴趣子网表重新特征化,生成至少一个所述第二接口文件;
其中,所述第一精确度低于所述第二精确度。
6.如权利要求4所述的静态时序分析系统,其特征在于,所述特征化模块包括:
第二生成子模块,用于根据所述网表文件生成多个电路关系图;
提取子模块,用于提取每个所述电路关系图中的时序接口,生成对应的第一接口文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211733246.0A CN116306415B (zh) | 2022-12-30 | 2022-12-30 | 静态时序分析方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211733246.0A CN116306415B (zh) | 2022-12-30 | 2022-12-30 | 静态时序分析方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116306415A CN116306415A (zh) | 2023-06-23 |
CN116306415B true CN116306415B (zh) | 2023-10-20 |
Family
ID=86821117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211733246.0A Active CN116306415B (zh) | 2022-12-30 | 2022-12-30 | 静态时序分析方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116306415B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7865856B1 (en) * | 2007-03-12 | 2011-01-04 | Tela Innovations, Inc. | System and method for performing transistor-level static performance analysis using cell-level static analysis tools |
CN112100158A (zh) * | 2020-09-21 | 2020-12-18 | 海光信息技术有限公司 | 一种标准单元库的建立方法、装置、电子设备及存储介质 |
CN115293084A (zh) * | 2022-06-29 | 2022-11-04 | 北京轩宇信息技术有限公司 | 一种门级网表跨时钟域自动化分析方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11922106B2 (en) * | 2020-07-24 | 2024-03-05 | Synopsys, Inc. | Memory efficient scalable distributed static timing analysis using structure based self-aligned parallel partitioning |
-
2022
- 2022-12-30 CN CN202211733246.0A patent/CN116306415B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7865856B1 (en) * | 2007-03-12 | 2011-01-04 | Tela Innovations, Inc. | System and method for performing transistor-level static performance analysis using cell-level static analysis tools |
CN112100158A (zh) * | 2020-09-21 | 2020-12-18 | 海光信息技术有限公司 | 一种标准单元库的建立方法、装置、电子设备及存储介质 |
CN115293084A (zh) * | 2022-06-29 | 2022-11-04 | 北京轩宇信息技术有限公司 | 一种门级网表跨时钟域自动化分析方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116306415A (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115964975B (zh) | 静态时序分析方法及其系统、计算机可读取介质 | |
CN116029239B (zh) | 静态时序分析方法及其系统、计算机可读取介质 | |
US20030182640A1 (en) | Signal integrity analysis system | |
CN102866349B (zh) | 集成电路测试方法 | |
CN112560401B (zh) | Verilog文件转换方法、装置、存储介质及设备 | |
CN105049281A (zh) | 一种报文解析方法和设备 | |
US7882467B2 (en) | Test pattern evaluation method and test pattern evaluation device | |
CN104933214A (zh) | 集成电路设计方法和装置 | |
CN107844678B (zh) | 包含IP/Memory时序路径的spice仿真方法 | |
CN111400169A (zh) | 一种自动化生成用于测试软硬件的网表文件的方法及系统 | |
CN108090288B (zh) | 一种通过机器学习获取时序参数的方法 | |
CN116306415B (zh) | 静态时序分析方法及其系统 | |
CN112526326B (zh) | 时序测试方法、系统、装置及存储介质 | |
CN116227398B (zh) | 一种自动化生成ip核测试激励的方法及系统 | |
CN111624475A (zh) | 大规模集成电路的测试方法及系统 | |
US7389488B2 (en) | Method of finding driving strength and computer accessible record medium to store program thereof | |
US20060026479A1 (en) | Verification vector creating method, and electronic circuit verifying method using the former method | |
US20220327269A1 (en) | Computing device and method for detecting clock domain crossing violation in design of memory device | |
CN117350208A (zh) | 时序逻辑元件性能检查方法及设备 | |
US7506284B2 (en) | Event driven switch level simulation method and simulator | |
US20090144044A1 (en) | Logic simulator and logic simulation method | |
CN117744546B (zh) | 数字电路评估方法、系统、设备及存储介质 | |
US7979818B1 (en) | Packet processing validation | |
CN112214955B (zh) | 一种提取超大规模集成电路芯片电源模型参数的方法 | |
CN117574817B (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 |