Part8.2——2440内存初始化
本节按照这样的过程来

在2440手册第五章有启动后内存的设置情况
左边是用nand flash启动的,右边是nor flash启动的

片选6,7一般用来安排SROM或SRAM,所以内存一般放在片选6上面,也就是0x30000000
存储控制器用来将具体地址转化为处理器可以识别的行号、列号、l-bank号 。初始化内存实际上是初始化存储控制器

地址线都接,2440接两个32M的存储单元,每个16位地址线;一个接高16位数据线,一个接低16位数据线。
然后从两个存储单元各接收16bit数据(每个存储单元是16bit,一个l-bank有4M个存储单元),加在一起就是32bit数据。
这样做的原因是可以共享地址线,减少地址线个数。这可以叫做内存并联。
数据宽度和等待状态控制寄存器,这是存储控制器的寄存器。

在这个寄存器中看到ST7\WS7\DW7,下面又是ST6\WS6\DW6,而且每一位都对应着四字节
ST位表示是否使用UB/LB
WS:是否使用等待状态位
DW:数据线宽度 10
然后设置REFRESH BANKCON0~7 BANKSIZE MRSRB6~7寄存器
init_sdram:

浙公网安备 33010602011771号