專利名稱:一種用于數字電路設計的固定極性轉換方法
技術領域:
本發明涉及數字電路設計技術領域,尤其是涉及一種用于數字電路設計的固定極性轉換方法,本方法主要針對包含無關項的RM邏輯函數。
背景技術:
數字電路一般用AND/0R/N0T (與/或/非)組成完備集的Boolean (布爾)邏輯實現。然而,部分電路,如算術電路、通信電路和奇偶校驗電路,用RM (Reed-Mul Ier,里德穆勒)邏輯實現時,具有面積、功耗和速度等方面的顯著優勢。此外,用RM邏輯實現的數字電路還表現出更好的可測試性。RM邏輯主要由XN0R/0R (同或/或)或者X0R/AND (異或/與)運算組成,FPRM (固定極性里德穆勒)展開式是一種重要的RM邏輯展開式。FPRM展開式可通過極性轉換從Boolean邏輯SOP (Sum-of-Products)展開式得至丨J,如文獻 I (P. Wang, X. Chen. Tabular techniques for OR-Coincidence logic[J].Journal of electronics (China). 2006, 23 (2) : 269-273)(汪鵬君,陳偕雄.基于或-符合邏輯的快速列表技術「.Tl.電子學報(中國).2006,23(2) :269-273)中提出的快速列表轉換方法和文獻 2 (B. A. Al Jassani, N. Urquhart, A. E. A. Almaini. Manipulationand optimisation techniques for Boolean logic[J]. IET Computers and DigitalTechniques. 2010,4 (3) : 227-239) (B. A. Al Tassani, N. Urquhart, A. E. A. Almaini.布爾邏輯的處理與優化技術[J].英國工程技術學會計算機與數字技術.2010, 4(3) :227-239)中提出的一種SOP展開式和FPRM展開式相互轉換的方法。但上述兩種極性轉換方法都沒有考慮SOP展開式中可能存在的無關項。無關項是Boolean邏輯函數SOP展開式中一種特殊的最小項,無論是否將其寫入展開式,都不影響邏輯函數的功能,然而適當地選擇部分無關項寫入Boolean邏輯函數SOP展開式,可使對應的FPRM展開式更加簡化,從而簡化數字電路,使其功耗、延時等得到優化。因此,在數字電路設計中,對包含無關項的邏輯函數SOP展開式和FPRM展開式極性轉換的研究具有現實意義。
發明內容
本發明所要解決的技術問題是提供一種用于數字電路設計的固定極性轉換方法,該方法可以將包含無關項的Boolean邏輯SOP展開式轉換為簡化的FPRM展開式,從而獲得面積較小,功耗較低,速度較快的RM邏輯電路。本發明解決上述技術問題所采用的技術方案為一種用于數字電路設計的固定極性轉換方法,首先讀入包含無關項的布爾邏輯函數的SOP展開式;然后利用快速列表技術分別建立最小項索引表和無關項索引表;最后搜索最優無關項取舍,選擇合適的無關項寫A FPRM函數式,得到與項最少的FPRM展開式;具體過程如下①讀入布爾電路,將布爾電路用包含無關項的布爾邏輯函數的SOP展開
I31-IIn-I
式表示為=+YAmi ,其中E為或運算符,n為
權利要求
1.一種用于數字電路設計的固定極性轉換方法,其特征在于首先讀入包含無關項的布爾邏輯函數的SOP展開式;然后利用快速列表技術分別建立最小項索引表和無關項索引表;最后搜索最優無關項取舍,選擇合適的無關項寫入FPRM函數式,得到與項最少的FPRM 展開式;具體過程如下①讀入布爾電路,將布爾電路用包含無關項的布爾邏輯函數的SOP展開式2U -I2h -I表示為/(IiJV2,…,\,...士)= ΣαΜ,其中Σ為或運算符,η為/=0 1=0函數 f (χη-ι, Χη-2. · · ·,χ。,· · ·,X。)的輸入變量數,(Xlri, Χη-2. · · ·,X。,· · ·,X。)為函數f (xn_!, xn_2,. . . , Xc, · · ·,X0)的η個輸入變量,IIii代表最小項,IIii用符號表示為 U.2…之…七,i為最小項序數,且O彡i彡2n-l,i用二進制形式表示為I1 in_2. · · ic. · · i。,c為正整數且O彡c ( n-1,4與i。有如下關系:當ic=0時,毛= ,當ic=l時, Bi為最小項系數且ai e {O, 1},當ai=0時表示Hii不在SOP展開式中出現,當ai=l時表示Hii在SOP展開式中出現,(Ii為無關項系數且(Ii e {O, 1},當(Ii=O時表示Hii不屬于無關項,當Cli=I時表示Hii屬于無關項;布爾邏輯函數的SOP展開式中包含k個無關項,分別記為 dk-i、^、···、+ ···、^用W代表無關項取舍,表不各無關項是否寫入邏輯函數的SOP展開式, W用k位的二進制形式表示為Wlrf wky Wj…Wci,其中,Wj=O表示所對應的無關項dj不寫入 SOP展開式,Wj=I表示所對應的無關項Clj寫入SOP展開式;將包含無關項的布爾邏輯函數的SOP展開式轉換為FPRM函數式,FPRM函數式表示為尸(Xml2,.. τ ,χη)=其i-0中P為變量極性,P用二進制數表示為Pm Pn-2. . . P。. . . Po,代表η個變量在FPRM展開式中的出現方式; ZSXOR運算;L SFPRM展開式中的與項,匕e {0,1},當I^i=O時表示Jii 不寫入FPRM展開式,當bi=l時表示JI i寫入FPRM展開式;②采用快速列表技術將SOP展開式中所有的最小項轉換為其相應的與項,并將所有的最小項所產生的與項保存到最小項索引表中,得到最小項索引表;③采用快速列表技術將SOP展開式中所有的無關項轉換為其相應的與項,并將所有的無關項所產生的與項保存到無關項索引表中,得到無關項索引表;④結合無關項索引表與最小項索引表搜索最優無關項取舍,選擇合適的無關項寫入 FPRM函數式,得到與項最少的FPRM展開式。
2.根據權利要求I所述的一種用于數字電路設計的固定極性轉換方法,其特征在于建立得到最小項索引表的具體過程為②-I將SOP展開式中所有的最小項用二進制形式表示;②-2將所要求的極性轉換為二進制形式,并與所有的最小項進行異或操作,得到新的最小項;②-3初始化最小項索引表,賦值為0,長度為2n,其中η為變量數;②-4針對步驟②-2中得到的每個新的最小項,統計O位的個數,記為t,以O位為無關位,產生2t個相關與項,并更新最小項索引表中與項的項數;②-5重復步驟②_4,直到所有的新的最小項轉換完畢。
3.根據權利要求I或2所述的一種用于數字電路設計的固定極性轉換方法,其特征在于建立得到無關項索引表的具體過程為③-I將SOP展開式中所有的無關項用二進制形式表示;③-2將所要求的極性轉換為二進制形式,并與所有的無關項進行異或操作,得到新的無關項;③-3初始化無關項索引表,賦值為0,長度為2n,其中η為變量數;③_4針對步驟③-2得到的每個新的無關項,統計O位的個數,記為t,以O位為無關位,產生2t個相關與項,并更新無關項索引表中與該無關項相對應的位;③_5重復步驟③_4,直到所有的新的無關項轉換完畢。
4.根據權利要求3所述的一種用于數字電路設計的固定極性轉換方法,其特征在于搜索最優無關項取舍,得到與項最少的FPRM展開式的具體過程為④-I將無關項索引表的值用二進制形式表示;④_2將無關項取舍W用二進制形式表示,Kff < 2k-l ;④_3建立一個空的FPRM與項系數索引表;④-4將無關項索引表的值和無關項取舍W進行按位與操作,計算其結果中I的個數, 并與最小項索引表的值相加,兩者之和存于FPRM與項系數索引表;④-5FPRM與項系數索引表中項數為奇數的項即為FPRM函數式中的bi=l時的與項Jii, 統計得其數量記為products ;④-6將步驟④-5中得到的Ji i代入FPRM函數式.··,=;=θ中,得到無關項取舍為W時的FPRM展開式;④-7將W的值加I ;④_8重復步驟④_2 ④-7,與項數量products最小的FPRM展開式,即為最終要求的 FPRM展開式。全文摘要
本發明公開了一種用于數字電路設計的固定極性轉換方法,首先讀入包含無關項的布爾邏輯函數的SOP展開式;然后利用快速列表技術分別建立最小項索引表和無關項索引表;最后搜索最優無關項取舍,選擇合適的無關項寫入FPRM函數式,得到與項最少的FPRM展開式;優點是實現了數字電路設計過程中包含無關項的Boolean邏輯函數的SOP展開式到RM展開式的固定極性的轉換,通過對10個MCNC Benchmark電路進行測試,結果表明與不考慮無關項的固定極性轉換方法相比,本發明能有效簡化FPRM展開式,獲得面積較小,功耗較低,速度較快的RM邏輯電路。
文檔編號G06F17/50GK102982205SQ201210478750
公開日2013年3月20日 申請日期2012年11月21日 優先權日2012年11月21日
發明者汪鵬君, 汪迪生, 蔣志迪, 孫飛 申請人:寧波大學