基于DSP 的VXI 總線動態(tài)存儲器設(shè)計_第1頁
基于DSP 的VXI 總線動態(tài)存儲器設(shè)計_第2頁
基于DSP 的VXI 總線動態(tài)存儲器設(shè)計_第3頁
基于DSP 的VXI 總線動態(tài)存儲器設(shè)計_第4頁
基于DSP 的VXI 總線動態(tài)存儲器設(shè)計_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于DSP的VXI總線動態(tài)存儲器設(shè)計張可立1 , 陳后金1, 馬恩云2(1. 北方交通大學 電信學院,北京 100044; 2.北京航天測控公司,北京 100830) 摘要:本文主要解決在VXI總線模塊上實現(xiàn)大容量動態(tài)存儲器的技術(shù)難題,介紹了利用可編程邏輯器件實現(xiàn)數(shù)字信號處理器(DSP)與同步動態(tài)存儲器(SDRAM)之間的數(shù)據(jù)讀取邏輯的設(shè)計、編程思想,以及必要的硬件連接,編程方法等。 關(guān)鍵詞:VIX總線;DSP;動態(tài)存儲器;接口 隨著測控技術(shù)的不斷發(fā)展,將先進的計算機技術(shù)、通信技術(shù)和電子儀器技術(shù)融為一體的VXI總線系統(tǒng),越來越被廣泛的應用于國防、電子、航空航天等各個領(lǐng)域,而為了準確、即時的處理

2、VXI系統(tǒng)采集的數(shù)據(jù),就需要在系統(tǒng)中設(shè)計大容量的存儲區(qū),而通常的靜態(tài)存儲器由于價格等方面的原因,很難被大規(guī)模的應用。動態(tài)存儲器SDRAM可以很好的解決這方面的矛盾,但是由于其自身的特點,對它的訪問需要有專門的控制邏輯來實現(xiàn)特殊的讀寫時序,并且由于SDRAM需要定時刷新,所以刷新電路的設(shè)計也是必須的。本文就此討論一下如何利用可編程器件設(shè)計DSP與SDRAM的接口問題。1 SDRAM的特點介紹1.1 概述SDRAM(SYNCHRONOUS DYNAMIC RANDOM ACCESS MEMONY),同步動態(tài)存儲器,它是一個具有高速同步接口的DRAM存儲器,因為其I/O口與輸入時鐘同步,對于設(shè)計者而

3、言,比較起DRAM,它可以建立起很高的傳輸帶寬和更加簡單的時序。其特點如下:l 同步控制:所有輸入、輸出都與輸入時鐘同步。l 分段輸入、輸出:只需給出一個地址就可以并行的(或連續(xù)的)讀出或?qū)懭氲刂房臻g。l 可編程的分段寬度:分段寬度的可編程能力允許設(shè)計者在不同的系統(tǒng)中使用同一塊SDRAM,其分段寬度可以允許在普通操作中被改變。l 雙簇(多簇)結(jié)構(gòu):SDRAM允許同時打開兩個(或多個)DRAM的行地址以對其進行操作,這樣一個無縫隙的100MHZ的數(shù)據(jù)傳輸速率可以讀寫整個的存儲器,具有雙簇結(jié)構(gòu)就可以實現(xiàn)對一個簇進行讀的同時對另外一個簇進行充電操作。l 自動刷新和自刷新:由于DRAM(SDRAM)是

4、利用電容來存貯數(shù)據(jù)的,每隔一端時間電容就會放電,其存儲的數(shù)據(jù)就會丟失。因此SDRAM就要定時的給電容充電,以保持其數(shù)據(jù)不被丟失,這個過程就叫刷新。刷新分為兩種,自動刷新和自刷新,自動刷新指CAS在RAS之前進行刷新。自刷新允許SDRAM自己產(chǎn)生刷新必須的控制信號來刷新。在設(shè)計中一般采用自動刷新的方式,設(shè)計一個定時器,每隔一定時間就對SDRAM發(fā)出一個刷新請求信號,當SDRAM處于空閑狀態(tài)時,就會自動進行存儲器的刷新操作。1.2 SDRAM的復合地址 為了減少引腳數(shù)目,通常SDRAM都采用復合地址的設(shè)計方法。SDRAM每一個存儲單元的地址由三個參數(shù)唯一確定:簇數(shù)(BANKn)行數(shù)(row),列數(shù)

5、(column),如要對一個地址單元進行操作,先選定所在的簇,在選定所在行和列,這樣一個存儲單元就被確定了。以下列出4M×64bit的SDRAM的地址線復用表。 表1 Sdram AddressRow AddressColumn AddressSD_A0A8A0SD_A1A9A1SD_A2A10A2SD_A3A11A3SD_A4A12A4SD_A5A13A5SD_A6A14A6SD_A7A15A7SD_A8A16×SD_A9A17×SD_A10A18×SD_A11A19×BANK0A20A20BANK1A21A21 如表1所示,BANK0,BA

6、NK1為SDRAM的簇選擇信號,共有4簇,ROW為行選擇,COLUMN為列選擇。當?shù)刂酚行r,SDRAM控制器先將A8-A19放到SD_A0到SD_A11上,并且BA0、BA1有效,SDRAM讀取的是行地址,經(jīng)過一定時間的延遲,控制器再將A0-A7放到SDRAM的地址線上,這時其讀取的是列地址,再加上BANK地址,這樣一個存儲單元的地址就確定了。SDRAM的地址復用和其他類型存儲器有很大分別,也是SDRAM控制設(shè)計的一個難點,必須有嚴格的時序要求,否則將會引起存儲的混亂。1.3 SDRAM的命令函數(shù)表2描述了SDRAM一些常用的命令,下面就其完成的功能結(jié)合設(shè)計做一簡單的介紹。表2Command

7、CSRASCASWEDQMADDA10/APBAMode Register Set0000×OP CODENo Operation1×××××0111Bank Active0011×RAVRead/Read withAutoprecharge0101×CA0/1VWrite/Writewith Autoprecharge0100×CA0/1VPrecharge All Bank0010××1×PrechargeSelected Bank0010××0VAu

8、to Refresh0001×××l Mode Register Set:模式寄存器設(shè)置,是指對SDRAM的工作方式做一定義,對寄存器的設(shè)置,可以在每次系統(tǒng)啟動時,也可以在每次存取之間進行,當SDRAM掉電時,系統(tǒng)重新啟動后必須重寫模式寄存器。其空間安排如下:表3寄存器空間Bit數(shù)功能描述M2-M03Burst LengthM31Burst TypeM6-M43CAS LatencyM7-M82Operation ModeM91Write Burst ModeM10,M112ReservedBurst Length 決定當接受到一個讀寫信號時可以讀取的最大的列數(shù)目

9、,對于連續(xù)讀取模式,其值可以為1,2,4,8或整頁(full page),當為隔行讀取模式是,其值為1,2,4,8。Burst Type 決定讀取模式為連續(xù)方式還是隔行方式。CAS Latency 決定當一個讀信號有效到第一個數(shù)值在數(shù)據(jù)線上有效時之間的間隔延遲時間,延遲時間可以設(shè)定為1,2或3個時鐘周期。例如:如果延遲時間為m,讀信號在n時刻有效,那么數(shù)據(jù)將在第m+n個時鐘信號有效,如果相應的讀取時間適合的話,而在m+n-1時刻數(shù)據(jù)線傳送數(shù)據(jù)。Write Burst Mode 當M9=0時,有M0-M2決定的Burst Length適合于讀和寫兩種操作。而當M9=1時,Write只能讀取單一的

10、單元,而不能支持塊操作。l Bank Active 選擇SDRAM某個塊中的某一行,讀寫命令只能在此命令之后對已經(jīng)選擇了的塊進行操作,由命令真值表可以知道,此命令將存儲單元的塊地址(BANK ADD)和行地址(ROW ADD)進行了設(shè)置。l Read and Read with Auto Precharge 此命令是在Band Active命令之后,開始進行數(shù)據(jù)的讀操作,從真值表中可以知道,在此命令中,設(shè)置了存儲單元的列地址(COLUMN ADD),這樣一個存儲單元的地址就由這兩個命令唯一的確定了下來,而SDRAM的地址線A10由來表明是READ還是READAP(Read with Autop

11、recharge)命令。l Write and Write with Auto Precharge 此命令同上一條命令相似,表明開始進行數(shù)據(jù)的寫操作,唯一不同是WE信號為低。2 SDRAM與DSP的接口設(shè)計一般SDRAM和DSP的接口采用FPGA或CPLD等可編程邏輯器件來完成其功能。接口器件主要的任務是: (1)接受DSP的命令信號和地址,因為DSP的數(shù)據(jù)地址為24位,包含了分行和列地址,SDRAM無法直接讀取其地址,所以接口邏輯必須將地址分為行地址和列地址分別送給SDRAM,以確定所要進行操作的具體地址。(2)傳送SDRAM的應答信號給DSP控制器,同時控制DSP與SDRAM之間的等待周期

12、。(3)負責產(chǎn)生刷新信號,當檢測到SDRAM處于空閑狀態(tài)時,刷新SDRAM。 A0-A23SDRAM控制器TMS320VC33 STRB R/W RDY CSSDRAMFIFO RAS C AS D0-D63 WE BA0/BA1DA0-DA11 圖1 Pre-chargeSet ModeRegisterAuto RefreshIdleBank ActiveWriteRead 圖1為DSP與SDRAM的接口邏輯框圖,F(xiàn)PGA負責DSP與SDRAM的接口邏輯,而DSP負責FIFO與SDRAM之間的數(shù)據(jù)傳送控制。實際上,控制器可以用一個狀態(tài)機來描述,當SDRAM上電以后,必須先對其進行初始化,即先

13、對每一個存儲單元進行充電,之后SD-RAM自動進入空閑狀態(tài)(IDLE),此后SDRAM可進入存取操作或進入自動刷新狀態(tài)。一旦刷新被執(zhí)行,控制程序?qū)懩J郊拇嫫?,將讀/寫模式參數(shù)寫入寄存器。而一旦進入讀寫操作,控制器發(fā)出ACTI-VEROW 命令,同時寫入行地址。當BANK有效后,通過執(zhí)行REA-D/WRITE 或者EADAP/ WRITEAP命令, 并根據(jù)模式寄存器中的參數(shù)進行存儲器的存取操作,當操作完成后,自動進入空閑狀態(tài)。圖2描述了SDRAM的狀態(tài)轉(zhuǎn)移情況。 由輸入命令驅(qū)動的循環(huán) 由SDRAM自動產(chǎn)生的循環(huán)3 接口電路的模塊設(shè)計 如圖3所示,接口模塊可細分為4個子模塊,每個子模塊完成其特定

14、的功能,其中U1為片選控制模塊,地址線的最高兩位A23,A22作為接口的片選信號,STRB為DSP的外部選通脈沖信號,當此三個信號同使接口芯片 圖2 開時有效時,U1產(chǎn)生MATCH信號,STRBMATCHA23-A22 FROM DSPRST CSCLK RASA21-A0 CSA WE BA0COMM2,0 BA1 DA0-DA11 U1 RST REFCLK RST COMM2,0CLKMATCH DQMREF WE RDY U4 U2 U3 圖3 始工作。U2為自動刷新計數(shù)器模塊,每隔一定時間產(chǎn)生一個刷新請求脈沖,注意SDRAM的刷新周期為64ms,但是計數(shù)脈沖不能每64ms才產(chǎn)生一次,

15、因為有可能其產(chǎn)生的刷新請求得不到響應,所以應該設(shè)計使計數(shù)周期短些,才可以保證SDRAM被刷新。U3為控制模塊主要功能是根據(jù)不同的輸入命令來產(chǎn)生對SDRAM的命令信號COMMAND2.0,如表4表4CommandNopMode Set AutoRefreshPrechargeBank ActiveWriteReadNum000001010011100101110 所示。同時對輸入命令的優(yōu)先級進行判斷,防止相互之間的沖突,例如,當正在讀寫時, 就不能同時產(chǎn)生刷新命令, 而當正在刷新時,讀寫命令就要加入幾個等待周期后在進行操作。U4為模塊與SDRAM的接口,主要任務是根據(jù)命令COMMAND2.0對SDRAM進行控制,同時在數(shù)據(jù)讀寫時,對地址線上來的DSP數(shù)據(jù)讀寫地址進行分解,分別讀出BANK0/1,ROW,COLUMN地址,并將其保存在片內(nèi)寄存器中,再根據(jù)命令分別送入SDRAM的地址線。4 結(jié)束語此接口控制器設(shè)計的難點在于對于命令和時序的控制,比如由于DSP與SDRAM的頻率不同,當DSP對SDRAM進行訪問時,必須加入等待周期,而如果SDRAM正在刷新時,則需要假如更多的等待周期,因此,要解決的最重要的問題就是把DSP總線的訪問時序和SDRAM的訪問時序正確的同

溫馨提示

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

評論

0/150

提交評論