微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 内存扩展测试

内存扩展测试

时间:11-22 来源:互联网 点击:
AT91SAM9263EK IAR

内存容量从64M扩展到128M

basic-lcd-project-at91sam9263-ek-iar\basic-lcd-project-at91sam9263-ek\at91lib\boards\at91sam9263-ek\at91sam9263\sdram.icf

/*-Memory Regions-*/
define symbol __ICFEDIT_region_SDRAM_start__ = 0x20000000;
define symbol __ICFEDIT_region_SDRAM_end__= 0x27FFFFFF;

basic-lcd-project-at91sam9263-ek-iar\basic-lcd-project-at91sam9263-ek\resources\iar\at91sam9263-ek-sdram.mac

//* psdrc->SDRAMC_CR = AT91C_SDRAMC_NC_9 | AT91C_SDRAMC_NR_13 | AT91C_SDRAMC_CAS_2 |
// AT91C_SDRAMC_NB_4_BANKS | AT91C_SDRAMC_DBW_32_BITS | AT91C_SDRAMC_TWR_2 | AT91C_SDRAMC_TRC_7 |
// AT91C_SDRAMC_TRP_2 | AT91C_SDRAMC_TRCD_2 | AT91C_SDRAMC_TRAS_5 | AT91C_SDRAMC_TXSR_8 ;
// __writeMemory32(0x85227259,0xFFFFE208,"Memory");
__writeMemory32(0x8522725A,0xFFFFE208,"Memory");

应用程序编译到:

编译到sram, 不调用sdram初始化,程序可以运行,内存环回,还是64M
调用SDRAM初始化,程序可以运行,内存不环回,128M
修改配置文件无关

编译到SDRAM, 不修改配置文件,程序可运行,内存环回,64M
修改配置文件,程序可以运行,内存不环回,128M

sdram测试程序,必须编译到Sram,

编译到SDRAM, 调用SDRAM初始化函数,仿真时程序不死机

uboot引导运行时,程序死机。
uboot运行的时候,依然进行了SDRAM的初始化,相当于程序在SDRAM里面运行,然后又去初始化自己,显然是不可以的,所以程序死机。但是仿真的时候可以,可以理解为仿真器强制完成了这个过程,但是调用SDRAM读写函数的时候也会死机。

所以,当应用128M 内存的时候,要么编译到SRAM,调用SDRAM的初始化函数,要么修改uboot,直接初始化大内存。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top