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),使用这种储存单元的快闪记忆体也称为单阶储存单元快闪记忆体(SLC flash memory),或简称SLC快闪记忆体。SLC快闪记忆体的优点是传输速度更快,功率消耗更低和储存单元的寿命更长。然而,由于每个储存单元包含的资讯较少,其每百万位元组需花费较高的成本来生产。

Small page (SLC) : 1 page =512 + 16 bytes

Large page (SLC) : 1 page =2048 + 64 bytes

MLC

「Large page (2112 Byte)Large page (4224 Byte)」

多阶储存单元快闪记忆体(Multi-level cell flash memory, MLC flash memory)可以在每个储存单元内储存2个以上的资讯位元 ,其「多阶」指的是电荷充电有多组电压值,如此便能储存多个位元的值于每个储存单元中。因为每个储存单元可储存更多的位元,所以MLC快闪记忆体的每单位储存成本较为低廉。早期比起SLC快闪记忆体,MLC传输速度较慢,功率消耗较高和储存单元的寿命较低为其缺点,但科技日新月异,良率问题持续改善,现今市面上的NAND Flash多数都为MLC架构。

Large page (MLC 2K/Page) : 1 page =2048 + 64 bytes

Large page (MLC 4K/Page) : 1 page =4096 + 128 bytes

NAND Flash 资料结构

NAND Flash Invalid Block 

NAND Flash 在出厂时都会作严格的测试编程,以确认每一个Block(区块、轨区)是否正常,测试不通过的Block 会被标上记号,这些Block 就叫 Initial Invalid Block(潜在的Bad Block)。这些 Initial Invalid Block的资讯很重要,不可以轻易删除,因为有些Block经过Erase后Invalid block 的资讯就会不见,这时使用者自己使用编程器或烧录器厂商都是无法再找出这些 Invalid block 。Invalid Block 的标示位置,在SLC、MLC 上会不一样需注意(厂牌不同也会有差异)。

Bad Block Management

Bad Block Management;BBM,坏轨管理-即控制IC的故障区块管理机制,是用来侦测并标示NAND Flash中的坏轨,避免资料存入坏轨中,用以提升资料存取的可靠性。

NAND Flash中的坏轨可分为Early Bas Block与Latter Bad Block。Early Bad Block是NAND Flash在制造过程中,因制程或技术因素所产生的故障区块,一般约占NAND Flash总容量的1%以内;Latter Bad Block则是在NAND Flash被使用的过程中所产生,一般被IC业者控制在NAND Flash总容量的5%以内。

NAND Flash首次被启用时,控制IC的故障轨区管理程式会逐一检查NAND Flash内每个区块,若有发现坏轨,便将之记录至Bad Block Table;BBT(故障区块表)中,以防止日后资料被写入这些坏轨中。

建立BBT后,随著NAND Flash在使用的过程中,如果有区块在抹写时发生错误,同样也会被记录至BBT中,并将抹写失败的资料内容重新移植到新的有效区块中,以避免因抹写过程的错误导致资料流失或资料异常。

编程器NAND Flash 技术入门的更多相关文章

  1. nand flash详解及驱动编写

    https://www.crifan.com/files/doc/docbook/linux_nand_driver/release/html/linux_nand_driver.html#nand_ ...

  2. NAND FLASH 物理结构分析

    转自:http://blog.51cto.com/hardywang/2053915 NAND Flash是一种非易失性随机访问存储介质,基于浮栅(Floating Gate)晶体管设计,通过浮栅来锁 ...

  3. 如何编写linux下nand flash驱动-2

    [Nand Flash引脚(Pin)的说明] 图3.Nand Flash引脚功能说明 上图是常见的Nand Flash所拥有的引脚(Pin)所对应的功能,简单翻译如下: 1.       I/O0 ~ ...

  4. A New 3-bit Programming Algorithm using SLC-to-TLC Migration for 8MBs High Performance TLC NAND Flash Memory

    背景 1.2012年左右的数据SLC.MLC.TLC闪存芯片的区别:SLC = Single-Level Cell ,即1bit/cell,速度快寿命长,价格超贵(约MLC 3倍以上的价格),约10万 ...

  5. java基础-网络编程(Socket)技术选型入门之NIO技术

    java基础-网络编程(Socket)技术选型入门之NIO技术 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.传统的网络编程 1>.编写socket通信的MyServer ...

  6. Docker技术入门与实战 第二版-学习笔记-8-网络功能network-3-容器访问控制和自定义网桥

    1)容器访问控制 容器的访问控制,主要通过 Linux 上的 iptables防火墙来进行管理和实现. iptables是 Linux 上默认的防火墙软件,在大部分发行版中都自带. 容器访问外部网络 ...

  7. NOR flash和NAND flash区别,RAM 和ROM区别

    ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写.ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是 ...

  8. NOR flash和NAND flash区别,RAM 和ROM区别d

    ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写.ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是 ...

  9. 【Zigbee技术入门教程-01】Zigbee无线组网技术入门的学习路线

    [Zigbee技术入门教程-01]Zigbee无线组网技术入门的学习路线 广东职业技术学院  欧浩源 一.引言    在物联网技术应用的知识体系中,Zigbee无线组网技术是非常重要的一环,也是大家感 ...

随机推荐

  1. google base 之MessagePumpForUI

    base库中比较有意思就是这个类了,如同很多界面库一样,创建了一个隐藏窗口来处理需要在界面线程处理的消息,大体原理也就是需要执行task的时候发送一个自定义的消息,当窗口接收到task的时候调用保存起 ...

  2. poj1160

    题目大意:在一个一维坐标轴上有v个(1<=v<=300)村庄,要建p(1<=p<=30)个邮局,每个村庄都到最近的邮局,要求最小的距离和.   四边形不等式,据说黑书上写得很高 ...

  3. JVM学习之常用概念

    方法区     当JVM使用类装载器装载某个类时,它首先要定位对应的class文件,然后读入这个class文件,最后,JVM提取该文件的内容信息,并将这些信息存储到方法区,最后返回一个class实例. ...

  4. what oop ?

    最近在做一个app的后台代码.......到底是什么是Oop ,没有感觉到啊,,,,,

  5. Hash算法原理理解

    我们有很多的小猪,每个的体重都不一样,假设体重分布比较平均(我们考虑到公斤级别),我们按照体重来分,划分成100个小猪圈. 然后把每个小猪,按照体重赶进各自的猪圈里,记录档案. 好了,如果我们要找某个 ...

  6. Others in life

    耗电量主要是与电机有关,800W电机在48V下的工作电流大约是800/48=16.7A,因此其工作时间主要取决于电池的容量,如果电池容量是20Ah,那么大概也就连续工作1个小时左右,也就是30-40k ...

  7. 数据库合并数据sql

    1.sql2000中只能用自定义的函数解决 )) , 'aa') , 'bb') , 'aaa') , 'bbb') , 'ccc') go )) ) as begin ) select @str = ...

  8. Linux bug 14258279: scheduling clock overflows in 208 days

    早上同事反映数据库不能用.无法正常登录主机.多次尝试后终于登上主机,检查系统日志发现下述错误: BUG: soft lockup - CPU#5 stuck for 17163091988s! 貌似是 ...

  9. 继承CWnd自绘按钮

    头文件: //头文件 #pragma once // CLhsButton #define MYWM_BTN_CLICK WM_USER+3001 //关闭按钮单击响应 //tab按钮的状态 enum ...

  10. Android切换页面效果的实现二:WebView+ViewPager

    前言: 由于第一种切换页面的效果不能满足项目的要求,于是又找到另外一种更简单好用的方法来实现,顿时感觉,做项目开发,找到一种合适的方法能够减少很多时间,(刚开始自己弄的时候还想着自己写手势识别的方法呢 ...