[發(fā)明專利]一種用于浮點(diǎn)除法和平方根運(yùn)算的預(yù)處理電路結(jié)構(gòu)有效
| 申請?zhí)枺?/td> | 200810055617.8 | 申請日: | 2008-01-04 |
| 公開(公告)號: | CN101216753A | 公開(公告)日: | 2008-07-09 |
| 發(fā)明(設(shè)計(jì))人: | 李兆麟;張昕悅;李恭瓊 | 申請(專利權(quán))人: | 清華大學(xué) |
| 主分類號: | G06F7/57 | 分類號: | G06F7/57 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100084北京*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 用于 浮點(diǎn) 除法 和平 方根 運(yùn)算 預(yù)處理 電路 結(jié)構(gòu) | ||
技術(shù)領(lǐng)域
本發(fā)明涉及浮點(diǎn)運(yùn)算單元設(shè)計(jì),是一種用于實(shí)現(xiàn)浮點(diǎn)除法和浮點(diǎn)平方根運(yùn)算的預(yù)處理電路結(jié)構(gòu)。
背景技術(shù)
近年來,由于計(jì)算機(jī)的計(jì)算復(fù)雜度大大增加,浮點(diǎn)處理器的應(yīng)用十分廣泛。同時(shí)工業(yè)界廣泛采用性能評測標(biāo)準(zhǔn),促使處理器設(shè)計(jì)者投入更多的精力開發(fā)浮點(diǎn)運(yùn)算單元。基于特定應(yīng)用的系統(tǒng),例如高性能的圖像處理系統(tǒng),對處理器提出了更高的要求,這些都需要高速的浮點(diǎn)運(yùn)算單元來滿足。
浮點(diǎn)運(yùn)算單元一般具有加法、乘法、除法、平方根運(yùn)算等基本功能。其中,實(shí)現(xiàn)除法和平方根運(yùn)算的一種算法是基于乘法迭代的方法。這種算法的優(yōu)點(diǎn)是:每次迭代精度增加一倍,需要迭代的次數(shù)少;由于共用乘法單元,需要增加的面積相對少。但同時(shí),這種方法需要首先得到運(yùn)算所需的初始值,這就需要增加一個(gè)預(yù)處理階段。在預(yù)處理階段中,通過查找表及其他邏輯得到輸入操作數(shù)的倒數(shù)或平方根倒數(shù)的近似值,作為迭代算法的初始值。一種使用預(yù)處理結(jié)構(gòu)的浮點(diǎn)運(yùn)算單元的結(jié)構(gòu)示意圖見圖1。
二進(jìn)制數(shù)可以用這種形式表示:(-1)S×(b0b1b2…bn-1)×2E。其中,f=b1b2…bn-1。這樣一個(gè)數(shù)存儲(chǔ)在一個(gè)32位二進(jìn)制段的三個(gè)字段中,即為單精度浮點(diǎn)數(shù)的存儲(chǔ)格式,見圖2。其中包括:符號s(1位):0表示正,1表示負(fù)。指數(shù)e(8位):指數(shù)的表示方法稱為偏值表示法,一個(gè)固定的偏值從字段中減去,才得到真正的指數(shù),對于32位的單精度浮點(diǎn)數(shù),偏值為127(例如,如果真正的指數(shù)為0,則e=01111111)。尾數(shù)f(23位):小數(shù)點(diǎn)的位置約定在最左(最高)有效位的右邊,即小數(shù)點(diǎn)左邊有1位,對于規(guī)格化數(shù),這位是1,小數(shù)點(diǎn)右邊的部分稱為尾數(shù)(即f),只有這部分存儲(chǔ)于字段中。
對于浮點(diǎn)除法B/A和平方根運(yùn)算令操作數(shù)A的符號位為0,指數(shù)為01111111,尾數(shù)不變,記為a,需要得到1/a、和的近似值,作為迭代的初始值。這就需要在存儲(chǔ)器的對應(yīng)地址中存儲(chǔ)按一定算法得到的值,這樣就形成了一個(gè)查找表。在預(yù)處理階段,將a的尾數(shù)的一部分作為地址,到存儲(chǔ)器中查找,得到對應(yīng)地址中存儲(chǔ)的值,再經(jīng)過一些其他運(yùn)算,就可以得到所需要的初始值。初始值精度越高,需要迭代的次數(shù)越少,但是查找表需要的面積大大增加。如果是單精度計(jì)算,且希望僅通過一次迭代得到單精度的計(jì)算結(jié)果,就需要尾數(shù)為14位精度的初始值。
查找表有很多不同的算法和實(shí)現(xiàn)方式,其中一種算法是對稱雙向查找表(參考文獻(xiàn):Approximating?elementary?functions?with?symmetric?bipartite?tables)。
這種算法由Taylor級數(shù)展開得到,下面對它的原理作簡要介紹。這里,將a的尾數(shù)記為y,將需要得到近似值的函數(shù)記為f(y)。首先,將y分為四段,y0、y1、y2、y3,其對應(yīng)的值為y=y(tǒng)0+y1+y2+y3,四段的位數(shù)分別是n0、n1、n2、n3。
要使用兩個(gè)查找表分別存儲(chǔ)一定位數(shù)的a0、a1,位數(shù)根據(jù)所需精度決定,計(jì)算公式是:
a0(y0,y1)=f(1+y0+y1+δ2+δ3)
a1(y0,y2)=f′(1+y0+δ1+δ2+δ3)(y2-δ2)
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于清華大學(xué),未經(jīng)清華大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810055617.8/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F7-00 通過待處理的數(shù)據(jù)的指令或內(nèi)容進(jìn)行運(yùn)算的數(shù)據(jù)處理的方法或裝置
G06F7-02 .比較數(shù)字值的
G06F7-06 .將單個(gè)記錄載體上的數(shù)據(jù)進(jìn)行排序、選擇、合并或比較的裝置
G06F7-22 .用于排序或合并在連續(xù)記錄載體
G06F7-38 .只利用數(shù)制表示,例如利用二進(jìn)制、三進(jìn)制、十進(jìn)制表示來完成計(jì)算的方法或裝置
G06F7-58 .隨機(jī)數(shù)或偽隨機(jī)數(shù)發(fā)生器
- 浮點(diǎn)異常處理裝置
- 一種微處理器浮點(diǎn)部件驗(yàn)證裝置
- 一種計(jì)算機(jī)圖像處理系統(tǒng)
- 實(shí)現(xiàn)浮點(diǎn)數(shù)指數(shù)分析替換的裝置及方法
- 實(shí)現(xiàn)浮點(diǎn)數(shù)符號分析替換的裝置及方法
- 一種可變浮點(diǎn)數(shù)據(jù)微處理器
- 浮點(diǎn)數(shù)據(jù)類型轉(zhuǎn)換方法、裝置、存儲(chǔ)介質(zhì)及計(jì)算機(jī)設(shè)備
- 浮點(diǎn)計(jì)算方法及系統(tǒng)
- 浮點(diǎn)數(shù)處理器
- 一種浮點(diǎn)數(shù)據(jù)處理方法及裝置





