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