单片机内部Flash是Nor,还是Nand Flash?
Flash在我们生活中无处不在,比如:U盘、固态硬盘、SD卡、内存卡等。
同时,在单片机开发过程中也会遇到各种各样的Flash,比如:SPI Flash、Nor Flash、 Nand Falsh等。
做单片机开发的小伙伴,肯定会好奇,单片机内部的Flash,到底是什么类型的Flash?今天就来讲讲关于Flash的内容。Flash的发展及NOR 和NAD Flash区别
Flash,又叫Flash Memory,即平时所说的“闪存”。
Flash结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的功能,还可以快速读取数据,具有NVRAM的优势(NVRAM:Non-Volatile Random Access Memory,非易失性随机访问存储器)。在过去,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,Flash的出现,全面代替了ROM(EPROM)在嵌入式系统中的地位,用作存储Bootloader以及操作系统或者程序代码或者直接当硬盘使用(U盘、固态硬盘)。1.NOR Flash
Intel于1988年首先开发出NOR flash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。NOR Flash的读取和我们常见的SDRAM的读取是一样,即可以根据地址随机读写,用户可以直接运行装载在NOR FLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。因为其读取速度快,多用来存储程序、操作系统等重要信息。1989年,东芝公司发表了NAND flash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口轻松升级。NAND Flash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的制作Flash的成本更廉价。用户不能直接运行NAND Flash上的代码,因此好多使用NAND Flash的开发板除了使用NAND Flash以外,还作上了一块小的NOR Flash来运行启动代码。相比于 NOR Flash,NAND Flash 写入性能好,大容量下成本低。目前,绝大部分手机、平板、SD卡、固态硬盘等设备中所使用的Flash Memory 都属于 NAND Flash。Flash主要分为Nor Flash 和Nand Flash。
除了我们常见的(并行)Nor Flash 和Nand Flash芯片,其实SPI Flash芯片同样的也分SPI NOR Flash和SPI NAND Flash芯片,你去很多卖SPI Flash的官方都能找到其分类。
回到本文主题:单片机内部Flash是Nor,还是Nand Flash?
我们使用外部程序存储芯片,主要是NOR Flash,你没见过有谁用Nand Flash跑程序的吧?
Nand Flash不适合跑程序的几点原因:
1.不能随机访问地址;
2.存在坏块,不适合存储程序;
3.在长时间反复读取过程中,Nand中数据相对没有Nor稳定;
所以,单片机内部Flash通常是Nor Flash。