CN110111020B - 基于自动评估建立时间余量的保持时间修复方法、系统及介质 - Google Patents
基于自动评估建立时间余量的保持时间修复方法、系统及介质 Download PDFInfo
- Publication number
- CN110111020B CN110111020B CN201910409351.0A CN201910409351A CN110111020B CN 110111020 B CN110111020 B CN 110111020B CN 201910409351 A CN201910409351 A CN 201910409351A CN 110111020 B CN110111020 B CN 110111020B
- Authority
- CN
- China
- Prior art keywords
- time
- violation
- margin
- estimated
- hold
- 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
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/39—Circuit design at the physical level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种基于自动评估建立时间余量的保持时间修复方法、系统及介质,本发明方法步骤包括提取输入的保持时间违反报告中每一个工艺角下每一条路径的起始点、终点以及保持时间违反量;从保持时间违反报告提取得到每一条路径的终点列出,并获取最差的实际建立时间松懈度;计算终点修完保持时间后的预估建立时间余量;挑选出每一个终点最差的情况;计算每一个终点的可修量并确定终点前插入的单元类型和数目,用于修复保持时间违反的工程翻新命令并输出。本发明通过分析建立时间的余量以及保持时间的违反情况,能够快速地输出命令以修复保持时间并确保建立时间不受影响。
Description
技术领域
本发明涉及超大规模集成电路物理设计领域,具体涉及一种基于自动评估建立时间余量的保持时间修复方法、系统及介质,用于静态时序分析中实现在不影响建立时间(setup)的情况下,进行保持时间(hold)的快速修复。
背景技术
随着集成电路规模的日益增大性能逐步提升,在集成电路物理设计中,为了更好地提升芯片性能,会大面积采用有用时钟偏差(useful skew)的方式来构造时钟树。这种方式使得构造时钟的过程中,工具会尽可能根据逻辑路径的长短来调整时钟的偏差程度,从而在保证性能同时,可以降低瞬态功耗的峰值。然而,有用偏差的使用,使得设计在静态时序分析中保持时间的违反量以及条数有了明显增加。修复这些保持时间违反则成为物理设计后期,手工工程翻新(Engineering Change Order,ECO)过程中比较耗时的一项工作。同时,在手工ECO阶段,手工修复保持时间的过程中,由于人工对建立时间情况考虑不全,所做的ECO动作可能对建立时间有不利影响,造成反复迭代,从而导致工作量的增加。因此,如何快速的对设计进行保持时间修复工作,成为影响物理设计工作进度的一个相对关键的因素。
发明内容
本发明要解决的技术问题是:为了解决集成电路物理设计中手工ECO阶段保持时间违反的修复耗时大且影响建立时间情况的问题,提供一种基于自动评估建立时间余量的保持时间修复方法、系统及介质,本发明通过分析建立时间的余量以及保持时间的违反情况,能够快速地输出命令以修复保持时间并确保建立时间不受影响。本发明针对集成电路物理设计中修复保持时间时能够精确的定位每一条路径的违反量和可修量,实现了在不影响保持时间的情况下,自动吐出工程修复命令,有助于加快物理设计进度。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于自动评估建立时间余量的保持时间修复方法,实施步骤包括:
1)输入针对目标设计进行静态时序分析后产生的保持时间违反报告;
2)提取保持时间违反报告中每一个工艺角下每一条路径的起始点、终点以及保持时间违反量;
3)针对目标设计进行静态时序分析后产生的一个工艺角的建立时间的全局静态时序数据中,将从保持时间违反报告提取得到每一条路径的终点列出,并获取这些终点的最差的实际建立时间松懈度;
4)计算得到每一个终点修完保持时间后的预估建立时间余量;
5)挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况;
6)计算每一个终点的可修量;
7)根据可修量确定终点前插入的单元类型和数目;
8)根据插入的单元类型和数目生成用于修复保持时间违反的工程翻新命令并输出。
优选地,步骤4)的详细步骤包括:将每一个终点对应的路径的保持时间违反量乘以一个指定系数得到建立时间松懈度的需求值,并将实际建立时间松懈度减去计算得到的建立时间松懈度的需求值,得到每一个终点修完保持时间后的预估建立时间余量。
优选地,所述指定系数为一倍驱动力的缓存器或一倍驱动力的延时单元在该建立时间检查工艺角下的延时、在保持时间违反的工艺角下的比值。
优选地,步骤5)的详细步骤包括:
5.1)针对每一个终点修完保持时间后的预估建立时间余量,将每个建立时间检查工艺角下的每个保持时间检查工艺角中有违反的每条路径的起始点、终点以及保持时间违反量、实际建立时间松懈度以及计算所得的修完保持时间后的预估建立时间余量存在一个列表中;
5.2)从列表中选出终点相同的路径,选择保持时间违反量最大且修干净后的预估建立时间余量值最小的一项保留,其他路径的信息删除;终点只出现一次的路径无需处理。
优选地,步骤6)的详细步骤包括:针对挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况,将预估建立时间余量为正和为负分开,预估建立时间余量为正则全部可修;若预估建立时间余量为负,但建立时间的实际建立时间松懈度为正,则可修掉这个实际建立时间松懈度的值除以比例因子的量;若预估建立时间余量为负,且建立时间的实际建立时间松懈度为负或者为0,则该条路径的保持时间在这个终点处不可修;从而最终得到每一个终点的可修量。
优选地,步骤7)的详细步骤包括:将可修量除以单元在保持时间工艺角下的延时得到可插入的单元数量,选择指定类型的反相器、缓存器、延时单元组合得到可插入的单元数量,如果可插入的单元数量不为整数则根据实际建立时间松懈度调整插入单元个数的入舍,若上取整不会引起建立时间违反则上取整入成较大整数,若上取整会引起违反,则下取整舍成较小整数,从而最终确定各个终点前插入的单元类型和数目。
优选地,步骤7)之后还包括保持时间违反量超过预设阈值、且单元类型包括多个缓冲器单元的情况下,将两个以上的缓冲器单元替换为一个延时器单元的步骤。
本发明还提供一种基于自动评估建立时间余量的保持时间修复系统,包括计算机设备,该计算机设备被编程或配置以执行本发明前述基于自动评估建立时间余量的保持时间修复方法的步骤,或该计算机设备的存储介质上存储有被编程或配置以执行本发明前述基于自动评估建立时间余量的保持时间修复方法的计算机程序。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行本发明前述基于自动评估建立时间余量的保持时间修复方法的计算机程序。
本发明还提供一种基于自动评估建立时间余量的保持时间修复系统,包括:
输入程序单元,用于输入针对目标设计进行静态时序分析后产生的保持时间违反报告;
输入数据提取程序单元,用于提取保持时间违反报告中每一个工艺角下每一条路径的起始点、终点以及保持时间违反量;
松懈度计算程序单元,用于针对目标设计进行静态时序分析后产生的一个工艺角的建立时间的全局静态时序数据中,将从保持时间违反报告提取得到每一条路径的终点列出,并获取这些终点的最差的实际建立时间松懈度;
预估建立时间余量计算程序单元,用于计算得到每一个终点修完保持时间后的预估建立时间余量;
终点修理程序单元,用于挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况;
可修量计算程序单元,用于计算每一个终点的可修量;
插入单元配置程序单元,用于根据可修量确定终点前插入的单元类型和数目;
输出程序单元,用于根据插入的单元类型和数目生成用于修复保持时间违反的工程翻新命令并输出。
和现有技术相比,本发明具有下述优点:
1、本发明通过分析建立时间的余量以及保持时间的违反情况,能够快速地输出命令以修复保持时间并确保建立时间不受影响。
2、本发明针对集成电路物理设计中修复保持时间时能够精确的定位每一条路径的违反量和可修量,实现了在不影响保持时间的情况下,自动吐出工程修复命令,有助于加快物理设计进度。
附图说明
图1为本发明实施例方法的基本实施流程图。
图2为本发明实施例中从保持时间违反报告中抓出的内容保存的条目示意图。
图3为本发明实施例中从全局静态时序数据中报出的实际建立时间松懈度后,保存的条目内容示意图。
图4为本发明实施例中预估建立时间余量的计算原理示意图。
图5为本发明实施例中经过预估建立时间余量计算后保存的条目类容示意图。
图6为本发明实施例中计算可插入的单元数量的计算原理示意图。
具体实施方式
如图1所示,本实施例基于自动评估建立时间余量的保持时间修复方法的实施步骤包括:
1)输入针对目标设计进行静态时序分析后产生的保持时间违反报告(hold违反报告);
2)提取保持时间违反报告中每一个工艺角(corner)下每一条路径的起始点(startpoint)、终点(endpoint)以及保持时间违反量(hold违反量);
3)针对目标设计进行静态时序分析后产生的一个工艺角(corner)的建立时间的全局静态时序数据(setup session)中,将从保持时间违反报告(hold违反报告)提取得到每一条路径(path)的终点列出,并获取这些终点的最差的实际建立时间松懈度(setupslack);
4)计算得到每一个终点修完保持时间后的预估建立时间余量(setup margin);
5)挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况,从而挑出违反最大,可修量最少的情况;
6)计算每一个终点的可修量;
7)根据可修量确定终点前插入的单元类型和数目;
8)根据插入的单元类型和数目生成用于修复保持时间违反的工程翻新命令(ECO命令)并输出。
在hold没有干净的设计中,做过静态时序分析后产生了保持时间违反报告,保持时间违反报告即为本实施例方法步骤1)的输入。保持时间违反报告中包含每个工艺角下,违反的每一条路径的起始点、终点、单元延时、线延时、时序约束中要求的延时、实际延时以及计算所得的时序违反量。
本实施例步骤2)中,针对将每个工艺角下的保持时间违反报告中,如图2 所示将每条路径的起始点、终点以及违反量这三个信息提出出来,并保存。
3)针对目标设计进行静态时序分析后产生的一个工艺角(corner)的建立时间的全局静态时序数据(setup session)中,将从保持时间违反报告(hold违反报告)提取得到每一条路径(path)的终点列出,并获取这些终点的最差的实际建立时间松懈度(setupslack);
本实施例步骤3)中,在同一个设计的静态时序分析后保存每一个工艺角的全局静态时序数据中,将第一步中保存的每条路径的终点列出,报到这些终点的最差的实际建立时间松懈度(setup slack),保存条目如图3所示。
如图4所示,本实施例中步骤4)的详细步骤包括:将每一个终点对应的路径的保持时间违反量乘以一个指定系数得到建立时间松懈度的需求值,并将实际建立时间松懈度减去计算得到的建立时间松懈度的需求值,得到每一个终点修完保持时间后的预估建立时间余量。
本实施例中,步骤4)中的指定系数为一倍驱动力的缓存器或一倍驱动力的延时单元在该建立时间检查工艺角下的延时、在保持时间违反的工艺角下的比值。
预估建立时间余量(setup margin)这个值表示如果要修干净保持时间检查工艺角(hold corner)下的保持时间违反,在这个建立时间下,到这个终点的路径至少需要有的实际建立时间松懈度。将实际建立时间松懈度减去计算得到的建立时间松懈度的需求值,得到每一个终点修完保持时间后的预估建立时间余量;将每个建立时间工艺角下的每个保持时间工艺角中有违反的每条路径的起始点、终点、保持时间违反量、建立时间的实际建立时间松懈度以及计算所得的修干净后的预估建立时间余量存在一个列表中,条目结构如图5所示。
本实施例中,步骤5)的详细步骤包括:
5.1)针对每一个终点修完保持时间后的预估建立时间余量,将每个建立时间检查工艺角(setup corner)下的每个保持时间检查工艺角(hold corner)中有违反的每条路径的起始点、终点以及保持时间违反量、实际建立时间松懈度以及计算所得的修完保持时间后的预估建立时间余量存在一个列表中;
5.2)从列表中选出终点相同的路径,选择保持时间违反量最大且修干净后的预估建立时间余量值最小的一项保留,其他路径的信息删除;终点只出现一次的路径无需处理。
本实施例中,步骤6)的详细步骤包括:针对挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况,将预估建立时间余量为正和为负分开,预估建立时间余量为正则全部可修;若预估建立时间余量为负,但建立时间的实际建立时间松懈度为正,则可修掉这个实际建立时间松懈度的值除以比例因子的量;若预估建立时间余量为负,且建立时间的实际建立时间松懈度为负或者为0,则该条路径的保持时间在这个终点处不可修;从而最终得到每一个终点的可修量。
本实施例中,步骤7)的详细步骤包括:将可修量除以单元在保持时间工艺角下的延时得到可插入的单元数量,选择指定类型的反相器(inv)、缓存器(buffer)、延时单元(delay)组合得到可插入的单元数量,如果可插入的单元数量不为整数则根据实际建立时间松懈度调整插入单元个数的入舍,若上取整不会引起建立时间违反则上取整入成较大整数,若上取整会引起违反,则下取整舍成较小整数,从而最终确定各个终点前插入的单元类型和数目。例如:1个驱动力为一个单元的缓存单元(BUFFD1),其在保持时间工艺角下的延时为x,有一个终点计算得到的预估建立时间余量的值为正,可修量为v。如果修掉这条路径在这个保持时间工艺角下的保持时间违反全部插入缓存单元BUFFD1的单元,则可以插入v/x个单元,如图6所示。但实际计算时,会将缓存单元、延时单元灵活组合,会根据实际建立时间松懈度,调整插入单元个数的入舍,如果插入单元数不为整数,则计算入上去时,增加的延时是否会引起建立时间违反。若不会引起建立时间违反,则可以入成较大整数,若引起违反,则舍成较小整数。
由于单个的延时单元比缓存单元的延时要大,因此,在实际操作中,在遇到比较大的保持时间违反时,还可以根据需求将几个缓存单元换成一个延时单元,已达到减少插入单元数目的目的。本实施例,步骤7)之后还包括保持时间违反量超过预设阈值、且单元类型包括多个缓冲器单元的情况下,将两个以上的缓冲器单元替换为一个延时器单元的步骤。
最终,本实施例通过步骤8)根据插入的单元类型和数目生成用于修复保持时间违反的工程翻新命令(ECO命令)并输出。
此外,本实施例还提供一种基于自动评估建立时间余量的保持时间修复系统,包括计算机设备,该计算机设备被编程或配置以执行本实施例前述基于自动评估建立时间余量的保持时间修复方法的步骤。
此外,本实施例还提供一种基于自动评估建立时间余量的保持时间修复系统,包括计算机设备,该计算机设备的存储介质上存储有被编程或配置以执行本实施例前述基于自动评估建立时间余量的保持时间修复方法的计算机程序。
此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行本实施例前述基于自动评估建立时间余量的保持时间修复方法的计算机程序。
此外,本实施例还提供一种基于自动评估建立时间余量的保持时间修复系统,其特征在于包括:
输入程序单元,用于输入针对目标设计进行静态时序分析后产生的保持时间违反报告;
输入数据提取程序单元,用于提取保持时间违反报告中每一个工艺角下每一条路径的起始点、终点以及保持时间违反量;
松懈度计算程序单元,用于针对目标设计进行静态时序分析后产生的一个工艺角的建立时间的全局静态时序数据中,将从保持时间违反报告提取得到每一条路径的终点列出,并获取这些终点的最差的实际建立时间松懈度;
预估建立时间余量计算程序单元,用于计算得到每一个终点修完保持时间后的预估建立时间余量;
终点修理程序单元,用于挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况;
可修量计算程序单元,用于计算每一个终点的可修量;
插入单元配置程序单元,用于根据可修量确定终点前插入的单元类型和数目;
输出程序单元,用于根据插入的单元类型和数目生成用于修复保持时间违反的工程翻新命令并输出。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种基于自动评估建立时间余量的保持时间修复方法,其特征在于实施步骤包括:
1)输入针对目标设计进行静态时序分析后产生的保持时间违反报告;
2)提取保持时间违反报告中每一个工艺角下每一条路径的起始点、终点以及保持时间违反量;
3)针对目标设计进行静态时序分析后产生的一个工艺角的建立时间的全局静态时序数据中,将从保持时间违反报告提取得到每一条路径的终点列出,并获取这些终点的最差的实际建立时间松懈度;
4)计算得到每一个终点修完保持时间后的预估建立时间余量;
5)挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况;
6)计算每一个终点的可修量;
7)根据可修量确定终点前插入的单元类型和数目;
8)根据插入的单元类型和数目生成用于修复保持时间违反的工程翻新命令并输出。
2.根据权利要求1所述的基于自动评估建立时间余量的保持时间修复方法,其特征在于,步骤4)的详细步骤包括:将每一个终点对应的路径的保持时间违反量乘以一个指定系数得到建立时间松懈度的需求值,并将实际建立时间松懈度减去计算得到的建立时间松懈度的需求值,得到每一个终点修完保持时间后的预估建立时间余量。
3.根据权利要求2所述的基于自动评估建立时间余量的保持时间修复方法,其特征在于,所述指定系数为一倍驱动力的缓存器或一倍驱动力的延时单元在该建立时间检查工艺角下的延时、在保持时间违反的工艺角下的比值。
4.根据权利要求1所述的基于自动评估建立时间余量的保持时间修复方法,其特征在于,步骤5)的详细步骤包括:
5.1)针对每一个终点修完保持时间后的预估建立时间余量,将每个建立时间检查工艺角下的每个保持时间检查工艺角中有违反的每条路径的起始点、终点以及保持时间违反量、实际建立时间松懈度以及计算所得的修完保持时间后的预估建立时间余量存在一个列表中;
5.2)从列表中选出终点相同的路径,选择保持时间违反量最大且修干净后的预估建立时间余量值最小的一项保留,其他路径的信息删除;终点只出现一次的路径无需处理。
5.根据权利要求1所述的基于自动评估建立时间余量的保持时间修复方法,其特征在于,步骤6)的详细步骤包括:针对挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况,将预估建立时间余量为正和为负分开,预估建立时间余量为正则全部可修;若预估建立时间余量为负,但建立时间的实际建立时间松懈度为正,则可修掉这个实际建立时间松懈度的值除以比例因子的量;若预估建立时间余量为负,且建立时间的实际建立时间松懈度为负或者为0,则该条路径的保持时间在这个终点处不可修;从而最终得到每一个终点的可修量。
6.根据权利要求1所述的基于自动评估建立时间余量的保持时间修复方法,其特征在于,步骤7)的详细步骤包括:将可修量除以单元在保持时间工艺角下的延时得到可插入的单元数量,选择指定类型的反相器、缓存器、延时单元组合得到可插入的单元数量,如果可插入的单元数量不为整数则根据实际建立时间松懈度调整插入单元个数的入舍,若上取整不会引起建立时间违反则上取整入成较大整数,若上取整会引起违反,则下取整舍成较小整数,从而最终确定各个终点前插入的单元类型和数目。
7.根据权利要求1所述的基于自动评估建立时间余量的保持时间修复方法,其特征在于,步骤7)之后还包括保持时间违反量超过预设阈值、且单元类型包括多个缓冲器单元的情况下,将两个以上的缓冲器单元替换为一个延时器单元的步骤。
8.一种基于自动评估建立时间余量的保持时间修复系统,包括计算机设备,其特征在于,该计算机设备被编程或配置以执行权利要求1~7中任意一项所述基于自动评估建立时间余量的保持时间修复方法的步骤,或该计算机设备的存储介质上存储有被编程或配置以执行权利要求1~7中任意一项所述基于自动评估建立时间余量的保持时间修复方法的计算机程序。
9.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有被编程或配置以执行权利要求1~7中任意一项所述基于自动评估建立时间余量的保持时间修复方法的计算机程序。
10.一种基于自动评估建立时间余量的保持时间修复系统,其特征在于包括:
输入程序单元,用于输入针对目标设计进行静态时序分析后产生的保持时间违反报告;
输入数据提取程序单元,用于提取保持时间违反报告中每一个工艺角下每一条路径的起始点、终点以及保持时间违反量;
松懈度计算程序单元,用于针对目标设计进行静态时序分析后产生的一个工艺角的建立时间的全局静态时序数据中,将从保持时间违反报告提取得到每一条路径的终点列出,并获取这些终点的最差的实际建立时间松懈度;
预估建立时间余量计算程序单元,用于计算得到每一个终点修完保持时间后的预估建立时间余量;
终点修理程序单元,用于挑选出每一个终点的保持时间违反量、预估建立时间余量最差的情况;
可修量计算程序单元,用于计算每一个终点的可修量;
插入单元配置程序单元,用于根据可修量确定终点前插入的单元类型和数目;
输出程序单元,用于根据插入的单元类型和数目生成用于修复保持时间违反的工程翻新命令并输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910409351.0A CN110111020B (zh) | 2019-05-16 | 2019-05-16 | 基于自动评估建立时间余量的保持时间修复方法、系统及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910409351.0A CN110111020B (zh) | 2019-05-16 | 2019-05-16 | 基于自动评估建立时间余量的保持时间修复方法、系统及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110111020A CN110111020A (zh) | 2019-08-09 |
CN110111020B true CN110111020B (zh) | 2021-03-02 |
Family
ID=67490474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910409351.0A Active CN110111020B (zh) | 2019-05-16 | 2019-05-16 | 基于自动评估建立时间余量的保持时间修复方法、系统及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110111020B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131810B (zh) * | 2020-09-29 | 2024-03-22 | 飞腾信息技术有限公司 | 建立时间违例修复方法、装置、电子设备及可读存储介质 |
CN112564682B (zh) * | 2020-12-22 | 2024-07-05 | 深圳大普微电子科技有限公司 | 一种修正建立时间违反的方法、装置及系统 |
CN112597739B (zh) * | 2020-12-30 | 2023-04-07 | 瓴盛科技有限公司 | 修复电路中的保持时间违例的方法和装置 |
CN113379385B (zh) * | 2021-06-11 | 2023-03-24 | 上海妙一生物科技有限公司 | 一种临床研究项目计划数据处理方法和装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050268263A1 (en) * | 2004-05-28 | 2005-12-01 | Yigang Sun | Method and apparatus for fixing hold time violations in a circuit design |
US20060253814A1 (en) * | 2005-05-03 | 2006-11-09 | Howard Porter | Method and apparatus for fixing hold time violations in a hierarchical integrated circuit design |
CN102339338A (zh) * | 2010-07-22 | 2012-02-01 | 上海华虹集成电路有限责任公司 | 一种时序修复方法 |
CN102456087A (zh) * | 2010-11-03 | 2012-05-16 | 上海华虹集成电路有限责任公司 | 一种建立时序修复方法 |
US20150248520A1 (en) * | 2014-02-28 | 2015-09-03 | International Business Machines Corporation | Method and Apparatus for Physical-Aware Hold Violation Fixing |
CN105787213A (zh) * | 2016-04-01 | 2016-07-20 | 中国人民解放军国防科学技术大学 | 一种保持时间违反的修复方法 |
CN108983870A (zh) * | 2017-05-31 | 2018-12-11 | 深圳市中兴微电子技术有限公司 | 一种时间修复方法和装置 |
CN109583103A (zh) * | 2018-12-04 | 2019-04-05 | 珠海市微半导体有限公司 | 一种基于时间余量的时序修复方法 |
-
2019
- 2019-05-16 CN CN201910409351.0A patent/CN110111020B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050268263A1 (en) * | 2004-05-28 | 2005-12-01 | Yigang Sun | Method and apparatus for fixing hold time violations in a circuit design |
US20060253814A1 (en) * | 2005-05-03 | 2006-11-09 | Howard Porter | Method and apparatus for fixing hold time violations in a hierarchical integrated circuit design |
CN102339338A (zh) * | 2010-07-22 | 2012-02-01 | 上海华虹集成电路有限责任公司 | 一种时序修复方法 |
CN102456087A (zh) * | 2010-11-03 | 2012-05-16 | 上海华虹集成电路有限责任公司 | 一种建立时序修复方法 |
US20150248520A1 (en) * | 2014-02-28 | 2015-09-03 | International Business Machines Corporation | Method and Apparatus for Physical-Aware Hold Violation Fixing |
CN105787213A (zh) * | 2016-04-01 | 2016-07-20 | 中国人民解放军国防科学技术大学 | 一种保持时间违反的修复方法 |
CN108983870A (zh) * | 2017-05-31 | 2018-12-11 | 深圳市中兴微电子技术有限公司 | 一种时间修复方法和装置 |
CN109583103A (zh) * | 2018-12-04 | 2019-04-05 | 珠海市微半导体有限公司 | 一种基于时间余量的时序修复方法 |
Non-Patent Citations (3)
Title |
---|
A Fast Approach for Static Timing Analysis Covering All PVT Corners;Sari Onaissi等;《2011 48th ACM/EDAC/IEEE Design Automation Conference(DAC)》;20110609;第777-782页 * |
FPGA布线的保持时间违规的解决方法;孙铁力等;《现代计算机》;20180131;第6-9页 * |
布线后修复时序违规的方法研究;曾宏;《中国集成电路》;20100430;第29-32页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110111020A (zh) | 2019-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110111020B (zh) | 基于自动评估建立时间余量的保持时间修复方法、系统及介质 | |
CN108170956B (zh) | 一种保持时间的时序签核方法及装置 | |
CN104407976A (zh) | 一种接口健壮性测试用例生成方法及装置 | |
CN104462755B (zh) | 基于可靠性模型的电子设备备件配置计算方法 | |
CN107918523B (zh) | 数据储存装置及其数据写入方法 | |
CN109558263B (zh) | 一种固态硬盘数据读取错误的处理方法及相关装置 | |
CN109388813B (zh) | 一种构建用于集成电路设计的时钟树的方法及装置 | |
CN105607937B (zh) | 一种热补丁方法及设备 | |
CN109783956B (zh) | 基于区域划分的最大跳变时间违例修复方法及系统 | |
CN115577675B (zh) | 时序违例修复方法、装置、服务器及可读存储介质 | |
CN112214960A (zh) | 一种兼顾集成电路时序的冗余金属填充方法及系统 | |
CN111046618A (zh) | 一种用于集成电路的保持时间违反的修复方法和装置 | |
CN114861578A (zh) | 保持时间违例修复方法、装置、设备及存储介质 | |
CN111881637A (zh) | 一种数字电路功耗优化的方法、系统及存储介质 | |
CN116776796A (zh) | 一种电路时序修复的方法、计算机设备、存储介质 | |
CN115964974A (zh) | 一种基于遗传算法的建立时间优化方法及其系统 | |
US7971169B1 (en) | System and method for reducing the generation of inconsequential violations resulting from timing analyses | |
CN109800511B (zh) | 一种寻找最优公共点的保持时间违反修正方法及系统 | |
CN116702664B (zh) | 时间违例修复方法、装置、计算机设备及存储介质 | |
Heindl et al. | A fourth-order algorithm with automatic stepsize control for the transient analysis of DSPNs | |
CN110083942B (zh) | 基于物理信息的信号电迁移批量修复方法、系统及介质 | |
CN110110463B (zh) | 可改善时序的集成电路逻辑连接优化方法、系统及介质 | |
JPH05135130A (ja) | 論理シミユレーシヨン方法および論理シミユレーシヨン装置 | |
CN102332048B (zh) | 集成电路设计过程中单节点并行自动修复保持时间违例的方法 | |
CN109144806B (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: 300452 Building 5, Xin'an pioneer Plaza, Binhai New Area marine high tech Development Zone, Tianjin Patentee after: Feiteng Information Technology Co.,Ltd. Address before: 300452 Building 5, Xin'an pioneer Plaza, Binhai New Area marine high tech Development Zone, Tianjin Patentee before: TIANJIN FEITENG INFORMATION TECHNOLOGY Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |