sram sdram fram eeprom norflash nandflash emmc……各种ram和rom的区分

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(synchronous dram同步动态随机存储器):一般的嵌入式产品里面的内存都是用的SDRAM,电脑的内存也是用的这种RAM叫DDR SDRAM,在mini2440开发板中,S3C2440的外部接了两个32MB的SDRAM,这就是内存。注意不是在芯片的内部,而是在芯片的外部。

缓冲存储器 :缓存是在芯片内部,内存在芯片的外部。缓存就是数据交换的缓冲区,当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找,由于缓存的存储速度比内存快的多,故缓存的作用就是帮助硬件更快的运行,电脑里最快的缓存是CPU里面镶嵌的L1和L2缓存,显卡的显存是给显卡运算芯片用的缓存,硬盘上也有16M或32M的缓存。缓存只是内存中少部分数据的复制品,所以CPU到缓存中寻找数据时,也会出现找不到的情况,这时CPU还是回到内存中去寻找数据,这样系统的速率就慢下来了,不过CPU还是会吧这些数据复制到缓存当中去,以便下一次不要再到内存中去取。

EEPROM(electric erasable eprom)电可擦除可编程只读存储器

FLASH(flash eeprom): 即可擦除又可快速读取数据,又称闪存,u盘和mp3,bootloader存储器,替代了eeprom。flash属于广义的EEPROM,由于它也是电擦除的rom。可是为了差别于一般的按字节为单位的擦写的EEPROM。我们都叫它flash。
flash做的改进就是擦除时不再以字节为单位,而是以块为单位。flash分为nor flash和nand flash。norflash数据线和地址线分开,能够实现ram一样的随机寻址功能,能够读取不论什么一个字节。可是擦除仍要按块来擦。nandflash相同是按块擦除,可是数据线和地址线复用。不能利用地址线随机寻址。读取仅仅能按页来读取。(nandflash按块来擦除,按页来读。norflash没有页)

NORFLASH:其最大的特点是norflash里面的程序可以直接运行,不必再把代码读到系统的RAM中,mini2440开发板是2M的norflash,有自己的地址线和数据线,能够採用类似于memory的随机訪问方式。在norflash上能够直接执行程序,所以norflash能够直接用来做boot。
norflash(nor falsh)内部有sram,属于nvram,传输速度高、可直接运行应用程序,可以不用传到ram上运行,写入和擦除速度低,擦除前需要置零,读取nor比nand快一些,容量没nand大适合做代码存储并EIP的,nandflash适合用来作大量数据存储的。
norflash的读取速度比nandflash稍快,但擦写速度比nandflash慢非常多。

Nandflash:存储密度大,擦除简单,擦除和写入比nor快很多,但需要特殊的系统接口单元。类似电脑的硬盘,CPU从里面读取数据的速度很慢,他里面的代码也不能直接运行,要想运行需要把nandflash里面的数据读到内存里面,然后CPU才能执行,但是他的集成度很高,成本很低。属于IO设备,数据、地址、控制线都是共用的,须要软件区控制读取时序,所以不能像nor flash、内存一样随机訪问,不能EIP(片上执行)。因此不能直接作为boot。

EMMC:   nandflash + 主控ic+mmc卡 便于开发


S3C2440把Bootloader烧到nand flash上启动,由于在S3C2440里有一个内置的SRAM。叫做stepping stone(垫脚石,非常形象…)。系统启动加电后,会把nandflash上的起始4KB的内容复制到SRAM里运行,这样就实现了从nandflash启动。

猜你喜欢

转载自blog.csdn.net/hxlawf/article/details/89535255