一種新型dsp指令結(jié)構(gòu)及數(shù)據(jù)通道

一種新型dsp指令結(jié)構(gòu)及數(shù)據(jù)通道

ID:23678757

大小:51.00 KB

頁數(shù):5頁

時(shí)間:2018-11-09

一種新型dsp指令結(jié)構(gòu)及數(shù)據(jù)通道_第1頁
一種新型dsp指令結(jié)構(gòu)及數(shù)據(jù)通道_第2頁
一種新型dsp指令結(jié)構(gòu)及數(shù)據(jù)通道_第3頁
一種新型dsp指令結(jié)構(gòu)及數(shù)據(jù)通道_第4頁
一種新型dsp指令結(jié)構(gòu)及數(shù)據(jù)通道_第5頁
資源描述:

《一種新型dsp指令結(jié)構(gòu)及數(shù)據(jù)通道》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、一種新型DSP指令結(jié)構(gòu)及數(shù)據(jù)通道

2、第1  DSP的體系結(jié)構(gòu)將在以后的文章中作介紹,本文主要介紹該DSP的運(yùn)算指令設(shè)計(jì)及特有的模式控制結(jié)構(gòu)。本DSP運(yùn)算指令包括MAC運(yùn)算、ALU運(yùn)算和SHIFTER運(yùn)算等32條運(yùn)算指令。如果采用其它處理器的做法,16位運(yùn)算和32位運(yùn)算采用不同的指令,則運(yùn)算指令就有64條。為了減少指令編碼長度,該DSP采用了模式控制的方式。即針對(duì)某一種運(yùn)算(例如乘加),16位運(yùn)算和32位運(yùn)算采用同一條指令;它們的區(qū)分采用模式控制的方式,在16位運(yùn)算模式下,運(yùn)算指令進(jìn)行的是16位運(yùn)算;在32位運(yùn)算指令下,運(yùn)算指令進(jìn)行的是32位運(yùn)算。采用這種方式

3、的基礎(chǔ)是,在實(shí)際應(yīng)用中,一般不會(huì)出現(xiàn)同時(shí)進(jìn)行16位運(yùn)算和32位運(yùn)算的情形。  圖1是DSP的結(jié)構(gòu)圖。控制單元和模式控制器控制數(shù)據(jù)通道和存儲(chǔ)器的動(dòng)作。當(dāng)模式控制單元控制DSP運(yùn)行在16位模式下時(shí),數(shù)據(jù)通道進(jìn)行16位的運(yùn)算,存儲(chǔ)器讀出或存取16位的數(shù)據(jù);當(dāng)模式控制單元控制DSP運(yùn)行在32位模式下時(shí),數(shù)據(jù)通道進(jìn)行32位的運(yùn)算,存儲(chǔ)器讀出或存取32位的數(shù)據(jù)。  采用模式控制的方法,DSP的運(yùn)算指令從64條減少到32條。從而減少了指令的編碼長度,提高了編碼密度。從而減少DSP的片上存儲(chǔ)器。三、運(yùn)算單元  DSP處理器中的關(guān)鍵路徑是乘法累加單元,實(shí)現(xiàn)我們提出的DSP處

4、理器結(jié)構(gòu)的關(guān)鍵也是實(shí)現(xiàn)乘法累加運(yùn)算。本文提出了乘法器單元,可以滿足該指令集的要求。既能進(jìn)行16位運(yùn)算,又能進(jìn)行32位乘法累加運(yùn)算。一種乘法累加單元是采用重構(gòu)的方法,利用兩個(gè)16位的乘法器重構(gòu)一個(gè)32位的乘法單元。一種是用分割的方法,采用一個(gè)32位的乘法器,通過適當(dāng)?shù)脑O(shè)計(jì),可以實(shí)現(xiàn)兩個(gè)16位的乘法運(yùn)算。這兩種乘法器均可以工作在16位模式,32位模式和單指令、多數(shù)據(jù)模式。3.1可重構(gòu)乘法累加運(yùn)算單元500)this.style.ouseg(this)">圖2是可重構(gòu)乘法累加單元的結(jié)構(gòu)圖。該乘法累加單元由兩個(gè)16位的乘法器、三個(gè)加法器、一個(gè)流水線寄存器構(gòu)成。可以

5、在一個(gè)周期內(nèi)完成一次32位乘法,或一次16位乘法,或兩次16位乘法運(yùn)算。具體進(jìn)行哪種運(yùn)算,由模式控制單元產(chǎn)生的控制信號(hào)控制數(shù)據(jù)流實(shí)現(xiàn)。多選器1在模式控制信號(hào)作用下,把寄存器A和B中的操作數(shù)送到相應(yīng)的乘法器。加法器1的作用是,在32位模式下時(shí),把A1,B0和A0,B1的乘法結(jié)果相加。中間寄存器(partialregister)的作用是存儲(chǔ)加法器1的結(jié)果。加法器2也是在32位模式下起作用,它把中間寄存器的數(shù)和A0,B0及A1,B1的相加。加法器3是乘法累加單元的重要組成部分,是一個(gè)80位加法器,它把乘法結(jié)果和加法操作數(shù)相加。為了滿足三種工作模式的需求,它由兩個(gè)

6、40位的加法器重構(gòu)而成。圖3是乘法累加單元的時(shí)序圖?! 」ぷ髟?6位模式時(shí),乘法乘法操作數(shù)經(jīng)多選器1進(jìn)入乘法器A,乘法結(jié)果經(jīng)多選器3后進(jìn)入加法器3,和加法操作數(shù)進(jìn)行加法運(yùn)算后輸出結(jié)果?! 」ぷ髟?2位模式下時(shí),假設(shè)A1A0是一個(gè)32位乘數(shù),B1B0是一個(gè)32位乘數(shù),其中A1,B1是高16位數(shù),A0,B0是低16位數(shù)。在時(shí)鐘的上升延,A1,B0被送入乘法器A,A0,B1被送入乘法器B。乘法結(jié)果在加法器1中相加,結(jié)果送入寄存器(partialregister)中。在時(shí)鐘下降延,A0,B0和A1,B1被分別送入乘法器A和乘法器B。運(yùn)算結(jié)果送到加法器2,和寄存器中

7、的數(shù)據(jù)相加后經(jīng)過多選器3進(jìn)入加法器3,和加法操作數(shù)進(jìn)行加法運(yùn)算后輸出結(jié)果。500)this.style.ouseg(this)">500)this.style.ouseg(this)">工作在單指令多數(shù)據(jù)模式下時(shí),A1,B1作為一對(duì)乘法操作數(shù),A0,B0作為一對(duì)乘法操作數(shù)。在時(shí)鐘上升延,A1,B1被送入乘法器A,A0,B0被送入乘法器B,運(yùn)算結(jié)果經(jīng)多選器3后被送入加法器3,和加法操作數(shù)進(jìn)行加法運(yùn)算后輸出結(jié)果?! 】芍貥?gòu)的乘法累加單元用VerilogHDL語言進(jìn)行了模擬仿真,功能滿足預(yù)計(jì)的要求?! ∵@種結(jié)構(gòu)的MAC單元優(yōu)點(diǎn)是結(jié)構(gòu)簡單,面積?。ㄓ脙蓚€(gè)16位乘法

8、器實(shí)現(xiàn)32位乘法),可以調(diào)用現(xiàn)成的加法器和乘法器,只占用流水線的一級(jí),簡化了DSP的結(jié)構(gòu)。缺點(diǎn)是在高性能DSP的應(yīng)用上有缺陷,因?yàn)樗年P(guān)鍵路徑是32位乘法(包括兩次16位乘法及一些加法),這樣進(jìn)行16位運(yùn)算時(shí)性能就上不去。3.2可分割乘法累加單元  采用分割32位乘法器的方法是另一種能實(shí)現(xiàn)我們提出的DSP功能的數(shù)據(jù)通道。一般來說,32位的乘法器都能實(shí)現(xiàn)16位的運(yùn)算。不過用32位的乘法器做16位乘法就有些浪費(fèi)。我們提出的乘法累加單元和普通的乘法累加單元類似,也包括一個(gè)部分積生成單元,一個(gè)部分積累加陣列,一個(gè)累加單元,如圖4所示。其中部分積生成單元和累加單元進(jìn)

9、行了特殊的設(shè)計(jì),從而使32位乘法累加單元不但可以實(shí)現(xiàn)32位乘法累加

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。