一种用于仿真集成电路设计的系统技术方案

技术编号:5119920 阅读:207 留言:0更新日期:2012-04-11 18:40
用于仿真集成电路设计的系统,包括:用于接入最优化阶层式网表的装置;用于决定所述最优化阶层式网表中节点的节点级数排序的装置;用于根据所述节点级数排序,以静态电流驱动方式并接着以动态电流驱动方式划分所述最优化阶层式网表的电路的装置;用于动态合并最优化的中间节点级数,并根据至少一个经合并的中间节点级数重新划分所述电路的装置;用于根据所述重新划分建立阶层式数据结构的装置;用于利用所述阶层式数据结构执行求解与整合,以产生经级数排序的阶层式引擎的装置;用于对所述经级数排序的阶层式引擎执行分析的装置;以及用于根据所述分析输出所述集成电路设计的仿真数据的装置。采用此系统不需要伴随具有准确度损失的线性网络减缩。(*该技术在2019年保护过期,可自由使用*)

【技术实现步骤摘要】

本技术与复杂、大型的集成电路设计有关,尤其涉及一种用于仿真集成电路 设计的系统。
技术介绍
现今的集成电路(IC)设计由于其额外所需功能而逐渐变得复杂;此外,越来越小 的技术节点(例如低至45nm以下)所需要的设计修改在IOOnm处是不必要的。因为这些 原因,需要对集成电路进行准确的仿真,以确保适当的电路性能。线性网络减缩(LNR)提供了简化的模型来趋近电路行为,其可在仿真期间使用。 的确,如果没有LNR,一般集成电路设计的目标矩阵如此庞大以至于后仿真电路进行集成电 路(DC)分析(其决定电路的运作点,例如定义电路中动态组件的起始条件(time = 0)与 TR分析(其使用一瞬变/时域,开始于time = 0并经过复数次循环))时极为缓慢。但是, LNR在目前技术节点(如在45nm)上有明显的问题。如下所述,这些问题会产生明显的不准 确性,甚至是不稳定性。可利用由节点与边缘所构成的图表来表示电路,其中边缘是组件的有效模型,而 节点连接了这些边缘。图IA说明了一种简单的三节点电路图,其具有节点A、B与C、以及 边缘Rab、Rbc与Rac。图IB说明了一种等效的四节点电路图,其可利用Δ-Y(delta-wye)转 换而生成,其中该四节点电路包括节点A、B、C、D以及边缘Rad、Rcd与Rbd。特别是,可将克西荷夫定律(Kirchoff laws)应用到节点/边缘图。例如,克西荷 夫的电流定律(KCL)证明流出及流入任何电路节点的电流的代数和为零,因此,参照图IA 与图1B,流入节点B的电流与流出节点B的电流相等;KCL因此也称为节点等式。另一方 面,克西荷夫的电压定律(KVL)证明了沿着任何封闭电路的电位差异(即电压)的方向和 必为零,因此,由图IA中节点A、B、C所形成的回路的电压和等于零;KVL因此也称为回路等 式。仿真是尝试在每一个时钟周期对KCL及KVL两等式求解。SPICE (Simulation Program with Integrated Circuit Emphasis)在一运作 处有效建置了一种线性模型,并接着建构了一矩阵等式,例如Ax = b (其中A为表示图表的 入射矩阵,χ代表节点电压、支路电压及支路电流的未知数,而b为理想来源所建置的一已 知向量行,如图2所示)。矩阵A可包括KCL(线性)等式、KVL(线性)等式、以及I-V(电 流-电压)(非线性)等式。注意改进节点分析法(Modified Nodal Analysis,MNA)可用于 取代图2中所示的矩阵等式。此MNA方法已在例如Chung-Wen Ho等人所著的“TheModified Nodal Analysis to Network Analysis,, (IEEE Transactions On CircuitsAnd System, VOL. CAS-22, No. 6, June 1875)中进行说明。特别是,MNA方式也包括矩阵等式,其具有与 图2中所示相同的缺点。电路仿真领域中的技术人士了解各种矩阵等式,因此不在此多作 说明。出于简要性的原因,图2所示的矩阵等式仅用于解释之用。—般而言,线性等式高于第一阶的微分等于零,而非线性等式具有的高于第一阶 的非零微分,如泰勒展开式(Taylor series)所示,其说明如下以供参考,且为仿真领域中技术人士所熟知。X^-f^(x-a)"其中η !表示η的阶乘,而f (η)表示在点a处估计的f的第η微分(f的第0微 分定义为f)(其中(x-a)°与0!都定义为1)。为了求解Ax = b,一种直接的方式是χ = Α—、。电路仿真的另一种更为典型的方法是需要收敛的反复迭代(iterations)方法。不幸的是,在矩阵中混合线性与非线性等式会产生线性等式所不需要的矩阵计 算,即非线性等式的求解需要比线性等式的求解更多次的反复迭代。若矩阵中存在非线性 分量,线性分量也会进行与最高阶的非线性分量(即具有最高对应微分以准确描述其行为 的非线性分量)同样次数的反复迭代。由于单一矩阵以及在所述矩阵内的线性/非线性混 合与其所需的反复迭代,一般使用SPICE以仿真具有相对较少电路的集成电路(例如具有 低于100000个闸极的集成电路)。快速SPICE是一种用于加速大型、高复杂性集成电路(例如具有高于一百万个闸 极的集成电路)的仿真技术。为实现此目标,快速SPICE将一设计区隔为多个部分,以使用 多个矩阵。示例的快速SPICE执行说明于图3A与图;3B中。举例而言,图3A说明了一种传 统平坦结构,其中包括区域1、2与3。在此例中,根据电路拓扑与下方的组件实体将原始矩 阵分为多个弱耦接区域,其以半独立方式进行求解。电路区域之间的耦接则以矩阵求解之 外的各种技术加以重制。Synopsys, Inc.所提供的示例仿真产品包括NanoSim 以及ΧΑ 。 图3Β说明了一种示例、简化的阶层式结构,其中次电路1包括次电路2与3,而次电路3包 括次电路4。在此例中,矩阵求解者尝试利用矩阵结构内的重复态样(其反映下方电路的阶 层式设计)。Synopsys, Inc.所提供的利用此一阶层式结构的示例仿真产品包括HSIM 。 不佳的是,对于每一种执行来说,在一个区域/次电路中混合线性/非线性组件及节点可产 生明显的不准确性(如单一矩阵);此外,在区域/次电路之间会发生耦接,因而需要增加 了仿真的不准确性的其他的模型(与仿真时间)或风险。
技术实现思路
本专利技术要解决的技术问题是提供一种用于仿真集成电路设计的系统,以解决现有 技术中仿真不准确的问题。本技术采用的技术方案是提出一种用于仿真一集成电路设计的方法。在此方法中,可决定一网状列表中节 点的一节点级数排序;接着可根据所述节点级数排序来区隔所述网状列表的电路;节点级 数可定义为与一预定微分比例的最大值(例如I (V)对V的微分(就DC静态行为而言)或 基于I (V,dV/dt. t)对dV/dt的微分比率(就瞬变动态行为而言))成比例者,由其可特征 化与所述节点连接的组件。在另一实施例中,预定微分比例可根据二次微分除以一次微分 而得,例如(32//跃2)/(3//狀)Xd11/d(dV/dt、dVV(dI/dV)或(d11/d(dV/dtf VidI/dV)。特别是,此一区隔也可根据每一节点的拓扑与实体而执行。节点的拓扑与实体可 包括节点级数以及其本身节点透过模型与邻近节点之间的耦接,例如在特定偏压(例如0 至VDD)下具有一定义的最大电流的特定晶体管模型。可根据所述区隔建立一阶层式数据结构。在一实施例中,可动态合并中间节点级数以使仿真优化;接着,于一成本函数(其决定具小区域与较低级数的节点级数排序的多 个级数与具有较大区域者之间的交换)下根据一或多个经合并的中间节点级数重新区隔 电路。利用所述阶层式数据结构进行求解与整合,以产生一经级数排序的阶层式引擎。可 对所述经级数排序的阶层式引擎进行分析,此时,可根据所述分析输出所述集成电路设计 的仿真数据。在一实施例中,电路的区隔包括决定电路中节点对之间的耦接。决定耦接可包括 决定两节点之间的传导性;在此例中,所述区隔包括当两节点具有相同级数且所述传导性 大于一预定值时,将所述两节点置放在一相本文档来自技高网
...

【技术保护点】
一种用于仿真集成电路设计的系统,其特征在于,包括:  编程处理器,其耦接以从储存装置接收数据与指令,并将数据与指令传送到所述储存装置,所述储存装置包括:  用于决定最优化阶层式网表中节点的节点级数排序的装置;  用于根据所述节点级数排序,以静态电流驱动方式并接着以动态电流驱动方式划分所述最优化阶层式网表的电路的装置;  用于动态合并最优化的中间节点级数,并根据至少一个经合并的中间节点级数重新划分所述电路的装置;  用于根据所述重新划分建立阶层式数据结构的装置;  用于利用所述阶层式数据结构执行求解与整合,以产生经级数排序的阶层式引擎的装置;以及  用于对所述经级数排序的阶层式引擎执行分析的装置;  其中该编程处理器配置以使用该用于决定节点级数排序的装置、该用于划分所述最优化阶层式网表的电路的装置、该用于动态合并最优化的中间节点级数的装置、该用于建立阶层式数据结构的装置、该用于执行求解与整合的装置以及该用于执行分析的装置,来执行所述集成电路设计的仿真;  其中该编程处理器配置以执行所述集成电路设计具有相同节点级数的区域的平行分析,以及  其中该编程处理器配置以输出所述集成电路设计的仿真数据,所述仿真数据是基于所述分析。...

【技术特征摘要】
...

【专利技术属性】
技术研发人员:朱宁嘉詹姆斯拜尔彭知识
申请(专利权)人:新诺普系统公司
类型:实用新型
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1