半导体存储器整理

半导体存储器用来存储大量的二值数据,它是计算机等大型数字系统中不可缺少的组成部分。按照集成度划分,半导体存储器属于大规模集成电路。

目前半导体存储器可以分为两大类:

  • 只读存储器(ROM,Read Only Memory):正常工作时ROM只能读出数据,ROM中数据可以长期保存
  • 随机存取存储器(RAM,Random Access Memory):正常工作时RAM中既可以读出数据也可以写入数据,断电后RAM中数据会全部丢失,具有易失性

目录

一、概述

二、RAM

(1)SRAM

1. 同步SRAM

2. DDR SRAM

(2)DRAM

1. DDR DRAM

(3)SRAM和DRAM对比

三、ROM

(1)可编程ROM

1. 一次可编程ROM(PROM)

2. 光擦除可编程ROM(EPROM)

3. 电擦除可编程ROM(E²PROM)&快闪存储器(Flash Memory)

(2)ROM性能对比


一、概述

在理解buffer之前,首先要明确存储器的概念。

半导体存储器用来存储大量的二值数据,它是计算机等大型数字系统中不可缺少的组成部分。按照集成度划分,半导体存储器属于大规模集成电路。目前半导体存储器可以分为两大类:

  • 只读存储器(ROM,Read Only Memory):正常工作时ROM只能读出数据,ROM中数据可以长期保存
  • 随机存取存储器(RAM,Random Access Memory):正常工作时RAM中既可以读出数据也可以写入数据,断电后RAM中数据会全部丢失,具有易失性

 RAM一般用在需要频繁读写数据的场合,例如计算机系统中的数据缓存。ROM则常用于存放系统程序、数据表、字符代码等不易变化的数据。

二、RAM

RAM即随机存取存储器(RAM,Random Access Memory)。RAM中的随机指的是存储器的内容可以按照任何顺序存取,而不用管前一次存取的是哪一个位置。与ROM的最大区别就是数据易失性,一旦失去电源供电,RAM中所存储的数据会立即丢失。RAM最大的优点是可以随时快速地从其中任一指定地址读出或写入数据。

RAM又可分为静态RAM(SRAM)和动态RAM(DRAM)。

(1)SRAM

SRAM(Static Random Access Memory),静态RAM。SRAM中的存储单元相当于一个锁存器,有0和1两个稳态。

SRAM具有更多的晶体管,速度更快,但是容量较小。在此基础上还发展出了一些其他的SRAM:

  1. SSRAM:同步SRAM(Synchronous SRAM),更适合高速存取。SSRAM与SRAM最主要的差别是SSRAM的读写操作是在时钟脉冲节拍控制下完成,也就是具有明显的时钟脉冲输入端。
  2. BRAM:随机RAM(Block Random Access Memory)。

1. 同步SRAM

随着各种数据密集型应用(例如互联网中的交换机、路由器、服务器,以及通信领域的无线基站和测试设备等)对速度要求的不断提高,RAM 和其他大规模及超大规模集成电路(例如Intel的奔腾处理器)一样,近些年也得到快速发展。同步SRAM(Synchronous SRAM,SSRAM)是在 SRAM的基础上发展起来的一种更适合高速存取的RAM。

同步 SRAM 与 SRAM 最主要的差别是:

同步 SRAM的读写操作是在时钟脉冲节拍控制下完成的。因此,同步 SRAM 最明显的标志是有时钟脉冲输入端。同步SRAM在结构上最大的不同是在电路内部增加了包括地址、数据、读写控制等各种输人信号的寄存器。

所以,其他SRAM 有时候也被称为异步SRAM(Asynchronous SRAM,ASRAM)。

同步SRAM 具有的另一个特点是丛发(Burst,也称为突发)的读写操作模式。在该工作模式下,只要外部给定读写存储单元的首地址,在时钟脉冲作用下,由内部地址计数器提供首地址后的一组连续地址,就可以连续读写接下来的若干个地址单元,而不再需要外部输入地址。同步SRAM 的这种Burst模式,在连续读或写多个字时,可以减少外部地址总线的占用时间,提高读写效率。根据内部地址计数器的位数不同,Burst读写的字数可以是2、4、8个字不等。

2. DDR SRAM

高速、高密度、低功耗早已经成为 RAM 发展的永恒主题。在同步 SRAM 之后,各大RAM 厂商
又先后开发出:

  • 双倍数据传输率(Double Data Rate,DDR)SRAM
  • 四倍数据传输率(Quad Data Rate,QDR) SRAM

上述同步 SRAM 只在时钟的上升沿传输数据,并且共用读写数据总线,读和写只能分时进行。这种同步 SRAM 也称为单倍数据传输率(Single Data Rate,SDR)同步 SRAM。

DDR 同步SRAM 是在同步 SRAM 基础上经过改进,在每个时钟周期的上升沿和下降沿各传输一次数据,这样数据传输效率就提高了一倍,但是读写仍不能同时进行。

QDR 同步SRAM 进一步改进了结构,为读和写操作分别提供独立的接口,不但在每个时钟周期的上升沿和下降沿共传输两次数据,而且每次读写能够同时进行,避免了数据总线的争抢,使数据传输效率比同步 SRAM 提高了两倍。

(2)DRAM

DRAM(Dynamic Random Access Memory),动态RAM。由于在DRAM电路中漏电流的存在,电容器上存储的数据(即电荷)不能长久保存,因此必须定期给电容补充电荷,以避免存储的数据丢失,这种操作称为DRAM的刷新(Refresh)或者再生。

与SRAM的发展类似,DRAM也有同步DRAM(Synchronous DRAM,SDRAM)、DDR同步DRAM和QDR 同步DRAM,而且同样具有Burst的特性由于DRAM的存储单元结构简单,其集成度远高于SRAM,所以在同等容量情况下,DRAM会更加廉价。

目前,改进型DDR Ⅱ(二代)和DDR Ⅲ(三代)同步DRAM已成为个人电脑的主流内存。

1. DDR DRAM

我们经常提到的DDR其实就是DDR DRAM(Double Data Rate Synchronous Dynamic Random Access Memory)双倍速率同步动态随机存储器,也就是双倍速率同步DRAM。DDR SDRAM 在系统时钟的上升沿和下降沿都可以进行数据传输,所以其数据传输速度为系统时钟频率的两倍,由于速度增加,其传输性能优于传统的SDRAM。

与SDRAM相比,DDR运用了更先进的同步电路,使指定地址、数据的输送和输出主要步骤既独立执行,又保持与CPU完全同步。DDR使用了DLL(Delay Locked Loop,延时锁定回路提供一个数据滤波信号)技术,当数据有效时,存储控制器可使用这个数据滤波信号来精确定位数据,每16次输出一次,并重新同步来自不同存储器模块的数据。

从外形体积上DDR与SDRAM相比差别并不大,他们具有同样的尺寸和同样的针脚距离。但DDR为184针脚,比SDRAM多出了16个针脚,主要包含了新的控制、时钟、电源和接地等信号。DDR内存采用的是支持2.5V电压的SSTL2标准,而不是SDRAM使用的3.3V电压的LVTTL标准。由于DDR内存是在SDRAM内存基础上发展而来的,仍然沿用SDRAM生产体系,因此对于内存厂商而言,只需对制造普通SDRAM的设备稍加改进,即可实现DDR内存的生产,可有效的降低成本。

(3)SRAM和DRAM对比

SRAM基本结构图:

DRAM基本结构图:

从结构上看,与SRAM 相比,DRAM只有一个电容一个晶体管,刷新需要时间,速度慢,容量较大。

从DRAM和SRAM的最小存储单元bit结构可以看出其物理区别:

  1. DRAM bit由一个晶体管和一个电容组成,bit信息保存在电容里
  2. SRAM bit由多个(典型6个)晶体管组成,bit信息保存在晶体管里,故SRAM每bit要比DRAM成本高很多

所以在价格上,DRAM更便宜,SRAM更贵,所以SRAM更适合小块数据的存储,DRAM更加适合大数据存储。

关于刷新:

  • DRAM bit信息随着电容发生漏电而消失,所以一般需要64ms充电一次,这是DRAM名字的由来。读DRAM的过程会导致电容漏电,每次读需要充电一次(需要刷新)
  • SRAM则不需要充电(不需要刷新)

另外,与SRAM相比,DRAM的读命令需要消耗更多的时间,这是由于DDR的数据组织结构、高容量、高时钟频率的需求,以及及时充电的要求。DDR的一次读写操作需要十几个甚至几十个时钟周期。不过DDR提供了burst,连续多个数据可以只通过一次命令完成,平均下来,一个WORD的数据大概需要大于1个时钟周期的时间。

相比于DDR,SRAM的访问就简单多了,通常SRAM只需要一个时钟周期来完成随机地址的读写操作。

总结:

  • DRAM:只有一个电容一个晶体管,bit信息保存在电容里,需要刷新,速度慢,容量大,更便宜;DDR的读写消耗的平均时钟周期数要更多(1~n,视DDR controllerDE 设计和burst命令等因素决定)
  • SRAM:由多个(典型6个)晶体管组成,bit信息保存在晶体管里,不需要刷新,速度快,容量小,更贵;SRAM读写平均消耗的时钟周期一般为1。

需要特别指出的是,DRAM的频率与SRAM频率一般是不同的,所以,从访问周期数并不能得出DRAM速度快还是SRAM快。

三、ROM

ROM即只读存储器(ROM,Read Only Memory)。ROM常用于存放系统的运行程序或固定不变的数据。此外,由于 ROM 是一种组合逻辑电路,因此可以用它来实现各种组合逻辑函数,特别是多输入、多输出的逻辑函数。在设计实现时,只需要列出真值表,将逻辑函数的输入作为地址,输出作为存储内容,将内容按照地址写入ROM即可。

根据是否允许用户对ROM写入数据,又可将ROM分为:

  • 固定ROM(或称为掩模ROM)
  • 可编程ROM(PROM,Programmable Read Only Memory)

(1)可编程ROM

 可编程ROM(PROM)又可以进一步划分为:

  • 一次可编程ROM(PROM)
  • 光擦除可编程ROM(EPROM,Erasable Programmable Read Only Memory) 
  • 电擦除可编程ROM(E²PROM,Electrical Erasable Programmable Read Only Memory)
  • 快闪存储器(Flash Memory)

1. 一次可编程ROM(PROM)

一次可编程存储器 PROM 的存储阵列由带金属熔丝的二极管构成。在出厂时,PROM 存储内容全为1(或者全为0),用户可以根据要写入的数据,利用编程软件生成编程数据(也称为熔丝图),再通过通用或专用的编程器,根据熔丝图将某些单元的熔丝烧断,来改写存储的内容。由于熔丝烧断后不能恢复,因此 PROM 只能改写一次,即只有一次可编程。

2. 光擦除可编程ROM(EPROM)

光擦除可编程存储器(EPROM)的存储阵列由SIMOS管构成,其数据写入需要通用或专用的编程器。EPROM 芯片的封装外壳装有透明的石英盖板,用紫外线或者x射线照射15到20分钟便可擦除其全部内容。擦除后可重新写入数据。

如今大多数 PROM 实际上是不装透明石英盖板的EPROM,因而无法擦除,只能写入一次,也称为OTP(One Time Programmable)EPROM。

3. 电擦除可编程ROM(E²PROM)&快闪存储器(Flash Memory)

电擦除可编程存储器(E²PROM)和快闪存储器阵列分别由 Flotox MOS 管和快闪叠栅 MOS 管构成。E²PROM既具有 ROM 的非易失性,又具有写入功能。改写的过程就是电擦除过程(在线擦除,即不需要将芯片从电路系统中取出,可重复擦写1 万次以上),改写以字为单位进行。

目前,大多数 E²PROM 芯片内部都备有升压电路。因此,只需提供单电源供电,便可进行读、擦除、写操作,这为数字系统的设计和在线调试提供了极大方便。与 EPROM 相比,E²PROM 的存储单元电路复杂,所以集成度低。

快闪存储器的擦除和写入是分开进行的,通过在快闪叠栅 MOS 管的源极加正电压完成擦除操作,而在 MOS 管的栅极加高的正电压完成写入操作。因此在写入前,首先要进行擦除。由于快闪存储器的存储单元结构简单(只需要一个快闪叠栅 MOS 管),所以集成度较 E²PROM 高。

(2)ROM性能对比

总结来说,可编程 ROM 的发展实际上已经改变了 ROM 最初只读存储器的含义,而是既有读功能,又有写功能。特别是快内存储器具有的大容量、可读写、非易失性特点,使之广泛应用于各种数码产品中。

几种ROM的性能对比:

快闪存储器PROMEPROME²PROM
非易失性
高密度×
单管存储单元×
系统可写××


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/567745.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MySQL连接失败

最近接手了公司的一个软件项目,通过打印日志,发现该软件会偶发出现连接MySQL数据库失败的问题。 首先排查是否是网络问题导致的连接失败。对该软件和MySQL的3306端口进行抓包,发现连接数据库失败时并没有出现tcp三次握手失败的情况。并且该软…

semaphore信号量使用+原理分析

1.概述 Semaphore 信号量,相当于一个计数器,通常用来限制线程的数量。 每个线程操作前会先获取一个许可证,逻辑处理完成之后就归还这个许可证。 通俗的解释:相当于一个停车场,有10个停车位,进来一个车&am…

按照以下步骤使用Transformer模型

“Transformer”是一种深度学习模型架构,用于处理序列数据,特别是在自然语言处理(NLP)领域中表现出色。它由Google Brain团队于2017年提出,并在机器翻译任务中取得了突破性的成果。Transformer的核心思想是完全基于自注…

指挥中心实战指挥平台-通信指挥类装备多链路聚合设备解决方案实例

一、建设目标及要求 坚持“一切为了实战、一切围绕实战、一切服务实战”的总要求,紧紧围绕大数据应用和自动化、智能化、智慧化这一主题主线,建设升级改造支队指挥中心,集成语音、视频、即时消息、短信、对讲、会议等多媒体通信能力&#xf…

基于SpringBoot的智慧物业管理设计与实现论文

摘  要 随着我国发展和城市开发,物业管理已形成规模,其效益也越来越明显。在经济效益对地方政府而言,主要体现为:减少了大量的财政补贴,对住宅区开发企业而言,能提高物业市场竞争力,使开发企…

场景 - 分库分表

分什么 数据量大分表,并发大分库 分表字段如何选择 如果对交易订单进行分表,可以选择的东西很多,比如说商户id,用户id,地区等等 分表的时候要考虑到数据倾斜问题 数据倾斜 比如说按商户号进行分表,一共…

什么是许可式邮件营销

许可式邮件营销(Permission-based Email Marketing)是一种营销策略,它依赖于接收者的同意或明确的许可来发送商业电子邮件。这种营销方式的核心在于尊重潜在客户或现有客户的选择权,通过提供价值和服务来建立和维护与客户的良好关…

@AutoWired和@Resource的区别

AutoWired和Resource的区别 这两个我们在项目中,经常去使用。很少有人知道他们有什么区别。下面我们将从 来源依赖查找顺序支持的参数依赖注入的用法支持 这四个方面来说明他们俩个的区别 来源 Autowired: 这是Spring框架自带的注解,用于实现自动依…

Git命令行操作(本地操作)

入口 1、任意目录》鼠标右键》Open Git Bash here 2、桌面快捷方式 本地库初始化 在本地库项目文件夹执行命令:git init 验证是否执行成功 .git目录中存放的是本地库相关的子目录和文件,不要删除、修改 设置签名 1、形式 用户名:tom Email地址:GoodMorning@qq.com 2、作…

六、项目发布-- 3. Node.js+express 编写书城首页API

前面那些准备工作做完之后,现在我们就具体来用Node.js来写一个简单的API 基本API编写: 建个后端文件夹,放到vscode打开 我们之前的代码都是前端代码,现在我们来做一个后端的代码。新建一个新的文件夹叫node_new_book&#xff0…

LateX的基础学习

what can i say 在text.tex中写下 \documentclass{article} \begin{document]Hello \LaTeX. \end{document} 关闭记事本,cmd中dir保存,用latex text.tex来编译,可以命令行慢慢编译,这可以做成bat文件 为什么不直接开始在texst…

第八讲:C语言指针(2)

目录 1、数组名的理解 2、使⽤指针访问数组 3、⼀维数组传参的本质 4、冒泡排序 5、⼆级指针 6、指针数组 7、指针数组模拟⼆维数组 1、数组名的理解 其实数组名本来就是地址&#xff0c;⽽且 是数组⾸元素的地址&#xff0c;例如&#xff1a; #include <stdio.h>…

C++信息学奥赛 数据结构认识

数据结构 1.1数据结构分类 1.2基本数据类型 1.3数字编码 1.4字符编码 1.1数据结构分类 数据结构如同一副稳固而多样的框架。为数据的有序组织提供了蓝图&#xff0c;算法得以在此基础上生动起来。 常用的数据结构包括哪些 &#xff0c; &#xff0c; &…

Redis篇:缓存击穿及解决方案

1.何为缓存击穿 缓存击穿问题也叫热点Key问题&#xff0c;就是一个被高并发访问并且缓存重建业务较复杂的key突然失效了&#xff08;有可能是正好过期了&#xff09;&#xff0c;无数的请求访问会在瞬间给数据库带来巨大的冲击。 常见的解决方案有两种&#xff1a; 互斥锁 逻…

书生·浦语大模型实战营之OpenXLab 部署 InternLM2 实践指南

书生浦语大模型实战营之OpenXLab 部署 InternLM2 实践指南 本文档将手把手教您如何在 OpenXLab 部署一个 InternLM2-7B chat 的应用 目录 资料介绍书生浦语 InternLM介绍OpenXLab浦源平台介绍部署 InternLM2-Chat-7B demo模型准备上传模型编写代码部署应用 资料介绍 书生浦语…

揭开ChatGPT面纱(1):准备工作(搭建开发环境运行OpenAI Demo)

文章目录 序言&#xff1a;探索人工智能的新篇章一、搭建开发环境二、编写并运行demo1.代码2.解析3.执行结果 本博客的gitlab仓库&#xff1a;地址&#xff0c;本博客对应01文件夹。 序言&#xff1a;探索人工智能的新篇章 随着人工智能技术的飞速发展&#xff0c;ChatGPT作为…

GITHUB的VB代码无法加载的问题解决

GITHUB里有不少好的VB代码&#xff0c;但是下载之后&#xff0c;经常出现工程加载出错的问题&#xff0c;例如&#xff1a; LOG文件为&#xff1a; 不能加载 0 行 0: 不能加载文件 D:\xxxx\Semi VB API Loader\frmMain.frm 。 原因其实很简单&#xff0c;github里的换行符是u…

OpenFE:开启数据特征工程新时代

OpenFE&#xff1a;开启数据特征工程新时代 数据特征工程是机器学习和数据分析领域中至关重要的一环&#xff0c;它涉及对原始数据进行处理和转换&#xff0c;以提取出有用的特征&#xff0c;为模型构建和预测提供更好的输入。在这个领域中&#xff0c;Python库OpenFE为数据科学…

高级控件4:Spinner

Spinner下拉列表组件 主要集合ArrayAdapter、SimpleAdapter以及自定义的Adapter&#xff08;继承自BaseAdapter&#xff09;配合使用实现下拉选择或者对话框中选择某一条目。下拉使用的更多&#xff0c;所以&#xff0c;接下来的案例也会重在演示下拉效果。 本次基本就是上代…

深入理解高级加密标准(Advanced Encryption Standard)

title: 深入理解高级加密标准&#xff08;Advanced Encryption Standard&#xff09; date: 2024/4/23 20:04:36 updated: 2024/4/23 20:04:36 tags: AES概述加密原理优势特点算法详解安全性应用实践案例分析 第一章&#xff1a;AES概述 AES的历史和背景 历史&#xff1a; 高…