專利名稱:基于粒子群算法的去耦電容器選擇方法
技術(shù)領(lǐng)域:
本發(fā)明屬于電路設(shè)計(jì)技術(shù)領(lǐng)域,更進(jìn)一步涉及電源完整性及去耦電容器的選擇方法,可應(yīng)用于高速電路設(shè)計(jì)及去耦電容器的選擇。
背景技術(shù):
隨著電子產(chǎn)品正在向高速高密度的方向發(fā)展,芯片時(shí)鐘頻率越來(lái)越高,信號(hào)完整性和電源完整性問(wèn)題越來(lái)越受到人們的重視。電源分配網(wǎng)絡(luò)上電壓的波動(dòng)將會(huì)引起嚴(yán)重的信號(hào)完整性問(wèn)題,為此提出了電源分配網(wǎng)絡(luò)目標(biāo)阻抗的概念,而一般的電源分配網(wǎng)絡(luò)阻抗很難滿足目標(biāo)阻抗的要求,因此,必須在印刷電路板上安裝不同種類的去耦電容器,才能保證電源分配網(wǎng)絡(luò)阻抗小于目標(biāo)阻抗,保證功率傳輸?shù)挠行院图皶r(shí)性。目前選擇去耦電容器的方法主要有Big “V”方法、flat response方法和Decade Methods方法。其中Big“V”方法選擇可用電容器庫(kù)中容值最大的電容;flat response方法中,將可用電容器按數(shù)量級(jí)分類,每個(gè)數(shù)量級(jí)選擇三種電容,例如InF至IOnF選擇2. 2nF、 4. 7nF、IOnF, 22nF 至 IOOnF 選擇 22nF、47nF、IOOnF ;而 Decade Methods 方法中,每個(gè)數(shù)量級(jí)只選擇一種電容,例如InF至IOnF選擇10nF、22nF至IOOnF選擇100nF。上述這三種選擇方法均存在不同程度的缺陷,其中Big “V”方法中,需要不斷增加最大電容器的個(gè)數(shù)以滿足目標(biāo)阻抗的要求,通常需要使用大量的電容;flat response方法和decade methods方法要求所選電容器的種類必須足夠多,才能保證這些電容器的自諧振頻率可以涵蓋整個(gè)設(shè)計(jì)的頻率范圍;同時(shí),這些去耦電容器的選擇方法都為估算、驗(yàn)證、調(diào)整、驗(yàn)證、再調(diào)整的重復(fù)過(guò)程,要經(jīng)過(guò)人工反復(fù)地選擇、調(diào)整和驗(yàn)證才能夠找到滿意的方案, 復(fù)雜度高,自動(dòng)化程度低,仿真時(shí)間長(zhǎng),選擇結(jié)果不直觀,這些問(wèn)題限制了它們?cè)趯?shí)際中的應(yīng)用。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服上述現(xiàn)有技術(shù)的不足,提出一種基于粒子群算法的去耦電容器選擇方法,以減少人工選擇的復(fù)雜度,提高自動(dòng)化程度,縮短仿真時(shí)間,直接顯示選擇結(jié)果。為實(shí)現(xiàn)上述目的,本發(fā)明包括1)參數(shù)預(yù)處理步驟(1. 1)設(shè)置印刷電路板上穩(wěn)壓器的等效電阻R1,等效電感Li,計(jì)算穩(wěn)壓器等效導(dǎo)納Zl ;(1.2)設(shè)置印刷電路板電源/地平面的等效電阻R2,等效電容Cl,計(jì)算電源/地平面等效導(dǎo)納Z2 ;(1. 3)獲取印刷電路板上過(guò)孔的等效電阻R3和等效電感L2,根據(jù)實(shí)際過(guò)孔數(shù)目計(jì)算等效電阻R3和等效電感L2,計(jì)算過(guò)孔等效阻抗Z3 ;(1.4)根據(jù)集成芯片最大電流、電源電壓、紋波系數(shù),計(jì)算電源分配網(wǎng)絡(luò)目標(biāo)阻抗Z,確定目標(biāo)頻率;2)去耦電容器選擇步驟(2. 1)生成包含N個(gè)粒子的初始種群,隨機(jī)生成粒子i選擇的去耦電容器,保存在矩陣x[i,C]中,i為粒子,代表矩陣第i行,i = 1,2,. . .,N,C為矩陣列數(shù),代表可用去耦電容器的種類,同時(shí)隨機(jī)生成種群最優(yōu)解矩陣Y[l,C],粒子i的速度矩陣和個(gè)體最優(yōu)解矩陣P[i,C],設(shè)迭代次數(shù)為k,k= 1,2,...,W,W為正整數(shù);(2.2)開(kāi)始迭代,令k= 1,在目標(biāo)頻率內(nèi),計(jì)算第i個(gè)粒子添加去耦電容器X[i, C]后電源分配網(wǎng)絡(luò)阻抗Z4,并判斷其是否小于目標(biāo)阻抗Z,如果小于則執(zhí)行步驟(2. 3),否則轉(zhuǎn)入步驟(2. 5);(2.3)更新粒子i的個(gè)體最優(yōu)解矩陣P [i,C],i = 1,2,···,N;(2. 4)更新種群最優(yōu)解矩陣Y[l,C],比較粒子i個(gè)體最優(yōu)解矩陣P[i,C]各列和 S2i的大小,i = 1,2,...,N,取出321最小時(shí)對(duì)應(yīng)的個(gè)體最優(yōu)解矩陣P[i,C],并保存在種群最優(yōu)解矩陣Y[1,C]中;(2. 5)用粒子群算法速度更新公式和位置更新公式更新粒子i在第k次迭代中選擇的去耦電容器矩陣x[i,c],即對(duì)粒子i在第k-Ι次迭代中選擇去耦電容器矩陣加上粒子 i速度矩陣;(2. 6)令k = k+Ι,如果k小于W,則轉(zhuǎn)入步驟(2. 2),否則取出種群最優(yōu)解矩陣Y [ 1, C]并在MATLAB GUI界面上顯示選擇去耦電容器的種類和個(gè)數(shù),繪制電源分配網(wǎng)絡(luò)阻抗圖。本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點(diǎn)第一,本發(fā)明由于使用粒子群算法對(duì)去耦電容器進(jìn)行選擇,縮短了仿真時(shí)間。第二,本發(fā)明中去耦電容器的選擇,選擇結(jié)果的顯示全部由計(jì)算機(jī)完成,減少了人工選擇的復(fù)雜度,提高了去耦電容器選擇的自動(dòng)化程度。第三,本發(fā)明中去耦電容器的選擇結(jié)果直接在MATLAB GUI界面上顯示,選擇結(jié)果直觀。
圖1是本發(fā)明的整體流程圖。圖2是本發(fā)明仿真實(shí)施例1的仿真結(jié)果示意圖。圖3是本發(fā)明仿真實(shí)施例2的仿真結(jié)果示意圖。圖4是本發(fā)明仿真實(shí)施例3的仿真結(jié)果示意圖。
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明進(jìn)行詳細(xì)描述參照?qǐng)D1,本發(fā)明包括如下步驟步驟一、參數(shù)預(yù)處理。(1. 1)根據(jù)印刷電路板上實(shí)際使用的穩(wěn)壓器,設(shè)置穩(wěn)壓器的等效電阻Rl和等效電感Li,計(jì)算印刷電路板上穩(wěn)壓器的等效導(dǎo)納Z1,其中Zl = l/(Rl+j2JifLl),f為頻率,j為虛數(shù)單位,在仿真實(shí)施例1中設(shè)置穩(wěn)壓器的等效電阻Rl為0. 001 Ω,等效電感Ll為30ηΗ, 在仿真實(shí)施例2中設(shè)置穩(wěn)壓器的等效電阻Rl為0. 003 Ω,等效電感Ll為25ηΗ,在仿真實(shí)施
5例3中設(shè)置穩(wěn)壓器的等效電阻Rl為0. 002 Ω,等效電感Ll為35ηΗ,但不限于以上參數(shù);(1. 2)根據(jù)印刷電路板上實(shí)際電源/地平面的尺寸,設(shè)置電源/地平面的等效電阻 R2和等效電容Cl,計(jì)算印刷電路板電源/地平面等效導(dǎo)納Ζ2,其中Ζ2 = 1/R2+J2 π fCl,在仿真實(shí)施例1中設(shè)置電源/地平面的等效電阻R2為0. 003 Ω,等效電感Cl為2. 6nF,在仿真實(shí)施例2中設(shè)置電源/地平面的等效電阻R2為0. 004 Ω,等效電感Cl為3nF,在仿真實(shí)施例3中設(shè)置電源/地平面的等效電阻R2為0. 002 Ω,等效電感Cl為2nF,但不限于以上參數(shù);(1. 3)根據(jù)印刷電路板上實(shí)際的過(guò)孔數(shù)目計(jì)算過(guò)孔的等效電阻R3和等效電感L2, 計(jì)算過(guò)孔等效阻抗Z3,其中Ti = R3+j2JifL2,在仿真實(shí)施例1中,設(shè)置過(guò)孔數(shù)目為200,在仿真實(shí)施例2中,設(shè)置過(guò)孔數(shù)目為160,在仿真實(shí)施例3中,設(shè)置過(guò)孔數(shù)目為100,但不限于以上參數(shù);(1.4)根據(jù)實(shí)際使用的集成芯片的最大電流I、電源電壓VI、紋波系數(shù)r,通過(guò)公式 Z = 2Vl*r/I計(jì)算電源分配網(wǎng)絡(luò)目標(biāo)阻抗Z,確定目標(biāo)頻率,在仿真實(shí)施例1中,設(shè)置最大電流I為2A、電源電壓Vl為2. 5V、紋波系數(shù)r為3%,目標(biāo)頻率為IOOMHz,在仿真實(shí)施例2 中,設(shè)置最大電流I為2A、電源電壓Vl為3. 3V、紋波系數(shù)r為3%,目標(biāo)頻率為120MHz,在仿真實(shí)施例3中,設(shè)置最大電流I為2A、電源電壓Vl為1. 8V、紋波系數(shù)r為3%,目標(biāo)頻率為80MHz,但不限于以上參數(shù)。步驟二、去耦電容器選擇。(2. 1)生成包含N個(gè)粒子的初始種群,隨機(jī)生成粒子i選擇的去耦電容器,保存在矩陣x[i,C]中,i為粒子,代表矩陣第i行,i = 1,2,. . .,N,C為矩陣列數(shù),代表可用去耦電容器的種類,同時(shí)隨機(jī)生成種群最優(yōu)解矩陣Y[1,C],粒子i的個(gè)體最優(yōu)解矩陣P[i,C]和速度矩陣,設(shè)迭代次數(shù)為k,k = 1,2,. . .,W,W為正整數(shù),在仿真實(shí)施例1、仿真實(shí)施例2和仿真實(shí)施例3中,設(shè)置N為40,C為17,粒子i的個(gè)體最優(yōu)解矩陣P[i,C]各列均為30,種群最優(yōu)解矩陣Y[l,C]各列均為30,但不限于以上參數(shù);(2. 2)開(kāi)始迭代,令k= 1,在目標(biāo)頻率內(nèi),計(jì)算第i個(gè)粒子添加去耦電容器X[i, C]后電源分配網(wǎng)絡(luò)阻抗Z4,并判斷其是否小于目標(biāo)阻抗Z,如果小于則執(zhí)行步驟(2. 3),否則轉(zhuǎn)入步驟(2. 5),上述的電源分配網(wǎng)絡(luò)阻抗Z4按如下公式計(jì)算Z4 = l/(Zl+Z2+X[i,C]*M)+Z3,其中Zl為印刷電路板上穩(wěn)壓器等效導(dǎo)納,Z2為印刷電路板電源/地平面等效導(dǎo)納J3為過(guò)孔等效阻抗,X[i,C]為第i個(gè)粒子選擇的去耦電容器矩陣,M為可用去耦電容器導(dǎo)納矩陣;(2. 3)更新粒子i的個(gè)體最優(yōu)解矩陣P[i,C],是通過(guò)比較第i個(gè)粒子當(dāng)前選擇的去耦電容器矩陣X[i,C]各列和Sli及個(gè)體最優(yōu)解矩陣P[i,C]各列和Sl的大小進(jìn)行,如果 Sli小于S2i,就將粒子i當(dāng)前選擇的去耦電容器矩陣X[i,C]保存在個(gè)體最優(yōu)解矩陣P[i, C]中,否則保持個(gè)體最優(yōu)解矩陣P [i,C]不變;(2. 4)更新種群最優(yōu)解矩陣Y[l,C],比較粒子i個(gè)體最優(yōu)解矩陣P[i,C]各列和 S2i的大小,i = 1,2,...,N,取出Sl最小時(shí)對(duì)應(yīng)的個(gè)體最優(yōu)解矩陣P[i,C],并保存在種群最優(yōu)解矩陣Y[1,C]中;(2. 5)用粒子群算法速度更新公式和位置更新公式更新粒子i在第k次迭代中選擇的去耦電容器矩陣X[i,C]
(2. 5a)用粒子群算法速度更新公式計(jì)算粒子i在第k次迭代時(shí)的速度矩陣V (k)V (k) =w (k) *v (k-1) +c (k) *r 1 (k) * (P [i,C] -X [i,C]) +d (k) *r2 (k) * (Y [1,C] -X [i, C])其中V(k)為第k次迭代時(shí)粒子i的速度矩陣,w (k)為第k次迭代時(shí)的慣性權(quán)值,c (k)為第k次迭代時(shí)個(gè)體加速系數(shù),d(k)為第k次迭代時(shí)種群加速系數(shù),rl (k)為第k次迭代時(shí)個(gè)體隨機(jī)矩陣,r2 (k)為第k次迭代時(shí)種群隨機(jī)矩陣,P[i,C]為第k次迭代時(shí)粒子i個(gè)體最優(yōu)解矩陣,Y[l,C]為第k次迭代時(shí)種群最優(yōu)解矩陣,當(dāng)k=l 時(shí)X[i,C]為隨機(jī)生成的粒子i選擇的去耦電容器矩陣,V (k-1)為隨機(jī)生成的粒子i速度矩陣,當(dāng) k > 1 時(shí)X[i,C]為第k-1次迭代時(shí)粒子i選擇的去耦電容器矩陣,V (k-1)為第k-1次迭代時(shí)粒子i的速度矩陣;(2. 5b)用粒子群算法位置更新公式計(jì)算粒子i在第k次迭代中選擇的去耦電容器 矩陣:X[i, C] = lX[i,C]+V(k),其中V(k)為第k次迭代時(shí)粒子i的速度矩陣,等式左邊X[i,C]為第k次迭代時(shí)粒子i選擇的去耦電容器矩陣,當(dāng)k = 1吋,等式右邊X[i,C]為隨機(jī)生成的粒子i選擇的去耦電容器矩陣,當(dāng)k > 1吋,等式右邊X[i,C]為第k-1次迭代時(shí)粒子i選擇的去耦電容器矩陣;(2. 6)令k = k+1,如果k小于W,則轉(zhuǎn)入步驟(2. 2),否則取出種群最優(yōu)解矩陣Y [ 1, C]并在MATLAB GUI界面上顯示選擇去耦電容器的種類和個(gè)數(shù),繪制電源分配網(wǎng)絡(luò)阻抗圖, 在仿真實(shí)施例1、仿真實(shí)施例2和仿真實(shí)施例3中設(shè)置W為41,但不限于以上參數(shù)。本發(fā)明的效果可進(jìn)ー步通過(guò)以下仿真進(jìn)行說(shuō)明。仿真實(shí)施例1 設(shè)置基本參數(shù)如下印刷電路板上穩(wěn)壓器的等效電阻Rl為0. 001 Q,等效電感Ll為30nH ;印刷電路板電源/地平面等效電阻R2為0. 003 Q,等效電容Cl為2. 6nF ;印刷電路板過(guò)孔數(shù)目為200 ;集成芯片最大電流I為2A、電源電壓Vl為2. 5V、紋波系數(shù)r為3 %,目標(biāo)頻率為 IOOMHz?;谝陨蠀?shù),利用本發(fā)明的實(shí)現(xiàn)步驟,通過(guò)MATLAB 7. 11.0軟件對(duì)本發(fā)明提出 的基于粒子群算法的去耦電容器選擇方法進(jìn)行仿真,仿真結(jié)果如圖2,其中圖加是電源分 配網(wǎng)絡(luò)阻抗曲線圖,圖2b是去耦電容器選擇結(jié)果。從圖2b可以看出仿真時(shí)間為35. 621秒,選擇的去耦電容器總數(shù)為11,選擇結(jié)果 如下表所示
權(quán)利要求
1.一種基于粒子群算法的去耦電容器選擇方法,包括1)參數(shù)預(yù)處理步驟(1. 1)設(shè)置印刷電路板上穩(wěn)壓器的等效電阻R1,等效電感Li,計(jì)算穩(wěn)壓器等效導(dǎo)納Zl ;(1.2)設(shè)置印刷電路板電源/地平面的等效電阻R2,等效電容Cl,計(jì)算電源/地平面等效導(dǎo)納Z2 ;(1. 3)獲取印刷電路板上過(guò)孔的等效電阻R3和等效電感L2,根據(jù)實(shí)際過(guò)孔數(shù)目計(jì)算等效電阻R3和等效電感L2,計(jì)算過(guò)孔等效阻抗Z3 ;(1.4)根據(jù)集成芯片最大電流、電源電壓、紋波系數(shù),計(jì)算電源分配網(wǎng)絡(luò)目標(biāo)阻抗Z,確定目標(biāo)頻率;2)去耦電容器選擇步驟(2. 1)生成包含N個(gè)粒子的初始種群,隨機(jī)生成粒子i選擇的去耦電容器,保存在矩陣 X[i,C]中,i為粒子,代表矩陣第i行,i = 1,2,...,N,C為矩陣列數(shù),代表可用去耦電容器的種類,同時(shí)隨機(jī)生成種群最優(yōu)解矩陣Y[l,C],粒子i的速度矩陣和個(gè)體最優(yōu)解矩陣P[i, C],設(shè)迭代次數(shù)為k,k = 1,2,. . .,W,W為正整數(shù);(2. 2)開(kāi)始迭代,令k = 1,在目標(biāo)頻率內(nèi),計(jì)算第i個(gè)粒子添加去耦電容器X[i,C]后電源分配網(wǎng)絡(luò)阻抗Z4,并判斷其是否小于目標(biāo)阻抗Z,如果小于則執(zhí)行步驟(2. 3),否則轉(zhuǎn)入步驟(2. 5);(2. 3)更新粒子i的個(gè)體最優(yōu)解矩陣P [i,C],i = 1,2,. . .,N ;(2. 4)更新種群最優(yōu)解矩陣Y[1,C],比較粒子i個(gè)體最優(yōu)解矩陣P[i,C]各列和S2i的大小,i = 1,2,. . .,N,取出S2i最小時(shí)對(duì)應(yīng)的個(gè)體最優(yōu)解矩陣P[i,C],并保存在種群最優(yōu)解矩陣Y[1,C]中;(2. 5)用粒子群算法速度更新公式和位置更新公式更新粒子i在第k次迭代中選擇的去耦電容器矩陣X[i,C],即對(duì)粒子i在第k-Ι次迭代中選擇去耦電容器矩陣加上粒子i速度矩陣;(2. 6)令k = k+l,如果k小于W,則轉(zhuǎn)入步驟(2. 2),否則取出種群最優(yōu)解矩陣Y[1,C] 并在MATLAB GUI界面上顯示選擇去耦電容器的種類和個(gè)數(shù),繪制電源分配網(wǎng)絡(luò)阻抗圖。
2.根據(jù)權(quán)利要求1所述的去耦電容器選擇方法,其中步驟(2.2)所述的計(jì)算第i個(gè)粒子添加去耦電容器X[i,C]后電源分配網(wǎng)絡(luò)阻抗Z4,按如下公式計(jì)算Z4 = 1/(Z1+Z2+X[i, C]*M)+Z3,其中Zl為印刷電路板上穩(wěn)壓器等效導(dǎo)納,Z2為印刷電路板電源/地平面等效導(dǎo)納,Z3為過(guò)孔等效阻抗,X[i,C]為第i個(gè)粒子選擇的去耦電容器矩陣,M為可用去耦電容器導(dǎo)納矩陣。
3.根據(jù)權(quán)利要求1所述的去耦電容器選擇方法,其中步驟(2.3)所述的更新粒子i個(gè)體最優(yōu)解矩陣p[i,C],是通過(guò)比較第i個(gè)粒子當(dāng)前選擇的去耦電容器矩陣X[i,C]各列和 Sli及個(gè)體最優(yōu)解矩陣P[i,C]各列和S2i的大小進(jìn)行,如果Sli小于S2i,就將粒子i當(dāng)前選擇的去耦電容器矩陣X[i,C]保存在個(gè)體最優(yōu)解矩陣P[i,C]中,否則保持個(gè)體最優(yōu)解矩陣P[i,C]不變。
4.根據(jù)權(quán)利要求1所述的去耦電容器選擇方法,其中步驟(2.5)所涉及的速度更新公式,表示為v(k) = w(k)*(k-l)+c(k)*rl(k)*(P[i,C]_X[i,C])+d(k) *r2 (k) * (Y[l,C]_X[i,C]) 其中v(k)為第k次迭代時(shí)粒子i的速度矩陣, w(k)為第k次迭代時(shí)的慣性權(quán)值, c (k)為第k次迭代時(shí)個(gè)體加速系數(shù), d(k)為第k次迭代時(shí)種群加速系數(shù), rl(k)為第k次迭代時(shí)個(gè)體隨機(jī)矩陣, r2 (k)為第k次迭代時(shí)種群隨機(jī)矩陣, P[i,C]為第k次迭代時(shí)粒子i個(gè)體最優(yōu)解矩陣, Y[l,C]為第k次迭代時(shí)種群最優(yōu)解矩陣, 當(dāng)k = 1時(shí)X[i,C]為隨機(jī)生成粒子i選擇的去耦電容器矩陣, v(k-l)為隨機(jī)生成的粒子i速度矩陣, 當(dāng)k > 1時(shí)X[i,C]為第k-Ι次迭代時(shí)粒子i選擇的去耦電容器矩陣, v(k-l)為第k-Ι次迭代時(shí)粒子i的速度矩陣。
5.根據(jù)權(quán)利要求1所述的去耦電容器選擇方法,其中步驟(2. 所涉及的位置更新公式,表示為:X[i, C] = X[i, C]+v(k),其中v(k)為第k次迭代時(shí)粒子i的速度矩陣,等式左邊X[i,C]為第k次迭代時(shí)粒子i選擇的去耦電容器矩陣,當(dāng)k = 1時(shí),等式右邊X[i,C]為隨機(jī)生成粒子i選擇的去耦電容器矩陣,當(dāng)k > 1時(shí),等式右邊X[i,C]為第k-Ι次迭代時(shí)粒子i選擇的去耦電容器矩陣。
全文摘要
本發(fā)明公開(kāi)了一種基于粒子群算法的去耦電容器選擇方法,主要解決現(xiàn)有技術(shù)選擇時(shí)間長(zhǎng)和自動(dòng)化程度低的問(wèn)題。其實(shí)現(xiàn)步驟是(1)設(shè)置基本參數(shù);(2)隨機(jī)生成粒子選擇的去耦電容器矩陣;(3)判斷添加粒子選擇的去耦電容器后,電源分配網(wǎng)絡(luò)阻抗是否小于目標(biāo)阻抗,如果小于則執(zhí)行步驟(4),否則轉(zhuǎn)入步驟(6);(4)更新粒子個(gè)體最優(yōu)解矩陣;(5)更新種群最優(yōu)解矩陣;(6)更新粒子選擇的去耦電容器矩陣;(7)判斷迭代是否結(jié)束,如果結(jié)束則取出種群最優(yōu)解矩陣,得到選擇的去耦電容器,否則轉(zhuǎn)入步驟(3)。本發(fā)明縮短了仿真時(shí)間,選擇結(jié)果直觀,提高了去耦電容器選擇的自動(dòng)化程度,可用于高速電路設(shè)計(jì)。
文檔編號(hào)G06F17/50GK102436518SQ201110260528
公開(kāi)日2012年5月2日 申請(qǐng)日期2011年9月5日 優(yōu)先權(quán)日2011年9月5日
發(fā)明者劉飛飛, 初秀琴, 孫景軍, 張松松, 秦俊 申請(qǐng)人:西安電子科技大學(xué)