关闭
关闭
首页 > 嵌入式硬件 > 嵌入式处理器

Nand-Flash/eMMC(带有Flash控制器的Nand-Flash)作为一种非线性宏单元模式存储器,为固态大容量存储的实现提供了廉价有效的解决方案。Nand-Flash存储器具有容量大,改写速度快等优点,适用于大量数据的存储,因而越来越广泛地应用在如嵌入式产品、智能手机、云端存储资料库等业界各领域。

本文引用地址: http://embed.21ic.com/hardware/processor/201712/49952.html

 

图1 Nand-Flash与eMMC芯片

1.1 存储器件使用寿命

使用了Nand-Flash的主板出现丢数据掉程序现象,是一个让无数工程师毛骨悚然的事故。眼看着程序用着用着就消失了,只能干着急也无法下手。有经验的工程师手起刀落换上一颗新物料,熬夜补代码继续撑过半个项目周期。回头无处发泄还要大刀阔斧换厂商、换品牌。与其换几片Nand-Flash还能负担得起,但毕竟这是一个无底洞,不如去深入探明问题原因,不然散尽家财也无法弥补亏空。

器件数据手册中通常描述Nand-Flash的块擦写寿命达10万次,EMMC的块擦写最高也会有1万次;同理,EEPROM、SD卡、CF卡、U盘、Flash硬盘等存储介质在都存在写寿命的问题。在文件系统向写数据的底层存储器块写数据时,常规会先将块里的数据读出来,擦除块干净后,将需要写入的数据和之前读出来的块数据一起在回写到存储器里面去,如果文件系统写平衡没有处理好,特别是要求1分钟以内要记录一次数据这样频繁的擦写块操作,就有可能将Nand-Flash或EMMC的块写坏。

1.2 存储器件掉电丢数据

文件系统向存储器写数据时,常规是先将块里的数据读出来,擦除块干净后,将需要写入的数据和之前读出来的块数据一起在回写到存储器里面去。如果设备在擦除块过程中或者在回写数据过程中意外发生断电甚至电压不稳定,均会造出数据丢失或者损坏。如果丢失的数据是文件系统的FAT表,则会造成文件系统崩溃。这就是引起系统程序无法启动灾难性后果的原因。

1.3 系统数据保护方案

很多时候,产品在未出厂前烧录程序、反复测试,无论怎样折腾也不会出现丢程序的情况。这可能的因素是测试设备保证了稳定的运行中电源输出,因此系统运行中正常的Flash保护机制是可靠执行的。

相对于用户实际使用而言,想避免Flash损坏的情况。需要严格遵守产品说明使用,尤其注意避免在Flash擦除或写入过程中人为地突然掉电。这是存储器件用法的一个大忌,即使完好的器件,如此不规范的使用也会大大缩短其寿命。而且不同环境下的电源系统五花八门,在电源不满足功率要求情况下程序对于电源低电量的检测阈值较低,此时强制启动系统或执行写操作更会加剧系统耗电波动,巨大的纹波也会引起CPU对存储的误操作。

解决此问题对于软件方面而言:

调试系统或现场使用时,建议使用软件复位,避免人为频繁的通过断电实现复位操作;有断电必要时,将打印信息添加如“系统加载完成”、“数据保存完毕”等指示说明后操作;

软件采取Flash均衡保存算法,高效地调整更改数据时擦除的Flash区域大小;

可将数据先写入内存或者铁电存储器,然后定期的再将数据搬移到大的存储器里面,减少直接断Nand-Flash、EMMC擦写次数;

在程序中加入或者提高电源电量检测的阈值,程序上保证所有电源系统下的芯片在此阈值上均可以正常工作。

读写过程中仔细对坏块表进行维护更新,避免程序写入坏块。读取数据时对ECC校验,确保读取数据无误。

从硬件角度考虑需要注意:

用法上避免在Flash擦除或写入过程中人为突然掉电;

设计好处理控制核心的电源系统,防止CPU等在启动、运行中,电源系统因瞬时变化引起的纹波等情况;

搭配掉电检测电路,在检测到外部电源掉电的同时,及时迅速关闭文件系统,停止向文件系统内写数据的操作;

添加文件系统电源域UPS电源,乃至整机掉电续航工作电源;

对于使用EEPROM等小容量存储的用户而言,可以考虑使用高可靠性的铁电材料加工制成的铁电非易失性存储器FRAM来替换。FRAM可以像RAM一样快速读写。数据在掉电后可以保存10年,且其读写寿命高达100亿次,比EEPROM和其他非易失性记忆体系统可靠性更高,结构更简单,功耗低等优点。

 

图2 铁电材料非易失性存储器

下面简介一款基于法拉电容的UPS电路设计思路,要点如下:

由于电容存在个体差异,电容存储电荷的速率不一样,存在过充造成电压超过耐压值的问题,电路中存在多颗法拉电容时需要做均压处理;

为保证电容能够充满电能,源端需采用恒流源充电;

为维持电容电压稳定,并降低充电电路功耗,需增加过压检测电路;

若对电压高于法拉电容本身电压上限的电源系统提供掉电续航时,Vcc_backu端需通过BOOST升压电路后以实现,且注意系统正常时(充电过程中)关断EN脚。

 

图3 基于法拉电容的UPS核心电路

系统电源正常时,充电电路即给UPS充电。系统电源掉电时,UPS放电给系统提供备用电能,建议UPS在掉电后能持续给文件系统供电能力不低于10秒,在10秒续航期间内,系统可以将电源异常状态上报、及时保持临时重要数据、关闭文件系统,保证系统稳定性,避免文件系统在掉电情况下出现损害,影响应用程序的正常启动。

 

图4 建议UPS充放电时序

此外系统掉电情况需要掉电检测电路实现。使用一颗比较器器件即可,注意使用Output_VCC端供电,以确保外部掉电时,比较器仍然可以工作。比较器负端连接一个参考电压,参考电压由稳压二极管提供。正常供电时,比较器输出电压由升压电路的反馈端分压决定;掉电时,比较器输出低电平,此时处理器仍未掉电,收到状态信息可及时响应处理。另一路掉电检测可供其它功能使用。

换一批

延伸阅读

[新鲜事] 印度发生史上最大数据外泄 1亿用户遭殃

印度发生史上最大数据外泄 1亿用户遭殃

据外媒报道,印度运营商Reliance Jio近期遭遇用户数据外泄事件,超过1亿用户的个人资料被泄露在了网站Magicapk.com上,此次事件也成了印度运营商史上最大的用户数据外泄事件。Reliance Jio称它们已经开始着手对该事件进......

关键字:印度 Reliance Jio 数据外泄
条评论

我 要 评 论

网友评论

大家都爱看

  • 扇出型晶圆级封装的优势和挑战!

    我们有能力创造一些能保持前代性能并且更好更小的电子设备,例如今天的可穿戴设备、智能手机或平板电脑,这是由于很多因素超过摩尔定律而快速发展,从而能够从底层的嵌入组件发展到今天把它们封…

    2018-03-29
  • Xilinx推出革命性的新型自适应计算产品

    自适应和智能计算的全球领先企业赛灵思公司(Xilinx, Inc.,(NASDAQ:XLNX)),近日宣布推出一款超越FPGA功能的突破性新型产品,名为ACAP(Adaptive Compute Acceleration Platform,自适应计算加速…

    2018-03-20
  • 赛普拉斯为树莓派3 B+ IoT单板计算机提供强大稳定的无

    先进嵌入式系统解决方案的领导者赛普拉斯(纳斯达克代码:CY)近日宣布其Wi-Fi®和蓝牙®combo解决方案为全新的树莓派 3 B+(Raspberry Pi 3Model B+)IoT单板计算机提供强大稳定的无线连接…

    2018-03-20
  • 观看直播领红包,SEED-A10加速卡助力人工智能

    随着云服务器、云计算的发展,大家对硬件加速的需求越来越多,但是随着设备功耗的上升、性能需求越来越高,常规加速设备以及开始不能满足需求,因此FPGA逐渐在硬件加速中找到了自己的位置,而艾…

    2018-03-19
  • 特朗普:博通不得以任何形式收购高通

    白宫周一(3月12日)晚发出声明,川普(特朗普)总统出于“国家安全”考量、禁止新加坡博通公司(Broadcom)收购美国高通公司(Qualcomm)。

    2018-03-14