国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種提高電路仿真運(yùn)行速度的方法

      文檔序號(hào):6471928閱讀:349來源:國知局

      專利名稱::一種提高電路仿真運(yùn)行速度的方法
      技術(shù)領(lǐng)域
      :本發(fā)明屬于集成電路計(jì)算機(jī)輔助設(shè)計(jì)領(lǐng)域。
      背景技術(shù)
      :電路仿真器是電路設(shè)計(jì)前端的一個(gè)重要工具,它的主要功能是在物理設(shè)計(jì)之前對(duì)電路進(jìn)行仿真,驗(yàn)證設(shè)計(jì)思路。其工作原理是在計(jì)算機(jī)上求解描述各種電路的方程,得到電路當(dāng)中各個(gè)位置的電壓、電流等未知量,在仿真的過程中,不可避免要求解非線性方程組。牛頓迭代是求解非線性方程組的常用方法,每一步迭代需要用LU分解的方法求解一個(gè)線性方程組,當(dāng)方程規(guī)模很大時(shí),LU分解的將會(huì)花費(fèi)大量的時(shí)間,降低了求解的效率。因此,人們創(chuàng)造了很多牛頓迭代的變型,諸如修正牛頓迭代,下降牛頓迭代等等,這些方法有的減少了LU分解的次數(shù),有的提高了牛頓迭代的收斂性,為求解非線性方程組提供了有效途徑。
      發(fā)明內(nèi)容本發(fā)明提出了一種能夠優(yōu)化LU分解間隔次數(shù)的牛頓迭代方法,并給出了其實(shí)際的施行方法。牛頓迭代是求解非線性方程組的有效方法,該方法按照下面兩步進(jìn)行循環(huán)迭代,直到Xk滿足收斂條件(1)計(jì)算F(Xk)和F,(Xk),求解F,(Xk)dk=_F(xk),(2)xk+1=xk+dk,k=k+1??梢钥闯?,每一步牛頓迭代都要計(jì)算函數(shù)值F(Xk)和F'OO,然后求解F'(xk)dk二-F(Xk),由于對(duì)F'(xk)進(jìn)行LU分解方法的復(fù)雜度是多項(xiàng)式增長的,當(dāng)電路規(guī)模變大時(shí),會(huì)導(dǎo)致一步牛頓迭代花費(fèi)很長時(shí)間。為了提高迭代效率,可以事先確定一個(gè)間隔次數(shù)M,在做完一次LU分解過后,以后的M步迭代中不再更新F'(xk),而使用已有的LU分解求解F'(xk)dk=-F(xk),這樣會(huì)降低計(jì)算dk的精度,但是卻減少了LU分解的次數(shù),在間隔M步迭代以后,再更新F'(Xk),重新做LU分解,這就是修正牛頓迭代方法。因?yàn)長U分解的次數(shù)少了,牛頓迭代的效率得到了提高,它按照如下步驟進(jìn)行循環(huán)尸(%°)《=-F(《),x廣1=+《,m=0,1,…,M;cK"0,1,…修正牛頓迭代的一個(gè)重要目的在于提高求解速度,而求解速度提高的關(guān)鍵在于間隔次數(shù)M,表1是求解的時(shí)間和M的關(guān)系表1求解時(shí)間隨M的變化3<table>tableseeoriginaldocumentpage4</column></row><table>從表1可以看出,M在增加到一定程度后不但不會(huì)提高求解速度,而且求解速度可能降低。一般情況下,LU分解的間隔次數(shù)M是在修正牛頓迭代之前選定的,并且在選定過后不再隨著牛頓迭代的進(jìn)行而變化,這樣做很難保證實(shí)現(xiàn)選定的M能夠使得求解速度達(dá)到最優(yōu)。由于固定間隔次數(shù)不能充分利用修正牛頓迭代的優(yōu)點(diǎn),因此可以考慮采用動(dòng)態(tài)控制間隔次數(shù)的方法,使得所確定的間隔次數(shù)M能夠盡量提高求解速度。另一方面,在對(duì)電路作時(shí)域瞬態(tài)分析時(shí),隨著時(shí)間的變化,電路方程可能會(huì)改變,這時(shí)候需要求解不同的非線性方程組,而能夠優(yōu)化不同方程的間隔次數(shù)M很可能是不一樣的,因此在作瞬態(tài)分析的過程中,M還應(yīng)該隨著時(shí)間變化。對(duì)于一個(gè)間隔次數(shù)為M的修正牛頓迭代,其效率定義為—ln(M+l)『其中W是完成一次牛頓迭代的工作時(shí)間,該時(shí)間主要花費(fèi)在兩個(gè)方面,一是計(jì)算當(dāng)前迭代值Xk所對(duì)應(yīng)的函數(shù)值F(Xk)的時(shí)間tf,二是求解F'(xk)dk=-F(xk)的時(shí)間ts,因此修正牛頓迭代的效率為ln(M+l)為M盧,在做完一次LU分解后,使得e最大的M將作為間隔次數(shù)進(jìn)行修正牛頓迭代。由此,本發(fā)明提出確定修正牛頓迭代間隔次數(shù)的方法,如圖1所示,該方法的步驟(1)取初始值x。,迭代間隔M=l,迭代次數(shù)k=0;(2)計(jì)算函數(shù)值F(xk)和F,(xk),保存所花費(fèi)的時(shí)間tf;(3)如果滿足收斂條件,停止,否則執(zhí)行(4);(4)如果M整除k,執(zhí)行(5),否則執(zhí)行(7);(5)求解F'(xk)dk=-F(Xk),保存所花費(fèi)的時(shí)間ts;ln(M+l)(6)計(jì)算使得J^+^最大的M,執(zhí)行(8);(7)利用已有的LU分解計(jì)算dk;(8)xk+1=xk+dx,k=k+l,執(zhí)行(2)。圖1本發(fā)明提出的確定修正牛頓迭代間隔次數(shù)方法的流程圖圖2RTLINV電路圖3ECLGATE電路圖4RCA3040電路具體實(shí)施步驟從輸入網(wǎng)表抽取電路關(guān)系,采用修正節(jié)點(diǎn)分析方法(ModifiedNodalAnalysis)建立電路方程,在每次迭代提供方程時(shí),提取在xk點(diǎn)電路中每個(gè)器件的參數(shù)和輸入輸出變量的關(guān)系,從而算出當(dāng)前的函數(shù)值F(Xk)和它的殘差,對(duì)電路中的每個(gè)節(jié)點(diǎn),通過連接關(guān)系和電流守恒(KCL)建立守恒方程,并利用有限差分方法近似的計(jì)算F(Xk)對(duì)各個(gè)變量的偏導(dǎo)數(shù),建立BCR(BranchConstitutiveRelation)方程,得到F'(xk),同時(shí)保存計(jì)算函數(shù)值F(xk)和F'(xk)的時(shí)間tf,根據(jù)殘差判斷迭代是否收斂。本發(fā)明采用直接方法以確保數(shù)值穩(wěn)定性。如果當(dāng)前迭代次數(shù)是迭代間隔次數(shù)的倍數(shù),對(duì)矩陣進(jìn)行LU分解,然后回代求解,并保存求解時(shí)間ts,然后需要計(jì)算新的最佳迭代間隔次數(shù);否則直接利用已有的LU分解結(jié)果回代得到線性方程組的解,此時(shí)不用更新間隔次數(shù)。利用線性方程組的解更新位置變量得到下一個(gè)牛頓迭代點(diǎn)xk+1。如果當(dāng)前迭代次數(shù)是間隔次數(shù)的倍數(shù),在進(jìn)行下一次迭代之前應(yīng)該重新計(jì)算最佳迭代間隔次數(shù)。在實(shí)際計(jì)算當(dāng)中,M的值不能太大,否則牛頓迭代的收斂性將變得很差,本ln(M+l)發(fā)明在110的范圍內(nèi)尋找最佳的M,根據(jù)迭代效率的表達(dá)式^,算出使得e最大的M即可。用RTLINV電路(圖2),ECLGATE電路(圖3),RCA3040電路(圖4)作為例子,驗(yàn)證給出方法的有效性,其結(jié)果見表2。表2三個(gè)測(cè)試電路的結(jié)果比較電路RTLINVECLGATERCA3040節(jié)點(diǎn)個(gè)數(shù)113630器件個(gè)數(shù)82526二極管個(gè)數(shù)020三極管個(gè)數(shù)2811時(shí)間點(diǎn)數(shù)2000020005000計(jì)算函數(shù)值的修正牛頓迭代58773549615669本發(fā)明的方法63264581416356LU分解次數(shù)修正牛頓迭代1983017814975本發(fā)明的方法33705081347從表2可以看出,新的迭代方法大幅度減少了求解非線性方程過程中LU分解的次數(shù),能夠提高電路仿真器的運(yùn)行速度。權(quán)利要求一種提高電路仿真運(yùn)行速度的方法,其特征是通過電路仿真器確定修正牛頓迭代的LU分解間隔次數(shù),通過動(dòng)態(tài)控制牛頓迭代過程中LU分解的次數(shù)優(yōu)化牛頓迭代的效率,從而達(dá)到提高電路仿真運(yùn)行速度的目的。2.根據(jù)權(quán)利要求1所述的一種提高電路仿真運(yùn)行速度的方法,其特征在于每間隔一定次數(shù)重新計(jì)算電路矩陣,進(jìn)行LU分解,而間隔次數(shù)是動(dòng)態(tài)控制的,其中確定間隔次數(shù)的步驟如下(1)取初始值x。,間隔次數(shù)M=1,迭代次數(shù)k=0;(2)計(jì)算函數(shù)值F(Xk)和F'(Xk),保存所花費(fèi)的時(shí)間tf;(3)如果滿足收斂條件,停止,否則執(zhí)行(4);(4)如果M整除k,執(zhí)行(5),否則執(zhí)行(7);(5)求解F'(xk)dk=-F(Xk),保存所花費(fèi)的時(shí)間ts;ln(M+l)(6)計(jì)算使得M^+,最大的M,執(zhí)行(8);(7)利用已有的LU分解計(jì)算dk;(8)xk+1=xk+dk,k=k+l,執(zhí)行(2)。全文摘要本發(fā)明屬于集成電路計(jì)算機(jī)輔助設(shè)計(jì)的領(lǐng)域。牛頓迭代是所有電路仿真器求解非線性方程組所采用的基本方法,出于效率上的考慮,牛頓迭代的多種變型在實(shí)際當(dāng)中得到了廣泛的應(yīng)用,諸如修正牛頓迭代、阻尼牛頓迭代等等,提高牛頓迭代的效率也是仿真器加速的關(guān)鍵因素之一。本發(fā)明針對(duì)牛頓迭代過程當(dāng)中計(jì)算牛頓方向的步驟,提出了一種新的確定LU分解次數(shù)間隔的方法,提高了計(jì)算牛頓方向的速度,能夠優(yōu)化計(jì)算牛頓方向和牛頓迭代的效率。文檔編號(hào)G06F17/50GK101770531SQ20081024109公開日2010年7月7日申請(qǐng)日期2008年12月30日優(yōu)先權(quán)日2008年12月30日發(fā)明者劉強(qiáng)申請(qǐng)人:北京華大九天軟件有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1