亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

基于結點屬性函數的大規(guī)模集成電路的核值計算方法

文檔序號:6369688閱讀:210來源:國知局
專利名稱:基于結點屬性函數的大規(guī)模集成電路的核值計算方法
技術領域
本發(fā)明涉及一種大規(guī)模集成電路劃分用的基于結點屬性函數的大規(guī)模集成電路的核值計算方法。
背景技術
電路劃分在使用硬件描述語言設計大規(guī)模集成電路中占有重要的地位。隨著集成電路技術的快速發(fā)展,在一個芯片上集成幾百萬門甚至幾千萬門電路已成為現實,因此在大規(guī)模集成電路設計中使用電路劃分,可有效地降低對集成電路進行模擬或綜合的復雜性等要求。研究出一個好的電路劃分方法是提高大規(guī)模集成電路設計性能的必要條件。目前,現有的電路劃分大多采用多水平劃分法的技術方案。首先,采用隨機匹配將某些電路邏輯單元結合在一起,得到下一水平層的粗化電路圖,重復此過程直到粗化電路圖足夠小為止,即得到一個最小電路圖。然后,采用劃分法對最小電路圖進行對分,得到一個初始二劃分。之后,將最小電路圖投影回初始電路圖,在每一水平層的細化電路劃分中,按照貪心原則選擇收益值最大的電路邏輯單元進行遷移優(yōu)化,得到最后的電路劃分結果。2008年中國專利局公告的由冷明,郁松年和孫凌宇申報,中國專利號為200710043765. 3號《基于多水平劃分法的大規(guī)模集成電路劃分方法》的發(fā)明專利,針對現有技術方案中因采用隨機策略進行匹配和貪心原則進行遷移優(yōu)化,導致無法逃離局部最優(yōu)的劃分,提供了一種改進的基于多水平劃分法的大規(guī)模集成電路劃分方法,有效地提高了大規(guī)模集成電路劃分的效率和性能。該發(fā)明專利在多水平劃分法的粗化階段,通過對結點屬性進行賦權無向圖中所有結點的核值求解排序,按照基于結點核值的非嚴格降序訪問處于未匹配狀態(tài)的結點,依據一定規(guī)則對其進行匹配,從而將連接性好的結點合并在一起;在多水平劃分法的優(yōu)化階段,采用免疫克隆優(yōu)化程序改進貪心原則的局部搜索方法,對在每一水平層投影的劃分進行優(yōu)化,借助克隆操作、克隆變異操作、接種免疫疫苗操作、克隆選擇操作,使得改進后的方法在利用啟發(fā)信息搜索局部最優(yōu)解的同時,更大自由地對具有潛力的解空間進行搜索,增加全局搜索能力。然而,由于該發(fā)明專利采用賦權無向圖作為大規(guī)模集成電路劃分問題的數學模型,因此存在著賦權無向圖最優(yōu)劃分和大規(guī)模集成電路最優(yōu)劃分的不一致性。本發(fā)明采用賦權超圖對電路進行數學建模,其中電路單元表示為賦權超圖中的結點,電路單元間的連線表示為賦權超圖中的超邊。相比賦權無向圖而言,賦權超圖為電路提供了更為精確的模型每條超邊可以連接兩個以上的結點,對應于電路單元間的信號可以連接兩個以上的電路單元。然而,在多水平劃分法的粗化階段,需要依據結點屬性對賦權超圖中所有結點的核值進行求解排序,進而基于結點核值的非嚴格降序進行結點匹配,使相應的結點匹配算法在最大化減少超邊的數目以及超邊權值之和的同時,將連接性好的結點合并在一起,使之得到的粗化超圖中粗化結點的權值趨向于大小一致。

發(fā)明內容
本發(fā)明的目的在于針對已有技術存在的不足,提供一種基于結點屬性函數的大規(guī)模集成電路的核值計算方法,為大規(guī)模集成電路多水平劃分的后續(xù)階段提供更優(yōu)的粗化超圖。為達到上述目的,本發(fā)明的構思如下采用賦權超圖對電路進行數學建模,將電路線網轉換到賦權超圖,并保存為賦權超圖文件,然后啟動賦權超圖的核值計算程序,采用改進的壓縮存儲格式對賦權超圖進行存儲,并基于結點屬性函數計算結點的核值,將所有結點的核值結果存儲在賦權超圖核值文件中。 根據上述的發(fā)明構思,本發(fā)明的技術方案是這樣實現的一種基于結點屬性函數的大規(guī)模集成電路的核值計算方法,其特征在于,具體步驟如下。步驟1,用硬件描述語言描述該電路,生成該電路的源代碼。步驟2,詞法分析,從左到右一個個讀入該電路的源代碼,對構成源代碼的字符流進行掃描和分解,從而識別出一個個單詞。步驟3,語法分析,在詞法分析的基礎上將單詞序列分解成各類語法短語,依據硬件描述語言的語法規(guī)則,確定整個字符流是否構成一個語法上正確的硬件描述語言程序。步驟4,語義分析,在語法分析的基礎上審核源代碼有無語義錯誤,為中間代碼生成階段收集類型信息。步驟5,中間代碼生成,在語法分析和語義分析的基礎上,將源代碼生成中間代碼,用內部中間格式表示。步驟6,賦權超圖文件生成,基于中間代碼構造文本描述的電路對應的線網,經過電路線網到賦權超圖的轉換之后,保存為賦權超圖文件。步驟7,賦權超圖核值計算,啟動賦權超圖核值計算程序,讀取賦權超圖文件,采用改進的壓縮存儲格式對賦權超圖進行存儲,對生成的賦權超圖中每個結點,基于結點屬性函數計算其核值,將所有結點的核值結果存儲在賦權超圖核值文件中。上述的步驟6中,所述的賦權超圖文件生成的步驟如下。步驟6. 1,基于中間代碼構造電路源代碼描述電路對應的線網,生成完整電路線網。一個完整的電路線網看作是一個根模塊,它由層次化的子模塊實例和電路邏輯單元通過信號互連構成,且每個子模塊內部由端口、電路邏輯單元、嵌套子模塊的實例通過信號連接構成。步驟6. 2,從根模塊開始,遞歸遍歷層次化線網的模塊,為每個電路邏輯單元編號。步驟6. 3,從根模塊開始,遞歸遍歷層次化線網的模塊,為每個電路邏輯單元之間的信號編號,并確立每個信號X的連接方式,實現到賦權超圖的轉換。其中,電路線網中的電路邏輯單元用賦權超圖的結點表示,電路線網中的信號用賦權超圖的超邊表示。結點的權值代表電路邏輯單元的大小,超邊的權值代表電路邏輯單元之間信號連線的權值。i為賦權超圖中結點的編號,取值范圍為I到電路線網中電路邏輯單元的總個數。j為賦權超圖中超邊的編號,取值范圍為I到電路線網中信號的總個數。步驟6. 4,將轉換得到的賦權超圖保存為賦權超圖文件。上述的步驟7中,所述的賦權超圖核值計算的步驟如下。步驟7. 1,讀取賦權超圖文件,采用改進的壓縮存儲格式對賦權超圖進行存儲。
步驟7. 2,計算出所有結點的屬性函數值。步驟7. 3,對所有結點的屬性函數值進行非嚴格降序的計數排序。步驟7. 4,按照結點屬性函數值的非嚴格降序 次序訪問每個結點,計算每個結點V的核值。步驟7. 5,將所有結點的核值結果存儲在賦權超圖核值文件中。上述的步驟6. 3中,所述的確立信號X連接方式的步驟如下。步驟6. 3. 1,依次處理信號X的每個管腳連接,支持跨層次連接,尋找到連接端的電路邏輯單元y。步驟6. 3. 2,如果電路邏輯單元y已經存在信號x的連接中,則忽略該電路邏輯單元I。否則在信號X的連接中增加該電路邏輯單元I。上述的步驟7. I中,所述的賦權超圖的改進壓縮存儲格式如下。步驟7. I. 1,使用xadj數組存儲每個結點所有鄰接超邊列表的起始位置信息,即第i條結點的終止位置為第i+Ι條結點的起始位置減1,且Xadj數組的大小為賦權超圖中的結點個數加1,xadj數組最后一個元素用于存放最后一條結點的終止位置。步驟7. I. 2,使用adjncy數組存儲每個結點所有鄰接超邊的列表信息,第i條結點的鄰接超邊列表存儲在adjncy數組中,從adjncy [xadj [i]]到adjncy [xadj [i+1] _1]。步驟7· I. 3,使用eptr數組存儲每條超邊所包含的結點列表的起始位置信息,即第j條超邊的終止位置為第j+Ι條超邊的起始位置減1,且eptr數組的大小為賦權超圖中的超邊個數加1,eptr數組最后一個元素用于存放最后一條超邊的終止位置。步驟7. I. 4,使用eind數組存儲每條超邊所包含結點的列表信息,第j條超邊的鄰接結點列表存儲在eind數組中,從eind[eptr[j]]到eind[eptr [j+l]_l]。步驟7. I. 5,使用vwgts數組存儲結點的權值信息,且vwgts數組的大小為賦權超圖中的結點個數。步驟7. 1.6,使用hewgts數組存儲超邊的權值信息,且hewgts數組的大小為賦權超圖中的超邊個數。上述的步驟7. 4中,所述的結點V的核值計算的步驟如下。步驟7. 4. 1,將結點V的屬性函數值作為核值輸出。步驟7. 4. 2,將結點V從所在的超邊e中刪除。步驟7. 4. 3,如果超邊e刪除結點V后,仍包含兩個及以上結點,則超邊e仍然存在,否則刪除超邊e。步驟7. 4. 4,重新計算結點V的鄰接結點u的屬性函數值。步驟7. 4. 5,更新鄰接結點u屬性函數值的非嚴格降序計數排序的次序。本發(fā)明與現有技術相比較,具有如下顯而易見的突出實質性特點和顯著優(yōu)點。I、提高核值計算的效率。本發(fā)明在所述步驟7. 4. 2中,只需標記結點V從所在的超邊e中刪除,使之在后續(xù)步驟中能正確計算出鄰接結點u的屬性函數值即可。在所述步驟7. 4. 3中,只需更新大于結點V屬性函數值的鄰接結點u的屬性函數值及其計數排序的次序,而無需更新所有鄰接結點的屬性函數值及其計數排序的次序。經時間復雜度分析,其賦權超圖的核值計算方法的總時間復雜度與賦權超圖的超邊數呈線性關系。
2、改善結點匹配的性能。本發(fā)明計算出結點的核值,相比結點的度更能反映出結點在賦權超圖中的重要程度,有利于在賦權超圖的結點匹配過程中,發(fā)揮結點核值導向性作用,使得粗化后超圖中結點權值傾向于大小一致,并最大程度地減少超邊的數目以及超邊權值之和,為大規(guī)模集成電路多水平劃分的后續(xù)階段提供更優(yōu)的粗化超圖。 通過以下對本發(fā)明基于結點屬性函數的大規(guī)模集成電路的核值計算方法的實例結合其附圖的描述,可以進一步理解本發(fā)明的目的、具體結構特征和優(yōu)點。圖I是本發(fā)明基于結點屬性函數的大規(guī)模集成電路的核值計算方法的流程圖。圖2是本發(fā)明的賦權超圖的改進壓縮存儲格式。圖3是本發(fā)明的賦權超圖的核值計算方法的流程圖。圖4是本發(fā)明的針對結點屬性函數?5卜,U)的基于賦權超圖的改進壓縮存儲格式的核值求解算法的偽代碼。圖5是本發(fā)明的ISTO98測試基準中每組超圖結點的度和核值對比實驗數據表。
具體實施方式
。為了能夠更清楚地理解本發(fā)明基于多水平劃分法的大規(guī)模集成電路劃分方法的技術內容,特舉以下實例詳細說明。本實施例的基于結點屬性函數的大規(guī)模集成電路的核值計算方法的流程圖如圖I所示,用硬件描述語言描述輸入電路101,得到電路源代碼102 ;詞法分析電路的源代碼,得到對應的單詞符號103 ;在詞法分析基礎上進行語法分析,得到對應的語法短語104 ;在語法分析基礎上進行語義分析,得到對應的類型信息105 ;在語義分析基礎上,構造對應的內部中間代碼106 ;基于內部中間代碼構造文本描述的電路對應的線網107,經過電路線網到賦權超圖轉換之后,保存為賦權超圖文件108 ;啟動賦權超圖核值計算程序111,讀取賦權超圖文件108,得到采用改進的壓縮存儲格式存儲的賦權超

圖109 ;對每一結點進行核值計算,得到結點的核值結果110 ;將所有結點的核值結果存儲為賦權超圖核值文件112。本實施例的賦權超圖文件的文件存儲格式參見在先技術[I] “G. Karypis and V.Kumar. HMetis 1.5.3: A Hypergraph Partitioning Package [R]. Technical report,Department of Computer Science, University of Minnesota, 1998.,,和在先技術[2]“孫凌宇,冷明,郭愷強,朱平.一種VLSI設計到超圖的轉換系統(tǒng)[J].計算機工程與應用,2012,Vol. 29, Issue. 2, Pages 7-16. ”。本實施例的賦權超圖的改進壓縮存儲格式如圖2所示。存儲結構使用adjncy數組204存儲每個結點所有鄰接超邊的列表信息。使用xadj數組203存儲每個結點所有鄰接超邊列表的起始位置信息,即第i條結點的終止位置為第i+Ι條結點的起始位置減1,且xadj數組203的大小為賦權超圖中的結點個數加1,xadj數組203最后一個元素用于存放最后一條結點的終止位置。使用eind數組207存儲每條超邊所包含結點的列表信息。使用eptr數組206存儲每條超邊所包含的結點列表的起始位置信息,即第j條超邊的終止位置為第j+Ι條超邊的起始位置減1,且eptr數組206的大小為賦權超圖中的超邊個數加I,eptr數組206最后一個元素用于存放最后一條超邊的終止位置。使用vwgts數組202存儲結點的權值信息,且vwgts數組202的大小為賦權超圖中的結點個數。使用hewgts數組205存儲超邊的權值信息,且hewgts數組205的大小為賦權超圖中的超邊個數。假設數組地址從零開始,結點編號從零開始,則第i條結點的鄰接超邊列表存儲在adjncy數組204中,從adjncy [xadj [i]]到adjncy [xadj [i+1] _1];第j條超邊的鄰接結點列表存儲在eind數組207中,從eind [eptr [j]]到eind [eptr [j+1]-I]。圖例201包含總共7個結點和8條超邊,其中第6個結點的權值為7,有2條鄰接超邊f、h,對應的權值為4、I,且相應的鄰接結點分別為結點7、3、6和結點4、6。
賦權無向圖的結點核值的含義參見在先技術[3] “SEIDMAN. S. B. Networkstructure and minimum degress. Social Networks. September 1983, Vol.5, Issue.3,Pages 269-287”和在先技術[4] “孫凌宇,冷明,鄧曉春,郁松年.圖壓縮存儲格式的核排序重邊匹配算法[J]·計算機工程與應用,2011,Vol. 47, Issue. 10, Pages 41-47. ”。作為賦權無向圖的核值研究的深入和延續(xù),本發(fā)明將基于賦權無向圖的核值理論擴展到賦權超圖上,提出的賦權超圖的核的相關定義和定理如下。定義I :對于一給定超圖# = (__/,戶),由結點子集U ( UcV )得到的子圖Cg = (U1Ec),其中Ee = Eft I U如果滿足下列屬性,則稱子圖0是超圖He的序為k的核。
(I) degc0 (u) >k , iff vu e U。(2) 子圖Cg為滿足上述屬性的最大子圖。定義2 :對于一給定超圖He = (VlEfl),序值最大的核稱為該超圖的主核。結點V的核值為包含結點V的最大核的值,且超圖的核滿足嵌套關系-JCCf。定義3:對于一給定超圖W" = (VlElr),由結點子集U得到的子圖Ce =(UEc),如果滿足下列屬性,則稱子圖C3為超圖Hs在k水平的P-核。(I) P (V, U) >k , iff Vv e U。⑵子圖為滿足上述屬性的最大子圖。對超圖的核的概念進行了擴展,通過引入不同的結點屬性函數p(v,U)和p-core的概念來定義超圖的一般化的核,將基于結點的度屬性進行超圖的核值求解,擴展到結點的其他屬性進行超圖的核值求解。定義4 :對于一給定超圖Hg = (V,盧),令W(V)表示結點V在超圖Hg的鄰接超邊
子集,Ν(ν,Εη = Ν(ηηΕ\其中veV ,E^cEh,則結點屬性函數Ρ ν,U)可以描述下述屬性。⑴P, O, U) = Ctegci (V)。⑵P1 (v, U) = indegcB (v)。(3)P3 (v,U) = OUtdegclt (v)。(4)^0^0 = e x (e)o
權利要求
1. 一種基于結點屬性函數的大規(guī)模集成電路的核值計算方法,其特征在于,具體步驟 如下步驟I,用硬件描述語言描述該電路,生成該電路的源代碼;步驟2,詞法分析,從左到右一個個讀入該電路的源代碼,對構成源代碼的字符流進行 掃描和分解,從而識別出一個個單詞;步驟3,語法分析,在詞法分析的基礎上將單詞序列分解成各類語法短語,依據硬件描 述語言的語法規(guī)則,確定整個字符流是否構成一個語法上正確的硬件描述語言程序;步驟4,語義分析,在語法分析的基礎上審核源代碼有無語義錯誤,為中間代碼生成階 段收集類型信息;步驟5,中間代碼生成,在語法分析和語義分析的基礎上,將源代碼生成中間代碼,用內 部中間格式表示;步驟6,賦權超圖文件生成,基于中間代碼構造文本描述的電路對應的線網,經過電路 線網到賦權超圖的轉換之后,保存為賦權超圖文件;步驟7,賦權超圖核值計算,啟動賦權超圖核值計算程序,讀取賦權超圖文件,采用改進 的壓縮存儲格式對賦權超圖進行存儲,對生成的賦權超圖中每個結點,基于結點屬性函數 計算其核值,將所有結點的核值結果存儲在賦權超圖核值文件中;上述的步驟6中,所述的賦權超圖文件生成的步驟如下步驟6. 1,基于中間代碼構造電路源代碼描述電路對應的線網,生成完整電路線網;一 個完整的電路線網看作是一個根模塊,它由層次化的子模塊實例和電路邏輯單元通過信號 互連構成,且每個子模塊內部由端口、電路邏輯單元、嵌套子模塊的實例通過信號連接構 成;步驟6.2,從根模塊開始,遞歸遍歷層次化線網的模塊,為每個電路邏輯單元編號; 步驟6. 3,從根模塊開始,遞歸遍歷層次化線網的模塊,為每個電路邏輯單元之間的信 號編號,并確立每個信號X的連接方式,實現到賦權超圖的轉換;其中,電路線網中的電路 邏輯單元用賦權超圖的結點表示,電路線網中的信號用賦權超圖的超邊表示;結點的權值 代表電路邏輯單元的大小,超邊的權值代表電路邏輯單元之間信號連線的權值為賦權 超圖中結點的編號,取值范圍為I到電路線網中電路邏輯單元的總個數;j為賦權超圖中超 邊的編號,取值范圍為I到電路線網中信號的總個數;步驟6. 4,將轉換得到的賦權超圖保存為賦權超圖文件;上述的步驟7中,所述的賦權超圖核值計算的步驟如下步驟7. 1,讀取賦權超圖文件,采用改進的壓縮存儲格式對賦權超圖進行存儲;步驟7. 2,計算出所有結點的屬性函數值;步驟7. 3,對所有結點的屬性函數值進行非嚴格降序的計數排序;步驟7. 4,按照結點屬性函數值的非嚴格降序次序訪問每個結點,計算每個結點V的核值;步驟7. 5,將所有結點的核值結果存儲在賦權超圖核值文件中;上述的步驟6. 3中,所述的確立信號X連接方式的步驟如下步驟6. 3. 1,依次處理信號X的每個管腳連接,支持跨層次連接,尋找到連接端的電路 邏輯單元I ;步驟6. 3. 2,如果電路邏輯單元y已經存在信號X的連接中,則忽略該電路邏輯單元y ; 否則在信號X的連接中増加該電路邏輯單元y ;上述的步驟7. I中,所述的賦權超圖的改進壓縮存儲格式如下步驟7. I. 1,使用xadj數組存儲每個結點所有鄰接超邊列表的起始位置信息,即第i條 結點的終止位置為第i+1條結點的起始位置減1,且xadj數組的大小為賦權超圖中的結點 個數加1,xadj數組最后ー個元素用于存放最后一條結點的終止位置;步驟7. I. 2,使用adjncy數組存儲每個結點所有鄰接超邊的列表信息,第i條結點的鄰 接超邊列表存儲在 adjncy 數組中,從 adjncy [xadj [i]]到 adjncy [xadj [i+1] _1];步驟7. I. 3,使用eptr數組存儲每條超邊所包含的結點列表的起始位置信息,即第j條 超邊的終止位置為第j+1條超邊的起始位置減I,且eptr數組的大小為賦權超圖中的超邊 個數加1,eptr數組最后ー個元素用于存放最后一條超邊的終止位置;步驟7. I. 4,使用eind數組存儲每條超邊所包含結點的列表信息,第j條超邊的鄰接結 點列表存儲在 eind 數組中,從 eind[eptr[j]]到 eind [eptr [j+1]-I];步驟7. I. 5,使用vwgts數組存儲結點的權值信息,且vwgts數組的大小為賦權超圖中 的結點個數;步驟7. 1.6,使用hewgts數組存儲超邊的權值信息,且hewgts數組的大小為賦權超圖 中的超邊個數;上述的步驟7. 4中,所述的結點V的核值計算的步驟如下步驟7. 4. 1,將結點V的屬性函數值作為核值輸出;步驟7. 4. 2,將結點V從所在的超邊e中刪除;步驟7. 4. 3,如果超邊e刪除結點V后,仍包含兩個及以上結點,則超邊e仍然存在,否 則刪除超邊e ;步驟7. 4. 4,重新計算結點V的鄰接結點u的屬性函數值;步驟7. 4. 5,更新鄰接結點u屬性函數值的非嚴格降序計數排序的次序。
全文摘要
本發(fā)明涉及一種基于結點屬性函數的大規(guī)模集成電路的核值計算方法,其采用賦權超圖對電路進行數學建模,將電路線網轉換到賦權超圖,并保存為賦權超圖文件,然后啟動賦權超圖的核值計算程序,采用改進的壓縮存儲格式對賦權超圖進行存儲,并基于結點屬性函數計算結點的核值,將所有結點的核值結果存儲在賦權超圖核值文件中。采用本發(fā)明的核值計算方法,不僅能有效地提高核值計算的效率,還有利于在賦權超圖的結點匹配過程中,改善結點匹配的性能。
文檔編號G06F17/50GK102663216SQ201210150329
公開日2012年9月12日 申請日期2012年5月16日 優(yōu)先權日2012年5月16日
發(fā)明者冷子陽, 冷明, 孫凌宇 申請人:冷子陽, 冷明, 孫凌宇
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1