网站大量收购独家精品文档,联系QQ:2885784924

大容量NANDFLASH在ARM嵌入式系统中的设计与实现.PDF

大容量NANDFLASH在ARM嵌入式系统中的设计与实现.PDF

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大容量NANDFLASH在ARM嵌入式系统中的设计与实现

大容量 NAND FLASH 在 ARM 嵌入式系统中的设计与实现 1 引 言 随着嵌人式系统在数码相机、数字摄像机、移动电话、mp3音乐播放器等移动设备中越来越广泛的 应用,FLASH存储器已经逐步取代其他半导体存储元件,成为嵌入式系统中主要数据和程序载体。 FLASH存储器又称闪存,是一种可在线多次擦除的非易失性存储器,即掉电后数据不会丢失。FLASH 存储器还具有体积小、功耗低、抗振性强等优点,是嵌入式系统的首选存储设备。 NAND和NOR FLASH是现在市场上两种主要的非易失闪存芯片,这两种类型的FLASH区别在于: NOR类型FLASH可以按照字节访问,所以存放在FLASH里的程序可以直接执行,而NAND类型 FLASH 是串行访问的,需要先把程序读取到内存然后再从内存中运行。与NOR型相比,NAND型闪存的优点是容量 大,但是NAND 型的速度比较慢,因为他的I/O端口只有8(或16)个,要完成地址和数据的传输就必需让这 些信号轮流传送。NAND型FLASH具有极高的单元密度,容量可以比较大,价格相对便宜。本文采用Samsu ng公司的NAND 型FLASH存储设备K9F2808U0C。 2 系统硬件结构及接口电路 2.1 ARM芯片介绍 ARM公司自1990年正式成立以来,在32位RISC(Reduced Instruction Set Computer)CPU开发领 域不断取得突破,目前已经占有75%以上的32位RISC 嵌入式产品市场。在低功耗、低成本的嵌人式应用 领域确立了市场领导地位。 PHILIPS公司的LPC2210是基于一个支持实时仿真和跟踪的32位ARM7TDMI-STMCPU的微控制器,片 内128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟频率下运行。LPC2210极低的功 耗、多个32位定时器、8路10位ADC以及9 个外部中断使其特别适用于工业控制、医疗系统、访问控制 和POS机。由于内置了宽范围的串行通信接口,他们也非常适合于通信网关、协议转换器、嵌入式软MODE M以及其他各种类型的 应用。 2.2 K9F2808U0C 芯片的结构和特点 K9F2808U0C是Samsung 公司生产的NAND型FLASH存储器,其功能框图如图1所示。 K9F2808U0C存储容量为132 Mb,其中主数据区为128 Mb,辅助数据区为4 Mb,工作电压为2.7~3. 6 V,I/O端口宽度为8 b。片内写控制自动实现编程和擦除所有功能,包括内部校验、脉冲的周期和数据冗 余。 芯片的存储空间是按照块和页的概念来组织的,一个芯片分为1 024个块,每个块有32页,每一页 有528 B。528 B中分为512 B 的数据区和16 个字节的空闲区,空闲区用于存放ECC代码、坏块信息和文 件系统相关代码。一个528 B的数据寄存器作为数据缓冲单元,用来实现I/0缓冲和存储器之间的数据传 输。芯片的存储阵列组织如图2所示。 使用NAND型FLASH的关键技术之一是存储空间的管理。Samsung公司的NAND FLASH存储器有一些 初始无效块(包含一个或多个坏位的存储块),制造商不保证这些块的可靠性。NAND FLASH容许成品中有坏 块存在,这是采用NAND技术所特有的现象。坏块的存在并不影响有效块的性能。但是,系统级的设计必须 能够用地址映射把这些坏块屏蔽掉。芯片在出厂时,除保存坏块信息的区域外,其他部分一律被擦除(值为 0xFF),对坏块的读操作是允许的,但不推荐进行写和擦除操作,以免由于结构方面的原因使邻近的块也失 效。系统设计时必须根据初始的坏块信息识别出坏块,并建立坏块列表。进行写或擦除操作时将欲操作块 的地址与坏块地址表的地址相比较,若是坏块则应跳过。为了提高存储空间的效率,单个位数据错误引起 的读写失败都可以用ECC(校错和纠错)方法处理。 芯片在使用过程中,可能有新坏块的产生,为了系统的可靠性,必须对此情况加以考虑。在数据写 入或块擦除操作后,如果

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档