存储器(Memory)是现代信息技术中用于保存信息的记忆设备。其概念很广,有很多层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。计算机中全部信息,包括输入的原始数据、计算机程序、中间运行结果和终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。有了存储器,计算机才有记忆功能,才能保证正常工作。计算机中的存储器按用途存储器可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。
存储器的分类特点及其应用
在嵌入式系统中常用的存储器类型分为三类:
1.随机存取的RAM;
2.只读的ROM;
3.介于两者之间的混合存储器
1.随机存储器(Random Access Memory,RAM)
RAM能够随时在任一地址读出或写入内容。 RAM的优点是读/写方便、使用灵活;
RAM的缺点是不能长期保存信息,一旦停电,所存信息就会丢失。 RAM用于二进制信息的临时存储或缓冲存储
2.只读存储器(Read-Only Memory,ROM)
ROM中存储的数据可以被任意读取,断电后,ROM中的数据仍保持不变,但不可以写入数据。
ROM在嵌入式系统中非常有用,常常用来存放系统软件(如ROM BIOS)、应用程序等不随时间改变的代码或数据。
ROM存储器按发展顺序可分为:掩膜ROM、可编程ROM(PROM)和可擦写可编程ROM(EPROM)。
3. 混合存储器
混合存储器既可以随意读写,又可以在断电后保持设备中的数据不变。混合存储设备可分为三种:
EEPROM NVRAM FLASH
(1)EEPROM
EEPROM是电可擦写可编程存储设备,与EPROM不同的是EEPROM是用电来实现数据的清除,而不是通过紫外线照射实现的。
EEPROM允许用户以字节为单位多次用电擦除和改写内容,而且可以直接在机内进行,不需要专用设备,方便灵活,常用作对数据、参数等经常修改又有掉电保护要求的数据存储器。
(2) NVRAM
NVRAM通常就是带有后备电池的SRAM。当电源接通的时候,NVRAM就像任何其他SRAM一样,但是当电源切断的时候,NVRAM从电池中获取足够的电力以保持其中现存的内容。
NVRAM在嵌入式系统中使用十分普遍,它的缺点是价格昂贵,因此,它的应用被限制于存储仅仅几百字节的系统关键信息。
(3)Flash
Flash(闪速存储器,简称闪存)是不需要Vpp电压信号的EEPROM,一个扇区的字节可以在瞬间(与单时钟周期比较是一个非常短的时间)擦除。
Flash比EEPROM优越的方面是,可以同时擦除许多字节,节省了每次写数据前擦除的时间,但一旦一个扇区被擦除,必须逐个字节地写进去,其写入时间很长。
存储器工作原理
这里只介绍动态存储器(DRAM)的工作原理。
工作原理
动态存储器每片只有一条输入数据线,而地址引脚只有8条。为了形成64K地址,必须在系统地址总线和芯片地址引线之间专门设计一个地址形成电路。使系统地址总线信号能分时地加到8个地址的引脚上,借助芯片内部的行锁存器、列锁存器和译码电路选定芯片内的存储单元,锁存信号也靠着外部地址电路产生。
当要从DRAM芯片中读出数据时,CPU首先将行地址加在A0-A7上,而后送出RAS锁存信号,该信号的下降沿将地址锁存在芯片内部。接着将列地址加到芯片的A0-A7上,再送CAS锁存信号,也是在信号的下降沿将列地址锁存在芯片内部。然后保持WE=1,则在CAS有效期间数据输出并保持。
当需要把数据写入芯片时,行列地址先后将RAS和CAS锁存在芯片内部,然后,WE有效,加上要写入的数据,则将该数据写入选中的存贮单元。
存储器芯片
由于电容不可能长期保持电荷不变,必须定时对动态存储电路的各存储单元执行重读操作,以保持电荷稳定,这个过程称为动态存储器刷新。PC/XT机中DRAM的刷新是利用DMA实现的。首先应用可编程定时器8253的计数器1,每隔1⒌12μs产生DMA请求,该请求加在DMA控制器的0通道上。当DMA控制器0通道的请求得到响应时,DMA控制器送出到刷新地址信号,对动态存储器执行读操作,每读刷新一行。