專利名稱:模(2的制作方法
技術(shù)領(lǐng)域:
本實用新型涉及一種運算電路,具體地說,是涉及一種可實現(xiàn)模(216+1)乘法逆運算的運算電路。
背景技術(shù):
模(216+1)乘法逆運算電路對16位的輸入數(shù)據(jù)D,求D的模216+1的乘法逆Q,即對于D求Q,使得下式成立D*Q=1 mod(216+1)。
求D的模216+1乘法逆Q的算法如下(1)令n1=216+1,n2=D,b1=0,b2=1;(2)求q,r,使n1=q*n2+r;(3)若r≠0,則作n1=n2,n2=r,t=b2,b2=b1-q*b2,b1=t,轉(zhuǎn)第(2)步;若r=0,則進行第(4)和第(5)步;(4)若b2<0,則作b2=b2+(216+1);(5)b2就是D的乘法逆,即Q=b2,結(jié)束。
以上運算流程中,在r=0之前可能會在第(2)和第(3)步驟之間進行若干周期的運算。在整個循環(huán)運算中,由于各運算部件,如加法器、乘法器、除法器運算速度不一致,則n1、n2、b1、b2裝載時間不一致,從而會導(dǎo)致運算錯誤。此外,在前一數(shù)據(jù)運算還未完成之前,新的數(shù)據(jù)的到來會破壞前一數(shù)據(jù)的運算,從而導(dǎo)致結(jié)果出錯。
發(fā)明內(nèi)容
為了克服傳統(tǒng)設(shè)計不能保證運算電路計算的準(zhǔn)確性和穩(wěn)定性,本實用新型提供了一種模(216+1)乘法逆運算電路,此電路不僅能準(zhǔn)確穩(wěn)定地完成模(216+1)乘法逆運算的功能,而且結(jié)構(gòu)簡單,控制準(zhǔn)確。
為解決上述技術(shù)問題,本實用新型通過以下技術(shù)方案予以實現(xiàn)一種模(216+1)乘法逆運算電路,包含有除法器、零比較器和寄存器,所述零比較器的輸入端與除法器的余數(shù)輸出端相連,而所述的寄存器則用來存儲運算過程中需暫存的數(shù)據(jù);所述寄存器的輸入端分別與一選擇器的輸出端相連,所述選擇器的控制端均與使能信號輸入端相連;所述零比較器的輸出端經(jīng)一非門與一或門的輸入端相連,所述或門的另一輸入端連接使能信號輸入端,經(jīng)或運算后分別與所述寄存器的使能端相連。
其中,所述使能信號輸入端接收裝載使能信號,此裝載使能信號的周期大于該運算電路運算所需的最長時間。
此外,上述除法器和寄存器的時鐘輸入端均與一統(tǒng)一的時鐘信號輸入端相連。
與現(xiàn)有技術(shù)相比,本實用新型的優(yōu)點和積極效果是本實用新型通過增加裝載使能信號和時鐘信號,使寄存器和除法器的動作同步于輸入時鐘,并且所述裝載使能信號的周期大于該運算電路運算所需的最長時間,從而保證了裝載新的數(shù)據(jù)不會破壞正在進行中的運算,提高了運算的準(zhǔn)確性。上述電路結(jié)構(gòu)簡單、成本低廉、控制準(zhǔn)確。
圖1是本實用新型實現(xiàn)模(216+1)乘法逆運算的前一部分電路圖;
圖2是本實用新型實現(xiàn)模(216+1)乘法逆運算的后一部分電路圖。
具體實施方式
以下結(jié)合附圖和具體實施方式
對本實用新型做進一步詳細(xì)的說明。
本實用新型由5個寄存器n1、n2、b1、b2、out,5個選擇器n1_5、n2_5、b1_5、b2_5、out_2,一個除法器u_divider,兩個加法器b2_nxt、un2_out,一個乘法器un2_b2_nxt和一個零比較器組成,具體連接關(guān)系參見圖1、圖2所示。5個寄存器n1、n2、b1、b2、out的數(shù)據(jù)輸入端D分別與相應(yīng)的選擇器n1_5、n2_5、b1_5、b2_5、out_2的輸出端相連,其時鐘輸入端均與統(tǒng)一的時鐘信號輸入端clk相連,使其動作同步于輸入時鐘。
在本實用新型的模(216+1)乘法逆運算電路中增設(shè)有使能信號輸入端,可接收裝載使能信號ld,它分別與選擇器n1_5、n2_5、b1_5、b2_5的控制端相連,根據(jù)裝載使能信號ld的高低電平實現(xiàn)對選擇器n1_5、n2_5、b1_5、b2_5輸出數(shù)據(jù)的控制。此外,在本實用新型的模(216+1)乘法逆運算電路中還包含有除法器u_divider,其輸入端分別與寄存器n1、n2的輸出端相連,時鐘信號端c與統(tǒng)一的時鐘信號輸入端clk相連,余數(shù)輸出端r與零比較器的輸入端相連。所述零比較器由17個非門和1個與門組成,17位余數(shù)r的每一位與1個非門相連,經(jīng)按位取反后與所述與門相連進行與運算。若余數(shù)r為零,則零比較器輸出結(jié)果req0為1;反之,為0。所述零比較器的輸出端一路與寄存器out的使能端E相連,當(dāng)余數(shù)r為零時,寄存器out打開,裝載輸出結(jié)果,反之則不變;另一路通過一非門與一或門un1_ld的輸入端相連,所述或門n1_ld的另一輸入端接收裝載使能信號ld,將其進行或運算后分別向寄存器n1、n2、b1、b2的使能端E發(fā)出控制信號。當(dāng)裝載使能信號ld為低電平(無新數(shù)據(jù)載入)且余數(shù)r為0時,或門un1_ld輸出低電平,此時寄存器n1、n2、b1、b2關(guān)閉,不能裝載數(shù)據(jù);當(dāng)裝載使能信號ld為高電平(載入新數(shù)據(jù))或余數(shù)r非0時,或門un1_ld輸出高電平,以上寄存器n1、n2、b1、b2可以在時鐘clk上升沿將數(shù)據(jù)輸入端D的數(shù)據(jù)送到其輸出端Q。
當(dāng)載入新數(shù)據(jù)d時,裝載使能信號ld發(fā)出高電平脈沖信號,控制選擇器n1_5、n2_5、b1_5、b2_5將其1輸入端的初始數(shù)據(jù)裝入寄存器n1、n2、b1、b2,對其進行初始化。此時,寄存器n1中的數(shù)據(jù)為216+1;寄存器n2中的數(shù)據(jù)為輸入數(shù)據(jù)d,其最高位與0拼接形成17位數(shù)據(jù);寄存器b1中的數(shù)據(jù)為0;寄存器b2中的數(shù)據(jù)為1。除法器u_divider將寄存器n1中的數(shù)據(jù)與n2中的數(shù)據(jù)相除,輸出的商q與寄存器b2中的數(shù)據(jù)經(jīng)乘法器un2_b2_nxt相乘,其乘積經(jīng)一非門取反后連接到加法器b2_nxt的一個輸入端,所述加法器b2_nxt包含有三個輸入端,另外兩個輸入端一路與寄存器b1的輸出端相連,另一路輸入數(shù)據(jù)1,實現(xiàn)b1-q*b2的運算。所述加法器b2_nxt的輸出端與比較器b2_5的0輸入端相連,其輸出端與寄存器b2的數(shù)據(jù)輸入端相連。
當(dāng)下一個時鐘信號clk到來時,由于此時裝載使能信號ld為低電平,所以選擇器n1_5、n2_5、b1_5、b2_5將其0輸入端的數(shù)據(jù)輸出給其后的寄存器n1、n2、b1、b2,在時鐘clk上升沿,寄存器n1讀入寄存器n2中的數(shù)據(jù),寄存器n2存入余數(shù)r的值,寄存器b1讀入寄存器b2中的值,而寄存器b2存入加法器b2_nxt輸出的結(jié)果。同時,寄存器b2的輸出端一路連接選擇器out_2的0輸入端,另一路與加法器un2_out的輸入端相連,完成b2+(216+1)的運算,并將結(jié)果輸出給選擇器out_2的1輸入端。選擇器out_2的控制端與寄存器b2中數(shù)據(jù)的最高位相連,當(dāng)寄存器b2中的數(shù)據(jù)為正數(shù)時,最高位為0,控制選擇器out_2將其0輸入端的數(shù)據(jù)輸出;當(dāng)寄存器b2中的數(shù)據(jù)為負(fù)數(shù)時,最高位為1,控制選擇器out_2將其1輸入端的數(shù)據(jù)輸出。
在余數(shù)r≠0期間,寄存器n1、n2、b1、b2處于打開狀態(tài),寄存器out處于關(guān)閉狀態(tài),運算電路按上述流程循環(huán)運算;當(dāng)余數(shù)r=0時,寄存器n1、n2、b1、b2關(guān)閉,寄存器out打開,將選擇器out_2輸出的數(shù)據(jù)作為運算的最終結(jié)果輸出。
本實用新型通過以上電路實現(xiàn)了模(216+1)乘法逆運算,由于增加的裝載使能信號ld的周期大于該運算電路運算所需的最長時間,所以保證了裝載新的數(shù)據(jù)不會破壞正在進行中的運算,大大提高了運算的準(zhǔn)確性和穩(wěn)定性。當(dāng)然,上述說明并非是對本實用新型的限制,本實用新型也并不僅限于上述舉例,本技術(shù)領(lǐng)域的普通技術(shù)人員在本實用新型的實質(zhì)范圍內(nèi)所做出的變化、改型、添加或替換,也應(yīng)屬于本實用新型的保護范圍。
權(quán)利要求1.一種模(216+1)乘法逆運算電路,包含有除法器、零比較器和寄存器,所述零比較器的輸入端與除法器的余數(shù)輸出端相連,而所述的寄存器則用來存儲運算過程中需暫存的數(shù)據(jù);其特征在于所述寄存器的輸入端分別與一選擇器的輸出端相連,所述選擇器的控制端均與使能信號輸入端相連;所述零比較器的輸出端經(jīng)一非門與一或門的輸入端相連,所述或門的另一輸入端連接使能信號輸入端,經(jīng)或運算后分別與所述寄存器的使能端相連。
2.根據(jù)權(quán)利要求1所述的模(216+1)乘法逆運算電路,其特征在于所述除法器和寄存器的時鐘輸入端均與一統(tǒng)一的時鐘信號輸入端相連。
3..根據(jù)權(quán)利要求1或2所述的模(216+1)乘法逆運算電路,其特征在于所述使能信號輸入端接收裝載使能信號,所述裝載使能信號的周期大于該運算電路運算所需的最長時間。
專利摘要本實用新型公開了一種模(文檔編號G06F7/72GK2674542SQ20042003827
公開日2005年1月26日 申請日期2004年2月8日 優(yōu)先權(quán)日2004年2月8日
發(fā)明者何云鵬, 曲英杰, 占嘉瑾, 丁勇, 劉志恒, 孫爾俊, 陳永強, 繆建兵, 王瑞冰, 楊帆, 丘敏, 張世友 申請人:海信集團有限公司