你的U盘,其实是个监狱|flash存储原理:

image 44

固态硬盘,U盘,SD卡

起:

虚拟数据的真身,究竟是什么?那就拆开U盘,取出芯片,把它放大100倍,1000倍,10000倍,你会看到有数百亿个被深埋在金属层下被绝缘体隔绝的小黑屋,这里就是纳米尺度的监狱,这些牢房囚禁的就是数据的本体。欢迎来到“闪存”牢笼,我的自由电子。

数据代码

之前讲了很多晶体管的制造工艺,今天教你如何用一种特殊的晶体管,去捕捉野生的电子,那么电子犯了什么错,我们为什么要抓它?为了记录信息。

文明的发展与扩张,离不开信息的交流与存储,远古的山顶洞人,只能把文字刻在石头上,后来人类懂了造纸术,可以把美人们画在纸上,现代人学懂二进制和半导体,就能把无数小姐姐存进一个U盘里。

这其中的存储原理是什么?先让我们随便在你的U盘里,抽一份《学习资料》,把它放大,你会发现这张图片是有很多个色块拼成的,而每一块都有一串独特的RGB颜色编码,

转化成二进制,就是一串24位的01数字(24bits),按顺序记下所有色块的数字,就是电脑保存这张图片的方法,而除了图片,像文字,音频,视频等等信息,都可以数字化,变成一堆0和1,你在屏幕前看到的一切,不论是二次元萌妹,还是三次元猛男,包括我和这个鱼缸,本质上就是一堆1和0组成的数字序列。佛经有云:红尘中,凡所有相,皆是虚妄,《数电》里讲,屏幕里,凡所有形,尽是壹零。

浮栅晶体管

为什么要把信息数字化呢?因为方便工程师们用通电和断电的晶体管,来记录这些1和0,

这里简单回顾一下,传统晶体管,它就像一根走电流的水管,

两端叫源极和漏极,

上方还有一个用绝缘层隔开的栅极,相当于管道的阀门,在栅极上加一个驱动电压,电流导通,代表1,

撤走电压,通路关断,代表0,

所以在手机和电脑芯片中,我们既可以用晶体管来搭建逻辑开关,也可以拿它们组成芯片的缓存,比如SRAM和DRAM来实现数据的临时存储和高速读取,不过普通晶体管是没有长期记忆的,就像水管不会蓄水一样,电脑缓存只要一断电,里面记录的0和1,就会全部归0,

怎么样在断电的情况下,把一堆0和1长期保存呢?那就把电子封印住,不让她们跑路,于是工程师们在晶体管栅极的下方,额外加入一层多晶硅导体叫做浮栅(Floating Gate),

用来容纳电子,浮栅外围用一层绝缘体薄膜包住,防止电子跑路,这样就能长期保存0和1,

举个例子,给你两根浮栅晶体管,一根带有电子,一根里面是空的,你们猜猜,哪个是0,哪个是1?现在我们上电读取数据,给栅极加一个弱电压,没存电子的这一根,会和普通晶体管一样,在栅极电压驱动下,两端导电,代表1,而浮栅中自带电荷,相当于抵消了栅极上的驱动电压,两端不会导电代表“0”,

这种利用阈值电压偏移来实现长期存储的浮栅晶体管,就是构成U盘,SD卡和固态硬盘的基本器件,所以要想把这张10MB的小姐姐,也就是差不多八千万个1和0,永久地封印在U盘里,我们就可以准备八千万根晶体管,并在其中属于“0”的位置把电子关进绝缘层包裹的浮栅中,

量子隧穿

但这就有一个问题了,既然电子会被绝缘层阻隔出不来,那当初存数据的时候,它们要怎么进去?难道电子会穿墙术吗?物理学中可没有玄学,但是有量子力学,只要这层绝缘体墙够薄,薄到用纳米来计量,我们就能观测到少数幸运的电子,居然真的穿到了墙的另一边,

这就是量子隧穿现象,这与WIFI穿墙主要靠电磁波衍射的迂回穿透不同,隧穿它是真的穿,原理是在微观尺度下,粒子的位置与动量不确定,只要绝缘层的势垒不宽,电子的投射系数就不会趋近0,而是有一定概率穿过能量较高的势垒。

在微观尺度下,电子会失去颗粒度,体现波函数,不惧势垒高能,垂直打透圈层,隧穿具体打法有两种:如果电子能量够高那就直接穿透,这个叫直接隧穿 (Direct Tunneling) ,否则就需要外界赋能,在外电场的协同作用下,打出一套组合拳,完成场助隧穿,也叫FN隧穿(Fowler-Nordheim Tunneling),隧穿机制比较复杂,没办法用一个视频讲清楚,我的硕士论文就是研究量子隧穿磁阻的应用,

电子牢笼&数据写入

浮栅绝缘层也就是墙的厚度越薄,或者电子能量越高,发生隧穿的概率就越大,因此要做一个囚禁电子的牢笼。墙壁既不能太厚,也不能太薄,太薄了电子关不住,数据很难长期保存,像早期的MNOS,SONOS器件,绝缘层的厚度只有3纳米左右,写入数据很轻松,因为衬底的电子可以直接隧穿进来,但同样的,电子也容易越狱,所以这种器件不能长期保存数据,记忆力还不如我家的鱼靠谱。

但是墙太厚了也不好,数据的写入和删除就会很麻烦,比如远古电脑中,有一类存储芯片EPROM,它使用的牢房绝缘层厚度有100纳米宽,电子关在里面,确实很安全,但进出就变得非常困难,必须在芯片封装上留一个窗口,每次修改数据时,得拿紫外光照射,给电子提供额外能量帮助它们越狱,

于是在经过不断摸索后,人们发现电子牢房的墙壁厚度控制在10纳米左右是比较合适的,这个尺度下,墙的势垒不宽不窄,电子很难直接隧穿,关进去可以长期服刑,同时电子的进出也相对简单,在写入或删除数据时,不用照紫外光了,通个电就行了。

比如在晶体管源漏两端加一个高压,让水平方向有大电流,加一个高压让水平方向有大电流持续一段时间,

这期间流过去的一大堆电子中,总有那么几个多动症的,蹦跶进上面的浮栅层被关起来,这种瞬时动能较高,热运动明显的电子叫做“热电子”,所以这种数据写入方法,叫做“热电子”注入,

另外一种写入方法是利用FN隧穿,在栅极上加一个高压,用强电场给电子赋能,让它们沿电场方向隧穿入栅,

想要删除数据时就反转电压方向,请它们出栅,因此宏观上每当你动动手指,把怦然心动的小姐姐存进U盘或固态盘的刹那,微观下也就意味着有成千上万个自由电子失去自由,通过热电子注入或FN隧穿被你关进特定位置的牢房,从此不见天日,直到你把数据删除,它们才会被刑满释放,

否则就得等绝缘层损耗,或者器件老化,绝缘层又为什么会损耗呢?前面说过数据的写入和删除,需要在栅极加上高压,实现FN隧穿,而高压电场对于本来就薄得绝缘层会造成损耗,因此U盘和固态硬盘是有擦写次数限制的,但是数据读取,几乎没有次数限制。

因为读数据不需要用高压去移动电子,只要加个低压,清点一下,哪个浮栅关着电子就行了,早期的浮栅晶体管,只能判断里面“有”或“没有电子”这两种状态,对应“0”和“1”,也就是一个晶体管只能记住一位二进制数,

算下来一个8G的U盘,至少要600多亿根晶体管,注意我说至少,是因为要实现U盘的正常功能,除了存放数据本身的代码,还需要留出很多冗余的晶体管用来存放数据的校验代码以及执行地址管理,耗损均衡(Wear Leveling)等功能类型的代码,

Flash 芯片结构

因此哪怕是一枚最小的U盘,本质上都是一个巨型的电子监狱。数百数千亿根圈禁电子的浮栅晶体管被集成在一枚小小的芯片上,用来捕捉和关押电子,而根据这些晶体管的排列方式,我们又可以把闪存结构分为两大类:NOR和NAND,在NOR结构中,晶体管采取并联的形式,每一个管子都要有个金属触点,连到同一根公共导线bit line上,

NAND结构则采用串联的形式,一长串晶体管只需要头,尾两个触点,分别与两根公共导线相连,因此NAND闪存更省面积,很适合用来作为大容量存储设备,

所以U盘和SSD硬盘基本都是NAND结构,而晶体管并联的NOR结构,优点则在于方便数据的读取,尤其是提升了随机读取的速度,换言之,同样的程序放在NOR Flash 运行的速度要比在NAND Flash 更快,所以现在很多MCU芯片,比如在车载或医疗领域,对存储容量的要求不高,就会直接用NOR Flash作为片上存储或内存方案,

如果要提高flash 的存储容量,一方面要增加晶体管的密度,早期会通过缩小器件尺寸,后来主要用立体堆叠来完成,比如V-NAND,3D-NAND,现在的工艺能给闪存垂直叠出232层,

另一方面则是要提高单个晶体管的存储效率,原来一个浮栅管只有0,1两种状态,在80年代末出现了多态管(Multi Level Cell),可以根据浮栅中电子的含量区分出4种状态,容量加倍,一根顶俩,后来又有了1顶3(TLC),甚至1顶4 (QLC)的16态晶体管,当然为了精细区分,多重阈值电压,代价是器件功耗变高,制造工艺的复杂度和系统的控制难度增加,同时也会影响可靠性和擦写次数寿命,

而除了对单个牢房进行升级改造,整个监狱也要实现智能化管理,毕竟U盘中这么多关押电子的片区,难免碰到物理损坏的时候,假如监测到某一区域坏了,就要把电子转存到其他单元,这就是90年代出现的block 阵列管理,

这里解释一下block 是啥,在工程师的术语中,我们把一串串晶体管,拼出来的平面叫做一页Page,

几十页Page凑在一堆,形成一坨Block,

成千上万坨block ,汇聚成一片die,好几片die,打包封装到一起,才是一枚flash芯片。

到此你应该明白,在U盘,SD卡,和固态盘中,一切数据的实体,都是0和1的数字,是被囚禁的电子,是带浮栅的管子,是block与page,在过去闪存芯片曾是高价的奢侈品,到现在成为常见的日用品,

未来挑战

而未来,闪存技术的发展还有着更多的挑战,在工艺上要保证纳米级别的沉积与刻蚀精度,才能造出比232层更复杂的立体结构,在软件上,要保证更严格的信息安全,提高存储数据的防护级别,在硬件上要保证更高的器件可靠性,提高存储设备的使用上限和寿命,

毕竟,除了擦写数据造成的损耗,一个芯片,即便放在那啥也不做,晶体管自己也会老化,比如电子的直接隧穿跑路,本底辐射造成的软错误(soft error),金属与绝缘层之间失配的膨胀系数(stress migration),都会导致闪存患上老年痴呆,

因为这些概率极小的事件,会随着时间不断累积,成为必然,最终让芯片衰老,数据失真,功能失效,所以尽管理论上,一块U盘或者固态盘,只要你不频繁删改数据,可以保存20年,但如果想把你的U盘当成传家宝,最好还是每隔几年就给里面的小姐姐搬个新家,毕竟被人为禁锢的电子,总有冲破束缚的时候,也许更稳妥的保存,还是把虚拟货币的密钥刻在石头上。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

9 + 15 =

联系我们

翘首以待

见字速复

“sales@colorusb.com”

U盘采购指南

免费获取PDF

This ebook will change everything you ever thought about relationships and attachment. Find the secret to connecting better and faster