国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

專題8-內存初始化

2019-11-11 03:25:10
字體:
來源:轉載
供稿:網友

對于內存:

SRAM一般作為cpu的墊腳石(存儲較快,需要刷新) DRAM:分為SDRAM、DDR 、DDR2(不需要刷新,但存儲相對較慢)

2440的內存是64M,是由兩個32M的內存芯片與處理器連接合成的。處理器共有27根地址線,可以訪問2的27次方,即128M內存,由于有8個片選端,即總共可以訪問128*8=1G的內存。對于2440,cpu的低16位地址線分別連接32M的內存芯片,32位的數據線的前16位與后16位分別連接兩塊內存的數據線,即一個時鐘周期最多可以同時傳送32bit的數據。 這里寫圖片描述 查看datasheet的memory controler可以發現,bank0為cpu的墊腳石,一般bank6與bank7作為內存區域,起始地址為0x30000000。此時需要配置存儲控制寄存器,包括配置總線寬度是否等待控制等。 因為比方說,*0x30008000=0x5; 0x30008000屬于哪一個bank,行地址、列地址是什么——需要存儲控制器做一個分解與解析,再對該內存處(norFlash、網卡、內存等)寫入相應值。

代碼如下:

#define mem_contrl 0x48000000 % BWSCON:Bus width & wait status control registerinit_sdram: ldr r0, =mem_contrl add r3, r0, #4*13 adrl r1, mem_data %adrl與adr指令類似,為偽指令其加載的地址范圍要寬,為32位0: ldr r2, [r1], #4 str r2, [r0], #4 cmp r0, r3 bne 0b %不等于0跳轉到0處,b表示向前跳轉 mov pc, lrmem_data: .long 0x22000000 .long 0x00000700 .long 0x00000700 .long 0x00000700 .long 0x00000700 .long 0x00000700 .long 0x00000700 .long 0x00018001 .long 0x00018001 .long 0x008c04f5 .long 0x000000b1 .long 0x00000030 .long 0x00000030
上一篇:

下一篇:設計模式之 工廠模式(Factory)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 肇庆市| 定南县| 元谋县| 邮箱| 当涂县| 镇原县| 合江县| 乳源| 新闻| 福鼎市| 深圳市| 红安县| 临夏市| 乐都县| 白城市| 涞源县| 庄浪县| 保康县| 伊吾县| 抚顺县| 梁河县| 临泉县| 临沂市| 綦江县| 墨江| 南开区| 积石山| 达日县| 昭觉县| 遵义县| 扎赉特旗| 吉水县| 鹰潭市| 乐业县| 上虞市| 霍城县| 水富县| 黔东| 台中县| 金平| 日喀则市|