裸机程序三:通过存储控制器初始化内存SDRAM

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/heyuqian_csdn/article/details/53236825

1、  常见存储器及其区别 


参考《ROMSDRAMRAMDRAMSRAMFLASH的区别》    

  http://wenku.baidu.com/link?url=wljvq8dn48P-YlRKhbxW8F9uN8s7Ci_DjKUjE8_Fks1t6CiGGwed-MCq-jP61n4Po-R6xsa9Rf-nU47MbIbPxAJzY4a-smh6YG-vTK_e6_y

注意不要混淆SRAMSDRAM SRAM是静态存储器,而SDRAM是动态存储器DRAM的一种,常用作内存。


2SDRAM存储结构以及容量计算


参考《深入了解内存》

http://blog.chinaunix.net/uid-20321537-id-1966741.html

以及《详解嵌入式片上资源之SDRAM内存

http://www.crifan.com/summary_embedded_peripherals_sdram/


SDRAM由多个bank组成,每个bank又由多个存储单元堆叠在一起组成。这些存储单元分别存储数据的一个bit位,图中每个bank中有4个存储单元堆叠,

因此数据的位宽为4,也就是对于同一个地址一次能取出4bit的数据。假设上图每个存储单元的大小为4M,那么该存SDRAM通常表示为存储单元大小x位宽 x bank = 4M x 4bit x 2bank

3SDRAM硬件连线方式


JZ2440_v3内存由两片EM63A165TS-6G并联而成。查看EM63A165TS-6G芯片手册,可知该SDRAM4bank组成,每个bank164M大小的存储单元堆叠而成,即位宽为16

 The EM63A165 SDRAM is a high-speed CMOS synchronous DRAM containing256 Mbits. It is internally configured as 4 Banks of 4M word x 16 DRAM

 芯片引脚主要包含时钟、地址数据线、和一些控制线(片选、行地址选通、列选通)



查看JZ2440_V3电脑图,两片SDRAM引脚连接方式如下:

红色框中片选BA0BA1是接在S3C2440地址线2425上的。这个是根据S3C2440芯片手册第5Memory control table SDRAM Bank Address Configuration Example而来:

另外绿色框中SDRAM的地址线是从0开始,但是连接到S3C2440,却是从2开始,这是由于SDRAM地址增加一位,数据增加了32bit也就是4个字节,而S3C2440地址线也就是逻辑地址线增加一位,数据应该只增加1个字节。


4、  SDRAM读写过程

5、  Memory Control储控制器配置

6、汇编代码以及程序流程分析


猜你喜欢

转载自blog.csdn.net/heyuqian_csdn/article/details/53236825