[發明專利]一種三值FPRM電路面積與功耗最佳極性搜索方法有效
| 申請號: | 201510552955.2 | 申請日: | 2015-09-01 |
| 公開(公告)號: | CN105205534B | 公開(公告)日: | 2017-09-29 |
| 發明(設計)人: | 汪鵬君;厲康平;張會紅 | 申請(專利權)人: | 寧波大學 |
| 主分類號: | G06N3/12 | 分類號: | G06N3/12;G06F17/30 |
| 代理公司: | 寧波奧圣專利代理事務所(普通合伙)33226 | 代理人: | 方小惠 |
| 地址: | 315211 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 fprm 電路 面積 功耗 最佳 極性 搜索 方法 | ||
1.一種三值FPRM電路面積與功耗最佳極性搜索方法,其特征在于包括以下步驟:
①構建人口遷移遺傳算法,人口遷移遺傳算法通過將遺傳算法融合到人口遷移算法中得到:在人口遷移算法中發生人口流動時加入遺傳算法的交叉操作和變異操作,在人口遷移算法中發生人口遷移時加入遺傳算法的交叉操作和變異操作;由此實現遺傳算法和人口遷移算法的融合;
②建立三值FPRM電路的面積估計模型和功耗估計模型:
②-1將三值FPRM電路用三值FPRM邏輯函數的表達式表示為:
其中,n為函數fp(xn-1,xn-2,…,x0)的變量數,xn-1,xn-2,…,x0表示函數fp(xn-1,xn-2,…,x0)的n個輸入變量,p表示函數fp(xn-1,xn-2,…,x0)的極性,極性p用三進制形式表示為pn-1pn-2…p0,pj∈{0,1,2},j=0,1,2,…,n-1,表示模3加運算,∑為累加符號,符號“*”表示乘號,下標i=0,1,2,…,3n-1,i用三進制形式表示為in-1in-2…i0,ai為FPRM展開式系數,ai∈{0,1,2};∏表示模3乘運算,的展開式為:其中ij∈{0,1,2},極性p和下標i決定變量的表示形式;
②-2 p極性下的三值FPRM邏輯函數包含兩類多輸入運算,兩類多輸入運算分別為多輸入模3加運算和多輸入模3乘運算,根據三值FPRM邏輯函數展開式將三值FPRM邏輯函數分解為多個多輸入模3加運算和多個多輸入模3乘運算,然后將每個多輸入運算分別分解為二輸入運算,得到二輸入模3加運算和二輸入模3乘運算,具體分解過程為:
將多輸入運算的第1個輸入變量和第2個輸入變量作為第一個二輸入運算的兩個輸入變量,得到第一個二輸入運算的輸出變量;將第一個二輸入運算的輸出變量和多輸入運算的第3個輸入變量作為第二個二輸入運算的兩個輸入變量,得到第二個二輸入運算的輸出變量;將第二個二輸入運算的輸出變量和多輸入運算的第4個輸入變量作為第三個二輸入運算的兩個輸入變量,得到第三個二輸入運算的輸出變量;依此類推,直到所有的多輸入運算的輸入變量作為二輸入運算的輸入變量,完成多輸入運算的分解;
將p極性下的三值FPRM邏輯函數分解后得到多個多輸入模3加運算和多個多輸入模3乘運算,多輸入模3加運算也稱為多輸入模3加門,多輸入模3乘運算也稱為多輸入模3乘門,將p極性下三值FPRM邏輯函數分解后的多輸入模3加門的數量記為N,將p極性下三值FPRM邏輯函數分解后的多輸入模3乘門的數量記為W;將每個多輸入模3加運算分解后得到多個二輸入模3加運算,將每個多輸入模3乘運算分解后得到多個二輸入模3乘運算,二輸入模3加運算也稱為二輸入模3加門,二輸入模3乘運算也稱為二輸入模3乘門;將第u個多輸入模3加門分解后的二輸入模3加門的數量記為Nu,u=1,2,…,N;將第o個多輸入模3乘門分解后的二輸入模3乘門的數量記為Wo,o=1,2,…,W;
②-3將作為三值FPRM電路的面積估計模型,S表示面積;表示p極性下三值FPRM邏輯函數中所有的多輸入模3加門分解后得到的二輸入模3加門的總數量;表示為p極性下三值FPRM邏輯函數中所有的多輸入模3乘門分解后得到的二輸入模3乘門的總數量;
②-4將p極性下的三值FPRM邏輯函數分解后得到的所有二輸入模3加門和二輸入模3乘門引起的功耗作為p極性下的三值FPRM電路的功耗,二輸入模3加門引起的功耗采用其開關活動性表示,二輸入模3乘門引起的功耗采用其開關活動性表示,門電路的開關活動性用其輸出端的輸出變量概率表示,二輸入模3加門引起的功耗采用其輸出端的輸出變量概率表示,二輸入模3乘門引起的功耗采用其輸出端的輸出變量概率表示;
②-5根據公式(2)、(3)和(4)計算第u個多輸入模3加門分解后的第k個二輸入模3加門的輸出變量概率;k=1,2,…,Nu;
P1(k)u=Pky11*Pky20+Pky10*Pky21+Pky12*Pky22(2)
P2(k)u=Pky12*Pky20+Pky11*Pky21+Pky10*Pky22(3)
P0(k)u=1-P1(k)u-P2(k)u(4)
根據公式(5)、(6)和(7)計算第o個多輸入模3乘門分解后的第g個二輸入模3乘門的輸出變量概率,g=1,2,…,Wo:
Q1(g)o=Qgr11*Qgr21+Qgr12*Qgr22(5)
Q2(g)o=Qgr11*Qgr22+Qgr12*Qgr21(6)
Q0(g)o=1-Q1(g)o-Q2(g)o(7)
其中,P1(k)u表示第u個多輸入模3加門分解后的第k個二輸入模3加門輸出變量為1的概率,P2(k)u表示第u個多輸入模3加門分解后的第k個二輸入模3加門輸出變量為2的概率,P0(k)u表示第u個多輸入模3加門分解后的第k個二輸入模3加門輸出變量為0的概率,y1和y2表示二輸入模3加門的兩個輸入變量,m∈{0,1,2},當k=1時,Pky1m為多輸入模3加運算的第1個輸入變量為m的概率,Pky2m為多輸入模3加運算的第2個輸入變量為m的概率,當k>1時,Pky1m為第k-1個二輸入模3加門輸出變量為m的概率,Pky2m為多輸入模3加門的第k+1個輸入變量為m的概率;
Q1(g)o表示第o個多輸入模3乘門分解后的第g個二輸入模3乘門輸出變量為1的概率,Q2(g)o表示第o個多輸入模3乘門分解后的第g個二輸入模3乘門輸出變量為2的概率,Q0(g)o表示第o個多輸入模3乘門分解后的第g個二輸入模3乘門輸出變量為0的概率,r1和r2表示二輸入模3乘門的兩個輸入變量;當g=1時,Qgr1m為多輸入模3乘運算的第1個輸入變量為m的概率,Qgr2m為多輸入模3乘運算的第2個輸入變量為m的概率,當g>1時,Qgr1m為第g-1個二輸入模3乘門輸出變量為m的概率,Qgr2m為多輸入模3乘門的第g+1個輸入變量為m的概率;
輸入變量xj為1和2的概率是由隨即函數產生的概率對(P1,P2),P0=1-P1-P2;P0,P1和P2分別為0到1之間某個值,P0表示輸入變量為0的概率,P1表示輸入變量為1的概率,P2表示輸入變量為2的概率;
②-6根據二輸入模3加門的輸出變量概率和二輸入模3乘門的輸出變量概率計算三值FPRM電路的功耗,將三值FPRM電路的功耗估計模型表示為:
其中,Eswd表示p極性下三值FPRM電路的功耗,N為p極性下三值FPRM邏輯函數分解后的多輸入模3加門的數量,W為p極性下三值FPRM邏輯函數分解后的多輸入模3乘門的數量;
③設定人口遷移算法中用于計算人口所在地點的吸引力的吸引力函數,吸引力函數用下式表示為:
attraction(t)=α/(β/At+(1-β)/Bt)(9)
其中,符號“/”表示除運算符號,attraction(t)表示第t個人口所在地點的吸引力大小;At表示第t個人口所在地點的環境因素,Bt表示第t個人口所在地點的經濟因素,β為人口所在地點的環境因素和經濟因素的權重,0<β<1;
④建立三值FPRM電路和人口遷移遺傳算法的對應關系:
人口遷移算法包含以下幾個關鍵要素:人口所在地點、人口所在地點的吸引力、吸引力最大地點、最大吸引力、人口可移動地表空間、優惠區域、人口流動、人口遷移、人口擴散、環境因素和經濟因素;
遺傳算法包括兩個關鍵因素:交叉操作和變異操作;
三值FPRM電路面積和功耗綜合優化包含以下幾個關鍵要素:極性、相應極性的面積和功耗之和、最佳極性、最小面積和功耗之和、可選擇的極性空間、最佳極性所在區間、極性變換、極性向最佳極性所在區間跳變、跳出局部最佳極性、極性交流、極性突變、面積和功耗;
將人口所在地點映射到三值FPRM電路面積和功耗綜合優化,表示為極性;將人口所在地點的吸引力映射到三值FPRM電路面積和功耗綜合優化,表示為相應極性的面積和功耗之和;將吸引力最大地點映射到三值FPRM電路面積和功耗綜合優化,表示為最佳極性;將最大吸引力映射到三值FPRM電路面積和功耗綜合優化,表示為最小面積和功耗之和;將人口可移動地表空間映射到三值FPRM電路面積和功耗綜合優化,表示為可選擇的極性空間;將優惠區域映射到三值FPRM電路面積和功耗綜合優化,表示為最佳極性所在區間;將人口流動域映射到三值FPRM電路面積和功耗綜合優化,表示為極性變換;將人口遷移映射到三值FPRM電路面積和功耗綜合優化,表示為極性向最佳極性所在區間跳變;將人口擴散映射到三值FPRM電路面積和功耗綜合優化,表示為跳出局部最佳極性;將交叉操作映射到三值FPRM電路面積和功耗綜合優化,表示為極性交流;將變異操作映射到三值FPRM電路面積和功耗綜合優化,表示為極性突變;將環境因素映射到三值FPRM電路面積和功耗綜合優化,表示為三值FPRM電路的面積S;將經濟因素映射到三值FPRM電路面積和功耗綜合優化,表示為三值FPRM電路的功耗;
⑤設置人口遷移遺傳算法相關參數:
人口遷移遺傳算法需設置5個參數:人口規模s、人口流動次數l、人口壓力參數q、收縮系數c和人口擴散次數z;令人口規模s等于三值FPRM邏輯函數的輸入變量個數,即s=n;人口流動次數l為人口所在區域的半徑,人口所在區域的半徑記為Δt,l=Δt,Δt=3s/s2;人口壓力參數q為Δt/10;收縮系數c=0.3;三值FPRM電路為小規模電路時,人口擴散次數z=15,三值FPRM電路為大規模電路時,人口擴散次數z=2;
⑥采用人口遷移遺傳算法得到吸引力最大地點和最大吸引力,吸引力最大地點即為三值FPRM電路的面積和功耗最佳極性;最大吸引力即為三值FPRM電路的最小面積和功耗之和;
所述的步驟⑥中采用人口遷移遺傳算法得到吸引力最大地點和最大吸引力的具體過程為:
⑥-1在人口可移動地表空間內用隨機函數rand()產生s個人口所在地點,將s個人口所在地點分別記為P1,P2,…,Ps,分別以P1,P2,…,Ps為中點,按人口所在區域的半徑確定s個人口所在區域;
⑥-2通過吸引力函數計算第v個人口所在地點Pv的吸引力,v=1,2,3,…,s,得到人口所在地點P1,P2,…,Ps的吸引力;
⑥-3比較人口所在地點P1,P2,…,Ps的吸引力,篩選出吸引力最大的人口所在地點作為吸引力最大地點,記錄吸引力最大地點和最大吸引力;
⑥-4進行人口流動:在人口所在地點Pv所對應的人口所在區域內采用隨機函數隨機產生一個人口所在地點P'v,得到P'1,P'2,…,P's,采用P'1,P'2,…,P's更新人口所在地點P1,P2,…,Ps,即P1=P'1,P2=P'2,…,Ps=P's,其中,P'v=2*Δt*rand()+(Pv-Δt),符號“*”為乘運算符號,Δt表示人口所在區域的半徑;rand()為隨機函數;
⑥-5按照步驟⑥-2~⑥-3對人口所在地點P1,P2,…,Ps進行處理,得到吸引力最大地點和最大吸引力;
⑥-6進行交叉操作:若s為偶數,將P1和P2、P3和P4、…、Ps-1和Ps兩兩分別進行交叉操作;若s為奇數,將P1和P2、P3和P4、…、Ps-2和Ps-1兩兩分別進行交叉操作,Ps不參與交叉操作;兩個人口所在地點交叉操作的具體過程為:將進行交叉操作的兩個人口所在地點分別轉換為n位三進制碼,轉換后的兩個n位三進制碼分別記為f1和f2,隨機產生一個n位的二進制碼,將該n位的二進制碼記為A,根據二進制碼A更新f1和f2,當二進制碼A的第h位為1時,f1的第h位保持不變,f2的第h位保持不變;當二進制碼A的第h位為0時,f1的第h位繼承f2的第h位,f2的第h位繼承f1的第h位,h=1,2,3,…,n,得到更新后的f1和f2,將更新后的f1和f2轉換為十進制數據得到f1'和f2',采用f1'和f2'更新進行交叉操作的兩個人口所在地點;
⑥-7按照步驟⑥-2~⑥-3對人口所在地點P1,P2,…,Ps進行處理,得到吸引力最大地點和最大吸引力;
⑥-8進行變異操作:將P1,P2,…,Ps轉化為n位三進制碼,得到F1,F2,…,Fs;對Fv的每一位均用隨機函數rand()產生一個0到1之間的值,若這個值小于0.01,則這個值對應的位就是Fv的變異位,對Fv的變異位進行變異,變異規則為“0→1,1→2,2→0”;F1,F2,…,Fs變異操作后得到F1',F2',…,Fs',v=1,2,3,…,s;將F1',F2',…,Fs'轉換為十進制數據后更新人口所在地點P1,P2,…,Ps;
⑥-9按照步驟⑥-2~⑥-3對人口所在地點P1,P2,…,Ps進行處理,得到更新后的吸引力最大地點和最大吸引力;
⑥-10進行人口遷移:以步驟⑥-9中的吸引力最大地點為中點,按人口所在區域半徑Δt的大小確定優惠區域,在優惠區域內用隨機函數rand()產生s個人口所在地點,將此時得到的s個人口所在地點對人口所在地點P1,P2,…,Ps再次進行更新;
⑥-11按照步驟⑥-2~⑥-3對人口所在地點P1,P2,…,Ps進行處理,得到吸引力最大地點和最大吸引力;
⑥-12重復步驟⑥-6~⑥-9;
⑥-13收縮優惠區域:令Δt'=(1-c)*Δt,采用Δt'更新Δt;重復步驟⑥-10~⑥-12,直到Δt<q;
⑥-14當收縮優惠區域到一定程度Δt<q后,進行人口擴散:重復步驟⑥-1-⑥-13,直到滿足人口擴散次數z,算法結束,得到吸引力最大地點和最大吸引力;
⑥-15將最后一次得到的吸引力最大地點和最大吸引力輸出,吸引力最大地點即為三值FPRM電路的面積和功耗最佳極性;最大吸引力即為三值FPRM電路的最小面積和功耗之和。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于寧波大學,未經寧波大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510552955.2/1.html,轉載請聲明來源鉆瓜專利網。





