基于ARM單片機(jī)的嵌入式最小系統(tǒng)架構(gòu)研究
3.3 ARM處理器與SDRAM接口技術(shù)
嵌入式最小系統(tǒng)的外部動(dòng)態(tài)存儲(chǔ)器模塊一般采用SDRAM?,F(xiàn)在的大多數(shù)ARM處理器內(nèi)部都集成有SDRAM控制器,通過(guò)它可以很容易的訪問(wèn)SDRAM內(nèi)部的每一個(gè)字節(jié)。在實(shí)際開(kāi)發(fā)中可以根據(jù)需要選用一片或多片SDRAM。圖4中給出了兩種常用的接口方式。
(1)單片SDRAM
圖4 中a例為 ARM處理器S3C44B0與一個(gè)16bit的SDRAM K4S641632d的連接方式。在對(duì)尺寸有嚴(yán)格限制且對(duì)動(dòng)態(tài)存儲(chǔ)器容量要求不高的嵌入式系統(tǒng)中常采用此種連接方式。
(2)雙片16bit SDRAM結(jié)合使用
在雙片16bit SDRAM合成一個(gè)32bit SDRAM使用時(shí),ARM處理器的地址線A2接SDRAM的地址線A0,其余地址依次遞增,這是因?yàn)樵赟DRAM中字節(jié)是存儲(chǔ)容量的惟一單位,而此時(shí)SDRAM為32bit位寬。
SDRAM的BA地址線是其內(nèi)部Bank的地址線,代表了SDRAM內(nèi)存的最高位。在圖4中b例的SDRAM總大小是64M(64M= ),需要A25-A0引腳來(lái)尋址,所以BA1-BA0連接到了A25-A24引腳上。還需注意的是SDRAM內(nèi)存行地址和列地址是復(fù)用的,所以地址線的數(shù)目一般少于26條,具體連接需要參考ARM處理器和SDRAM的相關(guān)手冊(cè)。
值得注意的是,有些ARM處理器如SamSung公司的ARM940T系列處理器S3C2510 ,其地址總線與其它標(biāo)準(zhǔn)ARM處理器不太一樣,它的地址線分為內(nèi)部地址線和外部地址線兩種類(lèi)型。根據(jù)所連接的存儲(chǔ)器數(shù)據(jù)總線寬度,內(nèi)部地址線進(jìn)行相應(yīng)的移位,對(duì)應(yīng)到外部地址線A23-A0,從而對(duì)外提供固定的地址線A23-A0。其實(shí)質(zhì)與典型的ARM處理器是一致的。
啟動(dòng)架構(gòu)是嵌入式系統(tǒng)的關(guān)鍵技術(shù)。掌握啟動(dòng)架構(gòu)對(duì)于了解嵌入式系統(tǒng)的運(yùn)行原理有著重要的意義。嵌入式系統(tǒng)在啟動(dòng)時(shí),引導(dǎo)代碼、操作系統(tǒng)的運(yùn)行和應(yīng)用程序的加載主要有兩種架構(gòu),一種是直接從Nor Flash啟動(dòng)的架構(gòu),另一種是直接從Nand Flash啟動(dòng)的架構(gòu)。
需要注意的是,在嵌入式系統(tǒng)啟動(dòng)引導(dǎo)的過(guò)程中會(huì)有多種情況出現(xiàn),如vxWorks的啟動(dòng)代碼BootRom就有壓縮和非壓縮,駐留和非駐留方式之分,而操作系統(tǒng)本身也多以壓縮映象方式存儲(chǔ),所以啟動(dòng)代碼在執(zhí)行和加載過(guò)程中需要根據(jù)不同的情況,作出相應(yīng)的處理。
4.1從Nor Flash啟動(dòng)
Nor Flash具有芯片內(nèi)執(zhí)行(XIP,eXecute In Place)的特點(diǎn),在嵌入式系統(tǒng)中常做為存放啟動(dòng)代碼的首選。從Nor Flash啟動(dòng)的架構(gòu)又可細(xì)分為只使用Nor Flash的啟動(dòng)架構(gòu)和Nor Flash與Nand Flash配合使用的啟動(dòng)架構(gòu)。圖5 給出了這兩種啟動(dòng)架構(gòu)的原理框圖。
linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論