转自:https://blog.csdn.net/renice_ssd/article/details/53332746 如果所有的page performace在每次program时都是基本相同的,那么,这个Nand Flash颗粒应该是最稳定.最可靠的,因此,通过观察每个page performance的分布,可以大致看出Nand Flash的可靠程度. 尽管每个Nand Flash的datasheet都会注明Erase.Program.Read Performance的详细时间,事实上,这…
背景 1.2012年左右的数据SLC.MLC.TLC闪存芯片的区别:SLC = Single-Level Cell ,即1bit/cell,速度快寿命长,价格超贵(约MLC 3倍以上的价格),约10万次擦写寿命MLC = Multi-Level Cell,即2bit/cell,速度一般寿命一般,价格一般,约3000---10000次擦写寿命(2003)TLC = Trinary-Level Cell,即3bit/cell,也有Flash厂家叫8LC,速度慢寿命短,价格便宜,约500次擦写寿命,目…
https://www.crifan.com/files/doc/docbook/linux_nand_driver/release/html/linux_nand_driver.html#nand_driver_mechanism [详解]如何编写Linux下Nand Flash驱动 版本:v2.2.1   Crifan Li 摘要 本文先解释了Nand Flash相关的一些名词,再从Flash硬件机制开始,介绍到Nand Flash的常见的物理特性,且深入介绍了Nand Flash的一些高级…
http://bbs.21ic.com/icview-586200-1-1.html 百为STM32开发板教程之十二——NAND FLASH 参考资料:百为stm32开发板光盘V3\百为stm32开发板光盘\芯片数据手册\K9F1208.pdf百为stm32开发板光盘\st官方参考资料\Application notes\AN2784 Using the high-density STM32F10xxx FSMC peripheral to drive external memories.pdf…
出处:http://blog.chinaunix.net/uid-28852942-id-3992727.html这篇文章不是介绍 nand flash的物理结构和关于nand flash的一些基本知识的.你需要至少了解 你手上的 nand flash的物理结构和一些诸如读写命令 操作的大概印象,你至少也需要看过 s3c2440中关于nand flash控制寄存器的说明. 由于本人也没有专门学过这方面的知识,下面的介绍也是经验之谈. 这里 我用的 K9F2G08-SCB0 这款nand flas…
出处:http://blog.chinaunix.net/uid-28852942-id-3992727.html 这篇文章不是介绍 nand flash的物理结构和关于nand flash的一些基本知识的.你需要至少了解 你手上的 nand flash的物理结构和一些诸如读写命令 操作的大概印象,你至少也需要看过 s3c2440中关于nand flash控制寄存器的说明. 由于本人也没有专门学过这方面的知识,下面的介绍也是经验之谈. 这里 我用的 K9F2G08-SCB0 这款nand fla…
这篇文章不是介绍 nand flash的物理结构和关于nand flash的一些基本知识的.你需要至少了解 你手上的 nand flash的物理结构和一些诸如读写命令 操作的大概印象,你至少也需要看过 s3c2440中关于nand flash控制寄存器的说明. 由于本人也没有专门学过这方面的知识,下面的介绍也是经验之谈. 这里 我用的 K9F2G08-SCB0 这款nand flash 来介绍时序图的阅读.不同的芯片操作时序可能不同,读的命令也会有一些差别. 当然其实有时候像nand flash…
     本篇文章主要介绍ECC基本原理以及在Nand Flash中的应用,本文记录自己对ECC校验原理的理解和学习. ECC介绍      ECC,全称为Error Correcting Code,错误纠正码,这是一种编码方式,用于在于可以在一定程度上自行发现和纠正传输过程中发生的错误.      香农在1948年发表的<通信的数学理论>中的信道编码定理指出:主要采取适当的纠错码,就可以在多类信道上传输消息,其误码率可以任意小.经过历代人们的持续努力,找出了许多好的信道编码方法,满足许多实用…
0.NAND的操作管理方式      NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 (Block) = xxxx (Pages),1(Page) =528 (Bytes) = 数据块大小(512Bytes) + OOB 块大小(16Bytes,除OOB第六字节外,通常至少把OOB的前3个字节存放Nand Flash硬件ECC码). 关于OOB区,是每个Page都有的.Page大小…
转:http://www.cnblogs.com/elect-fans/archive/2012/05/14/2500643.html 0.NAND的操作管理方式 NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 (Block) = xxxx (Pages),1(Page) =528 (Bytes) = 数据块大小(512Bytes) + OOB 块大小(16Bytes,除OOB第六…
8.1 NAND Flash介绍和NAND Flash控制器使用 NAND Flash在嵌入式系统中的地位与PC上的硬盘类似 NAND Flash在掉电后仍可保存 8.1.1 Flash介绍 有NOR Flash和NAND Flash两种 NOR Flash与SDRAM的接口完全相同,可以随机访问任意地址的数据 NOR Flash的块大小是64kb~128kb,NAND的块大小是8kb~64kb NAND Flash一般以512字节为单位进行读写 Flash存储期间的可靠性主要考虑3点:位翻转.…
关于NAND FLASH的结构是以页为单位写,以块为单位来擦除: 1Gb     为大页   page=2048Kb    BLOCK=128K 512Mb 为小页   page=512byte    BLOCK=16K PS:一页还有额外64字节OOB块,通常不计入读取范围. 另一个区别就是ECC的验证: ECC是每256个字节生产一个24位的值.NAND FLASH在写的时候会生成一个原始的ECC值保存在页的SPARE区,当要读页时也会生产一个ECC值,会跟SPARE的值进行异或比较,看结果…
转来一篇关于NAND FLASH均衡算法的文章,加上一点思考和笔记,认为这种思考有助于更深刻的理解,更好的记忆,所以也算半原创了吧,最起码笔记是原创的.有意思的是,帖子提起这个算法并不是因为嵌入式开发的需要,而是企业存储.因为提到硬盘驱动器HDD的速度硬伤,目前估计就SSD一种好的存储介质解决方案吧,而SSD除了暂时价格小高以外,主要有一个寿命短的硬伤.这样的话就不可避免的涉及到映射.磨损均衡.存储格式转换等优化问题.以前一直认为基本只有使用NAND FLASH代替HDD的嵌入式平台才产生这种需…
转自:http://www.cnblogs.com/lifan3a/articles/4958224.html 以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用. 1. 概述 MT29F2G08使用一个高度复用的8-bit总线(I/O[7:0])来传输数据.地址.指令.5个命令脚(CLE.ALE.CE#.WE#)实现NAND命令总线接口规程.3个附加的脚用作: 控制硬件写保护(WP#).监视芯片状态(R/B#),和发起上电自动读特征(PRE-仅3V芯片支持).注意,…
关于nandflash的说明,请参考其他. 现在先贴出来韦东山先生的代码,作我学习之用. @************************************************ @ File:head.s @ 功能:设置SDRAM,将程序复制到SDRAM,然后跳到SDRAM继续执行 @************************************************ .text .global _start _start: @函数disable_watch_dog, m…
基本操作 这里将会简要介绍一下NAND Flash的基本操作在NAND Flash内部是如何进行的,基本操作包括:读.写和擦除.   读:     当我们读取一个存储单元中的数据时(如图2.4),是使用一个门电压Vread(0V)作用于gate端,而没有被读取的存储单元的gate端则被偏置于Vpass.r(通常为4-5v),这样他们就能够不管阀值电压是多少而能够通过晶体管.事实上,一个被擦除过的Flash存储单元有一个低于0V的Vth值,而一个被写过的存储单元的Vth则一般会有一个正值,并且这个…
ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写.ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存.RAM 有两大类,一种称为静态RAM(Static RAM/SRAM),SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓 冲.另一种称为动态RAM(Dynamic RAM/…
ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写.ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存. RAM有两大类,一种称为静态RAM(Static RAM/SRAM),SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲.另一种称为动态RAM(Dynamic RAM/D…
出自http://blog.csdn.net/maopig/article/details/7029930 DM365的视频处理涉及到三个相关处理器,分别是视频采集芯片.ARM处理器和视频图像协处理器(VICP),整个处理流程由ARM核协调.视频处理主要涉及三个处理流程,分别是视频采集.视频编码和对编码后的视频的处理,为了提高性能,通常为每个处理流程提供一个处理线程. 视频采集   TVP5146将采集到的视频数据转化为数字信号,并将这些数据送入DM365的BT656接口,然后通过Resize得…
0.NAND的操作管理方式      NAND FLASH的管理方式:以三星FLASH为例,一片Nand flash为一个设备(device),1 (Device) = xxxx (Blocks),1 (Block) = xxxx (Pages),1(Page) =528 (Bytes) = 数据块大小(512Bytes) + OOB 块大小(16Bytes,除OOB第六字节外,通常至少把OOB的前3个字节存放Nand Flash硬件ECC码). 关于OOB区,是每个Page都有的.Page大小…
NAND Flash 以Micron公司的MT29F2G08为例介绍NAND Flash原理和使用. 1. 概述 MT29F2G08使用一个高度复用的8-bit总线(I/O[7:0])来数据传输.地址.指令.5个命令脚(CLE.ALE.CE#.WE#)实现NAND命令总线接口规程.3个附加的脚用作: 控制硬件写保护(WP#).监视芯片状态(R/B#),和发起上电自己主动读特征(PRE-仅3V芯片支持).注意, PRE功能不支持宽温芯片. MT29F2G08内部有2048个可擦除的块,每一个块分为…
NAND Flash分类 SLC(Single-Level Cell)架构:单一储存单元(Cell)可储存1bit data MLC(Multi-Level Cell)架构:单一储存单元(Cell)可储存2bit data  SLC 「Small page (528 Byte).Large page (2112 Byte)」 在每个储存单元(Cell)内储存1个资讯位元(bit),称为单阶储存单元(single-level cell, SLC),使用这种储存单元的快闪记忆体也称为单阶储存单元快闪…
1.NAND FLASH 的特殊性. 1)存在坏块.由于NAND生产工艺的原因,出厂芯片中会随机出现坏块.坏块在出厂时已经被初始化,并在特殊区域中标记为不可用,在使用过程中如果出现坏块,也需要进行标记. 2) 易出现位反转.NAND FLASH更易出现位反转的现象,如果位反转出现在关键文件上,会导致系统挂机.所以在使用NAND FLASH的同时,建议使用ECC/EDC算法确保可靠性. 3) 存在Spare Area.正因为NAND FLASH有着上面的两项特殊的地方,Spare Area就扮演作…
ECC简介 由于NAND Flash的工艺不能保证NAND的Memory Array在其生命周期中保持性能的可靠,因此,在NAND的生产中及使用过程中会产生坏块.为了检测数据的可靠性,在应用NAND Flash的系统中一般都会采用一定的坏区管理策略,而管理坏区的前提是能比较可靠的进行坏区检测. 如果操作时序和电路稳定性不存在问题的话,NAND Flash出错的时候一般不会造成整个Block或是Page不能读取或是全部出错,而是整个Page(例如512Bytes)中只有一个或几个bit出错. 对数…
Flash Memory又叫做闪存,是一种非易失性存储器.非易失性是指断电之后数据不会丢失,这里就涉及到断电保护(后面详细讲解). 总体思路 1.NAND Flash的用途. 2.NAND Flash规则介绍. 3.SSD固件(Firmware,FW)包括:映射表(Mapping Table).垃圾回收(Garbage Collection).磨损平衡(Wear Leveling,WL)等. 4.补充概念:写入放大(Write Application).预留空间(Over Provisionin…
概述 Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次性地将一个block,常见的块的大小是128KB/256KB,全部擦除为1,也就是里面的内容全部都是0xFF了,由于是一下子就擦除了,相对来说,擦除用的时间很短,可以用一闪而过来形容,所以,叫做Flash Memory.所以一般将Flash翻译为 (快速)闪存. NAND Flash 在嵌入式系统中…
  很长一段时间没有更新博客了,是因为要推出新开发方案和做好客户服务工作,忙得不易乐乎.有关DAVINCI U-BOOT的移植,以前写过一篇u-boot-1.3.4(2008年的),其实和这个u-boot-2009.03差别不大,只不过这个u-boot-2009.03是从TI的网站上下载的,是DAVINCI系列最新的u-boot,也适合DM6467和DM365/368,移植的方法承接<Davinci DM6446开发攻略--u-boot-1.3.4移植(1)>,而本篇着重介绍nand flas…
Avinash Aravindan reference:https://www.embedded.com/design/prototyping-and-development/4460910/2/Flash-101--NAND-Flash-vs-NOR-Flash Embedded system designers must take into account many considerations when selecting a Flash memory: which type of Fla…
本章目标  了解NAND Flash 芯片的接口 掌握通过NAND Flash控制器访问NAND Flash的方法 8.1 NAND Flash介绍和NAND Flash控制器使用     NAND Flash在嵌入式系统中的地位与PC上的硬盘类似,用于保存系统运行所需的操 作系统.应用程序.用户数据.运行过程中产生的各类数据.与内存掉电数据丢失不同, NAND Flash中的数据在掉电后仍可永久保存. 8.1.1 Flash介绍     常用的Flash类型由NOR Flash和NAND Fl…
NAND FLASH是一个存储芯片那么: 这样的操作很合理"读地址A的数据,把数据B写到地址A" 问1. 原理图上NAND FLASH和S3C2440之间只有数据线,     怎么传输地址?答1.在DATA0-DATA7上既传输数据,又传输地址     当ALE为高电平时传输的是地址, 问2. 从NAND FLASH芯片手册可知,要操作NAND FLASH需要先发出命令     怎么传入命令?答2.在DATA0-DATA7上既传输数据,又传输地址,也传输命令     当ALE为高电平时…