一種消除內(nèi)存訪問等待的DSP內(nèi)存控制設計_第1頁
一種消除內(nèi)存訪問等待的DSP內(nèi)存控制設計_第2頁
一種消除內(nèi)存訪問等待的DSP內(nèi)存控制設計_第3頁
一種消除內(nèi)存訪問等待的DSP內(nèi)存控制設計_第4頁
一種消除內(nèi)存訪問等待的DSP內(nèi)存控制設計_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、概述1 數(shù)字信號處理器()主要運用在信號傳送、音頻視DSP 頻壓縮解碼、頻譜分析等領域,這些領域無一例外地需要處理器進行大量的數(shù)據(jù)交換,所以確保在運行過程中獲得DSP 高數(shù)據(jù)吞吐率是設計的一個基本前提。DSP 當今各個應用領域對運算性能不斷提出新的要求,DSP 已向著高主頻深度流水線的方向發(fā)展1。表為目前主流1DSP 的流水線深度2,3。但是,隨著流水線深度的不斷增加,DSP 不可避免地產(chǎn)生了數(shù)據(jù)相關問題。表國際上主流流水線深度1 DSPDSP 型號主頻流水線深度TI C54100MHz 6TI C55200MHz 8TI C6200600MHz 11ADI BlackFin300MHz8所謂

2、流水線數(shù)據(jù)相關問題指的是處理器低層次流水線上所需數(shù)據(jù)仍處在高層次流水線上。當這種情況發(fā)生時,處理器一般將自動進入等待周期,等到深層流水線完成運算,數(shù)據(jù)相關消除后才繼續(xù)工作。所以如果過多地進入等待周DSP 期,從實際工作效能評價,其實質(zhì)主頻已經(jīng)下降,如若不能很好地解決數(shù)據(jù)相關等待的問題,即使擁有一個相對較DSP 高的主頻,其處理能力的優(yōu)勢仍得不到相應的體現(xiàn)。本文從解決數(shù)據(jù)相關性問題出發(fā),提出了一種將讀寫操作分層并采用硬件寫回緩沖的方法,在硬件層次上實現(xiàn)了一種數(shù)據(jù)相關消除的方案。此方案對于軟件開發(fā)過程完全DSP 透明,是一種無需程序員干預的純硬件解決方案,并最終 在漢芯的設計中成功得到應用。DSP

3、 數(shù)據(jù)相關的具體分析2 的數(shù)據(jù)相關問題主要體現(xiàn)在訪存等待上。所謂訪存DSP 等待指的是當處理器需要訪存時,內(nèi)存控制單元由于需DSP 要總線沖突或者由于所需數(shù)據(jù)仍然處在運算單元中無法得到所引起的。在傳統(tǒng)的中,由于運算單元僅占用了單層流DSP 水線,所以訪存單元與運算單元處在相同的流水線層,因而整個問題并不突出。但是由于近一兩年來,主頻已開始DSP 突破,并向進軍,運算單元若處在單層流水線300MHz 1GHz 已難以跟上主頻的發(fā)展,所以運算單元的流水線分層已不可避免,圖是本次所討論的漢芯的運算單元流水線結構1DSP 示意圖。 P7P9P11 P13圖漢芯運算單元流水線結構1 DSP從圖中可以看出

4、,整個運算單元的完整操作會在層流14水中完成。首先在層整個流水線會進行指令解碼操作,P7然后層將進行乘法操作,層進行加減、移位和邏輯操P9P11作,最后在層實現(xiàn)標志位和寫回操作。由于運算單元在P13層開始數(shù)據(jù)操作,訪存單元必須在層即為運算單元提P7P7供運算數(shù)據(jù),而訪存單元執(zhí)行寫存操作時必須等到層方P13一種消除內(nèi)存訪問等待的內(nèi)存控制設計DSP 徐如淏,王兵,李宇飛(上海交通大學微電子學院,上海)200030摘要: 隨著數(shù)字信號處理器主頻的不斷提高,其中的運算單元已由單層流水線結構向多層流水線結構變遷。但隨之帶來了訪問內(nèi)存時出現(xiàn)等待周期的問題。文章提出了讀寫分層及硬件寫回緩沖的設計,消除了訪存

5、單元等待周期,使訪存單元獲得的工作效率。100%關鍵詞:數(shù)字信號處理器;內(nèi)存控制單元;寫回緩沖;讀寫操作DSP Memory Control Design for Eliminating Memory Access WaitXU Ruhao, WANG Bing , LI Yufei(School of Microelectronics, Shanghai Jiaotong University, Shanghai 200030【Abstract 】During the increment of the main frequency of digital signal processor, t

6、he arithmetic module is divided into multi-level. But it causes the problem of memory access wait cycle. The paper proposes a design which arranges reading and writing access in different pipeline level and introduces a write-back buffer to eliminate the memory access wait cycle, and then the memory

7、 access unit can achieve 100% work efficiency.【Key words】DSP; Memory control unit; Write-back buffer; Reading and writing access第31卷第5期Vol.31 5計算機工程Computer Engineering2005年3月·基金項目論文·中圖分類號:TP302文章編號:10003428(200505 003803文獻標識碼:A38March 2005可取得運算結果。以下程序是一段典型的數(shù)據(jù)依賴程序。1mac r2,r1,r6u:(ar6+n6,r0

8、v:(ar1+,r32macr r0,r3,r6r7,u:(ar5+v:(ar0,r73subl r6,r7u:(ar0,r6r6,v:(ar44mac r0,r1,r6u:(ar0+,r7r7,v:(ar55macr r2,r3,r6u:(ar1,r1v:(ar6,r26Subl r6,r7r6,u:(ar4+v:(ar0,r6當運行指令時,須將寄存器的數(shù)據(jù)寫入內(nèi)存,DSP 3r6但是恰好是上一條乘加指令的運算結果,所以此時訪存單r6元無法取得正確的運算結果,只能在流水線上等待到指令2完全流出流水線。同樣,指令與指令之間,指令與指令3456之間都存在數(shù)據(jù)依賴關系,如果以平均一個等待周期進行計

9、算,以上這段條指令構成的程序運行周期數(shù)為:6(指令周期)(等待周期)個周期6+3=9整個流水線性能將下降,如果整塊工作在33%DSP 的主頻下,其實質(zhì)上僅相當于一塊不產(chǎn)生等待的300MHz 以主頻進行工作。DSP 200MHz 從上述分析中可以得出,如果不解決訪存等待問題,高主頻的性能將完全無法發(fā)揮。以下將討論采用讀寫操作DSP 流水層分隔及寫回緩沖的方法解決訪存等待的問題。訪存等待的解決3 讀寫操作流水層分隔3.1 從流水線等待的分析中可以發(fā)現(xiàn),產(chǎn)生流水線等待的原因是由于運算單元要求的運算源操作數(shù)的時間早于運算單元給出運算結果到個周期。正是由于這到個周期的間1212 隙,使得后序指令必須在流

10、水線上等待。針對這一情況,設計時將訪存單元的讀寫操作流水層分開,將讀取操作的流水層提前于寫存流水層一個周期。圖是漢芯訪存單元的2DSP 流水線示意圖。 P7P9P11 P5圖漢芯訪存單元流水線結構2 DSP 表流水線訪存工作情況2 P13I1I2I3從圖可看出,內(nèi)存讀寫操作的流水層已經(jīng)被拆開,由2于為時鐘同步觸發(fā)單元結構,因此在層發(fā)出相應尋SRAM P7址地址,在層即可得到所需要的數(shù)據(jù),而寫存層次為了P9保持和運算單元的同步也相應移動到了層,這樣就解決P11了第節(jié)程序中所產(chǎn)生的訪存等待問題。表為經(jīng)過分層調(diào)整22后,流水線在實際工作時的運行情況。當引入讀寫分層的方法后,會產(chǎn)生新的寫后讀數(shù)據(jù)相關問

11、題,以下將采用寫回緩沖的方法加以進一步解決。寫后讀沖突與寫回緩沖3.2 當采用讀寫操作流水線層次分開后,運算源數(shù)據(jù)和運算結果的寫回等待問題得到了很好的解決,但是也產(chǎn)生了總線爭搶,如下列程序所示。I1MOVE R3,U :(AR6)I2MOVE U:(AR7),R4從表可以看出,由于流水線的分層,當運行到時間3C3片時,的寫操作在流水線層,的讀操作在層。對 I1P11I2P9于而言,一個工作周期只能進行一次操作,兩者不可SRAM 同時進行,所以如果不加以控制,整個流水線在此處將再產(chǎn)生等待等待前序指令寫操作運行完成。結合第節(jié)的程序( 2分析,指令與指令之間、指令與指令之間都存在相應的2361問題。

12、表訪存寫后讀總沖突流水線工作情況3 P7I1I2P9I1I2STALL I2P11I1P13I1從數(shù)據(jù)等待的原因分析,流水線發(fā)生等待的原因主要是由于讀操作是在寫操作完成之后再進行操作,這樣后序指令必須在流水線上多停留一個周期。但是從數(shù)據(jù)流的使用上來看,寫操作相對于讀操作而言并不需要“即刻”操作,所謂“即刻操作”指的是某條指令如果不在第一時間執(zhí)行,則后序的指令將無法運行,這一點相對于讀操作是成立的,原因是后序指令的源操作都是來自讀操作的運行結果,而寫操作完全可以在訪存空閑時操作。根據(jù)這一原則,在漢芯DSP 訪存單元的設計中,引入“寫回緩沖”這一硬件結構。DSP “寫回緩沖”指的是當寫后讀沖突時,

13、寫操作的優(yōu)先級將自動低于讀操作,讀操作將先擁有總線的控制權,而將寫操作的內(nèi)容先臨時存入一段特別設置的緩沖中,當內(nèi)存總線空閑時,再將寫操作送入內(nèi)存總線。圖是寫回緩沖的結構3和工作方式示意圖。圖寫回緩沖工作示意圖3 結合訪存寫后讀沖突程序段分析可知,當指令運行在I1流水層上,發(fā)現(xiàn)層有讀操作時,自動進入寫回緩沖,P11P9此時層讀操作將不受任何干擾。當下一周期層為空,P9P9寫回緩沖自動執(zhí)行寫操作。表是實現(xiàn)寫回緩沖后的流水線439工作情況。表訪存寫后讀沖突流水線工作情況4 C1C2C3C4 P7I1I2P9I1I2(讀)P11I1(寫,進入寫回緩沖)I2(I1寫內(nèi)存P13可見當讀寫操作流水線層分開與

14、寫回緩沖同時實現(xiàn)后,訪存單元可達到工作效率,所有的訪存等待都在硬件100%層面上得到解決,從軟件的角度上看,訪存單元將不產(chǎn)生任何等待。最后討論一下寫回緩沖的深度??梢园l(fā)現(xiàn)寫回緩沖僅在寫后讀這一情況下出現(xiàn),當出現(xiàn)寫后讀操作時,寫回緩沖內(nèi)容深度為,一旦只要有一條寫指令出現(xiàn)在后序指令流中并1運行到層時,內(nèi)存總線將產(chǎn)生一個空隙,寫回緩沖可以P9使用這個空隙完成寫操作,所以整個寫回緩沖的長深度不會大于,完全可以用同步寄存器來模擬實現(xiàn),而不會引入新1的內(nèi)存模塊而帶來后端實現(xiàn)困難。至此,整體設計問題都得到了很好的解決。結論4 綜合以上討論可以發(fā)現(xiàn),如果將訪存單元在設計時配合運算單元流水線進行調(diào)整,將讀寫操作

15、層次分開,并且在分層后引入寫回緩沖后,訪存單元可以為整個提供DSP 100%效率的訪存控制能力,不會因為訪存單元而產(chǎn)生任何的DSP 等待,從整體上而言既可以達到高主頻,也可以實現(xiàn)高DSP 效能。在設計漢芯時,成功地采用了以上設計,使?jié)h芯DSP 在高主頻工作時,每個周期都可以訪問內(nèi)存。并且由于DSP 無需將內(nèi)存奇偶分開,故將內(nèi)部嵌入式內(nèi)存進行了合DSP并,使得整個的靜態(tài)功耗得到了一定程度的下降(根據(jù)DSP 軟件估計約的得到了控10%Leakage Power Consumption制)。圖是漢芯內(nèi)存控制單元版圖。4DSP圖版圖(高亮部分為內(nèi)存控制單元)4 DSP在經(jīng)過以上一系列的改進后,漢芯的運

16、算能力得到DSP 了提高,見表。5表運算能力提升對照表5 DSP算術名稱原周期數(shù)現(xiàn)周期數(shù)提升FFT 9n 7n 22%FIR8n 7n 12.5%Matrix Multiply14n12n14%參考文獻計算機體系結構量化研究方法北1 Patterson D A , Hennessy J L. . 京機械工業(yè)出版社: , 20022 Rabaey J M. Digital Integrated Circuits. Prentice Hall, 19963 Ohkubo K. A4.4 ns CMOS 54X54-b Multiplier Using Precharged Pass Transis

17、tor Logic. In ISSCC Dig. Tech. Papers, 1996-02:364-3654 Synopsys. Guide to DesignWare IP Library Documentation. Version U - 2003.03,20035 Synopsys. PrimeTime User Guide. Version U-2003.03,2003(上接第頁)30房屋宗地房屋宗地主宗地if !(within(, TRUE AND (. .檢測到不一致性將房屋對象存儲在錯誤報告中。OID then , 對于系統(tǒng)中違反一致性要求的空間對象,系統(tǒng)要針對錯誤類型采取相

18、應的策略進行調(diào)整。一般情況下系統(tǒng)無法自動修復這些不一致的錯誤,因此這些錯誤需要人工的干預才能得到修正1,2,本文在此不再贅述。總結4 本文對空間數(shù)據(jù)的拓撲一致性問題進行了討論,分析了空間拓撲語義規(guī)則,提出了一種基于規(guī)則的拓撲一致性處理模型,該模型通過定義拓撲規(guī)則和約束表達式情況進行拓撲一致性維護;作為進一步研究,采用版本化技術將這種處理策略擴展到時空系統(tǒng)當中,以處理和維護時空系統(tǒng)中的時空拓撲一致性。這種拓撲關系處理方法在如下幾個方面具有明顯的優(yōu)勢:用戶可自行定義哪些對象將受拓撲關系規(guī)則的約束;拓撲規(guī)則可以隨時修改和擴充;所定義的拓撲關系及規(guī)則可以在工業(yè)標準的中進行管理。這種全新的基于規(guī)DBMS 則的拓撲關系管理機制,有利于用戶在局部檢查拓撲關系以提高查詢處理效率?;诒疚奶岢龅囊?guī)則模型,作者開發(fā)實現(xiàn)了一致性維護的原型系統(tǒng)并在武漢市消防地理信息系統(tǒng), 使用中取得較好的效果,限于篇幅,本文不作介紹。參考文獻1 Servigne S, Ubeda T, Puricelli A, et al. A Methodology for Spatial Consistency Improvement of Geographic Databases. GeoInformatica, 2000, 4(1: 7-342 Gadish D

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論