(Nandflash工作原理.docVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(Nandflash工作原理

Nand flash芯片工作原理 ??? Nand flash芯片型号为Samsung K9F1208U0B,数据存储容量为64MB,采用块页式存储管理。8个I/O 引脚充当数据、地址、命令的复用端口。 ??? 芯片内部存储布局及存储操作特点: ??? 一片Nand flash为一个设备(device), 其数据存储分层为: ??? 1 (Device) = 4096 (Blocks) ??? 1 (Block) -= 32?? (Pages/Rows) 页与行是相同的意思,叫法不一样 ??? 1 (Page)?? = 528 (Bytes) = 数据块大小(512Bytes) + OOB 块大小(16Bytes) ???? 在每一页中,最后16个字节(又称OOB)用于Nand Flash命令执行完后设置状态用,剩余512个字节又 分为前半部分和后半部分。可以通过Nand Flash命令00h/01h/50h分别对前半部、后半部、OOB进行定位通过 Nand Flash内置的指针指向各自的首地址。 ??? 存储操作特点: ??? 1. 擦除操作的最小单位是块。 ??? 2. Nand Flash芯片每一位(bit)只能从1变为0,而不能从0变为1,所以在对其进行写入操作之前要一定将相应块擦除(擦除即是将相应块得位全部变为1). ??? 3. OOB部分的第六字节(即517字节)标志是否是坏块,如果不是坏块该值为FF,否则为坏块。(转载注:应该是每块的第一页的第六个字节。) ??? 4. 除OOB第六字节外,通常至少把OOB的前3个字节存放Nand Flash硬件ECC码 NAND FLASH的工作原理 - to beginner 2007-04-23 23:43 NAND FLASH 是一种大容量、高速的存储技术。 其接口较为简单,如果没有专门的nand flash控制器,甚至可以用io口与之对接。 其编程也相对简单,只要了解如下关键概念就可以: 1.nand flash内部有管理单元,管理单元负责对nand flash的实际单元的操作。 2.我们使用nand flash其实只需要和管理单元通信即可,主要是发送相关的命令给管理单元。 3.类似磁盘的管理制度,nand flash也是由若干bit构成一个page,若干page构成一个block, 若干block构成一个plane,我们在操作的时候往往以page为基本的操作对象。 4.nand flash的page单元有可能是有错误的,因此需要对存入的数据加上错误识别,以辨别 某个page单元是坏的。请注意,一个page单元往往最多仅有两个bit错误,所以对于错误识别 算法要求不是很高,只要能识别1,2个bit的算法即可。使用阵列奇偶校验很容易实现此算法。 nand flash控制器其实只是集成了相关的控制时序,在使用时通过操作nand flash控制器 的相关寄存器就可以实现相应的时序,但很多芯片本身不带nand flash控制器,此时可以 用io口与之对接,用软件来模拟硬件时序也可以操作nand flash。 此处的关键是从 nand flash的数据手册上得到时序图。进而确定软件的设计。 在此, 以Samsung公司的K9F1208 为例来探讨。 K9F1208 是以page(页)为基本的操作单位的, 一个page包含512 byte.????? 加16byte的校验码。 32个page构成一个block。 1k个block构成一个plane. 整个K9F1208 包含4个plane,每个plane可以支持1个读写操作,因此最多可以有4个并发的读写操作. K9F1208是64M byte的,64M = 4 plane * 1k block * 32 page * 512 byte K9F1208 的编程流程如下: 基于ARM9内核Processor外部NAND FLASH的控制实现 类别:电子综合 阅读:972 1 NAND FLASH   NAND写回速度快、芯片面积小,特别是大容量使其优势明显。页是NAND中的基本存贮单元,一页一般为512 B(也有2 kB每页的large page NAND FLASH),多个页面组成块。不同存储器内的块内页面数不尽相同,通常以16页或32页比较常见。块容量计算公式比较简单,就是页面容量与块内页面数的乘积。根据FLASH Memory容量大小,不同存储器中的块、页大小可能不同,块内页面数也不同。例如:8 MB存储器,页大小常为512 B、块大小为8 kB,块内页面数为16。而2 MB的存储器的页大小为256 B、块大小为4 kB,块内页面数也是16。NAND存储器由多个块串行排列组成。实际上,NAN

文档评论(0)

sf197103 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档