一种基于子波逼近和自动压扩的模拟电路自动建模方法

文档序号:7130590阅读:186来源:国知局
专利名称:一种基于子波逼近和自动压扩的模拟电路自动建模方法
技术领域
本发明属电子技术领域,具体涉及一种模拟电路自动建模方法。
背景技术
集成电路已发展到可以将包含10亿以上器件的电子系统集成在一块芯片上,即系统芯片SOC。针对数以百万计的大规模电路,如何在合理的时间内,快速准确地模拟和验证其设计的正确性已成为系统芯片SOC设计的瓶颈问题。据统计,SOC芯片模拟验证的时间已占到整个设计时间的70%。
目前越来越多的SOC芯片是数模混合的,随着混合信号电路的不断进步,其中模拟电路部分的电路结构日益复杂,并呈现多样化的趋势。由于模拟电路绝大多数是非线性电路,其瞬态、稳态和频谱分析所花费的时间数以月计,这使得仅占芯片面积20%的模拟电路的设计时间要占整个SOC芯片设计时间的80%。为了缩短电路的设计周期,并且使得已有的电路模块设计能够更容易的被重复利用,在电路的设计、模拟和验证中,建立精确的模拟电路的行为级模型,对模拟电路进行快速而准确的行为级模拟,变得日益重要。
在自顶向下的电路设计过程中,行为级模拟能帮助设计人员在设计早期评估设计折中并快速确定系统结构。设计者通过高度抽象的电路行为级模型来考察系统的不同结构,可以在较短的时间内检测和验证不同的设计决策是否能满足系统设计要求。在自底向上的电路设计中,对包含大量模拟元件的整个模拟集成电路进行晶体管级模拟,无论在时间上还是内存占用上,通常都是无法接受的。在这一情况下,建立考虑了电路非理想效应的行为级模型,并进行系统级模拟,将可以提供验证系统性能所必需的信息。
在互连线分析中,模型降阶方法[1]能够有效地生成复杂线性动态电路的降阶传输函数。但目前该方法还无法实际应用于非线性电路建模[2]。
在实际的模拟电路行为级建模方法中,非线性函数逼近是其中的一个关键问题。现有的逼近非线性函数的方法有两种基于理论分析的公式方法[3]和数据拟合方法[4-6]。前者通过对模拟电路内部非理想因素的手工推导,得到其显式方程表示,但这类方法一般只适用于简单电路结构和器件模型的情况。相比而言,第二种方法通过简单模型来精确表示电路模块的非理想输入—输出函数,更为灵活和有效,这类方法包括全局支撑的多项式展开[4]和傅立叶级数展开,以及局域支撑的子波逼近[5]。根据[5]的结果,子波基在处理电路奇异性和控制误差分布方面,优于传统的全局支撑基函数。此外,[5]中采用的非线性压扩算法能对模型误差进行连续调整,这正是模拟电路建模所需要的。但是,[5]中给出的压扩函数是一种特定的对数函数,只适用于特定的电路模块。如何根据任意模块的输入—输出函数自动建立压扩函数,对实现任意模拟电路模块的自动小波建模方法至关重要,但目前此类方法在国际上还未见报道。
参考文献[1]R.W.Freud,Reduced-Order Modeling Techniques Based on Krylov Subspaces and TheirUse in Circuit Simulation.Bell Lab.,http//cm.bell-labs.com/cs/doc/98,1998. J.Phillips,Projection Frameworks for Model Reduction of Weakly Nonlinear Systems.Proc.ofIEEE/ACM DAC 2000,2000,1184. A.Yufera and A.Rueda,Studying the Effects of Mismatching and Clock-Feedthrough inSwitched-Current Filters Using Behavioral Simulation.IEEE Trans.on CAS-II,1997,44(12)1058. E.Schneider and T.Fiez,Simulation of Switched-Current Systems.Proc.of IEEE ISCAS’93,1993,21420. X.Li,X.Zeng,D.Zhou and X.Ling,Behavioral Modeling of Analog Circuits by WaveletCollocation Methods.Proc.of IEEE/ACM ICCAD 2001,2001,165. H.Liu,A.Singhee,R.Retenbar and L.R.Carley,Remember of Circuit PastMacromodeling by Data Mining in Large Analog Design Spaces.Proc.of IEEE/ACM DAC2002,2002,1437.

发明内容
本发明的目的在于提出一种通过自动建立压扩函数,对模拟电路进行自动行为级建模的方法。
本发明提出的对模拟电路进行自动行为级建模的方法,是一种基于自动建立压扩函数和子波逼近的方法,设一个单输入单输出模拟电路模块的非线性输入—输出函数可用(1)式表示y=f(x) (1)其中,x表示输入,其定义域[xA,xB]称为输入域;y为输出,f(x)为非线性函数,具体建模步骤如下步骤1、构造压扩函数根据电路模块的输入—输出曲线自动构造压扩函数设p(x)=|f′(x)|+Δ (2)g(x)=xA+1G∫xAxp(t)dt-------(3)]]>其中f′(x)为f(x)的导数,Δ是一个足够小的正数,以保证p(x)>0,从而使g(x)为单调递增函数,G为常数,定义为G=1xB-xA∫xAxBp(t)dt-------(4)]]>以保证g(x)的值域为[xA,xB],g(x)称为压扩函数;步骤2、对原系统进行压扩为了对模型误差进行连续调整,需要对函数(1)进行压扩,方法如下设xC=g(x),并定义fC(xC)≡f(g-1(xC)) (5)将xC=g(x)代入(5)式的右端,可以得到fC(xC)=f(x) (6)fC(xC)即称为压扩后的输入—输出函数,其定义域xC∈[xA,xB]称为压扩域;通过求导,可以推导得式(7),说明fC(xC)的导数是原函数导数的1/g′(x)倍,即通过压扩可以控制原函数导数的分布,进而控制建模误差的分布。
dfC(xC)dxC=df(x)dxC=df(x)dx·dxdxC=f′(x)g′(x)------(7)]]>步骤3、对压扩后的系统进行子波展开
根据子波逼近方法,函数(6)可以按照(8)式用子波基展开[3]yC=fC(xC)=Σi=1Nciwi(xC)------(8)]]>{wi(xC)|i=1,2,…,N}是使用的N个子波基函数这些基函数及其个数N通过子波自适应逼近方法根据电路输入输出曲线自动选定,{ci|i=1,2,…,N}是对应的子波系数,可通过配置方法解得。
这样就得到了该电路模块的行为级模型。
发明原理的特点是1、首先根据模块的输入—输出曲线自动构造压扩函数,这一过程并不针对特定的电路结构或模块,且无须人工干预和调整,可自动进行。
2、利用得到的压扩函数对模块的输入—输出曲线进行压扩,以对模型误差进行连续调整,这样不但有利于降低模型误差,还有利于减少子波逼近中使用的基函数个数。
3、采用子波方法对压扩后的系统进行展开,利用子波优良的数值逼近特性获得高精度的模型。
本发明具有如下优点1、方法的通用性和自动性这一压扩方法的压扩函数g(x)是根据电路模块的输入—输出函数生成,并非针对特定的电路结构或模块,因而该方法具有通用性,而不仅仅局限于某些特定电路模块。同时,整个模型化过程无须人工干预和调整,可以自动进行。
2、模型的高精度和精简性在子波逼近前对模块的输入—输出曲线进行压扩,有利于降低模型误差,并减少子波逼近中使用的基函数个数。同时由于子波逼近具有较快的收敛速率,利用这一优良的数值特性,该方法得到的模型具有较高的精度并保证了模型的精简性。


图1四阶Butterworth滤波器。
图2开关电流延迟单元电路图。
图3电路输入—输出曲线。
图4自动生成的压扩函数。
图5压扩后的输入—输出曲线。
图6滤波器模拟结果。
具体实施例方式
下面通过具体实施例进一步说明本发明。
对图1所示的开关电流四阶Butterworth滤波器进行行为级建模和模拟。图1所示的四阶Butterworth滤波器包含四个前向Eular积分器,而每个前向Eular积分器包含两个图2所示的开关电流延迟单元。
首先对该开关电流延迟单元进行行为级建模。
对图1所示的开关电流延迟单元,其输入输出曲线如图2所示。根据上述自动压扩方法生成的压扩曲线如图3所示。采用该压扩曲线,对原输入—输出曲线进行压扩,得到如图4所示的函数。采用FWCM样条子波作为基函数对图4曲线进行逼近,即得到该电路模块的行为级模型。模型共使用149个基函数,最大误差4.33%,均方误差0.007113除此以外,本发明还采用现有的其他方法对该电路模块进行了建模,结果比较如下表所列

我们还采用了多项式展开对该电路进行建模,结果如下在基函数个数多于30时,出现数值不稳定现象,无法实际应用;而在基函数个数为30时,模型最大误差大于20%,也无法实际应用。
得到开关电流延迟单元的行为级模型后,可以代回到四阶Butterworth滤波器的信号流图中,对该滤波器进行行为级模拟。用上述模型分别进行行为级模拟的结果如下表所示


其中SPICE为工业界标准的晶体管级模拟器,以其结果作为标准结果。上表中分别给出了采用各模型进行模拟的结果与标准结果(SPICE结果)相比的均方误差。同时还给出了各方法建立模型需要的时间和模拟需要的时间。
用各模型进行行为级模拟得到的模拟结果如图6所示,SPICE模拟的结果(标准结果)为黑色实线,无压扩子波方法模型得到的结果为带有十字标记的实线,[5]中提出的压扩子波方法模型得到的结果为带有斜十字标记的实线,多项式方法模型得到的结果为带有点号标记的虚线,本发明方法模型得到的结果为虚线。
从上面对滤波器的模拟结果可以看出,行为级模拟的总时间(建模时间和模拟时间之和)要远少于晶体管级模拟(SPICE)的时间。同时,采用本发明提出的方法建立的模型对电路进行模拟可以获得较高的精度。
本电路实例表明,本发明获得的模拟电路的行为级模型具有高精度和精简的特点,可应用于任意输入—输出函数的模拟电路模块的自动行为级建模过程。
权利要求
1.一种对模拟电路进行自动行为级建模的方法,设一个单输入单输出模拟电路模块的非线性输入—输出函数可用(1)式表示y=f(x) (1)其中,x表示输入,其定义域[xA,xB]称为输入域;y为输出,f(x)为非线性函数,其特征在于具体建模步骤如下步骤1、构造压扩函数根据电路模块的输入—输出曲线自动构造压扩函数设p(x)=|f′(x)|+Δ (2)g(x)=xA+1G∫xAxp(t)dt--------(3)]]>其中f′(x)为f(x)的导数,Δ是一个足够小的正数,以保证p(x)>0,从而使g(x)为单调递增函数,G为常数,定义为G=1xB-xA∫xAxBp(t)dt--------(4)]]>以保证g(x)的值域为[xA,xB],g(x)称为压扩函数;步骤2、对原系统进行压扩设xC=g(x),并定义fC(xC)≡f(g-1(xC)) (5)将xC=g(x)代入(5)式的右端,得到fC(xC)=f(x) (6)fC(xC)即称为压扩后的输入—输出函数,其定义域xC∈[xA,xB]称为压扩域;步骤3、对压扩后的系统进行子波展开根据子波逼近方法,将函数(6)按照(8)式用子波基展开yC=fC(xC)=Σi=1Nciwi(xC)--------(8)]]>{wi(xC)|i=1,2,…,N}是使用的N个子波基函数;{ci|i=1,2,…,N}是对应的子波系数,可通过配置方法解得。
全文摘要
本发明是一种基于自动建立压扩函数和子波逼近的模拟电路自动建模方法。具体步骤包括构造压扩函数、对原系统进行压扩、对压扩后的系统进行子波展开,从而得到电路模块的行为级模型。本发明方法具有通用性和高精度的优点,并使器件的行为级模拟有更高的精度和更快的速度。
文档编号H01L21/82GK1529355SQ20031010784
公开日2004年9月15日 申请日期2003年10月10日 优先权日2003年10月10日
发明者曾璇, 王健, 曾 璇 申请人:复旦大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1