【FLASH存储器系列四】NAND和NOR两种Flash的本质区别是什么?

这篇具有很好参考价值的文章主要介绍了【FLASH存储器系列四】NAND和NOR两种Flash的本质区别是什么?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

👉个人主页: highman110
👉作者简介:一名硬件工程师,持续学习,不断记录,保持思考,输出干货内容

目录

1 Nand 和Nor的区别

2 从存储原理上分析这些区别的原因

        1、为什么nor flash的读取速度比nand flash要稍快?

        2、为什么nand flash的容量比nor flash更大?

        3、为什么flash的写入操作之前,必须要先进行擦除?

        4、为什么nor的擦除速度比nand慢这么多?

        5、为什么nor flash的可擦除次数低于nand flash?

        6、为什么nand flash的写入速度比nor flash要快?

        7、为什么NOR flash可以支持XIP,Nand flash不可以?


1 Nand 和Nor的区别

        下表是从各个维度列举的两种flash的区别:

NOR flash

NAND flash

时间

Intel于1988年首先开发出NORf1ash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。

1989年,东芝公司发表了NAND f1ash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口轻松升级。

特点

1、存储少量代码
2、芯片内执行,程序可以直接在flash闪存内运行,不必把代码读到系统RAM中

3、传输效率高,在1、4MB小容量时具有很高的成本效益

4、读取速度快,写入和擦除速度低

1、高数据存储密度
2、读速度慢,写入和擦除速度快

3、flash的管理需要特殊的系统接口

4、NandFlash没有挂接在地址总线上,如果想用NandFlash作为系统的启动盘,就需要CPU具备特殊的功能,如s3c2410在被选择为NandFlash启动方式时会在上电时自动读取NandFlash的4k数据到地址0的SRAM中。 如果CPU不具备这种特殊功能,用户不能直接运行NandFlash上的代码,那可以采取其他方式,比如好多使用NandFlash的开发板除了使用NandFlash以外,还用上了一块小的NorFlash来运行启动代码。

性能比较

flash闪存是非易失性存储器,可以对称为块的存储器单元块进行擦写和再编程。任何f1ash器件的写入操作只能在空或已擦除的单元内进行,所以大多数情况下,在进行写入操作之前必须先执行擦除。
1、擦除操作:NAND器件执行擦除操作是十分简单的,NOR要求在进行擦除前首先要将目标块内所有的位都写为0。

2、执行擦除时的块尺寸/速度:擦除NOR器件时,以64KB,128KB的块执行,执行一个写入/擦除操作的时间为5S。擦除NAND器件时,以8KB,32KB的块进行,执行操作最多只需要4ms。

3、NOR的读速度比NAND稍快一些。

4、NAND的写入速度比NOR快很多。

5、NAND的4ms擦除速度远比NOR的5s快。

6、NAND的擦除单元更小,相应的擦除电路更少。

7、在应用中,NOR flash由于功能丰富,不需要其他的软件支持,就可以被系统直接寻址,并在内部直接运行操作代码。而NAND flash的功能相对简单,通常需要搭配相应的控制芯片和驱动程序,才能对其进行操作。

接口差别

1、NOR flash带有SRAM接口,有足够的地址引脚来寻址,可以很容易的存取内部的每一个字节;

2、升级麻烦,不同容量的NorFlash的地址线需求不一样,在更换不同容量的NorFlash芯片时不方便(当下的串行接口的器件已经没有这个问题了)。

1、NAND flash使用复杂的I/O口来串行地址存取数据,8个引脚用来控制传送控制、地址和数据信息;
2、NAND读和写操作采用512字节的块,类似硬盘管理的操作,基于NAND的存储器可以取代硬盘或其他块设备。

3、接口固定,升级简单。

容量和成本

1、1MB~16MB,成本较高。

1、8MB~128MB(现在还有更大的)
2、NAND的单元尺寸是NOR的一半,生产过程简单,价格低。

寿命(耐性)

NOR flash的每个块的擦写次数是10万次

NAND flash每个块的最大擦写次数是100万次

坏块处理

冗余比特替换,是指在芯片设计时,每组存储单元会有若干个冗余比特,当该组存储单元存在失效的比特,就可以用冗余比特加以替换。冗余比特替换的方法常用于NOR flash中。当失效的比特很多且连续时,失效的比特所在的区域会被认识是集体失效。在NOR flash中,失效的区域通常也会被冗余的存储单元块替换掉。

NAND的坏块是随机分布的,错误检查和纠正(ECC),是指芯片中每组存储单元会有若干个比特用做数据的校验,当该组存储单元存在失效的比特则通过相应的数据校验算法,还原中真实的数据。错误检查和纠正的方法常用于NAND flash中。当失效的比特很多且连续时,失效的比特所在的区域会被认识是集体失效。在NAND flash中,失效的区域会被标记为不可用。

serial flash

现在有些芯片为了减少启动引脚,可以采用QSPI serial flash作为启动存储器。其采用spi/qspi 的方式进行串行的读取数据,减小引脚消耗。这个只是通信方式的改变,其内部结构一般还是nor flash或者nand flash

2 从存储原理上分析这些区别的原因

        1、为什么nor flash的读取速度比nand flash要稍快?

        首先nor flash的每个存储单元是直接连接在位线和字线上的,相当于每个单元时独立的,而nand flash的存储单元时串联的,要访问其中某个单元时,这个串联中的其他晶体管要全部导通,才能正确访问到被访问的单元,所以nor flash的读取速度比nand flash要稍快。

        2、为什么nand flash的容量比nor flash更大?

        由于阵列的连接方式区别,nor flash的版图开销更大,所以nor flash的容量一般不大,一般几兆、几十兆,而nand flash在本身阵列面积开销小的优势下,还可以进行3D堆叠,容量可以做得很大,甚至几T,一般固态硬盘里使用的就是大容量的nand flash。关于3D nand的实现,大家可以到B站学习一下硬件茶谈的某期视频。

        3、为什么flash的写入操作之前,必须要先进行擦除?

        flash的写入操作之前,必须要先进行擦除。因为flash只能将1写为0,不能将0写为1,写1,也就是将存储单元中的中的电子拉出来,需要通过擦除操作处理。

        4、为什么nor的擦除速度比nand慢这么多?

        网上找到的说法为:由于擦除NOR器件时是以64~128KB的块进行的,执行一个写入/擦除操作的时间为5s ,与此相反,擦除NAND器件是以8~32KB的块进行的,执行相同的操作最多只需要4ms。我理解擦除的块大小相差几倍,而相应的时间却相差几千倍,这有点不合理,块的大小可能是一个影响因素,但我觉得根本原因还得从存储单元的擦除原理来解释。Nor flash擦除是以栅源之间的隧穿效应实现,隧穿通道比较集中,通道较小,而nand flash擦除以栅极和衬底之间的隧穿效应实现,隧穿通道更大,隧穿更分散,更容易完成电子隧穿,所以擦除时间更短。

        5、为什么nor flash的可擦除次数低于nand flash?

        由于nor flash擦除时隧穿通道集中,所以此处的隧道氧化层更容易在多次电子隧穿后损坏,所以nor flash的擦除次数一般十万次等级,而nand flash由于分散隧穿,它的氧化层寿命更长,一般在一百万次等级。同时热电子注入对氧化层的损伤又比FN隧穿要大,这也是nor寿命不及nand的一个原因。这条是我的猜测,大家自行甄别。

        6、为什么nand flash的写入速度比nor flash要快?

        nand flash的写入速度比nor flash要快,原因是nand flash采用FN隧穿效应进行写入,而nor flash采用的是热电子注入,隧穿比热电子注入的速度更快。

        7、为什么NOR flash可以支持XIP,Nand flash不可以?

        我的理解是Nand flash也可以支持XIP,只是做起来麻烦点罢了。网上的说法是nor flash有类似SRAM的接口,CPU可以直接从nor flash中取指,不用将数据拷贝到内存,然后直接译码执行,而nand flash由于地址和数据共用IO,需要有专门的nand flash控制器和驱动程序才能进行读写,同时nand flash由于容易发生位翻转的,需要以页为单位做ECC校验,所以nand flash的读操作是以页为单位,而程序可能并不是连续存放在页中,这样读就会出错。但是我个人理解,如果CPU硬件把nand 控制器已经做好了,且flash中的数据是按既定数据写进去的,同时flash在程序数据端没有坏块,他也是可以支持XIP的。文章来源地址https://www.toymoban.com/news/detail-828283.html

到了这里,关于【FLASH存储器系列四】NAND和NOR两种Flash的本质区别是什么?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【FLASH存储器系列八】ONFI数据接口详述之一

    👉个人主页: highman110 👉作者简介:一名硬件工程师,持续学习,不断记录,保持思考,输出干货内容 目录 1.1 数据接口类型概览 1.2 信号功能分配 1.3 接口模式切换         ONFI目前支持5中不同的数据接口类型:SDR,NV-DDR,NV-DDR2、NV-DDR3和NV-LPDDR4。SDR是传统的NAND接口,使

    2024年02月13日
    浏览(66)
  • ROM、RAM、内存、内存条、外存、内部存储器、外部存储器、FLASH等之间的关系

    ​   各位看到这一系列的名词,是否也曾感受到一头雾水?研究了一上午终于理清了它们之间的关系,直接上图说明,相信你看完也能恍然大悟!若有错误麻烦在评论区指出。 这里有几点需要明确: 存BOIS的ROM也属于内存(因为CPU也可以对其直接寻址),但我们生活中常说

    2023年04月26日
    浏览(52)
  • IC设计-存储器分类汇总(区别RAM、ROM、SRAM、 DDR、EEPROM、FLASH)

    1、存储器分类图 2、用分类对比的方法介绍不同的存储器特点 2.1  存储器按照用途分类 :        可以分为 主存储器(内部存储)和辅助存储器(外部存储) 。主存储器是指CPU能直接访问的,有内存、一级/二级缓存等,一般采用半导体存储器;辅助存储器包括软盘、硬盘

    2024年02月02日
    浏览(34)
  • Nor Flash和Nand Flash的区别——笔记

    NorFlash: 串行存储器、读取速度比较快(比NandFlash快),适合用于存储程序代码和执行代码,但NorFlash写入速度比较慢、容量比较小。 数据线和地址线是分开的。 NandFlash: 并行存储器、写入速度比较快(比NorFlash快)、容量比较大,适合用于存储大量数据。但NandFlash读取速度

    2024年02月08日
    浏览(31)
  • EEPROM,NOR Flash,NAND Flash,eMMC,UFS,SSD分别和主要参数及特性

    EEPROM、NOR Flash、NAND Flash、eMMC、UFS、SSD都是非易失性存储器,但它们在架构、存储容量、读写速度、功耗、价格等方面存在不同,具体如下: EEPROM:EEPROM(Electrically Erasable Programmable Read-Only Memory)是一种用于存储非易失性数据的闪存存储器。它比 NOR Flash和 NAND Flash容量小、价

    2024年02月16日
    浏览(43)
  • 【正点原子STM32】QSPI四线SPI模式(Quad-SPI存储器、间接模式、状态轮询模式、内存映射模式、命令序列、QSPI基本使用步骤、SPI FLASH基本使用步骤)

    一、QSPI介绍 1.1、QSPI功能框图(双闪存模式禁止) 1.2、QSPI 时钟源 1.3、间接模式 1.4、内存映射模式 1.5、命令序列(间接模式 或 内存映射模式) 1.6、指令、地址、交替字节、空指令周期、数据各阶段 1.7、QSPI FLASH设置 1.8、QSPI 中断类型 二、QSPI相关寄存器介绍 三、QSPI相关

    2024年04月22日
    浏览(69)
  • [NAND Flash 6.4] NAND FLASH基本读操作及原理_NAND FLASH Read Operation源码实现

    依公知及经验整理,原创保护,禁止转载。 专栏 《深入理解NAND Flash》 返回总目录 ​全文 6000 字 内容摘要 NAND Flash 引脚功能 读操作步骤 NAND Flash 中的特殊硬件结构 NAND Flash 读写时的数据流向 Read 操作时序 读时序操作过程的解释 Read 操作实战流程设计 NAND Read 源码 前言 上面

    2024年01月19日
    浏览(36)
  • [NAND Flash 6.3] NAND FLASH基本编程(写)操作及原理_NAND FLASH Program Operation 源码实现

    依公知及经验整理,原创保护,禁止转载。 专栏 《深入理解NAND Flash》 返回总目录 全文 3244 字 ​ 前言 使用的 NAND FLASH 的硬件原理图,面对这些引脚,很难明白他们是什么含义,下面先来个热身: 问1. 原理图上 NAND FLASH 只有数据线,怎么传输地址? 答1. 在 DATA0~DATA7 上既传

    2024年01月19日
    浏览(33)
  • STM32F407单片机通用24CXXX读写程序(KEIL),兼容24C系列存储器(24C01到24C512),支持存储器任意地址跨页连续读写多个页

    原文链接:https://blog.csdn.net/ba_wang_mao/article/details/108318633 AT24C01,AT24C02,AT24C04,AT24C08,AT24C16,AT24C32,AT24C64,AT24C128,AT24C256…不同的xxx代表不同的容量。 总容量(Byte容量) = 页数 × 页内字节单元数。 对AT24CXXX进行读写操作时,都得先访问存储地址、比如AT24C01写一个字节的I

    2024年04月11日
    浏览(62)
  • SPI 及 NOR Flash 介绍

    1.SPI的含义 SPI:串行外设设备接口(Serial Peripheral Interface),是一种高速的,全双工,同步的通信总线。SPI接口主要应用在存储芯片、AD转换器以及LCD中。SPI接口主要应用在存储芯片、AD转换器以及LCD中。 SPI 的引脚信息: MISO(Master In / Slave Out)主设备数据输入,从设备数据

    2024年02月12日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包