记忆体控制器精选文档.ppt
记忆体控制器记忆体控制器6-1本讲稿第一页,共四十七页大綱大綱l記憶體分類l概論l功能描述l記憶體系統範例l記憶體存取l記憶體組態暫存器6-2本讲稿第二页,共四十七页記憶體分類記憶體分類l隨機存取記憶體靜態隨機存取記憶體 動態隨機存取記憶體l同步動態隨機存取記憶體 l雙速率隨機存取記憶體 l唯讀記憶體可抹除可程式唯讀記憶體 電子式可抹除可程式唯讀記憶體 快閃記憶體 6-3本讲稿第三页,共四十七页隨機存取記憶體隨機存取記憶體l簡稱為記憶體l系統在運算過程中暫時儲存資料的空間l系統有電源時,資料存在於系統中,系統關機時記憶體中的資料則全部消失l要保留記憶體的內容,在關機前將資料儲存到永久性儲存媒體中l可分成兩大類:靜態隨機存取記憶體動態隨機存取記憶體 6-4本讲稿第四页,共四十七页靜態隨機存取記憶體靜態隨機存取記憶體l每個位元使用四到六個電晶體所組成,沒有需要充電的元件 l沒有電容器放電的問題,不需要不斷地充電 l存取時間較短,製造成本較高,而且容量也比動態隨機存取記憶體還小l主要用作快取記憶體 l未來的發展以通訊市場為重點,主要是在手機市場 6-5本讲稿第五页,共四十七页動態隨機存取記憶體動態隨機存取記憶體l由電容組成的陣列且以電荷方式來儲存資料l必須適時的充電以免電荷消失而導致資料遺失l需要有外部電路的支援,使得CPU對記憶體存取的延遲l價格便宜容量大,普遍用於多數的電腦系統中l發展出好幾種不同類型的動態隨機存取記憶 6-6本讲稿第六页,共四十七页同步動態隨機存取記憶體同步動態隨機存取記憶體l時脈速度上比動態隨機存取記憶體還要快上許多倍l利用同步計時器對記憶體的輸出輸入做控制,使得CPU能與記憶體有相同的時脈l同時開啟兩個記憶體的分頁 l採用3.3V電壓,168個接腳,可以搭配CPU的各種不同類型的外頻規格 6-7本讲稿第七页,共四十七页雙速率隨機存取記憶體雙速率隨機存取記憶體l加強的同步動態隨機存取記憶體 l在一個時脈週期的波峰與波底都能夠傳輸資料 l傳輸率至少是同步動態隨機存取記憶體的兩倍l規格不同於同步動態隨機存取記憶體l採用2.5 V電壓,184個接腳,外頻為133MHz 6-8本讲稿第八页,共四十七页唯讀記憶體唯讀記憶體l非揮發記憶體 l不需電力的供給,記憶體內的資料會長時間的被儲存起來 l由大型二極體所組成的陣列構成 l主要是存放開機時所需的軟體 l可分為:可抹除可程式唯讀記憶體電子式可抹除可程式唯讀記憶體快閃記憶體 6-9本讲稿第九页,共四十七页可抹除可程式唯讀記憶體可抹除可程式唯讀記憶體l利用紫外線的照射晶片頂端的一個小窗口,將記憶體內部的資料清除掉l再透過燒錄器,把資料燒錄到記憶體中l大約能重複寫入100次左右l不用於經常性變動參數的電腦系統內l未來會朝往通訊用途發展,如用於手機 6-10本讲稿第十页,共四十七页電子式可抹除可程式唯讀記憶體電子式可抹除可程式唯讀記憶體 l可以在電路上做清除與寫入l不必額外提高電壓就能將資料寫入到記憶體內,只需寫入某些控制碼 l大約可重複寫入高達10000次左右l不適合用來存放韌體 l儲存介面介面卡的設定資料l未來會朝往也通訊用途發展,如用於手機 6-11本讲稿第十一页,共四十七页快閃記憶體快閃記憶體l最新技術的唯讀記憶體 l有電子式可抹除可程式唯讀記憶體可重複寫入的功能,同時也具備一般唯讀記憶體的大容量 l重複寫入次數可達1000000次之多 l資料更新是以每個區塊為單位加以覆寫l價格較便宜且容量大,逐漸成為主流 6-12本讲稿第十二页,共四十七页概論概論lPXA250與PXA210應用處理器外部記憶體匯流排支援同步動態隨機存取記憶體(SDRAM)同步與非同步突發傳輸(burst)模式分頁模式(Page-mode)快閃記憶體同步遮罩唯讀記憶體(SMROM)分頁模式唯讀記憶體靜態隨機存取記憶體(SRAM)類似SRAM可變延遲I/O(VLIO)16位元PC卡擴充記憶體快閃記憶體l記憶體型態可利用記憶體介面組態暫存器來設定6-13本讲稿第十三页,共四十七页6-14本讲稿第十四页,共四十七页功能描述功能描述l說明lSDRAM介面簡介l靜態記憶體介面與可變延遲I/O介面l16位元PC卡與快閃記憶體介面6-15本讲稿第十五页,共四十七页說明說明lIntel PXA250與PXA210應用處理器有三個不同的記憶體空間SDRAM靜態記憶體卡記憶體lSDRAM有4個分割,靜態記憶體有6個,卡的空間有2個l當記憶體存取需跨過相鄰分割的範圍時,這兩個分割的組態必須一致(包括匯流排寬度及突發傳送長度)6-16本讲稿第十六页,共四十七页SDRAM介面簡介介面簡介l應用處理器的SDRAM介面提供4個16與32位元寬的SDRAM分割l每個分割可定址64MB的內部記憶體,但實際的大小需視SDRAM的組態而定l4個分割分成成對的兩組分割0與分割1分割2與分割3l每對內的分割其大小與組態必須相同6-17本讲稿第十七页,共四十七页SDRAM介面簡介介面簡介(cont.)l應用處理器在一般操作時會自動充電(CBR),並支援在睡眠模式時自我充電(self-refreshing)l當設定auto-power-down mode位元時,SDRAM的時脈與時脈致能在沒有SDRAM的分割被存取時會自動的變成不作用(de-assert)l應用處理器支援x8,x16與x32的SDRAM晶片6-18本讲稿第十八页,共四十七页SDRAM介面簡介介面簡介(cont.)l當致能一個SDRAM的分割時,一個模式暫存器設定命令(MRS)會寫入MDMRS暫存器來送到SDRAM裝置lMRS命令會設定SDRAM的內部模式暫存器成順序突發傳輸型態且設定突發傳輸長度為4lCAS延遲由MDCNFG的DTC0或DTC2欄位設定6-19本讲稿第十九页,共四十七页SDRAM記憶體選擇記憶體選擇l可支援4個分割區,分為2對l每個分割區須有相同SDRAM大小組態時序種類資料匯排寬度6-20本讲稿第二十页,共四十七页SDRAM記憶體大小選擇範例記憶體大小選擇範例 SDRAM組態(Word x Bits)晶片大小晶片數目分割區Bank Bits x Row Bits x Column Bits分割區大小(Mbyte分割區)16位元Bus32位元Bus16位元Bus32位元Bus1M x 1616Mbit121 x 11 x 82Mbyte4Mbyte2M x 816Mbit241 x 11 x 94Mbyte8Mbyte2M x 3264MbitN/A12 x 11 x 8N/A8Mbyte4M x 1664Mbit121 x 13 x 82 x 12 x 88Mbyte16Mbyte8M x 864Mbit241 x 13 x 92 x 12 x 916Mbyte32Mbyte8M x 16128Mbit122 x 12 x 916Mbyte32Mbyte16M x 8128Mbit242 x 12 x 1032Mbyte64Mbyte16M x 16256Mbit122 x 13 x 932Mbyte64Mbyte32M x 8256Mbit242 x 13 x 1064Mbyte128Mbyte 超過分割區大小6-21本讲稿第二十一页,共四十七页應用處理器訊號應用處理器訊號l4個分割選擇訊號(nSDCS3:0)l4個位元組選擇訊號(DQM3:0)l15個多工組列行位址訊號(MA24:0)l1個啟動寫入訊號(nWE)l1個行位址選通脈衝(nSDCAS)l1個列位址選通脈衝(nSDRAS)l1個啟動時脈訊號(SDCKE1)l2個時脈訊號(SDCLK2:1)l32個資料訊號(MD31:0)6-22本讲稿第二十二页,共四十七页靜態記憶體介面與可變延遲靜態記憶體介面與可變延遲I/O介面介面l支援最多6組(bank)l有6個晶片選擇(nCS5:0)與26位元的位元組地址(MA25:0)l每組記憶體最多可以有64MB6-23本讲稿第二十三页,共四十七页靜態記憶體介面與可變延遲靜態記憶體介面與可變延遲I/O介面介面(cont.)l每個晶片選擇可個別程式化來選擇所支援的靜態記憶體類別之一:nCS5:0支援非突發傳輸ROM或快閃記憶體nCS5:0支援突發傳輸ROM或快閃記憶體(非突發傳輸寫入)nCS5:0支援突發和非突發傳輸SRAMnCS5:0支援可變延遲I/OnCS3:0支援同步靜態記憶體6-24本讲稿第二十四页,共四十七页靜態記憶體介面與可變延遲靜態記憶體介面與可變延遲I/O介面介面(cont.)l可變延遲I/O介面與SRAM的不同允許資料準備(data-ready)輸入訊號RDY插入可變個數的等待狀態l應用處理器重置時會先從位址0 x00取得指令並執行晶片選擇nCS會作用BOOL_SEL腳位決定開機記憶體的型態6-25本讲稿第二十五页,共四十七页靜態記憶體介面靜態記憶體介面l為了使每個晶片選擇最多可存取64Mbyte,處理器提供26位元的位元組位址l使用32位元系統不可連接MA1:0 l使用16位元系統不可連接MA0 l在32位元系統的讀取,DQM3:0和MA1:0都為0 l在16位元系統的讀取,DQM1:0和MA0都為0 6-26本讲稿第二十六页,共四十七页32位元匯流排寫入存取位元匯流排寫入存取 資料大小MA1:0DQM3:08位元0011108位元0111018位元1010118位元11011116位元00110016位元10001132位元0000006-27本讲稿第二十七页,共四十七页16位元匯流排寫入存取位元匯流排寫入存取 資料大小MA0DQM1:08位元0108位元10116位元0006-28本讲稿第二十八页,共四十七页16位元位元PC卡與快閃記憶體介面卡與快閃記憶體介面l提供控制訊號支援16位元PC卡與快閃記憶體的任意組合最多兩個插槽l使用地址線MA25:0與資料線MD15:06-29本讲稿第二十九页,共四十七页16位元位元PC卡與快閃記憶體介面卡與快閃記憶體介面(cont.)l16位元PC卡與快閃記憶體控制器提供以下訊號nPREG作MA26和選擇暫存器空間(I/O或屬性)對記憶體空間的多工處理nPOE與nPWE允許記憶體與屬性讀取和寫入nPIOR、nPIOW與nIOIS16控制I/O讀取和寫入nPWAIT允許延伸的讀取時間nPCE2與nPCE1為16位元資料匯流排位元組高低選擇。PSKTSEL選擇2個卡槽之一6-30本讲稿第三十页,共四十七页16位元位元PC卡與快閃記憶體介面卡與快閃記憶體介面(cont.)l16位元PC卡記憶體映象空間分成8個分割區 l每個插槽有4個分割區 l4個分割區為:共用記憶體I/O屬性記憶體保留空間。l每一個分割區皆以64Mbyte的邊界開始 6-31本讲稿第三十一页,共四十七页記憶體系統範例記憶體系統範例l使用4Mx16位元的SDRAM裝置(共48MB)l在靜態組0與1的2Mx16位元的SMROM以及在靜態組2的RAM裝置6-32本讲稿第三十二页,共四十七页6-33本讲稿第三十三页,共四十七页6-34本讲稿第三十四页,共四十七页記憶體存取記憶體存取l若記憶體存取後,有一段匯流排閒置時間,則控制訊號會回到不活動的(inactive)狀態為了避免不必要的轉變與消除,位址和資料訊號仍為原來的數值6-35本讲稿第三十五页,共四十七页裝置交易裝置交易(Device Transactions)匯流排操作突發傳輸大小(word)開始位址Bits4:2說明Read single1任何由核心、DMA或LCD的請求所產生。Read burst404由DMA或LCD的請求所產生。Read burst80由於快取線(cache line)滿載而產生。Write single1任何1.4位元組由位元組遮罩指定要寫入那些位元組。由DMA的請求所產生。Write burst20,1,24,5,6每一個word的所有4個位元組都被寫入。由DMA的請求所產生。Write burst30,14,5每一個word的所有4個位元組都被寫入。由DMA的請求所產生。Write burst404每一個word的所有4個位元組都被寫入。由DMA的請求所產生。Write burst80快取線(cache line)複製回去。全部32個byte都被寫入。6-36本讲稿第三十六页,共四十七页讀取與寫入讀取與寫入lDQM為資料遮罩位元lDQM對應到MDlDQM對應到MDlDQM對應到MDlDQM對應到MDl當高電位觸發時,對應的位元遮蔽MD匯流排上資料的相關位元組l而當低電位反觸發時,對應的位元不會遮蔽MD匯流排上資料的相關位元組6-37本讲稿第三十七页,共四十七页放棄與不存在的記憶體放棄與不存在的記憶體 l存取記憶體映象保留的部分,會導致資料放棄的例外事件l硬體不會偵測到讀取或寫入至啟動的記憶體或不存在的記憶體l若啟動的分割區內的記憶體不存在,則讀取會傳回不確定的資料l如果記憶體並未佔有分割區全部的64MB,則執行讀取或寫入至這些未被佔有的區域時,仍與記憶體佔有分割區全部的64MB時相同6-38本讲稿第三十八页,共四十七页放棄與不存在的記憶體放棄與不存在的記憶體(cont.)l單一字組對未啟動的SDRAM分割區(MDCNFG:DEx=0)做存取導致對所有的分割區進行一個CBR更新週期l這種技術被使用在硬體初始化程序。6-39本讲稿第三十九页,共四十七页放棄目標(放棄目標(target-abort)的例外事件)的例外事件l突發傳輸讀取對未啟動的SDRAM做存取會導致放棄目標(target-abort)的例外事件l對Flash/ROM空間做突發寫入與突發傳輸至組態空間也會產生Target-abortlTarget-abort可以是資料放棄或預先取得(prefetch)放棄,依據試圖作突發傳輸的來源而定 6-40本讲稿第四十页,共四十七页記憶體組態暫存器記憶體組態暫存器l組態暫存器是記憶體介面控制暫存器中的一個l記憶體介面控制暫存器必須對應為不可快取(non-cacheable)與不可緩衝(non-bufferable)l只可為單一word存取l被分組為同一分頁,而所有記憶體介面控制暫存器都具有相同記憶體保護 6-41本讲稿第四十一页,共四十七页記憶體介面控制暫存器列表記憶體介面控制暫存器列表實體位址符號暫存器名稱0 x4800 0000MDCNFGSDRAM組態暫存器0 x4800 0004MDREFRSDRAM更新控制暫存器0 x4800 0008MSC0靜態記憶體控制暫存器00 x4800 000CMSC1靜態記憶體控制暫存器10 x4800 0010MSC2靜態記憶體控制暫存器20 x4800 0014MECR擴充記憶體(16位元PC卡Compact Flash)匯流排組態暫存器0 x4800 001CSXCNFG同步靜態記憶體暫存器0 x4800 0024SXMRS將MRS值寫入SMROM0 x4800 0028MCME0插卡介面通用記憶體空間插座0時序組態0 x4800 002CMCME1插卡介面通用記憶體空間插座1時序組態0 x4800 0030MCATT0插卡介面屬性空間插座0時序組態0 x4800 0034MCATT1插卡介面屬性空間插座1時序組態0 x4800 0038MCIO0插卡介面空間插座0時序組態0 x4800 003CMCIO1插卡介面空間插座1時序組態0 x4800 0040MDMRS將MRS值寫入SDRAM6-42本讲稿第四十二页,共四十七页啟動記憶體之選擇和設定啟動記憶體之選擇和設定(cont.)位元名稱說明31:4-保留3PKG_TYPE處理器類型。此位元為唯讀。0 PXA210應用處理器1 PXA250應用處理器2:0BOOT_SEL包含3個應用處理器輸入腳位(BOOT_SEL2:0)。這些位元為唯讀。參考表8-22之有效啟動組態。參考8.11.2.2節之啟動時間組態描述。6-43本讲稿第四十三页,共四十七页啟動記憶體之選擇和設定啟動記憶體之選擇和設定(cont.)處理器類型BOOT_SEL訊號之有效啟動組態0(PXA210應用處理器)0010111011111(PXA250應用處理器)0000010100111001011101116-44本讲稿第四十四页,共四十七页啟動記憶體之選擇和設定啟動記憶體之選擇和設定BOOT_SEL啟動位置210000非同步32位元ROM001非同步16位元ROM010保留011保留1001個32位元同步遮罩ROM(64Mbit)2個16位元同步遮罩ROM=32位元(每一個為32Mbit)1011個16位元同步遮罩ROM(64Mbit)1102個16位元同步遮罩ROM=32位元(每一個為64Mbit)1111個16位元同步遮罩ROM(32Mbit)6-45本讲稿第四十五页,共四十七页GPIO重置重置(cont.)lMBREQ和MBGNT要設定自己的重置狀態lMBREQ和MBGNT腳位成為一般用途的輸入l當GPIO重置時,若有一個處理在執行,Alternate master會喪失匯流排的控制權l觸發GPIO重置之後,會立刻發生一個SDRAM更新 l記憶體控制器暫存器會保留重置之前的數值 l不保證記憶體的內容,而軟體必須決定記憶體的內容是否被影響 6-46本讲稿第四十六页,共四十七页GPIO重置重置記憶體控制器記憶體不保証記憶體內容只保留重置前的數值6-47本讲稿第四十七页,共四十七页