掌桥专利:专业的专利平台
掌桥专利
首页

一种复合电流源模型的单元延时计算方法

文献发布时间:2023-06-19 19:28:50


一种复合电流源模型的单元延时计算方法

技术领域

本发明涉及集成电路设计领域,特别是涉及单元延时的计算方法,公开一种复合电流源模型的单元延时计算方法,属于计算、推算或计数的技术领域。

背景技术

精确且快速地延时计算是集成电路静态时序分析中十分重要的一环。由于数字集成电路规模庞大,基于晶体管级的仿真十分耗时,因此在静态时序分析中的延时计算往往基于器件的延时模型,这些模型采用查找表及线性插值得到对应的延时量,从而大大减少了相关计算量。常用的延时模型有非线性延时模型(Nonlinear Delay Model,NLDM)、复合电流源(Composite Current Source,CCS)模型。延时计算通常以stage为单位计算单元与连线的延时及转换时间,一个stage包含了驱动单元弧、输出网络的RC网络、以及负载端的引脚电容,分别建立驱动器模型、RC模型、以及接收器模型后进行延时计算,其中,RC模型采用模型降阶的方法建立或等效为Π模型。CCS时序模型由驱动器模型和接收器模型组成,驱动器模型是一个输出与时间以及输入电压相关的电流源,接收器模型由两个电容组成且允许在过渡期间动态调整电容。CCS的查找表由驱动器模型查找表和接收器模型查找表组成,每个查找表均包含输入转换时间与输出负载这两个索引。

现有技术提出基于电流源模型的CCS模型来满足工艺尺寸减少背景下的延时计算需求,通过共形映射的方法对电流波形插值,根据插值后的电流波形计算延时,进行一次插值操作需要分别进行三次共形映射,电流波形复杂度随共形映射次数的增加而增长,存在计算量大、运行时间长、增量内存大的缺陷。

此外,现有基于CCS模型的延时计算对有效电容的处理存在以下不足:在延时计算的过程中使用一个或两个有效电容值,没有考虑CCS模型驱动器模型输出电压在不同区间时有效电容差别很大的因素,一个或两个有效电容值无法同时拟合最低电压阈值、延时电压阈值、最高电压阈值,进而造成延时计算误差。

发明内容

本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。

本发明的发明目的是针对上述背景技术的不足,提供一种复合电流源模型的单元延时计算方法,通过在CCS模型中驱动器模型输出电压各区间内在分段电压阈值处进行插值的方式实现快速计算延时的发明目的,通过根据延时计算结果在驱动器模型输出电压各区间内更新有效电容的方式实现准确计算延时的发明目的,解决现有基于CCS模型的延时计算复杂以及根据较少有效电容值不能准确计算延时的技术问题。

本发明为实现上述发明目的采用如下技术方案:

一种复合电流源模型的单元延时计算方法,包括如下4个步骤:

步骤1,读入时序路径的RC网表与时序单元库文件,从时序单元库中获取驱动器模型和接收器模型中各器件单元的信息以及各器件单元的管脚信息;

步骤2,设置分段电压阈值,根据分段电压阈值将CCS模型中驱动器模型输出电压区间[0,Vdd]划分为若干电压区间,至少包含两个电压区间;

步骤3,根据驱动器模型的输入转换时间以及输出负载查询时序单元库中的CCS查找表,根据查询信息在分段电压阈值处进行基于电压的插值计算,拟合驱动器模型输出电压波形;

步骤4,计算驱动器模型输出电压的延时及过渡时间,在过渡时间收敛时结束延时计算,在过渡时间不收敛时计算每个电压区间的有效电容,根据每个电压区间的有效电容更新各电压区间的接收器模型输出负载,返回步骤3。

作为一种复合电流源模型的单元延时计算方法的进一步优化方案,步骤3中根据查询信息在分段电压阈值处进行基于电压的插值计算的具体方法为:

步骤3-1,根据CCS查找表查询结果获取四个驱动器输出电流表,CCS查找表查询结果包括:驱动器模型输入转换时间索引值slew的前后两个索引值slew

步骤3-2,根据驱动器模型输入转换时间索引值的前后两个索引值以及驱动器模型输出负载索引值的前后两个索引值构建四个二维索引,根据一个二维索引查询CCS输出电流表获取与该二维索引有映射关系的输出电流值序列和时间值序列,输出电流值序列和时间值序列组成一个驱动器输出电流表;

步骤3-3,将每个驱动器输出电流表分别转换为一个驱动器模型输出电压波形,

步骤3-4,对于每个驱动器模型输出电压波形,在分段电压阈值点处进行补点操作,根据

步骤3-5,根据四个驱动器模型输出电压波形上同一分段电压阈值对应的时间计算插入该分段电压阈值的时间,

拟合各分段电压阈值及其对应的插入时间组成的二维数据,得到最终的驱动器模型输出电压波形,其中,t'

作为一种复合电流源模型的单元延时计算方法的进一步优化方案,步骤4中计算驱动器模型输出电压的延时及过渡时间的具体方法为:由查表插值过程获得了所有电压区间的输出电压波形,这些输出电压波形是由一组到达时间值与一组分段电压阈值表示的。我们关注输出电压到达延时电压阈值delay的时间,输出电压到达最低电压阈值slew_lower的时间,输出电压到达最高电压阈值slew_upper的时间这三个点,根据这三个点各自所在的电压区间获取其对应的到达时间,使用这三个电压阈值点的到达时间进行延时计算,计算驱动器模型输出电压的延时delay及过渡时间transition的公式如下:

delay=t

其中,t

作为一种复合电流源模型的单元延时计算方法的进一步优化方案,步骤4中在过渡时间不收敛时计算每个电压区间的有效电容的具体方法为:根据驱动器模型输出电压波形以及分段电压阈值计算每个电压区间的有效电容。

作为复合电流源模型的单元延时计算方法的一种优选方案,步骤2中设置的分段电压阈值可以设置不同的个数与数值,这些电压值介于0与电源电压Vdd之间,例如,[0.2Vdd,0.5Vdd,0.8Vdd]。

作为复合电流源模型的单元延时计算方法的一种优选方案,步骤3中对于每一个分段电压阈值执行一次插值操作,每个电压区间对应一个有效电容,将每一电压区间的有效电容作为驱动器模型输出电压在该电压区间的输出负载。对于迭代过程的第一次计算,将总电容作为驱动器模型输出电压在所有电压区间的输出负载的初值来计算,总电容的值为RC网络的电容之和加上接收器模型引脚电容的容值。

作为本发明所述的复合电流源模型的单元延时计算方法方法的一种优选方案,步骤4根据驱动器模型输出电压波形以及分段电压阈值计算每个电压区间的有效电容的具体过程为:由每一电压区间的驱动器模型输出电压波形计算出接收器模型输入端电压波形,根据驱动器模型输出电压区间分段情况计算接收器模型输入端电压波形到达分段电压阈值的时间,由接收器模型输入电压波形的转换时间、到达分段电压阈值的时间以及接收器模型的输出负载计算出接收器模型引脚电容,由接收器模型引脚电容的变化更新接收器模型输出负载。更新每个电压区间的有效电容,将每个电压区间的有效电容分别作为对应电压区间的接收器模型输出负载,再次执行插值计算步骤。如果结果收敛,结束迭代,将延时计算结果输出。同时,可以得到完整且精确的输出电压波形与下一级单元的输入电压波形。

本发明采用上述技术方案,具有以下有益效果:

(1)本发明提出的复合电流源模型的单元延时计算方法,通过代码的查表操作实现对驱动器模型输出电压区间的分段阈值点处进行插值,实现快速且准确地计算单元延时的目的;与现有单元延时计算方法相比,本发明只需要极少的运算次数与增量内存就可以完成单元延时计算,只需要计算和存储指定电压阈值的到达时间,只需要考虑在分段电压阈值时的时间值便可以构建出详细的输出电压波形,相比于直接处理数据量大的原始数据的插值方法而言,本发明所提插值方法减小计算量,减少增量内存。

(2)本发明在驱动器输出电压各区间内更新有效电容,再根据更新后的有效电容更新接收器输出负载,以极少的代价计算出输出负载,避免在驱动器输出电压范围内采用有限个有效电容不能准确计算延时的缺陷;此外,本发明具有良好的扩展性,可以增加分段电压阈值点以进一步提高准确性,本发明计算的延时平均误差达到1.2%,计算过渡时间的平均误差达到2.7%。

附图说明

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

图1为本发明一个实施例提供的一种单元延时计算方法流程图。

图2为本发明一个实施例提供的一种单元延时计算方法中CCS模型的示意图。

图3为本发明一个实施例提供的一种单元延时计算方法的查表插值过程流程图。

图4为本发明一个实施例提供的一种单元延时计算方法所关注的三个电压阈值点的示意图。

图5为本发明一个实施例提供的一种单元延时计算方法的插值计算过程中对电压值插值的示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合说明书附图对本发明的具体实施方式做详细的说明,显然所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护的范围。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。

本发明结合示意图进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的剖面图会不依一般比例作局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。此外,在实际制作中应包含长度、宽度及深度的三维空间尺寸。

同时在本发明的描述中,需要说明的是,术语中的“上、下、内和外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。

本发明中除非另有明确的规定和限定,术语“安装、相连、连接”应做广义理解,例如:可以是固定连接、可拆卸连接或一体式连接;同样可以是机械连接、电连接或直接连接,也可以通过中间媒介间接相连,也可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

本发明的一个实施例提供的一种复合电流源模型的单元延时计算方法如图1所示,包括如下几个步骤。

步骤1,读入时序路径的RC网表与时序单元库文件

从时序单元库中获取驱动器模型和接收器模型中各器件单元的信息以及各器件单元的管脚信息,查询CCS模型查找表中的驱动器模型查找表和接收器模型查找表。

CCS模型如图2所示,包含驱动器模型、互联RC模型、以及接收器模型,其中,互联RC网络模型采用等效Π模型,Cpin为驱动器模型引脚电容,receiver_load为驱动器模型的输出负载。

步骤2,设置分段电压阈值

分段电压阈值可以设置不同的个数与值,这些电压值介于0与电源电压Vdd之间,将驱动器模型输出电压区间[0,Vdd]划分为若干电压区间。例如,[0.2Vdd,0.5Vdd,0.8Vdd]。对于每一段,执行一次插值操作。每个分段对应一个有效电容。

步骤3,根据驱动器模型的输入转换时间与输出负载的查表信息在各分段电压阈值处插值

整个查找表差值的过程如图3所示,具体包括步骤3-1至步骤3-5。

步骤3-1,读入驱动器模型输入转换时间和输出负载。查询驱动器查找表,获取驱动器模型输入转换时间索引值slew的前后两个索引值slew

步骤3-2,由四个二维索引,查询CCS输出电流表output_current,得到指定的四组输出电流值序列与时间值序列,每一组输出电流值序列与时间值序列对应一个驱动器输出电流表。

步骤3-3,将每一个驱动器输出电流波形分别转换为一个驱动器输出电压波形,由梯形积分计算每个时间值之间的增量电压,具体式(1)所示,

式(1)中,V(t

步骤3-4,在每个驱动器输出电压波形的各分段电压阈值点处补点。在上一步得到的四个驱动器输出电压波形上补点,连接补点得到分段线性的驱动器输出电压波形,该分段线性的驱动器输出电压波形由时间值与电压值表示。通过式(2)计算分段电压阈值对应的时间值。

式(2)中,t

步骤3-5,根据四个驱动器模型输出电压波形上同一分段电压阈值对应的时间计算插入该分段电压阈值的时间。

插入分段电压阈值的原理如图5所示,各驱动器模型输出电压到达同一分段电压阈值的时间不同,采用式(3)所示方法计算同一分段电压阈值的插入时间,

式(3)中,slew

将每一段的有效电容作为输出负载。对于迭代过程的第一次计算,将总电容作为所有分段的输出负载的初值来计算。总电容的值为RC网络的电容之和加上接收单元pin引脚电容。

步骤4,计算驱动器模型输出电压的延时delay与过渡时间transition,在过渡时间收敛时结束延时计算,在过渡时间不收敛时计算每个电压区间的有效电容,根据每个电压区间的有效电容更新各电压区间的接收器模型输出负载,返回步骤3

由查表插值过程,获得了所有电压区间的输出电压波形,这些输出电压波形是由一组到达时间值与一组分段电压阈值表示的。如图4所示,我们关注三个点,输出电压到达延时电压阈值delay的时间,输出电压到达最低电压阈值slew_lower的时间,输出电压到达最高电压阈值slew_upper的时间,而获取这三个电压阈值点至少需要3个有效电容,图4列举了根据有效电容Ceff1、有效电容Ceff2、有效电容Ceff3获取三个电压阈值的示例。根据这三个点各自所在的电压区间获取其对应的到达时间,使用这三个电压阈值点的到达时间进行延时计算。计算delay与transition,delay与transition的计算公式式(4)、式(5)所示,

delay=t

transition=t

式(4)、式(5)中,t

如果未收敛,将更新有效电容,有效电容更新过程为:由每一电压区间的驱动器模型输出电压波形计算出接收端输入电压波形,根据驱动器模型输出电压区间分段情况计算接收器模型输入端电压波形到达分段电压阈值的时间,由接收端输入电压波形的转换时间、到达分段电压阈值的时间以及接收器模型的输出负载计算出接收器模型引脚电容,由接收器模型引脚电容的变化更新接收器模型的输出负载,更新每个电压区间的有效电容,将每个电压区间有效电容分别作为对应电压区间的接收器模型输出负载,再次执行插值计算步骤。如果结果收敛,结束迭代,将延时计算结果输出。输出是delay与transition两个值。同时,可以得到完整且精确的输出电压波形与下一级单元的输入电压波形。

综上,与现有单元延时计算方法相比,本发明只需要极少的运算次数与增量内存就可以完成单元延时计算,只需要考虑在分段电压阈值时的时间值便可以构建出详细的输出电压波形。本发明以极少的代价计算出输出负载,即分段有效电容。本发明具有良好的扩展性,可以增加分段以进一步提高准确性。本发明在平均误差上,delay达到1.2%,transition达到2.7%。

以上实施方式只是对本发明的示例性说明,并不限定它的保护范围,本领域技术人员还可以对其局部进行改变,符合发明宗旨的任意形式的等同替换都落入本发明的保护范围。

技术分类

06120115925039