一种自动实现静态和动态时序分析对比的方法与流程

文档序号:11155886阅读:863来源:国知局
一种自动实现静态和动态时序分析对比的方法与制造工艺

本发明涉及数字电路设计分析工具技术领域,特别是涉及时序分析对比的方法。



背景技术:

现有技术中,STA(Static Timing Analysis)技术是一种穷尽分析方法,用以衡量电路性能,它提取整个电路的时序路径,通过计算信号在路径上的延时传播,找出违背时序约束的错误,主要检查建立时间和保持时间是否满足要求,而它们又分别通过对最大路径延迟和最小路径延迟的分析得到。

但是STA可能会有20%甚至更大的分析误差。误差的第一个来源是延迟计算,STA工具使用简化的延迟模型,掩盖了实际的电路行为,例如同时切换多个输入开关和有源接收器,这些影响可能会被忽略或被粗略计算,这些基本的延迟误差可以高达5%或以上。第二个影响是工艺方差(Process Variance)的影响,在单个单元上工艺方差可以导致延迟移位多达50%,这又会增加另一个5%到10%的时钟延迟误差。第三,在低电压运行和局部电压变化时,考虑到总误差可以增长到高达20%以上。对于静态时序分析,设计人员通常比较关注电路的Slack参数指标,Slack用来表明该时序路径上是否违反建立时间约束的情况。当Slack为正值时表示满足建立时间约束,当Slack为负时则不满足建立时间约束。一方面,静态时序分析工具有时结果过于悲观,即分析出的Slack值比真实值要小,使得设计人员需要加入过多的延时单元才能达到设计要求,这会导致最终芯片面积偏大,功耗偏大;另一方面,因为STA简化或忽略许多关键电路的影响,有时可能会出现错误的计算结果,即Slack值为正而真实值为负的情况,则会导致流片失败。因此需要通过仿真工具进行动态的时序分析来进行更加准确可靠的验证,并通过两种分析结果的对比可以发现STA的误差以及错误。目前这个对比验证的过程还是完全通过人力进行比较的方式,这个过程会花费工程师很多时间和精力,导致设计周期非常长,因此迫切需要一个快速自动化的工具来完成结果的比较,并展示出对比的分析报告,提供设计人员所需要的信息,为设计人员节省时间,缩短设计周期。



技术实现要素:

为了解决现有技术存在的不足,本发明的目的在于提供一种自动实现静态和动态时序分析对比的方法,通过仿真工具进行动态的时序分析,将STA结果与仿真结果进行对比,发现STA的误差以及错误。

为实现上述目的,本发明提供的自动实现静态和动态时序分析对比的方法,包括以下步骤:

1)加载Spice Deck文件包,获取每个路径的STA时序分析报告文件及用于仿真的电路网表文件;

2)分别对电压、温度和蒙特卡洛分析进行扫描设置;

3)调用仿真器进行仿真,生成相应的动态时序测量结果文件;

4)对STA结果和仿真结果进行比对,验证设计的正确性。

进一步地,所述步骤1)进一步包括以下步骤:指定设计中所需要的电压激励值,温度,以及需要的库文件。

进一步地,步骤3)所述调用仿真器进行仿真,是对每条路径中的网表进行瞬态分析,生成相应的动态时序测量结果文件。

进一步地,所述步骤4)是读取STA工具的静态分析报告文件和仿真器生成的动态测量报告文件进行对比,验证设计的正确性。

更进一步地,所述步骤4)进一步包括以下步骤:

以表格和波形的方式展现选定路径中的具体数据信息;

以图表方式展示电压扫描,温度扫描,及蒙特卡洛扫描的分析统计信息;

对仿真结果进行过滤和排序。

本发明的自动实现静态和动态时序分析对比的方法,通过仿真工具进行动态的时序分析来进行更加准确可靠的验证,并通过两种分析结果的对比可以发现STA的误差以及错误。节省了工程师的时间和精力,使得设计周期缩短。通过快速自动化的工具来完成结果的比较,并展示出对比的分析报告,提供设计人员所需要的信息,为设计人员节省时间,缩短设计周期。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:

图1为根据本发明的自动实现静态和动态时序分析对比的方法工作流程图;

图2为根据本发明的工具启动显示界面示意图;

图3为根据本发明的Create Workspace界面示意图;

图4为根据本发明的Create Session界面示意图;

图5为根据本发明的Config Session界面示意图;

图6为根据本发明的数据显示主界面示意图;

图7为根据本发明的单条Path的具体信息图;

图8为根据本发明的所有Path的统计信息图;

图9为根据本发明的扫描分析统计结果图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1为根据本发明的自动实现静态和动态时序分析对比的方法工作流程图,下面将参考图1,对本发明的自动实现静态和动态时序分析对比的方法进行详细描述。

首先,在步骤101,指定所需要加载进来的Spice Deck包,包中包括多个路径(path),每个Path作为一个单元,每个Path中包含STA生成的时序分析报告文件及用于仿真的电路网表文件。同时可以指定设计中所需要的电压激励值,温度,以及需要库(library)文件。

图2为根据本发明的工具启动显示界面示意图,如图2所示,界面中包含菜单栏、工具栏、电路仿真列表栏及结果展示栏。菜单栏中有打开文件,配置,仿真,生成报告等选项操作。左侧列表栏列出工程中所有Workspace及所包含的Path,并显示Path的状态信息。图3为根据本发明的Create Workspace界面示意图,如图3所示,选择打开菜单项调出Create Workspace界面,输入将要生成的workspace名字,并指定workspace的工作目录。图4为根据本发明的Create Session界面示意图,如图4所示,指定所需要加载进来的Spice Deck包。

在步骤102,进行扫描设置。在该步骤中,分别对电压扫描、温度扫描和蒙特卡洛分析进行设置。图5为根据本发明的Config Session界面示意图,如图5所示,选择工具栏Configure Session,用以进行扫描的设置,分别支持电压扫描、温度扫描、和蒙特卡洛分析。

在步骤103,调用仿真器仿真,对Spice Deck包中每条Path中的网表进行瞬态分析,并生成相应的动态时序测量结果文件。本步骤中,点击菜单栏中Run或者工具栏中Run图标进行仿真。此过程调用仿真器对每条Path中的网表进行瞬态分析,并生成相应的动态时序测量结果文件。

在步骤104,读取仿真结果进行展示,列出STA结果和仿真结果。

仿真结束后点击Inspect菜单生成Timing Inspection界面。图6为根据本发明的数据显示主界面示意图,如图6所示,此界面包含三个模块,分别是路径过滤(Filter)模块,数据显示表格模块及数据分析(Analysis)按钮模块。首先数据显示表格模块列出的是所有Path的信息,一共有10列,分别为Path Name、Start Point、End Point、Slack(STA)、Slack(SIM)、Slack(Delta)、Freq(STA)、Freq(SIM)、Delay Type、Path Group。其中Path Name代表这条Path的名字,Start Point和End Point分别对应Path起始与结束点,Slack(STA)和Slack(SIM)分别为STA和仿真器分析所得出的此Path的Slack值,Slack(Delta)即两者的差值, Freq(STA)和Freq(SIM)分别为STA和仿真器分析得出的此Path的工作频率值。这样可以非常清晰直观的显示出所有Path的STA和仿真器分析的不同。 其次过滤模块中提供了几种过滤的模式,可以根据Delay Type,Slack值的大小,Path Group类型等进行过滤,另外在数据表格中点击表格中每列的Title可以进行列排序,升序或者是降序排列,通过这些操作用户可以将特别关注的信息尽快的定位并展现在数据表格当中,进一步去分析判断电路是否满足指标要求。另外分析模块列出三个按钮,分别是Timing Stat、Incr Stat、Sweep Stat,提供给用户做不同的数据统计分析。

在步骤105,查看Path中的具体数据信息。在图6中数据表格显示模块选择某条Path所在行进行双击,即可调出此Path中的具体数据信息,并已表格和波形的方式展现。图7为根据本发明的单条Path的具体信息图,如图7所示,具体数据信以表格和波形的方式进行展现。

在步骤106,对结果进行过滤、排序。本步骤中,可以根据Delay Type,Slack值的大小,Path Group类型等进行过滤,并对结果进行列排序,升序或者是降序排列。

在步骤107,查看扫描结果。

在步骤108,对涉及的正确性进行验证,定位设计中存在的问题。在图6中分析模块点击Timing Stat按钮,则进行Timing统计,列出所有Path中Slack值小于0的个数以及方差均值等统计信息。图8为根据本发明的所有Path的统计信息图,如图8所示,已波形的形式画出所有Path的Slack值,通过波形的方式更加直观的进行对比。图9为根据本发明的扫描分析统计结果图,如图9所示,则显示扫描分析结果的统计,用户可以看到在各个扫描点的具体Slack值,并给出扫描分析的统计信息。通过这些分析,设计人员可以快速的定位哪些Path违反建立时间约束规则,以及哪些扫描点情况下可以获得最好的指标。

本发明的自动实现静态和动态时序分析对比的方法,通过操作工具界面完成时序电路静态分析报告的导入,时序电路的动态仿真分析,分析报告的自动读取,以及结果的对比展示;通过这个方法可以完成电路网表信息、model信息以及激励信息的输入,通过调用仿真器,可以进行瞬态电路分析,电压扫描分析,温度扫描分析以及蒙特卡洛分析,仿真结束自动读取STA生成的分析报告文件以及仿真器生成的时序测量结果文件,将两者结果进行对比展示;分析数据是以图表的形式,展现电路设计中各个关键路径的Slack和Frequency信息对比,同时用户可以在界面进行过滤、排序来快速定位需要关注的一些关键路径,并可查看具体路径信息以及扫描仿真分析的结果信息。

本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1