專(zhuān)利名稱(chēng):用純組合電路實(shí)現(xiàn)除法計(jì)算的電路的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種除法電路,特別是涉及一種用純組合電路實(shí)現(xiàn)除法計(jì)算的電路。
背景技術(shù):
除法是數(shù)字信號(hào)處理中常用的一種運(yùn)算,目前通用的除法電路的硬件實(shí)現(xiàn)是用移位減的電路來(lái)實(shí)現(xiàn)的,這樣從開(kāi)始計(jì)算到最后出結(jié)果需要N個(gè)時(shí)鐘周期,其中N為被除數(shù)的比特?cái)?shù)。在一些數(shù)據(jù)帶寬很高且大量用到除法的算法中,這樣的執(zhí)行周期數(shù)使得該除法電路要求很高的時(shí)鐘頻率,而這樣的時(shí)鐘頻率也許并不是模擬前端所能夠提供的。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是提供一種用純組合電路實(shí)現(xiàn)除法計(jì)算的電路,在實(shí)現(xiàn)除法算法時(shí),能夠降低所要求的時(shí)鐘頻率。為解決上述技術(shù)問(wèn)題,本發(fā)明的用純組合電路實(shí)現(xiàn)除法計(jì)算的電路,包括:—?dú)w一化模塊,其輸入是除數(shù)b,其一輸出端輸出歸一化了的除數(shù),記為b’;另一輸出端輸出除數(shù)b歸一化到b’時(shí)的右移位的位數(shù),記為s ;用于將輸入除數(shù)b的輸入范圍歸一化到一次分段函數(shù)模塊及查找表模塊的輸入范圍內(nèi);—分段一次函數(shù)模塊,其輸入端與所述歸一化模塊的一輸出端相連接,輸入歸一化了的除數(shù)b’,其輸出記為c ;用于計(jì)算I除以歸一化了的除數(shù)b’這個(gè)運(yùn)算的大致結(jié)果,以節(jié)約查找表模塊所需的存儲(chǔ)空間;—查找表模塊,其輸入端與所述歸一化模塊的一輸出端相連接,輸入歸一化了的除數(shù)b’,其輸出記為d ;用于記錄存儲(chǔ)I除以輸入除數(shù)b的結(jié)果與所述分段一次函數(shù)模塊輸出的差;—加法模塊,其一輸入端與所述分段一次函數(shù)模塊輸出端相連接,輸入該分段一次函數(shù)模塊的輸出C,另一輸入端與所述查找表模塊的輸出端相連接,輸入該查找表模塊的輸出d ;將這兩個(gè)輸入c和d相加,其輸出端得到的結(jié)果e就是I除以歸一化了的除數(shù)b’的結(jié)果;一乘法模塊,其一輸入端與所述加法模塊的輸出端相連接,輸入該加法模塊的輸出e,另一輸入端輸入被除數(shù)a;其輸出f就是被除數(shù)a/Ι除以歸一化了的除數(shù)b’的結(jié)果;一右移位模塊,其一輸入端與所述乘法模塊的輸出端相連接,輸入該乘法模塊的輸出e ;另一輸入端與所述歸一化模塊的輸出端相連接,輸入該歸一化模塊的輸出S ;其輸出g就是a/b的結(jié)果。采用本發(fā)明的用純組合電路來(lái)實(shí)現(xiàn)除法計(jì)算的電路,當(dāng)除數(shù),被除數(shù)有效時(shí),能夠立刻給出除法的結(jié)果;從而降低了所要求的時(shí)鐘頻率,使得那些大量用到除法計(jì)算的數(shù)字信號(hào)處理算法可用。本發(fā)明適用于系統(tǒng)時(shí)鐘不快,除法計(jì)算密集,計(jì)算結(jié)果要求能很快出來(lái)的產(chǎn)品;電路的復(fù)雜度取決于應(yīng)用所要求的除法結(jié)果的精度。
下面結(jié)合附圖與具體實(shí)施方式
對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明:附圖是用純組合電路實(shí)現(xiàn)除法計(jì)算的電路原理結(jié)構(gòu)圖。
具體實(shí)施例方式結(jié)合附圖所示,所述用純組合電路實(shí)現(xiàn)除法計(jì)算的電路,包括:歸一化模塊1、分段一次函數(shù)模塊2、查找表模塊3、加法模塊4、乘法模塊5和右移位模塊6。所述歸一化模塊1,用于將輸入除數(shù)b的輸入范圍歸一化到一次分段函數(shù)模塊及查找表模塊的輸入范圍內(nèi)。由于分段一次函數(shù)模塊2及查找表模塊3的輸入都有一定范圍,而輸入除數(shù)b (實(shí)際除數(shù))的輸入是沒(méi)有范圍限制的,所以需要對(duì)輸入除數(shù)的輸入范圍歸一化到分段一次函數(shù)模塊2及查找表模塊3的輸入范圍內(nèi)。所述歸一化模塊I把輸入除數(shù)b右移到歸一化范圍內(nèi),并記錄右移的位數(shù);其中,將輸入除數(shù)b右移到歸一化范圍內(nèi)后的值作為輸出b’,移位的位數(shù)作為輸出S。所述分段一次函數(shù)模塊2,用于計(jì)算I除以歸一化了的除數(shù)b’的大致結(jié)果,這樣可以節(jié)約查找表模塊3所需的存儲(chǔ)空間。所述分段一次函數(shù)模塊2,是按具體應(yīng)用所要求的精度,通過(guò)對(duì)函數(shù)y = l/χ在O I范圍內(nèi)分段,每個(gè)分段用最小二乘法對(duì)一次函數(shù)進(jìn)行擬合,這些擬合后的一次函數(shù)組成了所述分段一次函數(shù)模塊。所述查找表模塊3,用于記錄存儲(chǔ)I除以輸入除數(shù)b的結(jié)果與所述分段一次函數(shù)模塊2輸出的差。所述查找表模塊3根據(jù)具體應(yīng)用所要求的精度,記錄了分段一次函數(shù)模塊2擬合出的值與真實(shí)值之間的差。所述加法模塊4,將所述分段一次函數(shù)模塊2的輸出c和查找表模塊3的輸出d相力口,其輸出端得到的結(jié)果e就是I除以歸一化了的除數(shù)b’的結(jié)果。
所述乘法模塊5,其輸出f就是被除數(shù)a/Ι除以歸一化了的除數(shù)b’的結(jié)果。所述右移位模塊6,其輸出g就是a/b的結(jié)果。本發(fā)明的核心思想是把a(bǔ)/b,先分解為aXl/b。1/b是通過(guò)歸一化模塊I先歸一化b到O I之間(記結(jié)果為b’);然后用分段一次函數(shù)模塊2來(lái)計(jì)算Ι/b’,這個(gè)分段一次函數(shù)模塊2分段擬合了 I = 1/χ,0 < X < I。加法模塊4把分段一次函數(shù)模塊2計(jì)算出的結(jié)果加上存在查找表模塊3中的擬合函數(shù)與實(shí)際I = l/χ的誤差,就得到了較準(zhǔn)確的I/b’。由乘法模塊5將Ι/b’乘上被除數(shù)a ;右移位模塊6將b右移到與b’相同的位數(shù),就得到了 a/b的結(jié)果go所述用純組合電路實(shí)現(xiàn)除法計(jì)算的電路計(jì)算a/b的結(jié)果的過(guò)程是:第一步,把除數(shù)b送入歸一化模塊1,得到歸一化了的除數(shù),記為b’。另外,還得到b歸一化到b’時(shí)所需右移位的位數(shù),記為S。第二步,把歸一化了的除數(shù)b’送入分段一次函數(shù)模塊2,其輸出記為C。所述分段一次函數(shù)模塊2是按具體應(yīng)用所要求的精度,通過(guò)對(duì)函數(shù)y= l/χ在(O I)范圍內(nèi)分段,每個(gè)分段是用最小二乘法用一次函數(shù)擬合得到的。把歸一化了的除數(shù)b’送入查找表模塊3,輸出記為d。所述查找表模塊3里記錄的是分段一次函數(shù)模塊2擬合出的值與函數(shù)y = l/χ, O <x^ I的準(zhǔn)確值之間的差別。
第三步,把第二步得到的c和d由加法模塊4相加,輸出記為e。第四步,由乘法模塊5把被除數(shù)a乘以第三步得到的e,輸出記為f。第五步,由右移位模塊6把f右移s位,得到輸出記為g。g就是a/b的結(jié)果。以上通過(guò)具體實(shí)施方式
對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,但這些并非構(gòu)成對(duì)本發(fā)明的限制。在不脫離本發(fā)明原理的情況下,本領(lǐng)域的技術(shù)人員還可做出許多變形和改進(jìn),這些也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種用純組合電路實(shí)現(xiàn)除法計(jì)算的電路,記被除數(shù)為a,除數(shù)為b,其特征在于,包括: 一歸一化模塊,其輸入是除數(shù)b,其一輸出端輸出歸一化了的除數(shù),記為b另一輸出端輸出除數(shù)b歸一化到b’時(shí)右移位的位數(shù),記為s ;用于將輸入除數(shù)b的輸入范圍歸一化到一次分段函數(shù)模塊及查找表模塊的輸入范圍內(nèi); 一分段一次函數(shù)模塊,其輸入端與所述歸一化模塊的一輸出端相連接,輸入歸一化了的除數(shù)b’,其輸出記為c ;用于計(jì)算I除以歸一化了的除數(shù)b’這個(gè)運(yùn)算的大致結(jié)果,以節(jié)約查找表模塊所需的存儲(chǔ)空間; 一查找表模塊,其輸入端與所述歸一化模塊的一輸出端相連接,輸入歸一化了的除數(shù)b’,其輸出記為d ;用于記錄存儲(chǔ)I除以輸入除數(shù)b的結(jié)果與所述分段一次函數(shù)模塊輸出的差; 一加法模塊,其一輸入端與所述分段一次函數(shù)模塊的輸出端相連接,輸入該分段一次函數(shù)模塊的輸出C,另一輸入端與所述查找表模塊的輸出端相連接,輸入該查找表模塊的輸出d ;將這兩個(gè)輸入c和d相加,其輸出端得到的結(jié)果e就是I除以歸一化了的除數(shù)b’的結(jié)果; 一乘法模塊,其一輸入端與所述加法模塊的輸出端相連接,輸入該加法模塊的輸出e,另一輸入端輸入被除數(shù)a;其輸出f就是被除數(shù)a/1除以歸一化了的除數(shù)b’的結(jié)果; 一右移位模塊,其一輸入端與所述乘法模塊的輸出端相連接,輸入該乘法模塊的輸出e ;另一輸入端與所述歸一化模塊的輸出端相連接,輸入該歸一化模塊的輸出s ;其輸出g就是a/b的結(jié)果。
2.如權(quán)利要求1所述的電路,其特征在于:所述歸一化模塊把輸入除數(shù)b右移到歸一化范圍內(nèi),并記錄右移的位數(shù);其中,將輸入除數(shù)b右移到歸一化范圍內(nèi)后的值作為輸出b’,移位的位數(shù)作為輸出S。
3.如權(quán)利要求1所述的電路,其特征在于:所述分段一次函數(shù)模塊,是按具體應(yīng)用所要求的精度,通過(guò)對(duì)函數(shù)y = i/χ在O I范圍內(nèi)分段,每個(gè)分段用最小二乘法對(duì)一次函數(shù)進(jìn)行擬合,這些擬合后的一次函數(shù)組成了所述分段一次函數(shù)模塊。
4.如權(quán)利要求1所述的電路,其特征在于:所述查找表模塊根據(jù)具體應(yīng)用所要求的精度,記錄了分段一次函數(shù)模塊擬合出的值與真實(shí)值之間的差。
全文摘要
本發(fā)明公開(kāi)了一種用純組合電路實(shí)現(xiàn)除法計(jì)算的電路,把a(bǔ)/b,先分解為a×1/b。1/b是通過(guò)歸一化模塊先歸一化b到0~1之間,記結(jié)果為b’;然后用分段一次函數(shù)模塊來(lái)計(jì)算1/b’,這個(gè)分段一次函數(shù)模塊分段擬合了y=1/x,0<x≤1。加法模塊把分段一次函數(shù)模塊計(jì)算出的結(jié)果加上存在查找表模塊中的擬合函數(shù)與實(shí)際y=1/x的誤差,就得到了較準(zhǔn)確的1/b’。由乘法模塊將1/b’乘上被除數(shù)a;右移位模塊將b右移到與b’相同的位數(shù),就得到了a/b的結(jié)果g。本發(fā)明在實(shí)現(xiàn)除法算法時(shí),能夠降低所要求的時(shí)鐘頻率。
文檔編號(hào)G06F7/535GK103164185SQ20111042492
公開(kāi)日2013年6月19日 申請(qǐng)日期2011年12月16日 優(yōu)先權(quán)日2011年12月16日
發(fā)明者王吉健 申請(qǐng)人:上海華虹集成電路有限責(zé)任公司