NAND NOR FLASH闪存产品概述 随着国内对集成电路,特别是存储芯片的重视,前来咨询我们关于NOR Flash,NAND Flash,SD NAND, eMMC, Raw NAND的客户越来越多了 具备如下特点: 1,免驱动使用;2,可机贴;3,尺寸小巧。 ,NAND 3类,他们框架如下: 一,E2PROM 容量非常小,目前存在于一些MCU内部,遥控器,电风扇等小家电里。 主流是SPI NOR接口; 主流容量:1Mbit~128Mbit; 封装:SOP-8居多,也有更小的;尺寸也都比较小。 NOR Flash架构决定了它的容量不能做大,而且读取速度比较慢。 3.2 生产工艺 目前主要有2D和3D。主流生产工艺已经升级到3D了。2D和3D区别可以看如下的示意图: 可以理解2D工艺就是老的砖瓦房,3D工艺就是摩天大楼。带来的最大好处就是存储密度N倍的增长。
具备如下特点: 1,免驱动使用;2,可机贴;3,尺寸小巧。 主流是SPI NOR接口; 主流容量:1Mbit~128Mbit; 封装:SOP-8居多,也有更小的;尺寸也都比较小。 NOR Flash架构决定了它的容量不能做大,而且读取速度比较慢。 3.2 生产工艺 目前主要有2D和3D。主流生产工艺已经升级到3D了。2D和3D区别可以看如下的示意图: 可以理解2D工艺就是老的砖瓦房,3D工艺就是摩天大楼。带来的最大好处就是存储密度N倍的增长。 主流是SPI NOR接口; 主流容量:1Mbit~128Mbit; 封装:SOP-8居多,也有更小的;尺寸也都比较小。 NOR Flash架构决定了它的容量不能做大,而且读取速度比较慢。 3.2 生产工艺 目前主要有2D和3D。主流生产工艺已经升级到3D了。2D和3D区别可以看如下的示意图: 可以理解2D工艺就是老的砖瓦房,3D工艺就是摩天大楼。带来的最大好处就是存储密度N倍的增长。
NAND FLASH,NAND为NOT AND(与非)之意,而NOR为NOT OR(或非)之意,该名称的命名是与两种FLAHS的架构有关的,如图所示: 两种Flash的架构对比 NAND FLASH 是把存储单元串行连在位线上,而 NOR FLASH 则是把存储单元并行的连到位线上。 所以 NOR 型的闪存存储器实现按位随机访问,而NAND 只能同时对多个存储单元同时访问。 对于 NOR FLASH,如果任意一个存储单元被相应的字线选中打开,那么对应的位线将变为 0,正是由于这种和 NOR 门电路相似的逻辑关系,使得这种结构的闪存被称为 NOR 型闪存,而 NAND FLASH 需要使一个位线上的所有存储单元都为 1,才能使得位线为 0,和 NAND 门电路相似的逻辑,故称之为NAND型闪存。
在上一章,我们添加了nor,nand启动后,uboot启动出如下图所示: ? print_size(flash_size, "\n"); //打印nor_flash的大小 } else { puts(failed); //初始化nand_flah ... ... } 从上面代码看出, board_init_r()会来初始化nor ,由于新的uboot不支持nor,所以flash_init()初始失败,然后打印一串错误代码后,等待复位. 由于2440在nand启动时,会自动装载nand的前4k内容,所以不支持norflash,因为nor的前4k内容被nand占用.
背景 支持一款nor flash时,出于性能考虑,一般会查看其nor支持的最高频率以及主控端spi控制器的最高频率,以选择一个合适的运行频率。 主控端的最高频率,可以查看主控的规格书,本文主要说下nor的频率限制。 让我们带着问题出发,假设我们的主控端最高spi clk为100M,那该怎么识别nor的限制,驱动又可以怎么处理? 如图是几款flash的规格书截图 winbond: w15q128 [px6hkpo4t3.png] mxic: mx15l128 [n0sc4ki6pj.png] gd: gd25q127 [zp18em9sjq.png 下面以mxic为例截图说明 比如对于READ命令,其频率限制是fR [3amksvgpnu.png] FAST READ命令,其频率限制是fC [x6wp53qx9g.png] DUAL READ,其频率限制是 规格书中也会给出一个表 [qq55jdp3na.png] 从表中可以看出,原来最普通,看起来最稳的READ命令,其实是最特殊的一个。除了READ之外的所有命令,都能支持133M。
闪存基本存储单元 (Cell) 是一种类NMOS的双层浮栅 (Floating Gate) MOS管组成,如图3-1所示: ? 图3-1 浮栅晶体管结构 在源极(Source)和漏极(Drain)之间电流单向传导的半导体上形成贮存电子的浮栅,浮栅上下被绝缘层所包围,存储在里面的电子不会因为掉电而消失,所以闪存是非易失存储器。 图3-2 左:写原理;右:擦除原理 在2014年的闪存峰会上,浮栅晶体管的发明人施敏(Dr.Simon Sze)被授予终身成就奖,以表彰他发明了浮栅极晶体管。 图3-4是闪存芯片里面存储单元的阈值电压分布函数,横轴是阈值电压,纵轴是存储单元数量。其实在0或1的时候,并非所有的存储单元都是同样的阈值电压,而是以这个电压为中心的一个分布。 下表所示是SLC,MLC和TLC在性能和寿命(Endurance)上的一个直观对比 (不同制程和不同厂家的闪存,参数不尽相同,数据仅供参考): 闪存类型 SLC MLC TLC 每单元比特数 1 2 3
分类 NOR和NAND是市场上两种主要的非易失闪存技术。 在1984年,东芝公司的发明人舛冈富士雄首先提出了快速闪存存储器(此处简称闪存)的概念。 后来的这种闪存被统称为NOR闪存。它结合EPROM和EEPROM两项技术,并拥有一个SRAM接口。 第二种闪存称为NAND闪存。它由日立公司于1989年研制,并被认为是NOR闪存的理想替代者。 NAND闪存的写周期比NOR闪存短90%,它的保存与删除处理的速度也相对较快。NAND的存储单元只有NOR的一半,在更小的存储空间中NAND获得了更好的性能。 3. 可以从寿命(耐用性)、位交换和坏块处理三个方面来比较NOR和NAND的可靠性。 耐用性方面,NAND闪存中每个块的最大擦写次数是一百万次,而NOR的擦写次数是十万次。 3. 引脚分配 4. 数据传输模式 5. SD NAND寄存器 SDNAND接口中定义了六个寄存器:OCR、CID、CSD、RCA、DSR和SCR。这些信息只能通过相应的命令访问。
它采用的,就是NOR Flash闪存。 1994年,闪迪公司第一个推出CF存储卡(Compact Flash)。当时,这种存储卡基于Nor Flash闪存技术,用于数码相机等产品。 2012 年,三星正式推出了第一代 3D NAND闪存芯片。随后,闪迪、东芝、Intel、西部数据纷纷发布3D NAND产品。闪存行业正式进入3D时代。 今年5月份,镁光已经宣布推出232层的3D TLC NAND闪存,并准备在2022年末开始生产。韩国的SK海力士,更是发布了238层的产品。 NOR迎来第二春 再来说说NOR Flash。 参考资料: 1、《半导体行业存储芯片研究框架-NOR深度报告》,方正证券; 2、《杂谈闪存二:NOR和NAND Flash》,老狼,知乎; 3、《存储技术发展历程》,谢长生; 4、《闪存技术的50多年发展史 ,闪存市场; 11、《一文看懂3D NAND Flash》,半导体行业观察; 12、百度百科、维基百科相关词条。
应用程序对NOR芯片操作以“字”为基本单位。为了方便对大容量NOR闪存的管理,通常将NOR闪存分成大小为128KB或者64KB的逻辑块,有时候块内还分成扇区。读写时需要同时指定逻辑块号和块内偏移。 NOR闪存是随机存储介质,用于数据量较小的场合;NAND闪存是连续存储介质,适合存放大的数据。 由于NOR地址线和数据线分开,所以NOR芯片可以像SRAM一样连在数据线上。 NOR闪存的可靠性要高于NAND闪存,这主要是因为NOR型闪存的接口简单,数据操作少,位交换操作少,因此可靠性高,极少出现坏区块,因而一般用在对可靠性要求高的地方。 从使用角度来看,NOR闪存与NAND闪存是各有特点的:(1)NOR的存储密度低,所以存储一个字节的成本也较高,而NAND闪存的存储密度和存储容量均比较高; (2)NAND型闪存在擦、写文件(特别是连续的大文件 在NOR闪存上运行代码不需要任何的软件支持,在NAND闪存上进行同样操作时,通常需要驱动程序,也就是内存技术驱动程序(MTD),NAND和NOR闪存在进行写入和擦除操作时都需要MTD
下主面要介绍下nor flash写保护,这个是可以在驱动层面做的。 nor写保护 写保护是nor提供的功能,即可以通过配置一些寄存器,将某些区域保护起来。 BP保护 大多数nor flash支持使用BP位来配置写保护,这种保护的特点是其保护的数据是成片的,一般是从flash头部开始的一片数据,或者从flash尾部开始的一片数据。 winbond的这款flash就标注了 [dsqbmb9sln.png] [hulusse508.png] 从规格书可很容易看出,保护的范围是BP bit再结合其他的一些bit 一起决定的,可以保护1/2, 3/ 不同厂家的保护bit设置都不太一样,涉及到BP bit,SEC bit, CMP bit等,每适配一款新的nor,都得重新查下规格书才行。
设置: 物理基地址(phys), 大小(size), 位宽(bankwidth), 虚拟基地址(virt) */ s3c_nor_map->name = "s3c_nor"; s3c_nor_map ->phys = 0; s3c_nor_map->size = 0x1000000; /* >= NOR的真正大小 */ s3c_nor_map->bankwidth = 2; s3c_nor_map ->virt = ioremap(s3c_nor_map->phys, s3c_nor_map->size); simple_map_init(s3c_nor_map); /* 3. s3c_nor_mtd) { printk("use jedec_probe\n"); s3c_nor_mtd = do_map_probe("jedec_probe", s3c_nor_map */ add_mtd_partitions(s3c_nor_mtd, s3c_nor_parts, 2); return 0; } static void s3c_nor_exit(void
闪存介绍 由于 HTTP 协议是无状态的,所以 Laravel 提供了一种用于临时保存用户数据的方法 - 会话(Session),并附带支持多种会话后端驱动,可通过统一的 API 进行使用。 image.png 在控制器中定义闪存: session()->flash('success', '欢迎,您将在这里开启一段新的旅程~'); 之后我们可以使用 session()->get('success
对应代码目录:drivers/mtd/spi-nor/spi-nor.c M25P80(generic SPI NOR controller driver):这层主要对SPI NOR Framework Flash NOR Flash 是一种非易失闪存技术,是Intel 在1988 年创建 MTD MTD(memory technology device 内存技术设备) 是用于访问memory 设备( readcmd 决 定线宽 flash_size:flash 的大小 delay_cycle:boot0 的采样延时配置,大于60MHZ 配置为1,小于24MHZ 配置为2, 大于24MHZ 小于60HZ 配置为3 ├─spi-nor.c ---spi nor驱动代码 └──其他 ├── spi --spi的接口代码 └── makefile ---编译文件 版 3 接口描述 3.1 驱动物理层接口 3.1.1 write [size] 将内存中的数据,写入到分区中 例: 1)使用mm 命令修改内存内容 2)使用sunxi_flash write 0x44000000 env 将内存中的数据写入env 分区 3)
但是对于3D NAND闪存,很多人还不是很了解,今天我们就来聊聊3D NAND这个话题。 ---- 3D NAND出现的原因 要聊3D NAND闪存价值,我们需要快速回顾一下NAND的发展史。 简单来说,之前的2D NAND是平面的架构,而3D NAND是立体的。用盖房子来解释,如果2D NAND闪存是平房,那3D NAND就是高楼大厦。 把存储单元立体化,这意味着每个存储单元的单位面积可以大幅下降,从而大幅提升闪存的存储容量。理论上来讲NAND可以无限堆叠,但是由于技术和材料限制,目前大多数3D NAND是64层的。 3D NAND闪存的用处 3D NAND闪存带来的最直接的价值,就是能够提供容量的更大的闪存给用户使用,近几年来许多大厂纷纷投入3D NAND的研发,但目前只有Samsung, Toshiba/SanDisk 目前,各家厂商都在3D NAND上加大力度研发,尽可能提升自己闪存的存储密度,此前SK海力士已经量产72层堆叠3D闪存,东芝与西数2018年9月份开始量产96层堆叠的BiCS4芯片,并会在年底前发货。
分类 NOR和NAND是市场上两种主要的非易失闪存技术。 在1984年,东芝公司的发明人舛冈富士雄首先提出了快速闪存存储器(此处简称闪存)的概念。 後来,Intel发明的这类闪存被统称为NOR闪存。它结合EPROM和EEPROM两项技术,并拥有一个SRAM接口。 第二种闪存称为NAND闪存。 它由日立公司于1989年研制,并被认为是NOR闪存的理想替代者。NAND闪存的写周期比NOR闪存短90%,它的保存与删除处理的速度也相对较快。 3. 特点 性能 flash闪存是非易失存储器,可以对称为块的存储器单元块进行擦写和再编程。 \n"); } } 3.
5、FLASH存储器又称闪存 它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器 NAND Flash和NOR Flash的比较 NOR和NAND是现在市场上两种主要的非易失闪存技术。 但是经过了十多年之后,仍然有相当多的硬件工程师分不清NOR和NAND闪存。 相”flash存储器”经常可以与相”NOR存储器”互换使用。 许多业内人士也搞不清楚NAND闪存技术相对于NOR技术的优越之处,因为大多数情况下闪存只是用来存储少量的代码,这时NOR闪存更适合一些。而NAND则是高数据存储密度的理想解决方案。 NOR是现在市场上主要的非易失闪存技术。 NOR一般只用来存储少量的代码;NOR主要应用在代码存储介质中。
最近研究了下nor flash的掉电问题,对nor的掉电有了更多的认识。总结分享如下 擦除从0变1,写入从1变0 nor flash的物理特性是,写入之前需要先进行擦除。 多次写入的例子 在uboot中就有一个利用nor这个特性的例子。当使用了冗余env功能时,flash上会维护两份env,我们记为envA和envB吧。 写入过程掉电 对于nor来说,一次写入可以连续写256 bytes,那如果在中途发生了掉电,再次上电后读出来的数据会是什么样的呢? [41f6na3zx0.png] 擦除过程中掉电 从nor flash原厂了解到,erase操作其实在flash内部分成三个步骤: 1)pre-program all "00"; 2)erase; 3)post-program all "FF" 那么在擦除过程中掉电,可能出现的数据特征就比较多了。
1.4.4 NOR FlashNOR Flash是一种快速、随机读写的闪存存储器,主要用于存储程序代码、固件等需要快速读取的数据。 1.4.4.1 QSPI FlashQSPI Flash(Quad SPI Flash)是一种串行外部闪存,采用了NOR闪存作为其存储介质。 具体来说,QSPI Flash内部包含了一个控制器和一个或多个NOR闪存芯片,控制器通过SPI接口与主机之间进行通信。 1.4.4.2 其他NOR Flash存储器其他使用Nor Flash存储器技术的存储器包括Parallel NOR Flash、SPI NOR Flash和XIP Flash等。 3 光学存储介质光学存储介质(Optical Storage)是指采用激光技术进行数据存储和读取的存储设备,如光盘、DVD、蓝光光盘等。
SLC: 单层次存储单元SLC = Single-Level Cell,即1bit/cell,速度快寿命最长,价格贵(约MLC 3倍以上的价格),约10万次擦写寿命.是目前使用寿命最高的颗粒,由于价格贵 从眼下的情况来看 ,MLC己经被TLC赶超风头了,目前MLC使用最多的地方还是集中于工业现场和军工用途稍多 MLC颗粒 TLC:TLC =Trinary-Level Cell,即3bit/cell,速度慢寿命最短
(3bits/cell),性能、寿命变差,只能经受3千次编程/擦写循环,但是容量可以做得更大,成本也可以更低,大多数固态硬盘的选择;第四代QLC(Quad-Level Cell)每单元可存储4比特数据( Nor FlashNOR Flash是一种非易失闪存技术,是Intel在1988年创建。是市场上两种主要的非易失闪存技术之一。按照接口区分, Nor Flash也可以分为并行和串行两种。 由于并行Nor Flash易存在兼容性问题,现已逐渐淘汰,目前常用的Nor Flash通常指串行Flash,即SPI Flash,其接口定义和图3一致。 表1 NAND Flash &Nor Flash 存储介质对比表3. eMMCeMMC 本质上还是Nand flash ,数据接口支持1bit、4bit和8bit三种。 eMMC=Nand flash +闪存控制芯片+标准接口封装,其内部集成的闪存控制器具有读写协议、擦写均衡、坏块管理、ECC校验、电源管理、时钟管理、数据存取等功能,极大降低了Nand-flash的使用难度