1. 方案简介
nand flash有非易失、存储容量大、寿命长等优点;同时具有存在坏块、擦除次数有限、易出现error bit的缺点;并且具有擦除以block(块)为单位,写入以page(页)为单位,读取以sector(512 byte)为单位的特点。
基于上述原因,对nand flash的应用不仅要避免坏块、均衡块擦除次数、纠正error bit,而且需要按照其读写擦的特点进行应用。若没有一套管理软件针对nand的特性,则对其应用将非常困难。
ftl(flash transform layer)是基于nand flash的管理算法软件,可解决上述提出的所有问题,将nand flash模拟成如。
▲ ftl软件架构图
2. 功能描述
ftl(flash transform layer)是基于nand flash的管理算法软件,具有地址映射管理,垃圾回收,坏块管理和磨损均衡等功能。
• 地址映射:上层应用使用逻辑地址来访问,ftl把逻辑地址映射到不同物理地址上,管理着每个逻辑地址最新的数据存放的物理位置。
• 垃圾回收:随着数据的写入,闪存设备上有些块的部分数据已经无效了,需要把有效的数据从块上搬走,然后擦除用来接收新的数据。
• 磨损均衡:因为每个块的p/e次数是有限的,某些块可能被重复使用而损坏了,而有些块数据很少被访问,所以一直没有进行操作过。为了避免这种情况,ftl加入磨损均衡的功能,大致是通过控制垃圾回收和空块池的管理,从而平衡每个块的使用次数。
• 坏块管理:由于flash本身就存在部分坏块,在使用的过程中部分块会变坏,所以ftl在管理的时候需要避开这些无用块,把使用后变得不稳定块上的数据及时拷贝到稳定位置。
bch软件实现error bit错误检查和纠正功能,对于nand flash本身不带ecc “error correcting code”功能的方案中是不可或缺的。bch软件对用户写入flash的数据进行编码,当用户读取写入flash的数据时,按照编码规则对数据进行解码,当发现error bit时,对error bit进行纠正,保证数据可靠性。
3. 主要特性
相对于目前存在的nand flash管理软件方案,ftl具有读写速度快、内存消耗小、擦除块磨损均衡好的特点。
a) ftl方案在相同平台下(gd32f450+spi2g颗粒)与yaffs嵌入式文件系统分别做性能测试,测试结果如下:
b) ftl方案在相同平台下(gd32f450+spi2g颗粒)与yaffs嵌入式文件系统分别做内存消耗统计,统计结果如下:
c) ftl方案在相同平台下(gd32f450+spi2g颗粒)与yaffs嵌入式文件系统分别做磨损均衡测试,统计结果如下:(注:block 1023为坏块)
4. 开发资料
推荐用于功能评估的开发板型号为gd32450i-eval和gd32303e-eval,支持spi/exmc两种接口nand flash。
我们可提供评估套件、用户指南、硬件原理图、软件代码等整套的开发资料,请联系您当地的gigadevice销售办事处或gd32授权代理商获取。
5. 典型应用
对于一些要求存储容量较高的使用场景,ftl使用尤为突出。如图片、音频、视频的保存、重要信息的保存等。
工业领域,如电表、水表信息的存储;汽车电子领域,如设备运行状态信息存储;消费电子领域,如摄像监控视频、图片存储。
2019年高院校首次开设虚拟现实应用专业
BMS中的分流器是什么(上)
赣锋锂业的锂盐产能扩大到什么程度呢?
7000亿、5G,理解华为事件的两把秘钥
如何有效地比较CMOS开关与固态继电器的性能
GD32 FATFS+FTL Nand解决方案
讴歌MDX7座SUV动力6.7s破百,内饰非常有大将之风,起售价高达70万,您觉得怎么样?
VR技术在工业领域的四个特点
激光那些事:到底什么才是激光电视?
中国电科MEMS传感器产业创新基地揭牌
泰克示波器故障频发怎么办?泰克示波器维修售后
智慧路灯是什么,关于智慧路灯概念和定义的介绍
CAN总线如何规范的布线?
无人机在应急救援领域有什么作用?
高斯滤波器的原理及其实现过程
传谷歌拟推出互联网电视服务 正洽谈内容许可协议
基于IR2127的电机驱动芯片
单片机中断与CPU的轮询有什么区别
铅酸蓄电池工作原理及氢气泄露检测
干货分享|3步走从AI闭环走向质量闭环,实现真正"0" 缺陷管控