一文读懂SRAM,DRAM,SDRAM,以及NORFLASH,NANDFLASH
经典丶
|
2020.03.29
|
0
+关注

内存SRAM、DRAM、SDRAM

SRAM:静态随机存储器,不需要刷新电路,这使得静态RAM比动态的RAM要快的多,但是,由于他所含的器件较多,集成度较低,不适合做大容量的内存,一般用在处理器的缓存里面,SRAM的速度非常快,在快速读取和刷新时能够保证数据完整性,SRAM的电路结构非常复杂,制造相同容量的SRAM比DRAM的成本高的多,正因如此,才使其发展受到了限制,在S3C2440片内,有16KB的instruction cache(指令缓存)16KB的data cache(数据缓存)和4KB的boot internal SRAM,但是我们能使用的只有4KB的boot internal SRAM,这4KB的SRAM是从nandflash启动的时候用来加载uboot的。

DRAM:动态随机存储器,每隔一段时间就要刷新一次数据,才能保证数据不丢失,SDRAM:同步动态随机存储器,也就是通常所说的内存,内存是代码的执行空间,用来执行程序,同步是指数据的读写需要时钟来同步,DRAM和SDRAM由于实现工艺问题,容量较SRAM大,但是读写速度不如SRAM,一般的嵌入式产品里面的内存都是用的SDRAM,电脑的内存也是用的这种RAM叫DDR SDRAM,在mini2440开发板中,S3C2440的外部接了两个32MB的SDRAM,这就是内存。注意不是在芯片的内部,而是在芯片的外部。

缓冲存储器:一般为SRAM

对于MPU,缓存SRAM是在芯片内部,用于SDRAM的缓冲,内存SDRAM在芯片的外部。个别芯片一级缓存在芯片内,二级缓存在芯片外。单片机内存一般只有SRAM,可以外扩SDRAM。缓存就是数据交换的缓冲区,当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找,由于缓存的存储速度比内存快的多,故缓存的作用就是帮助硬件更快的运行,电脑里最快的缓存是CPU里面镶嵌的L1和L2缓存,显卡的显存是给显卡运算芯片用的缓存,硬盘上也有16M或32M的缓存。

缓存只是内存中少部分数据的复制品,所以CPU到缓存中寻找数据时,也会出现找不到的情况,这时CPU还是回到内存中去寻找数据,这样系统的速率就慢下来了,不过CPU还是会吧这些数据复制到缓存当中去,以便下一次不要再到内存中去取。

Norflash和nandflash

NORFLASH:其最大的特点是norflash里面的程序可以直接运行,不必再把代码读到系统的RAM中。一般用于单片机flash。MPU的启动代码Uboot部分也是烧写在这儿。

Nandflash:类似电脑的硬盘,CPU从里面读取数据的速度很慢,他里面的代码也不能直接运行,要想运行需要把nandflash里面的数据读到内存里面,然后CPU才能执行,但是他的集成度很高,成本很低,所以一般安装大型操作系统及软件。

NANDFLASH启动的步骤:

1:nand前面4K的代码拷贝到SRAM当中,不管这4K里面是程序还是垃圾值,它都会拷贝的

2:然后CPU从内存的0地址开始执行,注意这个时候0地址是指SRAM的0地址,这两步是硬件自动帮助我们完成的。

NORFLASH启动的步骤:

Norflash可以像内存一样读它,可以像内存一样读数据, 而nandflash好像是串行线编址,所以好像不能识别每一个字节,

1:NROFLASH启动的时候,0地址不再是指向内存,0地址是指向NORFLASH了,

2:CPU从0地址开始执行。

精选留言
延伸阅读
2020.10.02
13892阅读
更多报告干货
写留言
1967
阅读
收藏
回到顶部