存储器
ROM
- 我们一般把手机和电脑的硬盘当作ROM。
- ROM的全称是:Read Only Memery,只读存储器,就是只能读不能写的存储器。
- 但是现在的ROM不仅可以读,还可以写数据,比如给手机下载APP,就是给手机上的ROM写数据,这又是怎么回事呢?这得从ROM的历史说起。
- 最早的ROM只是用来存储程序的地方,比如BIOS,它是Basic Input Output System的缩写,意思是基本输入输出系统,它也是电脑启动时运行的第一个软件,在1975年,BIOS还非常简单,不需要经常更新,所以当时的ROM确实是只能读不能写。
- 后来有了PROM,全称是Programmable ROM,即可编程只读存储器,对PROM写入程序后,数据便无法更改,它利用的是熔丝技术,它存储的每一位数据都是由熔丝状态决定的,比如当熔丝熔断之后它代表0,没有熔断代表1。
- 继PROM之后,人们又发明了EPROM,全称是Erasable Programmable ROM,即可抹除可编程只读存储器,它可以利用高压写入数据,擦除数据的时候需要将芯片曝光于紫外光下一段时间,所以这种ROM上方都有一块玻璃开窗。
- 还有一种OTPROM(One Time Programmable ROM),它和EPROM的写入原理相同,但是为了节省成本,不设置开窗,所以这种ROM只能编程一次。
- 到了1978年,人们发明了,EEPROM(Electrically Erasable Programmable ROM),它是电可擦除可编程只读存储器。
- 它的擦除方式是使用高压电场,所以在EEPROM芯片内部都设置有电荷泵电路来产生高压。
- 对于一些比较简单的电子产品,它的微控制器里面就内置了EEPROM,比如遥控器、电水壶这些,我们保存的用户设置信息就存储在微控制器的EEPROM里面。
- 然后我们再来看这些存储器,它既然是可擦除、可写,但是它又叫只读存储器,是不是显得很矛盾呢?
- 严格意义上说这种叫法是有问题的,但是这些存储器都是在最原始的ROM上发展而来的,那时候的ROM确实是只能读的,所以后面再生产的存储器即使能写数据,也叫只读存储器,这算是历史遗留问题吧。
- 1980年,Flash memory被发明出来(只是申请了发明专利),也就是我们现在所说的闪存,当年,日本东芝公司的舛冈富士雄博士在1980年,申请了一个叫做simultaneously erasable EEPROM的专利,它就是现在的NOR FLASH,flash是闪光的意思,之所以叫flash,是因为他的同事想到了照相机的闪光灯发光的一瞬间非常快,所以便叫flash。
- 在1986年,舛冈富士雄又发明了NAND Flash,说到NAND Flash你可能不知道是什么,但你肯定知道SSD,也就是固态硬盘,它就属于NAND Flash,除此之外还有U盘、存储卡这些也都属于NAND Flash。
- 这是它的结构示意图,当我们给G极高电平时电子进入浮栅层,当我们断电以后G极电压为0,但是由于隧穿层的存在,电子回不去了,所以我们的数据可以长久的保存。
- 如果我们想要释放电子,可以给G极负电压,Flash就是这样存储一位数据的。
- NOR FLASH是将晶体管并联在了一起,它的每一位都可以被寻址,而NAND FLASH则是将晶体管串联在了一起,这样需要的连线就会更少,而且电路也会更简单,所以它更可以大容量的集成。
- 无论是NOR FLASH还是NAND FLASH其实都是属于EEPROM,因为它们本质上是通过电来擦除和写入的。
- 上述我们说的这些都属于ROM,即使是断电之后,它们还可以长久的保持数据。
RAM
- RAM的全称是:Random Access Memory 随机存取存储器,在断电之后它所存储的数据就会消失,但是在速度上要远远大于ROM,即使是固态硬盘也不能跟RAM比肩。
- RAM又分为DRAM和SRAM。
- DRAM(Dynamic Random Access Memory)是动态RAM,就是我们电脑上的内存条,它是靠电容存储信息的,所以需要动态刷新,以此来给电容不停地充电,所以在速度上DRAM就不如SRAM。
- SRAM(Static Random Access Memory)是静态RAM,CPU的L1、L2缓存说的就是SRAM。
- 它的信息存储靠的就是门电路这些,不需要电容,所以速度上更快。
- 但是由于它存储一位信息需要的晶体管比较多,所以不能大容量集成,而DRAM一个晶体管就能存储一位信息,所以可以大容量集成。
- 说到存储器的速度,其实最快的是CPU中的寄存器,寄存器其实也属于存储器,它的速度几乎和CPU是一样的。
- 如果把这些存储器按速度来划分,越往上速度越快,而按容量来分,越往下容量越大,