1.10 存储器 MEM Memory_hdd和mem-程序员宅基地

技术标签: 第1章 元器件基本知识  嵌入式硬件  单片机  


1 存储器是什么?

在这里插入图片描述
在计算机中,存储器的种类很多,按其用途可分为主存储器和辅助存储器,主存储器又称内存储器(简称内存),辅助存储器又称外存储器(简称外存)。
内存指的就是主板上的存储部件,是CPU直接与之沟通,并用其存储数据的部件,存放当前正在使用的(即执行中)的数据和程序,它的物理实质就是一组或多组具备数据输入输出和数据存储功能的集成电路,内存只用于暂时存放程序和数据,一旦关闭电源或发生断电,其中的程序和数据就会丢失。
外存通常是磁性介质或光盘,像硬盘,软盘,磁带,CD等,能长期保存信息,并且不依赖于电来保存信息,但是由机械部件带动,速度与CPU相比就显得慢的多。

存储器单元实际上是时序逻辑电路的一种。按存储器的使用类型可分为只读存储器(ROM)和随机存取存储器(RAM)。
只读存储器(ROM):存储的内容是固定不变的,只能读出而不能写入的半导体存储器。
随机读写存储器(RAM):既能读出又能写入的半导体存储器。
当电源关闭时RAM不能保留数据。如果需要保存数据,就必须把它们写入一个长期的存储设备中(例如硬盘)。RAM和ROM相比,两者的最大区别是RAM在断电以后保存在上面的数据会自动消失,而ROM不会自动消失,可以长时间断电保存。

RAM,random access memory,随机存取存储器又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。所谓“随机存取”,指的就是当存储器中的数据被读取或写入时,所需要的时间与这段信息所在的位置或所写入的位置无关。这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序。
按照存储单元的工作原理,随机存储器又分为静态随机存储器(英文:Static RAM,SRAM)和动态随机存储器(英文Dynamic RAM,DRAM)。

DRAM:现代的随机存取存储器依赖电容器存储数据。电容器充满电后代表1(二进制),未充电的代表0。由于电容器或多或少有漏电的情形,若不作特别处理,数据会渐渐随时间流失。刷新是指定期读取电容器的状态,然后按照原来的状态重新为电容器充电,弥补流失了的电荷。需要刷新正好解释了随机存取存储器的易失性。为了避免存储信息的丢失,必须定时地给电容补充漏掉的电荷。通常把这种操作称为“刷新”或“再生”,因此DRAM内部要有刷新控制电路,其操作也比SRAM复杂。尽管如此,由于DRAM存储单元的结构能做得非常简单,所用元件少,功耗低,已成为大容量RAM的主流产品。
(我们平常所提到的计算机的内存指的是动态内存(即DRAM),动态内存中所谓的“动态”,指的是当我们将数据写入DRAM后,经过一段时间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。具体的工作过程是这样的:一个DRAM的存储单元存储的是0还是1取决于电容是否有电荷,有电荷代表1,无电荷代表0。但时间一长,代表1的电容会放电,代表0的电容会吸收电荷,这就是数据丢失的原因。刷新操作定期对电容进行检查,若电量大于满电量的1/2,则认为其代表1,并把电容充满电;若电量小于1/2,则认为其代表0,并把电容放电,藉此来保持数据的连续性。因需刷新而使外围电路复杂;刷新也使存取速度较SRAM慢,所以在计算机中,DRAM常用于作主存储器。)

SRAM:SRAM是一种具有静止存取功能的内存,不需要刷新电路即能保存它内部存储的数据。不像DRAM内存那样需要刷新电路,每隔一段时间,固定要对DRAM刷新充电一次,否则内部的数据即会消失,因此SRAM具有较高的性能,但是SRAM也有它的缺点,即它的集成度较低,相同容量的DRAM内存可以设计为较小的体积,但是SRAM却需要很大的体积,所以在主板上SRAM存储器要占用一部分面积。
◎优点,速度快,不必配合内存刷新电路,可提高整体的工作效率。
◎缺点,集成度低,功耗较大,相同的容量体积较大,而且价格较高,少量用于关键性系统以提高效率。

静态存储单元(SRAM)
●存储原理:由触发器存储数据
●单元结构:六管NMOS或OS构成
●优点:速度快、使用简单、不需刷新、静态功耗极低;常用作Cache(CPU的一级缓冲,二级缓冲)
●缺点:元件数多、集成度低、运行功耗大
●常用的SRAM集成芯片:6116(2K×8位),6264(8K×8位),62256(32K×8位),2114(1K×4位)
很多SOC以及MCU内部都会有带ECC的SRAM。常见256KB/512KB
在这里插入图片描述
动态存储单元(DRAM)(我的理解是需要刷新,所以是动态的)
●存贮原理:利用MOS管栅极电容可以存储电荷的原理,需刷新
●刷新(再生):为及时补充漏掉的电荷以避免存储的信息丢失,必须定时给栅极电容补充电荷的操作
●刷新时间:定期进行刷新操作的时间。该时间必须小于栅极电容自然保持信息的时间(小于2ms)。
●优点: 集成度远高于SRAM、功耗低,价格也低
●缺点:因需刷新而使外围电路复杂;刷新也使存取速度较SRAM慢,所以在计算机中,DRAM常用于作主存储器。
尽管如此,由于DRAM存储单元的结构简单,所用元件少,集成度高,功耗低,所以已成为大容量RAM的主流产品。

ROM是只读存储器(Read-Only Memory)的简称,是一种只能读出事先所存数据的固态半导体存储器。其特性是一旦储存资料就无法再将之改变或删除。通常用在不需经常变更资料的电子或电脑系统中,并且资料不会因为电源关闭而消失,为便于使用和大批量生产 ,进一步发展了可编程只读存储器(PROM)、可擦可编程只读存储器(EPROM)和电可擦可编程只读存储器(EEPROM)。
ROM断电后信息不丢失,如计算机启动用的BIOS芯片。存取速度很低(较RAM而言)且不能改写。由于不能改写信息,不能升级,现已很少使用。
ROM也有很多种,PROM是可编程的ROM,PROM和EPROM两者区别是,PROM是一次性的,也就是软件灌入后,就无法修改了,这种是早期的产品,现在已经不可能使用了,而EPROM是通过紫外光的照射擦除原先的程序,是一种通用的存储器。另外一种EEPROM是通过电子擦除,价格很高,写入时间很长,写入很慢。

2 有哪些分类?

存储器分类

2.1 SRAM

这块主要用于缓存(Cache Memory),接触的相对较少。
在这里插入图片描述
SRAM (静态随机存取存储器)-百科
一级缓存-百科

2.2 DRAM

通常接触的都是SDRAM,synchronous dynamic random-access memory,同步动态随机存储器。现在用的DDR就属于这一类,在DDR那一章节再详细分析。
SDRAM-百科

2.3 EEPROM

Electrically Erasable Programmable read only memory,带电可擦可编程只读存储器。
由于EPROM操作的不便,后来出的主板上BIOS ROM芯片大部分都采用EEPROM。EEPROM的擦除不需要借助于其它设备,它是以电子信号来修改其内容的,而且是以Byte为最小修改单位,不必将资料全部洗掉才能写入,彻底摆脱了EPROM Eraser和编程器的束缚。EEPROM在写入数据时,仍要利用一定的编程电压,此时,只需用厂商提供的专用刷新程序就可以轻而易举地改写内容,所以,它属于双电压芯片。借助于EEPROM芯片的双电压特性,可以使BIOS具有良好的防毒功能,在升级时,把跳线开关打至“on”的位置,即给芯片加上相应的编程电压,就可以方便地升级;平时使用时,则把跳线开关打至“off”的位置,防止CIH类的病毒对BIOS芯片的非法修改。所以,仍有不少主板采用EEPROM作为BIOS芯片并作为自己主板的一大特色。
EEPROM-百科

2.4 Flash(闪存)

FLASH是存储芯片的一种,通过特定的程序可以修改里面的数据。FLASH属于广义的EEPROM,因为它也是电擦除的ROM。但是为了区别于一般的按字节为单位的擦写的EEPROM,我们都叫它FLASH。FLASH做的改进就是擦除时不再以字节为单位,而是以块为单位(1块=128字节),一次简化了电路,数据密度更高,降低了成本。上M的ROM一般都是FLASH。FLASH在电子以及半导体领域内往往表示Flash Memory的意思,即平时所说的“闪存”,全名叫Flash EEPROM。
Flash存储器结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还可以快速读取数据(NVRAM的优势),使数据不会因为断电而丢失。U盘和MP3里用的就是这种存储器。在过去的20年里,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,然而近年来Flash全面代替了ROM(EPROM)在嵌入式系统中的地位,用作存储Bootloader以及操作系统或者程序代码,或者直接当硬盘使用(U盘)。
目前Flash主要有两种NOR Flash和NAND Flash。NOR Flash的读取和我们常见的SDRAM的读取是一样,用户可以直接运行装载在NOR FLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。NAND Flash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的Flash比较廉价。用户不能直接运行NAND Flash上的代码,因此好多使用NAND Flash的开发板除了使用NAND Flash以外,还加上了一块小的NOR Flash来运行启动代码。(所以这部分启动代码其实也是可以放到eMMC的,只不过这样会导致启动时间相对长一点,代码要先加载到DDR里面才能运行)
一般小容量(2~12M)的用NOR Flash,因为其读取速度快,多用来存储操作系统等重要信息,而大容量的用NAND FLASH,最常见的NAND FLASH应用是嵌入式系统采用的DOC(Disk On Chip)和我们通常用的“闪盘”,可以在线擦除。

Nor Flash(因其逻辑电路近似于“或非门”而得名NOR Flash): 主要用来执行片上程序,芯片内执行(XIP, eXecute In Place),这样应用程序可以直接在flash 闪存内运行,不必再把代码读到系统RAM中。NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。常用大小MCU上为2MB;SOC上为16MB~64MB;目前最大应该可以到256MB。用于功能手机、电视、机顶盒、USB Key、TWS蓝牙耳机等小容量代码存储。
  优点:读得快具有很好的读写性能和随机访问性能,因此它先得到广泛的应用;
  缺点:单片容量较小且写入速度较慢,决定了其应用范围较窄。

NAND Flash: 主要用在大容量存储场合,能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理需要特殊的系统接口。用于数码相机、MP3随身听记忆卡,体积小巧的U盘,SD卡,SSD(Solid State Disk)固态硬盘等。
  优点:写得快,擦得快优秀的读写性能、较大的存储容量和性价比,因此在大容量存储领域得到了广泛的应用;
  缺点:不具备随机访问性能。
  
目前flash的规格书上好像都没有明确写是nor flash还是nand flash,所以可以直接搜索XIP,有提到的就是NOR flash;软件上把uboot(启动代码)放到nor flash里也是为了跟kernel(实时操作系统)还有app(应用程序)隔离开不互相影响,当然如果nor flash够大,也可以把uboot跟kernel都放进去;这样即使没有emmc,也是可以把系统跑起来的。还有一种备份处理就是同时在eMMC也放上uboot跟kernel,这样就是防止nor flash挂掉了,也可以从eMMC去启动跑系统并运行程序。
目前软件:qspi: boot emmc: boot/kernel/openwrt系统
在这里插入图片描述

2.5 四大存储类型对比

根据容量、传输速度、可擦除性等关键参数,不同存储器拥有各自的职责,以计算机系统中使用的存储器来看:SRAM速度够快,通常作为中央处理器(CPU)的缓存使用,DRAM价格低廉、容量大,通常用作内存,NOR Flash通常用于代码存储,NAND Flash则用于大数据量存储。
在这里插入图片描述
在这里插入图片描述
国产存储等待一场革命
闪存-百科
Nand flash

3 市场占比

从产值构成来分析,NAND Flash 和DRAM 是构成Memory 产业的核心构成,分别占据Memory 产值的37%和57%。
半导体存储器是一个高度垄断的市场,其三大主流产品DRAM,NAND Flash,NOR Flash更是如此,尤其是前两者,全球市场基本被前三大公司占据,且近年来垄断程度逐步加剧。DRAM市场由韩国三星、海力士和美国美光科技三家占据,全球高端垄断、国产DRAM是空白。
DRAM市场分布:
1.3家垄断:三星、SK海力士、美光,合计占据全球95%以上份额,三家市占率约4:3:2。(在2017年的DRAM市场,三星电子以44.5%的市场份额稳居市场第一;SK海力士则以27.9%的市场份额紧追其后;美光科技(22.9%);南亚科技(2.2%);华邦电子(0.8%)分列其后。这几家几乎囊括了全球所有的DRAM供应。)
2.巨头技术水平:三星已经大规模采用20nm制程,毛利率也达到40%;SK海力士采用25nm制程,毛利率也达到了40%;美光制程水平较靠后,以30nm为主,毛利率为25%左右。
3.国内企业在DRAM领域的市占率几乎为0。

NAND Flash市场分布:
NAND Flash市场几乎全部被三星、海力士、东芝、闪迪、美光和英特尔等六家瓜分。其中三星居垄断地位,2017年它的DRAM 占全球的45.8%及NAND占37%。

Nor Flash市场分布:
市场规模较小的NOR Flash,格局稍显分散,美光(占比25%)、Cypress(收购了飞梭半导体)、旺宏、三星、华邦、兆易创新、宜扬科技等7家占据了90%以上份额。其中,兆易创新(603986)目前国内稀缺,全球市占率在10%左右。
在这里插入图片描述
一文看懂U盘、硬盘、固态硬盘的区别:全球存储器产业分析
目前哪些品牌/型号的 SSD(固态硬盘)比较值得购买?

我现在用的西部数据移动硬盘是属于机械硬盘,1T(有点后悔没买2T的)当时买的439(现在是339),如果是移动固态硬盘的话大概要900。
机械硬盘一般被称为Hard Disk Drive(即HDD)
移动硬盘选固态好还是机械好?

4 应用注意事项

目前还有一款UFS(Universal Flash Storage)存储器.可以认为是eMMC的升级版了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
UFS和eMMC简介与区别
UFS和EMMC的区别–原理学习

5 参考链接

芯片知识小科普:存储器主要分为哪几类?

什么是ROM、RAM、DRAM、SRAM和FLASH的区别

EEPROM和flash的区别

如何区分DDR1 DDR2 DDR3内存条?

NAND NOR FLASH闪存产品概述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_28664971/article/details/120986560

智能推荐

攻防世界_难度8_happy_puzzle_攻防世界困难模式攻略图文-程序员宅基地

文章浏览阅读645次。这个肯定是末尾的IDAT了,因为IDAT必须要满了才会开始一下个IDAT,这个明显就是末尾的IDAT了。,对应下面的create_head()代码。,对应下面的create_tail()代码。不要考虑爆破,我已经试了一下,太多情况了。题目来源:UNCTF。_攻防世界困难模式攻略图文

达梦数据库的导出(备份)、导入_达梦数据库导入导出-程序员宅基地

文章浏览阅读2.9k次,点赞3次,收藏10次。偶尔会用到,记录、分享。1. 数据库导出1.1 切换到dmdba用户su - dmdba1.2 进入达梦数据库安装路径的bin目录,执行导库操作  导出语句:./dexp cwy_init/[email protected]:5236 file=cwy_init.dmp log=cwy_init_exp.log 注释:   cwy_init/init_123..._达梦数据库导入导出

js引入kindeditor富文本编辑器的使用_kindeditor.js-程序员宅基地

文章浏览阅读1.9k次。1. 在官网上下载KindEditor文件,可以删掉不需要要到的jsp,asp,asp.net和php文件夹。接着把文件夹放到项目文件目录下。2. 修改html文件,在页面引入js文件:<script type="text/javascript" src="./kindeditor/kindeditor-all.js"></script><script type="text/javascript" src="./kindeditor/lang/zh-CN.js"_kindeditor.js

STM32学习过程记录11——基于STM32G431CBU6硬件SPI+DMA的高效WS2812B控制方法-程序员宅基地

文章浏览阅读2.3k次,点赞6次,收藏14次。SPI的详情简介不必赘述。假设我们通过SPI发送0xAA,我们的数据线就会变为10101010,通过修改不同的内容,即可修改SPI中0和1的持续时间。比如0xF0即为前半周期为高电平,后半周期为低电平的状态。在SPI的通信模式中,CPHA配置会影响该实验,下图展示了不同采样位置的SPI时序图[1]。CPOL = 0,CPHA = 1:CLK空闲状态 = 低电平,数据在下降沿采样,并在上升沿移出CPOL = 0,CPHA = 0:CLK空闲状态 = 低电平,数据在上升沿采样,并在下降沿移出。_stm32g431cbu6

计算机网络-数据链路层_接收方收到链路层数据后,使用crc检验后,余数为0,说明链路层的传输时可靠传输-程序员宅基地

文章浏览阅读1.2k次,点赞2次,收藏8次。数据链路层习题自测问题1.数据链路(即逻辑链路)与链路(即物理链路)有何区别?“电路接通了”与”数据链路接通了”的区别何在?2.数据链路层中的链路控制包括哪些功能?试讨论数据链路层做成可靠的链路层有哪些优点和缺点。3.网络适配器的作用是什么?网络适配器工作在哪一层?4.数据链路层的三个基本问题(帧定界、透明传输和差错检测)为什么都必须加以解决?5.如果在数据链路层不进行帧定界,会发生什么问题?6.PPP协议的主要特点是什么?为什么PPP不使用帧的编号?PPP适用于什么情况?为什么PPP协议不_接收方收到链路层数据后,使用crc检验后,余数为0,说明链路层的传输时可靠传输

软件测试工程师移民加拿大_无证移民,未受过软件工程师的教育(第1部分)-程序员宅基地

文章浏览阅读587次。软件测试工程师移民加拿大 无证移民,未受过软件工程师的教育(第1部分) (Undocumented Immigrant With No Education to Software Engineer(Part 1))Before I start, I want you to please bear with me on the way I write, I have very little gen...

随便推点

Thinkpad X250 secure boot failed 启动失败问题解决_安装完系统提示secureboot failure-程序员宅基地

文章浏览阅读304次。Thinkpad X250笔记本电脑,装的是FreeBSD,进入BIOS修改虚拟化配置(其后可能是误设置了安全开机),保存退出后系统无法启动,显示:secure boot failed ,把自己惊出一身冷汗,因为这台笔记本刚好还没开始做备份.....根据错误提示,到bios里面去找相关配置,在Security里面找到了Secure Boot选项,发现果然被设置为Enabled,将其修改为Disabled ,再开机,终于正常启动了。_安装完系统提示secureboot failure

C++如何做字符串分割(5种方法)_c++ 字符串分割-程序员宅基地

文章浏览阅读10w+次,点赞93次,收藏352次。1、用strtok函数进行字符串分割原型: char *strtok(char *str, const char *delim);功能:分解字符串为一组字符串。参数说明:str为要分解的字符串,delim为分隔符字符串。返回值:从str开头开始的一个个被分割的串。当没有被分割的串时则返回NULL。其它:strtok函数线程不安全,可以使用strtok_r替代。示例://借助strtok实现split#include <string.h>#include <stdio.h&_c++ 字符串分割

2013第四届蓝桥杯 C/C++本科A组 真题答案解析_2013年第四届c a组蓝桥杯省赛真题解答-程序员宅基地

文章浏览阅读2.3k次。1 .高斯日记 大数学家高斯有个好习惯:无论如何都要记日记。他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢?高斯出生于:1777年4月30日。在高斯发现的一个重要定理的日记_2013年第四届c a组蓝桥杯省赛真题解答

基于供需算法优化的核极限学习机(KELM)分类算法-程序员宅基地

文章浏览阅读851次,点赞17次,收藏22次。摘要:本文利用供需算法对核极限学习机(KELM)进行优化,并用于分类。

metasploitable2渗透测试_metasploitable2怎么进入-程序员宅基地

文章浏览阅读1.1k次。一、系统弱密码登录1、在kali上执行命令行telnet 192.168.26.1292、Login和password都输入msfadmin3、登录成功,进入系统4、测试如下:二、MySQL弱密码登录:1、在kali上执行mysql –h 192.168.26.129 –u root2、登录成功,进入MySQL系统3、测试效果:三、PostgreSQL弱密码登录1、在Kali上执行psql -h 192.168.26.129 –U post..._metasploitable2怎么进入

Python学习之路:从入门到精通的指南_python人工智能开发从入门到精通pdf-程序员宅基地

文章浏览阅读257次。本文将为初学者提供Python学习的详细指南,从Python的历史、基础语法和数据类型到面向对象编程、模块和库的使用。通过本文,您将能够掌握Python编程的核心概念,为今后的编程学习和实践打下坚实基础。_python人工智能开发从入门到精通pdf

推荐文章

热门文章

相关标签