NAND和NOR Flash 完全学习笔记

本文要点:

  1. NAND FLASH与NOR FLASH 的技术对比;
  2. 最详细的存储单元对比详解;
  3. NAND FLASH与NOR FLASH 的最新市场份额及应用;
  4. NAND FLASH与NOR FLASH 的基础原理分析。

目前,NOR FLASH和NAND FLASH是市场上主要的非易失性闪存技术,但是据我了解,还是有很多工程师分不清NAND FLASH与NOR FLASH。首先,来一个直观的图片。
在这里插入图片描述

然后,我从权威的网站上找到了最新的NAND FLASH收益以及市场份额表,根据最新的表单,我们可以知道谁是这个市场的老大,做的比较好一些,一方面让工程师时刻知道市场的动向,另一方面可以在之后的器件选型等方便提供重要的参考。

在这里插入图片描述

一般来说,快闪记忆体可分为两大规格,一个是NAND, 一个是NOR。简单来说,NAND一般以存储数据为主,芯片容量大,容量可以达到2Gb甚至更大,NAND的读取是以一次读取一块的形式来进行的,通常一次读取512个字节,采用这种技术的Flash比较廉价;NOR一般以存储程序代码为主,又称为Code Flash,所以可让微处理器直接读取,但芯片容量较低,主流容量512Mb,NOR采用内存的随机读取技术。如果利用闪存只是用来存储少量的代码,这是NOR Flash更合适一些。用户不能直接运行NAND Flash上的代码,因此很多使用NAND Flash的Demo Board除了使用NAND Flash以外,还加上一块小的NOR Flash来运行启动代码。通过下表我比较了几乎所有关于NAND FLASH以及NOR FLASH的全部重要特性。
在这里插入图片描述

Flash三个重要概念的理解

然后,对于Flash三个重要概念的理解:

  1. Flash属于非易失性存储设备,内部存储单元是MOSFET,里面有一个悬浮门(Floating Gate), 是存储数据的单元。与此对应的,易失性存储设备就是断电后,数据就丢失了,例如常用的内存,不论是之前的SDRAM,还是现在通用的DDR3以及DDR4,都是断电后,数据就没有了。

  2. SLC和MLC的区别:NAND FLASH的内存单元可以分为两类,存储一位数据,也就是SLC(Single Level Cell); 对应的,存储多位数据的就是MLC(Multi Level Cell),比如两位,或者四位。

  3. 大多数的写入操作需要先进行擦除操作。

到此,对于NAND FLASH以及NOR FLASH 我们有了一个基本的认识。

我对知识的学习一个重要的方法是对比,通过图表的对比更能看出各自的差异化,从而达到加深知识的效果,因此我做了下图来比较目前还算所有存储器的最小单元结构图,便于学习与理解。
在这里插入图片描述

原理分析

要说明此原理,需要一些基本的量子物理学,我认为以下这种论述是比较适合理解的,也很有趣:

经典物理学认为,物体越过势垒,有一定的阈值能量;所以,粒子能量小于此阈值能量的不能越过,能量大于此阈值能量的可以越过。举例来说,我们骑自行车过坡道,如果先用力骑,因此有一定初始能量,坡道不高的话,即使不蹬自行车也可以依靠惯性过去;但是,如果坡道很高,不蹬自行车,可能车上升到了一半,可能就退回来了。

而量子力学则认为,即便是粒子能量小于阈值能量,同时很多粒子冲向势垒,虽然也有一部分粒子会反弹,但是还会有一些粒子可以越过去,好像有一个隧道,因此称为量子隧道。
在这里插入图片描述

对比二者的差异发现,宏观上的确定性在微观上常常就具有不确定性。因为隧穿几率极小,因此通常情况下,隧道效应并不影响经典的宏观效应,但是某些特殊条件下也会出现。当微电子器件进一步微型化是必须要考虑量子效应。

NAND FLASH的擦写均是基于隧道效应,电流穿过浮置栅极与硅基层之间的绝缘层,对浮置栅极进行充电(写数据)或放电(擦除数据);另外,NOR FLASH擦除数据也是基于隧道效应(电流从浮置栅极到硅基层),但在写入数据时则是采用热电子注入方式(电流从浮置栅极到源极)。

对于FLASH闪存单元来说,它是为三端器件,与场效应管有相同的名称:源极、漏极和栅极。栅极与硅衬底之间有二氧化硅绝缘层,用来保护浮置栅极中的电荷不会泄漏。采用这种结构,使得存储单元具有了电荷保持能力。举个栗子,就像是装进瓶子里的水,当你倒入水后,水位就一直保持在那里,除非你再次倒入或倒出,所以闪存具有记忆能力。

在这里插入图片描述

绝缘浮置栅极是NAND存储数据的核心

总结:

NAND和NOR Flash是两种常见的非易失性存储器,它们在存储容量、读写速度、功耗等方面有不同的特点。

NAND Flash通常用于大容量数据存储,因为它具有较高的密度和较低的单元成本。它的读写速度相对较慢,但是可以快速进行擦除和编程操作。NAND Flash被广泛应用于存储文件、音乐、视频等大型数据。

NOR Flash具有较高的读取速度和可靠性,但是它的密度和成本相对较高。它通常用于存储代码和应用程序,因为它的快速读取速度可以提高系统的性能。NORFlash还可以在芯片上执行代码,这使得它成为嵌入式系统的中的常用存储器。

在选择使用哪种Flash存储器时,需要根据应用场景和个人需求进行权衡。需要大容量、低成本的的数据存储方案时,可以选择NANDFlash;需要快速读取速度和可靠性时,可以选择NORFlash。

怎么高效的学习并使用NAND flash 和NOR flash?
首先,了解NAND和NOR Flash的基本原理是至关重要的。这包括了解它们的工作原理、特性以及它们在存储和读取数据时的差异。通过深入理解Flash存储器的内部结构和操作方式,我们可以更好地优化设计和解决潜在问题。

其次,合理规划和设计硬件电路是确保性能和可靠性的关键。我们需要仔细考虑电路布局、信号完整性和功耗管理等因素。确保电路板的布线和连接符合设计规范,并采取必要的措施来降低信号干扰和噪声。

此外,与软件工程师和团队密切合作也是成功的关键。在NAND和NOR Flash硬件开发过程中,与软件工程师紧密协作,确保硬件和软件之间的兼容性和良好的协同工作。这有助于减少潜在的问题和故障,并提高整体系统性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/452367.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

李彦宏:在中文上文心大模型4.0已经超过了GPT-4!如何优雅地反驳

大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,所以创建了“AI信息Gap”这个公众号,专注于分享AI全维度知识…

<逻辑回归算法(Logistic regression)>——《机器学习算法初识》

目录 一、 逻辑回归介绍 1 逻辑回归的应用场景 2 逻辑回归的原理 2.1 输入 2.2 激活函数 3 损失以及优化 3.1 损失 3.2 优化 4 小结 二、逻辑回归api介绍 实现过程: 三、分类评估方法 1.分类评估方法 1.1 精确率与召回率 1.1.1 混淆矩阵 1.1.2 精确…

【五、接口自动化测试】5分钟掌握python + requests接口测试

你好啊!我是山茶,一个持续探索AI 测试的程序员! 在做接口测试时,在python中内置了HTTP库 urllib,可以用于发送http请求。基于urllib二次封装的三方库Requests,相较于urllib更佳简介易用。所以,…

LED基础知识分享(一)

大家好,我是砖一。 今天给大家分享一下,LED的基础知识,有照明行业,或者对LED感兴趣的朋友,可以学习一下,希望对你有用~ 一,什么是LED (Light Emitting Diode)? 1,LED是一种发出某…

MathType7最新软件产品秘钥2024中文版

MathType 7是一款功能强大的数学公式编辑器,专为教育工作者、学生、科研人员以及任何需要处理数学公式的人群设计。以下是对MathType 7的详细介绍: 一、功能特点: 广泛的符号和模板支持:MathType 7支持各种数学符号、公式、方程…

Centos7 安装postgresql14后无法连接数据库

1、数据库服务器允许外部访问5432端口。 2、postgresql.conf 3、pg_hba.conf a、制定某个IP(192.168.0.107)访问 b、指定ip段访问 允许10.1.1.0~10.1.1.255网段登录数据库 host all all 10.1.1.0/24 trust c、指定全网访问 host a…

mysql5.6---windows和linux安装教程和忘记密码怎么办

一、windows安装 1.完成解压 解压完成之后将其放到你喜欢的地址当中去,这里我默认放在了D盘,这是我的根目录 2.配置环境变量 我的电脑->属性->高级->环境变量->系统变量 选择PATH,在其后面添加: (注意自己的安装地址) D:\mysql-5.6.49…

【C++庖丁解牛】vector容器的简易模拟实现(C++实现)(最后附源码)

🍁你好,我是 RO-BERRY 📗 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油 目录 前言vector容器代码实现内…

【测试开发学习历程】Linux用户管理+文件权限管理

目录 一、用户管理 (一)用户和用户组的基本概念 1.概念 2.设置原因 3.用户与用户组的关系 4.用户类型 (二)用户的创建、修改属性和删除用户 1.用户信息文件 2.创建用户 3.修改用户密码 4.修改用户信息 5.用户查询 6.…

5.shell if判断语句

shell-if判断语句 1.什么是if2.为什么要用if3.if基础语法4.基于文件进行判断5.基于整数比对6.基于字符比对7.基于正则比对 1.什么是if if其实就是模仿人类的判断来进行的,要么真、要么假、就这两种结果。 2.为什么要用if 判断 3.if基础语法 单条件 if [ 如果你…

RocketMQ快速入门

RocketMQ快速入门 准备工作下载RocketMQ环境要求 JDK下载安装JDK下载JDK安装 安装RocketMQ安装步骤目录介绍 启动RocketMQ测试RocketMQ发送消息接收消息 关闭RocketMQ RocketMQ是阿里巴巴2016年开源的MQ中间件,使用Java语言开发,在阿里内部,R…

String、StringBuilder、StringBuffer 有什么区别?

1、典型回答 String、StringBuilder 和 StringBuffer 都是 Java 语言中,用于操作字符串的类,但它们在性能、可变性和线程安全性方面有一些区别 1、String:不可变字符串类,也就是说一旦创建,它的值就不可变。每次对 S…

数据库基础理论知识

1.基本概念 数据(Data):数据库存储的基本对象。数字、字符串、图形、图像、音频、视频等数据库(DB):在计算机内,永久存储、有组织、可共享的数据集合数据库管理系统(DBMS):管理数据库的系统软件数据库系统(DBS):DBDBMSDBADBAP 数…

【spring】-多模块构建二-问题整理

1、bean注入问题 The injection point has the following annotations: - org.springframework.beans.factory.annotation.Autowired(requiredtrue) 解决1: 由于引入的bean类 不属于启动类的子模块下,需要在启动类手动声明扫描的类 也适用于公共子模…

Ribbon-负载均衡

目录 一、负载均衡的作用位置 二、Ribbon负载均衡的工作流程 三、IRule接口 负载均衡的策略: 修改负载均衡策略(即修改使用的IRule接口的实现类): 四、饥饿加载 五、总结 前置知识:Eureka注册中心 不熟悉Eureka的…

【Emgu CV教程】9.3、形态学常用操作之开运算

文章目录 一、相关概念1.什么叫开运算3.开运算的函数 二、演示1.原始素材2.代码3.运行结果 一、相关概念 1.什么叫开运算 腐蚀、膨胀已经讲完,这两个是最基础的形态学操作。这次讲的是开运算,它是一个先腐蚀、后膨胀的过程。原始图像先被腐蚀&#xff…

使用Anaconda创建Python指定版本的虚拟环境

由于工作的需要和学习的需要,需要创建不同Python版本的虚拟环境。 比如zdppy的框架,主要支持的是Python3.8的版本,但是工作中FastAPI主要使用的是3.11的版本,所以本地需要两套Python环境。 决定使用Anaconda虚拟环境管理的能力&…

发那科数控机床FanucCNC(NCGuide)仿真模拟器配置和数据采集测试

开发日记3.12 此篇用于记录发那科数控机床(Fanuc CNC)采集程序开发中,用虚拟机做测试时,虚拟机的配置和使用以支持采集软件开发和测试。 配置虚拟机使用仿真软件 下载VMware15 「链接:https://pan.xunlei.com/s/VNsl9Gmb14ANBiiNlsT7vA2LA…

Chrome下载B站视频字幕的插件

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

多模态大模型Claude 3正式接入集简云与语聚!对标GPT-4且支持中文

自OpenAI发布GPT-4以来,引发了业务模式与应用使用的巨大变革,掀起了各大企业对于多模态大模型的研究热潮。3月初,AnthropicClaude在官网正式发布Claude 3系列多模态大模型,据了解,该模型在多个维度上超越了GPT-4&#…