「收藏」Flash闪存颗粒和工艺知识深度解析
[收藏] Flash闪存颗粒和工艺知识深度解析
原创: Hardy 架构师技术联盟 5天前
Wafer即晶圆,是半导体组件“晶片”或“芯片”的基材,从沙子里面高温拉伸生长出来的高纯度硅晶体柱(Crystal Ingot)上切下来的圆形薄片称为“晶圆”。采用精密“光罩”通过感光制程得到所需的“光阻”,再对硅材进行精密的蚀刻凹槽,继续以金属真空蒸着制程,于是在各自独立的“晶粒”(Die)上完成其各种微型组件及微细线路。对晶圆背面则还需另行蒸着上黄金层,以做为晶粒固着(Die Attach) 于脚架上的用途。
以上流程称为Wafer Fabrication。早期在小集成电路时代,每一个6吋的晶圆上制作数以千计的晶粒,现在次微米线宽的大型VLSI,每一个8吋的晶圆上也只能完成一两百个大型芯片。我们NAND Flash的Wafer,目前主要采用8寸和12寸晶圆,一片晶圆上也只能做出一两百颗NAND Flash芯片来。
NAND Flash Wafer
Wafer的制造虽动辄投资数百亿,但却是所有电子工业的基础。晶圆的原始材料是硅,而地壳表面有用之不竭的二氧化硅。二氧化硅矿石经由电弧炉提炼,盐酸氯化,并经蒸馏后,制成了高纯度的多晶硅,其纯度高达99.99%以上。晶圆制造厂再将此多晶硅融解,再在融液里种入籽晶,然后将其慢慢拉出,以形成圆柱状的单晶硅晶棒,由于硅晶棒是由一颗晶面取向确定的籽晶在熔融态的硅原料中逐渐生成,此过程称为“长晶”。硅晶棒再经过切段,滚磨,切片,倒角,抛光,激光刻,封装后,即成为集成电路工厂的基本原料——硅晶圆片,这就是“晶圆”。
下图是NAND Flash生产简要流程:
Die 就是芯片未封装前的晶粒,是从硅晶圆(Wafer)上用激光切割而成的小片(Die)。每一个Die就是一个独立的功能芯片,它无数个晶体管电路组成,但最终将被作为一个单位而被封装起来成为我们常见的闪存颗粒,CPU等常见芯片。
什么是ink Die
在晶圆制造过程中,会对Wafer中的每个Die进行严格测试,通过测试的Die,就是Good Die,未通过测试的即为Ink Die。这个测试过程完成后,会出一张Mapping图,在Mapping里面会用颜色标记出不良的Die,故称Ink Die。
Flash芯片封装分类
目前NAND Flash封装方式多采取TSOP、FBGA与LGA等方式,由于受到终端电子产品转向轻薄短小的趋势影响,因而缩小体积与低成本的封装方式成为NAND Flash封装发展的主流趋势。
TSOP: (Thin smaller outline package )封装技术,为目前最广泛使用于NAND Flash的封装技术,首先先在芯片的周围做出引脚,采用SMT技术(表面安装技术)直接附着在PCB板的表面。TSOP封装时,寄生参数减小,因而适合高频的相关应用,操作方便,可靠性与成品率高,同时具有价格便宜等优点,因此于目前得到了极为广泛的应用。
BGA: (Ball Grid Array也称为锡球数组封装或锡脚封装体 )封装方式,主要应用于计算机的内存、主机板芯片组等大规模集成电路的封装领域,FBGA 封装技术的特点在于虽然导线数增多,但导线间距并不小,因而提升了组装良率,虽然功率增加,但FBGA能够大幅改善电热性能,使重量减少,信号传输顺利,提升了可靠性。
采用FBGA新技术封装的内存,可以使所有计算机中的内存在体积不变的情况下容量提升数倍,与TSOP相比,具有更小的体积与更好的散热性能,FBGA封装技术使每平方英寸的储存量有很大的提升,体积却只有TSOP封装的三分之一,与传统TSOP封装模式相比,FBGA封装方式有加快传输速度并提供有效的散热途径,FBGA封装除了具备极佳的电气性能与散热效果外,也提供内存极佳的稳定性与更多未来应用的扩充性。
LGA: (Land Grid Array ) 触点陈列封装,亦即在底面制作有数组状态坦电极触点的封装,装配时插入插座即可,现有227 触点(1.27mm中心距)和447 触点(2.54mm 中心距)的陶瓷LGA,应用于高速逻辑 LSI 电路,由于引线的阻电抗小,对高速LSI 相当适用的,但由于插座制作复杂,成本较高,普及率较低,但未来需求可望逐渐增加。
Flash芯片封装叠Die(Stack Die)
由于NAND Flash单颗Die的容量有限,为了实现更高的容量,需要在一个封装片内堆叠几个Die。在Wire Bond的时候,用金线互连。
目前单颗Die的容量最高的为Micron公司的MLC 4GB,目前最先进的堆叠技术可以叠8层,因此理论上MLC单颗封装片可以做到32GB。Micron公司计划在09年Q4推出此容量的封装片。
Flash芯片TSOP封装和BGA封装的内部结构
TSOP封装只需要一个引脚框架,把NAND FLASH Die的Pad打线(Wire Bond)连接到引进框架上面即可。封装技术简单,成本低。但其打线方式只能从两边打线,因此stack die就比较困难。
BGA封装与TSOP封装不同在于其采用了Substrate,用电路板来对引脚走线,因此可以进行四面打线,这样在进行叠die的时候,就变得更加容易操作。但成本会比TSOP要高。
Flash芯片封装的尺寸,一些封装方式尺寸比较:
NAND Flash出货有两种产品样式:
一种是Wafer,即晶圆出货,这种产品样式一般客户采购回去需要再测试和COB封装等,这种客户多为闪存卡大客户。
一种是封装片出货,NAND Flash目前最普遍采用的是48TSOP1的封装方式,现货市场均为TSOP的封装片。
NAND Flash按工艺可分为SLC与MLC
SLC英文全称(Single Level Cell)即单层式单元储存。SLC技术特点是在浮置闸极与源极之中的氧化薄膜更薄,在写入数据时通过对浮置闸极的电荷加电压,然后透过源极,即可将所储存的电荷消除,通过这样的方式,便可储存1个信息单元,这种技术能提供快速的程序编程与读取,不过此技术受限于Silicon efficiency的问题,必须要用较先进的流程强化技术,才能向上提升SLC制程技术。
MLC英文全称(Multi Level Cell)即多层式单元储存。Intel在1997年9月最先开发成功MLC,其作用是将两个单位的信息存入一个Floating Gate(闪存存储单元中存放电荷的部分),然后利用不同电位(Level)的电荷,通过内存储存的电压控制精准读写。MLC通过使用大量的电压等级,每一个单元储存两位数据,数据密度比较大。SLC架构是0和1两个值,而MLC架构可以一次储存4个以上的值。因此,MLC架构可以有比较高的储存密度。
TLC英文全称(Triple Level Cell)即一个单元可以存储单元可以存储3bit,因此需要8个等级的电位进行编码解码才能实现。其实TLC是属于MLC的一种。
SLC和MLC的基本特性表
Flash坏块的形成
NAND Flash的存储原理是,在写入(Program)的时候利用F-N隧道效应(Tunnel Injection隧道注入)的方法使浮栅充电,即注入电荷;在擦除(Erase)的时候也是是利用F-N隧道效应(Tunnel Release隧道释放)将浮栅上的电荷释放。
隧道注入和隧道释放的产生都需要十几伏的瞬间高电压条件,这对浮栅上下的氧化层会造成一定损伤,因此这样重复的操作(P/E Cycle)是有限的。SLC大概是100K次,MLC大概是10K次。达到读写寿命极限的时候存储单元就会出现失效,然后就会造成数据块擦除失效,以及写入失效,于是就会被标记起来,作为坏块,并将这个标记信息存放在Spare Area里面,后续操作这个Block时,需要Check一下这个信息。
Flash固有坏块
由于制造工艺的原因,通常普通的NAND FLASH从出厂开始就有坏块了,一般在2‰以下。一般芯片原厂都会在出厂时都会将坏块第一个page的spare area的第6个byte标记为不等于0xff的值。
NAND Flash的存储单元是有使用寿命的
NAND Flash的存储原理是,在写入(Program)的时候利用F-N隧道效应(Tunnel Injection隧道注入)的方法使浮栅充电,即注入电荷;在擦除(Erase)的时候也是是利用F-N隧道效应(Tunnel Release隧道释放)将浮栅上的电荷释放。隧道注入和隧道释放的产生都需要20V左右瞬间高电压条件,这对浮栅上下的氧化层会造成一定损伤,因此这样重复的操作(P/E Cycle)是有限的。SLC大概是100K次,MLC大概是10K次。
三星估算的SSD硬盘的寿命
如果每天对SSD写入4.8GB的数据,假设SSD总容量为16GB,那么,你至少需要3.34天才能对整个SSD的每个单元擦写一次;如果此SSD为擦写次数为100K的SLC单元,那么,你至少需要3.34×100K天才能使这个SSD完全失效;3.34×100K天=913年,因此16G的SSD可以使用913年 。那么,如果是MLC的话,也至少可以使用91.3年。
晶圆制程工艺发展历史
芯片制程工艺是指晶圆内部晶体管之间的连线间距。按技术述语来说,也就是指芯片上最基本功能单元门电路和门电路间连线的宽度。
主流厂商的晶圆制程工艺以及下一代制程工艺的情况,如下表。
芯片制造工艺在1995年以后,从0.5微米、0.35微米、0.25微米、0.18微米、0.15微米、0.13微米、90纳米、75纳米、65纳米一直发展到目前最新的34纳米。
一步步印证了摩尔定律的神奇。以90纳米制造工艺为例,此时门电路间的连线宽度为90纳米。我们知道,1微米相当于1/60头发丝大小,经过计算我们可以算出,0.045微米(45纳米)相当于1/1333头发丝大小。可别小看这1/1333头发丝大小,这微小的连线宽度决定了芯片的实际性能,芯片生产厂商为此不遗余力地减小晶体管间的连线宽度,以提高在单位面积上所集成的晶体管数量。采用34纳米制造工艺之后,与65纳米工艺相比,绝对不是简单地令连线宽度减少了31纳米,而是芯片制造工艺上的一个质的飞跃。
目前最先实现34nm工艺的是Intel和Micron联合投资的IM,此技术被最先应用在了NAND FLASH上面,可见NAND FLASH的制程工艺跳跃是所有IC中最快的。
晶圆技术的发展都是受生产力驱动,必须向更小的制程间距和更大的晶圆尺寸发展。制程从2.0um、0.5um、0.18um、90nm一直到目前的34nm,晶圆尺寸从最初的5英寸发展到目前的12英寸,每次更迭都是一次巨大的技术跳跃,凝聚了人类科技的结晶,也一次次印证了摩尔定律的神奇。
晶圆尺寸的大约每9年切换一次。而晶圆制程由最初的几年更迭一次,到目前的基本上每年都能更迭一次。
更多内容和“闪存技术、产品和发展趋势全面解析”全面的闪存技术电子书,请点击“了解更多”查阅。
Solidigm推动Physical Stream技术,提升QLC SSD寿命与性能(一)
摘要
为了解决 SSD 的写放大、GC 等问题带来的挑战,给业务提供更强大的存储能力支撑,释放数据价值,Solidigm 基于业界领先的QLC SSD 定义了一种新型的存储方案:Physical Stream。Physical Stream 支持在 Stream Mode 与 Non-Stream Mode 功能之间灵活进行切换。在切换为 Stream Mode 时,该方案能够通过减少写放大等方式提升 SSD 的耐用性,同时提升带宽以及每秒读写次数 (IOPS) 性能,也降低了IO 时延,从而避免了硬件改造所带来的成本支出。
此外,围绕客户业务层应用需求,Solidigm在应用场景优化了 Physical Stream的软硬件方案的产品适配工作。并且通过业务 I/O 工具进行了模拟真实场景测试,证明该方案可以实现更高的性能密度、更低的成本、更高的带宽与更高的 SSD 耐用性,为多云内容分发网络 (CDN)、RocksDB 业务的快速发展提供云存储助力,帮助最终用户高效释放数据价值。
概述
由于在性能上具备突出优势,以及拥有成本的持续降低,基于 NVMe 协议的固态盘(SSD) 在各行各业中得到了快速的应用,并成为主流的存储设备。在此趋势下,推动 SSD 的创新,提升 SSD 的性能、耐用性,并降低拥有成本也就具有尤为重要的意义。其中一个棘手的挑战在于,SSD 在使用过程中可能出现写放大、垃圾回收 (GC) 等现象,严重影响 SSD 的寿命与成本。
为了解决 SSD 的写放大、GC 等问题带来的挑战,给业务提供更强大的存储能力支撑,释放数据价值, Solidigm 一直在努力设计和开发新型存储方案。在过去一年中,基于一些实际的客户用例, Solidigm SSD 定义了一种新型的存储方案:Physical Stream。Physical Stream 支持在 Stream Mode 与 Non-Stream Mode 功能之间灵活进行切换。在切换为 Stream Mode 时,该方案能够通过减少写放大等方式提升 SSD 的耐用性,同时提升带宽以及每秒读写次数 (IOPS) 性能,也降低了IO 时延,从而避免了硬件改造所带来的成本支出。
此外,围绕业务层应用的需求, Solidigm还与客户合作开展了基于 Physical Stream的软硬件方案的产品适配工作。采用了Solidigm 的四层单元 (Quad-Level Cell, QLC) SSD,并且通过业务 I/O 工具进行了真实场景测试,证明该方案可以实现更高的性能密度、更低的成本、更高的带宽与更高的 SSD 耐用性,为多云内容分发网络 (CDN)、RocksDB 业务的快速发展提供云存储助力,帮助最终用户高效释放数据价值。
图 1. CDN 加速的内容服务业务**
挑战
在实际业务运营过程中,我们在很多客户那里发现,目前的 SSD 还存在很大的潜力开展技术创新,以满足业务发展对于存储系统的差异化要求。这主要体现在以下几个方面:
带宽利用率: 大部分客户本身业务层面性能开销较小,然而因为多分区的使用,导致 SSD 内部垃圾回收,因此带宽利用率仍有进一步提升的空间。
SSD 耐用性: 大部分客户的CDN场景以 LSM-tree 的模型进行数据存储,该模型是业界一个非常通用的闪存存储数据结构模型,广泛存在于各种列存储数据库系统中,对闪存非常友好,使传统的 SSD 写放大有了很大的改善。
成本: 带宽利用率、SSD 耐用性都会影响 SSD 的总体拥有成本。该技术期望能够通过进一步优化,持续降低成本。
SSD 接口协议演进
助力化解写放大、垃圾回收挑战
随着数字化转型的深入,数据成为企业最具价值的资产之一,部署大容量、高性能、高经济性的存储系统成为企业释放数据价值的重要方式。这一需求驱动着SSD 的不断升级迭代。Solidigm积极创新,在过去很短的时间从SLC快速迭代到MLC、TLC、 QLC,再加上3D堆叠工艺的加持,存储密度不断加大,如图 2所示。
图 2. SSD NAND介质的迭代—密度越来越高**
随着业务对多路虚拟化,低延迟的需求越来越强烈,传统的SSD已经渐渐满足不了用户的需求了。这些需求主要体现在需要提升不同虚机数据的隔离性,减少 SSD 的垃圾回收,延长 SSD 的使用寿命即耐用性,降低成本。
首先需要改善的一个重点问题是垃圾回收(GC)所带来的耐用性等问题:SSD 的 NAND Flash 底层大多数是 NMOS 存储单元,为了保证磨损平衡和性能,需要不定期做GC,擦除出干净的块(Block),如图 3所示。在 GC 过程中,需要用一部分空闲空间作为 GC 过程中未过期数据的存储,这涉及到数据的迁移和预留空间(Spare)的占用,而且频繁的 GC 还会导致 SSD 耐用性不断降低。此外,如果需要进行擦除,还需要将有效数据都移动至新的 NAND block。这无疑会造成写放大问题。
图 3. 标准SSD需要不定期做垃圾回收**
第二个要解决的重点问题是数据隔离,在上述过程中,Host 会根据平均磨损情况,开新的条带将数据写入不同的物理块。而SSD的磨损平衡策略也会把数据做Dfrag的时候分散到不同的物理块。这两个场景中,SSD不会对数据做任何隔离,无论用户是按分区管理还是按namespace管理,不同的分区或者不同的namespace之间是没有物理隔离机制的。这对需要物理隔离且担心隔壁读写干扰的应用是不友好的。
SSD 数据放置 (Data Placement) 技术有助于解决这一问题。Data Placement 支持驱动器提供一个到主机的接口,允许它将主机写入线程映射到驱动器内部写入,支持在逻辑或者物理位置进行数据分离。目前,SSD 的 Data Placement 技术路线包括 Open Channel、Stream、FDP、ZNS 等。图 4表述了最近几年这些技术的一个演进过程。
图 4. NVMe SSD Data Placement技术近年的演进路径**
其中,Open Channel 不仅需要数据放置管理,还需要上层软件对介质进行管理。其管理过程会非常复杂而难以维护,基本上已经被业界放弃。ZNS 是当前国内研究的热门方向,其优势在于上层软件可以完全控制驱动器上的 Data Placement,杜绝内部 GC与预留空间的可能性,驱动器级别的 GC 将大大降低。这意味着更少的写放大和更高的 SSD 耐用性,但缺陷是需要复杂的软件更改,不适合每个客户。FDP技术是行业下一波研究的热点,它可以灵活的支持按擦除块和条带进行分割,同时支持随机和顺序写入。下图是二者跟Physical Stream的简单对比。
图 5. 不同 Data Placement 方案的对比**
另外,还有一个过渡技术叫做Multi-Stream,该技术已经进入 NVMe1.3 协议多年,它的含义是:所有来自于主机 (Host) 下发的写数据都会带一个 hint,通过该 hint 将用户数据 LBA 以一定的属性和规则进行区分,将具备相同属性的用户数据作为一个数据集合进行写入,称为 Stream,并且指定 Stream ID。SSD 固件可以通过该 Stream ID 进行 I/O 调度或者 FTL 设计,以满足不同的用户需求。同时,应用层将用户数据按照不同的生命周期进行标记和归类,即 Stream ID(通常≤8 个),然后针对 FTL 以及 Data Placement 进行重新设计。例如,将不同生命周期的冷或者热数据分开放置,可以大大提升 SSD 的 GC 效率,减小其写放大,从而带来改善的收益和用户体验。下图是支持Multi-stream技术的SSD和不支持的SSD原理对比图。
图 6. Stream SSD 与普通 SSD 的数据放置模式**
Multi-stream SSD 能够将不同生命周期更新频率的数据分开,并且用 Stream ID 表示,在 SSD FTL 层面会以不同的 Stream 分别进入到不同的 NAND Erase Block。对于那些更新频率较快的热数据,其 GC 的概率也更高,但是由于热数据所在的 NAND Erase Block 里并没有掺杂冷数据和温数据,因此针对只有热数据的 Band 的 GC,其移动的有效数据会有一定程度的减少,对于耐用性损耗、性能与服务等级协议 (QoS) 有一些提升。
注释:** 表示图片来源于 Solidigm
相关问答
【英语(1513:49:54)erasers 是什么 意思?】作业帮[最佳回答]erasern.消除用具;消磁器;抹音头挖字刀,消字灵,橡皮,黑板擦[美](在拳击中)打倒对手的猛击现代英汉词典erasern.橡皮,擦字橡皮擦拭器简明英汉词...
fast和quick的区别?1,词性上面的区别。fast既是形容词,也是副词。quick是形容词,它的副词形式是quickly。2,强调重点不同。fast强调速度快,强调的是“速度”。比如:一辆汽...
【shehasnoeraserinherhand,同义句】作业帮[回答]答案:Shedosn'thaveaneraserinherhand.或Shedoesn'thaveanyerasersinherhand.解析:no=...
C++如何删除list集合前面n条元素?可以使用如下方法:list.erase(list.begin(),list.begin()+n)该方法比自己写循环语句效率要高,另外自己写循环语句需要注意迭代器的正确性可以使用如下方...
CAD2008中怎么标注等距的线段用“=”表示_作业帮[回答]打开和关闭:工具栏上方点击右键进行选择2动态坐标的打开与关闭:在左下角坐标显示栏进行点击3对象捕捉内容的选择:A在对象捕捉按钮上右键...动态...
cad无限缩小的快捷键是多少[回答]DIDIST(测量距离)POLPOLYGON(画正多边形)DIVDIVIDE(等分)PREPREVIEW(视图预览)DLIDIMLINEAR(线性标注)PRINTPLOT(打...
CAD里合并多段线的命令快捷键 是什么 ? - Jeffy毛 的回答 - 懂得CAD里合并多段线的命令快捷键是J。出现“[闭合(C)/打开(O)/合并(J)/宽度(W)/拟合(F)/样条曲线(S)/非曲线化(D)/线型生成(L)/放弃(U)]:”,输入“j...
cad怎么用e键删除原图纸东西?在AutoCAD中,使用"E"键通常用于执行"Erase"(删除)命令,以清除图纸中的对象。要使用"E"键删除原图纸中的东西,你可以按照以下...
c11容器常用方法?1.vector:vector//不会重复插入相同键值的元素//采用红黑树的平衡二叉检索树结构,中序遍历sets;//创建setb;//从大到小}}set::iteratorit;it=s...
怎么画圆出现的是多边形..-盖德问答-化工人互助问答社区工具——选项——显示——显示精度只是视觉问题打印出来就是圆可能还不熟,用自带得搜索功能搜一下,有你要得答案。视图-重生成看起来就好了!