报价
HOME
报价
正文内容
nand flash页 NAND Flash与NOR Flash究竟有何不同|半导体行业观察
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

NAND Flash与NOR Flash究竟有何不同|半导体行业观察

来源:内容由 微信公众号 半导体行业观察 (ID:icbank) 翻译自「embedded」,作者 Avinash Aravindan,谢谢。

嵌入式系统设计人员在选择闪存时必须考虑许多因素:使用哪种类型的Flash架构,是选择串行接口还是并行接口,是否需要校验码(ECC)等。如果处理器或控制器仅支持一种类型的接口,则会限制选项,因此可以轻松选择内存。但是,情况往往并非如此。例如,一些FPGA支持串行NOR闪存、并行NOR闪存和NAND闪存来存储配置数据,同样,它们也可以用来存储用户数据,这使得选择正确的存储器件更加困难。本文将讨论闪存的不同方面,重点放在NOR闪存和NAND闪存的差异方面。

存储架构

闪存将信息存储在由浮栅晶体管制成的存储单元中。这些技术的名称解释了存储器单元的组织方式。在NOR闪存中,每个存储器单元的一端连接到源极线,另一端直接连接到类似于NOR门的位线。在NAND闪存中,几个存储器单元(通常是8个单元)串联连接,类似于NAND门(参见图1)。

NOR Flash(左)具有类似NOR门的架构。NAND Flash(右)类似于NAN

NOR Flash架构提供足够的地址线来映射整个存储器范围。这提供了随机访问和短读取时间的优势,这使其成为代码执行的理想选择。另一个优点是100%已知的零件寿命。缺点包括较大的单元尺寸导致每比特的较高成本和较慢的写入和擦除速度。

相比之下,与NOR闪存相比,NAND闪存具有更小的单元尺寸和更高的写入和擦除速度。缺点包括较慢的读取速度和I / O映射类型或间接接口,这更复杂并且不允许随机访问。值得注意的是,NAND Flash中的代码执行是通过将内容映射到RAM来实现的,这与直接从NOR Flash执行代码不同。另一个主要缺点是存在坏块。NAND闪存通常在部件的整个生命周期内出现额外的位故障时具有98%的良好位,因此,器件内需要ECC功能。

存储容量

与NOR闪存相比,NAND闪存的密度要高得多,主要是因为其每比特成本较低。NAND闪存通常具有1Gb至16Gb的容量。NOR闪存的密度范围从64Mb到2Gb。由于NAND Flash具有更高的密度,因此主要用于数据存储应用。

擦除/读写

在NOR和NAND闪存中,存储器被组织成擦除块。该架构有助于在保持性能的同时保持较低的成本,例如,较小的块尺寸可以实现更快的擦除周期。然而,较小块的缺点是芯片面积和存储器成本增加。由于每比特成本较低,与NOR闪存相比,NAND闪存可以更经济高效地支持更小的擦除块。目前,NAND闪存的典型块大小为8KB至32KB,NOR Flash为64KB至256KB。

NAND闪存中的擦除操作非常简单,而在NOR闪存中,每个字节在擦除之前都需要写入“0”。这使得NOR闪存的擦除操作比NAND闪存慢得多。例如,NAND闪存S34ML04G2需要3.5ms才能擦除128KB块,而NOR闪存S70GL02GT则需要约520ms来擦除类似的128KB扇区。这相差近150倍。

如前所述,NOR闪存具有足够的地址和数据线来映射整个存储区域,类似于SRAM的工作方式。例如,具有16位数据总线的2Gbit(256MB)NOR闪存将具有27条地址线,可以对任何存储器位置进行随机读取访问。在NAND闪存中,使用多路复用地址和数据总线访问存储器。典型的NAND闪存使用8位或16位多路复用地址/数据总线以及其他信号,如芯片使能,写使能,读使能,地址锁存使能,命令锁存使能和就绪/忙碌。NAND Flash需要提供命令(读,写或擦除),然后是地址和数据。这些额外的操作使NAND闪存的随机读取速度慢得多。例如,NAND闪存S34ML04G2需要30μS,而NOR闪存S70GL02GT需要120nS。因此,NOR比NAND快250倍。

为了克服或减少较慢读取速度的限制,通常以NAND闪存中的页方式读取数据,每个页是擦除块的较小子部分。仅在每个读取周期开始时使用地址和命令周期顺序读取一页的内容。NAND闪存的顺序访问持续时间通常低于NOR闪存设备中的随机访问持续时间。利用NOR Flash的随机访问架构,需要在每个读取周期切换地址线,从而累积随机访问以进行顺序读取。随着要读取的数据块的大小增加,NOR闪存中的累积延迟变得大于NAND闪存。因此,NAND Flash顺序读取可以更快。但是,由于NAND Flash的初始读取访问持续时间要长得多,两者的性能差异只有在传输大数据块时才是明显的,通常大小要超过1 KB。

在两种Flash技术中,只有在块为空时才能将数据写入块。NOR Flash的慢速擦除操作使写操作更慢。在NAND Flash中,类似于读取,数据通常以页形式编写或编程(通常为2KB)。例如,单独使用NAND闪存S34ML04G2 写入页面需要300μS。

为了加快写入操作,现代NOR Flashes还采用类似于页面写入的缓冲区编程。例如,前文所述的NOR闪存S70GL02GT,支持缓冲器编程,这使其能够实现与单词相似写入超时多字节编程。例如,512字节数据的缓冲区编程可以实现1.14MBps的吞吐量。

能耗

NOR闪存在初始上电期间通常需要比NAND闪存更多的电流。但是,NOR Flash的待机电流远低于NAND Flash。两个闪存的瞬时有功功率相当。因此,有效功率由存储器活动的持续时间决定。NOR Flash在随机读取方面具有优势,而NAND Flash在擦除,写入和顺序读取操作中消耗的功率相对较低。

可靠性

保存数据的可靠性是任何存储设备的重要性能指标。闪存会遭遇称为位翻转的现象,其中一些位可以被反转。这种现象在NAND闪存中比在NOR闪存中更常见。出于产量考虑,NAND闪存随附着散布的坏块,随着擦除和编程周期在NAND闪存的整个生命周期中持续,更多的存储器单元变坏。因此,坏块处理是NAND闪存的强制性功能。另一方面,NOR闪存带有零坏块,在存储器的使用寿命期间具有非常低的坏块累积。因此,当涉及存储数据的可靠性时,NOR Flash具有优于NAND Flash的优势。

可靠性的另一个方面是数据保留,这方面,NOR Flash再次占据优势,例如,NOR Flash闪存S70GL02GT提供20年的数据保留,最高可达1K编程/擦除周期,NAND闪存S34ML04G2提供10年的典型数据保留。

编程和擦除周期的数量曾是一个需要考虑的重要特性。这是因为与NOR闪存相比,NAND闪存用于提供10倍更好的编程和擦除周期。随着技术进步,这已不再适用,因为这两种存储器在这方面的性能已经很接近。例如,S70GL02GT NOR和S34ML04G2 NAND都支持100,000个编程 - 擦除周期。但是,由于NAND闪存中使用的块尺寸较小,因此每次操作都会擦除较小的区域。与NOR Flash相比,其整体寿命更长。

表1提供了本文中讨论的主要内容摘要。

NOR闪存和NAND闪存的主要特性与一般和具体比较数据的比较。

通常,NOR闪存是需要较低容量、快速随机读取访问和更高数据可靠性的应用的理想选择,例如代码执行所需。NAND闪存则非常适用于需要更高内存容量和更快写入和擦除操作的数据存储等应用。

SSD新范式 |数据中心SSD测试 之Windows篇(一)

数据中心/企业级SSD的测试是一个非常庞杂的工程,但许多用户和经销商并没有充分理解这一点。为了让大家对数据中心SSD的测试有更深入的了解,我们准备了本系列的文章。

环境与工具

数据中心SSD通常是用在服务器或者工作站当中的。主要的运行环境(操作系统)是Windows、Windows Server,以及各式Linux系统,如CentOS、Ubuntu,还有国产的OpenEuler、龙蜥、OpenCloudOS等。

Linux是大多数服务器使用的操作系统,Linux系统下最常用的测试软件是FIO。但考虑到Linux的部署、命令行操作还是有一定的操作门槛,这方面的内容我们将来再做展开。

在多数人更为熟悉的Windows系统下,常用于数据中心SSD测试的工具软件是IOmeter。IOmeter不需要安装,压缩包内只有两个文件,直接运行其中的“IOmeter.exe”文件即可。

一些数码大V在消费类SSD中也会使用IOmeter以体现其专业度。这种“专业”会包括两方面:其一,IOmeter的界面比CystalDiskMark、TxBENCH、AS SSD等“快餐”测试软件要复杂得多,会给人营造艰深晦涩的感觉。

其二,IOmeter确实可以提供“快餐”软件所缺乏的数据,典型的成果包括诸如“万秒图”之类的。“万秒”意味着可以给SSD比较重的负荷,说服力也会高很多。而工作负荷的轻重,不仅仅是高低档消费类SSD的区别,也是数据中心SSD与消费类SSD的根本区别。

SSD工作负荷的轻重,主要体现在几个方面:

1、 队列深度

2、 混合读写

3、 持续时间

这几方面的内容我们会在相关的测试项目中逐步展开。同时,我们先通过消费者熟悉的快餐测试软件帮助读者理解测试项目的内涵,并在此基础上逐步过渡到IOmeter,再进阶到FIO的应用。

测试最基本的设置:

数据包大小

略有SSD测试常识的人都知道,需要考察几种性能:顺序读、顺序写、随机读、随机写。

那么,顺序和随机的定义是什么?

先说随机。现代操作系统的内存和文件系统都是页式管理,以4KB为单位。基于磁盘的512Byte扇区概念对SSD而言意义不大。因为NAND Flash的基本存储单元是页,容量一般为2KB或者4KB,这是最小的读写单元。因此,综合操作系统和NAND Flash的特点,4KB的数据块会被看做是最基本、最通用的操作单元,公认用这个容量的数据包当做“随机”读写的代表。

考虑到应用或者SSD的特点,在某些测试中8KB、16KB这样的数据会更有实际意义。譬如Oracle数据库的默认块大小是8KB,也可以被设为2KB~64KB不等。再譬如Solidigm D5-P5316、P5336等大容量SSD使用了64KB或者16KB大小的间接单元(IU,indirection unit),它们可以接受4KB的写入,但使用更大的数据单元会更有效率。使用这些软硬件的用户都会进行针对性的优化,对应的,测试软件在考察随机性能时也应该进行相应的设置。

刚才说的是“随机”读写的尺度与“页”相关,那么,“顺序”读写的尺度就与块相关了。若干NAND Flash的页会组成一个块,典型的是64个页。常见的块容量可能是128KB、256KB、512KB。NAND Flash的擦除是以块为单位的。因此,128KB数据包的读写可以看作是顺序操作的最小单元,1到4个数据块正好填满一个块。也有的测试会使用较大的单元,如IOmeter的预设是256KB,CrystalDiskMark预设了1MB等,这些数据包的容量可能更接近NAND Flash的实际块容量。

以人们熟悉的CrystalDiskMark为例,左侧的色块是SEQ1M、SEQ128K、RND4K,代表的就是顺序读写(1MB数据包)、顺序读写(128KB数据包)、随机读写(4KB数据包)。

综上,设置正确的数据包大小,就是考察SSD的随机或顺序读写的性能。最普适的设置是4KB和128KB,酌情按照需要额外增加特定的数据包大小。

对测试成绩影响最大的设置:

队列深度

要想在SSD测试中获得理想的成绩,最值得留意的重点是设置适宜的队列深度。

对于个人电脑,需要同时访问SSD的应用程序并不多,主要就是前台运行的软件(如游戏、图形图像软件)会断续读写较大的文件,以及后台运行的通讯工具(包括电子邮箱、即时通讯工具)偶尔接收信息,持续时间较长但吞吐量比较小的行为主要是后台上传下载一些文件或者系统更新等。整体而言,消费类SSD的工作队列深度在1~4之间。

服务器面对的情况就不一样,其会同时服务多个用户/租户,其并行操作的规模要大得多,平均到每个SSD的工作队列深度通常在16~64的水平。

常用的测试软件大多可以模拟比较大规模的访问,譬如CystalDiskMark,其4KB随机写测试的默认设置是线程数为1,队列32——ATA协议的最大队列深度就是32。而针对NVMe SSD的预设为线程16、队列32,也就是界面中简写的“Q32T16”。

实际的队列深度就是队列数乘以线程数,Q32T16就是32×16=512,总共可以向SSD发出512队列深度的操作请求。NVMe协议可以接受64K之多的队列,而且还可以优化操作顺序,原则上队列深度越大,平摊下来的指令延迟相对越小,IOPS会越高。因此,在使用CystalDiskMark做测试时,如果忘记选择NVMe模式,那就是使用较小的32队列深度进行随机测试,成绩就会差一些。

深究一下队列和线程

队列深度是我们设置的队列数和线程数的积。理论上来说,对于SSD而言,线程1×队列512,与线程16×队列32,由于乘积相同,其实是等效的。

较多的线程可以充分发挥现代处理器核心数量的优势,有可能带来更优的测试数据,但这并不绝对,这是因为跨处理器内核甚至跨插槽的操作也可能会带来预期以外的结果。相对而言,线程1得到的测试数据更容易复现。因此,在实际的测试当中,我们会建议分别考察1个线程和8/16个线程的结果。

多线程的测试还有更为复杂的设置技巧,譬如让不同线程写入不同的区域,这会带来更可靠的性能。

较大的队列深度有利于获得更高的IOPS,让数据更好看。但对于消费类SSD,深队列的测试数据参考价值不高,大家还是看浅队列(Q1T1)的数据更有参考价值。对于数据中心SSD,一般官方公布的4KB随机读写测试的数据是在256队列深度下的。更大的队列深度,如512,可以体现特别极端的情况,但实际应用中很少发生,因为积压太多请求也意味着累积的延迟非常大,会拖慢整个系统的响应。如果服务器真的会有这么大的负荷,那应该建议配置更多的SSD来分担。

小结

今天,大家对SSD测试的基本参数就算入门了,对常见测试软件提供的预设信息可以做到“知其然,知其所以然”。对于IOmeter,我们只是初步展示其界面,其中有许多的预设项目,经过本节文章,大家也能够有所理解。下一节,我们将详细讲解IOmeter的设置,以及一些稍微高级的测试设计技巧。

关于 Solidigm

Solidigm 是全球领先的创新 NAND 闪存解决方案提供商。Solidigm致力于成就客户,激发数据无限潜能,推动人类发展进步。源自于英特尔出售的NAND和SSD业务,Solidigm公司于 2021 年 12 月正式成立,目前是半导体领导者SK 海力士在美国的独立子公司。Solidigm 总部位于美国加州兰乔科尔多瓦,拥有 2000 多名员工,在全球 20 个地区设有办事机构。如欲了解有关 Solidigm 的更多信息,请访问[https://solidigm.com],或关注微信公众号[SolidigmChina]。"Solidigm"是SK hynix NAND Product Solutions Corp (d/b/a Solidigm) 的商标。

相关问答

请问视频输出的电压是多少?我不小心碰到被电到了-ZOL问答

nandflash端口有用(0)回复Double豆应该不是电压的问题,一般显示器的输出电压都在24V安全电压以内,看后级的电容就知道了,如果是10V的一般为5V,如果是16V的...

CDR 页面 外的图片为什么到了下一页就看不到了-ZOL问答

应该是flash插件损坏吧,下一个新的安装试试,如果回答对您有所帮助,请采纳一下...雷军第五次年度演讲发布会提前看:八大新品,还有onemorething评论24屏幕好...

flash 电路结构?

Flash电路是由三个主要部分组成的:输入/输出(I/O)部分、存储单元和控制电路。1.输入/输出(I/O)部分:用于与其他电路或设备进行数据交换。它包括输入引脚(...

有推荐视频剪辑的教学视频的吗,最好免费的,谢谢?

Halo,我是威威一笑。其实我也是过新手期30天,目前在西瓜视频做vlog领域。我觉得如果你想学视频剪辑的话,可以参考下面的几个账号。因为西瓜视频本身就有很多...

转化率的公式和概念_作业帮

[回答](已经反应的物质的量)/(开始加入的总的物质的量)*100%简单来说,就是反应的

专业网站美工哪里找啊

[回答]幸福调品牌设计有着6年多的设计经验,专职于设计方面,企业网站设计,商城网站设计,div+css,网站改版、网站美化、flash引导页设计,淘宝装修,淘宝海报...

Storage Device(ChipsBnk Flash Disk USB Device) P-ZOL问答

下载个WINHEX看看或者DiskGenius看看实际容量是多少。看了之后追问谢谢有用(0)回复sunnygsun你这是没有检测到FLASH芯片或者量产信息丢失你这个的主控是...

PCI Express Root Port #5状态异常 - Microsoft Community

[回答]关于您反馈底座连接不稳问题。我会尽力为您提供协助。我们这边用样机进行了测试,禁用SurfaceHotPlog之后Mobile6th/7thGenerationIntel(R)Pro...

PPT怎么插入 flash ?

在PPT中插入Flash动画方法一将扩展名为.SWF的Flash动画文件插入PPT---插入一个由文件创建的对象---在“动作设置”中的“对象动作”选项中选择“激活内容...

app下载官方(官方)网站/ 网页 版登录入口/手机版最新下载_微思

用安卓app下载官方可领取大量福利,视频攻略抢先看扫码打开当前页下载小编点评🧢导语:安卓app下载官方🏃是一家备受瞩目的体育平台,🤬提供丰富多样的体育赛...

 伦士度  华中婆婆纳 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部