最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

一種改進(jìn)的浮點(diǎn)乘加器及浮點(diǎn)乘加計(jì)算方法與流程

文檔序號(hào):11250596閱讀:1953來(lái)源:國(guó)知局
一種改進(jìn)的浮點(diǎn)乘加器及浮點(diǎn)乘加計(jì)算方法與流程

本發(fā)明實(shí)施例涉及計(jì)算機(jī)硬件結(jié)構(gòu)與電路設(shè)計(jì)技術(shù)領(lǐng)域,尤其涉及一種改進(jìn)的浮點(diǎn)乘加器及浮點(diǎn)乘加計(jì)算方法。



背景技術(shù):

近年來(lái)各類(lèi)機(jī)器學(xué)習(xí)算法例如深度卷積神經(jīng)網(wǎng)絡(luò)在多個(gè)領(lǐng)域得到了廣泛的應(yīng)用,而且這些機(jī)器學(xué)習(xí)算法隨著技術(shù)的更新變得更加計(jì)算密集與存儲(chǔ)密集,相應(yīng)所需要的計(jì)算資源和存儲(chǔ)資源也在不斷增加。為了解決這一問(wèn)題,開(kāi)發(fā)專用硬件成了學(xué)術(shù)界與工業(yè)界所公認(rèn)的解決辦法之一。學(xué)術(shù)界與工業(yè)界提出了很多不同架構(gòu)的硬件加速平臺(tái)。但是目前還沒(méi)有一種對(duì)硬件電路進(jìn)行優(yōu)化設(shè)計(jì)實(shí)現(xiàn)提高運(yùn)算效率的方法,因此,提供一種對(duì)硬件電路進(jìn)行優(yōu)化提高浮點(diǎn)乘加器的運(yùn)算效率是目前業(yè)界亟待解決的技術(shù)問(wèn)題。



技術(shù)實(shí)現(xiàn)要素:

為了解決現(xiàn)有技術(shù)中存在的問(wèn)題,本發(fā)明實(shí)施例提供一種改進(jìn)的浮點(diǎn)乘加器及浮點(diǎn)乘加計(jì)算方法。

一方面,本發(fā)明實(shí)施例提供一種改進(jìn)的浮點(diǎn)乘加器,包括至少兩個(gè)浮點(diǎn)部分乘法器和一個(gè)多輸入加法器,所述浮點(diǎn)部分乘法器由符號(hào)位異或電路、尾數(shù)乘法器和指數(shù)加法器組成,所述浮點(diǎn)部分乘法器接收歸一化浮點(diǎn)數(shù)并進(jìn)行乘法計(jì)算輸出非歸一化浮點(diǎn)數(shù),所述加法器接收所述非歸一化浮點(diǎn)數(shù)并將輸入的非歸一化浮點(diǎn)數(shù)累加并輸出歸一化浮點(diǎn)數(shù),所述非歸一化浮點(diǎn)數(shù)由符號(hào)位、非歸一化尾數(shù)和指數(shù)部分構(gòu)成,所述歸一化浮點(diǎn)數(shù)由符號(hào)位、歸一化尾數(shù)和指數(shù)部分構(gòu)成。

另一方面,本發(fā)明實(shí)施例提供一種浮點(diǎn)乘加計(jì)算方法,包括:

接收至少四個(gè)歸一化浮點(diǎn)數(shù)輸入;

將所述歸一化浮點(diǎn)數(shù)進(jìn)行乘法運(yùn)算,得到非歸一化浮點(diǎn)數(shù);

將所述非歸一化浮點(diǎn)數(shù)進(jìn)行加法運(yùn)算,得到歸一化浮點(diǎn)數(shù)。

本發(fā)明實(shí)施例提供的改進(jìn)的浮點(diǎn)乘加器及浮點(diǎn)乘加計(jì)算方法,通過(guò)設(shè)置至少兩浮點(diǎn)部分乘法器和一個(gè)多輸入加法器,浮點(diǎn)部分乘法器只包括符號(hào)位異或電路、尾數(shù)乘法器和指數(shù)加法器不包括歸一化模塊,接收歸一化浮點(diǎn)數(shù)進(jìn)過(guò)乘法運(yùn)算之后輸出非歸一化浮點(diǎn)數(shù)由加法器進(jìn)行加法運(yùn)算并輸出歸一化浮點(diǎn)數(shù),從硬件電路方面對(duì)浮點(diǎn)乘加器進(jìn)行了優(yōu)化并提高了浮點(diǎn)乘加器的運(yùn)算效率,降低了硬件電路的面積和功耗。

附圖說(shuō)明

為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器的結(jié)構(gòu)示意圖;

圖2是本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器中浮點(diǎn)部分乘法器的結(jié)構(gòu)示意圖;

圖3是本發(fā)明實(shí)施例提供的十六輸入浮點(diǎn)乘加器結(jié)構(gòu)示意圖;

圖4是本發(fā)明實(shí)施例提供的十六輸入浮點(diǎn)乘加器中八輸入加法器結(jié)構(gòu)示意圖;

圖5是本發(fā)明實(shí)施例提供的浮點(diǎn)乘加計(jì)算方法流程示意圖。

具體實(shí)施方式

為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

圖1是本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器的結(jié)構(gòu)示意圖,圖2是本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器中浮點(diǎn)部分乘法器的結(jié)構(gòu)示意圖,如圖1和圖2所示,本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器包括至少兩個(gè)浮點(diǎn)部分乘法器1和一個(gè)多輸入加法器2,所述浮點(diǎn)部分乘法器由符號(hào)位異或電路11、尾數(shù)乘法器12和指數(shù)加法器13組成,所述浮點(diǎn)部分乘法器1接收歸一化浮點(diǎn)數(shù)并進(jìn)行乘法計(jì)算得到非歸一化浮點(diǎn)數(shù),所述加法器2將所述非歸一化浮點(diǎn)數(shù)累加并輸出歸一化浮點(diǎn)數(shù),所述非歸一化浮點(diǎn)數(shù)由符號(hào)位、非歸一化尾數(shù)和指數(shù)部分構(gòu)成,所述歸一化浮點(diǎn)數(shù)由符號(hào)位、歸一化尾數(shù)和指數(shù)部分構(gòu)成。

卷積神經(jīng)網(wǎng)絡(luò)的運(yùn)算是由大量的連續(xù)乘法加法構(gòu)成的,現(xiàn)有技術(shù)中的運(yùn)算方法是利用多個(gè)獨(dú)立的浮點(diǎn)乘法器和一個(gè)多輸入加法器進(jìn)行運(yùn)算:每一次乘法計(jì)算都輸出歸一化浮點(diǎn)數(shù),再將乘法計(jì)算輸出的歸一化浮點(diǎn)數(shù)作為多輸入加法器的輸入,而多輸入加法器也是由多個(gè)加法器構(gòu)成的加法樹(shù),每次加法運(yùn)算都輸出一個(gè)歸一化浮點(diǎn)數(shù)作為下一級(jí)加法運(yùn)算的輸入。這里提到的歸一化浮點(diǎn)數(shù)是指符合ieee754標(biāo)準(zhǔn)的浮點(diǎn)數(shù)。本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器由多個(gè)浮點(diǎn)部分乘法器1和一個(gè)多輸入加法器2構(gòu)成,所謂浮點(diǎn)部分乘法器是指只由符號(hào)位異或電路11、尾數(shù)乘法器12和指數(shù)加法器13組成不包含歸一化模塊的乘法器。當(dāng)進(jìn)行乘加運(yùn)算時(shí),一個(gè)浮點(diǎn)部分乘法器接收兩個(gè)歸一化浮點(diǎn)數(shù)輸入,由符號(hào)位異或電路11對(duì)兩個(gè)浮點(diǎn)數(shù)的符號(hào)位進(jìn)行異或運(yùn)算獲得新的符號(hào)位,由尾數(shù)乘法器12對(duì)兩個(gè)浮點(diǎn)數(shù)的尾數(shù)位進(jìn)行乘法運(yùn)算獲得新的尾數(shù)位,由指數(shù)加法器13對(duì)兩個(gè)浮點(diǎn)數(shù)的指數(shù)位上的指數(shù)進(jìn)行加法運(yùn)算獲得新的指數(shù)位。由于尾數(shù)乘法器12是對(duì)兩個(gè)浮點(diǎn)數(shù)的尾數(shù)位進(jìn)行乘法運(yùn)算,得到的新的尾數(shù)位不能保證仍滿足歸一化的要求,因此得到的結(jié)果是非歸一化尾數(shù),新的符號(hào)位、非歸一化尾數(shù)和新的指數(shù)位構(gòu)成非歸一化浮點(diǎn)數(shù)。經(jīng)過(guò)浮點(diǎn)部分乘加器運(yùn)算得到的非歸一化浮點(diǎn)數(shù)直接作為多輸入加法器的輸入,經(jīng)過(guò)加法運(yùn)算之后得到符合歸一化要求的歸一化浮點(diǎn)數(shù)。

本實(shí)施例提供的浮點(diǎn)乘加器從電路結(jié)構(gòu)上進(jìn)行優(yōu)化設(shè)計(jì),通過(guò)設(shè)置至少兩浮點(diǎn)部分乘法器1和一個(gè)多輸入加法器2,浮點(diǎn)部分乘法器1只包括符號(hào)位異或電路11、尾數(shù)乘法器12和指數(shù)加法器13不包括歸一化模塊,接收歸一化浮點(diǎn)數(shù)進(jìn)過(guò)乘法運(yùn)算之后輸出非歸一化浮點(diǎn)數(shù)由加法器進(jìn)行加法運(yùn)算并輸出歸一化浮點(diǎn)數(shù),從硬件電路方面對(duì)浮點(diǎn)乘加器進(jìn)行了優(yōu)化并提高了浮點(diǎn)乘加器的運(yùn)算效率,降低了硬件電路的面積和功耗。

在上述實(shí)施例的基礎(chǔ)上,進(jìn)一步地,所述加法器包括:指數(shù)比較器、尾數(shù)移位器、舍入模塊和歸一化模塊,以將輸入的非歸一化浮點(diǎn)數(shù)累加并輸出歸一化浮點(diǎn)數(shù)。

具體的,浮點(diǎn)部分乘法器輸出的非歸一化浮點(diǎn)數(shù)作為多輸入加法器的輸入,其中,輸入的非歸一化浮點(diǎn)數(shù)的指數(shù)部分首先經(jīng)過(guò)指數(shù)比較器根據(jù)比較結(jié)果對(duì)輸入的非歸一化尾數(shù)經(jīng)過(guò)尾數(shù)移位器進(jìn)行對(duì)齊操作,再經(jīng)過(guò)定點(diǎn)加法器進(jìn)行累加,累加得到的結(jié)果經(jīng)過(guò)舍入模塊之后再經(jīng)過(guò)歸一化模塊進(jìn)行歸一化處理,就可以輸出歸一化浮點(diǎn)數(shù)。

本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器利用浮點(diǎn)部分乘法器對(duì)輸入的歸一化浮點(diǎn)數(shù)進(jìn)行乘法計(jì)算將得到的非歸一化浮點(diǎn)數(shù)輸入多輸入加法器,再通過(guò)多輸入加法器中的指數(shù)比較器、尾數(shù)移位器、舍入模塊和歸一化模塊將輸入的非歸一化浮點(diǎn)數(shù)累加并輸出歸一化浮點(diǎn)數(shù),通過(guò)在電路級(jí)別優(yōu)化浮點(diǎn)數(shù)乘法計(jì)算來(lái)減少硬件代價(jià),因此提高了運(yùn)算效率,降低了額外的歸一化開(kāi)銷(xiāo),降低了功耗。

在上述實(shí)施例的基礎(chǔ)上,進(jìn)一步地,所述加法器中的舍入模塊的舍入機(jī)制包括:截?cái)嗌崛?、向上舍入、向下舍入或最近舍入?/p>

具體的,截?cái)嗌崛?、向上舍入、向下舍入和最近舍入是四種不同的數(shù)據(jù)處理方式,用于對(duì)數(shù)據(jù)進(jìn)行舍入處理。為了方便說(shuō)明,我們以十進(jìn)制數(shù)字0.4、0.5、0.6、1.5、2.4和2.5分別針對(duì)這四種舍入方式進(jìn)行舍入的結(jié)果進(jìn)行說(shuō)明。

表1不同舍入方式進(jìn)行數(shù)據(jù)處理的結(jié)果示例

表1是不同舍入方式進(jìn)行數(shù)據(jù)處理的結(jié)果示例,如表1所示,截?cái)嗌崛氲姆绞绞菍⑿?shù)點(diǎn)之后的數(shù)據(jù)完全舍去只保留小數(shù)點(diǎn)之前的數(shù)字,這種舍入方式在電路實(shí)現(xiàn)方面作為簡(jiǎn)單,可以有效的降低電路的設(shè)計(jì)難度,提高計(jì)算效率降低電路功耗,但是其計(jì)算精度比較低,適用于精度要求低的計(jì)算場(chǎng)景。向上舍入、向下舍入和最近舍入這三種方式都是四舍六入,其中不同點(diǎn)在于對(duì)五的處理,向上舍入是將五向較大數(shù)字進(jìn)行進(jìn)位計(jì)算,0.5經(jīng)過(guò)向上舍入變成1,1.5向上舍入變成2,以此類(lèi)推,此處不再贅述;向下舍入是將五向較小數(shù)字進(jìn)行舍去計(jì)算,0.5經(jīng)過(guò)向下舍入變成0,1.5經(jīng)過(guò)向下舍入變成1,以此類(lèi)推,此處不再贅述;最近舍入又成向偶舍入,是將五向最近的偶數(shù)進(jìn)行舍入,例如0.5在0和1之間,其中0為偶數(shù),因此0.5經(jīng)過(guò)最近舍入變成0,1.5在1和2之間,其中2是偶數(shù),因此1.5經(jīng)過(guò)最近舍入變成2,同理2.5經(jīng)過(guò)最近舍入變成2,3.5經(jīng)過(guò)最近舍入變成4,以此類(lèi)推,此處不再贅述。由于對(duì)五的處理方式不同,向上舍入、向下舍入和最近舍入這三種舍入方式處理的數(shù)據(jù)在誤差方面也有各自的特點(diǎn):向上舍入將五向較大數(shù)字進(jìn)行進(jìn)位計(jì)算,因此數(shù)據(jù)整體會(huì)向上偏移;向下舍入將五向較小數(shù)字進(jìn)行舍去計(jì)算,因此數(shù)據(jù)整體會(huì)向下偏移;而最近舍入處理的數(shù)據(jù)會(huì)將整數(shù)部分為奇數(shù)的數(shù)字向上舍入,整數(shù)部分為偶數(shù)的數(shù)字向下舍入,從而在整體上減少了有舍入方式帶來(lái)的數(shù)據(jù)偏差,提高數(shù)據(jù)的精度,但是從電路設(shè)計(jì)上來(lái)說(shuō)最近舍入的電路設(shè)計(jì)作為復(fù)雜,因此在不同的精度要求下可以對(duì)舍入方式進(jìn)行合理選擇。

本實(shí)施例提供的浮點(diǎn)乘加器中包含多種舍入機(jī)制,可以在滿足不同運(yùn)算的需求的基礎(chǔ)上降低電路設(shè)計(jì)的難度,提高運(yùn)算效率和精度。

在上述實(shí)施例的基礎(chǔ)上,進(jìn)一步地,所述指數(shù)比較器找出輸入數(shù)據(jù)中最大的指數(shù)值,所述尾數(shù)移位器再根據(jù)所述最大的指數(shù)值進(jìn)行移位操作使尾數(shù)位對(duì)齊。

具體的,輸入的歸一化浮點(diǎn)數(shù)經(jīng)過(guò)浮點(diǎn)部分乘法器進(jìn)行乘法計(jì)算后輸出的非歸一化浮點(diǎn)數(shù)作為多輸入加法器的輸入,其中,輸入的非歸一化浮點(diǎn)數(shù)的指數(shù)部分首先經(jīng)過(guò)指數(shù)比較器得到最大的指數(shù)值,然后這個(gè)最大的指數(shù)值和各個(gè)輸入的指數(shù)相減求得偏移量,尾數(shù)數(shù)值的小數(shù)點(diǎn)根據(jù)偏移量進(jìn)行左移,電路上小數(shù)點(diǎn)的位置是固定的,因此各個(gè)輸入的尾數(shù)部分根據(jù)偏移量經(jīng)過(guò)尾數(shù)移位器右移,完成尾數(shù)對(duì)齊的要求。再經(jīng)過(guò)定點(diǎn)加法器進(jìn)行累加,累加得到的結(jié)果經(jīng)過(guò)舍入模塊之后再經(jīng)過(guò)歸一化模塊進(jìn)行歸一化處理,就可以輸出歸一化浮點(diǎn)數(shù)。

這里使用指數(shù)比較器獲得各個(gè)輸入中最大的指數(shù)值再根據(jù)最大的指數(shù)值和各個(gè)指數(shù)值的差進(jìn)行尾數(shù)對(duì)齊,這樣結(jié)果的指數(shù)部分就確定為最大的指數(shù)值,尾數(shù)對(duì)齊了之后相加就可以得到相應(yīng)的尾數(shù)值,在進(jìn)行尾數(shù)相加時(shí)可以直接使用定點(diǎn)加法器,進(jìn)一步提高了運(yùn)算效率。

在上述實(shí)施例的基礎(chǔ)上,進(jìn)一步地,所述加法器還包括脈動(dòng)寄存器,將所述尾數(shù)移位器和指數(shù)比較器的結(jié)果進(jìn)行存儲(chǔ),以增加加法器的流水線。

卷積神經(jīng)網(wǎng)絡(luò)的運(yùn)算是由大量的連續(xù)乘法加法構(gòu)成的,因此浮點(diǎn)乘加器的運(yùn)算效率還受到運(yùn)算頻率的影響。本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器中,在多輸入加法器中添加脈沖寄存器對(duì)尾數(shù)移位器和指數(shù)比較器的結(jié)果進(jìn)行保存,每次輸入的多個(gè)歸一化浮點(diǎn)數(shù)經(jīng)過(guò)浮點(diǎn)部分乘加器做乘法運(yùn)算之后變成非歸一化浮點(diǎn)數(shù)輸入多輸入加法器,在多輸入加法器中經(jīng)過(guò)指數(shù)比較器之后將比較結(jié)果存儲(chǔ)在脈沖寄存器中,再經(jīng)過(guò)尾數(shù)移位器之后將移位后的尾數(shù)存儲(chǔ)在相應(yīng)的脈沖寄存器中,這樣一來(lái)這些數(shù)據(jù)都存入了脈沖寄存器中,浮點(diǎn)乘加器就可以接收下一批輸入開(kāi)始進(jìn)行新一輪的運(yùn)算,而脈沖寄存器中的數(shù)據(jù)則繼續(xù)進(jìn)行接下來(lái)的運(yùn)算,進(jìn)入舍入模塊進(jìn)行舍入運(yùn)算,再進(jìn)入歸一化模塊進(jìn)行歸一化運(yùn)算輸出歸一化浮點(diǎn)數(shù)。

通過(guò)在加法器中添加脈沖寄存器對(duì)尾數(shù)移位器和指數(shù)比較器的結(jié)果進(jìn)行存儲(chǔ)可以有效提高運(yùn)算的頻率,從而提高整體運(yùn)算效率。

在上述各實(shí)施例的基礎(chǔ)上,進(jìn)一步地,所述歸一化模塊在所述加法器運(yùn)算的末端,對(duì)計(jì)算結(jié)果進(jìn)行歸一化處理。

前面提到現(xiàn)有技術(shù)中的浮點(diǎn)乘加器采用連續(xù)的乘法和加法進(jìn)行浮點(diǎn)運(yùn)算,每一次運(yùn)算的結(jié)果都是歸一化浮點(diǎn)數(shù),本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器去除了所有中間環(huán)節(jié)的歸一化模塊,只保留加法器末端的歸一化模塊,這樣整個(gè)運(yùn)算過(guò)程中的乘法和加法運(yùn)算都是定點(diǎn)運(yùn)算大大降低了計(jì)算的復(fù)雜程度,提高了運(yùn)算效率,在加法器的末端添加歸一化模塊則保證輸出的是符合標(biāo)準(zhǔn)的歸一化浮點(diǎn)數(shù)。

圖3是本發(fā)明實(shí)施例提供的十六輸入浮點(diǎn)乘加器結(jié)構(gòu)示意圖,圖4是本發(fā)明實(shí)施例提供的十六輸入浮點(diǎn)乘加器中八輸入加法器結(jié)構(gòu)示意圖,如圖3和圖4所示,所述乘加器包括八個(gè)浮點(diǎn)部分乘加器301和一個(gè)八輸入加法器302。

浮點(diǎn)部分乘法器由尾數(shù)乘法器和指數(shù)加法器組成,并且包括符號(hào)位的異或電路。浮點(diǎn)部分乘法器的輸出由非歸一化尾數(shù),指數(shù)還有符號(hào)位構(gòu)成,并且作為多輸入加法器的輸入。八輸入加法器包括:指數(shù)比較器401、尾數(shù)移位器402、脈沖寄存器403、舍入模塊404和歸一化模塊405等。在實(shí)現(xiàn)過(guò)程中,八輸入加法器可以根據(jù)工作需要來(lái)選擇內(nèi)部實(shí)現(xiàn)的舍入方式。

在工作時(shí),上一級(jí)浮點(diǎn)部分乘法器的輸出作為輸入,輸入到八輸入加法器中。8個(gè)指數(shù)首先同過(guò)指數(shù)比較器生成最大指數(shù)的值,然后該指數(shù)最大值與各個(gè)輸入指數(shù)相減求得不同的偏移量。然后,尾數(shù)部分根據(jù)偏移量右移,完成尾數(shù)對(duì)齊的要求。對(duì)齊后的尾數(shù)再經(jīng)過(guò)尾數(shù)求和電路計(jì)算出總和。最后經(jīng)過(guò)歸一化模塊得到歸一化的最終結(jié)果。

本發(fā)明實(shí)施例提供的浮點(diǎn)乘加器具有八個(gè)浮點(diǎn)部分乘加器和一個(gè)八輸入加法器,可以將十六個(gè)歸一化浮點(diǎn)數(shù)輸入進(jìn)行乘加運(yùn)算后輸出符合標(biāo)準(zhǔn)的歸一化浮點(diǎn)數(shù),并且通過(guò)添加脈沖寄存器403實(shí)現(xiàn)了兩段流水,提高了運(yùn)算頻率,進(jìn)而縮小了整體電路面積降低功耗,提高了運(yùn)算效率。

圖5是本發(fā)明實(shí)施例提供的浮點(diǎn)乘加計(jì)算方法流程示意圖,如圖5所示,方法包括:

步驟10、接收至少四個(gè)歸一化浮點(diǎn)數(shù)輸入;

步驟20、將所述歸一化浮點(diǎn)數(shù)進(jìn)行乘法運(yùn)算,得到非歸一化浮點(diǎn)數(shù);

步驟30、將所述非歸一化浮點(diǎn)數(shù)進(jìn)行加法運(yùn)算,得到歸一化浮點(diǎn)數(shù)。

具體的,首先介紹歸一化浮點(diǎn)數(shù)輸入,然后將接收的歸一化浮點(diǎn)數(shù)進(jìn)行乘法運(yùn)算,但是在進(jìn)行乘法運(yùn)算時(shí)不做歸一化處理直接用得到非歸一化的浮點(diǎn)數(shù)進(jìn)行加法運(yùn)算,在完成加法運(yùn)算之后再做歸一化處理得到符合標(biāo)準(zhǔn)的歸一化浮點(diǎn)數(shù)。由于在運(yùn)算過(guò)程中只在最后進(jìn)行歸一化處理,節(jié)省了對(duì)乘法運(yùn)算進(jìn)行歸一化處理的步驟,因此提高了計(jì)算效率。

在上述實(shí)施例的基礎(chǔ)上,進(jìn)一步地,所述得到非歸一化浮點(diǎn)數(shù)的步驟具體為:

將所述歸一化浮點(diǎn)數(shù)的符號(hào)位經(jīng)過(guò)符號(hào)異或電路得到所述非歸一化浮點(diǎn)數(shù)的符號(hào)位;

將所述歸一化浮點(diǎn)數(shù)的尾數(shù)位經(jīng)過(guò)尾數(shù)乘法器得到所述非歸一化浮點(diǎn)數(shù)的非歸一化尾數(shù)位;

將所述歸一化浮點(diǎn)數(shù)的指數(shù)位經(jīng)過(guò)指數(shù)加法器得到所述非歸一化浮點(diǎn)數(shù)的指數(shù)位;

將所述符號(hào)位、非歸一化尾數(shù)位和指數(shù)位組成的非歸一化浮點(diǎn)數(shù)輸出。

浮點(diǎn)數(shù)由符號(hào)位、尾數(shù)位和指數(shù)位三部分組成,浮點(diǎn)數(shù)乘法運(yùn)算即:將符號(hào)位進(jìn)行異或運(yùn)算,同號(hào)得正異號(hào)得負(fù);將尾數(shù)位相乘;再將指數(shù)位相加。因此在接收輸入的歸一化浮點(diǎn)數(shù)之后,利用符合異或電路將所述浮點(diǎn)數(shù)的符號(hào)位進(jìn)行異或運(yùn)算,得到新的符號(hào);利用尾數(shù)乘法器將輸入的歸一化浮點(diǎn)數(shù)的尾數(shù)位相乘得到新的尾數(shù);利用指數(shù)加法器在將歸一化浮點(diǎn)數(shù)的指數(shù)位相加得到新的指數(shù)。在進(jìn)行尾數(shù)位相乘之后,得到我尾數(shù)位可能已經(jīng)不符合歸一化要求了,因此稱之為非歸一化尾數(shù)。由新的符號(hào)、尾數(shù)和指數(shù)組成的浮點(diǎn)數(shù)稱為非歸一化浮點(diǎn)數(shù)。將得到的非歸一化浮點(diǎn)數(shù)作為多輸入加法器的輸入,在進(jìn)行加法運(yùn)算之后得到符合標(biāo)準(zhǔn)的歸一化浮點(diǎn)數(shù)。

本發(fā)明實(shí)施例提供的方法,通過(guò)簡(jiǎn)化歸一化浮點(diǎn)數(shù)乘法運(yùn)算中的歸一化步驟,在進(jìn)行加法運(yùn)算之后再輸出歸一化浮點(diǎn)數(shù),提高了浮點(diǎn)乘加計(jì)算的效率。

在上述實(shí)施例的基礎(chǔ)上,進(jìn)一步地,所述將所述非歸一化浮點(diǎn)數(shù)進(jìn)行加法運(yùn)算,得到歸一化浮點(diǎn)數(shù)的步驟具體為:

接收全部所述非歸一化浮點(diǎn)數(shù);

將各個(gè)非歸一化浮點(diǎn)數(shù)的指數(shù)進(jìn)行比較,得到最大的指數(shù);

將所述最大的指數(shù)與各個(gè)非歸一化浮點(diǎn)數(shù)的指數(shù)分別作差,得到各非歸一化浮點(diǎn)數(shù)的偏移量;

根據(jù)所述偏移量,將各非歸一化浮點(diǎn)數(shù)的尾數(shù)對(duì)齊;

將所述對(duì)齊后的各非歸一化尾數(shù)進(jìn)行帶符號(hào)求和,得出總和;

將所述總和與指數(shù)位經(jīng)過(guò)舍入模塊和歸一化模塊得到歸一化浮點(diǎn)數(shù)進(jìn)行輸出。

接收的歸一化浮點(diǎn)數(shù)經(jīng)過(guò)乘法運(yùn)算之后變成非歸一化浮點(diǎn)數(shù)繼續(xù)進(jìn)行加法運(yùn)算,在進(jìn)行加法運(yùn)算時(shí):首先接收全部非歸一化浮點(diǎn)數(shù);再將各個(gè)非歸一化浮點(diǎn)數(shù)的指數(shù)位進(jìn)行比較,得到其中最大的指數(shù);然后將最大的指數(shù)和各個(gè)指數(shù)進(jìn)行減法運(yùn)算,減法運(yùn)算得到的差值即為各非歸一化浮點(diǎn)數(shù)尾數(shù)部分的偏移量;根據(jù)偏移量將各個(gè)非歸一化浮點(diǎn)數(shù)的尾數(shù)部分進(jìn)行移位對(duì)齊;然后再將對(duì)齊后的各個(gè)非歸一化尾數(shù)進(jìn)行帶符號(hào)的加法運(yùn)算,得出總和;得到的總和可能不滿足歸一化要求,因此還需要經(jīng)過(guò)舍入模塊和歸一化模塊使結(jié)果符合歸一化要求,得到歸一化浮點(diǎn)數(shù)進(jìn)行輸出。

本發(fā)明實(shí)施例提供的方法通過(guò)簡(jiǎn)化歸一化浮點(diǎn)數(shù)乘法運(yùn)算中的歸一化步驟,在進(jìn)行加法運(yùn)算中先通過(guò)比較指數(shù)位計(jì)算偏移量對(duì)尾數(shù)位進(jìn)行移位對(duì)齊,然后將對(duì)齊后的尾數(shù)位進(jìn)行帶符號(hào)加法運(yùn)算,再對(duì)得到的總和與指數(shù)位經(jīng)過(guò)舍入模塊和歸一化模塊后得到符合規(guī)定的歸一化浮點(diǎn)數(shù),提高了浮點(diǎn)乘加計(jì)算的效率。

以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性的勞動(dòng)的情況下,即可以理解并實(shí)施。

通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到各實(shí)施方式可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件?;谶@樣的理解,上述技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,如rom/ram、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。

最后應(yīng)說(shuō)明的是:以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1