DSP片外高速海量SDRAM存儲系統設計
發布時間:2007/9/11 0:00:00 訪問次數:2342
在數字圖像處理、航空航天等高速信號處理應用場合,需要有高速大容量存儲空間的強力支持,來滿足系統對海量數據吞吐的要求,通過使用大容量同步動態RAM(SDRAM)來擴展嵌入式DSP系統存儲空間的方法,選用ISSI公司的IS42S16400高速SDRAM芯片,詳細論述在基于TMS320C6201(簡稱C6201)的數字信號處理系統中此設計方法的具體實現。
1 IS42S16400芯片簡介
IS42S16400是ISSI公司推出的一種單片存儲容量高達64Mb(即8MB)的16位字寬高速SDRAM芯片。SDRAM 的主要特點是:①同步訪問,讀寫操作需要時鐘;②動態存儲,芯片需要定時刷新。IS42S16400采用CMOS工藝,它的同步接口和完全流水線的內部結構使其擁有極大的數據傳輸速率,可以工作在高達133MHz時鐘頻率下,刷新頻率每64ms為4096次。該SDRAM芯片內部有4個存儲體(bank),通過行、列地址分時復用系統地址總線,對不同存儲體內不同頁面的具體存儲單元進行讀寫訪問尋址。在進行讀操作之間,必須預先激活SDRAM內對應的存儲體,并選擇存儲器的某一行,然后送入列地址讀取需要的數據。從輸出列地址到SDRAM返回相應數據之間存在一個存取延遲。如果訪問新的頁面,則先需要關閉所有的存儲體,否則已打開的頁面將一直有效。在寫操作之前,由于已經預先激活了有關的行地址,因此可以在輸出列地址的同時輸出數據,沒有延遲。IS42S16400提供自刷新模式的設置,可以使芯片運行在低功耗的狀態下,從而大大減少嵌入式系統的功率消耗。
2 C6201與SDRAM的外部存儲器接口
DSP芯片訪問片外存儲器時必須通過外部存儲器接口EMIF(External Memory Interface)。C6000系列DSPs的EMIF具有很強的接口能力,不僅具有很高的數據吞吐率(最高達1200MB/s),而且可以與目前幾乎所有類型的存儲器直接接口。在C6201系統中,提供了4個彼此獨立的外存接口(CEx)。除CE1空間只支持異步接口外,所有的外部CEx空間都支持對SDRAM的直接接口。表1總結了C620X DSPs的EMIF所兼容的SDRAM配置。表2給出了C6000系列DSPs的EMIF所支持的SDRAM控制命令。
2.1 SDRAM的刷新
為了提高存儲容量,SDRAM采用硅片電容來存儲信息。隨著時間的推移,必須給電容重新充電才能保持電容里的數據信息,這就是所謂的“刷新”,它的存在也使得SDRAM的應用變的略顯復雜,帶來了一定的應用難度。
C6000系列DSPs有專門的SDRAM控制寄存器(SDTCL)和SDRAM時序控制寄存器(SDTIM),用來進行SDRAM的各種時序控制,大大減輕了設計人員的開發難度,SDCTL寄存器中的RFEN位控制是否由EMIF完成對SDRAM的刷新。如果RFEN=1,EMIF會控制向所有的SDRAM空間發出刷新命令(REFR);而SDTIM寄存器中的PERIOD位段則控制具體的刷新周期。
在REFR命令之前,會自動插入一個DCAB命令,以保證刷新過程中所有的SDRAM都處于未激活狀態。DCAB命令之后,EMIF開始按照SDTIM寄存器中PERD字段設置的值進行定時刷新。刷新前后,頁面信息會變為無效。
對于C620X,EMIF SDRAM控制模塊內部有一個2位的計數器,用來監測提交的刷新申請的次數。每提交一個申請,計數器加1;每次刷新周期之后,計數器減1。復位時,計數器自動置為11b,以保證在存取訪問之前先進行若干次刷新。計數器自動置為11b,代表緊急刷新狀態,此時頁面信息寄存器變無效,迫使控制器關閉當前的SDRAM頁面。然后,EMIF SDRAM控制器在DCAB命令后執行3次REFR命令,使計數器的值減為0,再繼續完成余下的存取操作。
2.2 SDRAM的初始化
當某個CE空間配置為SDRAM空間后,必須首先進行初始化。用戶不需要控制初始化的每一個步驟,只需要向EMIF SDCTL寄存器的INIT位寫1,申請對SDRAM作初始化。然后,EMIF就會自動完成所需要的各步操作。初始化操作不能在進行SDRAM存取過程中進行。整個初始化過程包括下面幾個步驟:
①對所有的SDRAM空間發出DCAB命令;
②執行3個REFR命令;
③對所有的SDRAM空間發出MRS命令。
2.3 頁面邊界控制
SDRAM屬于分頁存儲器,EMIF的SDRAM控制器會監測訪問SDRAM時行地址的情況,避免訪問時發生行越界。為了完成這一任務,EMIF在內部有四個頁面寄存器,自動保存當前打開的行地址,然后與后續存取訪問的地址進行比較。需要說明的是,當前存取操作結束并不會引起SDRAM中已經激活的行被立即關閉,EMIF的控制原則是維持當前的打開狀態,除非必須關閉。這樣做的好處是可以減少關閉/重新打開之間的命令切換時間,使接口在存儲器訪問的控制過程中充分利用地址信息。
對于C620X,每個CE空間包含1個頁面寄存器(只對配置為SDRAM空間有效),因此C620X每個CE空間1次只能激活1頁。進行比較的地址位數取決于SDCTL寄存器中SDWID位的值。如果SDWID=0,該CE空間構成頁面的大小為512,比較的邏輯地址是位23~1
在數字圖像處理、航空航天等高速信號處理應用場合,需要有高速大容量存儲空間的強力支持,來滿足系統對海量數據吞吐的要求,通過使用大容量同步動態RAM(SDRAM)來擴展嵌入式DSP系統存儲空間的方法,選用ISSI公司的IS42S16400高速SDRAM芯片,詳細論述在基于TMS320C6201(簡稱C6201)的數字信號處理系統中此設計方法的具體實現。
1 IS42S16400芯片簡介
IS42S16400是ISSI公司推出的一種單片存儲容量高達64Mb(即8MB)的16位字寬高速SDRAM芯片。SDRAM 的主要特點是:①同步訪問,讀寫操作需要時鐘;②動態存儲,芯片需要定時刷新。IS42S16400采用CMOS工藝,它的同步接口和完全流水線的內部結構使其擁有極大的數據傳輸速率,可以工作在高達133MHz時鐘頻率下,刷新頻率每64ms為4096次。該SDRAM芯片內部有4個存儲體(bank),通過行、列地址分時復用系統地址總線,對不同存儲體內不同頁面的具體存儲單元進行讀寫訪問尋址。在進行讀操作之間,必須預先激活SDRAM內對應的存儲體,并選擇存儲器的某一行,然后送入列地址讀取需要的數據。從輸出列地址到SDRAM返回相應數據之間存在一個存取延遲。如果訪問新的頁面,則先需要關閉所有的存儲體,否則已打開的頁面將一直有效。在寫操作之前,由于已經預先激活了有關的行地址,因此可以在輸出列地址的同時輸出數據,沒有延遲。IS42S16400提供自刷新模式的設置,可以使芯片運行在低功耗的狀態下,從而大大減少嵌入式系統的功率消耗。
2 C6201與SDRAM的外部存儲器接口
DSP芯片訪問片外存儲器時必須通過外部存儲器接口EMIF(External Memory Interface)。C6000系列DSPs的EMIF具有很強的接口能力,不僅具有很高的數據吞吐率(最高達1200MB/s),而且可以與目前幾乎所有類型的存儲器直接接口。在C6201系統中,提供了4個彼此獨立的外存接口(CEx)。除CE1空間只支持異步接口外,所有的外部CEx空間都支持對SDRAM的直接接口。表1總結了C620X DSPs的EMIF所兼容的SDRAM配置。表2給出了C6000系列DSPs的EMIF所支持的SDRAM控制命令。
2.1 SDRAM的刷新
為了提高存儲容量,SDRAM采用硅片電容來存儲信息。隨著時間的推移,必須給電容重新充電才能保持電容里的數據信息,這就是所謂的“刷新”,它的存在也使得SDRAM的應用變的略顯復雜,帶來了一定的應用難度。
C6000系列DSPs有專門的SDRAM控制寄存器(SDTCL)和SDRAM時序控制寄存器(SDTIM),用來進行SDRAM的各種時序控制,大大減輕了設計人員的開發難度,SDCTL寄存器中的RFEN位控制是否由EMIF完成對SDRAM的刷新。如果RFEN=1,EMIF會控制向所有的SDRAM空間發出刷新命令(REFR);而SDTIM寄存器中的PERIOD位段則控制具體的刷新周期。
在REFR命令之前,會自動插入一個DCAB命令,以保證刷新過程中所有的SDRAM都處于未激活狀態。DCAB命令之后,EMIF開始按照SDTIM寄存器中PERD字段設置的值進行定時刷新。刷新前后,頁面信息會變為無效。
對于C620X,EMIF SDRAM控制模塊內部有一個2位的計數器,用來監測提交的刷新申請的次數。每提交一個申請,計數器加1;每次刷新周期之后,計數器減1。復位時,計數器自動置為11b,以保證在存取訪問之前先進行若干次刷新。計數器自動置為11b,代表緊急刷新狀態,此時頁面信息寄存器變無效,迫使控制器關閉當前的SDRAM頁面。然后,EMIF SDRAM控制器在DCAB命令后執行3次REFR命令,使計數器的值減為0,再繼續完成余下的存取操作。
2.2 SDRAM的初始化
當某個CE空間配置為SDRAM空間后,必須首先進行初始化。用戶不需要控制初始化的每一個步驟,只需要向EMIF SDCTL寄存器的INIT位寫1,申請對SDRAM作初始化。然后,EMIF就會自動完成所需要的各步操作。初始化操作不能在進行SDRAM存取過程中進行。整個初始化過程包括下面幾個步驟:
①對所有的SDRAM空間發出DCAB命令;
②執行3個REFR命令;
③對所有的SDRAM空間發出MRS命令。
2.3 頁面邊界控制
SDRAM屬于分頁存儲器,EMIF的SDRAM控制器會監測訪問SDRAM時行地址的情況,避免訪問時發生行越界。為了完成這一任務,EMIF在內部有四個頁面寄存器,自動保存當前打開的行地址,然后與后續存取訪問的地址進行比較。需要說明的是,當前存取操作結束并不會引起SDRAM中已經激活的行被立即關閉,EMIF的控制原則是維持當前的打開狀態,除非必須關閉。這樣做的好處是可以減少關閉/重新打開之間的命令切換時間,使接口在存儲器訪問的控制過程中充分利用地址信息。
對于C620X,每個CE空間包含1個頁面寄存器(只對配置為SDRAM空間有效),因此C620X每個CE空間1次只能激活1頁。進行比較的地址位數取決于SDCTL寄存器中SDWID位的值。如果SDWID=0,該CE空間構成頁面的大小為512,比較的邏輯地址是位23~1
熱門點擊
- 延長EEPROM使用壽命的方法
- 智能測量系統中的海量數據存儲技術
- 存儲器類型綜述及DDR接口設計的實現
- DSP處理器與FLASH存儲器的接口設計
- TrueFFS原理及其在CF卡上的實現
- 基于FM18L08的高速數據存儲系統
- DSP片外高速海量SDRAM存儲系統設計
- 大容量NANDFlashTC58DVG02A
推薦技術資料
- 循線機器人是機器人入門和
- 循線機器人是機器人入門和比賽最常用的控制方式,E48S... [詳細]