(一)s3c2440 地址分配講解 (很難很糾結)


mini2440的地址怎么分配。mini2440處理器的地址怎么分配。

S3C2440處理器可以使用的物理地址空間可以達到4GB,其中前1GB的地址(也就是0x0000 0000--0x4000 0000)為外設地址空間,外設地址究竟怎么確定的呢??好煩??

還有一部分為CPU內部使用的特殊功能寄存器地址空間(地址范圍為0x4800 0000--0x5FFF FFFF),其余的地址空間沒有使用。

 下面用兩個表格說明外設地址空間好特殊功能寄存器地址空間

 

3FF FFFF 共 26根地址線,也就是 2^6=64   2^20=1M  那么就是 64M

內存概念:

內存是代碼的執行空間,程序是以文件的形式保存在硬盤里面的,程序在運行之前需要由操作系統載入到內存中,

由於內存是RAM(可以隨機訪問),所以可以通過地址去定位一個字節的數據,CPU在執行程序時候把PC值也就是指針設為程序在內存的開始地址。按順序進行取值譯碼工作。

 

s3c2440講解

1、 S3C2440對外引出了27根地址線ADDR0~ADDR26 (也就是外設) ,它最多能夠尋址128MB,

 而S3C2440的尋址空間可以達到1GB,這是由於S3C2440將1GB的地址空間分成了8個BANKS(Bank0~Bank7),

其中每一個BANK對應一根片選信號線nGCS0~nGCS7(這是存儲器自身的引腳口)

當訪問BANKx的時候,nGCSx管腳電平拉低,用來選中外接設備, S3C2440通過8根選信號線和27根地址線,就可以訪問1GB

27根地址線(可以看友善之臂的第一頁原理圖 ADDR0~ADDR26 )

 

S3C2440芯片性質決定了,SDRAM類型的內存條只能焊在 Bank6~Bank7上,最大支持內存 256M,即0x30000000--0x3FFFFFFF ,    但是我們的只是 64M=32* 2,所以地址范圍是 上圖 第 6 列

 

0x3800 0000       11   1000  0000   0000   0000   0000    0000   0000  (看到后面,感覺這里理解不是很正確),因為 SDRAM 只有 13根地址線,

0x3000 0000       11   0000  0000   0000   0000   0000    0000   0000

0x2800 0000       10   1000  0000   0000   0000   0000    0000   0000

0x2000 0000       10   0000  0000   0000   0000   0000    0000   0000

顯然我們發現了規律,

0---111..111(27根)  =  128M  

其中Bank0~Bank5可以焊接ROM或SRAM類型存儲器,Bank6~Bank7可以焊接ROM,SRAM,SDRAM類型存儲器,也就是說,S3C2440的SDRAM內存應該焊接在Bank6~Bank7上,最大支持內存256M,Bank0~Bank5通常焊接一些用於引導系統啟動小容量ROM,具體焊接什么樣存儲器,多大容量,根據每個開發板生產商不同而不同,比如MINI2440開發板將2M的Norflash焊接在了Bank0上,用於存放系統引導程序Bootloader,將兩片32M,16Bit位寬SDRAM內存焊接在Bank6和Bank7上,並聯形成64M,32位內存。

 

你要知道 ARM 是 32位,芯片所以坑定 尋址空間不止上面一個G的大小,還有三個G 呢。

其中Bank0~Bank5可以焊接ROM或SRAM類型存儲器,Bank6~Bank7可以焊接ROM,SRAM,SDRAM類型存儲器,也就是說,S3C2440的SDRAM內存應該焊接在Bank6~Bank7上,最大支持內存256M,

Bank0~Bank5通常焊接一些用於引導系統啟動小容量ROM,具體焊接什么樣存儲器,多大容量,根據每個開發板生產商不同而不同,比如MINI2440開發板將2M的Norflash焊接在了Bank0上,用於存放系統引導程序Bootloader,

將兩片32M,16Bit位寬SDRAM內存焊接在Bank6和Bank7上,並聯形成64M,

__________________________________________________________________________________________________________________________________________________________________________________________

由於S3C2440是32位芯片,理論上講可以達到4GB的尋址范圍,除去上述8個BANK用於連接外部設備,還有一部分的地址空間是用於設備特殊功能寄存器,其余地址沒有被使用。

表2-14 S3C2440設備寄存器地址空間

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM