首先要明白几个概念,S3C2440是处理器,是芯片,其中包含了ARM核和各种硬件控制器,这些控制器中就包括内存控制器,而处理器要想使用内存硬件就需要程序员通过代码把该内存设备的参数告诉内存控制器,这也就是内存初始化要做的事情,下面我们从CPU地址空间,sdram工作原理和内存控制器的寄存器设置三方面来说明如何使用sdram 1.CPU的地址空间 S3C2440使用了ADDR0-ADDR26,共27根地址线,即可寻址128M。同时使用nGCS0-nGCS7,共8根选片信号线,也就是说8个片选,每个都有128M的寻址范围,共有1G的寻址空间,即地址范围为0x0-0x40000000。nGCSx引脚在拉低的时候有效,这里的nGCSx和ADDRx都是S3C2440的引脚 同时每个片选对应一个bank,共8个bank,sdram只能焊接在bank6和bank7上。 2.SDRAM的工作原理 0)SDRAM基本概念 mini2440开发板使用了两片32M字节,16bit位宽的SDRAM,并联形成32bit位宽的64M字节内存,实际上SDRAM是一个存储阵列,对于这里使用的SDRAM的容量,一般表示为4Mbit * 16bit * 4Bank,其中16bit表示位宽,4Bank表示有4个L-Bank。所谓位宽,表示该内存芯片一次读写的数据宽度,所以这里我们可以看作在4M范围内,每个地址都有16bit存储空间。SDRAM采用行地址和列地址的方式来索引一个存储单元,因为4M等于2的22次方,所以行地址和列地址加起来需要等于22根地址线才能访问到4M的范围 1)SDRAM的读操作顺序 SDRAM芯片的地址线只有A0-A12,一共13根地址线,通过复用地址线依次发送行地址和列地址,其时序如下: a.发出L-Bank片选信号
S3c2440的sdram
最新推荐文章于 2021-10-20 13:14:46 发布