半导体存储器整理

news2024/10/5 17:18:01

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

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

  • 只读存储器(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
非易失性
高密度×
单管存储单元×
系统可写××


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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

StarRocks最佳实践经验

目录 一、部署 1.1 容量规划 1.2 基础环境配置 1.3 机器配置 1.3.1 FE节点 1.3.2 BE节点 1.4 部署方案 二、建模 2.1 建表规范 2.2 模型选择 2.3 排序列和前缀索引选择 2.4 分区选择 2.5 分桶选择 2.6 字段类型 2.7 索引选择 2.7.1 Bitmap索引 2.7.2 Bloom fi…

微电子领域常见概念(七)晶格匹配

微电子领域常见概念(七)晶格匹配 晶格匹配 晶格匹配(Lattice Matching)是半导体物理学中的一个概念,主要应用于异质结构的外延生长技术。在半导体器件制造中,异质结构是指在一种半导体材料上生长另一种半导…

Centos7 大数据组件安装

Java 安装 下载JDK 查看Linux 服务区的操作系统位数,下载适合的JKD安装包 [rootmaster ~]# getconf LONG_BIT 64下载jdk-8u361 解压安装JDK tar -zxvf jdk-8u361-linux-x64.tar.gz -C /usr/local添加JAVA 环境变量 执行命令 vi ~/.bash_profile 在~/.bash_profile文件中增…

Linux系统编程——进程

一、进程相关概念 面试中关于进程,应该会问的的几个问题: 1.1 什么是程序?什么是进程?有什么区别? 程序是静态的概念,比如: 磁盘中生成的a.out文件,就叫做:程序 进程…

记录一下用MobaXterm建立隧道的配置

【为什么要建立隧道】 在公司环境中,我们通过本地Windows机器没法直接访问公司的服务器(安全考虑,都装了防火墙),要访问公司服务器的通常做法是,在本机安装个代理插件(如Proxy SwitchyOmega&am…

维基百科、百度百科和搜狗百科词条的创建流程

随着网络的发展,百度百科、搜狗百科、维基百科等百科网站已经成为大众获取知识的重要途径。因为百科具有得天独厚的平台优势,百科上的信息可信度高,权威性强。所以百科平台也成为商家的必争之地。这里小马识途聊聊如何创建百度百科、搜狗百科…

网络安全之CSRFSSRF漏洞(上篇)(技术进阶)

目录 一,CSRF篇 二,认识什么是CSRF 三,实现CSRF攻击的前提 四,实战演练 【1】案例1 【2】案例2 【3】案例3 【4】案例4(metinfo) 一,CSRF篇 二,认识什么是CSRF CSRF&#x…

coredns部署

coredns部署 coredns部署 一:coredns-rbac.yaml apiVersion: v1 kind: ServiceAccount metadata:name: corednsnamespace: kube-systemlabels:kubernetes.io/cluster-service: "true"addonmanager.kubernetes.io/mode: Reconcile --- apiVersion: rbac…

NXP恩智浦 S32G电源管理芯片 VR5510 安全概念 Safety Concept (万字长文详解,配21张彩图)

NXP恩智浦 S32G电源管理芯片 VR5510 安全概念 Safety Concept (万字长文详解,配21张彩图) 1. 简介 本应用笔记描述了与S32G处理器和VR5510 PMIC相关的安全概念。该文档涵盖了S32G和VR5510的安全功能以及它们如何相互作用,以确保对ASIL D安全完整性级别…

I2C,UART,SPI(STM32、51单片机)

目录 基本理论知识: 并行通信/串行通信: 异步通信/同步通信: 半双工通信/全双工通信: UART串口: I2C串口: SPI串口: I2C在单片机中的应用: 软件模拟: 51单片机:…

【计算机网络】(三)物理层 - 通信基础

文章目录 【计算机网络】(三)物理层 - 通信基础前言3.1 物理层的基本概念3.2 数据通信的基础知识3.2.1 数据、信号、码元3.2.2 信源、信宿、信道3.2.3 编码、调制3.2.3.1 基带调制(编码)3.2.3.2 带通调制(调制&#xf…

视频改字祝福 豪车装X系统源码uniapp前端源码

uniapp视频改字祝福 豪车装X系统源码 全开源,只有uniapp前端,API接口需要寻找对应的。 创意无限!AI视频改字祝福,豪车装X系统源码开源,打造个性化祝福视频不再难! 想要为你的朋友或家人送上一份特别的祝福,让他们感受到你的真诚与关怀吗?现在, 通过开源的AI视频改字…

智慧园区引领产业智慧化:深入探索智慧技术如何点亮园区创新发展之路,构建未来产业生态圈,驱动区域经济持续升级

目录 一、引言 二、智慧园区的内涵与特征 三、智慧技术点亮园区创新发展之路 1、智慧技术推动产业转型升级 2、智慧技术促进新兴产业发展 3、智慧技术提升园区创新能力 四、智慧园区在产业智慧化中的作用与价值 1、优化资源配置,提高经济效益 2、提升服务品…

Meta和多表继承,继承与反向关系

1. Meta和多表继承 在Django模型多表继承中,子类不会继承父类中的Meta类。所有的Meta类属性已被应用至父类,在子类中再次应用则会导致行为冲突。因此,子类模型无法访问父类中的Meta类。 不过也有例外情况,若子类未指定ordering属…

单片机使用循环来实现延时和定时器延时的区别是什么?

循环延时是一种简单的实现方式,但由于资源占用和精确度的限制。我这里有一套嵌入式入门教程,不仅包含了详细的视频 讲解,项目实战。如果你渴望学习嵌入式,不妨点个关注,给个评论222,私信22,我在…

FPGA秋招-笔记整理(2)

一、数字IC前端设计的主要流程 参考:数字IC前端设计流程及工具【RTL设计功能仿真】【综合】【DFT】【形式验证】【STA静态时序分析】 以门级网表(Netlist)的生成为界限,将整个流程分为前端和后端。 布局布线之前可以认为是前端…

sudo的设置

sudo指令就是提高你的用户权限,用来完成root可以完成的工作,但是有一个前提,就是被root添加到信任名单中,接下来我们要讲解如何在root中添加用户到信任名单中。 在root中输入指令: 即可到达添加信用列表的位置&#x…

书生·浦语大模型第二期实战营第四节-XTuner 微调 LLM:1.8B、多模态、Agent 笔记

来源: 视频来源:XTuner 微调 LLM:1.8B、多模态、Agent 1. XTuner 微调 LLM:1.8B、多模态、Agent 1.1 为什么要微调 1.2 两种Finetune范式 在LLM的下游应用中,增量预训练和指令跟随是经常会用到的两种微调模式。 增…

基于Python+Selenium+Pytest的Dockerfile如何写

使用 Dockerfile 部署 Python 应用程序与 Selenium 测试 在本文中,我们将介绍如何使用 Dockerfile 部署一个 Python 应用程序,同时利用 Selenium 进行自动化测试。我们将使用官方的 Python 运行时作为父镜像,并在其中安装所需的依赖项和工具…

sql server 恢复数据库、单表数据的方法

1、查看备份文件在哪个路径、一般文件夹名都是叫:Backup 2、下面开始还原(恢复)数据库,对着【数据库】右键--【新建数据库】--然后随便命名,如下图 3、你要是想改路径的话就拉过来,2行都要改、不想多事就直…