【瑞萨RA_FSP】常用存储器介绍

news2024/11/24 10:27:26

文章目录

  • 一、存储器种类
  • 二、 RAM存储器
    • 1. DRAM
      • 1.1 SDRAM
      • 1.2 DDR SDRAM
    • 2. SRAM
    • 3. DRAM与SRAM的应用场合
  • 三、非易失性存储器
    • 1. ROM存储器
      • 1.1 MASK ROM
      • 1.2 OTPROM
      • 1.3 EPROM
      • 1.4 EEPROM
    • 2. FLASH存储器


一、存储器种类

存储器是计算机结构的重要组成部分。存储器是用来存储程序代码和数据的部件,有了存储器计算机才具有记忆功能。基本的存储器种类见下图所示:

在这里插入图片描述

存储器按其存储介质特性主要分为“易失性存储器”和“非易失性存储器”两大类。其中的“易失/非易失”是指存储器断电后,它存储的数据内容是否会丢失的特性。由于一般易失性存储器存取速度快,而非易失性存储器可长期保存数据,它们都在计算机中占据着重要角色。在计算机中易失性存储器最典型的代表是内存,非易失性存储器的代表则是硬盘。

二、 RAM存储器

RAM是“Random Access Memory”的缩写,被译为随机存储器。所谓“随机存取”,指的是当存储器中的消息被读取或写入时,所需要的时间与这段信息所在的位置无关。这个词的由来是因为早期计算机曾使用磁鼓作为存储器,磁鼓是顺序读写设备,而RAM可随机读取其内部任意地址的数据,时间都是相同的,因此得名。实际上现在RAM已经专门用于指代作为计算机内存的易失性半导体存储器。

根据RAM的存储机制,又分为动态随机存储器DRAM(Dynamic RAM)以及静态随机存储器SRAM(Static RAM)两种。

1. DRAM

动态随机存储器DRAM的存储单元以电容的电荷来表示数据,有电荷代表1,无电荷代表0,见下图。 但时间一长,代表1的电容会放电,代表0的电容会吸收电荷,因此它需要定期刷新操作,这就是“动态(Dynamic)”一词所形容的特性。刷新操作会对电容进行检查,若电量大于满电量的1/2,则认为其代表1,并把电容充满电;若电量小于1/2,则认为其代表0,并把电容放电,藉此来保证数据的正确性。
在这里插入图片描述

1.1 SDRAM

根据DRAM的通讯方式,又分为同步和异步两种,这两种方式根据通讯时是否需要使用时钟信号来区分。下图是一种利用时钟进行同步的通讯时序,它在时钟的上升沿表示有效数据。
在这里插入图片描述
由于使用时钟同步的通讯速度更快,所以同步DRAM使用更为广泛,这种DRAM被称为SDRAM(Synchronous DRAM)。

1.2 DDR SDRAM

为了进一步提高SDRAM的通讯速度,人们设计了DDR SDRAM存储器(Double Data Rate SDRAM)。 它的存储特性与SDRAM没有区别,但SDRAM只在上升沿表示有效数据,在1个时钟周期内,只能表示1个有数据; 而DDR SDRAM在时钟的上升沿及下降沿各表示一个数据,也就是说在1个时钟周期内可以表示2位数据,在时钟频率同样的情况下, 提高了一倍的速度。至于DDRII和DDRIII,它们的通讯方式并没有区别,主要是通讯同步时钟的频率提高了。

当前个人计算机常用的内存条是DDRIII SDRAM存储器,在一个内存条上包含多个DDRIII SDRAM芯片。

2. SRAM

静态随机存储器SRAM的存储单元以锁存器来存储数据,见下图。 这种电路结构不需要定时刷新充电,就能保持状态(当然,如果断电了,数据还是会丢失的),所以这种存储器被称为“静态(Static)”RAM。
在这里插入图片描述
同样地,SRAM根据其通讯方式也分为同步(SSRAM)和异步SRAM,相对来说,异步SRAM用得比较广泛。

3. DRAM与SRAM的应用场合

对比DRAM与SRAM的结构,可知DRAM的结构简单得多,所以生产相同容量的存储器,DRAM的成本要更低,且集成度更高。 而DRAM中的电容结构则决定了它的存取速度不如SRAM,特性对比见下表。
在这里插入图片描述
所以在实际应用场合中,SRAM一般只用于CPU内部的高速缓存(Cache),而外部扩展的内存一般使用DRAM。

三、非易失性存储器

非易失性存储器种类非常多,半导体类的有ROM和FLASH,而其它的则包括光盘、软盘及机械硬盘。

1. ROM存储器

ROM是“Read Only Memory”的缩写,意为只能读的存储器。由于技术的发展,后来设计出了可以方便写入数据的ROM, 而这个“Read Only Memory”的名称被沿用下来了,现在一般用于指代非易失性半导体存储器, 包括后面介绍的FLASH存储器,有些人也把它归到ROM类里边。

1.1 MASK ROM

MASK(掩膜) ROM就是正宗的“Read Only Memory”,存储在它内部的数据是在出厂时使用特殊工艺固化的,生产后就不可修改,其主要优势是大批量生产时成本低。当前在生产量大,数据不需要修改的场合,还有应用。

1.2 OTPROM

OTPROM(One Time Programable ROM)是一次可编程存储器。这种存储器出厂时内部并没有资料,用户可以使用专用的编程器将自己的资料写入,但只能写入一次,被写入过后,它的内容也不可再修改。在NXP公司生产的控制器芯片中常使用OTPROM来存储密钥。

1.3 EPROM

EPROM(Erasable Programmable ROM)是可重复擦写的存储器,它解决了PROM芯片只能写入一次的问题。这种存储器使用紫外线照射芯片内部擦除数据,擦除和写入都要专用的设备。现在这种存储器基本淘汰,被EEPROM取代。

1.4 EEPROM

EEPROM(Electrically Erasable Programmable ROM)是电可擦除存储器。EEPROM可以重复擦写,它的擦除和写入都是直接使用电路控制,不需要再使用外部设备来擦写。而且可以按字节为单位修改数据,无需整个芯片擦除。现在主要使用的ROM芯片都是EEPROM。

2. FLASH存储器

FLASH存储器又称为闪存,它也是可重复擦写的储器,部分书籍会把FLASH存储器称为FLASH ROM,但它的容量一般比EEPROM大得多,且在擦除时,一般以多个字节为单位。如有的FLASH存储器以4096个字节为扇区,最小的擦除单位为一个扇区。根据存储单元电路的不同,FLASH存储器又分为NOR FLASH和NAND FLASH,见下表。
在这里插入图片描述
NOR与NAND的共性是在数据写入前都需要有擦除操作,而擦除操作一般是以“扇区/块”为单位的。而NOR与NAND特性的差别,主要是由于其内部“地址/数据线”是否分开导致的。

由于NOR的地址线和数据线分开,它可以按“字节”读写数据,符合CPU的指令译码执行要求,所以假如NOR上存储了代码指令,CPU给NOR一个地址,NOR就能向CPU返回一个数据让CPU执行,中间不需要额外的处理操作。

而由于NAND的数据和地址线共用,只能按“块”来读写数据,假如NAND上存储了代码指令,CPU给NAND地址后,它无法直接返回该地址的数据,所以不符合指令译码要求。上表中的最后一项“是否支持XIP”描述的就是这种立即执行的特性(eXecute In Place)。

若代码存储在NAND上,可以把它先加载到RAM存储器上,再由CPU执行。所以在功能上可以认为NOR是一种断电后数据不丢失的RAM,但它的擦除单位与RAM有区别,且读写速度比RAM要慢得多。

另外,FLASH的擦除次数都是有限的(现在普遍是10万次左右),当它的使用接近寿命的时候,可能会出现写操作失败。由于NAND通常是整块擦写,块内有一位失效整个块就会失效,这被称为坏块,而且由于擦写过程复杂,从整体来说NOR寿命较长。由于可能存在坏块,所以FLASH存储器需要“探测/错误更正(EDC/ECC)”算法来确保数据的正确性。

由于两种FLASH存储器特性的差异,NOR FLASH一般应用在代码存储的场合,如嵌入式控制器内部的程序存储空间。而NAND FLASH一般应用在大数据量存储的场合,包括SD卡、U盘以及固态硬盘等,都是NAND FLASH类型的。

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

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

相关文章

chatgpt赋能python:Python安装Scrapy-提升爬虫效率的关键

Python安装Scrapy - 提升爬虫效率的关键 如果你正在寻找一个强大、高效的爬虫框架,那么Scrapy是你的不二选择。但在使用Scrapy之前,你必须先安装它。 本篇文章将向您介绍如何在Python环境中安装Scrapy,让您能够更快、更方便地运行和调试您的…

chatgpt赋能python:Python怎么安装PyCharm

Python怎么安装PyCharm PyCharm是一款专业的Python集成开发环境(IDE),提供了丰富的功能和工具,能够极大地提高我们的开发效率。但是,在安装PyCharm之前,需要先确保Python已经安装并配置好了。本篇文章将详…

相机标定精度研究

张建贺实验设计 1 外参重复性精度测试: (同内参,不同外参特征点,9选择4,组合) 1 外参几乎没有什么重复性误差??? 只要4对都正确,则刚性匹配基本正确 解释:激光点云到相机 转换本身的刚性…

Diffusion扩散模型学习2——Stable Diffusion结构解析-以文本生成图像为例

Diffusion扩散模型学习2——Stable Diffusion结构解析 学习前言源码下载地址网络构建一、什么是Stable Diffusion(SD)二、Stable Diffusion的组成三、生成流程1、文本编码2、采样流程a、生成初始噪声b、对噪声进行N次采样c、单次采样解析I、预测噪声II、…

转换vmware的vmdk格式为qcow2格式

一、系统环境 操作系统:Win11 虚机系统:VMware Workstation 16 Pro 16.2.3 build-19376536 转换工具:qemu 8.0.2 二、下载安装qemu模拟器 查看qemu版本 Download QEMU - QEMUhttps://www.qemu.org/download/ 下载windows版的安装文件&…

MySQL索引事务(二)

1、索引 1.1、索引的分类 1.1.1、按数据结构分类:Btree,Hash索引,Full-text索引。 InnoDBMylSAMMemmoryBtree索引√√√Hash索引Full-text索引√(MySQl-version5.6.4)√ Btree索引是MySQL中被存储引擎采用最多的索引类型。它适用于全键值、…

chatgpt赋能python:Python编程技巧之复制粘贴技巧

Python编程技巧之复制粘贴技巧 Python作为一种富有表达力的编程语言,已经成为越来越多人的选择。但在编写代码时,有时候我们需要将别人的代码复制粘贴到自己的代码中。如何正确地复制粘贴代码?下面让我们来探讨一下。 复制和粘贴 在复制和…

车载以太网 - 物理层

OSI模型与车载以太网对应关系 OSI标准模型: l、物理层 II、数据链路层 lll、网络层 IV、传输层 V、会话层 VI、表示层 VII、应用层 车载以太网的OSI 参考模型如图所示,该模型中没有对5-7层进行严格的区分;比如SOME/IP、DolP、XCP等协议则是将5、6、7层描…

ML算法——逻辑回归随笔【机器学习】

文章目录 3、逻辑回归3.1、理论部分3.2、sklearn 实现3.3、案例 3、逻辑回归 3.1、理论部分 Logic Regression (LR),逻辑回归的因变量是二分类的,而不是连续的。它的输出是一个概率值,表示输入数据属于某个类别的概率。如果该值为0.8&#x…

Building a Cloud Based Data Warehouse on Google Big Query Using Qlik Compose

Learn how to build a cloud based data warehouse using Qlik Compose on Google Big Query How to Build Data Integration Pipelines with Qlik and Databricks - YouTube Google BigQuery是一个具有成本效益、高度可扩展的无服务器数据仓库,专为业务敏捷性而设…

概率图简介

引言 本文介绍概率图模型的部分基础知识,希望学习完本文之后能更好地理解HMM和CRF模型。 概率论基础 本节简单回顾一下相关的概率论知识,概率论有两条重要的基本规则。 分别为乘法规则(product rule)和加和规则(sum rule),假设有两个随机…

chatgpt赋能python:Python3.9.7安装指南

Python 3.9.7安装指南 Python是一种高级编程语言,得到了越来越多的使用,并且在机器学习、数据科学和网络开发中变得越来越重要。本篇文章将向大家介绍如何安装Python 3.9.7版本。 下载Python 3.9.7 首先,我们需要下载Python 3.9.7。你可以…

chatgpt赋能python:Python怎么安装Flask

Python怎么安装Flask Python是一种高级编程语言,常用于 Web 开发、人工智能、机器学习等领域。同时,Flask也是一个十分著名的Python Web框架,具有灵活、轻量级、易于扩展等特点。那么,如何在Python环境中安装Flask呢?…

chatgpt赋能python:Python安装PySpark:从入门到精通

Python安装PySpark:从入门到精通 PySpark是使用Python编写的Apache Spark API。它提供了一个Python接口来与Spark的分布式计算引擎进行交互。本文将介绍如何在Python中安装PySpark。 环境准备 在安装PySpark之前,您需要先安装以下依赖项: …

chatgpt赋能python:如何安装Python3.4

如何安装Python 3.4 简介 Python是一种流行的编程语言。它易于学习,具有可读性,且适用于多种用例。Python的版本非常多,但是Python 3.4是最新的稳定版本之一。 在本文中,我们将介绍如何更轻松地安装Python 3.4。 步骤 安装Py…

NLP学习笔记七-多层RNN和双向RNN

NLP学习笔记七-多层RNN和双向RNN 接着之前写的博客内容,多层RNN,其实就是在,simple RNN的基础上,再套一层或多层RNN单元。 看如下网络结构图: 上图中A就是表示一个RNN网络,这里,其实有一个疑…

chatgpt赋能python:Python与前端连接:使用Python的Web框架构建后端API

Python与前端连接:使用Python的Web框架构建后端API Python是一种强大的编程语言,越来越受到开发者的欢迎。但是,对于Web开发,Python并不是一种前端语言。那么,如何将Python的后端与前端连接起来?本文将介绍…

Java ~ Reference ~ Cleaner【总结】

前言 文章 相关系列:《Java ~ Reference【目录】》(持续更新)相关系列:《Java ~ Reference ~ Cleaner【源码】》(学习过程/多有漏误/仅作参考/不再更新)相关系列:《Java ~ Reference ~ Cleaner…

[java]关于Session关于Token关于JWT

目录 关于Session 关于Token 关于JWT 关于Session HTTP协议是一种无状态协议,即:当某个客户端向服务器发起请求,服务器端进行处理,后续,此客户端再次发起请求,服务器端并不能直接知道它就是此前来访过的…