处理器系统中可能包含多种类型的存储部件,如Flash、SRAM、SDRAM、ROM以及用于提高系统性能的Cache等等。刚刚接触芯片开发的工程师常常被各式各样的存储和存储管理弄得晕头转向,因此本文简单对ARM架构和基于ARM架构的处理器上的内存及内存管理做一个简单的汇总和整理。文章首先阐述了内存的分类,其次以ARM920T为例描述了ARM芯片包含的存储部件和存储管理单元,最后简单阐述了智能机中的存储部件。
一,存储部件的分类
1,RAM(Random Access Memory)-随机存取存储器
RAM在任何时候都可以被读写,通常作为操作系统或其他正在运行程序的临时存储介质(内存,掉电后RAM不能保留数据。RAM有SRAM、DRAM两大类。
SRAM(Static RAM/SRAM)写入的数据不会消失,直到下次写入或掉电,是目前读写最快的存储设备,价格昂贵,只用于要求苛刻的地方,如Cache。
DRAM(Dynamic RAM/DRAM)保留数据时间短,速度比SRAM慢,但快于其他任何ROM,比SRAM便宜很多,常用于计算机内存。DRAM种类很多,常见的有FPRAM/FastPage、EDORAM、RDRAM、SGRAM、SDRAM、DDR RAM等。
SDRAM(Synchronous DRAM)同步动态随机存储器,是一种改善了结构的增强型DRAM。SDRAM的接口相对复杂,需要相应的控制器支持,但由于容量大、价格便宜、访问速度快,所以常用在对内存容量和处理速度要求高的应用场合,在这种场合中,相应的处理器(CPU)都自带有SDRAM控制器。
DDR RAM(Date-Rate RAM)也称作DDR SDRAM,是目前电脑中用得最多的内存,这种改进型的RAM和SDRAM是基本一样的,但是它数据传输速率加倍了,一个时钟内可以进行两次数据书读写。
2,ROM(Read Only Memory)--只读存储器
ROM可在任何时候读取,断电后能保留数据,数据一但旦写入只能用特殊方法更改或无法更改。因此ROM相当于PC机上的硬盘,用来存储和保存数据。嵌入式系统中ROM常用来存放可执行文件映像。RAM和ROM相比,两者的最大区别是RAM在断电以后保存在上面的数据会自动消失,而ROM就不会。随着ROM存储介质发展,应用中经常提到的有ROM、PROM、EPROM、2PROM。
ROM:Read Only Memory,只读存储器。ROM中内容只能读不能改,在工厂里通过特殊的方法将数据烧录进去。
PROM:Programmable ROM,可编程ROM。可通过专用的编程器将数据写入,但是只可写一次,一旦写入再无法修改。
EPROM:Erasable Programmable ROM,可擦除可编程ROM。芯片写入要用专用的编程器,可重复擦除和写入,擦除通过紫外线照射实现。
EEPROM:Electrically Erasable Programmable ROM,
电可擦除可编程ROM。价格高,写入慢。但其写入、擦除不需借助其它设备,电子信号即可实现。用厂商提供的专用刷新程序并利用一定的编程电压就可以轻而易举地改写内容。手机软件一般放在EEPROM中,我们打电话,有些最后拨打的号码,暂时是存在SRAM中的,不是马上写入通过记录(通话记录保存在EEPROM中),因为当时有很重要工作(通话)