关于闪存:NOR-Flash和NAND-FLASH的区别
Flash Memory是一种非易失性的存储器。在嵌入式零碎中通常用于寄存零碎、利用和数据等。在PC零碎中,则次要用在固态硬盘以及主板BIOS中。绝大部分的U盘、SDCard等挪动存储设备也都是应用Flash Memory作为存储介质。 依据硬件上存储原理的不同,Flash Memory次要能够分为NOR Flash和NAND FLASH两类。次要的差别如下所示:NAND FLASH读取速度与NOR Flash相近,依据接口的不同有所差别;NAND FLASH的写入速度比NOR Flash快很多;NAND FLASH的擦除速度比NOR Flash快很多;NAND FLASH最大擦次数比NOR Flash多;NOR Flash反对片上执行,能够在下面间接运行代码;NOR Flash软件驱动比NAND FLASH简略;NOR Flash能够随机按字节读取数据,NAND FLASH须要按块进行读取。大容量下NAND FLASH比NOR Flash老本要低很多,体积也更小;(注:NOR Flash和NAND FLASH的擦除都是按块块进行的,执行一个擦除或者写入操作时,NOR Flash大概须要5s,而NAND FLASH通常不超过4ms。) 1、NOR FlashNOR Flash依据与CPU端接口的不同,能够分为Parallel NOR Flash和SPI NOR FLASH两类。 Parallel NOR Flash能够接入到Host的SRAM/DRAMController上,所存储的内容能够间接映射到CPU地址空间,不须要拷贝到RAM中即可被CPU拜访,因此反对片上执行。SPI NOR FLASH的老本比Parallel NOR Flash低,次要通过SPI接口与Host连贯。 鉴于NOR Flash擦写速度慢,老本低等个性,NOR Flash次要利用于小容量、内容更新少的场景,例如PC主板BIOS、路由器零碎存储等。 2、NAND FLASH NAND FLASH须要通过专门的NFI(NAND FLASH Interface)与Host端进行通信,如下图所示: NAND FLASH依据每个存储单元内存储比特个数的不同,能够分为SLC(Single-LevelCell)、MLC(Multi-LevelCell)和TLC(Triple-LevelCell)三类。其中,在一个存储单元中,SLC能够存储1个比特,MLC能够存储2个比特,TLC则能够存储3个比特。 NAND FLASH的一个存储单元外部,是通过不同的电压等级,来示意其所存储的信息的。在SLC中,存储单元的电压被分为两个等级,别离示意0和1两个状态,即1个比特。在MLC中,存储单元的电压则被分为4个等级,别离示意00011011四个状态,即2个比特位。同理,在TLC中,存储单元的电压被分为8个等级,存储3个比特信息。 NAND FLASH的单个存储单元存储的比特位越多,读写性能会越差,寿命也越短,然而老本会更低。Table1中,给出了特定工艺和技术水平下的老本和寿命数据。 相比于NOR Flash,NAND FLASH写入性能好,大容量下成本低。目前,绝大部分手机和平板等挪动设施中所应用的eMMC外部的Flash Memory都属于NAND FLASH。PC中的固态硬盘中也是应用NAND FLASH。