Flash基础知识

1、Flash发展历程

存储器通常分为两类型,即随机存取的RAM(内存)与只读的ROM(外存)。

RAM,也称随机存取存储器,数据可以被读取和修改。它主要用于存储正在运行的程序和临时数据,是计算机运行时的主要内存。

ROM,即只读存储器,数据在生产过程中写入,用户无法修改。ROM主要用于存储固定的系统程序和数据,如计算机启动时的基本输入输出系统(BIOS)。

最初的ROM无法编程,出厂时的内容是永久的,灵活性差。后来出现了PROM,可以自行写入一次,但若写错,只能更换。随着技术进步,EPROM诞生了,可以多次擦除和写入,但每次擦除需要将芯片暴露在紫外线下,过程繁琐且耗时。

历史的进步带来了EEPROM的出现,这种存储器可以随意修改内容,大大方便了程序员。EEPROM的全称是“电可擦除可编程只读存储器”(Electrically Erasable Programmable Read-Only Memory),与紫外擦除的EPROM相比更加便捷。现如今,EEPROM已有多种变种,成为一种存储器的统称。

Flash存储器广义上属于EEPROM的一种,因为它也可以通过电擦除。但为了区分于一般按字节擦写的EEPROM,我们通常称其为Flash。

狭义的EEPROM能够随机访问和修改任意一个字节,可以写入0或1。这种传统的EEPROM在断电后数据不会丢失,能保存100年,擦写次数可达100万次,具有高可靠性,但电路复杂且成本高。因此市场上的EEPROM容量通常在几十千字节到几百千字节之间,极少超过512K。

Flash的改进在于擦除时以块为单位而非字节,简化了电路设计,提高了数据密度,降低了成本。

2、Flash的工作原理

闪存体系结构包括堆叠有大量闪存单元的存储阵列。 基本的闪存单元由具有控制栅极和浮置栅极 (Floating Gate) 的存储晶体管组 成,该浮栅通过薄介电材料或氧化层与晶体管的其余部分绝缘。 浮栅存储电荷并控制电流的流动。

电子被添加到浮栅或从浮栅处移除,以改变存储晶体管的阈值电压。 而改变电压会影响将单元编译为 0 还是 1。

一种称为Fowler-Nordheim隧穿的过程将电子从浮栅中去除。 Fowler-Nordheim隧穿和称为沟道热电子注入的现象都会将电子捕获在浮栅中。

使用Fowler-Nordheim隧道技术,数据会通过控制门上的强负电荷擦除。这迫使电子进入存在强正电荷的通道。

在使用Fowler-Nordheim隧道将电子捕获在浮栅中时,情况会相反。电子在高电场的情况下设法通过薄氧化层迁移到浮栅,在单元的源极和漏极上带有强负电荷,而在控制栅极上带有强正电荷。

沟道热电子注入(也称为热载流子注入)使电子能够突破栅氧化层并改变浮栅的阈值电压。 当电子从沟道中的高 电流以及控制栅极上的吸引电荷中获取足够量的能量时, 就会发生这种现象。

不管包含闪存单元的器件是否由于氧化物层产生的电隔离而接收能量,电子都会被捕获在浮栅中。该特性使闪存可以提供持久存储。

3、NAND和NOR

闪存有两种类型:NOR 和 NAND。

NOR 和 NAND 闪存在架构和设计特性上有所不同。 NOR 闪存不使用共享组件,可以并行连接各个存储单元,从而可以随机访问数据。 NAND 闪存单元更紧凑,位线更少,将浮栅晶体管串联在一起以 提高存储密度。

NOR FLASH数据线和地址线分开,可以实现RAM一样的随机寻址功能,可以读取任何一个字节。但是擦除仍要按块来擦。

NAND FLASH同样是按块擦除,但是数据线和地址线复用,不能利用地址线随机寻址。读取只能按页/块来读取(按块来擦除,NOR FLASH没有页)。由于NAND FLASH引脚上复用,因此读取速度比NOR FLASH慢一点,但是擦除和写入速度比NOR FLASH快很多。NAND FLASH内部电路更简单,因此数据密度大,体积小,成本也低。因此大容量的FLASH都是NAND型的。小容量的2~12M的FLASH多是NOR型的。

NOR FLASH可以进行字节寻址,所以程序可以在NOR FLASH中运行。嵌入式系统多用一个小容量的NOR FLASH存储引导代码,用一个大容量的NAND FLASH存放文件系统和内核。

NOR闪存在数据读取方面速度很快,但在擦除和写入方面通常比NAND慢。 NOR闪存以字节为单位编程数据。NAND闪存以页为单位编程数据,该数据大于字节,但小于块。 例如,一个页面可能是4 KB,而一个块的大小可能是128 KB至256 KB或兆字节。 对于写密集型应用程序,NAND闪存比NOR闪存消耗更少的功率。

NOR闪存的生产成本比NAND闪存高,并且通常主要用于消费类和嵌入式设备中以用于引导目的,以及只读应用程序中用于代码存储。 由于NAND闪存每位存储数据的成本更低,密度更高,编程和擦除(P / E)速度更快,因此它更适用于消费类设备以及企业服务器和存储系统中的数据存储。

除使用其他存储器外,诸如照相手机之类的设备可能同时使用NOR和NAND闪存,以促进代码执行和数据存储。

NOR闪存类型:

NOR闪存的两种类型主要是并行和串行,也称为串行外围设备接口。NOR闪存最初仅可用于并行接口。并行NOR提高性能,安全性和附加功能;它的主要用途包括工业、汽车、网络和电信系统与设备。

NOR单元并行连接以进行随机访问。该配置适用于与微处理器指令相关的随机读取,以及执行便携式电子设备中使用的代码,几乎专门用于消费类电子设备。串行NOR闪存的引脚数更少,封装更小,因此其成本低于并行NOR。

串行NOR的用例包括个人和超薄计算机,服务器,HDD,打印机,数码相机,调制解调器和路由器。

NAND闪存类型:

NAND闪存半导体制造商已经开发出适合各种数据存储用例的不同类型的存储器。常见主要有SLC、MLC、TLC、QLC。

4、Flash页、扇区、块的区别

扇区、块这些专用名词,其实是从早期的软盘、硬盘等存储器发展而来,目的是将一个存储器划分为多个(扇区、块)区域,更方便的编程管理这些存储单元。

以W25Q128存储芯片为例。W25Q128存储芯片是由256个块(Block)组成,每个块包含16个扇区(Sector),每个扇区包含16页,每页256个字节。

注:Page0X000000-0X0000FFh:0X是16进制标识符,数的后面h也代表这是一个十六进制数,0XFF等于十进制255,所以一页中共256个字节。

Flash芯片就像一列火车,块(Block)就像一节车厢,车厢里的每排座位就像一个扇区(Sector)。

注: 不同厂家的、不同类型存储器的页、扇区、块大小不同,不同厂家的、不同类型存储器的划分方式也可能不同,有的以页为最小单元,有的以扇区为最小单元,但大部分Flash都以扇区为最小单元。

此外,也可能会看到一些其他的名词,比如:和扇区一个级别的SubSector,和块一个级别的Bank、Bulk等。

FLASH使用注意事项:

1、由于FLASH的物理特性,决定了FLASH每一位的操作只能从1变为0(写操作)。

2、大多数FLASH芯片或单片机内未使用FLASH存储空间每一位出厂默认都是1。

3、对FLASH写操作之前必须将待操作FLASH空间数据都置为1。

如果内存地址上的数据是0的话,不进行置1的擦除动作,当我们想内存地址写1时候是失败的,因为内存只能从1变为0,不能从0变为1。所以必须在写操作之前将flash擦除。

4、对FLASH的擦除操作即是把待操作的空间的每一位都置为1。

5、所以FLASH写操作前需有擦除操作。

W25Q128JV存储芯片的擦除比较灵活,可以按扇区、块甚至是整片擦除。(擦除是需要时间的,比如整片擦除约用时几十秒)。

5、NAND闪存颗粒

闪存颗粒中根据存储密度的差异可分为SLC、MLC、TLC和QLC四种

第一代SLC(Single-Level Cell)每单元可存储1比特数据(1bit/cell),性能好、寿命长,可经受10万次编程/擦写循环,但容量低、成本高。

第二代MLC(Multi-Level Cell)每单元可存储2比特数据(2bits/cell),性能、寿命、容量、成各方面比较均衡,可经受1万次编程/擦写循环,现在一般在少数高端SSD中可以见到;

第三代TLC(Trinary-Level Cell)每单元可存储3比特数据(3bits/cell),性能、寿命变差,只能经受3千次编程/擦写循环,但是容量可以做得更大,成本也可以更低,是当前最普及的;

第四代QLC(Quad-Level Cell)每单元可存储4比特数据(4bits/cell),性能、寿命进一步变差,只能经受1000次编程/擦写循环,但是容量更容易提升,成本也继续降低。

对于SSD固态硬盘来讲,SSD一直在追求更大的容量和更低的成本,而存储单元是它的的核心元件,选择SSD实际上就是在选择存储颗粒。

Flash闪存颗粒中每Cell单元存储数据越多,单位面积容量就越高,但同时导致不同电压状态越多,越难控制,所以导致颗粒稳定性变差,寿命变低,各有利弊。相对于SLC来说,MLC的容量大了100%,寿命缩短为SLC的1/10;相对于MLC来说,TLC的容量大了50%,寿命缩短为MLC的1/3;相对于TLC来说,QLC的容量大了33%,寿命缩短为TLC的1/3。

简单来说,这四类闪存颗粒中,SLC的性能最优,价格也是最高,一般用作对于可靠性、稳定性和耐用性有极高要求的工业控制、航天军工、通信设备等企业级客户;MLC性能够用,稳定性比较好,价格适中,为工业级和车规级SSD应用主流;TLC是目前消费级SSD的主流,价格便宜,但可以通过高性能主控、主控算法来弥补、提高TLC闪存的性能;QLC是奔着更大容量和更低成本来的,相信QLC闪存颗粒会使得固态硬盘进入大容量廉价时代。

6、基于NAND Flash技术的产品

7.1常见产品类型

SD卡(Secure Digital卡):SD卡是一种常见的可移动存储介质,广泛用于数码相机、手机、平板电脑等设备。SD卡采用了NAND Flash作为主要的存储媒体,并具有较小的尺寸、高存储容量和可插拔的特点。

USB闪存驱动器(USB Flash Drive):USB闪存驱动器,也称为U盘,是一种便携式存储设备,通常通过USB接口连接到计算机或其他设备。它们使用NAND Flash存储数据,并具有易于携带、高速传输和可插拔的特点。

固态硬盘(Solid State Drive,SSD):SSD是一种替代传统机械硬盘的存储设备。它采用NAND Flash芯片作为主要存储介质,具有快速的数据读写速度、低功耗、抗震抗摔、静音无噪音等特点。SSD在计算机和数据中心等领域得到广泛应用。

eMMC(嵌入式多媒体卡)是一种嵌入式存储模块。eMMC通常由NAND Flash存储芯片、控制器和接口组成,提供了一种集成的存储解决方案,用于嵌入式系统、智能手机、平板电脑、物联网设备等领域。eMMC具有紧凑的尺寸、低功耗、高可靠性等特点,在嵌入式应用中得到广泛应用。

UFS(Universal Flash Storage):UFS是一种新一代的高速闪存存储解决方案,旨在提供更高的性能和更低的延迟。相比于eMMC,UFS具有更高的读写速度、更快的数据传输速率和更低的功耗。这使得UFS在需要更高性能的应用场景下,如高端智能手机、平板电脑和其他移动设备中得到广泛采用。

除了上述列举的产品,还有其他基于NAND Flash的存储产品,如CF卡(CompactFlash卡)、XQD卡、microSD卡等。每种产品都有其特定的设计和应用场景,具体选择取决于实际需求和设备兼容性。

7.2差异分析

7.2.1存储容量

SD卡:从几GB到数TB不等,具有相对较大的存储容量,适用于大量多媒体文件的存储。

USB闪存:存储容量也从几GB到数百GB不等,适用于小型文件的存储和传输。

固态硬盘:存储容量一般从几十GB到几TB不等,适用于替代传统机械硬盘,提升系统性能。

eMMC:存储容量一般在几十GB以下,适用于嵌入式设备和轻量级应用。

UFS:存储容量从几十GB到数TB不等,适用于高性能存储需求的应用场景。

7.2.2读写速度

SD卡:一般速度较慢,适合存储大容量数据,但不适合频繁读写操作。

USB闪存:读写速度较快,适合频繁的数据传输和备份操作。

固态硬盘:读写速度非常快,适合要求高性能的计算机和服务器。

eMMC:速度介于SD卡和固态硬盘之间,适用于嵌入式设备和轻量级应用。

UFS:具有非常高的读写速度,适用于高端智能设备和需要高性能存储的场景。

7.2.3接口类型

SD卡:SD卡通常采用SD接口或microSD接口,这两种接口在尺寸上有所不同,但功能和性能类似。SD接口通常用于相机、摄像机等专业设备,而microSD接口则广泛应用于智能手机、平板电脑等消费电子产品。

USB闪存:USB闪存通常采用USB接口,主要分为USB Type-A、USB Type-C等不同类型。USB Type-A接口是传统的USB接口,广泛用于计算机、电视等设备;而USB Type-C接口则是新一代的标准接口,具有可逆性和高速传输等优点,逐渐在各类设备中普及。

固态硬盘:固态硬盘通常采用SATA接口或PCIe接口。SATA接口适用于传统的2.5英寸或3.5英寸硬盘的形态,而PCIe接口则更适合于M.2或PCIe插槽形态的固态硬盘,具有更高的传输速度和更小的体积。

eMMC:eMMC通常采用BGA封装形式,与主板焊接连接,其接口类型主要是MMC(MultiMediaCard)接口,用于连接主板和eMMC芯片。

UFS:UFS通常采用UFS接口,是一种专门设计用于高速闪存存储器的接口标准,具有高速传输和低延迟等特点,适用于高性能存储需求的设备。

这些接口类型的差异影响着存储产品的连接方式、传输速度和适用范围,用户在选择存储产品时需要考虑设备的接口类型与存储产品的接口是否匹配。

7.2.4应用场景

SD卡:主要用于相机、手机、平板电脑等设备的存储扩展。

USB闪存:主要用于数据传输、文件备份、操作系统安装等方面。

固态硬盘:主要用于替代传统机械硬盘,提升系统性能和响应速度。

eMMC:主要用于嵌入式系统、智能手机、平板电脑等轻量级存储需求。

UFS:主要用于高端智能设备、汽车电子、物联网设备等高性能存储需求的场景。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CarService的构成和初始化分析

以下分析,基于安卓13的AAOS。 代码构成 packages/services/Car CarService相关代码,主要是在这个目录下 frameworks/opt/car/services 主要是carservice启动相关。 其它目录:audio_policy_configuration.xml和car_audio_configuration.xm…

人生的乐趣,在于对真知的追求

子曰:朝闻道,夕死可矣! 孔子说:早上听到关于世界的真理,哪怕晚上就die了都可以。 这句话很有力量而经常被人引用,表达出我们如何看待沉重的肉身和精神世界。 我们的生活目的:道。 —— 要了解…

探究 IP 地址被网站封禁的原因

在我们登录各种网站、APP浏览时,可能会遇到 IP 地址被某些网站封禁的情况。很多人奇怪这是为什么呢? 首先,违反网站的使用规则是比较常见的原因之一。比如,频繁发送垃圾邮件、恶意评论、进行网络攻击或试图破解网站的安全机制等不…

数据链路层知识分享【计算机网络】【以太网帧 | MTU的影响 | ARP技术】

博客主页:花果山~程序猿-CSDN博客 文章分栏:Linux_花果山~程序猿的博客-CSDN博客 关注我一起学习,一起进步,一起探索编程的无限可能吧!让我们一起努力,一起成长! 目录 前文 一, 以…

【操作系统】操作系统课后作业-聊天程序

无名管道与有名管道的区别 无名管道: 它是半双工的,具有固定的读端和写端。 只能用于具有亲缘关系的进程之间的通信(也是父子进程或者兄弟进程之间)。 不是普通的文件,不属于其他任何文件系统,并且只存…

Electron+Vue开源软件:洛雪音乐助手V2.8畅享海量免费歌曲

洛雪音乐助手是一款功能全面且完全免费的开源音乐软件,支持在Windows、Android和iOS平台上使用。 平台支持: 桌面版:采用Electron Vue技术栈开发,支持Windows 7及以上版本、Mac OS和Linux,具有广泛的用户群体覆盖。 …

深信服终端安全管理系统EDR版本升级过程

EDR当前版本为3.7.12,具体参考版本详情参数。需要升级到6.0.2R1版本,该版本更改了产品名称,叫做“统一端点安全管理系统aES” 当前版本详情 版本基础信息 软件版本:3.7.12.3829 病毒库版本:20240618174426 漏洞规则库&…

定制化物联网设备:开启智能生活新篇章

随着科技的进步,物联网(IoT)已成为我们日常生活和工作中不可或缺的一部分。从智能家居到工业自动化,物联网设备以其独特的功能和特性,极大地提高了我们的生活质量和工作效率。然而,在众多的物联网设备中&am…

Window常用的脚本有哪些?快来看看有哪些是你正在用的!(欢迎评论补充~)

前言 在日常开发中,如果能熟练掌握以下这些使用频率很高的脚本,那工作起来真的是手拿把攥,事半功倍,接下来给大家介绍一些我们日常使用率很高的一些脚本! 常用脚本(Batchfile & VBScript) 1.一键启动.bat 一次…

每年1-1.2万人毕业,男女比例约3:1,测绘工程的就业率如何

测绘工程,一个让人闻风丧胆的理科专业,虎扑评分4.2: 干过测绘的,苦不苦只有大家心里知道,带大家来感受一下,兄弟们的精神状态都十分美妙: 测绘专业到底是什么情况? PS.测绘分为本科…

mongodb-java apispringboot整合mongodb

mongodb入门mongodb-java api的使用springboot整合mongodb评论 一 MongoDB 1.1 MongoDB简介 ​ MongoDB是一个基于分布式文件存储的数据库。由C语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 ​ MongoDB是一个介于关系数据库和非关系数据库之间的产品&…

等保2.0对于物联网设备的漏洞管理还有哪些规定?

等保2.0针对物联网设备的漏洞管理,主要规定了以下几个方面: 1. 漏洞发现与识别:要求定期进行漏洞扫描和评估,利用专业的漏洞扫描工具和安全服务,及时发现物联网设备及其软件中的安全漏洞。这包括但不限于操作系统、应…

文献解读-流行病学-第十期|《SARS-CoV-2 德尔塔和奥密克戎合并感染和重组的证据》

关键词:基因组变异检测;全基因组测序;流行病学; 文献简介 标题(英文):Evidence for SARS-CoV-2 Delta and Omicron co-infections and recombination标题(中文)&#xf…

手持风扇哪个品牌好?五大手持风扇品牌推荐!

随着炎热夏季的到来,手持风扇已成为人们出行的必备清凉神器。然而,面对市场上众多品牌的手持风扇,如何选择一款既时尚又高效的产品成为了许多消费者的难题。为了解决这个困扰,我们精心挑选了五大手持风扇品牌进行推荐。这些品牌不…

报表控件Stimulsoft 图表轴的日期时间步长模式

Stimulsoft Ultimate (原Stimulsoft Reports.Ultimate)是用于创建报表和仪表板的通用工具集。该产品包括用于WinForms、ASP.NET、.NET Core、JavaScript、WPF、PHP、Java和其他环境的完整工具集。无需比较产品功能,Stimulsoft Ultimate包含了…

Qt|海康摄像头多个页面展示问题

为大家分享一个使用海康摄像头的小功能,希望对大家有用~ 使用场景: 在程序中多个不同功能页面需要展示摄像头的实时预览画面,该如何高效的展示呢? 对于海康摄像头的实时预览接口调用流程,如下所示: 按照流…

JS正则表达式构造函数和正则表达式字面量的区别

背景 笔者在使用正则表达式的过程中,经常看到两种使用方式,比较好奇这两种方式有什么不同。 一种是 正则表达式构造函数:new RegExp(“[xxx]”) 另一种是 正则表达式字面量: /[xxx]/ 于是,就去网上搜了一下…结果看到国…

阿里云ECS(CentOS/Alibaba Cloud Linux)安装最新 Docker 方法

最近(6月份)我发现 docker 官方无法正常访问,docker pull 命令也执行失败,用 TZ 也一样😔。 以下步骤适用于 CentOS 7/8或Alibaba Cloud Linux 系统。 1. 更新系统包 首先,确保您的ECS实例系统软件包是最…

使用nvm管理nodejs版本,设置淘宝NPM镜像源

nvm-windows https://github.com/coreybutler/nvm-windows nvm配置文件的路径 C:\Users\用户名\AppData\Roaming\nvm 修改 settings.txt 文件,添加淘宝镜像源地址 node_mirror: https://npmmirror.com/mirrors/node/ npm_mirror: https://npmmirror.com/mirrors…

【FAS】《Survey on face anti-spoofing in face recognition》

文章目录 原文基于手工设计特征表达的人脸活体检测方法基于深度学习的人脸活体检测方法基于融合策略的人脸活体检测方法人脸检测活体数据库点评 原文 邓雄,王洪春,赵立军等.人脸识别活体检测研究方法综述[J].计算机应用研究,2020,37(09):2579-2585.DOI:10.19734/j.issn.1001-3…