专利名称:针对门输出负载的快速且准确的估计的制作方法
技术领域:
本发明的实施例涉及电路仿真器和电路分析。更具体而言,本发明的实施例涉及
一种用于估计逻辑门上的输出负载的技术。
背景技术:
在电路仿真或者时序分析中,逻辑门的一个或者更多个电特性可以是它的输出负 载的函数。例如,包括驱动器和接收器的分级的延迟是接收器门的输入电容的函数,该输入 电容又是在接收器门的输出处的有效电容(Ceff)的函数。因而,如果准确地确定Ceff,则 可以对逻辑门的延迟准确地进行建模。 然而,准确地确定Ceff通常涉及到使用迭代计算技术以与互连寄生分量关联的 极点和零点为基础的费时的具体计算。 在一种解决这一问题的尝试中,现有电路仿真软件包括针对Ceff的近似。例如, 用于输出负载的零电容和总电容(Ctotal)用来在电路仿真中限定Ceff的最小值和最大 值。然而,这些极值常常造成分别过于保守或者过于乐观(即过大或者过小)的仿真延迟。
因此,需要一种对Ceff进行近似而无上述问题的仿真技术。
发明内容
本发明的一个实施例提供一种用于分析在分级中电耦合到输出网络的逻辑门的 电特性的计算机系统。在分析期间,计算机系统计算用于输出网络的有效电容,其中有效电 容对应于输出网络的总电阻、输出网络的总电容和输出网络的几何参数。然后,计算机系 统至少部分地基于有效电容和向逻辑门施加的电信号的转换速率来确定逻辑门的电特性。
注意,电特性可以包括逻辑门的输入电容、串扰信号的对准、分级直至逻辑门的 延迟和/或与分级直至逻辑门关联的转换。 另外,总电阻可以是输出网络中的电阻之和;总电容可以是输出网络中的电容之 和;而几何参数可以包括输出网络的扇出计数。 一般而言,几何参数可以包括输出网络的拓 扑信息,比如输出网络中的支路数目。因此,在一些实施例中,计算有效电容包括对输出网 络中的不同支路的有效电容进行计算和合并,其中给定支路的有效电容对应于给定支路的 总电阻、给定支路的总电容和给定支路的几何参数 另外,有效电容可以对应于总电阻和总电容的乘积除以几何参数的比值。在一些 实施例中,使用作为比值的函数的有效电容的极值之间的分段线性关系计算有效电容。
此外,确定电特性可以包括根据有效电容和其它参数(例如在逻辑门的输入处的 转换速率)在电特性值的预定表中进行查找。 在一些实施例中,计算机系统对一组串联耦合的分级进行计算和确定操作以计算 该组分级的路径延迟。 另一实施例提供一种可以由计算机系统实现的用于分析逻辑门的电特性的方法。 这一方法可以包括至少一些先前操作。
另一实施例提供一种用于与计算机系统结合使用的计算机程序产品。这一计算机 程序产品可以包括与至少一些先前操作对应的指令。 另一实施例提供一种用于分析逻辑门的电特性的集成电路。这一电路可以被配置 成进行至少一些先前操作。
图1是根据本发明一个实施例示出了在设计和制作集成电路时的各种操作的流 程图。 图2A是根据本发明一个实施例示出了在分级中电耦合到输出网络的逻辑门的框 图。 图2B是根据本发明一个实施例示出了针对输出网络有近似的图2A分级的框图。 图3是根据本发明一个实施例示出了用于分析逻辑门的电特性的方法的流程图。 图4是根据本发明一个实施例示出了逻辑门的有效电容的曲线图,该有效电容是
输出网络的总电阻与输出网络的总电容的乘积除以输出网络的扇出计数的函数。 图5是根据本发明一个实施例示出了分析逻辑门的电特性的计算机系统的框图。 图6是图示了根据本发明一个实施例的数据结构的框图。 图7是图示了根据本发明一个实施例的数据结构的框图。 注意相似标号在附图中通篇指代对应部分。
具体实施例方式
呈现以下描述以使本领域技术人员能够实现和利用本发明,并且在特定应用及其 要求的背景下提供该描述。本领域技术人员将容易清楚对公开的实施例的各种修改,并且 这里限定的一般原理可以适用于其它实施例和应用而不脱离本发明的精神实质和范围。因 此,本发明不限于所示实施例而是将被赋予以与这里公开的原理和特征一致的最广范围。
描述一种计算机系统、方法、集成电路和用于与该计算机系统一起使用的计算机 程序产品(即软件)的实施例。这些设备和技术可以用来分析在分级中电耦合到输出网络 的逻辑门的电特性。具体而言,在分析期间,将耦合到逻辑门的输出网络的有效电容(Ceff) 近似为输出网络的总电阻、输出网络的总电容和输出网络的几何参数的函数。例如,可以将 Ceff近似为总电阻与总电容的乘积与输出网络的扇出计数的比值的函数。使用Ceff和其 它参数(比如向逻辑门的输入施加的电信号的转换速率(slew rate))来确定逻辑门的电 特性,比如输入电容。 另外,使用这一分析技术来确定针对Ceff的准确近似可以比现有分析技术耗费 更少时间。此外,这一分析技术将Ceff建模为容易获得的互连参数的函数。以这一方式, 这一分析技术可以提供针对逻辑门的更快且更准确的电特性仿真和时序分析。
现在描述设计和制作集成电路或者芯片的实施例。图1示出了在设计和制作集成 电路时的各种操作的流程图。这一过程开始于产品想法(110)的生成,其在使用电子设计 自动化(EDA)软件(112)的设计过程中实现。当设计定稿时,可以对它进行流片(134)。在 流片之后,制作(136)半导体管芯且进行封装和组装工艺(138),最终产生成品芯片(140)。
注意,使用EDA软件(112)的设计过程包括下文描述的操作114-132。这一设计流程描述仅用于示例目的。特别是,这一描述并非为了限制本发明。例如,实际集成电路设计 可以要求设计者在与这里描述的序列不同的序列中进行设计操作。 在系统设计(114)期间,设计者描述将要实施的功能。他们也可以进行假设分析 (what-if)规划以细化功能并且检验成本。注意硬件-软件架构划分可以出现在这一阶段。 可以在这一阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的示例EDA软件产品
包括Modei Architect 、 Saber 、 System Studio⑧禾口' Designware⑧产品 然后,在逻辑设计和功能验证(116)期间,编写用于电路中的模块的VHDL或 者Verilog代码,并且检验该设计的功能准确性。更具体而言,检验该设计以保证它产 生正确输出。可以在这一阶段使用的来自加利福尼亚州芒廷维尤(Mountain View)市
Synopsys公司的示例EDA软件产品包括VCS 、 Vera 、 Designware 、 Magellan 、 Formality 、 ESP⑧和Leda⑧产品。 接着,在合成和可测性设计(118)期间,将VHDL/Verilog转译成网表。可以 针对目标技术优化网表。此外,可以设计和实施测试以检验成品芯片。可以在这一 阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的示例EDA软件产品包括
Design Compiler 、 Physical Complier 、 Test Compiler 、 Power Compiler 、 fpga Compiler 、 Tetramax⑧和Designware⑧产品。 另外,在网表验证(120)期间,检验网表与时序约束的相符性和与VHDL/Verilog 源代码的对应性。可以在这一阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的
示例eda软件产品包括Formality 、 PrimeTime⑧和VCS⑧产品。 另外,在设计规划(122)期间,构造并分析用于芯片的整个布图规划以便进行定 时和顶层布线。可以在这一阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的示
例eda软件产品包括Astro⑧和icCompiler⑧产品。 此外,在物理实现(124)期间,进行布置(对电路元件的定位)和布线(对电路元 件的连接)。可以在这一阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的示例
eda软件产品包括Astro⑧和ic Compiler⑧产品。 然后,在分析和提取(126)期间,在晶体管级验证电路功能,这允许细化。可以在 这一阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的示例EDA软件产品包括
Astrorail 、 Primerail 、Primetime⑧和star RC/XT⑧产品。 接着,在物理验证(128)期间,检验设计以保证制造、电问题、光刻问题和电路的 正确性。可以在这一阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的示例EDA
软件产品包括Hercules⑧产品。 另外,在分辨率增强(130)期间,进行对布局的几何形状操控以提高设计的可制 造性。可以在这一阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的示例EDA软
件产品包括Proteus⑧、Proteus⑧AF和PSMGED⑧产品。 此外,在掩膜数据预备(132)期间,提供用于产生掩膜以产生成品芯片的"流片" 数据。可以在这一阶段使用的来自加利福尼亚州芒廷维尤市Synopsys公司的示例EDA软 件产品包括CATS⑧系列产品。 可以在一个或者更多个上述阶段期间利用本发明的实施例。具体而言,在一些实施例中,可以在系统设计(114)和/或逻辑设计和功能验证(116)期间利用本发明。
现在描述一种用于分析或者计算逻辑门的电特性的技术的实施例。图2A呈现了 图示分级200的框图,该分级包括驱动器210,电耦合到网络212,该网络又电耦合到逻辑 门214(该逻辑门常称为接收器门)。例如,逻辑门214可以是模拟电路、数字电路或者混合 信号电路中的NAND或者NOR门。 一般而言,逻辑门214可以包括具有一个或者更多个晶体 管的门。 逻辑门214电耦合到输出网络218。如先前所言,逻辑门214的电特性如输入电容 (Cin) 216是输出网络218的函数并且具体为Ceff的函数。图2B中示出了这一点,图2B示 出了 了具有使用Ceff250来近似的输出网络218 (图2A)的分级200。注意Cin 216也是在 逻辑门214的输入处的转换速率的函数。 在以下讨论中描述对Ceff250的近似。这一近似代表在计算速度与时序和信号完 整性的准确性之间的有效折衷,这有助于对逻辑门214的一个或者更多个电特性的准确确 定。 图3呈现出示出了可以由计算机系统实现的用于分析或者计算图2A和2B中的分 级200中的逻辑门214的电特性的方法300的流程图。在分析期间,计算机系统计算用于输 出网络218的Ceff250(310),其中Ceff250对应于输出网络218的总电阻、输出网络218 的总电容和输出网络218的几何参数。然后,计算机系统至少部分地基于Ceff250和向逻 辑门214的输入施加的电信号的转换速率来确定逻辑门214的电特性(312)。
在一些实施例中,计算机系统对一组串联耦合的分级进行计算和确定操作以计算 该组分级的路径延迟(314)。 注意,在方法300的一些实施例中可以有附加的或者更少的操作。另外,可以改变 操作的顺序和/或可以将两个或者更多操作合并成单个操作。 在一个示例实施例中,电特性包括逻辑门214的Cin216,而Ceff250可以对应于总 电阻与总电容的乘积除以几何参数的比值(例如Ceff250可以是该比值的函数)。具体而 言,总电阻可以是输出网络218中的电阻之和(例如&+1 2+1 3+1 4);总电容可以是输出网络 218中的电容之和(例如Q+C^Q+Q+Cs+Ce);而几何参数可以包括输出网络218的扇出计 数(或者输出网络218中的管脚计数的数目)。注意,总电阻可以对输出网络218中的一级 (first-order)电阻屏蔽效果进行建模,而扇出计数可以对并联线段的效果进行建模。也应 注意,比值中的各参数可以在电路仿真期间获得而无需遍历整个输出网络218或者复杂的 迭代计算,这使得对Ceff250的这一近似在计算上效率高。 在其它实施例中,可以推广该比值。例如,几何参数可以包括输出网络218的拓扑 信息。因此,在一些实施例中,计算Ceff250涉及到对输出网络218中的不同支路的有效电 容进行计算和合并,其中给定支路的有效电容对应于给定支路的总电阻、给定支路的总电 容和给定支路的几何参数。 在一些实施例中,将Ceff250表达为这些参数的闭合形式的函数。备选地或者除 此之外地,可以使用作为比值的函数的Ceff250的极值之间的分段线性关系计算Ceff250。 在呈现了曲线图400的图4中示出了这一点,该曲线示为作为比值412(SP,总电阻与 总电容的乘积与扇出计数的比值)的函数的Ceff410。可以通过曲线拟合图400来获得曲 线参数tpt2和a。例如对于65nm工艺,a可以在0. 1与0. 4之间,^可以在0与15ps
7之间(比如10ps),而t2可以在50与200ps之间(比如120ps)。注意,曲线图400可以是 使用对多个分级如分级200进行的测量和/或仿真来确定的平均曲线。
使用针对Ceff250的近似可以确定逻辑门214的电特性。例如,可以通过根据 Ceff250和转换速率在电特性值的预定表中进行查找来确定Cin 216。再者,使用Cin 216 可以准确且快速地确定附加电特性,比如分级200的延迟。在使用这一分析技术以10-15% 的准确度估计Ceff250的同时,对应延迟估计的90%可以具有0. 5%的准确度(即在使用 Ceff250的值(这些值使用更全面的计算技术来确定)来进行的延迟估计的0.5%内)。注 意,使用等于Ctotal的Ceff410可能在分级200中造成最小延迟,而使用等于a Ctotal 的Ceff410可能造成最大延迟。 现在描述对逻辑门的电特性进行分析的计算机系统的实施例。图5呈现了图示计 算机系统500的框图。计算机系统500包括一个或者更多个处理器510、通信接口 512、用 户接口 514以及将这些部件耦合在一起的一个或者更多个信号线522。注意,一个或者更多 个处理单元510可以支持并行处理和/或多线程操作,通信接口 512可以具有持久通信连 接,而一个或者更多个信号线522可以构成通信总线。另外,用户接口 514可以包括显示 器516、键盘518和/或指示器520如鼠标。 计算机系统500中的存储器524可以包括易失性存储器和/或非易失性存储器。 更具体而言,存储器524可以包括ROM、RAM、EPROM、EEPROM、闪存、一个或者更多个智能卡、 一个或者更多个磁盘存储设备和/或一个或者更多个光学存储设备。存储器524可以存储 操作系统526,该操作系统包括用于对执行依赖于硬件的任务的各种基本系统服务进行处 理的进程(或者指令集)。存储器524也可以存储通信模块528中的进程(或者指令集)。 这些通信进程可以用于与一个或者更多个计算机和/或服务器通信,这些计算机和/或服 务器包括参照计算机系统500远程定位的计算机和/或服务器。 存储器524也可以包括多个程序模块(或者指令集),这些程序模块(或者指令 集)包括电路仿真模块530(或者指令集)。另外,电路仿真模块530可以包括估计模块 532 (或者指令集)和/或仿真模块534 (或者指令集)。 估计模块532可以估计用于一个或者更多个电路536(或者这些电路的部分)如 分级A 538-1和分级B 538-2的电特性542 (比如图2B中的Cin 216和/或Ceff250)。例 如,可以使用电路参数540来估计Ceff250 (图2B)。此外或者单独地,可以使用Ceff250 (图 2B)的可选预定值544和电信号的转换速率来估计Cin 216(图2B)。使用估计的电特性 542,仿真模块534可以进行对一个或者更多个电路536(或者这些电路的部分)的分析或 者仿真。 可以用高级程序语言、面向对象的编程语言和/或用汇编或者机器语言实现存储 器524中的各种模块中的指令。注意,编程语言可以被编译或者解释(例如可配置或者被 配置)成由一个或者更多个处理单元510执行。 计算机系统500可以包括各种设备,比如个人计算机、膝上型计算机、服务器、工 作站、主机计算机和/或能够操控计算机可读数据的其它设备。 虽然将计算机系统500图示为具有多个分立项,但是图5旨在于作为对可以存在 于计算机系统500中的各种特征的功能描述而不是这里描述的实施例的结构示意图。在实 践中并且如本领域普通技术人员认识到的那样,计算机系统500的功能可以分布于大量服务器或者计算机,其中各组服务器或者计算机实现功能的特定子集。因而,计算机系统500 可以在一个位置或者可以分布于多个位置,比如经由网络(比如因特网或者内联网)来通 信的计算系统。 在一些实施例中,计算机系统500的一些或者所有功能可以实现于一个或者更多 个专用集成电路(ASIC)、现场可编程门阵列(FPGA)和/或一个或者更多个数字信号处理器 (DSP)中。因此,可以使用FPGA来进行电路分析或者仿真。 计算机系统500可以包括更少部件或者附加部件。另外,可以将两个或者更多部 件合并成单个部件和/或可以改变一个或者更多个部件的位置。在一些实施例中,如本领 域中已知的那样,可以更多地用硬件而更少地用软件或者更少地用硬件而更多地用软件实 现计算机系统500的功能。 现在讨论可以在计算机系统500中使用的数据结构的实施例。图6呈现了图示数 据结构600的框图。这一数据结构可以包括Ceff610表。例如,Ceff610-1表可以包括多 对比值612和用于Ceff的值614。 图7呈现了图示数据结构700的框图。这一数据结构可以包括Cin 710表。例如, Cin 710-1表可以包括多组Ceff712、转换速率714和用于Cin的值716。
在一些实施例中,分级200 (图2A和2B)、计算机系统500 (图5)、数据结构600 (图 6)和/或700包括更少或者附加部件。另外,可以将两个或者更多部件合并成单个部件和 /或可以改变一个或者更多个部件的位置。 尽管使用逻辑门214 (图2A)的Cin 216 (图2A)作为电特性的一个示例性例子,但 是在其它实施例中电特性可以包括串扰信号的对准、分级200 (图2A)直至逻辑门214 (图 2A)的延迟、布线信息和/或与分级200 (图2A)直至逻辑门214 (图2A)的转换。
仅出于示例的和描述的目的呈现了对本发明实施例的前文描述。本意并非让它们 穷举本发明或者使本发明限于公开的形式。因而,本领域技术人员将清楚许多修改和变化。 此外,本意并非让上述公开内容限制本发明。本发明的范围由所附权利要求限定。
权利要求
一种用于分析在分级中电耦合到输出网络的逻辑门的电特性的方法,其包括计算用于所述输出网络的有效电容,其中所述有效电容对应于所述输出网络的总电阻、所述输出网络的总电容和所述输出网络的几何参数;以及至少部分地基于所述有效电容和向所述逻辑门施加的电信号的转换速率来确定所述逻辑门的所述电特性。
2. 根据权利要求1所述的方法,其中所述电特性包括所述逻辑门的输入电容。
3. 根据权利要求1所述的方法,其中所述总电阻是所述输出网络中的电阻之和。
4. 根据权利要求1所述的方法,其中所述总电容是所述输出网络中的电容之和。
5. 根据权利要求1所述的方法,其中所述几何参数包括所述输出网络的扇出计数。
6. 根据权利要求1所述的方法,其中所述几何参数包括所述输出网络的拓扑信息。
7. 根据权利要求1所述的方法,其中计算所述有效电容包括对所述输出网络中的不同 支路的有效电容进行计算和合并;以及其中给定支路的有效电容对应于所述给定支路的总电阻、所述给定支路的总电容和所 述给定支路的几何参数。
8. 根据权利要求1所述的方法,其中所述有效电容对应于所述总电阻和所述总电容的 乘积除以所述几何参数的比值。
9. 根据权利要求8所述的方法,其中使用作为所述比值的函数的所述有效电容的极值 之间的分段线性关系计算所述有效电容。
10. 根据权利要求1所述的方法,其中所述电特性包括串扰信号的对准。
11. 根据权利要求1所述的方法,其中所述电特性包括所述分级直至所述逻辑门的延迟。
12. 根据权利要求1所述的方法,其中所述电特性包括与所述分级直至所述逻辑门关 联的转换。
13. 根据权利要求1所述的方法,还包括对一组串联耦合的分级进行所述计算和确定 操作以计算所述一组分级的路径延迟。
14. 根据权利要求1所述的方法,其中确定所述电特性包括根据所述有效电容和所述 转换速率在所述电特性的值的预定表中进行查找。
15. —种用于分析在分级中电耦合到输出网络的逻辑门的电特性的设备,所述设备包括用于计算用于所述输出网络的有效电容的装置,其中所述有效电容对应于所述输出网 络的总电阻、所述输出网络的总电容和所述输出网络的几何参数;以及用于至少部分地基于所述有效电容和向所述逻辑门施加的电信号的转换速率来确定 所述逻辑门的所述电特性的装置。
16. 根据权利要求15所述的设备,其中所述电特性包括所述逻辑门的输入电容。
17. 根据权利要求15所述的设备,其中所述总电阻是所述输出网络中的电阻之和。
18. 根据权利要求15所述的设备,其中所述总电容是所述输出网络中的电容之和。
19. 根据权利要求15所述的设备,其中所述几何参数包括所述输出网络的扇出计数。
20. 根据权利要求15所述的设备,其中所述几何参数包括所述输出网络的拓扑信息。
21. 根据权利要求15所述的设备,其中用于计算所述有效电容的装置包括用于对所述输出网络中的不同支路的有效电容进行计算和合并的装置;以及其中给定支路的有效电容对应于所述给定支路的总电阻、所述给定支路的总电容和所述给定支路的几何参数。
22. 根据权利要求15所述的设备,其中所述有效电容对应于所述总电阻和所述总电容的乘积除以所述几何参数的比值。
23. 根据权利要求22所述的设备,其中使用作为所述比值的函数的所述有效电容的极值之间的分段线性关系计算所述有效电容。
24. —种计算机系统,包括处理器;存储器;程序模块,其中所述程序模块存储于所述存储器中并且被配置成由所述处理器执行以分析在分级中电耦合到输出网络的逻辑门的电特性,所述程序模块包括用于计算用于所述输出网络的有效电容的指令,其中所述有效电容对应于所述输出网络的总电阻、所述输出网络的总电容和所述输出网络的几何参数;以及用于至少部分地基于所述有效电容和向所述逻辑门施加的电信号的转换速率来确定所述逻辑门的所述电特性的指令。
全文摘要
本发明涉及针对门输出负载的快速且准确的估计。描述了一种计算机系统、方法、集成电路和用于与该计算机系统一同使用的计算机程序产品(即软件)的实施例。这些设备和技术可以用来分析在分级中电耦合到输出网络的逻辑门的电特性。具体而言,在分析期间,将耦合到逻辑门的输出网络的有效电容近似为输出网络的总电阻、输出网络的总电容和输出网络的几何参数的函数。例如,可以将有效电容近似为总电阻与总电容的乘积与输出网络的扇出计数的比值的函数。使用有效电容和其它参数(比如向逻辑门的输入施加的电信号的转换速率)来确定逻辑门的电特性,比如输入电容。
文档编号G06F17/50GK101794328SQ20091021130
公开日2010年8月4日 申请日期2009年10月30日 优先权日2009年1月30日
发明者A·卡斯纳维, 丁力, 李红 申请人:新思科技有限公司