Nand Flash 基础
1. 根据物理结构上的区别,Nand Flash主要分为:
SLC(Single Level Cell): 单层式存储
MLC(Multi Level Cell): 多层式存储
TLC(Triple Level Cell): 三层式存储
注:SLC在存储格上只存一位数据(2个状态),MLC存放两位数据(4个状态),TLC存放三位数据(8个状态)。
2. Nand Flash 地址结构
注:
①Row Address即页地址,Column Address即页内偏移
②正常页内容读取用Column Address(A0-A10),共11位,最大索引地址为2^11 = 2048
③OOB区域索引用Column Address(A0- A12),共12位,可以索引2048后面的地址
3. Nand Flash 信号引脚
①CLE(Command Latch Enable): 命令锁存允许
②ALE(Address Latch Enable): 地址锁存允许
③CE: 片选
④RE: 读允许
⑤WE: 写允许
⑥WP: 在写或者擦期间,提供写保护
⑦R/B: 读/忙
注:
现代一些SOC都自带Nand Flash控制器,软件工程师只需配置一些控制寄存器,然后按照顺序填写命令寄存器、地址寄存器,操作数据寄存器读写数据。
4. Nand Flash 命令集
5. ECC校验
① ECC的全称是Error Checking and Correction,是一种用于Nand的差错检测和修正算法
② 校验码生成算法:ECC校验每次对256字节的数据进行操作,包含列校验和行校验
列校验:
注:CP0~CP5为6个Bit位,表示Column Parity(列极性)
行校验:
注:RP0~RP15为16个Bit,表示Row Parity(行极性)
综上,对256字节的数据共生成了6个Bit的列校验结果,16个Bit的行校验结果,共22个Bit
Nand Flash 基础的更多相关文章
- Nand Flash基础知识与坏块管理机制的研究
概述 Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次 ...
- NAND FLash基础概念介绍
一.引脚介绍 引脚名称 引脚功能 CLE 命令锁存功能 ALE 地址锁存功能 /CE 芯片使能 /RE 读使能 /WE 写使能 /WP 写保护 R/B 就绪/忙输出信号 Vcc 电源 Vss 地 N. ...
- SAM4E单片机之旅——16、NAND Flash读写
这次大概介绍了一下NAND Flash,以及在ASF中使用它的方法. 一. 接线 这个开发板搭载了一个256 MB,8位的NAND Flash(MT29F2G08ABAEA).引脚接线如下: 偷个懒, ...
- ECC校验原理以及在Nand Flash中的应用
本篇文章主要介绍ECC基本原理以及在Nand Flash中的应用,本文记录自己对ECC校验原理的理解和学习. ECC介绍 ECC,全称为Error Correcting Code, ...
- NAND Flash中常用的纠错方式(ECC算法)
Hanming,RS,BCH —— NAND Flash中常用的纠错方式 因为闪存中会有出错的可能,如果没有使用ECC模块,读出的数据和写入的数据会有不匹配的可能,也许一个文件中只有一两个bit不匹配 ...
- linux2.6.30.4内核移植(2)——Nand Flash驱动移植
内核源码:linux2.6.30.4 交叉编译工具:3.4.5 移植linux内核至:TQ2440 工作基础:http://www.cnblogs.com/nufangrensheng/p/36696 ...
- kernel下nand flash的文件系统总结
1.FLASH转换层(FTL) EXt2/EXT3/EXT4文件系统可以通过FTL实现对flash的支持,因为FTL可以将闪存flash模拟成磁盘结构. 在ext2文件系统的基础上上,为了保证数据的一 ...
- 说说NAND FLASH以及相关ECC校验方法
Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次性地将 ...
- nand flash详解及驱动编写
https://www.crifan.com/files/doc/docbook/linux_nand_driver/release/html/linux_nand_driver.html#nand_ ...
随机推荐
- 关于Bundle对象的思考
在开发过程中,我们经常使用bundle对象来携带二进制数据,通过INTENT传递出去,那么BUNDLE对象到底是什么?其结构如何? 简要来说,bundle对象类似于一个map,内部是通过<key ...
- (内存地址hashcode与对象内容hashcode)分析== 和 equal()方法
==.equals()和hashCode()字符串测试 1.hashCode() 是根据 内容 来产生hash值的 2.System.identityHashCode() 是根据 内存地址 来产生ha ...
- 2018网络预选赛 青岛 H
题目链接:https://pintia.cn/problem-sets/1036903825309761536/problems/1041156323504345088 题意:小明从某一点出发,向右方 ...
- R: 对向量中的每个元素,检查其是否包含某个“单词”
#检测一个字符串中,是否包含某个子串,是返回T,否返回Frequire(stringr) require(stringr) test <- c("这里有天气热敏感冒",&qu ...
- tarjan进阶
一.边双连通分量 定义 若一个无向图中的去掉任意一条边都不会改变此图的连通性,即不存在桥,则称作边双连通图.一个无向图中的每一个极大边双连通子图称作此无向图的边双连通分量. 实际求法和强连通分量差不多 ...
- Luogu 4514 上帝造题的七分钟
二维差分+树状数组. 定义差分数组$d_{i, j} = a_{i, j} + a_{i - 1, j - 1} - a_{i, j - 1} - a_{i - 1, j}$,有$a_{i, j} = ...
- 多线程学习-基础( 十一)synchronized关键字修饰方法的简单案例
一.本案例设计到的知识点 (1)Object的notify(),notifyAll(),wait()等方法 (2)Thread的sleep(),interrupt(). (3)如何终止线程. (4)如 ...
- 解决批处理命令执行完毕后自动关闭cmd窗口方法
问题描述: 日常开发工作中,为了节省多余操作导致浪费时间,我们经常会自己建一些批处理脚本文件(xx.bat),文件中包含我们需要执行的命令,有时候我们希望执行完毕后看一下执行的结果,但是窗口执行完毕后 ...
- div 与 table 的优点
div+css布局的好处: 1.符合W3C标准,代码结构清晰明了,结构.样式和行为分离,带来足够好的可维护性. 2.布局精准,网站版面布局修改简单. 3.加快了页面的加载速度(最重要的)(在IE中要将 ...
- MVVM模式WPF的ComboBox数据绑定,使用Dictionary作为数据源
ViewModel//属性定义 Dictionary<int, string> _selGroupList; /// <summary> /// 分组下拉列表 /// < ...