SDRAM是一種同步動態隨機訪問內存,它具有內置控制器,通過與CPU時鐘同步來工作,使得數據傳輸更為高效。SDRAM在內存顆粒市場中占據主導地位,廣泛應用于各種計算機系統和服務器中,為數據處理和存儲提供了快速且可靠的支持。 SDRAM具有高速度、高密度、低功耗等優點。其內部結構采用Bank架構,允許同時進行多個讀寫操作,從而提高了整體性能。此外,SDRAM還具有自動刷新功能,能夠確保數據在長時間內保持正確性。 華芯微特已經將SDRAM合封入芯片,合封的SDRAM大小根據芯片型號不同,具體見選型手冊。
SDRAM 結構框圖
SDRAM的內部是一個存儲陣列,將數據“填”進去,你可以它想象成一張表格。和表格的檢索原理一樣,先指定一個行(Row),再指定一個列(Column),我們就可以準確地找到所需要的單元格,這就是內存芯片尋址的基本原理。 為了詳細地介紹SDRAM以及它的使用,以某一款SDRAM數據手冊結構框圖來分析, 內部主要構成部分如下圖所示:
01 SDRAM 信號線
CLK:同步時鐘信號,提供SDRAM工作時鐘,所有輸入信號在CLK為上升沿時被采樣。 CKE:時鐘使能信號。時鐘使能進入正常工作模式,時鐘失能進入休眠模式或者自刷新模式。 CS :片選信號,低電平有效。 CAS:列地址選通,當為低電平時地址線表示為列地址。 RAS:行地址選通,當為低電平時地址線表示為行地址。 WE:讀寫指令切換信號。低電平:寫使能;高電平:讀使能。 DQM[1:0]:輸入/輸出掩碼信號,表示DQ數據的有效部分。當DQM在讀取周期中被采樣為高時,輸出緩沖器被置于Hi-Z(具有2的延遲)。在寫入周期中,采樣DQM高電平將以零延遲阻止寫入操作。 BS:BANK地址輸入,選擇要控制的BNAK。 A[12:0]:地址信號線,地址線A10控制著是否進行在讀或寫操作之后當前L-Bank自動進行預充電。 DQ[15:0] :數據輸入輸出信號線。
對于DQM(Data I/O Mask)信號,每個DQM控制屏蔽8bit數據,對于這款SDRAM,它是16bit的,UDQM可屏蔽高8位,LDQM可屏蔽低8位。對于16bit的數0xDDFF,我們如果只需高8位寫入,低8位不寫入,在寫入時可以將UDQM置低,LDQM置高。
02 SDRAM 操作命令
NO-Operation:空操作命令,用于選中SDRAM,防止SDRAM接受錯誤的命令,為接下來的命令發送做準備。
Active (用于存儲單位尋址):激活命令,該命令必須在讀寫操作之前被發送,用于設置所需要的BANK和行地址 (同時設置) ,BANK地址由BS0(BA0),BS1(BA1)決定,行地址由A0~12決定。
Read / Write:讀/寫命令,在發送完激活命令后,并進行讀寫再發送列地址就可以完成對SDRAM的尋址,并進行讀寫操作。
Precharge:預充電指令,用于關閉BANK中所打開的行地址,準備打開新行。進行完讀寫操作后,要對同一BANK的另一行進行尋址,就要將原來有效(打開)的行關閉,重新發送行/列地址。
Refresh:SDRAM存儲的數據需要不斷進行刷新操作才能保存,用于刷新一行數據,可以依次對所有的行進行刷新操作。CKE引腳高電平為自動刷新(Auto Refresh),CKE為低電平是自我刷新(Self Refresh)。
自動刷新:依靠刷新計數器(行地址生成器)自動依次生成要刷新的行地址刷新周期 (完成一次所有行的刷新所需要的時間) :64ms。自我刷新:用于休眠低功耗狀態下的數據保存。
Mode Register Set:設置模式寄存器。SDRAM芯片內部有一個邏輯控制單元,控制單元的相關參數由模式寄存器提供。該命令在每次對SDRAM進行初始化時都需要用到。
具體模式設置,如下圖:
A0~A2:用來指定突發的長度,1,2,4,8或者全頁突發。所謂的“突發”是指當我們對一個地址進行尋址并操作完成后,不必再重新對下一個地址進行尋址,而是直接進行操作。
A3:設置突發的類型,連續型和非連續型。
A4~A6:指定潛伏期的長度,可以選擇延時2,3兩個周期。
A9:用來指定操作模式。
03 SDRAM容量計算
SDRAM總存儲容量 =行數×列數×L-Bank的數量×存儲單元的容量
Row Address : A0~A11
Column Address : A0-A8
Bank = 4
Data Width=16bit
Capacity=212x 29x 4bank x 16bit=128Mbit
04 SDRAM上電初始化過程
1、VDD (供輸入buffer和邏輯電路)和VDDQ(供輸出buffer)上電,此期間CKE保持低電平。2、開始時鐘并使CKE置高。
3、電源、時鐘都穩定后,再等待200uS。
4、發出預充電命令。
5、發出多個 (8個以上) 刷新命令 (REF)。
6、發出模式寄存器設置命令 (MRS),初始化模式寄存器 (DDR2 中還有EMRS,進行ODT.OCD等功能的設置和調整)。
05 SDRAM 讀寫時序
這里從SDRAM手冊截取讀時序進行分析,這里需要參考下圖的操作命令具體值與時序圖一起分析。
1.讀時序(Burst Length = 4, CAS Latency = 3, Auto-Precharge))
讀取數據過程:
1)發送激活命令,設置行地址和Bank地址。
2)設置列地址,發送讀命令。
3)將A10地址線拉高,自動預充電使能。
4)開始執行預充電。
5) 完成數據讀取。
2.寫時序(Auto-Precharge Write,Burst Length = 4)
寫過程跟讀取類似:
1)發送激活命令,設置行地址和Bank地址。
2)設置列地址,發送寫命令。
3)將A10地址線拉高,自動預充電使能
4)開始執行預充電。
5) 完成數據寫入。
-
芯片
+關注
關注
456文章
51178瀏覽量
427265 -
SDRAM
+關注
關注
7文章
430瀏覽量
55368 -
寄存器
+關注
關注
31文章
5363瀏覽量
121165
原文標題:芯課堂|SDRAM工作原理及時序分析
文章出處:【微信號:gh_ed4f95bde4df,微信公眾號:華芯微特32位MCU】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論