内存知识小结

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

内存的基本知识小结

1.内存的基本分类

1.1.DRAM

由小电容组成,需要刷新(充电),所以导致速度较慢。

1)        SDRAM(2440常用)

2)        DDR(6410常用)

3)        DDR2(210常用)

4)        其他衍生产品

以上几种都是速度依次增高。

1.2.SRAM

不用刷新,速度快,价格昂贵。

2.深入认识DRAM

2.1.表结构

内存的内部结构如同一张表格,我们称为l-bank类似与下图,其中每个单元格中可以存放数据。


2.2.内存寻址

内存经过以下信息进行寻址:

1)        L-Bank

一方面由于技术、成本等原因,不可能只做一个全容量的L-Bank,而另一方面由于SDRAM的工作原理限制,单一的L-Bank将会造成非常严重的寻址冲突,大幅降低内存效率。所以人们在SDRAM内部分割成多个L-Bank。

因此我们在寻址时就要先确定是哪个L-Bank,然后再在这个选定的L-Bank中选择行列地址进行寻址。

2)        行地址(Row)

3)        列地址(Column)

其内部构造如下:



2.3.内存芯片容量计算

内存芯片的容量就是所有的L_Bank中的存储单元的总容量,那么我们可以得到总的存储但与数量就是:

存储单元数量=行数×列数(一个L-Bank的存储单元数量)×L-Bank的数量

3.内存相关的编程

3.1.内存的位置

本以为拿到了内存的初始化流程,就可以开始写代码了,但是在写的过程中会发现其有部分硬件的东西需要了解一下,首先是内存的位置,再以前的博文中说过地址布局的问题,下面以210为例进行分析:

从上图可知210的DRAM分为两个区域,DRAM0和DRAM1总共为1.5G大小,分别通过DMC0和DMC1进行控制,我们要根据自己手头的板子进行确定。

猜你喜欢

转载自blog.csdn.net/Kair_Wu/article/details/48435027