随着半导体工艺技术使晶体管的特征尺寸不断缩小,标准单元表现出越来越多的非线性行为。目前用以捕获标准单元行为的特征和建模技术已经依赖于以synopsys非线性延迟模型(nldm) 作为实际标准的二维和三维查找表。新的半导体技术以及不断增加的芯片复杂性迫使设计者对不同的电压和温度组合执行的分析次数逐步上升。其结果是,库开发者必须在多个工作点描述标准单元库,并为一个给定单元库发表众多个不同版本。最近发布的synopsys可升级多项式延迟模型(spdm)以多项方程式取代了查找表,因为这些方程式可限制因多个工作点分析引发的数据爆炸。spdm不仅减少了cpu执行静态时序分析的时间,还同时保持了精度。
什么是spdm?
synopsys首倡的spdm是为了使半导体供应商能够开发和公开销售基于多项多次方程式的库,这些方程式一般是电压、温度、负载电容和输入斜率(slew)的函数。
应用这种方法,存储器的利用率得到显著提高(因为与查找表的数值相比,需要存储的多项式系数相对较少),而且只需要一个库,而不是每一种工作条件都需要一个完整的库。
spdm使用多维多项式为单元延迟和其它电参数建模。对于不同的输入斜率、输出电容、温度和电压,它都利用单一标准形式的方程式,而不是专用的方程式,从而简化了建模。预定义的可升级方程式语法使计算效率达到最优化。门级工具能利用spdm对于电压和温度函数的直接解,在与单个spdm库的单次“会话”中精确地执行多工作点分析。
silicon metrics的spdm解决方案和分析工具
silicon metrics开发了一个创新的多维曲线拟合器(mdcf),用以有效地收集在多种工艺、电压和温度(统称为pvt)条件下的表征数据集合。mdcf智能化地生成方程式系数,然后经后处理将曲线拟合(curve-fit)数据转变成spdm liberty库的格式。
对于每一个计算的多项方程式,mdcf可以通过配置来平衡精确度、存储器容量和cpu运行时间之间的关系。这一灵活性允许mdcf算法动态地、智能地选择最佳的方程式次数组合。在每个构造的基础上可以生成最理想的系数,它们服务于输入变量的数据集合,并有利于整个模型的精确度和效率。
spdm生成和验证
单元库是从用silicon metrics的siliconsmart cr工具通过晶体管网表的特征化搜集到的数据中产生的。每个synopsys nldm liberty库都是针对某个特定的pvt工作点而发布的。此外,siliconsmart cr内的模型生成器能够创建带或不带最优化数据的库,这些数据是从过采样的spic表征数据库中精简得来的。mdcf直接访问silicon smart cr数据库或导入多个synopsys nldm liberty库,然后执行智能化的曲线拟合,以生成synopsys spdm liberty库。所有synopsys liberty库都由synopsys库编译器编译成二进制库格式,以便与synopsys 的primetime或设计编译器共同使用,如图1所示。
我们以这些synopsys工具作为目标,在其中对spdm库进行评估,并将它与nldm库进行比较。这些目标工具在每一个pvt工作点执行分析,以验证正确的功耗、结果的精确度、cpu运行时间和存储器利用率。
spdm与spice的比较(单个pvt的结果)
通过检查一个nand(与非)单元的spdm结果,我们可以检验silicon metrics的解决方案。而那个nand单元是由siliconsmart cr在单个pvt工作条件下以及由mdcf的曲线拟合描述的。图3给出了过采样a-->z弧以及nldm 单元电压上升的 20x20 表格数据的结果。这个单元弧的输入变量分别是输入摆动(tin)和输出负载电容(cload)。工作条件是2.7v、125 oc以及最恶劣的边缘工艺。在每个变量的最大次数被限制为不能大于5的情况下,tin和cload变量的最佳次数选择是(55)。
在图2(a)中,用spdm模型从synopsys primetime分析中获得的测量延迟点似乎