第20章常用存储器介绍20.1存储器种类内存是计算机结构的重要组成部分。存储器是用于存储程序代码和数据的部件。有了内存,计算机才有记忆功能。基本存储器类型如图21_1 所示。
图20-1 基本内存类型
存储器根据其存储介质的特性主要分为“易失性存储器”和“非易失性存储器”两大类。 “易失性/非易失性”是指断电时存储器中存储的数据内容是否会丢失的特性。由于易失性存储器一般具有较快的存取速度,而非易失性存储器则可以长期存储数据,因此它们在计算机中都发挥着重要作用。在计算机中,易失性存储器最典型的代表是内存,非易失性存储器的代表是硬盘。
20.2RAM存储器RAM是“Random Access Memory”的缩写,翻译为随机存取存储器。所谓“随机存取”是指当读取或写入存储器中的一条消息时,所需的时间与该信息的位置无关。这个词的由来是因为早期的计算机使用磁鼓作为存储器。磁鼓是顺序读写设备,而RAM可以随机读取其内部任意地址的数据,且时间相同,故名。事实上,RAM现在专门用来指称计算机存储器的易失性半导体存储器。
根据RAM的存储机制,分为动态随机存储器(DRAM)和静态随机存储器(SRAM)两种。
20.2.1
DRAM动态随机存取存储器DRAM的存储单元通过电容器的电荷来表示数据。有电荷表示1,无电荷表示0。见图21_2。但随着时间的推移,代表1的电容会放电,代表0的电容会吸收电荷,所以需要定期刷新操作。这就是“动态”二字所描述的特征。刷新操作将检查电容器。如果功率大于满功率的1/2,则认为代表1,电容已充满;如果功率小于1/2,则认为代表0,对电容进行放电,以保证数据的准确性。
图21-2 DRAM 存储单元
20.2.1.1
SDRAM根据DRAM的通信方式,分为同步和异步两种。这两种方法根据通信是否需要时钟信号来区分。图21_3是使用时钟同步的通信序列,它表示时钟上升沿上的有效数据。
图21-3 同步通信时序图
由于使用时钟同步的通信速度更快,因此同步DRAM得到更广泛的应用。这种DRAM称为SDRAM(同步DRAM)。
20.2.1.2
DDR SDRAM为了进一步提高SDRAM的通信速度,人们设计了DDR SDRAM存储器(双倍数据速率SDRAM)。其存储特性与SDRAM无异,但SDRAM仅在上升沿表示有效数据,并且在一个时钟周期内只能表示一份数据;而DDR SDRAM则在时钟的上升沿和下降沿表示一份数据,这意味着它可以在一个时钟周期内表示2位数据,在时钟频率相同的情况下速度快一倍。至于DDRII和DDRIII,它们的通信方式没有区别。主要原因是通信同步时钟的频率提高了。
目前个人电脑中常用的内存条是DDRIII SDRAM内存,一根内存条上包含多个DDRIII SDRAM芯片。
20.2.2.静态随机存储器
静态随机存储器SRAM的存储单元采用锁存器来存储数据,见图21_4。这种电路结构不需要定期刷新充电,可以保持状态(当然,如果断电,数据仍然会丢失),因此这种存储器被称为“静态”RAM。
图214 SRAM 存储单元
同样,SRAM根据其通信方式也分为同步(SSRAM)和异步SRAM。相对而言,异步SRAM的应用更为广泛。
20.2.3。 DRAM和SRAM的应用
比较DRAM和SRAM的结构可以看出,DRAM的结构要简单得多,因此生产相同容量的存储器的成本更低,并且DRAM的集成度更高。 DRAM中的电容器结构决定了其存取速度不如SRAM。特性比较见表21-1。
表211 DRAM 和SRAM 的比较
特点DRAM SRAM 存取速度较慢较快,集成度较高,生产成本较低,无论是否需要刷新。因此,在实际应用中,SRAM一般只用于CPU内部的高速缓存(Cache),而DRAM一般用于外部扩展存储器。
20.3。非易失性存储器
非易失性存储器有多种类型。半导体类型包括ROM和FLASH,其他类型包括光盘、软盘和机械硬盘。
20.3.1。只读存储器
ROM是“Read Only Memory”的缩写,意思是只读存储器。由于技术的发展,后来设计出了可以轻松写入数据的ROM,并沿用了“Read Only Memory”这个名称。现在一般用来指非易失性半导体存储器,包括后面介绍的FLASH存储器。有些人也将其归类为ROM。
20.3.1.1。掩码ROM
MASK ROM 是真正的“只读存储器”。其内部存储的数据在出厂时经过特殊工艺固化。生产后不可修改。其主要优点是批量生产成本低。目前存在生产量大且数据不需要修改的应用。
20.3.1.2。 OTPROM
OTPROM(One Time Programable ROM)是一种一次性可编程存储器。这种内存在出厂时内部是没有数据的。用户可以使用专门的编程器写入自己的数据,但只能写入一次。一旦写入,其内容就无法修改。 OTPROM 通常用于存储NXP 生产的控制器芯片中的密钥。
20.3.1.3.EPROM
EPROM(Erasable Programmable ROM)是一种可重写存储器,解决了PROM芯片只能写入一次的问题。这种存储器利用紫外线照射芯片内部来擦除数据,需要专用设备进行擦除和写入。现在这种存储器基本被淘汰,取而代之的是EEPROM。
20.3.1.4。 EEPROM
EEPROM(电可擦除可编程ROM)是电可擦除存储器。 EEPROM可重复擦除和写入。其擦除和写入由电路直接控制,无需使用外部设备进行擦除和写入。并且可以以字节为单位修改数据,而无需擦除整个芯片。现在使用的ROM芯片主要是EEPROM。
20.3.2.闪存
FLASH存储器也称为闪存。它也是一个可重写的存储器。有的书上将FLASH存储器称为FLASH ROM,但其容量一般比EEPROM大很多,而且擦除时通常以多个字节为单位。例如,有些FLASH存储器采用4096字节作为扇区,最小的擦除单位是一个扇区。根据存储单元电路的不同,FLASH存储器分为NOR FLASH和NAND FLASH,见表21-2。
表212 NOR FLASH 与NAND FLASH 特性比较
特点相同容量的NOR FLASH NAND FLASH存储器价格较贵,较便宜,集成度较低,介质类型较高,随机存储,连续存储,地址线和数据线独立、分开,共享擦除单元,以“扇区/块”擦除,以“扇区/块”擦除,读写单元可以基于字节读写,必须以“块”为单位读写,读取速度较高,写入速度较低,写入速度较低,写入速度较低,坏块数越高,坏块越少,是否支持NOR和NAND的特性差异主要在于内部“地址/数据线”是否分开。
由于NOR的地址线和数据线是分离的,因此可以以“字节”为单位读写数据,满足了CPU的指令译码和执行要求。因此,如果代码指令存储在NOR上,CPU给NOR一个地址,NOR就可以返回一个数据给CPU供CPU执行,而无需额外的处理操作。
由于NAND的数据线和地址线是共享的,因此只能以“块”的形式读写数据。如果代码指令存储在NAND上,CPU给NAND一个地址后,无法直接返回该地址的数据,因此不满足指令解码要求。表21-2“是否支持XIP”中的最后一项描述了这种立即执行功能(eXecute In Place)。
如果代码存储在NAND上,则可以将其加载到RAM存储器中,然后由CPU执行。因此,NOR从功能上可以认为是一种断电后不丢失数据的RAM,但其擦除单元与RAM不同,读写速度也比RAM慢很多。
另外,FLASH的擦除次数是有限的(现在一般在10万次左右)。当其使用接近其寿命时,写入操作可能会失败。由于NAND通常是整体擦除和写入的,因此如果块中的一位发生故障,则整个块都会发生故障。这称为坏块。而且,由于擦除和写入过程复杂,NOR整体的寿命更长。由于坏块可能存在,FLASH存储器需要“检测/纠错(EDC/ECC)”算法来保证数据的正确性。
由于两种FLASH存储器特性的差异,NOR FLASH一般用于代码存储场合,例如嵌入式控制器内部的程序存储空间。 NAND FLASH一般用在存储大量数据的场合,包括SD卡、U盘、固态硬盘等都属于NAND FLASH类型。
在本教程中,将举例说明如何使用RAM、EEPROM 和闪存。
标题:瑞萨RA系列FSP库开发实战指南之常用存储器介绍
链接:https://yqqlyw.com/news/sypc/68504.html
版权:文章转载自网络,如有侵权,请联系删除!