OOB:
是out of bank,引入这个是因为nand flash有1个缺陷(位反转),解决是在每写1页数据后将生成的校验码写入,可以找出并修正某个错误位。

1、K9F1208U0B NAND FLASH内部的物理结构

从下图可以知道,一块Nand Flash被分为若干Block,每个Block又被分为若干Page.
他们之间的关系是:
1Page = 512 Bytes Data Field  + 16 Bytes Spare Field
1 Block = 32 Pages
我们讨论的K9F1208U0B总共有4096个Blocks,故我们可以知道这块Flash的容量为
4096 * (32 * 528) = 69206016 Bytes = 66 MB
但事实上每个Page上的最后16Bytes是用于存储检验码用的,并不能存放实际的数据,所以实际上我们可以操作的芯片容量为:
4096 * (32 * 512) = 67108864 Bytes = 64 MB
2、 K9F2G08X0A NAND FLASH 内部物理结构
从下图可以知道,一块Nand Flash被分为2048 Block,每个Block又被分为64 Page.
他们之间的关系是:
1Page = 2K Bytes Data Field  + 64  Bytes Spare Field
1 Block = 64 Pages
我们讨论的K9F2G08X0A 总共有2048个Blocks,故我们可以知道这块Flash的容量为
2048 * 64 *(2K+64 )= 276824064 Bytes = 264MB
但事实上每个Page上的最后64Bytes是用于存储检验码用的,并不能存放实际的数据,所以实际上我们可以操作的芯片容量为:
 2048* 64 * 2K= 268435456 Bytes = 256 MB
注意:下面的2112Mbits换算成字节为2112/8,也就是264字节。

发出读命令给nand flash ,发出地址给它,nand flash会吧对应页的数据(包括oob)从存储体里拷贝到Page Register(相当于nand flash里面的一小块缓冲区)

K9F1208U0B、K9F2G08X0A NAND FLASH内部的物理结构相关推荐

  1. Nand Flash基础知识与坏块管理机制的研究

    概述 Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次 ...

  2. Nand Flash数据存储单元的整体架构

    http://www.crifan.com/files/doc/docbook/linux_nand_driver/release/html/linux_nand_driver.html 简单说就是, ...

  3. nand flash基础(一)

    我入职以来接触的第一个实践内容就是MTD下的NAND FLASH的驱动,下面我将从nand flash的基础和驱动程序两个方面来探讨 该知识点,同时最后我会把自己的 动手实验也展示出来,我学习是基于j ...

  4. nand flash 个人觉得写得比较好的文章

    [详解]如何编写Linux下Nand Flash驱动 版本:v2.2.1 Crifan Li 摘要 本文先解释了Nand Flash相关的一些名词,再从Flash硬件机制开始,介绍到Nand Flas ...

  5. nand flash 经典 全面 ------如何编写Linux下Nand Flash驱动

    Crifan Li 摘要 本文先解释了Nand Flash相关的一些名词,再从Flash硬件机制开始,介绍到Nand Flash的常见的物理特性,且深入介绍了Nand Flash的一些高级功能,然后开 ...

  6. 【详解一】Nand Flash 编写驱动之前要了解的知识

    1.1. 一些相关的名词的解释 1.1.1. Non-Volatile Memory非易失性存储器 NVM,即NV (RAM)Memory,断电数据也不会丢失的存储器,比如Nand Flash,Nor ...

  7. 如何编写linux下nand flash驱动

    http://www.cnblogs.com/sankye/articles/1638852.html 向作者Sankye致敬 [编写驱动之前要了解的知识] 1.       硬件特性: [Flash ...

  8. NAND FLASH学习笔记之nand flash基础(一)

    我入职以来接触的第一个实践内容就是MTD下的NAND FLASH的驱动,下面我将从nand flash的基础和驱动程序两个方面来探讨该知识点,同时最后我会把自己的 动手实验也展示出来,我学习是基于jz ...

  9. 采用NAND Flash设计存储设备的挑战在哪里?

    对于搞电子设计的工程师而言,NAND Flash是再熟悉不过的东西了.在电子设计的时候,NAND Flash通常作为大容量存储介质,可以类比为PC系统中的磁盘.在电子设计领域,对于小容量存储,还可以采 ...

最新文章

  1. 反向域名解析的用途,如何设置?
  2. sleep函数_MySQL中的sleep函数介绍
  3. Javascript-入门
  4. 如何避免订单重复支付?
  5. 【MM 模块】 Optimized Purchasing 优化采购 1
  6. Fibonacci思想的灵活应用(洛谷P1011题题解,Java语言描述)
  7. 师弟新作 | NBT:王运浩、区健辉等综述纳米孔测序技术
  8. 谈谈Tensorflow的Batch Normalization
  9. flask使用sqlit3的两种方式
  10. [20150123]热链竞争.txt
  11. oracle的 客户端工具,Oracle SQL Handler下载-Oracle数据库客户端工具5.2 官方版-东坡下载...
  12. larveral开发api源码 php_PHP数据库驱动扩展概述与不同方式连接数据库总结
  13. Android textwatcher监听文本框输入变化
  14. 数据挖掘技术研究现状
  15. 屏幕取色软件ColorPix
  16. 音视频直播推流和拉流到底是什么意思?
  17. 数学分析教程 第五章学习感受
  18. python爬取别人qq空间相册_python+selenium+requests爬取qq空间相册时遇到的问题及解决思路...
  19. BLE DTM by HCI
  20. SQLServer笔试题

热门文章

  1. 脉冲信号是数字信号吗?为什么时间离散的信号在幅值上可以是连续的?
  2. Flask之多个应用接口
  3. MATLAB 验证时域和频域卷积定理
  4. nodejs调整版本问题
  5. 如何让div靠右_css想让块靠右该如何实现
  6. 【sout方法详解PrintStream】
  7. 手把手教你完成图像分类实战——基于卷积神经网络的图像识别
  8. 写一篇5000字的小学数学体验式教学论文
  9. COleVariant的转换
  10. 为什么“数据驱动”只属于那些“天生的数字公司”,传统企业却只有束缚?...