1 / 47

記憶體控制器

記憶體控制器. 大綱. 記憶體分類 概論 功能描述 記憶體系統範例 記憶體存取 記憶體組態暫存器. 記憶體分類. 隨機存取記憶體 靜態隨機存取記憶體 動態隨機存取記憶體 同步動態隨機存取記憶體 雙速率隨機存取記憶體 唯讀記憶體 可抹除可程式唯讀記憶體 電子式可抹除可程式唯讀記憶體 快閃記憶體. 隨機存取記憶體. 簡稱為記憶體 系統在運算過程中暫時儲存資料的空間 系統有電源時,資料存在於系統中,系統關機時記憶體中的資料則全部消失 要保留記憶體的內容,在關機前將資料儲存到永久性儲存媒體中 可分成兩大類: 靜態隨機存取記憶體

matty
Download Presentation

記憶體控制器

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 記憶體控制器 6-1

  2. 大綱 • 記憶體分類 • 概論 • 功能描述 • 記憶體系統範例 • 記憶體存取 • 記憶體組態暫存器 6-2

  3. 記憶體分類 • 隨機存取記憶體 • 靜態隨機存取記憶體 • 動態隨機存取記憶體 • 同步動態隨機存取記憶體 • 雙速率隨機存取記憶體 • 唯讀記憶體 • 可抹除可程式唯讀記憶體 • 電子式可抹除可程式唯讀記憶體 • 快閃記憶體 6-3

  4. 隨機存取記憶體 • 簡稱為記憶體 • 系統在運算過程中暫時儲存資料的空間 • 系統有電源時,資料存在於系統中,系統關機時記憶體中的資料則全部消失 • 要保留記憶體的內容,在關機前將資料儲存到永久性儲存媒體中 • 可分成兩大類: • 靜態隨機存取記憶體 • 動態隨機存取記憶體 6-4

  5. 靜態隨機存取記憶體 • 每個位元使用四到六個電晶體所組成,沒有需要充電的元件 • 沒有電容器放電的問題,不需要不斷地充電 • 存取時間較短,製造成本較高,而且容量也比動態隨機存取記憶體還小 • 主要用作快取記憶體 • 未來的發展以通訊市場為重點,主要是在手機市場 6-5

  6. 動態隨機存取記憶體 • 由電容組成的陣列且以電荷方式來儲存資料 • 必須適時的充電以免電荷消失而導致資料遺失 • 需要有外部電路的支援,使得CPU對記憶體存取的延遲 • 價格便宜容量大,普遍用於多數的電腦系統中 • 發展出好幾種不同類型的動態隨機存取記憶 6-6

  7. 同步動態隨機存取記憶體 • 時脈速度上比動態隨機存取記憶體還要快上許多倍 • 利用同步計時器對記憶體的輸出輸入做控制,使得CPU能與記憶體有相同的時脈 • 同時開啟兩個記憶體的分頁 • 採用3.3V電壓,168個接腳,可以搭配CPU的各種不同類型的外頻規格 6-7

  8. 雙速率隨機存取記憶體 • 加強的同步動態隨機存取記憶體 • 在一個時脈週期的波峰與波底都能夠傳輸資料 • 傳輸率至少是同步動態隨機存取記憶體的兩倍 • 規格不同於同步動態隨機存取記憶體 • 採用2.5 V電壓,184個接腳,外頻為133MHz 6-8

  9. 唯讀記憶體 • 非揮發記憶體 • 不需電力的供給,記憶體內的資料會長時間的被儲存起來 • 由大型二極體所組成的陣列構成 • 主要是存放開機時所需的軟體 • 可分為 : • 可抹除可程式唯讀記憶體 • 電子式可抹除可程式唯讀記憶體 • 快閃記憶體 6-9

  10. 可抹除可程式唯讀記憶體 • 利用紫外線的照射晶片頂端的一個小窗口,將記憶體內部的資料清除掉 • 再透過燒錄器,把資料燒錄到記憶體中 • 大約能重複寫入100次左右 • 不用於經常性變動參數的電腦系統內 • 未來會朝往通訊用途發展,如用於手機 6-10

  11. 電子式可抹除可程式唯讀記憶體 • 可以在電路上做清除與寫入 • 不必額外提高電壓就能將資料寫入到記憶體內,只需寫入某些控制碼 • 大約可重複寫入高達10000次左右 • 不適合用來存放韌體 • 儲存介面介面卡的設定資料 • 未來會朝往也通訊用途發展,如用於手機 6-11

  12. 快閃記憶體 • 最新技術的唯讀記憶體 • 有電子式可抹除可程式唯讀記憶體可重複寫入的功能,同時也具備一般唯讀記憶體的大容量 • 重複寫入次數可達1000000次之多 • 資料更新是以每個區塊為單位加以覆寫 • 價格較便宜且容量大,逐漸成為主流 6-12

  13. 概論 • PXA250與PXA210應用處理器外部記憶體匯流排支援 • 同步動態隨機存取記憶體(SDRAM) • 同步與非同步突發傳輸(burst)模式 • 分頁模式(Page-mode)快閃記憶體 • 同步遮罩唯讀記憶體(SMROM) • 分頁模式唯讀記憶體 • 靜態隨機存取記憶體(SRAM) • 類似SRAM可變延遲I/O(VLIO) • 16位元PC卡擴充記憶體 • 快閃記憶體 • 記憶體型態可利用記憶體介面組態暫存器來設定 6-13

  14. 6-14

  15. 功能描述 • 說明 • SDRAM介面簡介 • 靜態記憶體介面與可變延遲I/O介面 • 16位元PC卡與快閃記憶體介面 6-15

  16. 說明 • Intel PXA250與PXA210應用處理器有三個不同的記憶體空間 • SDRAM • 靜態記憶體 • 卡記憶體 • SDRAM有4個分割,靜態記憶體有6個,卡的空間有2個 • 當記憶體存取需跨過相鄰分割的範圍時,這兩個分割的組態必須一致(包括匯流排寬度及突發傳送長度) 6-16

  17. SDRAM介面簡介 • 應用處理器的SDRAM介面提供4個16與32位元寬的SDRAM分割 • 每個分割可定址64MB的內部記憶體,但實際的大小需視SDRAM的組態而定 • 4個分割分成成對的兩組 • 分割0與分割1 • 分割2與分割3 • 每對內的分割其大小與組態必須相同 6-17

  18. SDRAM介面簡介(cont.) • 應用處理器在一般操作時會自動充電(CBR) ,並支援在睡眠模式時自我充電(self-refreshing) • 當設定auto-power-down mode位元時, SDRAM的時脈與時脈致能在沒有SDRAM的分割被存取時會自動的變成不作用(de-assert) • 應用處理器支援x8, x16與x32的SDRAM晶片 6-18

  19. SDRAM介面簡介(cont.) • 當致能一個SDRAM的分割時, 一個模式暫存器設定命令(MRS)會寫入MDMRS暫存器來送到SDRAM裝置 • MRS命令會設定SDRAM的內部模式暫存器成順序突發傳輸型態且設定突發傳輸長度為4 • CAS延遲由MDCNFG的DTC0或DTC2欄位設定 6-19

  20. SDRAM記憶體選擇 • 可支援4個分割區,分為2對 • 每個分割區須有相同 • SDRAM大小 • 組態 • 時序種類 • 資料匯排寬度 6-20

  21. SDRAM記憶體大小選擇範例 6-21

  22. 應用處理器訊號 • 4個分割選擇訊號(nSDCS[3:0]) • 4個位元組選擇訊號(DQM[3:0]) • 15個多工組/列/行位址訊號(MA[24:0]) • 1個啟動寫入訊號(nWE) • 1個行位址選通脈衝(nSDCAS) • 1個列位址選通脈衝(nSDRAS) • 1個啟動時脈訊號(SDCKE[1]) • 2個時脈訊號(SDCLK[2:1]) • 32個資料訊號(MD[31:0]) 6-22

  23. 靜態記憶體介面與可變延遲I/O介面 • 支援最多6組(bank) • 有6個晶片選擇(nCS[5:0])與26位元的位元組地址(MA[25:0]) • 每組記憶體最多可以有64MB 6-23

  24. 靜態記憶體介面與可變延遲I/O介面(cont.) • 每個晶片選擇可個別程式化來選擇所支援的靜態記憶體類別之一: • nCS[5:0]支援非突發傳輸ROM或快閃記憶體 • nCS[5:0]支援突發傳輸ROM或快閃記憶體(非突發傳輸寫入) • nCS[5:0]支援突發和非突發傳輸SRAM • nCS[5:0]支援可變延遲I/O • nCS[3:0]支援同步靜態記憶體 6-24

  25. 靜態記憶體介面與可變延遲I/O介面(cont.) • 可變延遲I/O介面與SRAM的不同 • 允許資料準備(data-ready)輸入訊號RDY插入可變個數的等待狀態 • 應用處理器重置時 • 會先從位址0x00取得指令並執行 • 晶片選擇nCS<0>會作用 • BOOL_SEL腳位決定開機記憶體的型態 6-25

  26. 靜態記憶體介面 • 為了使每個晶片選擇最多可存取64Mbyte,處理器提供26位元的位元組位址 • 使用32位元系統不可連接MA[1:0] • 使用16位元系統不可連接MA[0] • 在32位元系統的讀取,DQM[3:0]和MA[1:0]都為0 • 在16位元系統的讀取,DQM[1:0]和MA[0]都為0 6-26

  27. 32位元匯流排寫入存取 6-27

  28. 16位元匯流排寫入存取 6-28

  29. 16位元PC卡與快閃記憶體介面 • 提供控制訊號支援 • 16位元PC卡與快閃記憶體的任意組合 • 最多兩個插槽 • 使用地址線MA[25:0]與資料線MD[15:0] 6-29

  30. 16位元PC卡與快閃記憶體介面(cont.) • 16位元PC卡與快閃記憶體控制器提供以下訊號 • nPREG作MA[26]和選擇暫存器空間(I/O或屬性)對記憶體空間的多工處理 • nPOE與nPWE允許記憶體與屬性讀取和寫入 • nPIOR、nPIOW與nIOIS16控制I/O讀取和寫入 • nPWAIT允許延伸的讀取時間 • nPCE2與nPCE1為16位元資料匯流排位元組高低選擇。 • PSKTSEL選擇2個卡槽之一 6-30

  31. 16位元PC卡與快閃記憶體介面(cont.) • 16位元PC卡記憶體映象空間分成8個分割區 • 每個插槽有4個分割區 • 4個分割區為: • 共用記憶體 • I/O • 屬性記憶體 • 保留空間。 • 每一個分割區皆以64Mbyte的邊界開始 6-31

  32. 記憶體系統範例 • 使用4Mx16位元的SDRAM裝置(共48MB) • 在靜態組0與1的2Mx16位元的SMROM以及在靜態組2的RAM裝置 6-32

  33. 6-33

  34. 6-34

  35. 記憶體存取 • 若記憶體存取後,有一段匯流排閒置時間,則 • 控制訊號會回到不活動的(inactive)狀態 • 為了避免不必要的轉變與消除,位址和資料訊號仍為原來的數值 6-35

  36. 裝置交易(Device Transactions) 6-36

  37. 讀取與寫入 • DQM<3:0>為資料遮罩位元 • DQM<3>對應到MD<31:24> • DQM<2>對應到MD<23:16> • DQM<1>對應到MD<15:8> • DQM<0>對應到MD<7:0> • 當高電位觸發時,對應的位元遮蔽MD<31:0>匯流排上資料的相關位元組 • 而當低電位反觸發時,對應的位元不會遮蔽MD<31:0>匯流排上資料的相關位元組 6-37

  38. 放棄與不存在的記憶體 • 存取記憶體映象保留的部分,會導致資料放棄的例外事件 • 硬體不會偵測到讀取或寫入至啟動的記憶體或不存在的記憶體 • 若啟動的分割區內的記憶體不存在,則讀取會傳回不確定的資料 • 如果記憶體並未佔有分割區全部的64MB,則執行讀取或寫入至這些未被佔有的區域時,仍與記憶體佔有分割區全部的64MB時相同 6-38

  39. 放棄與不存在的記憶體(cont.) • 單一字組對未啟動的SDRAM分割區(MDCNFG:DEx=0)做存取導致對所有的分割區進行一個CBR更新週期 • 這種技術被使用在硬體初始化程序。 6-39

  40. 放棄目標(target-abort)的例外事件 • 突發傳輸讀取對未啟動的SDRAM做存取會導致放棄目標(target-abort)的例外事件 • 對Flash/ROM空間做突發寫入與突發傳輸至組態空間也會產生Target-abort • Target-abort可以是資料放棄或預先取得(prefetch)放棄,依據試圖作突發傳輸的來源而定 6-40

  41. 記憶體組態暫存器 • 組態暫存器是記憶體介面控制暫存器中的一個 • 記憶體介面控制暫存器必須對應為不可快取(non-cacheable)與不可緩衝(non-bufferable) • 只可為單一word存取 • 被分組為同一分頁,而所有記憶體介面控制暫存器都具有相同記憶體保護 6-41

  42. 記憶體介面控制暫存器列表 6-42

  43. 啟動記憶體之選擇和設定(cont.) 6-43

  44. 啟動記憶體之選擇和設定(cont.) 6-44

  45. 啟動記憶體之選擇和設定 6-45

  46. GPIO重置 (cont.) • MBREQ和MBGNT要設定自己的重置狀態 • MBREQ和MBGNT腳位成為一般用途的輸入 • 當GPIO重置時,若有一個處理在執行,Alternate master會喪失匯流排的控制權 • 觸發GPIO重置之後,會立刻發生一個SDRAM更新 • 記憶體控制器暫存器會保留重置之前的數值 • 不保證記憶體的內容,而軟體必須決定記憶體的內容是否被影響 6-46

  47. 記憶體 GPIO重置 只保留重置 前的數值 記憶體 控制器 不保証記 憶體內容 6-47

More Related