存储器概述

概述


 

半导体存储技术在电子设计中占有重要的地位,在几乎任何包含处理器的系统中都会用到各种各样的存储器。随着处理器的进化和发展,存储技术也跟随着不断进步。另外,随着处理器和计算机系统而不断复杂的软件系统,也对存储技术提出越来越高的要求,新型的存储技术因此不断涌现。然而,当今的主流存储技术在可预见的将来仍然会被大量应用在计算机系统、数码相机、智能手机等电子设备当中。

对于电路系统而言,一般包括以下几种存储器:EEPROM、FLASH、SDRAM(或DDRx SDRAM等),在高性能系统中还包括ZBT SRAM(或DDR SRAM、QDR SRAM等)。其中,EEPROM一般用于存储单板信息(如单板名称、厂家名称、单板版本号、单板序列号等),FLASH用于存储底层驱动代码、软件代码等,SDRAM等用于大容量缓存,SRAM等用于高吞吐率小容量的存储。

 

分类


 

根据系统掉电后存储内容是否丢失,半导体存储器可分为非易失性存储器和易失性存储器。

Non-Volatile非易失性存储器,掉电后存储内容仍然保存;

Volatile易失性存储器,掉电后内容随即丢失。

根据存储器工作方式的不同,半导体存储器可分为RAM和ROM两大类。其中:

RAM随机存储器。顾名思义,根据存储单元的行地址和列地址可以快速写入/读取存储单元(Memory Storage Cells)内容。严格地说,DRAM不属于Random Access,因为在DRAM中数据读取是突发(Burst)传输的。然而,许多类型的SRAM是严格意义上的随机存取。一般地,随机存储器都是易失性的,如DRAM,掉电后信息丢失,但是也有非易失性的随机存储器(NVRAM),这些随机存储器允许随机的读操作(写不是随机的)和有限次的写操作(烧录),这些非易失性的随机存储器包括绝大多数的ROM和NOR FLASH;

ROM只读存储器。常被用来保存固定的程序和数据,如微处理器的指令集、计算机的BIOS程序和微控制器的固有程序(firmware)。在一般工作状态下,ROM中的信息只能读出,不能写入。对可编程的ROM芯片,可用特殊方法将信息写入,该过程被称为“编程”。对可擦除的ROM芯片,可采用特殊方法将原来信息擦除,以便再次编程。

表1列出常用半导体存储器类型及其分类。

半导体存储器及其分类

表1. 半导体存储器及其分类

应用


 

下面对不同类型的半导体存储器做简单介绍。

ROM,简单的布尔组合网络,根据输入的组合(Address)输出特定值

  • 储存“1”– 存在晶体管处于ACTIVE状态
  • 储存“0” -  不存在晶体管处在ACTIVE状态

ROM基本存储单元

图1. ROM基本存储单元

掩膜式ROM(Mask Programmed ROM)通过物理的方法将数据存储在集成电路上,因此在定型后很难改变其存储内容。

掩膜式ROM结构单元(空白)

图2. 掩膜式ROM结构单元(空白)

掩膜式ROM结构单元(写入内容后)

图3. 掩膜式ROM结构单元(写入内容后)

掩膜式ROM一般由生产厂家根据用户的要求定制。其它一些ROM可以通过一定的手段对其存储内容进行修改。

1. PROM

可编程PROM(Programmable read-only memory),亦称One-time programmable ROM(OTP),可以通过特殊的装置(PROM Programmer)对其写入。写入时,烧录器通过高电压在芯片内永久地烧断或者建立内部连接(熔丝或反熔丝)。因此,PROM只能一次编程。

出厂时,所有存储单元的熔丝都是完好的。编程时,通过字线选中某个晶体管。若准备写入1,则向位线送高电平,此时管子截止,熔丝将被保留;若准备写入0,则向位线送低电平,此时管子导通,控制电流使熔丝烧断。换句话说,所有存储单元出厂时均存放信息1,一旦写入0使熔丝烧断,就不可能再恢复。

2. EPROM

可擦除EPROM(Erasable programmable read-only memory),芯片的上方有一个石英玻璃的窗口,通过紫外线照射,芯片电路中的浮空晶栅上的电荷会形成光电流泄漏走,使电路恢复起始状态,从而将写入的信号擦去。

EPROM存储单元

图4. EPROM存储单元

EPROM芯片(玻璃窗感应UV光照射)

图5. EPROM芯片(玻璃窗感应UV光照射)

在N型的基片上安置了两个高浓度的P型区,它们通过欧姆接触,分别引出源极(S)和漏极(D),在S和D之间有一个由多晶硅构成的栅极,但它是浮空的,被绝缘物SiO2所包围。

出厂时,硅栅上没有电荷,则管子内没有导电沟道,D和S之间是不导电的。当把EPROM管子用于存储矩阵时,它输出为全1(或0)。要写入时,则在D和S之间加上25V的高压,另外加上编程脉冲(其宽度约为50ms),所选中的单元在这个电源作用下,D和S之间被瞬时击穿,就会有电子通过绝缘层注入到硅栅,当高压电源去除后,因为硅栅被绝缘层包围,故注入的电子无处泄漏走,硅栅就为负,于是就形成了导电沟道,从而使EPROM单元导通,输出为“0”(或“1”)。

3. EEPROM

EPROM相对于PROM在循环使用有巨大的进步,但它仍然需要复杂的设备进行烧写,而且每次重新烧录必须将器件从设备上拆除,内容也必须全部抹掉重写。电可擦除EEPROM(Electrically erasable programmable read-only memory),和EPROM采用相似的架构,可以在不移除设备的情况下对存储内容的全部(或部分banks)进行电擦除和改写。EEPROM的存储结构是FLOTOX,它通过超薄氧化层的隧道电流使浮栅充放电,从而达到改变存贮管阈值电压的目的。这种结构具有按字节擦写,功耗低,结构灵活及可靠性高等明显优点。写入EEPROM的速度(ms/bit)远低于读取ROM或写入RAM的速度(ns/bit)。

EEPROM存储单元示意图

图6. EEPROM存储单元示意图

EEPROM常用于单板信息的存储,高密度单板上的温度检测芯片内部也使用EEPROM存储温度阈值等信息。EEPROM在应用上的特点是:容量小(SDRAM的存储容量一般几百兆到几吉比特,FLASH存储容量一般为几百兆,而EEPROM的存储容量一般仅为几千比特)、非易失、读取方便(使用I2C总线)

对EEPROM的应用重点应把握两点:寻址和I2C总线读写操作。

寻址:控制器往往只提供一个I2C接口,而受地址引脚数目以及引脚容性负载的限制,同一条I2C总线上所连接的EEPROM器件数目有限,为连接尽可能多的EEPROM器件,可以使用I2C接口扩展芯片;

总线操作:I2C总线仲裁。在SCL高电平时,通过比较SDA的逻辑状态而完成的,即在SCL处于高电平的时间段内,不断读取SDA信号线的状态,当发现SDA信号状态线的状态与自己驱动逻辑状态不同,则停止对总线的控制。

4. FLASH

FLASH是诞生于1984年的一种新型的EEPROM。FLASH的内容是以块(Blocks)为单位擦写的,区别于EEPROM是以字节(Byte Level)为单位擦写的。FLASH可以提供比传统EEPROM更快的擦写能力,并且新的架构使FLASH具备更长的寿命(擦写1,000,000次以上)。FLASH常用于存储控制程序代码,如PC中的BIOS,当BIOS需要更新的时候,FLASH可以以块为单位改写(而不是以字节为单位)。从另一个方面来说,FLASH不适合充当随机存储器(RAM),因为随机存储器是以字节为单位寻址的。

FLASH得名于其操作特点,FLASH存储单元块在单个操作(FLASH)后即可全部擦除。FLASH利用Fowler-Nordheim隧道效应,通过薄介质材料注入电子移除存储单元中浮栅的电荷达到擦除FLASH内容的目的(与EEPROM相同)。

ETOX FLASH单元(INTEL)

图7. ETOX FLASH单元(INTEL)

目前常用FLASH芯片有NOR和NAND两种规格。NOR  FLASH诞生于1988年的INTEL,而在1989年东芝公司开发出NAND FLASH。NAND FLASH充分利用硅片的特点,单IC的容量可以达到32Gb(2007年)。大容量以及耐擦写能力的特点使NAND FLASH在某些应用(如U盘)中已取代传统的磁介质存储器。FLASH在替代传统ROM应用(仅限于那些不必要快速修改存储器内容的应用)时也常被称为FLASH ROM或FLASH EEPROM。关于NAND FLASH和NOR FLASH结构特点及其应用,将在另文详述。

 

随机存储器(RAM)主要分两种:静态(Static)随机存储器SRAM和动态(Dynamic)随机存储器DRAM,其下分支如图所示。

随机存储器RAM分类

图8. 随机存储器RAM分类

5. SRAM

SRAM的优点是只要器件不掉电,存储内容就不丢失,工作速度快。缺点是集成度低、功耗大、价格高。SRAM存储单元的结构有别于其它存储器,四晶体管或六晶体管的结构然SRAM在不掉电的情况下可以无限长时间内保存数据(无需刷新)。六晶体管结构SRAM(6T Cell)的结构如图所示:

SRAM存储单元结构图

图9. SRAM存储单元结构图

该结构的SRAM每个存储单元由六个MOS管组成,中间四个MOS构成双稳态触发器,两侧两个MOS管的开关状态由同一个选择信号CE控制。

SRAM基本上可以分为两类:异步SRAM(Asynchronous)和同步SRAM(Synchronous)。异步SRAM的访问独立于时钟,数据输入和输出都由地址的变化控制。同步SRAM的所有访问都在时钟的上升/下降沿启动。地址、数据输入和其它控制信号均于时钟信号相关。

在功能上,SRAM可分为ZBT SRAM、DDR SRAM、QDR SRAM等。

ZBT SRAM:Zero Bus Turnaround 零翻转SRAM。对于普通SRAM而言,由于读操作和写操作驱动方不同,当出现类似写-读-写操作时,相邻操作之间需插入一个空闲周期以便切换驱动方。在读写操作切换频繁的应用中,这种空闲周期将严重地影响存储性能。对于ZBT SRAM,在读写操作之间不存在空闲周期,即读写操作可无缝连接,从而提高了存储性能;

QDR/DDR SRAM:SRAM主要应用于高速缓存,是决定整个系统性能的关键部分。然而,ZBT SRAM的运行频率无法超过200MHz,随着系统的升级,ZBT SRAM已无法满足更高性能系统的要求,由此又诞生了QDR/DDR SRAM(升级后分别QDR II/DDR II SRAM),其中DDR II SRAM又分为CIO(Common IO)和SIO(Separated IO)两大类。QDR是指四倍数据速率(Quad Data Rate),DDR的双倍数据速率是通过双边沿对数据采样实现的,QDR的数据采样同样基于双边沿,且进一步将数据的读端口和写端口分开,利用同一组地址和控制信号实现对这两个端口的访问,输入输出同时进行,从而实现四倍数据速率的同时,消除了读写操作之间的空闲周期,提高了存储效率。

QDRII+相对于QDR II技术的改进

表2. QDRII+相对于QDR II技术的改进

QDR和QDR II SRAM的高带宽低延迟特性使它非常适合充当队列管理和流量管理的控制存储器;另一个应用是信用和包统计(billing and packet statistics),在这种应用中每个数据包在内存中被读取,递增,然后重写写入至存储器。高带宽、低延迟和读写概率接近1:1的特点使得SRAM是这种应用的理想选择。

6. DRAM

DRAM结构简单,功耗低,集成度高,但需要不断刷新内部存储的内容。DRAM每个存储单元由一个MOS管及其寄生电容构成,由于数据信号的状态由电容的电荷量决定,因此每隔一段时间需对电容做一次充放电的刷新操作。

DRAM存储单元结构图

图10. DRAM存储单元结构图

常用的DRAM可进一步分为SDRAM(Synchronous)、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM等。SDRAM即同步动态随机存储器,同步指存储器的工作需要参考时钟。对于同步存储器件,有三个与工作速率相关的重要指标:内核工作频率,时钟频率和数据传输速率。

DDR SDRAM:与SDRAM的基本结构是相似的,最根本的区别在于DDR SDRAM支持在一个时钟周期内传输两次数据。DDR SDRAM采用2倍预取架构,即芯片内部能以两倍于时钟运行的速率预取数据,从而使得芯片内核工作频率仅为外部数据传输率的一半。SDRAM采用1倍预取架构,即芯片内核工作速率与外部数据传输速率相同。

内核工作频率频率越高,芯片工艺越复杂,基于这种工艺的限制,不可能快速地提高芯片内核工作速率。在相同的内核工作速率下,DDR SDRAM的外部数据传输速率为SDRAM的两倍,从而提高了存储器的传输效率。

SDRAM数据传输速率

图11. SDRAM数据传输速率

DDR2 SDRAM:数据预取能力为4,即芯片内核工作频率仅需要为外部数据传输率的1/4。另外DDR2相对于上一代DDR SDRAM技术上的更新还有片上端接技术(ODT)、Post CAS以及功耗和封装。

DDR3 SDRAM:8倍数据预读取能力。工作电压1.5V,相对于DDR2  SDRAM的1.8V和DDR SDRAM的2.5V有进一步的降低,同时外部数据速率提高1600Mbps。关于不同代际DDRx SDRAM的区别,将在另文详述。

RLDRAM/RLDRAM II:Reduced Latency DRAM,用于网络和缓存等对于低延迟要求的场合。在DDR SDRAM中,存储模块分成4个Banks;而在RLDRAM中存储模块会分成8个更小的Banks,因此减小了地址和数据线上的寄生电容,可以更快地随机读取而不产生错误。几乎所有的DRAM都复用行列地址信号线,RLDRAM的行列地址线是分开的,以增加管脚数目为代价提高总线读取速度。RLDRAM工作在更高的时钟频率,接口采用1.8V HSTL,同样使用DDR的数据传输方式。RLDRAM II改进有ODT、更新的PLL可以允许更高的系统时钟、更高容量和更宽的数据宽度。

不同类型的RAM的选择需要综合考虑带宽、容量、延迟、功耗和成本等因素。

存储器选型-特点

表3. 存储器选型/特点

sdram_cpr

表4. 不同存储技术对比

参考资料


 

1. http://en.wikipedia.org/wiki/Non-volatile_random-access_memory

2. http://en.wikipedia.org/wiki/Read-only_memory

3. http://computer.howstuffworks.com/ram.htm

4. http://www.radio-electronics.com/info/data/semicond/memory/different-types-semiconductor-memory.php

5. http://people.ee.duke.edu/~jmorizio/ece261/classlectures/Memory_design.pdf

6. http://www.csun.edu/edaasic/roosta/ECE595_Chap4.pdf

7. http://searchstorage.techtarget.com/definition/flash-memory

8. Selecting the Right High-Speed Memory Technology for Your System

9. Introduction to Cypress SRAMs - AN1116

 

Tagged , , , , , . Bookmark the permalink.

About Xiaomin

“Real generosity towards the future lies in giving all to the present.” ― Albert Camus

2 Responses to 存储器概述

  1. kapcino says:

    总结得不错 赞!

  2. Anonymous says:

    居然发现了敏哥的博客

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.