本發(fā)明屬于電路設計領域,具體涉及一種帶符號控制端的加減法通用電路。
背景技術:
目前,對于加法器和減法器都有自己特定的運算電路,在實際電路設計中加法電路和減法電路通常同時存在。因此有必要設計一種加減法通用電路,使其能夠用一種電路結構完成兩種運算,從而減少某一種運算所需要的邏輯門個數(shù),減少電路面積。
技術實現(xiàn)要素:
本發(fā)明的目的在于針對解決上述現(xiàn)有技術中的問題,提供一種帶符號控制端的加減法通用電路,通過增加符號位控制端及異或邏輯在同一個電路中實現(xiàn)加減法運算,簡化電路結構。
為了實現(xiàn)上述目的,本發(fā)明采用的技術方案為:包括m位級聯(lián)的全減器單元fm,每個全減器單元fm的輸入信號包括作為被減數(shù)或被加數(shù)的信號a以及作為減數(shù)或加數(shù)的信號b,所述的信號b與符號位控制信號cr進行異或運算,并連接至全減器單元fm的減數(shù)或加數(shù)輸入端;所述每個全減器單元fm的輸出信號包括運算結果信號s,所述的符號位控制信號cr連接至第一級全減器單元fm的低位借位輸入端,最高一級的借位輸出信號為信號cout;當所述的符號位控制信號cr取0時,整個電路進行的是減法運算;當所述的符號位控制信號cr取1時,整個電路進行的是加法運算。所述的m為正整數(shù)。
m位級聯(lián)的全減器單元fm當中,第一級全減器單元fm的低位借位信號cin連接符號位控制信號cr作為最低位的借位輸入,所述的第一級全減器單元fm輸出第一級運算結果信號s0以及第一級向高位借位輸出信號cout0,第一級向高位借位輸出信號cout0連接至第二級全減器單元fm的低位借位輸入端,以此類推,對第二級到第m-1級全減器單元fm進行級聯(lián),在各級之間,低一級全減器單元的借位輸出直接連接至高一級單元的借位輸入端。
全減器單元fm的信號b與低位借位信號cin分別連接在第一或非門的輸入端,第一或非門的輸出信號與信號b連接在第二或非門的輸入端,第一或非門的輸出信號與低位借位信號cin連接在第三或非門的輸入端;第二或非門和第三或非門的輸出端連接在第四或非門的兩個輸入端;第四或非門的輸出信號與信號a連接在第五或非門的兩個輸入端;第五或非門的輸出信號與第四或非門的輸出信號連接在第七或非門的兩個輸入端,第五或非門的輸出信號和信號a連接在第六或非門的兩個輸入端;第六或非門的輸出信號和第七或非門的輸出信號連接在第八或非門的兩個輸入端上,第八或非門的輸出信號為運算結果信號s;第七或非門的輸出信號和第一或非門的輸出信號連接在第九或非門的輸入端上,第九或非門的輸出為信號cout。
所述信號a與信號b分別設置有m位,符號位控制信號cr設置有1位且分別連接至不同全減器單元fm。
當所述的符號位控制信號cr取0時,整個電路進行m位減法運算,輸出共m+1位,運算結果sm-1到運算結果s0表示差,電路的借位輸出信號cout表示差的符號位;當所述的符號位控制信號cr取1時,整個電路進行m位加法運算,輸出共m+1位,電路的借位輸出信號cout表示和的最高位,運算結果sm-1到運算結果s0表示和的其他位。
所述的異或運算通過第一級或非門使信號b與符號位控制信號cr進行或非運算,第一或非門的輸出信號再通過第二級或非門分別與信號b以及符號位控制信號cr進行或非運算,將得到的兩個或非運算結果通過或門進行或運算后輸出。
與現(xiàn)有技術相比,本發(fā)明具有如下的有益效果:以全減器單元為基礎,級聯(lián)m位全減器單元成為m位減法器,通過增加符號位控制信號以及異或運算邏輯,能夠同時控制實現(xiàn)m位的加減法運算。本發(fā)明能夠同時適用于加減法,從而減少邏輯門個數(shù),減小了電路面積。
附圖說明
圖1或非門表示的異或電路;
圖2全減器單元的電路結構示意圖;
圖3本發(fā)明電路的整體結構示意圖;
具體實施方式
下面結合附圖對本發(fā)明做進一步的詳細說明。
參見圖1-3,本發(fā)明全減器單元的布爾表達式如下:
布爾表達式中的異或運算能夠用兩級三個或非門和一個或門來實現(xiàn)。
作為減法器級聯(lián)基本單元的一位全減器單元由六級或非門構成,六級或非門結構對稱,從輸入到輸出依次串聯(lián),六級或非門中的第一或非門、第二或非門、第三或非門、第五或非門和第六或非門的輸入端與輸入信號相連,第八或非門、第九或非門的輸出端與輸出信號相連。輸入信號包括作為被減數(shù)的信號a、作為減數(shù)的信號b、低位借位信號cin,輸出信號包括運算結果信號s和向高位借位的信號cout。作為被減數(shù)的信號a連接在第五、第六或非門的一個輸入端上,作為減數(shù)的信號b和低位借位信號cin都分別連接在第一、第二或非門的輸入端上。第一或非門的輸出端與信號b連接在第二或非門的輸入端上,第一或非門的輸出端與低位借位信號cin連接在第三或非門的輸入端上。第二或非門和第三或非門的輸出端連接在第四或非門的兩個輸入端上,第四或非門的輸出與信號a連接在第五或非門的兩個輸入端。第五或非門的輸出與第四或非門的輸出連接在第七或非門的兩個輸入,第五或非門的輸出和信號a連接在第六或非門的兩個輸入端上。第六或非門的輸出和第七或非門的輸出連接在第八或非門的兩個輸入端上,第八或非門的輸出為運算結果信號s。第七或非門的輸出和第一或非門的輸出連接在第九或非門的輸入端上,第九或非門的輸出為cout。
參見圖3,本發(fā)明中的全減器單元fm級聯(lián)而成m位的加減法電路。m級電路結構相同,用第一級的電路結構來舉例說明每一級信號連接關系。m為加減法電路的輸入信號為a和b,以及符號位控制信號cr。a和b都是m位,cr為1位。輸入a作為被減數(shù)或被加數(shù),a的最低位a0連接至第一級的一位全減器單元fm的被減數(shù)輸入端。輸入b作為減數(shù)或加數(shù),b的最低位b0接入一個異或電路。參見圖1,異或電路的輸入為b0和信號cr,連接至異或電路中第一或非門的兩個輸入端,第一或非門的輸出和b0連接至第二或非門的輸入端,第一或非門的輸出和cr連接至第三或非門的輸入端。第二或非門的輸出和第三或非門的輸出連接至第四或門的輸入端,第四或門的輸出連接一位全減器單元fm的減數(shù)輸入端。
第一級全減器單元fm的輸出連接輸出信號s0,其向高位借位的輸出信號連接下一級全減器單元的低位借位輸入端。第二到第m級電路的連接關系與第一級相同,符號位控制信號cr分別與信號b1,b2,...bm-1連接至每一級電路中的異或電路的第一或非門的輸入端。符號位控制信號cr連接至第一級全減器電路的低位借位輸入端,最高一級的借位輸出為cout。
當符號位控制信號cr為0時,整個電路進行m位減法運算,輸出共m+1位。sm-1到s0表示差,電路的借位輸出cout表示差的符號位。
當符號位控制信號cr為1時,整個電路進行m位加法運算,輸出共m+1位。cout表示和的最高位,sm-1到s0表示和的其他位。
用抽象單元fm來表示圖2中的電路,本發(fā)明m位加減法電路結構如圖3所示。
第一級全減器單元的借位輸入端連接符號位控制信號cr,作為最低位的借位輸入,輸出端為s0和向高位借位輸出cout0。最高位的借位輸出cout0,直接連接至第二級全減器單元的低位借位輸入端。按照這樣的連接方案,對第二級到第m-1級全減器單元進行級聯(lián),在各級之間,低一級全減器單元的借位輸出直接連接至高一級單元的借位輸入端。最后一級即第m-1級全減器單元,輸入端中一端連接輸入信號a的最高位am-1,另一個連接符號位控制信號cr與輸入信號b最高位bm-1的異或結果,輸出端為sm-1和向高位借位輸出cout,最后一級的借位輸出cout作為整個減法電路的借位輸出保留。
本發(fā)明m位加減法電路工作原理如下:
當符號位控制信號cr取0時,輸入信號b的每一位與符號位控制信號cr作異或后,送入全減器單元fm輸入端的值仍是輸入信號b本身,整個電路進行的是減法運算,計算被減數(shù)a與減數(shù)b的差值,輸出包括m位的差s和借位輸出cout,共m+1位。本電路在進行減法運算時,將cout作為最高位保留,用來表示結果s的符號位。布爾表達式為:
s=a-b
當符號位控制信號cr取1時,輸入信號b的每一位與符號位控制信號cr異或后,送入全減器單元fm輸入端的是b值取反,第一級全減器單元fm的借位信號cin輸入置1,整個電路進行的是加法運算,計算被加數(shù)a與加數(shù)b的和,輸出包括m位的和s、進位輸出cout,共m+1位,進行加法運算時,將cout作為和的最高位,和共m+1位。布爾表達式為: