浓毛老太交欧美老妇热爱乱,蜜臀性色av免费,妺妺窝人体色www看美女,久久久久久久久久久大尺度免费视频,麻豆人妻无码性色av专区

位置:51電子網(wǎng) » 技術(shù)資料 » 顯示光電

帶有飽和處理功能的并行乘加單元設(shè)計

發(fā)布時間:2007/8/24 0:00:00 訪問次數(shù):548

摘  要:本文介紹了一種48bit+24bit×24bit帶飽和處理的MAC單元設(shè)計。在乘法器的設(shè)計中,采用改進(jìn)的booth 算法來減少部分積的數(shù)目,用由壓縮單元組成的Wallace tree將產(chǎn)生的部分積相加,并將被加數(shù)作為乘法器的一個部分積參與到Wallace tree陣列中來完成乘加運(yùn)算,同時增加了飽和檢測和飽和值運(yùn)算邏輯來實現(xiàn)飽和處理。

  關(guān)鍵詞:booth算法; Wallace tree ;飽和處理;飽和檢測

    圖1  飽和MAC結(jié)構(gòu)框圖

    引言

  在一些數(shù)字信號處理應(yīng)用,如數(shù)字濾波、語音編碼、圖形處理等領(lǐng)域中,要大量反復(fù)地進(jìn)行飽和處理操作。所謂飽和處理操作,是指當(dāng)兩個n位操作數(shù)相運(yùn)算時,如果結(jié)果發(fā)生溢出,則取其飽和值。對于用補(bǔ)碼表示的n位二進(jìn)制數(shù),正的飽和值為011…11,負(fù)的飽和值為100…00。飽和處理操作一般要用到兩個周期,在第一個周期中處理算術(shù)運(yùn)算操作,在第二個周期中處理飽和操作。更加復(fù)雜的操作,例如MAC操作,一般是在分別完成乘法和加法運(yùn)算之后再進(jìn)行飽和處理,這通常需要更多的周期。而并行飽和運(yùn)算操作則是在一個周期之內(nèi)取得串行操作的結(jié)果,這需要更多的硬件電路來實現(xiàn)。

  本文設(shè)計了一種MAC單元,實現(xiàn)

=>的運(yùn)算操作,并帶有飽和處理功能。

    飽和乘加單元基本結(jié)構(gòu)

  為了實現(xiàn)

=>的飽和運(yùn)算,在一般情況下,計算P時,可以將X 、Y經(jīng)乘法器相乘,然后將積與A相加,如果發(fā)生溢出,則將所得的和修正為飽和值。這實際上就是將乘法器與加法器簡單串聯(lián),然后進(jìn)行飽和值修正,如圖1所示。但是以這種結(jié)構(gòu)實現(xiàn)的MAC單元,由于乘法器中的最終加法器和加法器只是簡單的串聯(lián)在一起,在關(guān)鍵路徑上就有兩級串聯(lián)的加法器,面積、延時都比較大。

  為了提高M(jìn)AC單元的性能,本文對上面提到的結(jié)構(gòu)進(jìn)行了優(yōu)化, 優(yōu)化后的結(jié)構(gòu)如圖2所示。 將MAC單元的被加數(shù)作為乘法器的一個部分積,參與到部分積加法陣列中,這樣就可以省去完成乘法計算后再進(jìn)行加法計算的操作,縮短關(guān)鍵路徑上的延時。

  高速并行乘加單元結(jié)構(gòu)

  本文選用修正booth算法和Wallace tree結(jié)構(gòu)實現(xiàn)24×24高速并行乘法器。圖3是24×24高速乘加器的結(jié)構(gòu)框圖,主要由booth編碼、部分積陣列、Wallace tree以及最終加法器構(gòu)成。

  booth編碼

  被乘數(shù)、乘數(shù)分別為n位補(bǔ)碼表示的有符號數(shù),在MBA(修正booth算法)中:

  部分積的數(shù)目=,不失一般性,在這里只討論n為偶數(shù)的情況。

  設(shè):X=-an-12n-1+2i;
       Y=-bn-12n-1+2i;

  根據(jù)MBA,對乘數(shù)進(jìn)行以下變換:

 Y=-bn-12n-1+2i
   =
在這里a-1=0;
令其中i=0,1,2,…(n/2-1);則
;
;

  由上式可以看到加法計算量減少了一半,同時可以看出Ki+1X相對于KiX需要左移兩位。

  在MBA中,乘數(shù)被劃分成2位的塊,對于第j個塊,塊中的2位(b2j+1,b2j)和前一個塊中的高位b2j-1重新進(jìn)行編碼,編碼真值表為:

  符號擴(kuò)展及部分積產(chǎn)生

  在部分積生成過程中,符號位的擴(kuò)展隨部分積一起產(chǎn)生,我們將所有的擴(kuò)展符號位相加:


  由于和是48位的,故將上式中第一項舍掉,得:
;

  對于部分積的產(chǎn)生,如果乘數(shù)經(jīng)booth重編碼后Ki為負(fù),則需將部分積取反后加1,如表1所示。因此,在設(shè)計中可將每一個部分積的最后一位與ni相加,booth編碼值為負(fù)時ni=1;編碼值為正時ni=0。

  部分積及被加數(shù)相加

  Wallace tree是通過提高電路的并行度來提高電路速度的一種實現(xiàn)結(jié)構(gòu),它將所有的部分積在同一時刻相互獨(dú)立地并行加到電路中,從而提高運(yùn)算速度。在Wallace tree結(jié)構(gòu)里面,我們用壓縮單元將乘法操作過程中產(chǎn)生的部分積以及被加數(shù)相加。在本設(shè)計中,我們把被加數(shù)作為一個部分積,加到Wallace tree陣列中,這樣就可以省去完成乘法運(yùn)算后再進(jìn)行加法運(yùn)算的操作延遲,提高M(jìn)AC單元速度。

  最大的樹由3個3-2壓縮單元和4個4-2壓縮單元組成,樹的高度只有3級,這比只用全加器實現(xiàn)時的高度要小得多,延時也小得多。對于其他較小的樹,可以通過減少壓縮單元的數(shù)目來實現(xiàn)。圖4為本MAC單元中最大的Wallace tree 結(jié)構(gòu)(其中a22為被加數(shù)的相應(yīng)位)。

  最終加法器

  在Wallace tree陣列中,Wallace tree的每一列都產(chǎn)生一個初步的進(jìn)位項和一個初步的加法結(jié)果,最后必須使用一個快速加法器將所有的進(jìn)位項和

摘  要:本文介紹了一種48bit+24bit×24bit帶飽和處理的MAC單元設(shè)計。在乘法器的設(shè)計中,采用改進(jìn)的booth 算法來減少部分積的數(shù)目,用由壓縮單元組成的Wallace tree將產(chǎn)生的部分積相加,并將被加數(shù)作為乘法器的一個部分積參與到Wallace tree陣列中來完成乘加運(yùn)算,同時增加了飽和檢測和飽和值運(yùn)算邏輯來實現(xiàn)飽和處理。

  關(guān)鍵詞:booth算法; Wallace tree ;飽和處理;飽和檢測

    圖1  飽和MAC結(jié)構(gòu)框圖

    引言

  在一些數(shù)字信號處理應(yīng)用,如數(shù)字濾波、語音編碼、圖形處理等領(lǐng)域中,要大量反復(fù)地進(jìn)行飽和處理操作。所謂飽和處理操作,是指當(dāng)兩個n位操作數(shù)相運(yùn)算時,如果結(jié)果發(fā)生溢出,則取其飽和值。對于用補(bǔ)碼表示的n位二進(jìn)制數(shù),正的飽和值為011…11,負(fù)的飽和值為100…00。飽和處理操作一般要用到兩個周期,在第一個周期中處理算術(shù)運(yùn)算操作,在第二個周期中處理飽和操作。更加復(fù)雜的操作,例如MAC操作,一般是在分別完成乘法和加法運(yùn)算之后再進(jìn)行飽和處理,這通常需要更多的周期。而并行飽和運(yùn)算操作則是在一個周期之內(nèi)取得串行操作的結(jié)果,這需要更多的硬件電路來實現(xiàn)。

  本文設(shè)計了一種MAC單元,實現(xiàn)

=>的運(yùn)算操作,并帶有飽和處理功能。

    飽和乘加單元基本結(jié)構(gòu)

  為了實現(xiàn)

=>的飽和運(yùn)算,在一般情況下,計算P時,可以將X 、Y經(jīng)乘法器相乘,然后將積與A相加,如果發(fā)生溢出,則將所得的和修正為飽和值。這實際上就是將乘法器與加法器簡單串聯(lián),然后進(jìn)行飽和值修正,如圖1所示。但是以這種結(jié)構(gòu)實現(xiàn)的MAC單元,由于乘法器中的最終加法器和加法器只是簡單的串聯(lián)在一起,在關(guān)鍵路徑上就有兩級串聯(lián)的加法器,面積、延時都比較大。

  為了提高M(jìn)AC單元的性能,本文對上面提到的結(jié)構(gòu)進(jìn)行了優(yōu)化, 優(yōu)化后的結(jié)構(gòu)如圖2所示。 將MAC單元的被加數(shù)作為乘法器的一個部分積,參與到部分積加法陣列中,這樣就可以省去完成乘法計算后再進(jìn)行加法計算的操作,縮短關(guān)鍵路徑上的延時。

  高速并行乘加單元結(jié)構(gòu)

  本文選用修正booth算法和Wallace tree結(jié)構(gòu)實現(xiàn)24×24高速并行乘法器。圖3是24×24高速乘加器的結(jié)構(gòu)框圖,主要由booth編碼、部分積陣列、Wallace tree以及最終加法器構(gòu)成。

  booth編碼

  被乘數(shù)、乘數(shù)分別為n位補(bǔ)碼表示的有符號數(shù),在MBA(修正booth算法)中:

  部分積的數(shù)目=,不失一般性,在這里只討論n為偶數(shù)的情況。

  設(shè):X=-an-12n-1+2i;
       Y=-bn-12n-1+2i;

  根據(jù)MBA,對乘數(shù)進(jìn)行以下變換:

 Y=-bn-12n-1+2i
   =
在這里a-1=0;
令其中i=0,1,2,…(n/2-1);則
;
;

  由上式可以看到加法計算量減少了一半,同時可以看出Ki+1X相對于KiX需要左移兩位。

  在MBA中,乘數(shù)被劃分成2位的塊,對于第j個塊,塊中的2位(b2j+1,b2j)和前一個塊中的高位b2j-1重新進(jìn)行編碼,編碼真值表為:

  符號擴(kuò)展及部分積產(chǎn)生

  在部分積生成過程中,符號位的擴(kuò)展隨部分積一起產(chǎn)生,我們將所有的擴(kuò)展符號位相加:


  由于和是48位的,故將上式中第一項舍掉,得:
;

  對于部分積的產(chǎn)生,如果乘數(shù)經(jīng)booth重編碼后Ki為負(fù),則需將部分積取反后加1,如表1所示。因此,在設(shè)計中可將每一個部分積的最后一位與ni相加,booth編碼值為負(fù)時ni=1;編碼值為正時ni=0。

  部分積及被加數(shù)相加

  Wallace tree是通過提高電路的并行度來提高電路速度的一種實現(xiàn)結(jié)構(gòu),它將所有的部分積在同一時刻相互獨(dú)立地并行加到電路中,從而提高運(yùn)算速度。在Wallace tree結(jié)構(gòu)里面,我們用壓縮單元將乘法操作過程中產(chǎn)生的部分積以及被加數(shù)相加。在本設(shè)計中,我們把被加數(shù)作為一個部分積,加到Wallace tree陣列中,這樣就可以省去完成乘法運(yùn)算后再進(jìn)行加法運(yùn)算的操作延遲,提高M(jìn)AC單元速度。

  最大的樹由3個3-2壓縮單元和4個4-2壓縮單元組成,樹的高度只有3級,這比只用全加器實現(xiàn)時的高度要小得多,延時也小得多。對于其他較小的樹,可以通過減少壓縮單元的數(shù)目來實現(xiàn)。圖4為本MAC單元中最大的Wallace tree 結(jié)構(gòu)(其中a22為被加數(shù)的相應(yīng)位)。

  最終加法器

  在Wallace tree陣列中,Wallace tree的每一列都產(chǎn)生一個初步的進(jìn)位項和一個初步的加法結(jié)果,最后必須使用一個快速加法器將所有的進(jìn)位項和

相關(guān)IC型號

熱門點(diǎn)擊

 

推薦技術(shù)資料

按鈕與燈的互動實例
    現(xiàn)在趕快去看看這個目錄卞有什么。FGA15N120AN... [詳細(xì)]
版權(quán)所有:51dzw.COM
深圳服務(wù)熱線:13692101218  13751165337
粵ICP備09112631號-6(miitbeian.gov.cn)
公網(wǎng)安備44030402000607
深圳市碧威特網(wǎng)絡(luò)技術(shù)有限公司
付款方式


 復(fù)制成功!