嵌入式开发人员,这些ROM、FLASH、硬盘技术知识,必须要了解
在嵌入式开发中,如果芯片内部有Flash,应用程序通常保存在芯片内部FLASH中,比如Cortex-M系列的单片机;如果芯片内部没有Flash,则应用程序通常保存于外部的NAND FLASH中,比如Cortex-A系列的芯片。这些Flash都是可以通过软件编码进行重新编程。
在计算机发展早期,数据是存储在ROM中,ROM中的数据只读不可写,应用有限,直到后面出现的EEPROM、NAND存储器,使得计算机存储技术的应用得到快速发展,特别是近十年广泛应用的高速存储技术eMMC与UFS,推动消费电子领域的快速发展,比如手机存储技术,现今最新款的小米11,使用了UFS3.1技术。
一、存储器的发展存储器的快速发展得益于半导体技术的发明与发展,特别是晶体管与CMOS管的发明,通过电信号来控制自身开合,以开关的断开和闭合来代表0和1,这些就是存储电路的基本逻辑构成,随着集成电路的出现,ROM存储技术也随之产生。如下简要了解存储技术的发展史:
二、ROM
ROM是Read Only Memory的简称,即为只读存储器。ROM内部的程序是在ROM的制造时被烧录进去的,其中的内容只能读不能改,一旦烧录进去,用户只能读取内部的数据,不能再作任何修改。如果发现ROM的内容写错,则该ROM芯片只能报废。由于ROM是在生产线上生产的,由于成本高,一般只用在大批量应用的场合。
三、PROM
由于ROM在出厂时已被固化,用户无法定制自己的程序和数据,因此进行了改进,出现了PROM(Programmable ROM,可编程ROM)。也就是出厂时ROM里面没有数据即全为1,用户可以用专用工具进行固化程序数据到ROM中,但是这种机会只有一次,一旦写入后也无法修改,若是出了错误,已写入的芯片也只能报废。
四、EPROM
PROM这种只能一次性编程显然成本高不符合开发需求,因此EPROM(Erasable Programmable ROM,可擦除可编程ROM)芯片出现,通过紫外线可重复擦除和写入,解决了PROM芯片只能写入一次的弊端。
EPROM芯片有一个很明显的特征,在其正面的陶瓷封装上,开有一个玻璃窗口,透过该窗口,可以看到其内部的集成电路,紫外线透过该孔照射内部芯片就可以擦除其内的数据,完成芯片擦除的操作要用到EPROM擦除器。
EPROM的型号有以27开头的系列,如2764(8*8K)是一片64K Bits容量的EPROM芯片。EPROM芯片在写入程序后,还要以不透光的贴纸或胶布把窗口封住,以免受到周围的紫外线照射而使程序丢失。
四、EEPROM
虽然EPROM可多次擦除编程,但是由于需要编程器,所以EPROM还是不是很方便使用,因此 EEPROM(Electrically Erasable Programmable ROM,电可擦除可编程ROM)随着产生。EEPROM的擦除不需要借助于其它设备,它是以电子信号来修改其内容的,而且是以Byte为最小修改单位,不需要全部擦除再写入,很适合嵌入式设备的外部存储器。
目前EEPROM还有在使用,以Ateml公司的AT24C系列的CMOS E2PROM为例,其采用IIC通信接口,电压1.8-3.6V,嵌入式设备应用很广泛。
五、Flash
Flash目前主要是Intel于1988年开发出的NOR flash技术和1989年东芝公司开发的NAND flash技术;它们的出现彻底改变了存储器市场上由EPROM(Erasable Programmable Read-Only-Memory电可编程序只读存储器)和EEPROM(电可擦只读存储器Electrically Erasable Programmable Read - Only Memory)一统天下的局面。
这两种技术区别在于接口与内部存储结构。在接口方面,NOR flash有独立的地址与数据线,而NAND flash没有,他们的特性区别如下表所示:
内部结构方面(基于SLC NAND),如下表所示区别:
5.1、nor flash
NOR Flash最大特点是支持XIP(Execute On Chip),既程序可以直接在NOR flash的片内执行,在NOR Flash中的代码运行时不需要重定位复制到RAM内。
如上图所示Nor Flash,型号为MX29LV160。
NOR Flash的地址线和数据线分开,只要能够提供数据地址,数据总线就能正确给出数据。不过不能直接对它进行写操作,执行写操作之前需要先发送固定的命令序列,然后发送写操作的地址和数据。
NOR Flash存储器的最小访问单元一般分为8位和16位的,也有一些NOR Flash器件同时支持8位和16位模式,这种Flash的位宽可以在设计硬件时选择,当芯片的BYTE#引脚接为高电平,芯片工作在位宽16位模式,BYTE#引脚设为低电平时,芯片工作在位宽8位模式。
NOR Flash一般有多个扇区,扇区是NOR Flash擦除的最小单位,Nor Flash中每个扇区的大小也不是固定的。
MX29LV160为例,写时序图如下所示(地址与数据总线是独立的):
读时序图如下所示,具体可参考数据手册:
5.2、nand flash
5.2.1、nand类型
Nand flash是现在使用最多的闪存技术,现在主流的SD卡、eMMC、UFS、SSD等都是基于Nand flash技术的。但是Nand flash根据其存储单元的类型,可分为SLC、MLC、TLC、QLC、PLC、…… 后续会有很多类型的LC系列。这些类型的区别是同一个存储单元可以表示的数据位数不同,以SLC、MLC、TLC、QLC为例如下图所示:
SLC:一个单元表示1bit数据;
MLC:一个单元表示2bit数据;
MLC:一个单元表示3bit数据;
QLC:一个单元表示4bit数据;
因此同样尺寸大小的nand flash,基于QLC可以存储的容量是SLC的4倍之多。但是虽然存储容量多,但是在读写速率、擦除寿命及稳定性上却是更低的,目前市面上比较多的是基于SLC、MLC、TLC单元结构的,特性对比如下:
SLC读写快,寿命长,但价格贵,容量低;而TLC读写慢,寿命短,但价格便宜,容量高。所以市面上基于nand flash的产品中,低端产品大部分都是TLC,中端产品大部分都是mlc,企业级的高端产品就是用SLC,追求的是稳定。
5.2.2、2D与3D技术
现在市场上追求的是设备的小型化,但是容量要求最大化,因此通过不断地提升制程工艺技术,减小每个存储单元的大小,如从45nm到16nm(目前最先进制程为高通骁龙888处理器达5nm),能到达同样的芯片体积存储容量进行扩大。
但是制程提高也带来了一个瓶颈,当随着制程工艺提高,每个存储单元越小,nand单元颗粒的氧化层越薄,可靠性越低,特别是QLC这种一个存储单元表示4bit/cell数据,影响更大。
假设存储单元电压是 1.8V,对 SLC 而言,一个 bit 有二个状态,平均分配 1.8V 电压,每个状态可以分到 0.9V;对 MLC 而言,四个状态平均分配电压,每个状态可以分到 0.45V,以此类推,TLC 每个状态只可以分到 0.225V,而 QLC 更惨,每个状态只可以分到 0.1125V。在这么小的电压下,这么多的状态以极小的电压区隔,电压区隔越小越难控制,干扰也越复杂,而这些问题都会影响 TLC 或 QLC 闪存的性能、可靠性及稳定性。
Nand 2D技术属于平面闪存(Planar NAND)范畴,其通过工艺提高容量瓶颈在10/9nm上;因此Nand 3D技术早在2007年就被提出来,即立体结构闪存。举例说明:如果2D是平房,则3D就是高楼大厦,3D就是N层的2D闪存的堆叠,如上图所示。
但是3D并不是简单的进行堆叠,不同的公司有不同3D技术工艺,在3D闪存中具有代表性的工艺有:
也正因为3D NAND的技术,使得部分采用相应技术的TLC产品达到了MLC的性能,就是我们常说的3D TLC。而三星、美光等大厂的第四代颗粒3D QLC产品也已经投入了市场,让广大消费者体验到了更高的容量、更低的价格、更快的读写性能。
随着3D Nand的出现,2D由于无法在缩小单元尺寸的瓶颈限制,已经走到尽头,现在最新的3D堆叠层数达到了128层,如下图所示:
5.2.3、nand接口与时序
Nand flash比nor flash写/擦除快,寿命长,成本低,得到更加广泛的应用,但是其没有独立地址总线与数据总线,地址与数据共用8bit/16bit IO,因此其读取速率方面比nor略低一些。
以美光MT29F系列nand flash为例(如MT29F16G08),其复用8bit或16bit IO用于传输命令、地址、数据,同时有5组控制信号CE#,CLE,ALE,WE#,RE#,还有WP写保护与R/B状态信号线。
各个引脚功能描述如下表所示:
写命令时序:
写地址时序:
数据写入时序:
数据读取时序:
以上读写MT29F系列芯片的具体命令与地址信息组成可参考MT29F系列的规格书,网盘地址为:
链接:https://pan.baidu.com/s/15SHhADiX1uD4CCDA20nXvQ
提取码:d80g
六、MMC与SD系列存储卡
6.1、存储卡发展简介
Nand Flash的出现使得数据存储得到快速的发展,但是Nand Flash只是一种存储介质,要在其上读写数据,需要外部加上主控和电路设计,因此会影响到读写速率的提升,同时也是有点复杂。
基于此,控制器+Nand Flash组合的存储结构模式开始出现,控制器用于处理Nand Flash的存储逻辑,同时也可以管理NAND的坏块、ECC校验等,解放了外部主芯片的工作,提高了开发效率。于是,MMC卡、SD卡(TF卡)、eMMC卡、UFS等各种接口卡开始出现。
MMC是比较早出现的一种卡类型,其所定义的总线接口类型及通信协议规范,后续都被SD卡规范及eMMC规范继承和延续,参考如下图:
首先,在1997年,西门子公司和SanDisk推出MMC(MultiMedia Card)卡,成立了MMC协会(MultiMedia Card Association简称MMCA),MMC的发展目标主要是针对数码影像、音乐、手机、PDA、电子书、玩具等产品。
其次,在1999年,日本松下、东芝及美国SanDisk公司共同开发研制了SD(Secure Digital Memory Card)卡,在MMC卡基础上,扩展了总线协议,支持数据存储的安全性。后续Mini SD(Mini Secure Digital Memory Card)从SD卡发展而来,体积是SD卡60%,性能跟SD卡一样;
在2004年,摩托罗拉与SANDISK共同研发TF卡(TransFLash),体积更是只有SD卡的1/4,因此,后续早期智能手机的容量扩展都是用来TF卡。
早期SD规范只是针对数据存储,即只连接SD卡;后面制定了SDIO规范,除了可以外接SD卡外,通过SD总线还可以连接外围其他IO设备,如WiFi card,Bluetooth card,GPS card等,因此现在SDIO接口基本上可以兼容SD卡与MMC卡。
2010年,随着智能手机的发展,需要更快速率的数据存储,因此新的eMMC(Embedded Multi Media Card)规范也发展起来,在2011年至2016年,智能手机的存储FLASH主要基于eMMC接口;而2016年后,更快的UFS规范的出现,将eMMC替换,UFS成为当下智能手机的主要存储FLASH。
6.2、存储卡接口
1、MMC接口:
MMC卡接口共只有7针,支持SPI模式与MMC模式,3根电源线,4根通信线,如下图所示,分别是SPI模式(Do,Di,CLK,CS)与MMC模式(CMD,DAT,CLK),所以MMC只支持单根数据线。
2、SD接口
SD接口从MMC中扩展而来,增加到了9针,SD卡大小和MMC卡差不多,比MMC稍微厚一点,其也是有分为SPI模式与SD模式,其中SD模式有1线和4线模式,1线模式可兼容MMC卡的MMC模式。
上图描述了SD与MMC接口的对于关系,MMC卡可以通过转换适配器当作SD卡使用(即使用SD卡1线模式),SD接口个引脚含有如下表:
3、TF卡接口
TF卡接口是SD卡接口的延续,只有8针,在SD接口上少第3脚VSS1,其它与SD接口一致。
TF也称为microSD卡,因此可以通过转换器转为SD使用。
TF卡也支持SPI模式与SD模式,跟SD卡一致,但是体积比SD卡小很多。
4、eMMC接口
eMMC接口有MMC发展而来,也是由MMC协会订立,其数据总线扩展到了8位,主要应用是对存储容量有较高要求的消费电子产品,比如手机。
随着eMMC规范版本的升级,其通信速率也不断的提高,最大速率可达400MB/s,如下表所示,在UFS出现前,智能手机存储器基本上是基于eMMC接口。
5、UFS接口
UFS(Universal Flash Storage)是JEDEC发布的新一代通用闪存存储标准,包括主机侧和内存芯片侧的标准。物理层是MIPI M-PHY,接口协议是SCSI。
如上图所示,下行数据流DOUT与上行数据流DIN是独立的,走差分信号,因此可以进行全双工通信,相比与eMMC的半双工,速率提高几倍,因此现在市面高端智能手机基本都是UFS存储,最新小米11使用的是UFS3.1版本。
UFS卡的外观类似TF卡,有12针引线,每个引线的含义如下图所示:
由于UFS相比与TF卡,存储速率有明显优势,将来替换TF卡不可避免,比如在运动相机、航拍飞机等对速率要求更高的领域。
下图描述的eMMC与UFS的发展时间表,UFS具体的规范信息可参考官方网站下载:
https://www.jedec.org/document_search/field_committees/28?page=1
七、SSD硬盘
上面的那些存储卡基本应用于嵌入式领域,比如消费电子和物联网等设备,现在比较流行的SSD硬盘,内部存储也是基于Nand Flash存储,主要应用PC和服务器上。其内部也是由闪存芯片+控制器+缓存构成。
SSD硬盘通过主控连接的接口比较复杂,而且种类繁多,主要有SATA接口、PCIE等,如下表所示:
目前使用比较多的是SATA3、PCI-E、Msata、SATA Express、M.2、U.2接口,它们的速率、尺寸大小等特性如下表所示:
各种硬盘的接口常见的如下图所示:
八、HDD硬盘(传统机械硬盘)
目前硬盘有三种类型,分别为:机械硬盘(HDD)、固态硬盘(SSD)、混合硬盘(SSHD),如下表所述:
HDD硬盘出现时间甚至比ROM还更早,上个世纪50、60年代初,发明了机械硬盘HDD,体积巨大,容量奇小,HDD硬盘发展历史如下表:
HDD硬盘的出现,促进了计算机快速发展,特别是90年代个人电脑的兴起,现在许多台式电脑还有很多的HDD硬盘。
Flash官宣停止运营 中国版值得继续使用吗
来源:太平洋电脑网
最近,关于Flash死亡的话题又再次引起了热议。早前Flash Player的东家Adobe就已经确认,将会在2020年12月31日彻底停止支持Flash Player,Flash Player迎来生命终点(EOL)。Adobe在其官网上确认,Flash Player将不再获得任何包括安全更新在内的技术支持,用户应该在EOL日期之前卸载Flash。
Flash将停止运营,但中国特供版除外?
然而,Adobe同时在新浪微博上表示,Adobe将会继续与重橙网络合作并支持其在中国大陆地区对Flash Player的独家发行与维护,该合作仅限中国大陆地区。换言之,Flash Player特别为中国制作了一个“特供版”,这到底是个怎么样的存在?值不值得继续使用?今天就来谈谈吧。
Flash Player为何要迎来终结?
作为曾经网络上的大红人,Flash Player退役终究是一件令人唏嘘的事情。在早年,FlashFlash诞生于1996年,为仍处于雏形的互联网带来了更丰富的交互、更多样的色彩、更动感的视觉,是否使用Flash,甚至一度成为网页是否先进的标准——看看多少网页开发的书籍都是Flash教程,就能得以一窥Flash当年的江湖地位。
服务13亿用户的口号,还是名副其实的
然而,时代在变迁,Flash Player已经难以在移动互联网时代继续高歌猛进。当你苹果iOS首度吹响了抛弃Flash Player的号角,乔布斯当年为此甚至发布了一封“Flash 之我见(Thoughts on Flash)” 的长篇公开信,信中抨击了Flash Player的种种缺点,具体如下:
·安全性差,被赛门铁克公司列为 2009 年最差安全记录之一;
·稳定性不好,导致 Mac 电脑死机;
·迟迟未推出移动版,导致手机等移动设备访问 Flash 视频网站时消耗了大量额外的电力;
·Flash 主要的操作习惯均为鼠标定制,在多点触摸操作方式中,大量 Flash 网站需要重写
时至今日,Flash Player依然保留着这些缺点。而随着HTML5的崛起,Flash的功能也早不再是独步江湖,无论是视频播放,还是多媒体交互,HTML5都能做得更好。无论在功能还是性能上,Flash对比HTML5都没有优势。
业界对这些情况是早有了解的。在iOS拒绝Flash登陆后,Android和WP也随之宣布不再支持Flash Player。而在桌面平台上,Flash Player也走到了尽头,无论是Chrome、Firefox还是Edge,都对Flash发出了最后通牒。
无论从兼容、功能、效率、安全的角度出发,Flash都已经跟不上时代,它被淘汰自然也就理所当然了。
中国特供的Flash值得继续使用吗?
由于国情,中国的互联网生态对Flash的依赖是比较重的。国内仍有不少老旧的网络系统,需要借助Flash来实现办公、登录、上传数据等功能。此情此景下,Adobe和重橙网络合作,推出中国特供版的Flash,就有了其合理之处。
Adobe表示,这是为了支持中国大陆地区市场特有的发行渠道、用户习惯和企业、开发者和游戏社区。然而用户对此是否买账?未必。
在Adobe的官方微博下,出现了大量负面评论,不少网友都并不欢迎Flash中国特供版,还有人将其斥为“流氓软件”。出现这样的情况其实是可以理解的,因为从2018年重橙代理Flash一来,中国地区特供的Flash就已经带上了一些强硬的推广风气。
Adobe微博的评论区中,大家并不欢迎Flash中国特供版
例如,当你更新完Flash后,就会弹出一个推广网页,其中的内容可以说非常“屠龙宝刀点击就送”了。又例如,Flash之前还干过捆绑2144游戏中心、强行运行FlashHelperService进程之类的事情,很多作风已经带有流氓软件的特征。在这样的情形下,人们自然会对中国特供版Flash产生不信任。
Flash更新后弹出的游戏推广页面
另一方面,Flash本身作为落后的互联网技术,用特供版来苟延残喘,这是否逆潮流而行?如果让Flash彻底退役,倒逼依赖Flash的各类网络系统来革新,会不会是更合理的做法?这是很值得探讨的问题。
总结
作为旧时代的产物,Flash的退役是合乎情理的。但国内的一些互联网系统仍依赖Flash,中国特供版的Flash依旧有用武之地。
微软Win10内置Flash,会推送补丁修复Flash漏洞
另外,目前Windows10仍内置Flash Player,而且会通过Windows Update推送相应更新,如果你想要避免Flash带来的弹窗等问题,使用Win10内置的Flash或许是更好的选择。当然,在Adobe停止Flash的技术支持后,或许Win10的Flash更新推送也会停止,但国内特供的Flash就会有安全补丁推送吗?重橙网络是否有修补Flash漏洞的能力?我们拭目以待吧。
相关问答
bioswp有两个针 脚 ,哪种是可刷?防病毒BIOS写开关。为避免系统bios受到病毒的侵害,主板上设计了bios写开关bios_wp。默认状态bios是不可被修改的。如果需要刷新bios,打开bios_wp,并在bios设置...
为什么我今天打开创世联盟就不让玩了,说 flash 版本太低,可...更新一下flash播放器版本就行了另外更的得是你用的浏览器内核的版本比如你用的ie的你更的谷歌的那肯定没用有用(1)回复1回复qq_42791wp11550回复y7wki...
下载的视频播放器电脑上可以用吗?-ZOL问答这要看你的手机和电脑的系统,如果你的手机是windowsphone8系统,电脑也是windows系统,那就是可以用的,其他的话除非你下载的PC版播放器的安装文件,也就是以exe...
5个免费Web视频及音频播放器 - OSCHINA - 中文开源技术交流社区如今最可靠方案莫过于Flash。本文介绍5个免费的,简单易用的,可以嵌入任意网页的FLV视频与MP3音频播放器,它们都基于Flash技术。1.FlowplayerFlowplaye....
我在他人的手机上用QQ登了王者荣耀,之后我改了密码,他还能登...dsfrwldanwri并不能,就像你在别的手机登QQ一样,修改密码后会被要求重新输入密码有用(0)回复519179390nanzhuj强烈建议你你用电脑登录一下你的QQ然后再用...
wordpress建站教程?如果你想做关健词优化,可以找我。-END-11,91373wordpress页面判断函数总结2019.03.20 is_category()wordpress判断分类页面近期文章...
显卡bios那儿下载-ZOL问答wpanteraw主板问题...没得搞有用(0)回复supertty你找下你的主板的说明书里面有详细的介绍有用(0)回复cdfengxing用WINFLASH直接在windows下...
急需了解!新手建站, wp 和dede哪个比较合适?,dede转 wp 价格贵...[回答]dede数据库字段说明:dede_addonarticle附加文章表aidint(11)文章编号typeidint(11)分类栏目编号bodymediumtext文章内容dede_addonflash...
ui四个界面是什么?一、【艺术界面设计ArtUserInterface】Interface传统美术是所有艺术的基本素养。课程包括素描(绘画构图与透视、几何体、静物、设计素描)和色彩(色彩...
如果没有了windows和苹果系统我们还可以用什么系统可以替代?实际上操作系统远远不是只有Windows和苹果两个系统可选,它们二者都是闭源操作系统,也就是说,我们只能使用这个系统,但是并不知道它们内部是怎么工作的。另外...M...