国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于補碼舍入的浮點加法裝置的制作方法

      文檔序號:6579048閱讀:212來源:國知局

      專利名稱::基于補碼舍入的浮點加法裝置的制作方法
      技術(shù)領(lǐng)域
      :本發(fā)明涉及一種微處理器體系結(jié)構(gòu)設(shè)計,尤其涉及浮點運算部件。技術(shù)背景,浮點運算在現(xiàn)實生活中無處不在,科學(xué)運算、信號處理、媒體應(yīng)用、信息通訊等都需要大量的浮點運算。20世紀80年代之前,各家計算機廠商在支持浮點運算方面的規(guī)則不盡相同,這給浮點應(yīng)用在不同計算機平臺上的移植帶來了很大的不變。為此,IEEE于1985年提出了一套浮點運算標(biāo)準(zhǔn)《IEEE-754forBinaryFloat-pointArithmetic)),現(xiàn)己成為國際通用標(biāo)準(zhǔn)。在這個標(biāo)準(zhǔn)中,提出了單精度、雙精度、擴展單精度、擴展雙精度四種浮點表示格式,并具體定義了浮點運算、舍入模式以及運算異常的處理等。在所有浮點運算里面,浮點加減法運算最為頻繁,平均占到了浮點運算總量的50%-60%,因此設(shè)計一款簡單、有效的浮點加減法部件非常重要。最基本的浮點力口減法可參考D.A.PattersonandJ丄.Henessy,ComputerArchitecture~AQuantitativeApproach,MorganKaufmannPublishers,Secondedition(1996),主要包括以下八個步驟1.計算兩個浮點數(shù)的指數(shù)差2.根據(jù)兩個浮點數(shù)的指數(shù)差右移指數(shù)小的浮點數(shù)的尾數(shù),實現(xiàn)對階3.尾數(shù)求和4.如果尾數(shù)和是負數(shù),對尾數(shù)和求補碼5.尾數(shù)和中第一個1的位置檢測6.尾數(shù)和規(guī)格化7.舍入8.如果舍入造成結(jié)果移出,重新規(guī)格化.其中,第四個步驟是如果尾數(shù)和是負數(shù),對尾數(shù)和求補碼。這個操作需要一個取補碼器,取補碼器實質(zhì)上是一個加法器,這不僅帶來硬件資源的增加,也造成了浮點加法時延的變長。所以在一般的浮點加減法實現(xiàn)中,會在上述步驟2通過指數(shù)差的大小判斷兩個浮點數(shù)的大小。如果第一浮點數(shù)的指數(shù)減去第二浮點數(shù)的指數(shù)的結(jié)果為正,表示第一浮點數(shù)大于第二浮點數(shù),則在步驟三中用第一浮點數(shù)的尾數(shù)加/減第二浮點數(shù)的尾數(shù);如果第一浮點數(shù)的指數(shù)減去第二浮點數(shù)的指數(shù)的結(jié)果為負,表示第一浮點數(shù)小于第二浮點數(shù),則在步驟三中用第二浮點數(shù)的尾數(shù)加/減第一浮點數(shù)的尾數(shù),以保證尾數(shù)和為正;如果第一浮點數(shù)的指數(shù)減去第二浮點數(shù)的指數(shù)的結(jié)果為零,則不去判斷尾數(shù)的大小,在步驟三中用第一浮點數(shù)的尾數(shù)加/減第二浮點數(shù)的尾數(shù)。這個過程雖然可以避免上述步驟四的當(dāng)尾數(shù)和為負時的敏補碼操作,但是卻為步驟七的舍入帶來了報大的麻煩。從理論上分析,為了保證舍入需要的信息位不丟失,在浮點減法時,需要將大的浮點數(shù)減去移位對階之后的小的浮點數(shù),再對這個全信息的減法結(jié)果進行舍入。這種實現(xiàn)方式既帶來了龐大的硬件邏輯(對于雙精度減法而言,需要106位的減法器,對于單精度而言需要46的減法器),又使得浮點減法的時延變差。所以在實際的浮點減法實現(xiàn)中,考慮到浮點減法需要舍入的情況,一是浮點減法不借位時需要舍入,一是浮點減法要借一位需要舍入,降低了尾數(shù)加法器的大小(對于單精度浮點減法需要24位,雙精度浮點減法需要54位)。雖然通過進一步改進帶來了硬件資源上的節(jié)約,但是基于浮點減法不同借位情況下浮點舍入的判斷,依然需要在尾數(shù)加法器的操作數(shù)準(zhǔn)備上以及最后的舍入判斷上做復(fù)雜的、機制不統(tǒng)一的操作和判斷。這不僅增加了設(shè)計的邏輯復(fù)雜度,也對設(shè)計者提出了很高的要求,因為設(shè)計者需要謹慎思考一些特殊情況下的浮點減法舍入問題。
      發(fā)明內(nèi)容為了克服己有的浮點加法部件的機制不統(tǒng)一、邏輯復(fù)雜度高的不足,本發(fā)明提供一種機制統(tǒng)一、避免,點加法特有的復(fù)雜的尾數(shù)操作數(shù)準(zhǔn)備和舍入判斷邏輯、降低邏輯復(fù)雜度的基于補碼舍入的浮點加法裝置。本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是-一種基于補碼舍入的浮點加法裝置,支持浮點加法操作和浮點減法操作,所述浮點加法裝置包括-指數(shù)加法器,用于計算第一浮點操作數(shù)和第二浮點操作數(shù)的指數(shù)差;'尾數(shù)移位器,用于根據(jù)前級輸入的指數(shù)差對指數(shù)較小的浮點操作數(shù)的尾數(shù)進行移位對階;所述浮點加法裝置還包括尾數(shù)操作數(shù)準(zhǔn)備邏輯單元,用于根據(jù)第一浮點操作數(shù)和第二浮點操作數(shù)的符號位和指數(shù)差對尾數(shù)操作數(shù)進行以下處理對于浮點加法操作,直接將移位對階之后的浮點操作數(shù)的尾數(shù)輸入尾數(shù)加法器;對于浮點減法操作,如果第一浮點操作數(shù)和第二浮點操作數(shù)的指數(shù)差不為0,根據(jù)指數(shù)差對指數(shù)較大的浮點操作數(shù)的尾數(shù)取反,而指數(shù)較小的浮點操作數(shù)的尾數(shù)保持不變;如果第一浮點操作數(shù)和第二浮點操作數(shù)的指數(shù)差為o,規(guī)定對第一浮點操作數(shù)的尾數(shù)保持不變,第二浮點操作數(shù)的尾數(shù)取反;尾數(shù)加法器,用于對前級尾數(shù)操作數(shù)準(zhǔn)備邏輯輸入的尾數(shù)求和;舍入判斷邏輯單元,根據(jù)尾數(shù)加法器輸出的最高位判斷尾數(shù)和的正負,根據(jù)尾數(shù)加法器輸出的高四位確定用于舍入判斷的固著位;舍入加法器,用于對浮點的尾數(shù)加法結(jié)果進行舍入,并完成對尾數(shù)和的取補碼操作。進一步,所述舍入判斷邏輯根據(jù)尾數(shù)加法器輸出的最高位進行判斷,若尾數(shù)加法結(jié)果最高位為0,表示該運算結(jié)果為原碼且結(jié)果為正,若尾數(shù)加法結(jié)果最高位為1,表示該運算結(jié)果為補碼且結(jié)果為負。再進一步,所述舍入判斷邏輯單元包括原碼舍入判斷邏輯子單元和補碼舍入判斷邏輯子單元,原碼舍入加一判定邏輯和補碼舍入加0判斷邏輯統(tǒng)一。所述浮點加法裝置還包括結(jié)果規(guī)格化移位器,用于根據(jù)浮點表達格式對符號位和指數(shù)和尾數(shù)進行封裝。更進一步,所述尾數(shù)加法器是一個carry-incarry-out加法器;對于浮點加法,尾數(shù)加法器的carry-inbit恒取0;對于浮點減法,尾數(shù)加法器的carry-inbit恒取1。作為優(yōu)選的一種方案所述舍入加法器是一個進位加法器;對于浮點加法,舍入加法器完成對尾數(shù)和的舍入操作;對于浮點減法,當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差不為0,舍入加法器既完成對尾數(shù)和的舍入操作,又完成對尾數(shù)和的取補碼操作;當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差為0,并且第一浮點操作數(shù)的尾數(shù)小于第二浮點操作數(shù)的尾數(shù),舍入加法器被復(fù)用實現(xiàn)結(jié)果的取補碼操作。本發(fā)明的有益效果主要表現(xiàn)在l)機制統(tǒng)一。本發(fā)明通過支持浮點補碼運算和補碼舍入,實現(xiàn)了浮點加法和浮點減法的統(tǒng)一;2)邏輯設(shè)計簡單。本發(fā)明通過將浮點加法運算和浮點減法運算統(tǒng)一,避免了復(fù)雜.的尾數(shù)操作數(shù)準(zhǔn)備以及舍入判斷邏輯;3)靈話性好。本加法器部件涉及的方法適應(yīng)于任何精度的浮點加減法運算。圖1是浮點加法裝置在處理器及整個系統(tǒng)中的位置示意圖。圖2是浮點單、雙精度的數(shù)據(jù)格式的示意圖。圖3是浮點加法裝置的總體結(jié)構(gòu)示意圖。圖4是浮點加減法實現(xiàn)的流程圖。圖5是指數(shù)加法的實現(xiàn)結(jié)構(gòu)圖。圖6是尾數(shù)移位的實現(xiàn)結(jié)構(gòu)圖。圖7是兩個浮點操作數(shù)移位的示例圖。圖8是兩個浮點操作數(shù)尾數(shù)相減的示例圖。圖9是尾數(shù)操作數(shù)準(zhǔn)備邏輯及尾數(shù)求和的結(jié)構(gòu)圖。圖io是舍入判斷示意圖。圖11是舍入加法的實現(xiàn)結(jié)構(gòu)圖。具體實施方式下面結(jié)合附圖對本發(fā)明作進一步描述。參照圖1圖11,一種基于補碼舍入的浮點加法裝置,所述浮點加法裝置支持浮點加法操作和浮點減法操作,所述浮點加法裝置包括指數(shù)加法器,用于計算第一浮點操作數(shù)和第二浮點操作數(shù)的指數(shù)差;尾數(shù)移位器,用于根據(jù)前級輸入的指數(shù)差對指數(shù)較小的浮點操作數(shù)的尾數(shù)進行移位對階;所述浮點加法裝置還包括尾數(shù)操作數(shù)準(zhǔn)備邏輯單元,用于根據(jù)第一浮點操作數(shù)和第二浮點操作數(shù)的符號位和指數(shù)差對尾數(shù)操作數(shù)進行以下處理對于浮點加法操作,直接將移位對階之后的浮點操作數(shù)的尾數(shù)輸入尾數(shù)加法器。對于浮點減法操作,根據(jù)指數(shù)差對指數(shù)較大的浮點操作數(shù)的尾數(shù)取反,而指數(shù)較小的浮點操作數(shù)的尾數(shù)保持不變;如果第一浮點操作數(shù)和第二浮點操作數(shù)的指數(shù)差為o,規(guī)定對第一浮點操作數(shù)的尾數(shù)保持不變,第二浮點操作數(shù)的尾數(shù)取反;尾數(shù)加法器,用于對前級尾數(shù)操作數(shù)準(zhǔn)備邏輯輸入的尾數(shù)求和;舍入判斷邏輯單元,稂據(jù)尾數(shù)加法器輸出的最高位判斷尾數(shù)和的芷負,根據(jù)尾數(shù)加法器輸出的高四位確定用于舍入判斷的固著位;舍入加法器,用于對浮點的尾數(shù)加法結(jié)果進行舍入,并完成對尾數(shù)和的取補碼操作。進一步,所述舍入判斷邏輯根據(jù)尾數(shù)加法器輸出的最高位進行判斷,若尾數(shù)加法結(jié)果最高位為0,表示該運算結(jié)果為原碼且結(jié)果為正,若尾數(shù)加法結(jié)果最高位為1,表示該運算結(jié)果為補碼且結(jié)果為負。再進一步,所述舍入判斷邏輯單元包括原碼舍入判斷邏輯子單元和補碼舍入判斷邏輯子單元,原碼舍入加一判定邏輯和補碼舍入加0判斷邏輯統(tǒng)一。所述舍入判斷邏輯單元包括原碼舍入判斷邏輯子單元和補碼舍入判斷子單元邏輯,原碼舍入加一判定邏輯單元和補碼舍入加0判斷邏輯單元邏輯統(tǒng)一。所述浮點加法裝置還包括結(jié)果規(guī)格化移位器,用于根據(jù)浮點表達格式對符號位和指數(shù)和尾數(shù)進行封裝。所述尾數(shù)加法器是一個carry-incarry-out加法器;對于浮點加法,尾數(shù)加法.器的carry-inbit恒取0;對于浮點減法,—尾數(shù)加法器的carry-inbit恒取1,以實現(xiàn)對指數(shù)較大的浮點操作數(shù)的尾數(shù)的取補碼操作,同時該尾數(shù)加法器實現(xiàn)對取補碼之后的浮點操作數(shù)的尾數(shù)和另一浮點操作數(shù)的尾數(shù)的求和操作。所述舍入加法器是一個進位加法器;對于浮點加法,舍入加法器完成對尾數(shù)和的舍入操作;對于浮點減法,當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差不為0,舍入加法器既完成對尾數(shù)和的舍入操作,又完成對尾數(shù)和的取補碼操作;當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差為0,并且第一浮點操作數(shù)的尾數(shù)小于第二浮點操作數(shù)的尾數(shù),舍入加法器被復(fù)用實現(xiàn)結(jié)果的取補碼操作。IEEE-754浮點標(biāo)準(zhǔn)是正EE組織在1985頒布的一個關(guān)于浮點數(shù)運算的標(biāo)準(zhǔn),現(xiàn)在已經(jīng)成為國際統(tǒng)一的浮點標(biāo)準(zhǔn)。在這個標(biāo)準(zhǔn)里,定義了單精度、雙精度、擴展型單精度、擴展型雙精度四種浮點格式,以及定義了四種舍入模式及相關(guān)其它內(nèi)容。數(shù)據(jù)格式方面,單精度浮點數(shù)由1位符號位、8位帶偏指數(shù)和23位尾數(shù)組成;雙精度浮點數(shù)由1位符號位、11位帶偏指數(shù)和52位尾數(shù)組成。具體格式參考圖2?;谏鲜龅母↑c格式,任意一個浮點數(shù)可以表示成以下形式f屮),—(vw"V!)(式2.l)其中S表示浮點數(shù)的符號,取0或1;E表示浮點數(shù)的指數(shù);b表示一位二進制值,取0或1;P表示浮點數(shù)的精度。詞EI^LIEEE-754浮點標(biāo)準(zhǔn)定義了四種舍入模式c分別是分別為就近舍入(RoundtoNearest)、向零舍入(RoundtowardZero)、向正無窮舍入(Roundtoward+INFINITY)和向負無窮舍入(Roundtoward-INFINITY)。如下表(1)所示:<table>tableseeoriginaldocumentpage12</column></row><table>表l浮點加法裝置是負責(zé)對浮點加法和浮點減法進行運算的部件,其在處理器及計算機系統(tǒng)中的位置如圖1所示。本實施例的中的浮點加減法的實現(xiàn)可以分以下幾個步驟1.計算兩個浮點數(shù)的指數(shù)差2.根據(jù)兩個浮點數(shù)的指數(shù)差右移指數(shù)小的浮點數(shù)的尾數(shù),實現(xiàn)尾數(shù)對階.3.尾數(shù)求和4.尾數(shù)和中第一個1或者0的位置檢測5.根據(jù)舍入模式舍入6.對結(jié)果進行規(guī)格化處理具體的浮點加減法運算的流程參考圖4。在這里我們定義浮點加法運算的兩個操作數(shù),第一浮點操作數(shù)XI教第二浮點操作數(shù)X2,其中每個操作數(shù)又包括三個域,分別是符號域S,指數(shù)域E和尾數(shù)域F。因此,X1二(S1,El,F(xiàn)l},X2二(S2,E2,F(xiàn)2}。指數(shù)加法器是一個carry-incarry-out的加法器,它接受兩個操作數(shù)的指數(shù)El和E2,并完成El-E2的操作。為了表示指數(shù)加法結(jié)果的正負,需要對指數(shù)擴展一位符號位。因此,就有E差=E1-E2二{0,E1}-{0,E2}二{0,E1}+{0,E2}補={0,E1}。最高位是符號位,表示減法結(jié)果的正負。如果最高位位0,表示E1大于等于E2,El-E2=ES;否則E1小于E2,E2-El^-Ej^I^+l。具體參考圖移位器是一個N位(單精度N=24,雙精度N二53)的右移桶式移位器,它接受指數(shù)加法器輸入的指數(shù)差,并根據(jù)指數(shù)差對指數(shù)較小的浮點數(shù)進行右移,以實現(xiàn)對階。如果E,為正,表示E1大于等于E2,那么移位器對選擇對第二操作數(shù)的尾數(shù)進行移位,需要右移的尾數(shù)為E^,此過程是圖6的①;如果Eg為負,表示E1小于E2,那么移位器對選擇對第一操作數(shù)的尾數(shù)進行移位,需要右移的位數(shù)是E2-E1二E2-E1=-ES=I^+1。考慮到當(dāng)E^為負時,移位器需要移位的距離是1^+1,為了節(jié)省一個加l加法器的硬件資源,此時對移位進行特殊的處理。將移位對階過程分為兩個階段,第一階段是53位的右移桶式移位器,需要右移的距離是i^,此過程是圖6的①,第二階段是繼續(xù)右移一位,此時只需要一個選擇器此過程是圖6的②。通過在E^為負的情況下,將移位對階的過程分解成兩步執(zhí)行,減少了一個加法器,節(jié)約了硬件成本。經(jīng)過移位對階之后,我們定義浮點操作數(shù)的尾數(shù)分別是和F;和F;。當(dāng)E^為正時,F(xiàn);即為F1,巧'是F2右移對階之后的值;當(dāng)E^為負時,巧'是F1右移對階之后的值,《即為F2。具體移位器的實現(xiàn)如圖6所示。圖7是尾數(shù)移位對階的樣例。尾數(shù)操作數(shù)準(zhǔn)備邏輯,接受移位對階之后的兩個浮點操作數(shù)的尾數(shù),并對它們進行準(zhǔn)備提供給后級的尾數(shù)加法器。操作數(shù)準(zhǔn)備邏輯的目標(biāo)是實現(xiàn)浮點加減法的統(tǒng)一。對于加法運算Xl+X2,尾數(shù)加法器需要實現(xiàn)F;+F;,此時操作數(shù)準(zhǔn)備邏輯不做任何的操作,直接將移位器輸入的尾數(shù)旁路給后面的尾數(shù)加法器,同時保留移出的Eg位的位信息以為后面做舍入。對寧減法運算X1-X2,尾數(shù)加法器需要完成F一F;(XKX2)或者F;-F:(X1〉X2)。為了將浮點減法與浮點加法統(tǒng)一,本專利對尾數(shù)減法采取補碼形式實現(xiàn),即Fl-F2=Fl+g+l。當(dāng)?shù)谝桓↑c操作數(shù)XI大于第二浮點操作數(shù)X2時,為了保留全部信息位供后面的舍入,尾數(shù)加法器需要2N的位寬來實現(xiàn)(單精度N二24,雙精度N二53),如圖8所示。為了節(jié)省尾數(shù)加法器資源和獲得良好的時延性能,操作數(shù)準(zhǔn)備邏輯在此做了特殊的優(yōu)化處理,此時,操作數(shù)準(zhǔn)備邏輯調(diào)整兩個尾數(shù)的位置,總是讓小的尾數(shù)減去大的尾數(shù)。當(dāng)E^為正,Xl-X2=(F;-F()二(F1-F:)二一(F;+F1補)=—(F(+^+1),操作數(shù)準(zhǔn)備邏輯將F;作為尾數(shù)加法器的源1,將巧即將Fl取反作為尾數(shù)加法器的源2。當(dāng)E差為負,XI-X2二F廣F;二F;-F;二F;+g+1,操作數(shù)準(zhǔn)備邏輯將F;作為尾數(shù)加法器的源1,將g即將F2取反作為尾數(shù)加法器的源2。當(dāng)E^為零時,此時兩個浮點操作數(shù)的指數(shù)相等,操作數(shù)準(zhǔn)備邏輯不比較兩個浮點操作數(shù)的尾數(shù)大小,而是按照Fl-F2=Fl+g+l,將Fl作為尾數(shù)加法器的源1,將作為尾數(shù)加法器的源2。具體的尾數(shù)操作數(shù)準(zhǔn)備邏輯如圖9所示。將尾數(shù)操作數(shù)準(zhǔn)備邏輯輸出的操作數(shù)定義為g二和F;'。..—尾數(shù)加法器是一個carry-incarry-out的加法器,它接受尾數(shù)操作數(shù)準(zhǔn)備邏輯提供的兩路操作源,并將其相加。為了表示尾數(shù)加法結(jié)果的正負以及加法結(jié)果的進位情況,需要對尾數(shù)操作數(shù)擴展兩位,一位是符號位,一位是進位指示位。對于浮點加法來詢,尾數(shù)加法器的carry-in始終為0;對于浮點減法來說,尾數(shù)加法器的carry-in始終為1。因此,就有尾數(shù)和二F;'+F)+cin^0,0,巧"}+{0/1,0/1,F(xiàn)(}+Cin。尾數(shù)和的最高位是符號位,表示尾數(shù)結(jié)果的正負,最高位為0,表示尾數(shù)和為正,最高位為l,表示尾數(shù)和為負。具體參考圖9所示。舍入判斷邏輯根據(jù)尾數(shù)加法器的結(jié)果,完成對尾數(shù)運算的舍入判斷。其基本工作原理是,當(dāng)結(jié)果是正數(shù)時,從最高位開始找第一個l,這個1往后的第N位(單精度是24,雙精度是53)以后用于舍入判斷;當(dāng)結(jié)果是負值時,從最高位開始找第一個0,這個O往后的第N(單精度是24,雙精度是53)位以后用于舍入判斷。為了舍入判斷加快找第一個有效數(shù)的過程,舍入判斷邏輯只需要對尾數(shù)和的前四位進行判斷。通過對尾數(shù)和的最高位進行判斷,最高位為o表示浮點加法,最高位為1表示浮點減法。對浮點加法而言,尾數(shù)相加只有兩種情況,要么進一位要么不進位;對浮點減法而言,屬數(shù)相減只有兩種情況,要么借一位要么不借位。具體的過程如圖10和圖11所示。在此定義,用于舍入判斷的操作數(shù)稱為固著位,用f表示,參與舍入操作的操作數(shù)最低位為F。。具體的舍入判斷邏輯如下一、當(dāng)尾數(shù)和為正時,通過判斷固著位的大小,進行舍入(1)當(dāng)舍入模式為向零舍入時,舍入加0;(2)當(dāng)舍入模式為向向正無窮舍入時,當(dāng)浮點加法結(jié)果為正時,舍入加l,當(dāng)浮點加法結(jié)果為負時,舍入加0;(3)當(dāng)舍入模式為向向負無窮舍入時,當(dāng)浮點加法結(jié)果為負時,舍入加l,當(dāng)浮點加法結(jié)果為正時,舍入加0;(4)當(dāng)舍入模式為向零舍入時,固著位大于0.5或者固著位等于0.5并且舍入操作數(shù)的最低位為1時,舍入加1,固著位小于0.5或者固著位等于0.5并且舍入操作數(shù)的最低位為0時,舍入加O。用等式可表示為-舍入+1=((舍入模式==正無窮)&&!符號位II(舍入模式=二負無窮)腿符號位II(舍入模式==就近舍入)&&^〉0.5|I(f==0.5)&&F。))&&(f!=0);二、當(dāng)尾數(shù)和為負時,通過判斷固著位的大小,進行舍入(1)當(dāng)舍入模式為向零舍入時,舍入加0;(2)當(dāng)舍入模式為向向正無窮舍入時,當(dāng)浮點加法結(jié)果為正時,舍入加0,當(dāng)浮點加法結(jié)果為正時,舍入加l;(S)當(dāng)舍入模式為向向負無窮舍入時,當(dāng)浮點加法結(jié)果為負時,舍.入加0,當(dāng)浮點加法結(jié)果為正時,舍入加l;(4)當(dāng)舍入模式為向零舍入時,固著位大于0.5或者固著位等于0.5并且尾數(shù)和的最低位為1時,舍入加0,固著位小于0.5或者固著位等于0.5并且尾數(shù)和的最低位為0時,舍入加l。用等式可表示為舍入+0二I(舍入模式=二向零舍入)II(舍入模式=二正無窮)&&!符號位II(舍入模式=二負無窮)&&符號位II(舍入模式==就近舍入)腿(f>0.5II(f:=0.5)&&F。))(f!=0);舍入判斷邏輯包括了原碼舍入判斷邏輯和補碼舍入判斷邏輯,基于以上的分析,原碼舍入加一判斷邏輯和補碼舍入加零判斷邏輯的條件基本一樣,因此邏輯上可以統(tǒng)一。基于這樣的設(shè)計,大大簡化了浮點加減法設(shè)計中復(fù)雜的舍入判斷邏輯。舍入加法器是一個進位加法器。當(dāng)尾數(shù)和為正值的情況,舍入邏輯及舍入加法器協(xié)同工作完成對其尾數(shù)和的舍入,此時只需把操作數(shù)的尾數(shù)直接輸入給舍入加法器即可。但當(dāng)尾數(shù)和為負的情況,舍入邏輯及舍入加法器除了完成舍入操作之外,也并行實現(xiàn)了取補碼的操作。因為取補碼的過程是對尾數(shù)和取反加一,前面的舍入判斷邏輯已經(jīng)對固著位取反加一之后的舍入情況進行了判斷,所以為了同時完成對其的取補碼操作,需要對舍入操作數(shù)取反碼,此時需要將舍入操作數(shù)取反之后再輸入給舍入加法器。整個舍入加法器及舍入邏輯如圖11所不o舍入加法器的輸出就是浮點加減運算舍入的結(jié)果,接下來的操作就是對浮點加減法結(jié)果的封裝,此時需要按照浮點標(biāo)準(zhǔn)格式將符號位和指數(shù)和尾數(shù)進行封裝。權(quán)利要求1、一種基于補碼舍入的浮點加法裝置,支持浮點加法操作和浮點減法操作,所述浮點加法裝置包括指數(shù)加法器,用于計算第一浮點操作數(shù)和第二浮點操作數(shù)的指數(shù)差;尾數(shù)移位器,用于根據(jù)前級輸入的指數(shù)差對指數(shù)較小的浮點操作數(shù)的尾數(shù)進行移位對階;其特征在于所述浮點加法裝置還包括尾數(shù)操作數(shù)準(zhǔn)備邏輯單元,用于根據(jù)第一浮點操作數(shù)和第二浮點操作數(shù)的符號位和指數(shù)差對尾數(shù)操作數(shù)進行以下處理對于浮點加法操作,直接將移位對階之后的浮點操作數(shù)的尾數(shù)輸入尾數(shù)加法器;對于浮點減法操作,如果第一浮點操作數(shù)和第二浮點操作數(shù)的指數(shù)差不為0,根據(jù)指數(shù)差對指數(shù)較大的浮點操作數(shù)的尾數(shù)取反,而指數(shù)較小的浮點操作數(shù)的尾數(shù)保持不變;如果第一浮點操作數(shù)和第二浮點操作數(shù)的指數(shù)差為0,規(guī)定對第一浮點操作數(shù)的尾數(shù)保持不變,第二浮點操作數(shù)的尾數(shù)取反;尾數(shù)加法器,用于對前級尾數(shù)操作數(shù)準(zhǔn)備邏輯輸入的尾數(shù)求和;舍入判斷邏輯單元,根據(jù)尾數(shù)加法器輸出的最高位判斷尾數(shù)和的正負,根據(jù)尾數(shù)加法器輸出的高四位確定用于舍入判斷的固著位;舍入加法器,用于對浮點的尾數(shù)加法結(jié)果進行舍入,并完成對尾數(shù)和的取補碼操作。2.根據(jù)權(quán)利要求1所述的基于補碼舍入的浮點加法裝置,其特征在于所述舍入判斷邏輯根據(jù)尾數(shù)加法器輸出的最高位進行判斷,若尾數(shù)加法結(jié)果最高位為0,表示該運算結(jié)果為原碼且結(jié)果為正,若尾數(shù)加法結(jié)果最高位為l,表示該運算結(jié)果為補碼且結(jié)果為負。3、如權(quán)利要求1所述的基于補碼舍入的浮點加法裝置,其特征在于所述舍入判斷邏輯單元包括原碼舍入判斷邏輯子單元和補碼舍入判斷邏輯子單元,原碼舍入加一判定邏輯和補碼舍入加0判斷邏輯邏輯統(tǒng)4、如權(quán)利要求2所述的基于補碼舍入的浮點加法裝置,其特征在于所述舍入判斷邏輯單元包括原碼舍入判斷邏輯子單元和補碼舍入判斷邏輯子單元,原碼舍入加一判定邏輯和補碼舍入加0判斷邏輯統(tǒng)一。5、如權(quán)利要求1一4之一所述的基于補碼舍入的浮點加法裝置,其特征在于.所述浮點加法裝置還包括.結(jié)果規(guī)格化移位器,用于根據(jù)浮點表達格式對符號位和指數(shù)和尾數(shù)進行封裝。6、如權(quán)利要求1—4之一所述的基于補碼舍入的浮點加法裝置,其特征在于所述尾數(shù)加法器是一個carry-incarry-out加法器;對于浮點加法,尾數(shù)加法器的carry-inbit恒取0;對于浮點減法,尾數(shù)加法器的carry-inbit恒取1。7、如權(quán)利要求1—4之一所述的基于補碼舍入的浮點加法裝置,'其特征在于所述舍入加法器是一個進位加法器;對于浮點加法,舍入加法器完成對尾數(shù)和的舍入操作;對于浮點減法,當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差不為0,舍入加法器既完成對尾數(shù)和的舍入操作,又完成對尾數(shù)和的取補碼操作;當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差為0,并且第一浮點操作數(shù)的尾數(shù)小于第二浮點操作數(shù)的尾數(shù),舍入加法器被復(fù)用實現(xiàn)結(jié)果的取補碼操作。8、如權(quán)利要求5所述的基于補碼舍入的浮點加法裝置,其特征在于所述舍入加法器是一個進位加法器;對于浮點加法,舍入加法器完成對尾數(shù)和的舍入操作;對于浮點減法,當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差不為o,舍入加法器既完成對尾數(shù)和的舍入操作,又完成對尾數(shù)和的取補碼操作;當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差為0,并且第一浮點操作數(shù)的尾數(shù)小于第二浮點操作數(shù)的尾數(shù),舍入加法器被復(fù)用實現(xiàn)結(jié)果的取補碼操作。9、如權(quán)利要求6所述的基于補碼舍入的浮點加法裝置,其特征在于所述舍入加法器是一個進位加法器;對于浮點加法,舍入加法器完成對尾數(shù)和的舍入操作;對于浮點減法,當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差不為0,舍入加法器既完成對尾數(shù)和的舍入操作,又完成對尾數(shù)和的取補碼操作;當(dāng)?shù)谝桓↑c操作數(shù)和第二浮點操作數(shù)的指數(shù)差為0,并且第一浮點操作數(shù)的尾數(shù)小于第二浮點操作數(shù)的尾數(shù),舍入加法器被復(fù)用實現(xiàn)結(jié)果的取補碼操作。全文摘要一種基于補碼舍入的浮點加法裝置,支持浮點加法操作和浮點減法操作,浮點加法裝置包括指數(shù)加法器、尾數(shù)移位器和尾數(shù)操作數(shù)準(zhǔn)備邏輯單元,用于根據(jù)第一浮點操作數(shù)和第二浮點操作數(shù)的符號位和指數(shù)差對尾數(shù)操作數(shù)進行處理,尾數(shù)加法器,舍入判斷邏輯單元,對尾數(shù)加法結(jié)果進行統(tǒng)一的舍入判斷根據(jù)尾數(shù)加法器輸出的最高位判斷尾數(shù)和的正負;根據(jù)尾數(shù)加法器輸出的高四位確定用于舍入判斷的固著位;統(tǒng)一原碼舍入加一判定邏輯和補碼舍入加0判斷邏輯;以及舍入加法器,用于用于對浮點的尾數(shù)加法結(jié)果進行舍入,并完成對尾數(shù)和的取補碼操作。本發(fā)明機制統(tǒng)一,避免了浮點加法特有的復(fù)雜的尾數(shù)操作數(shù)準(zhǔn)備和舍入判斷邏輯、降低了邏輯復(fù)雜度。文檔編號G06F7/50GK101650642SQ20091015250公開日2010年2月17日申請日期2009年9月11日優(yōu)先權(quán)日2009年9月11日發(fā)明者嚴曉浪,孟建熠,葛海通,陳志堅申請人:杭州中天微系統(tǒng)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1