基于NanoTime深亚微米芯片信号完整性分析方法
刘建琦 唐培松 叶 晨jianqil@hotmail.com
上海高性能集成电路设计中心
摘要
随着集成电路制造技术发展到深亚微米,单个芯片上集成的晶体管数量越来越多,设计规模越来越大,线间距越来越小,互连线 间的串扰(crosstalk)影响越来越严重。尤其进入到深亚微米工艺后,各种纳米效应影响越来越显著,信号完整性分析已是深压 微米大规模芯片设计必须考虑的要素之一。
本文在芯片设计实例的基础上,结合时序分析工具NanoTime介绍了深亚微米下大规模集成电路设计的信号完整性分析方法,并与 其他时序分析工具HSPICE和PrimeTime进行了仿真精度对比。此外,本文还对一些遇到的问题及解决方案进行了阐述说明。
关键字:NanoTime,信号完整性,施侵线,受侵线,串扰
Abstract
With the development of integrated circuit manufacturing technology to Deep Submicron Process, more and more transistors can be integrated on a single chip and the scale is growing and the spacing is reducing. The impact of the crosstalk is more and more seriously. When the Submicron process’s coming, the effect of nanometer brought deeply significant. Considering the signal integrity of the design has been one of the criteria must be considered.
In this paper, based on the case, it introduced the method of signal integrity analysis with static timing analysis tool of NanoTime for Deep Sub- micron Chip, and compared analysis precision with other static timing analysis tools’, such as PrimeTime, HSPICE. Furthermore, some problems and solutions we met are described.
Keyword:NanoTime,Signal Integrity,Aggressor,Victim,Crosstalk
1. 概述
随着工艺的进步,集成电路互连结构日趋复杂,电流密度不断 增大,导致互连线上的寄生效应变得越来越严重。互连线成为 决定电路性能和可靠性的决定因素。当工艺发展到90nm及以 下,串扰引起的延迟已经占据总延迟的25%以上,各种纳米效 应给传统的时序分析带来极大挑战。
1.1 串扰的产生
任何两根相邻的导线间都存在耦合电容,当一根线因耦合电容的存在而影响另一根线的信号完整性时,我们称这种状况为串 扰(crosstalk)。其中被影响的线叫受侵线(Vict-net),施加 影响的线叫施侵线(Aggr-net)。由于串扰影响是相互的,所 以施侵线同时也是受侵线,受侵线同时也是施侵线,只是根据 分析对象的不同角色不同而已。
随着工艺的进步,晶体管尺寸不断缩小,金属层逐渐增多,互 连线宽度和间距也随之缩小。为了便于分析,我们将互连线等 效成电容模型,如图1.1所示。

图1.1互连线电容等效模型
根据平行板电容器公式
可以得知:线间距减小,耦合电容 (Cc)增大。与此同时,线宽减小使得互连线对地电容(Cs) 减小,这些变化使得耦合电容引起的延时在总延迟的中的比例 日益攀升。
通常情况下,除了电容串扰,导线间也存在电感串扰。电感串 扰与电容串扰很相似:在终端会产生短暂脉冲,在近终端会产 生长信号。典型的串扰都是相邻线之间的耦合,同时存在电感 串扰和电容串扰两部分,通常情况下,电容串扰占主导地位。 电感串扰不在本文的讨论范畴。
1.2 串扰的影响
串扰的危害很大,由于两条线间的耦合电容的影响,Aggr-net 可能引起Vict-net上出现不可预知的逻辑变换,破坏Vict-net上 的信号完整性,进而导致逻辑失灵。互连线间的串扰从影响效 果上来看,可分为两种:一种是对延迟上的影响,一种是噪声上的影响。
对于延迟上的影响,串扰主要影响逻辑转换时间,即Transition Time。如图1.2所示,A、C为Aggr-net,B为Vict-net,其中 A、B的Transition方向相反,B、C的Transition方向相同。从图 中不难看出,当Aggr-vict的Transition方向相同,推迟了 Vict- net信号的逻辑转换时刻;当Aggr-vict的Transition方向相反的时 候,提前了 Vict-net信号的逻辑转换时刻。这种因为Aggr-Vict对 的Transition方向异同而产生的slowdown/speedup现象会导致时 序电路因setup/hold不满足时序要求而发生逻辑错误。

图1.2 串扰在延迟上的影响
对于噪声上的影响,串扰主要是引起某一稳态下Vict-net的毛 刺或错误的逻辑跳变。在Aggr-Vict中,如果Aggr-net因逻辑变 换,使得Vict-net在某一稳态下发生毛刺甚至是错误的逻辑跳 变,这些因互连线间的耦合效应导致的毛刺或跳变我们统称为 噪声,如图1.3所示。

图1.3串扰在噪声上的影响
1.3 解决与对策
在数字逻辑设计中,无论是综合还是定制,传统的仿真分析工
具都存在各自的优势和不足。
SPICE的精准最高,但是它存在多激励、耗时长,覆盖率低的 弱点。尤其在工艺进入90nm及以下,日益增加的逻辑规模和设 计复杂度更加显现了SPICE的局限性。
PrimeTime是一款基于门级的STA仿真工具,它通过调用 leafcell的时序模型,可以进行快速的时序分析,具有精度高。速度快、覆盖率高的特点。由于PrimeTime是一款基于门级的 静态时序分析工具,所以对于定制电路的时序分析存在不足。
NanoTime是Synopsys推出的一款基于晶体管级的STA仿真平 台,对定制/半定制数字逻辑时序分析存在优势,分析精度与 SPICE相近。相比早期的PathMill来说,NanoTime提供更高的 精度、速度以及与PrimeTime等工具的兼容性。由于NanoTime 的计算是基于Spice Model各项参数的计算,随着设计规模的 增大,计算量呈指数增长,所以分析规模对分析速度存在很大 影响。
综上所述,各种时序分析工具都存在着自身的优势和不足,如 何通过实现工具间的优势互补来高效解决定制/综合的混合设计 方法中的时序分析问题,显得格外重要。
2. 基于NanoTime静态时序分析方法
2.1 NanoTime基本流程及精度对比
2.1.1基本流程
NanoTime分析流程分为5个阶段,在每个阶段中,用户须提供 相应的数据和指令。随后NanoTime检查每条指令的语法的正 确性和可用性。每个阶段都以一个命令作为结尾,该命令反映 该阶段指令和设置的完成情况。每个阶段只有这却完成才能进 入下一个阶段,而且这5个阶段必须按照顺序执行,具体如下:
Netlist Phase:读入并link设计数据,包括Netlist,Timing Model,Library,SPICE Model和其他文件。该阶段以link_ design命令结尾。执行link_design命令的时候NT将设计数据载 入到NanoTime的“内存”中。
■ Clock propagation and Topology Phase:在该阶段可以定 义时钟和NanoTime不能自动识别的拓扑逻辑结构。该阶段以 check_topology命令结尾,传播时钟并识别结构。
■ Timing constraint specification phase:该阶段需要定义用于 NT分析的其余参数:Input/Output时序约束,时序例外,操 作条件以及寄生参数等,该阶段以check_design命令结尾, 检查时序的一致性。
■ Path Tracing and simulation phase:执行trace_paths命令、 使用extract_model命令提取模型或characterize_context命令 提取设计特征内容的时候,NanoTime开始执行时序分析。
■ Analysis Reporting Phase:产生分析报告。可以使用report_ paths和report_constraint命令产生所需报告。
2.1.2与HSPICE/PrimeTime的分析精度对比
为验证NanoTime的分析精度,我们搭建了10级BUFFER与2级反相器串联的仿真电路,如图2.1所示:
![]()
图2.1 10级buffer + 2级反相器
本实验leafcell单元版图排列紧密,互连线短,分析结果,见表2.1:

表2.1 10级BUF+2INV精度对比结果
由表2.1可以看出,NanoTime的晶体管级分析精度与PrimeTime更加接近SPICE的结果,一般可控制在5%以内。
2.2 NanoTime信号完整性分析基本原理
串扰延迟分析是一个迭代过程,通过多次迭代计算、多次的 Path Tracing过程,获得更加精确的结果。
2.2.1 ATW概念
首先,介绍一下ATW,即Arrival Timing Windows。NTSI分析 时,寻找每个Aggr-net和Vict-net最早/最晚的到达时间(Arrival Time),并且为Aggr-net和Vict-net分别定义一个时序窗口。 NTSI认为串扰影响仅发生在Aggr-net和Vict-net的时序窗口重 叠的时候。如图,显示了时序窗口重叠的状况。例中,受侵线 V1与施侵线A1耦合。2ns~6ns为A1的ATW,5ns~9ns为V1的 ATW。由于二者的ATW发生重叠,NTSI认为存在耦合效应,将 计算二者间的耦合影响,即串扰延迟。

图2.2 施侵线与受侵线逻辑转换示意图
2.2.2迭代过程
首次迭代计算,NTS并不考虑ATW是否重叠,而是认为 Transition可以发生在任何时刻,从比较保守的模型中快速得到 近似的串扰延时并进行分析。也就是说,NTSI假设每条Aggr- net在Vict-net的影响都存在一个最差情况(slowdown或者 speedup)。这样做的目的是可以快速获得最差情况延时值以 便NTSI选择用于下一次迭代分析的nets。
在接下来的PTI(Path Tracing Iterations)过程中,NTSI开 始考虑Transition可能发生的时刻、Transition方向(Rising或 Falling)、移除因ATW不重叠而不会发生串扰延迟影响的nets 等。经过这样的筛选和判断,迭代结果较初次计算的最差情况 减少结果的悲观程度,也更加为合理和精准。
每次PTI后,NTSI基于当前分析结果,重新选择用于下一次PTI 的nets。NTSI会重新选择存在ATW重叠或因耦合电容过大而要 求修正的Aggr-Vict进行计算。重选Aggr-Vict后,NTSI针对这 些带有耦合电容的nets重新进行仿真、计算以得到更加精确的 延迟结果。而其他没有被选中的Aggr-Vict对,NTSI会将前一次 迭代的延迟结果保留到数据库中。每次PTI过程后,延迟值都会 被重新迭代的结果改变,并且ATW也会因重选而有新的变化。 这些变化可能引起不同的路径被作为Worst-Case路径报出。
2.3 NanoTime完整性基本分析流程
NTSI分析基本分析流程与正常的NT分析流程基本相同:在流程 的开始阶段,如:读入网表,link设计,时序约束,拓扑识别 等等,这些步骤都与正常的NT分析流程相同。对于NTSI分析来 说,主要的不同就是需要设置si_enable_analysis变量为true(默 认是false),并且在使用read_parasitics命令读入寄生参数的时 候,需要添加-keep_capacitive_coupling选项,以保留寄生参数 中耦合电容信息。NanoTime在执行check_design命令的时候开 始执行串扰延迟分析(Crosstalk Delay Analysis)。

图2.3 基于NanoTime 的信号完整性分析流程
NanoTime SI分析基本步骤,如图2.3所示:
■ 设置变量si_enable_analysis值为true(默认是false),开启 Crosstalk Dealy分析功能,此步骤必须在link_design前设置。
■ 读取寄生参数,比如:SPEF、DSPF等,需要在使用read_ parasitics命令读入的时候加入-keep_capacitive_coupling选 项,以保留带有耦合电容的寄生参数。
■ 自定义哪些nets是否进行串扰延迟分析(可选)。 ■ 自定义决定串扰延迟分析速度和精度的参数,如迭代次数、可忽略的电容阈值等(可选)。
一般来说,NTSI分析至少运行一次trace_paths命令。也可以 进行多次分析,以得到更加精确的结果。此外,也可以使用 continue_trace命令进行额外的路径跟踪迭代(PTI)。
3. 基于NanoTime的信号完整性分析 示例
3.1 模块级互连线间的信号完整性分析
版图设计中,最常见的是紧密相连的标准单元,这里面的互联 线层数较低,连线较短,线间距小,关系错综复杂。通过对这 样的电路结构进行仿真分析,反映出发生在BLOCK内部的信号 的完整性情况。
如图3.1所示电路,我们人采用10级buffer与2级反相器的串联 组合形式,如图3.1所示,版图紧密排列,如图3.2所示。
![]()
图3.1 10级buffer + 2级反相器电路图

图3.2 10级buffer + 2级反相器版图
本实验抽取带有耦合电容寄生参数,分别使用HSPICE, NanoTime SI,PrimeTime SI分别进行分析,结果如表3.1所 示,结论如下:
■ NanoTime SI晶体管级的分析结果较门级仿真结果,更加接 近SPICE的结果;
■ NanoTime SI分析结果与HSPICE相比一般可以在5%以内, 但速度上有很大提升;

图3.2 10级buffer + 2级反相器版图
3.2 顶层长互连线间的信号完整性分析
■ 对于SoC层来说,顶层互连存在较高金属层、互相耦合的较 长互连线。针对此种现象本实验搭建实验模型如下:
实验采用5级buffer串联的电路模式,每级buffer间距为1000u, 采用Metal8进行走线,如图3.3所示。

图3.3 顶层5级buffer串联(间距5000u,M8走线)
除此之外,我们还考虑到周边环境的影响,所以将此buffer链
进行如下三种组合:单边、双边、四边,如图3.4所示。
■ 单边干扰:两条路径分别采用五级buf串联,每一级之 间间距为1000u,目标线(红色)采用M8走线,线宽为 0.28u,线间距为0.28u。
■ 双边干扰:两侧M8走线,目标线采用M8走线,线宽均为 0.28u,线间距均为0.28u。
■ 四边干扰:两侧M8走线,上部M10走线,下面M6走线,目 标线采用M8走线,线宽均为0.28u,线间距均为0.28u。

图3.4 串绕分析模型示意图
本实验对各种影响情况下的buffer链进行NTSI和SPICE分析,结果见表3.2:

表3.2 多边干扰模型的信号完整性分析结果对比
由上表可以看出:随着干扰模型的复杂性增加,NanoTime的信号完整性分析结果较SPICE的分析结果偏差较大。
3.3不同规模电路的信号完整性分析示例
在本文的3.1节与3.2节,分别采用具有代表性的电路模型对 NanoTime的仿真精度和误差范围进行了评估。本节通过对不 同规模的电路进行常规NanoTime分析和NanoTime信号完整性 分析,并对分析结果作了对比,如表3.3所示。

表3.3 不同规模NTSI与NT常规分析结果对比
表3.3中TESTIFY_NTSI模块为10级buffer+2级invert串联组合电 路,TEST_SQRT_CORE为约400门的16bit开平方电路模块。 SoC为芯片级电路模型。
由表3.3所示对比数据,可以看出:
■ 实际电路的NanoTime信号完整性分析结果,并没有3.2节中的实验结果那么悲观,即便是复杂的芯片级的设计;
■ 信号完整性分析与常规分析的偏差占总延迟的比例并不随着规模的增大而增大,而是取决于芯片信号完整性的修复力度。
■ 一般来说,不考虑多边干扰模型中的极端情况,NanoTime信号完整性分析较常规的NanoTime分析误差范围较小。
3.4 迭代次数的影响
NTSI中提供了几种定义迭代退出条件的变量,其中变量si_ xtalk_exit_on_max_ iteration_count定义了迭代的最大次 数,默认是最多迭代3次。通过针对三种不同规模的电路分 别进行不同迭代次数的NTSI分析,迭代次数与收敛情况示意 图如图3.5所示。

图3. 5 迭代次数与收敛情况示意图
说明如下: ■ 首次迭代,NTSI不考虑ATW是否重叠,而是模型中快速得到近似的串扰延时值,考虑的是最悲观的情况,所以结果悲观程度较高。
■ 接下来的迭代,开始考虑ATW窗口重叠,移除因不重叠部分的ATW窗口,减少悲观程度,分析逐渐收敛。
■ 3次迭代(默认)基本上可以达到预期减少悲观程度的目的,延时基本收敛。本实验最终收敛是在第5次迭代,但此时差异很 小,但是耗时较长,所以一般来说3次迭代可以作为一个较好的折中点,如若需要更高精度可以尝试5次迭代计算,同时消耗更多 的runtime。
4. 结论及建议
与其他静态时序分析工具相比,NanoTime基于晶体管级分析,同时兼具门级分析的功能,能提供更精确的分析结果,更丰富灵活 的配置命令,同时也和其他时序分析工具(PathMill、PrimeTime、SPICE等)保持了很好的兼容性,是一款针对定制电路的优秀 的静态时序分析工具。
当集成电路工艺发展到90nm之后,NanoTime提供了强大的信号完整性分析能力,保证了设计分析中对各种纳米效应、耦合效应 影响的评估和处理,是90nm之后工艺芯片信号完整性分析不可或缺的解决方案和技术手段。
NanoTime也有其不足之处。由于NanoTime基于晶体管级进行时序分析,所以随着设计规模的扩大,晶体管参数的复杂化以及分 析数据量的巨增也使得时序分析耗时的快速增长,如何合理划分模块规模、进行有效的层次化分析以及协同其他时序分析工具进 行混合分析方法显得尤为重要。
5. 致谢
感谢Synopsys公司提供的这次交流机会!
感谢同事唐培松、叶晨在日常工作中给予的理解、关怀和指导! 感谢同事赵信提供了部分的实验数据和思路!
6. 参考文献
1. 《NanoTime and NanoTime Ultra User Guide》 VersionD-2010.06, June 2010.
2.Lin Wei, Yao Gang, Ji Bingwu, Zhao Tanfu, 《Transistor Level STA and SI Analysis with NanoTime on Custom Digital Blocks》, SNUG 2009.
3. Shi Huafen , 《Transistor Level STA with NanoTime》, SNUG 2010.
4. Ye Chen, Tang Peisong , 《Transistor Level STA and Modeling for Deep Submicron SoC》, SNUG 2010.



