<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > SDRAM在windows CE系統(tǒng)中的應(yīng)用

          SDRAM在windows CE系統(tǒng)中的應(yīng)用

          作者: 時(shí)間:2016-10-08 來(lái)源:網(wǎng)絡(luò) 收藏

          隨著嵌入式產(chǎn)品的發(fā)展,各種嵌入式操作系統(tǒng),以及嵌入式上層應(yīng)用軟件層出不窮。這就對(duì)大容量SDRAM的需求日益增強(qiáng)。目前用于嵌入式產(chǎn)品中的存儲(chǔ)器主要有FLASH和SDRAM。FLASH作為靜態(tài)存儲(chǔ)器,被應(yīng)用于存放啟動(dòng)代碼和操作系統(tǒng)內(nèi)核,SDRAM作為動(dòng)態(tài)存儲(chǔ)器,被應(yīng)用于存放實(shí)時(shí)更新的數(shù)據(jù)信息。在此,采用Intel的PXA255處理器。使用32 MB的NOR FLASH作為放置啟動(dòng)代碼和操作系統(tǒng)的靜態(tài)存儲(chǔ)空間,使用256 MB的SDRAM作為動(dòng)態(tài)存儲(chǔ)空問(wèn),使用2 GB的CF卡作為應(yīng)用程序和數(shù)據(jù)的存儲(chǔ)空間,并與液晶顯示屏、音頻、觸摸一起構(gòu)成一個(gè)功能強(qiáng)大的嵌入式體系。

          本文引用地址:http://www.ex-cimer.com/article/201610/305917.htm

          1 隨機(jī)存儲(chǔ)器介紹

          隨機(jī)存儲(chǔ)器主要分為靜態(tài)隨機(jī)存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存儲(chǔ)器(DRAM)及SDRAM。1個(gè)SRAM單元通常由4~6個(gè)晶體管組成,當(dāng)這個(gè)SRAM單元被賦予O或者1的狀態(tài)之后,它會(huì)保持這個(gè)狀態(tài)直到下次被賦予新的狀態(tài)或者斷電之后才會(huì)更改或者消失。SRAM的讀寫速度相對(duì)比較快,而且比較省電,但是存儲(chǔ)1 b的信息需要4~6只晶體管。DRAM和SDRAM必須在一定的時(shí)間內(nèi)不停地刷新才能保持其中存儲(chǔ)的數(shù)據(jù),但存儲(chǔ)1 b的信息只要1只晶體管就可以實(shí)現(xiàn)。在數(shù)據(jù)讀寫的過(guò)程中,SRAM,DRAM及SDRAM均有不同的工作方式。DRAM和SDRAM相對(duì)于SRAM增加了多路尋址技術(shù),即利用2個(gè)連續(xù)的周期傳輸?shù)刂窋?shù)據(jù),達(dá)到使用一半的地址線,以完成SRAM同樣功能的目的。SDRAM相對(duì)于DRAM不僅提出了多Bank的工作模式,并且SDRAM與CPU和芯片組共享時(shí)鐘,芯片組可以主動(dòng)地在每個(gè)時(shí)鐘的上升沿發(fā)給sDRAM控制命令。

          2 硬件設(shè)計(jì)方案

          2.1 SDRAM工作原理

          SDRAM本身是由多個(gè)Bank區(qū)域構(gòu)成,對(duì)SDRAM的操作實(shí)際上是通過(guò)區(qū)域片選信號(hào)對(duì)單獨(dú)Bank進(jìn)行的操作。SDRAM中單個(gè)Bank的讀取過(guò)程如圖1所示。

          SDRAM中單個(gè)Bank的讀取過(guò)程

          (1)通過(guò)地址總線將行地址傳輸?shù)降刂芬_;

          (2)RAS(行地址使能信號(hào))被激活,這樣行地址被傳送到行地址門閂線路中;

          (3)行地址解碼器根據(jù)接收到的數(shù)據(jù)選擇相應(yīng)的行;

          (4)wE(寫使能信號(hào))引腳確定不被激活,所以SDRAM知道它不會(huì)進(jìn)行寫操作;

          (5)列地址通過(guò)地址總線傳輸?shù)降刂芬_;

          (6)CAS(列地址使能信號(hào))引腳被激活,這樣地址被傳送到列地址門閂線路中;

          (7)DQM(輸出使能)引腳被激活,數(shù)據(jù)向外輸出。

          這就完成了一個(gè)單Bank的讀操作,在讀取數(shù)據(jù)的過(guò)程中行列地址的尋址過(guò)程是通過(guò)兩個(gè)時(shí)鐘周期實(shí)現(xiàn)的,在第一個(gè)時(shí)鐘周期使能行地址,下一個(gè)時(shí)鐘周期使能列地址,這就實(shí)現(xiàn)了地址線的復(fù)用。

          SDRAM寫入的過(guò)程和讀取過(guò)程是基本一樣的,只需要將wE信號(hào)激活。

          2.2 硬件設(shè)計(jì)

          對(duì)于SDRAM的硬件設(shè)計(jì)需要確定3個(gè)方面的內(nèi)容:通過(guò)處理器的特性選擇SDRAM的型號(hào);確定SDRAM地址線、數(shù)據(jù)線的連接方式;確定SDRAM控制信號(hào)線的連接方式。

          2.2.1 SDRAM的選擇

          該平臺(tái)處理器選擇Intel公司XSCALE架構(gòu)的PXA255,它針對(duì)于SDRAM有4根專用的動(dòng)態(tài)片選信號(hào),能夠支持4塊內(nèi)存區(qū)域,如圖2所示。

          控制方式

          其中每塊區(qū)域所能支持到的最大物理地址為64 MB。并且每一塊內(nèi)存區(qū)域均可使用16 b或32 b的SDRAM。

          在硬件設(shè)計(jì)過(guò)程中考慮到硬件使用的可調(diào)節(jié)性,采用8片16 b×4 MB×4 Bank的SDRAM,共搭建了256 MB的極限存儲(chǔ)空間。其中,SDRAM選擇型號(hào)為三星公司的K4S561632E。

          2.2.2 數(shù)據(jù)線、地址線的分配

          PXA255處理器共有32位數(shù)據(jù)線和26位地址線。故在硬件設(shè)計(jì)時(shí)需要并行處理2塊16 b的SDRAM,分別連接高位和低位的16根數(shù)據(jù)線。

          對(duì)于地址線的連接,首先需要參考SDRAM的數(shù)據(jù)手冊(cè),確定SDRAM行列地址線的個(gè)數(shù)。其次根據(jù)處理器數(shù)據(jù)手冊(cè)確定具體地址線的連接方式。

          在三星K4S561632E的數(shù)據(jù)手冊(cè)中是這樣給出的,如表1所示。

          地址線的分配

          從表1中可以得出行列復(fù)用13根地址線,其中行地址13根,列地址9根,共組成22根地址線的尋址空間。在處理器PXA255中,給SDRAM分配的地址線空間是從A10~A22。這樣就可以完全確定地址線和數(shù)據(jù)線的連接方式,如圖3所示。

          地址線和數(shù)據(jù)線的連接方式

          2.2.3 控制信號(hào)線的連接方式

          對(duì)于SDRAM需要確定的控制線包括時(shí)鐘信號(hào)線、區(qū)域片選信號(hào)線及Bank片選信號(hào)線。對(duì)于這三類信號(hào)線PXA255處理器是這樣給出的,即:

          (1)每?jī)山M內(nèi)存區(qū)域使用同一組時(shí)鐘信號(hào)線,即每128 MB的內(nèi)存空間使用同一根時(shí)鐘信號(hào)線,故在設(shè)計(jì)中使用了2組時(shí)鐘信號(hào)線。

          (2)共有4根區(qū)域片選信號(hào),分別控制64 MB的物理地址空間。最大支持到256 MB的物理地址空間。

          (3)地址線的23,24位用來(lái)實(shí)現(xiàn)對(duì)SDRAM內(nèi)部Bank的選擇。

          2.3 硬件的移植

          針對(duì)于PXA27x系列的高端處理器,Intel并沒(méi)有對(duì)SDRAM部分做本質(zhì)上的改動(dòng),仍然是4根動(dòng)態(tài)片選信號(hào),故硬件方面的設(shè)計(jì)可以完全移植到PXA27x系列的處理器中。

          3 軟件設(shè)計(jì)方案

          Windows CE操作系統(tǒng)下對(duì)內(nèi)存的驅(qū)動(dòng)代碼主要分為兩個(gè)部分,首先在BootLoader中對(duì)SDRAM進(jìn)行底層初始化;其次在系統(tǒng)BSP包內(nèi)需要將SDRAM所對(duì)應(yīng)的物理地址映射為Windows CE下能夠識(shí)別的虛擬地址。

          控制線的連接方式如圖4所示。

          控制線的連接方式

          3.1 BootLoader代碼的買現(xiàn)

          BootLoader是系統(tǒng)運(yùn)行的起始點(diǎn),它包含著系統(tǒng)運(yùn)行的第一行代碼。BootLoader本身也是一個(gè)功能完整的微型操作系統(tǒng),在內(nèi)部需要實(shí)現(xiàn)任務(wù)調(diào)度、內(nèi)存管理、文件系統(tǒng),以及各種必要設(shè)備驅(qū)動(dòng)程序的配置。其中內(nèi)存管理即是完成SDRAM初始化的工作,包括設(shè)置SDRAM工作頻率、設(shè)置片選信號(hào)寄存器、設(shè)置刷新間隔和SDRAM潛伏期、以及配置系統(tǒng)內(nèi)核的拷貝地址。控制線的連接方式如圖4所示。


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞:

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();