1.10 存储器 MEM Memory
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 有哪些分类?
尽管EEPROM和Flash支持反复擦写,但保留ROM的核心特征:断电后数据不丢失。其“只读”属性体现在写入操作需特定条件(如高压电信号或块擦除),而正常运行时仍以读取为主。例如Flash按扇区擦除,EEPROM按字节操作,但两者均归类为ROM技术的改进型。
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(SSD、UFS、eMMC): 主要用在大容量存储场合,能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用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的区别–原理学习