快闪存储器(英语:Flash Memory),是一种电子式可清除程序化只读存储器的形式,允许在操作中被多次擦或写的存储器。这种科技主要用于一般性数据存储,以及在电脑与其他数字产品间交换传输数据,如储存卡与U盘。闪存是非易失性的存储器,所以单就保存数据而言, 它是不需要消耗电力的。

与硬盘相比,闪存也有更佳的动态抗震性。这些特性正是闪存被移动设备广泛采用的原因。闪存还有一项特性:当它被制成储存卡时非常可靠,即使浸在水中也足以抵抗高压与极端的温度。闪存的写入速度往往明显慢于读取速度。

SPI FLASH

首先它是个Flash,Flash是什么东西就不多说了(非易失性存储介质),分为NOR和NAND两种(NOR和NAND的区别本篇不做介绍)。SPI一种通信接口。那么严格的来说SPI Flash是一种使用SPI通信的Flash,即,可能指NOR也可能是NAND。但现在大部分情况默认下人们说的SPI Flash指的是SPI NorFlash。早期Norflash的接口是parallel的形式,即把数据线和地址线并排与IC的管脚连接。但是后来发现不同容量的Norflash不能硬件上兼容(数据线和地址线的数量不一样),并且封装比较大,占用了较大的PCB板位置,所以后来逐渐被SPI(串行接口)Norflash所取代。同时不同容量的SPI Norflash管脚也兼容封装也更小。,至于现在很多人说起NOR flash直接都以SPI flash来代称。

SPI FLASH与NOR FLASH的区别 详解SPI FLASH与NOR FLASH的不一样

NorFlash根据数据传输的位数可以分为并行(Parallel,即地址线和数据线直接和处理器相连)NorFlash和串行(SPI,即通过SPI接口和处理器相连)NorFlash;区别主要就是:1、SPI NorFlash每次传输一bit位的数据,parallel连接的NorFlash每次传输多个bit位的数据(有x8和x16bit两种); 2、SPI NorFlash比parallel便宜,接口简单点,但速度慢。

NandFlash是地址数据线复用的方式,接口标准统一(x8bit和x16bit),所以不同容量再兼容性上基本没什么问题。但是目前对产品的需求越来越小型化以及成本要求也越来越高,所以SPI NandFlash渐渐成为主流,并且采用SPI NANDFlash方案,主控也可以不需要传统NAND控制器,只需要有SPI接口接口操作访问,从而降低成本。另外SPI NandFlash封装比传统的封装也小很多,故节省了PCB板的空间。

今天主要说下SPI NorFlash。

二、有毛用啊

节省成本,减小封装,存储数据。

三、怎么用啊

怎么用说白了对于Flash就是读写擦,也就是实现flash的驱动。先简单了解下spi flash的物理连接。

之前介绍SPI的时候说过,SPI接口目前的使用是多种方式(具体指的是物理连线有几种方式),Dual SPI、Qual SPI和标准的SPI接口(这种方式肯定不会出现在连接外设是SPI Flash上,这玩意没必要全双工),对于SPI Flash来说,主要就是Dual和Qual这两种方式。具体项目具体看了,理论上在CLK一定的情况下, 线数越多访问速度也越快。我们项目采用的Dual SPI方式,即两线。

当前涉及到具体的SPI flash芯片类型了,所以必须也得参考flash的datasheet手册了。我们以W25Q64JVSSIQ为例。

这是基本信息的介绍,然后看下具体IO的定义

这个是WSON封装的管脚定义,其他详细信息参考datasheet。

硬件驱动的话也是和芯片强相关的,因为读写擦都是和硬件时序相关的,所以必须得参考硬件datasheet手册。

上面的datasheet都详细说明了每个操作的时序周期发送的命令。上图中,第一列是指令名称,第二列是指令编码,第三列及以后的指令功能与对应的指令有关。带括号的字节内容为flash向主机返回的字节数据,不带括号则是主机向flash发送字节数据。

A0A23:flash内部存储器地址;MID0MID7:制造商ID;ID0ID15:flash芯片ID;D0D7:flash内部存储的数据;dummy:指任意数据。

比如获取deviceID:

表示该命令由这四个字节组成,其中dummy意为任意编码,即这三个字节必须得发数据,但这些数据是任意的,上图命令列表中带括号的字节数据表示由FLASH返回给主机的响应,可以看到deviceID命令的第5个字节为从机返回的响应,(ID7~ID0),即返回设备的ID号。

代码如下:

uint32_t Get_Flash_DeviceID(void)

{

uint8_t deviceID= 0x00;

spiflashReset();

spi_write( 0xAB);

spi_write( Dummy);

spi_write( Dummy);

spi_write( Dummy);

deviceID = spi_write( Dummy);

spi_write( Dummy);

spiflashSet() ;

return deviceID;

}

NOR FLASH
  NOR Flash是一种非易失闪存技术,是Intel在1988年创建。

是现在市场上两种主要的非易失闪存技术之一。Intel于1988年首先开发出NOR Flash 技术,彻底改变了原先由EPROM(Erasable Programmable Read-Only-Memory电可编程序只读存储器)和EEPROM(电可擦只读存储器Electrically Erasable Programmable Read - Only Memory)一统天下的局面。紧接着,1989年,东芝公司发表了NAND Flash 结构,强调降低每比特的成本,有更高的性能,并且像磁盘一样可以通过接口轻松升级。NOR Flash 的特点是芯片内执行(XIP ,eXecute In Place),这样应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。NOR 的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响到它的性能。NAND的结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于Flash的管理需要特殊的系统接口。通常读取NOR的速度比NAND稍快一些,而NAND的写入速度比NOR快很多,在设计中应该考虑这些情况。——《ARM嵌入式Linux系统开发从入门到精通》 李亚峰 欧文盛 等编著 清华大学出版社 P52 注释 API Key

性能比较

flash闪存是非易失存储器,可以对称为块的存储器单元块进行擦写和再编程。任何flash器件的写入操作只能在空或已擦除的单元内进行,所以大多数情况下,在进行写入操作之前必须先执行擦除。NAND器件执行擦除操作是十分简单的,而NOR则要求在进行擦除前先要将目标块内所有的位都写为0。

由于擦除NOR器件时是以64~128KB的块进行的,执行一个写入/擦除操作的时间为5s,与此相反,擦除NAND器件是以8~32KB的块进行的,执行相同的操作最多只需要4ms。

执行擦除时块尺寸的不同进一步拉大了NOR和NAND之间的性能差距,统计表明,对于给定的一套写入操作(尤其是更新小文件时),更多的擦除操作必须在基于NOR的单元中进行。这样,当选择存储解决方案时,设计师必须权衡以下的各项因素。

l 、NOR的读速度比NAND稍快一些。

2、 NAND的写入速度比NOR快很多。

3 、NAND的4ms擦除速度远比NOR的5s快。

4 、大多数写入操作需要先进行擦除操作。

5 、NAND的擦除单元更小,相应的擦除电路更少。

此外,NAND的实际应用方式要比NOR复杂的多。NOR可以直接使用,并可在上面直接运行代码;而NAND需要I/O接口,因此使用时需要驱动程序。不过当今流行的操作系统对NAND结构的Flash都有支持。此外,Linux内核也提供了对NAND结构的Flash的支持。

详解

NOR和NAND是现在市场上两种主要的非易失闪存技术。Intel于1988年首先开发出NOR flash技术,彻底改变了原先由EPROM和EEPROM一统天下的局面。紧接着,1989年,东芝公司发表了NAND flash结构,强调降低每比特的成本,更高的性能,并且象磁盘一样可以通过接口轻松升级。但是经过了十多年之后,仍然有相当多的硬件工程师分不清NOR和NAND闪存。

像“flash存储器”经常可以与相“NOR存储器”互换使用。许多业内人士也搞不清楚NAND闪存技术相对于NOR技术的优越之处,因为大多数情况下闪存只是用来存储少量的代码,这时NOR闪存更适合一些。而NAND则是高数据存储密度的理想解决方案。

NOR的特点是芯片内执行(XIP, eXecute In Place),这样应用程序可以直接在flash闪存内运行,不必再把代码读到系统RAM中。NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。

NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理需要特殊的系统接口。

SPI FLASH与NOR FLASH的区别
  1、SPI Flash (即SPI Nor Flash)是Nor Flash的一种;

2、NOR Flash根据数据传输的位数可以分为并行(Parallel)NOR Flash和串行(SPI)NOR Flash;

3、SPI Nor Flash每次传输一个bit位的数据,parallel Nor Flash每次传输多个bit位的数据(有x8和x16bit两种);

4、SPI Nor Flash比parallel便宜,接口简单点,但速度慢。

SPI FLASH是指外接口符合SPI协议,也就是串口。

NOR FLASH与NAND 是相对的,指的是芯片内部的串型和并行。

SPI FLASH是NOR FLASH的一种。

NOR Flash

NOR Flash需要很长的时间进行抹写,但是它提供完整的寻址与数据总线,并允许随机存取存储器上的任何区域,这使的它非常适合取代老式的ROM芯片。当时ROM芯片主要用来存储几乎不需更新的代码,例如电脑的BIOS或机上盒(Set-top Box)的固件。NOR Flash可以忍受一万到一百万次抹写循环,它同时也是早期的可移除式快闪存储媒体的基础。CompactFlash本来便是以NOR Flash为基础的,虽然它之后跳槽到成本较低的 NAND Flash。

NAND Flash

NAND Flash式东芝在1989年的国际固态电路研讨会(ISSCC)上发表的, 要在NandFlash上面读写数据,要外部加主控和电路设计。NAND Flash具有较快的抹写时间, 而且每个存储单元的面积也较小,这让NAND Flash相较于NOR Flash具有较高的存储密度与较低的每比特成本。同时它的可抹除次数也高出NOR Flash十倍。然而NAND Flash 的I/O接口并没有随机存取外部地址总线,它必须以区块性的方式进行读取,NAND Flash典型的区块大小是数百至数千比特。

因为多数微处理器与微控制器要求字节等级的随机存取,所以NAND Flash不适合取代那些用以装载程序的ROM。从这样的角度看来,NAND Flash比较像光盘、硬盘这类的次级存储设备。NAND Flash非常适合用于储存卡之类的大量存储设备。第一款创建在NAND Flash基础上的可移除式存储媒体是SmartMedia,此后许多存储媒体也跟着采用NAND Flash,包括MultiMediaCard、Secure Digital、Memory Stick与xD卡。

EMMC

emmc存储器eMMC (Embedded Multi Media Card) 为MMC协会所订立的,eMMC 相当于 NandFlash+主控IC ,对外的接口协议与SD、TF卡一样,主要是针对手机或平板电脑等产品的内嵌式存储器标准规格。eMMC的一个明显优势是在封装中集成了一个控制器,它提供标准接口并管理闪存,使得手机厂商就能专注于产品开发的其它部分,并缩短向市场推出产品的时间。这些特点对于希望通过缩小光刻尺寸和降低成本的NAND供应商来说,同样的重要。

eMMC由一个嵌入式存储解决方案组成,带有MMC(多媒体卡)接口、快闪存储器设备(Nand Flash)及主控制器,所有都在一个小型的BGA 封装。接口速度高达每秒52MBytes,eMMC具有快速、可升级的性能。同时其接口电压可以是 1.8V或者是 3.3V。

参考:
https://www.jdwx.info/article-991-1.html
http://m.elecfans.com/article/778203.html

SPI Flash,NOR Flash,NAND Flash,eMMC对比相关推荐

  1. nor flash启动与nand flash启动的区别

    1)接口区别: NOR FLASH地址线和数据线分开,来了地址和控制信号,数据就出来.类似于memory的随机访问方式,在nor flash上可以直接运行程序, NAND Flash地址线和数据线在一 ...

  2. 如何自动识别是NOR flash 启动还是NAND flash启动

    Norflash启动时: 4K的内部SRAM都被映射到了0x40000000-0x40001000 Nandflash启动时: 4K的内部SRAM都被映射到了0x40000000,同时还被映射到了0x ...

  3. 3D Xpoint技术与NAND Flash、3D NAND Flash及DRAM的比较

    1.NAND颗粒:浮栅极物理结构单元,通过电压驱动电子,由电压值来判定bit位0或1.分为SLC.MLC.TLC三种flash颗粒,擦除次数分别为1万-10万.1千-1万.几百-1千次.寿命是NAND ...

  4. EMMC与NAND FLASH核心对比

    通俗的来说,eMMC=NAND闪存+闪存控制芯片+标准接口封装.本文大致做下边几个小结: (1)MMC与Host之间的连接 连接由下图可见 (2)eMMC和NAND Flash与Host的连接比较 N ...

  5. EEPROM,NOR Flash,NAND Flash,eMMC,UFS,SSD分别和主要参数及特性

    EEPROM.NOR Flash.NAND Flash.eMMC.UFS.SSD都是非易失性存储器,但它们在架构.存储容量.读写速度.功耗.价格等方面存在不同,具体如下: EEPROM:EEPROM( ...

  6. SPI NAND Flash ATO技术领先全球的原因

    NAND Flash设计公司ATO Solution(CEO: Park, Chan-Woong)宣布,继256Mb.512Mbit与1Gbit SLC NAND flash之后,该公司开发自有设计之 ...

  7. FORESEE中国大陆首发512Mb SPI NAND Flash

    FORESEE中国大陆首发512Mb SPI NAND Flash 江波龙 近期发布了中国大陆首款FORESEE 512Mb SPI NAND Flash. FORESEE 512Mb SPI NAN ...

  8. 基础——ROM, RAM, FLASH, SSD, DDR3/4, eMMC, UFS, SD卡, TF卡,相互关系

    1. 关系 ROM, RAM, FLASH闪存, SSD, DDR3/4, eMMC, UFS, SD卡, TF卡, 这几个名词在手机和电脑等数码产品的参数中经常出现,单独看还明白是什么,放在一块,他 ...

  9. NOR和NAND Flash

    三星终于从爆炸门中走了出来,受到来自DRAM 与NAND 价格上涨带动,三星把Intel从盘踞了14年的半导体王座上赶了下来,风光可谓一时无两.虽然下半年市况预料将会修正,但今年整体DRAM 仍可较去 ...

  10. 嵌入式 - 存储介质【1】NOR Flash 和 NAND Flash宏观比较

    文章目录 引言 flash是什么? 日常生活 嵌入式开发工作 小结 flash存储介质的主要特性 闪存对比 NOR Flash NAND Flash 小结 参考资料 更新历史 20220307 从各类 ...

最新文章

  1. 使用windbg抓取崩溃文件和分析的过程
  2. 安装Exchange Server2016管理工具
  3. 十、oracle 常用函数
  4. 2013年上半年全国计算机技术与软件专业技术资格(水平)考试工作安排
  5. 中压缩数组_Java稀梳数组,什么是稀梳数组?为什么使用稀梳数组?
  6. Python编程4道练习题
  7. android微信分享之视频、URL地址、表情分享
  8. win10下安装和卸载Ubuntu双系统
  9. as3中强制垃圾回收
  10. CMS垃圾回收器总结
  11. iOS程序员自述,从月入10k到年薪百万,移动架构师如何养成的?
  12. 成都以前的计算机学校图片,成都计算机中职图片介绍
  13. 三菱q系列plc连接电脑步骤_三菱plc连接电脑步骤
  14. POJ 3764 The Xor-longest Path 题解
  15. Flashback Oracle文档阅读
  16. Flask框架详细教程
  17. 编译的时候所使用的动态库中出现错误:未定义的引用
  18. 到底该用GMT+8还是GMT-8?
  19. html css3各类加载中的loading动画效果
  20. 【C语言】用函数实现求两个自然数的最大公约数

热门文章

  1. Matlab机器学习(分类问题)中多个ROC曲线的绘制
  2. 简单Makefile编写教程
  3. 什么是 返点、分销、直销、代理、代销
  4. 强大的Git客户端:Tower for Mac(7.1(291)
  5. 小米应用商店错误日志查看教程(含工具下载)
  6. 计算机信息处理技术水平证考试,2015年(上)全国信息技术水平考试计算机信息处理技术水平证书考试试卷...
  7. Matlab:实现Fra矩形孔衍射仿真
  8. 深入浅出Git教程+一个小时学会Git(转载)(堪称完美)
  9. C# Volo.Abp使用原生sql语句查询
  10. 循环播放背景音乐 html,js背景音乐循环播放代码(多浏览器支持)