ARM嵌入式存储器及半导体存储器

ARM嵌入式存储的结构图

img

ARM嵌入式存储器的描述

1、寄存器

ARM微处理器共有37个32位寄存器,其中31个为通用寄存器,6个为状态寄存器。但是这些寄存器不能被同时访问,具体哪些寄存器是可以访问的,取决ARM处理器的工作状态及具体的运行模式。但在任何时候,通用寄存器R14~R0、程序计数器PC、一个状态寄存器都是可访问的。

img

2、Cache

Cache 的英文原意是 ' 储藏 ' ,它一般使用 SRAM 制造,它与 CPU 之间交换数据的速度高于 DRAM ,所以被称作 ' 高速缓冲存储器 ' ,简称为 ' 高速缓存 ' 。由于 CPU 的信息处理速度常常超过其它部件的信息传递速度,所以使用一般的 DRAM 来作为信息存储器常常使 CPU 处于等待状态,造成资源的浪费。 Cache 就是为了 解决 这个问题而诞生的。在操作 系统 启动以后,CPU 就把 DRAM 中经常被调用的一些系统信息暂时储存在 Cache 里面,以后当 CPU 需要调用这些信息时,首先到 Cache 里去找,如果找到了,就直接从 Cache 里读取,这样利用 Cache 的高速性能就可以节省很多时间。大多数 CPU 在自身中集成了一定量的 Cache ,一般被称作 ' 一级缓存 ' 或 ' 内置 Cache' 。这部分存储器与 CPU 的信息交换速度是最快的,但容量较小。大多数主板上也集成了 Cache ,一般被称作 ' 二级缓存 ' 或 ' 外置 Cache' ,比内置 Cache 容量大些,一般可达到 256K ,现在有的主板已经使用了 512K ~ 2M 的高速缓存。在最新的 Pentium 二代 CPU 内部,已经集成了一级缓存和二级缓存,那时主板上的 Cache 就只能叫作 ' 三级缓存 ' 了。

img

3、SRAM & DRAM

SRAM:

静态随机存取存储器(Static Random-Access Memory,SRAM)是随机存取存储器的一种。所谓的“静态”,是指这种存储器只要保持通电,里面储存的数据就可以恒常保持。相对之下,动态随机存取存储器(DRAM)里面所储存的数据就需要周期性地更新。然而,当电力供应停止时,SRAM储存的数据还是会消失(被称为volatile memory),这与在断电后还能储存资料的ROM或闪存是不同的。

DRAM:

DRAM(Dynamic Random Access Memory)也称动态随机存取存储器,是最为常见的系统内存。DRAM只能将数据保持很短的时间,原理是利用电容内存储电荷的多寡来代表一个二进制比特(bit)是1还是0,每一个bit只需要一个晶体管加一个电容。但是电容不可避免的存在漏电现象,如果电荷不足会导致数据出错,因此电容必须被周期性的刷新,这也是DRAM的一大特点。由于这种需要定时刷新的特性,因此被称为“动态”存储器。相对来说,“静态”存储器(SRAM)只要存入数据后,纵使不刷新也不会丢失记忆。

比较:

RAM\PROPERTY SRAM DRAM
特性 只要保持通电,储存的数据就可以恒常保持 所储存的数据就需要周期性地更新
读写速度 非常快 相比SRAM较慢
用途 CPU 内部的一级缓存以及内置的二级缓存 内存条
存储信息 触发器 电容
破坏性读出
集成度

4、Flash

Flash闪存是属于内存器件的一种。闪存则是一种非易失性( Non-Volatile )内存,在没有电流供应的条件下也能够长久地保持数据,其存储特性相当于硬盘,这项特性正是闪存得以成为各类便携型数字设备的存储介质的基础。

NOR Flash:

NOR Flash 的特点是芯片内执行(XIP ,execute In Place),这样应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。NOR 的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响到它的性能。

NAND Flash:

NAND的结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于Flash的管理需要特殊的系统接口。通常读取NOR的速度比NAND稍快一些,而NAND的写入速度比NOR快很多。

比较:

Flash/Property NOR Flash NAND Flash
性能 读速度稍快 写入速度快得多
接口差别 NOR flash带有SRAM接口,有足够的地址引脚来寻址,可以很容易地存取其内部的每一个字节。 NAND器件使用复杂的I/O口来串行地存取数据,各个产品或厂商的方法可能各不相同。8个引脚用来传送控制、地址和数据信息。
用途 NOR主要应用在代码存储介质,常作为容量为1~16MB闪存。 NAND适合于数据存储,容量常为8~128MB

5、其他的非易失存储器

半导体存储器的发展历史

ROM和RAM指的都是半导体存储器。ROM的本义是Read Only Memory的意思,也就是说这种存储器只能读,不能写。而RAM是Random Access Memory的缩写。这个词的由来是因为早期的计算机曾经使用磁鼓作为内存,而磁鼓和磁带都是典型的顺序读写设备。RAM则可以随机读写,因此得名。

只读存储器(ROM)

ROM有很多种类,适合不同的使用需要。常见的有:

Mask-ROM

这种ROM的数据是在生产的时候写入的,实际上它很象CD光盘的原理,在半导体的光刻工艺过程中写入了数据状态。这中ROM的数据是不可能丢失的,而且它的成本非常低。在不需要数据更新的设备中,Mask-ROM被非常广泛的使用。但是它完全不能擦写的特点,使得它在计算设备中不那么受欢迎。比如在掌上电脑中,我知道的只有Handspring生产的Visor系列的Palm OS PDA,和SONY生产的低端Clie SL-10使用了这种ROM。

FLROM(Fusible Link ROM)

在芯片生产商处写入数据,有的时候不那么灵活,还会有保密问题。所以还有一种叫做Fusible Link的ROM。这种ROM在内部使用了一种可以熔断的连线,设备制造商可以用高电压写入数据,数据写入之后,内部的部分连线就熔断了,数据就永久保持在内部,和Mask ROM一样了。这种一次性写入的ROM也称为PROM,不太常用。

EPROM(Erasible Programmable ROM)

这是一种可以多次写入的ROM了。因为可以多次写入,所以叫做Programmable。EPROM的写入需要专门的设备,而数据的擦除则需要把ROM上的 保护标签取下,把内部芯片暴露在紫外光的照射下一段时间。实际上这种ROM称为Programmable相当勉强,因为写入电路是专用的,通常不会集成在 计算设备之中,所以它通常做成不常更新,而且是插拔方式的。当需要更新的时候,取下来放入专用的写入设备改写。早期的某些电脑主板的BIOS,就使用了这种ROM。

EEPROM(E2PROM,Electrically Erasible Programmable ROM)

与EPROM不同,E2PROM的擦写可以用电路而不是紫外线完成。擦写的电压比读入电压要高,通常在20V以上,擦写速度也较EPROM快,在毫秒量级。EEPROM一度使用很多,不过目前被一种改进的ROM—Flash ROM代替了。

Flash ROM(Flash EEPROM)

这是目前最常见的可擦写ROM了,广泛的用于主板和显卡声卡网卡等扩展卡的BIOS存储上。而现在各种邮票尺寸的半导体存储卡,包括Compact Flash/CF,Smart Media/SM,Security Digital/SD,Multimedia Card/MMC,Memory Stick/MS,以及FUJI新出的标准vCard,还有各种钥匙链大小的USB移动硬盘/USB Drive/优盘,内部用的都是Flash ROM。绝大多数PDA/掌上电脑也用它来存储操作系统和内置程序。还有数码相机,数码摄像机,MD/MP3播放器内部的Fireware(用于存储DSP/ASIC程序),也大多使用Flash ROM了。与EEPROM相比,Flash ROM有写入速度快,写入电压低的优点。不过它的成本也是较高的,所以在很多低端设备中,仍然会有厂商使用Mask ROM来降低成本,提高价格竞争力。

随机存取存储器(RAM)

RAM有两大类,一种称为静态RAM(Static RAM/SRAM)。SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵。所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓 冲。另一种称为动态RAM(Dynamic RAM/DRAM),动态RAM的速度比SRAM慢,不过比任何ROM都要快。计算机内存就是DRAM的。 DRAM的种类太多了,无法一一列举,这里只列出最常见的:

DRAM

如果和其它DRAM种类一起说这个名词,那它指的就是最老式的一代DRAM存储器,在寻址上没有作任何优化,速度很慢,只在386以前的电脑上有了。

FPRAM(FastPage RAM)

快页内存,以页面方式读取数据,比DRAM快,486上用过。

EDORAM(Extended Data Output RAM)

这是比快页内存更快的一种读取方式,广泛见于486和早期Pentium时代的电脑,PC上使用的EDO RAM通常是72针脚单面的,现在你还可以在比较老的一些电脑中找到它们。在PDA/掌上电脑中,这种EDO内存还在广泛使用着。

SDRAM(Sychronous DRAM)

同步内存。早期的PC内存的时钟和CPU外部时钟不是同步的,这就会导致在每次读写数据的时候有个协同时间,效率不高,而SDRAM是可以和CPU的外部时钟同步运行的,提高读写效率。Pentium到Pentium III时代一直是SDRAM主宰着PC,这种168pin双面针脚的内存条现在仍然普遍。在低端的显示卡上也常常使用这种内存。

DDR RAM(DDR SDRAM,Double Date-Rate RAM)

这种改进型的RAM和SDRAM是基本一样的,不同之处在于它可以在一个时钟读写两次数据,这样就使得数据传输速度加倍了。这是目前电脑中用得最多的内存,而且它有着成本优势,事实上击败了Intel的另外一种内存标准-Rambus DRAM。在很多高端的显卡上,也配备了高速DDR RAM来提高带宽,这可以大幅度提高3D加速卡的像素渲染能力。

RDRAM(Rambus DRAM)

这是Intel公司的专利技术,和原来的内存读写方式有很大不同,它使用了一种高速串行方式,对于连续读写的时候非常有利,不过在随机读写的时候相对于DDR RAM的优势不明显。而且成本高昂,最终在Intel这个巨人的强力推动下也没有成为主流,只用在一些高档的P IV电脑和服务器上。

VRAM(Video RAM)

这是一种双端口的RAM,双端口的好处是一端写入的时候另一端还可以在读出,最常见的应用是用在显卡上,一端可以写入屏幕数据,另外一端由RAMDAC(数字/模拟信号转换器)读出并转换成视频信号输出到显示器上。对于使用高分辨率显示器的平面设计者来说,显卡上安装高速的VRAM必不可少。VRAM成本很高。

MDRAM(Multibank Dynamic RAM)

多BANK动态内存,它是MoSys公司开发的一种VRAM(视频内存),它把内存划分为32KB的一个个BANK(存储库),这些BANK可以单独访问,每个储存库之间以高于外部的数据速度相互连接。其最大特色是具有"高性能、低价位"特性,最大传输率高达666MB/S,一般用于高速显卡。

SGRAM (Synchronous Graphics RAM)

是一个SDRAM的改良型号,成本较低,但是可以以类似VRAM双端口的方式工作。Matrox曾经用它来武装Mystique系列低端显卡。

WRAM(Windows RAM)

是VRAM的一个简化型号,Matrox曾经用它来武装Millennium系列高档显卡。 显存,也被叫做帧缓存,它的作用是用来存储显卡芯片处理过或者即将提取的渲染数据。在显示屏上看到的画面是由一个个的像素点构成的,而每个像素点都以4至32甚至64位的数据来控制它的亮度和色彩,这些数据必须通过显存来保存,再交由显示芯片和CPU调配,最后把运算结果转化为图形输出到显示器上。 作为显示卡的重要组成部分,显存一直随着显示芯片的发展而逐步改变着。从早期的EDORAM、MDRAM、SDRAM、SGRAM、VRAM、WRAM等到今天广泛采用的DDR SDRAM显存经历了很多代的进步。目前市场中所采用的显存类型主要有SDRAM,DDR SDRAM,DDR SGRAM三种。

【参考】:

http://www.baike.com/wiki/DRAM

http://www.baike.com/wiki/RAM

https://blog.csdn.net/ldld1717/article/details/50557129

https://blog.csdn.net/sandeldeng/article/details/52954781

https://blog.csdn.net/wolinxuebin/article/details/7391287

https://blog.csdn.net/calmevtime/article/details/6177456

https://zhidao.baidu.com/question/2120020706294858187.html

https://baike.baidu.com/item/FLASH%E9%97%AA%E5%AD%98/2938794?fr=aladdin

http://www.360doc.com/content/18/0404/15/54188601_742831764.shtml

猜你喜欢

转载自my.oschina.net/u/3471006/blog/1791227