天天看点

STM32存储器

STM32 存储器

一.存储器

1.RAM,ROM,FLASH

ROM(Read Only Memory)只读存储器和RAM(Random Access Memory)随机存储器都是半导体存储器。ROM 掉电不丢失,RAM 掉电丢失。

RAM

RAM分为两大类,一种是静态RAM(Static RAM 即SRAM),另一种是动态RAM(Dynamic RAM,即DRAM)。 SRAM,所谓“静态”是指只要不掉电,存储在SRAM中的数据就不会丢失。SRAM是目前为止读写最快的存储设备,它经常被用在CPU的一级缓冲,二级缓冲。价格昂贵。DRAM,保留数据时间很短,速度比SRAM慢,但是要比ROM快。DRAM分为很多种,常见的有FPRAM/FashPAGE,EDORAM,SDRAM,DDR RAM,RDRAM,SGRAM以及WRAM等。

DDR RAM(Date - Rate RAM)也被称作为DDR SDRAM,这种改进型的RAM 和SDRAM不同之处在于它可以一个时钟读写两次数据,这样就使数据传输的速度加倍了。目前电脑用的最多的内存就是DDR RAM,许多高端的显卡中也配有DDR RAM 来提高带宽。

ROM

ROM可以分为PROM,EPROM,EEPROM。PROM是一次性的,也就是软件灌入之后无法修改了,现在已经被淘汰了。Eprom是一种通用的存储器,它是通过紫外线的照射来擦出的。E2PROM 是通过电子擦出的,但写入时间很慢。

Flash

Flash存储器又称为闪存,它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3就是用的这种存储器。近年来Flash全面代替了ROM(EPROM)在嵌入式中的地位,用作存储Bootloader 以及操作系统或者程序代码或者直接当作硬盘使用。

目前Flash主要分为两种NOR Flash和NADN Flash。NOR Flash数据线和地址线分开的,可以实现ram一样的随机寻址功能,可以读取任何一个字节,但是擦除仍要按块来擦。NAND Flash 同样是按块来擦除,但是数据线和地址线复用,不能利用地址线随机寻址。读取只能按页来读取。(nandflash安块来擦除,按页来读,norflash没有页)由于nandflash引脚上复用,因此读取速度比nor flash慢一点儿,但是擦除和写入速度比nor flash快很多。nand flash内部电路更简单,因此数据密度大,体积小,成本也低。因此大容量的都是nand flash。小容量的2-12M的多是nor flash。使用寿命上,nand flash的擦除次数是nor的数倍。而且nand flash可以标记坏块,从而使软件跳过坏块。nor flash一旦损坏便无法再用。因为nor flash可以进行字节寻址,所以在nor flash中运行。嵌入式系统多用一个小容量的nor flash存储引导码,用一个大容量的nand flash 存放文件系统和内核。 Flash 和 EEPROM 的区别: EEPROM的擦除是以字节为单位的,他可以往每一个bit中写入0或者1。但是这样做电路设计复杂,成本高。因此目前的EEPROM都是十几千字节到几百千字节,绝少有超过512K的。 Flash是在EEPROM之后发展而来的,它做的改进是在擦除时不再以字节为单位,而是以块为单位,这样简化了电路,数据密度更高,降低了成本。在STM32可以用flash模拟eeprom用来保存少量数据如蓝牙link key等!

继续阅读