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

下載本文檔

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

文檔簡介

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 Blac

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

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

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

5、來了訪問內存時出現(xiàn)等待周期的問 題。文章提出了讀寫分層及硬件寫回緩沖的設計,消除了訪存單元等待周期,使訪 存單元獲得的工作效率。 100%關鍵詞:數(shù)字信號處理器;內存控制單元;寫回緩 沖;讀寫操作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 th

6、e main frequency of digital signal processor, the 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 th

7、e memory access wait cycle, and then the memory 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

8、2005可取得運算結果。以下程序是一段典型的數(shù)據(jù)依賴程序。1mac r2,r1,r6u:(ar6+n6,r0v:(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ù)寫入內存, DSP 3r6但是恰好是上一條乘加 指令的運算結果,所以此時訪存單 r6 元無法取得正確的運算結果,只能在流水線 上等

9、待到指令 2 完全流出流水線。同樣,指令與指令之間,指令與指令 3456 之間 都存在數(shù)據(jù)依賴關系,如果以平均一個等待周期進行計算,以上這段條指令構成的 程序運行周期數(shù)為:6(指令周期)(等待周期)個周期6+3=9 整個流水線性能將下降,如果整塊工作在 33%DSP 的主頻下,其實質上 僅相當于一塊不產(chǎn)生等待的 300MHz 以主頻進行工作。DSP 200MHz 從上述分析中可以得出,如果不解決訪存等待問題,高主頻的性 能將完全無法發(fā)揮。以下將討論采用讀寫操作 DSP 流水層分隔及寫回緩沖的方法 解決訪存等待的問題。訪存等待的解決3 讀寫操作流水層分隔3.1 從流水線等待的分析中可以發(fā)現(xiàn),產(chǎn)生

10、流水線等待的原因是由于運算單元 要求的運算源操作數(shù)的時間早于運算單元給出運算結果到個周期。正是由于這到個 周期的間 1212 隙,使得后序指令必須在流水線上等待。針對這一情況,設計時將 訪存單元的讀寫操作流水層分開,將讀取操作的流水層提前于寫存流水層一個周 期。圖是漢芯訪存單元的 2DSP 流水線示意圖。P7P9P11P5圖漢芯訪存單元流水線結構2 DSP 表流水線訪存工作情況2 P13I1I2I3從圖可看出,內存讀寫操作的流水層已經(jīng)被拆開,由 2 于為時鐘同步觸發(fā)單元 結構,因此在層發(fā)出相應尋 SRAM P7址地址,在層即可得到所需要的數(shù)據(jù),而寫 存層次為了 P9 保持和運算單元的同步也相應

11、移動到了層,這樣就解決 P11了第節(jié) 程序中所產(chǎn)生的訪存等待問題。表為經(jīng)過分層調整22后,流水線在實際工作時的運行情況。當引入讀寫分層的方法后,會產(chǎn)生新的寫后讀數(shù)據(jù)相關問題,以下將采用寫回 緩沖的方法加以進一步解決。寫后讀沖突與寫回緩沖3.2 當采用讀寫操作流水線層次分開后,運算源數(shù)據(jù)和運算結果的寫回等待問 題得到了很好的解決,但是也產(chǎn)生了總線爭搶,如下列程序所示。I1MOVE R3,U :(AR6)I2MOVE U :( AR7), R4從表可以看出,由于流水線的分層,當運行到時間 3C3 片時,的寫操作在流 水線層,的讀操作在層。對 I1P11I2P9 于而言,一個工作周期只能進行一次操作

12、, 兩者不可 SRAM 同時進行,所以如果不加以控制,整個流水線在此處將再產(chǎn)生等 待等待前序指令寫操作運行完成。結合第節(jié)的程序 ( 2 分析,指令與指令之間、指 令與指令之間都存在相應的 2361 問題。表訪存寫后讀總沖突流水線工作情況3 P7I1I2P9I1I2STALL I2P11I1P13I1從數(shù)據(jù)等待的原因分析,流水線發(fā)生等待的原因主要是由于讀操作是在寫操作 完成之后再進行操作,這樣后序指令必須在流水線上多停留一個周期。但是從數(shù)據(jù) 流的使用上來看,寫操作相對于讀操作而言并不需要 “即刻 ”操作,所謂 “即刻操作 指的是某條指令如果不在第一時間執(zhí)行,則后序的指令將無法運行,這一點相對于

13、讀操作是成立的,原因是后序指令的源操作都是來自讀操作的運行結果,而寫操作 完全可以在訪存空閑時操作。根據(jù)這一原則,在漢芯 DSP 訪存單元的設計中,引 入“寫回緩沖 ”這一硬件結構。DSP “寫回緩沖 ”指的是當寫后讀沖突時,寫操作的優(yōu)先級將自動低于讀操作, 讀操作將先擁有總線的控制權,而將寫操作的內容先臨時存入一段特別設置的緩沖 中,當內存總線空閑時,再將寫操作送入內存總線。圖是寫回緩沖的結構3和工作方式示意圖。圖寫回緩沖工作示意圖3 結合訪存寫后讀沖突程序段分析可知,當指令運行在 I1 流水層上,發(fā)現(xiàn)層 有讀操作時,自動進入寫回緩沖, P11P9此時層讀操作將不受任何干擾。當下一周 期層為

14、空, P9P9寫回緩沖自動執(zhí)行寫操作。表是實現(xiàn)寫回緩沖后的流水線439工作情況。表訪存寫后讀沖突流水線工作情況4 C1C2C3C4P7I1I2P9I1I2(讀)P11I1(寫,進入寫回緩沖)I2(I1 寫內存P13可見當讀寫操作流水線層分開與寫回緩沖同時實現(xiàn)后,訪存單元可達到工作效 率,所有的訪存等待都在硬件 100%層面上得到解決,從軟件的角度上看,訪存單 元將不產(chǎn)生任何等待。最后討論一下寫回緩沖的深度??梢园l(fā)現(xiàn)寫回緩沖僅在寫后讀這一情況下出 現(xiàn),當出現(xiàn)寫后讀操作時,寫回緩沖內容深度為,一旦只要有一條寫指令出現(xiàn)在后 序指令流中并 1 運行到層時,內存總線將產(chǎn)生一個空隙,寫回緩沖可以 P9使用

15、這 個空隙完成寫操作,所以整個寫回緩沖的長深度不會大于,完全可以用同步寄存器 來模擬實現(xiàn),而不會引入新 1 的內存模塊而帶來后端實現(xiàn)困難。至此,整體設計問 題都得到了很好的解決。結論4 綜合以上討論可以發(fā)現(xiàn),如果將訪存單元在設計時配合運算單元流水線進行 調整,將讀寫操作層次分開,并且在分層后引入寫回緩沖后,訪存單元可以為整個 提供 DSP 100%效率的訪存控制能力,不會因為訪存單元而產(chǎn)生任何的 DSP 等 待,從整體上而言既可以達到高主頻,也可以實現(xiàn)高 DSP 效能。在設計漢芯時,成功地采用了以上設計,使?jié)h芯 DSP 在高主頻工作時,每個 周期都可以訪問內存。并且由于 DSP 無需將內存奇偶

16、分開,故將內部嵌入式內存 進行了合 DSP并,使得整個的靜態(tài)功耗得到了一定程度的下降(根據(jù) DSP 軟件估計約的得 到了控 10%Leakage Power Consumption制)。圖是漢芯內存控制單元版圖。4DSP圖版圖(高亮部分為內存控制單元)4 DSP在經(jīng)過以上一系列的改進后,漢芯的運算能力得到 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. .

17、京 機械工業(yè)出 版社: , 20022 Rabaey J M. Digital Integrated Circuits. Prentice Hall, 19963 Ohkubo K. A4.4 ns CMOS 54X54-b Multiplier Using Precharged Pass Transistor Logic. In ISSCC Dig. Tech. Papers, 1996-02:364-3654 Synopsys. Guide to DesignWare IP Library Documentation. Version U - 2003.03,20035 Synopsys.

18、 PrimeTime User Guide. Version U-2003.03,2003(上接第頁)30房屋宗地房屋宗地主宗地 if !(within(, TRUE AND (. .檢測到不一致性將房屋對象存儲在錯誤報告中。OID then , 對于系統(tǒng)中違反一致性要求的空間對象,系統(tǒng)要針對錯誤類型采取 相應的策略進行調整。一般情況下系統(tǒng)無法自動修復這些不一致的錯誤,因此這些 錯誤需要人工的干預才能得到修正 1,2,本文在此不再贅述??偨Y4 本文對空間數(shù)據(jù)的拓撲一致性問題進行了討論,分析了空間拓撲語義規(guī)則,提出了一種基于規(guī)則的拓撲一致性處理模型,該模型通過 定義拓撲規(guī)則和約束表達式情況進行拓

19、撲一致性維護;作為進一步研究,采用版本 化技術將這種處理策略擴展到時空系統(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 Ga

溫馨提示

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

最新文檔

評論

0/150

提交評論