多路讀寫接口設計分析論文

時間:2022-06-26 03:58:00

導語:多路讀寫接口設計分析論文一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

多路讀寫接口設計分析論文

摘要:介紹SDRAM的主要控制信號和基本命令時序,提出一種應用于解復用的支持多路讀寫的SDRAM接口設計,為需要大容量存儲器的電路設計提供了新思路。

關鍵詞:SDRAM解復用接口

存儲器是容量數據處理電路的重要組成部分。隨著數據處理技術的進一步發展,對于存儲器的容量和性能提出了越來越高的要求。同步動態隨機存儲器SDRAM(SynchronousDynamicRandomAccessMemory)因其容量大、讀寫速度快、支持突發式讀寫及相對低廉的價格而得到了廣泛的應用。SDRAM的控制比較復雜,其接口電路設計是關鍵。

本文首先介紹SDRAM的主要控制信號和基本命令;然后介紹接口電路對SDRAM的主要操作路徑及操作過程,應用于解復用的SDRAM接口電路的設計方法;最后給出了實現結果。

1SDRAM的主要控制信號和基本命令

SDRAM的主要控制信號為:

·CS:片選使能信號,低電平有效;

·RAS:行地址選通信號,低電平有效;

·CAS:列地址選通信號,低電平有效;

·WE:寫使能信號,低電平有效。

SDRAM的基本命令及主要控制信號見表1。

表1SDRAM基本操作及控制信號

命令名稱CSRASCASWE

命令禁止(NOP:Commandinhibit)HXXX

空操作(NOP:Nooperation)LHHH

激活操作(ACT:Selectbankandactiverow)LLHH

讀操作(READ:Selectbankandcolumn,andstartREADburst)LHLH

寫操作(WRITE:Selectbankandcolumn,andstartWRITEburst)LHLL

突發操作停止(BTR:Burstterminate)LHHL

預充電(PRE:Deactiverowinbankorbanks)LLHL

自動刷新或自我刷新(REF:Autorefreshorselfrefresh)LLLH

配置模式寄存器(LMR:Loadmoderegister)LLLL

所有的操作控制信號、輸入輸出數據都與外部時鐘同步。

2接口電路對SDRAM的主要操作路徑及操作過程

一個完備的SDRAM接口很復雜。由于本文的SDRAM接口應用于解復用,處理的事件相對來說比較簡單,因而可以簡化設計而不影響性能。接口電路SDRAM的主要操作可以分為:初始化操作、讀操作、寫操作、自動刷新操作。

(1)初始化操作

SDRAM上電一段時間后,經過初始化操作才可以進入正常工作過程。初始化主要完成預充電、自動刷新模式寄存器的配置。操作過程如圖1所示。

(2)讀寫操作

讀寫操作主要完成與SDRAM的數據交換。讀操作過程如圖2所示,寫操作過程如圖3所示。

(3)刷新操作

動態存儲器(DynamicRAM)都存在刷新問題。這里主要采用自動刷新方式,每隔一段時間向SDRAM發一條刷新命令。刷新過程如圖4所示。

3接口電路的設計

(1)解復用電路

本解復用電路主要完成將1路高速數據流解復用為4路數據流,其結構框圖如圖5所示。1路數據流進入解復用器后,經過SDRAM緩沖,解復用為4路數據流。

由于要解復用為4路數據流,為了充分利用時隙,滿足高速的要求,采用4個bank的SDRAM,各路數據緩沖對應不同的bank。為簡化設計,數據流1的緩沖區定為bank0,數據流2的緩沖區定為bank1,數據流3的緩沖區定為bank2數據流4的緩沖區定為bank3。對于每路數據實際上是以高速率集中寫入,然后以低速率均勻讀出。

由于進行的是解復用,因此寫入的數據只有1路,但是有可能4路數據同時都要讀出。所以對于4路數據流,其讀寫地址和讀寫使能信號是分開的。

(2)SDRAM接口電路的時序控制

高速數據流的速率為3M字節/秒,采用的系統時鐘為20倍的字節時鐘。送入SDRAM的時鐘為60MHz系統時鐘。在一個字節時鐘內對SDRAM的操作最多有5次(1次讀,4次寫),而且為了滿足刷新的要求,每個字節時鐘進行一次刷新操作。根據SDRAM的時序要求,這樣的操作是難以實現的。因而要通過多bank操作,盡量做到時分復用來實現。圖6給出了在一個字節時鐘周期的內數據流1進行讀寫操作,其它3路數據進行讀操作的命令排序時序圖??梢钥闯鐾ㄟ^多bank操作,時分復用,在20個系統時鐘節拍內所需的讀寫操作命令剛好很緊湊地排開。

一個字節時鐘內對SDRAM讀寫操作是隨機的,這與數據流的復用比例有在。為了滿足時序,根據上面的說明,需要把一個字節時鐘周期內對SDRAM的命令合理排序,然后按照排好的順序執行命令。這樣就需要把一個字節時鐘周期內對SDRAM的操作進行緩存,然后在下一個字節時鐘周期內進行排序、與SDRAM命令相對應、將命令譯碼產生相應的控制信號線,完成操作。緩存排序過程如圖7所示。

(3)SDRAM接口電路

SDRAM接口電路中需要專門操作緩沖區存儲一個字節時鐘周期內的操作,以備下一字節時鐘的排序。為了方便處理,對每路數據的緩沖操作內容(或讀或寫)放在一個緩沖區。由于數據流的連續性,排序的同時仍然會有操作要求,因此每路的操作內容緩沖區分為兩塊。對一塊緩沖區寫入時,讀出另一塊緩沖區中的操作內容,進行排序、譯碼、執行。根據字節時鐘切換對緩沖區的讀寫,從而避免沖突。對于從SDRAM讀出的數據,每路數據寫入相應的讀出數據緩沖區。同樣每路的讀出數據緩沖區也分為兩塊,根據字節時鐘切換讀寫。

由于一個字節時鐘周期內,每路所需的操作最多有2次,每路的操作內容緩沖區只需兩個單元(每個單元存儲了此次的讀寫使能信號、寫入數據、地址)即可。對于讀出數據緩沖區,由于一個字節時鐘每路數據最多執行一次讀操作,所以讀出數據緩沖區只需要一個字節。這兩類緩沖區容量都小,因此人部用寄存器來實現,控制簡單。

整個接口電路的結構框圖如圖8所示。

4SDRAM接口的實現結果

針對MT48LC8M8A2的SDRAM,采用同步設計方法,用VerilogHDL硬件描述語言建立模型,接口電路已經調試通過,規模為2100門(NAND)。整個解復用電路也已經調試通過。