NandFlash存储管理在DSP系统中的实现(精)_第1页
NandFlash存储管理在DSP系统中的实现(精)_第2页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Nand+Flash 存储管理在 DSP 系统中的实现NandFlash 作为一种安全、快速的存储体,因其具有体积小、容量大、成本 低、掉电数据不丢失等一系列优点,已逐步取代其它半导体存储元件,成为嵌 入式系统中数据存储的主要载体。尽管 NandFlash 的每个单元块相互独立,且 每块一般可擦除次数高达 10100 万次,但是随着擦写次数增加,会有一些单 元块逐渐变得不稳定或失效从而形成永久性坏块。因此,要避免频繁地对同一 块进行操作,尽量达到擦写次数均衡;同时,由于擦除操作耗时较多,会 NandFlash 作为一种安全、快速的存储体,因其具有体积小、容量大、成本 低、掉电数 据不丢失等一

2、系列 优点,已逐步取代 其它半导体存储元件,成为嵌 入式系统中数据存储的主 要载体。尽管 Nand Flash 的每个单元块相互独立, 且每块一般可擦除次数高达 10 100 万次, 但是随着擦写次数增加,会有一些 单元块逐渐变得不稳定或失效从而形成永久性坏块。因此, 要避免频繁地对同 一块进行操作,尽量达到擦写次数均衡;同时,由于擦除操作耗时较多,会对系统的实时性造成影响。为此,本文介绍了一种基于磨损均衡思想的 Nand Flash 存储管 理方式,并深入讨论了该方式在 Ti 公司的 DSFTMS320F28 曲的 程序实现。1 器件介绍本文中采用的 Nand Flash 芯片 K9F640

3、8U0(是一块拥有 8M(8,388,608)x8bit 存储空间及 256K(262, 144)x8bit 辅用存储空间的存储芯片,电源电压为1.8V 3.3V。芯片内部按块和 页的方式来组织的,如图 1 所示,共分成 1024 个块,每块包含 16 个页,每页内有 528 个字节。F28x 系列 DSP 是美国 TI 公司 最新推出的C2000 平台上的定点 DSP 芯片。图 1 K9F6408UOC 内部结构示意图F28x 系列芯片具有低成本、低功耗和高效能等特点,特别适用于有大量数据 处理的测控场合。2 Flash 的特点及存储管理的作用由 K9F6408U0C 勺基本结构可以知道,它

4、的基本单位有块、页、字节等。NandFlash 芯片具有如下特点:Flash 写:通过写命令将每个字节存储单元中的 1 变为 0;写操作不能把 0 变为1。Flash 擦除:擦除命令是 Flash 中存储单元 0 变为 1 的唯一途径,一旦对某一 块中的某一位写 0,要再改变成 1,则必须执行擦除命令。通常,对于容量较小的 Flash 块的操作过程是:先把整个块的数据读到 RAM 中,在RAM 中修改数据内容,再擦除整个块,最后写入修改后的数据。显然, 这样频繁复杂的读-擦除-写操作,对于 Flash 的使用寿命以及系统性能是很不 利的,而且微处理器中通常 RAMfc 小有限。因此在硬件条件苛

5、刻的嵌入式系统中就迫切需要一种合理的存储管理方式以便有效地均衡Flash 各个存储块的擦写次数,提高 Flash 的使用寿命,从而提高数据存储的安全性。3 存储管理系统的设计 3.1 建立坏块管理表Nand Flash 由于生产工艺的问题,不可避免的会存在一些坏块,这些坏块在芯 片出厂前 都已被标识好。根据 Na nd Flash 数据手册中的介绍,在每一块的第 一页与第二页的 Spare area 的第六个字节(也就是该页的第 517 字节)即是 出厂时的坏块标识位,如果某块的该两页的第 517 字节内容不同时为 0 xFF,则代表该块为厂家标识坏块。这种坏块的检测必须在对芯片进行擦除前进行

6、,因为厂家坏块有可能也能够被进行擦除操作,如使用这种块将对数据安全留下一定的隐患。Nand Flash 在出厂前会保证每块芯片的第一块与第二块是完好的,所以在本文 的设计中,采用的方式是将坏块管理表存放在第一块的第一页的前128 个字节中,每个字节的一位代表芯片的一块,如该位为1 刚表明该块是好的,为 0 则表示对应块为坏块。坏块管理表的建立是必需的,而且最好是在芯片进行其它 擦写操作前进行。3.2 Flash 存储空间管理在本文设计的 Flash 空间管理中,Flash 的存储块被分为空闲块(Free,即空 白没写数据 的好块),有效块(Valid,即存有有效数据的块,不能被擦 除),无效块(Invalid,即数 据已无效或是写入错误块,可被擦除),保留 块(Reserve,用于替换新产生的坏块),其它的则为坏块,所有存储块的管理 均采用单向链表方式进行管理。在大部分的 Flash 存储空间管理系统中可能并不存在保留块,在本系统中增加 保留块的作用主要是,当部分存储块因为反复擦写成为新的坏块时,可以用保 留块取而代之成为新的空闲块,从而使得留给用户的可用存储块总数在一定时期内是一定的,这样做的优点是可以增强数据的安全性,延长整个 Flash 的使 用周期,缺点是用户可用的存储空间相对减少,不过在 Flash 芯片技术迅速发 展的今

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论