內存初始化


電容的分類:

DRAM:基本原件是電容,需要定時刷新,存儲速度較慢

DRAM又分為:SRAM(同步動態隨機存儲器synchronous dynamic random access memory)

      DDR(雙倍速率同步動態隨機存儲器double data rate sdram)

      DDR2(在ddr的基礎上改進)

SRAM:是一種靜止存取功能的內存,不需要定時刷新,存儲速度快,缺點是功耗大,成本高,常用作存儲容量不高但是存儲速度較快的地方(stepping stone:墊腳石

 

 

內存的內部結構是一個如同一個數據表格,稱為結構表

 

一般一個內存單元中會被 划分為4L-BANK

 

2440中有27根地址線,可以尋址128M的空間。

2440中將bank7bank6做內存總共64M的內存空間

 

為了尋址更大的空間,2440提供了片選信號,總共有8 個管腳提供8個片選信號

 

 

內存初始化:(CPU對內存的訪問時通過存儲控制間接訪問的)

 

BWSCON:0X48000000(設置外接存儲器的總線寬度和等待狀態)

總共32位,分成8組,每組4位,分別控制8bank

STX:

0:沒有用UB/LB

1:用UB/B

注意:UB/LB pin腳,用來分別訪問數據的高低字節

WSX:

總線等待使能,一般是不讓其等待的

DWX:

數據線寬度

 

BANKCONn:總共是有6個,其控制字不變,保持其默認值ox00000700

 

BANKCON6:(需要分別設置,16位)

BANKCON7:(需要分別設置,16位)

MT[16:15]:決定存儲器類型

Trcd[3:2]:決定是行列信號的轉化時間,芯片手冊的時序圖是兩個時鍾周期

SCAN[1:0]:決定列的數量,查看內存手冊是9

 

REFRESH:0x4800002423位):

REFEN[23]:決定存儲器是否刷新,1=刷新

TREFMD[22]:決定存儲器刷新模式,0=自動刷新

 

Trp[21:20]:決定列刷新頻率, 根據內存手冊時序邏輯圖,00=兩個時鍾周期

Tsrc[19:18]:決定行刷新頻率,11=7個時鍾周期

Refresh Counter[10:0] :決定SDRAM刷新的時間(這里和前面的列和行刷新不一樣),根據計計算公式 取十進制數1269

 

BANKSIZE:0X48000028(8)

BURST_EN[7]:使能ARM內核突發模式,一次處理器可以批量的訪問內存數據,1=使用

SCKE_EN[5]:是否使用節電模式,1=使用

SCLK_EN[4]:串行時鍾使用時啟動,1=使用

BK76MAP[2:0]:定義內存大小,000=32/32

注意:2440的內存初始化總共需要初始化13個控制寄存器

 

 

MRSB6/7:0X4800002C/0X48000030:內存模式(12位)

CL[6:4]CAS latency 固定內存尋址存儲持續時間,跟在列/行尋址后持續的時間,011=查看芯片手冊時序時間表。

 

 

6410存儲器空間:

32位地址線,最大尋址4G內存空間,一般高2G空間是,低2G 空間。

其中低2G存儲空間是又被分為:

外設存儲空間主存儲空間

主存儲空間又被分為:

動態存儲區

保留區

內部存儲區

鏡像存儲區

靜態存儲區

 

 

 

總結:無論是時鍾初始化的寄存器,還是內存初始化的寄存器,其寄存器的地址空間都是處於內存中的外設區


免責聲明!

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



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