可重复电路仿真的方法和系统的制作方法

文档序号:6611557阅读:249来源:国知局
专利名称:可重复电路仿真的方法和系统的制作方法
技术领域
本发明涉及的领域是电子设计自动化,具体而言,是可重复电路仿真的方法和系统。
背景技术
集成电路是由例如电阻、电容、电感器、互感器、传输线、ニ极管、双极结型晶体管(BJT)、结型场效应晶体管(JFET)、金属氧化物半导体场效应晶体管(M0SFET)、金属T半导体场效应晶体管(MESFET )、薄膜晶体管(TFT )等电路元件构成的网络。随着技术的发展,集成电路越来越复杂,需要使用強大的数值模拟程序。例如,电路仿真是集成电路的设计流程中必不可少的环节,它能帮助电路设计人员无需通过昂贵的制造エ艺验证其设计的功能和性能。随着半导体加工技术发展到纳米尺寸,新的仿真方法需要解决纳米级电路设计所固有的新问题。现代集成电路快速发展、更新换代,不断挑战着电路仿真的算法和实现。半导体行业需要EDA软件有能力来分析与动态电流相关的纳米效应,比如稱合噪声(coupling noise)、接地反弹(ground bounce)、传输线波传播(transmission line wave propagation)、动态 倆电流(dynamic leakage current)、电源电压降(supply voltage drop)、器件和电路的非线性行为等。因此,精准的电路模拟和晶体管级仿真已经成为解决纳米设计所面临问题的最有效的途径之一。电子电路仿真器包括美国加州大学伯克利分校(UC Berkeley)开发的面向集成电
路的仿真程序-SPICE (Simulation Program with Integrated Circuit Emphasis)以
及各种增强或衍生版本的SPICE仿真程序。SPICE及其增强、衍生版本将在本文被简称为SPICE电路仿真器或SPICE。SPICE方法认为电路是ー个不可分割的整体。SPICE仿真可以提供对电路行为相当准确的预測。这种预测不局限于个别的子电路,它涵盖整个系统(例如,整个集成电路),因而可以发现、处理全系统范围关于噪声之类的问题。一般的SPICE仿真处理流程,模拟集成电路通常被表示为ー个网表描述的形式。网表是ー种由SPICE语言编写的用于仿真的对模拟电路的电路描述。SPICE网表是包含仿真控制语句的纯结构性语言。其他语言如Verilog-ATM,还具有行为构建的能力。通过结构性网表,连同预定义电路元件,根据特定的电路建模方法,SPICE可以将模拟集成电路据表示为矩阵形式的数学表达(这不是本发明关注点)。非齐次线性微分方程解的维度范围从I到n。线性方程组的n维输入向量被表示为{II,12,..1n}。由输入向量,可以求得线性矩阵的解向量{VI,V2,..Vn}。由解向量,通过电路模型方法,可以得到另ー组输入向量。重复以上计算,直到解向量收敛。一系列的解向量,可以转换输出为波形、测量值或者核查结果,这样工程师就可以通过计算机屏幕检查仿真的結果。
然而,随着集成电路行业的发展,器件尺寸不断减小、互联效应日益増加,SPICE全系统仿真变得越来越困难。一个例子是晶体管沟道长度微米尺寸变化为深亚微米尺寸。由于更小的器件尺寸,电路设计者在集成电路中能够运用电路元件(例如,晶体管、ニ极管、电容)数量呈指数级增长,对应于SPICE矩阵的维数也量级增长,巨大的计算复杂度使得计算不能在有效时间内完成。ー个电路可以表示为瞬间电流分析的大規模离散非线性矩阵。矩阵维数和电路中节点的数目相同。对于瞬态分析,这个巨大的非线性系统需要求解几十万次,这限制了SPICE方法的容量和性能。一般的SPICE方法可以模拟不超过约50,000个节点的电路。因此,对于全芯片设计,SPICE方法不可行。SPICE在实际应用中被广泛应用于单元设计、库生成和准确性验证。相对于传统SPICE,在20世纪90年代初开发的快速SPICE方法(Fast SPICE)在一定精度损失的情况下,有两个数量级以上的容量和速度提升。性能上的提升主要由于使用简化模型、电路划分技术、事件驱动的算法以及对电路延迟的利用。SPICE将电路模型化为节点、元件集,也就是说ー个电路被视为通过节点相连接的各种电路元件的集合。SPICE的核心是所谓的节点分析,通过节点方程(或者电路方程)以矩阵形式表示电路,求解节点方程对电路进行仿真。电路元件被表示为器件模型,产生电路方程的矩阵元素。电路元件的器件模型模拟,比如加州大学伯克利分校开发MOSFET器件SPICE模型,通常以模型方程和模型參数表示在变化偏置电压下的电路元件特性。例如,具有n个端子的电路元件,可以由下述的电流-电压关系建模Ii = fj (V1, . . . , Vn, t),其中 i=l,…,n,Ii表示流入第i个端ロ的电流,Vj (j=l,, n)表示电压或者端ロ j相对于參考端
ロ(例如地)的偏置电压,t表示时间。由基尔霍夫电流定律,流入端ロ n的电流为
权利要求
1.一种计算机实现的方法,用于执行一个电路的多个仿真,包括提供电路的连接、元件、信号活动和统计参数的描述;根据所述电路的连接、元件、信号活动和统计参数的描述解析电路,形成复数个电路分组;根据一组激励执行所述复数个电路分组的首次仿真,产生首次仿真的历史;利用所述首次仿真的历史对所述复数个电路分组执行后续仿真。
2.根据权利要求1所述的计算机实现的方法,进一步包括将所述首次仿真的历史存储于一个或多个处理器的缓冲存储器中,其中首次仿真的历史包括所述电路的连接、元件、信号活动和统计参数的描述以及在所述首次仿真中相应的电路仿真输出。
3.根据权利要求1所述的计算机实现的方法,其中执行复数个电路分组后续仿真中包括根据统计参数和首次仿真的历史的信息选择仿真时间步长;利用所述仿真时间步长仿真所述复数个电路分组。
4.根据权利要求1所述的计算机实现的方法,进一步包括识别统计参数和所述电路仿真输出之间的相关性;利用所述统计参数和所述电路仿真输出之间的相关性执行所述复数个电路分组的后续仿真。
5.根据权利要求4所述的计算机实现的方法,其中,识别统计参数和所述电路仿真输出之间的相关性包括确定所述复数个电路分组的雅可比(Jacobian)矩阵之间的相关性;确定所述复数个电路分组的LU分解矩阵之间的相关性;确定所述复数个电路分组的电荷微分矩阵之间的相关性。
6.根据权利要求1所述的计算机实现的方法,对所述复数个电路分组执行后续仿真进一步包括生成仿真种子,该仿真种子包括统计参数的值的随机组合;根据一个或多个统计参数变化的预定规则排序仿真种子;利用所述复数个电路分组和排序的仿真种子仿真电路;利用一个或者多个统计参数变化的预定规则,检测仿真输出的实质偏差;然后,仿真自适应调节以适应所述仿真输出的实质偏差。
7.根据权利要求1所述的计算机实现的方法,进一步包括修改电路元件实例的一子集;加载(stamping)与元件实例子集变化相关的电路矩阵;并且,利用复数个电路分组和首次仿真的历史进行电路仿真。
8.根据权利要求1所述的计算机实现的方法,进一步包括修改电路的一元件实例的一个或多个统计参数;并且,利用复数个电路分组和首次仿真历史进行电路仿真。
9.用于晶体管动态行为建模的一种计算机程序产品,包括在一台或多台计算机系统运行的存于非临时性介质的一组计算机程序,这样的计算机程序产品包括用于提供电路的互联、元件、信号活动和统计参数的描述的代码;根据所述电路的互联、元件、信号活动和统计参数的描述解析电路,并且生成复数个电路分组的代码;根据一组激励执行复数个电路分组的首次仿真,并且生成首次仿真历史的代码;利用首次仿真历史执行复数个电路分组的后续仿真的代码。
10.根据权利要求9所述的计算机程序产品,进一步包括在一个或多个处理器的缓冲存储器中存储首次仿真历史的代码,其中,首次仿真历史包括首次仿真期间的电路的互联、元件、信号活动和统计参数的描述以及相应的仿真输出。
11.根据权利要求9所述的计算机程序产品,执行复数个电路分组后续仿真的代码包括在统计参数和首次仿真历史的基础上选择仿真时间步长的代码;根据所述仿真时间步长执行复数个电路分组后续仿真的代码。
12.根据权利要求9所述的计算机程序产品,还包括用于确定统计参数和电路仿真输出之间相关性的代码;利用所述统计参数和电路仿真输出之间相关性,执行复数个电路分组后续仿真的代码。
13.用于执行一电路的多个仿真的系统,包括至少一个处理单元,用于执行计算机程序;一个存储器,用于存储电路信息;可重复电路仿真器模块,该可重复电路仿真器模块包括提供电路的互联、元件、信号活动和统计参数的描述的逻辑;根据所述电路的互联、元件、信号活动和统计参数的描述解析电路,并且生成复数个电路分组的逻辑;根据一组激励执行复数个电路分组的首次仿真,并且生成首次仿真历史的逻辑;并且, 利用所述首次仿真历史执行复数个电路分组后续仿真的逻辑。
14.根据权利要求13所述的系统,进一步包括在一个或多个处理器的缓存中存储首次仿真历史的逻辑,其中首次仿真历史包括首次仿真期间的电路的互联、元件、信号活动和统计参数的描述以及相应的仿真输出。
15.根据权利要求13所述的系统,所述执行复数个电路分组后续仿真的逻辑包括在统计参数和首次仿真历史的基础上选择仿真时间步长的逻辑;根据所述仿真时间步长执行复数个电路分组后续仿真的逻辑。
16.根据权利要求13所述的系统,还包括用于确定统计参数和电路仿真输出之间相关性的逻辑;利用所述统计参数和电路仿真输出之间相关性执行复数个电路分组后续仿真的逻辑。
17.根据权利要求16的系统,用于确定统计参数和电路仿真输出之间的相关性的逻辑,包括确定复数个电路分组雅可比矩阵之间相关性的逻辑;确定复数个电路分组LU分解矩阵之间相关性的逻辑;确定复数个电路分组电荷微分向量矩阵之间相关性的逻辑。
18.根据权利要求13所述的系统,其中执行复数个电路分组后续仿真的逻辑进一步包生成包括统计参数的值的随机组合的仿真种子的逻辑;根据一个或多个统计参数变化的预定规则,排序仿真种子的逻辑;使用所述复数个电路分组和所述排序的仿真种子进行仿真电路的逻辑;利用一个或者多个统计参数变化的预定规则,检测仿真输出的实质偏差的逻辑;仿真自适应调节以适应所述仿真输出的实质偏差的逻辑。
19.根据权利要求13所述的系统,还包括修改电路元件实例的一子集的逻辑;加载与元件实例子集变化相关的电路矩阵的逻辑;利用所述复数个电路分组和首次仿真历史进行电路仿真的逻辑。
20.根据权利要求13所述的系统,还包括修改所述电路的一元件实例的一个或多个统计参数的逻辑;利用所述复数个电路分组和首次仿真历史进行电路仿真的逻辑。
全文摘要
一种可重复电路仿真的方法和系统。在一个实施例中,已经计算机实现的电路多重仿真方法包括供电路的互联、元件、信号活动和统计参数的描述;根据所述电路的互联、元件、信号活动和统计参数的描述解析电路,生成复数个电路分组;根据一组激励执行复数个电路分组的首次仿真,并且生成首次仿真历史;利用首次仿真历史,执行复数个电路分组后续仿真。
文档编号G06F17/50GK103034750SQ20121037183
公开日2013年4月10日 申请日期2012年9月28日 优先权日2011年9月30日
发明者刘志宏, 布鲁斯·麦卡费, 杨钊志 申请人:济南概伦电子科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1