ackyee 发表于 2014-10-5 21:41:58

关于单片机内部自带eeprom寿命极限情况的讨论

本帖最后由 ackyee 于 2014-10-5 22:56 编辑

eeprom是有寿命限制的,大概10万次,如果系统用片内eeprom来存储一些操作信息若使用的勤快,几年也是可能达到使用寿命极限。 类似stc 写eeprom的过程中会有20多ms级的系统占用,不知道坏掉的时候是什么情况
1. 写的过程 20多ms 之后系统正常运行, 但读出来的数据不正确,随机或者0x00或者0xff
2. 写的过程如上,顺利 。 读的过程 系统崩溃卡住或者等待
3. 写的过程 系统崩溃卡住

想请教下各路大牛们,是否有过类似的极限测试,或者猜想

unifax001 发表于 2014-10-5 22:11:34

医疗就不能用eeprom 考虑铁电存储器

hhxb 发表于 2014-10-5 22:20:21

就楼主这个逻辑分析能力还做医疗设备{:sweat:}

看来要远离国货了

霸气侧漏 发表于 2014-10-5 22:21:46

hhxb 发表于 2014-10-5 22:20
就楼主这个逻辑分析能力还做医疗设备

看来要远离国货了

高级黑,哈哈哈

PIC16F54 发表于 2014-10-5 22:22:33

医疗不差钱,基本都用FRAM,性能指标很牛逼;不用费心思考虑EEPROM了。

ackyee 发表于 2014-10-5 22:48:05

unifax001 发表于 2014-10-5 22:11
医疗就不能用eeprom 考虑铁电存储器

谢谢推荐, 要求高的场合可以试试

ackyee 发表于 2014-10-5 22:49:26

PIC16F54 发表于 2014-10-5 22:22
医疗不差钱,基本都用FRAM,性能指标很牛逼;不用费心思考虑EEPROM了。

FRAM 就是铁电吧,可以试试
不过要是能知道eeprom的极限情况就最好了
毕竟一些小设计还是会使用片内eeprom来作数据的存储

ackyee 发表于 2014-10-5 22:52:16

hhxb 发表于 2014-10-5 22:20
就楼主这个逻辑分析能力还做医疗设备

看来要远离国货了

报着学习的心态来提问的, 与从事的行业无关。谢谢

ackyee 发表于 2014-10-5 22:57:28

yahui123 发表于 2014-10-5 22:53
。。。。。。。。。。。。。。。。。。。。。。

不知有何指教

wjdb3 发表于 2014-10-5 22:59:23

刚刚百度了一下FRAM写入没问题了,但读取次数又有限制了{:sweat:},这个1百亿次一般情况下会不会达到?

babysnail 发表于 2014-10-5 23:41:51

看datasheet ,上面有极限参数,保守使用即可。

wye11083 发表于 2014-10-6 00:01:57

wjdb3 发表于 2014-10-5 22:59
刚刚百度了一下FRAM写入没问题了,但读取次数又有限制了,这个1百亿次一般情况下会不会达到? ...

我记得这个次数是指不能掉电保存的读次数,仍然可以当做RAM来用。

zxd0225 发表于 2014-10-6 06:52:07

记得铁电电压越低读写次数越多

0demon0 发表于 2014-10-6 07:47:15

路过{:3_49:}

MRRIGHT 发表于 2014-10-6 07:54:15

考虑图兔兔

hhxb 发表于 2014-10-6 08:03:31

ackyee 发表于 2014-10-5 22:52
报着学习的心态来提问的, 与从事的行业无关。谢谢


数据对不对要靠CRC校验。
eeprom的写入寿命远小于读取寿命,所以写入后还要读取再校验。

iwqt1983 发表于 2014-10-6 08:07:46

FRAM有读次数限制吗?

dz20062008 发表于 2014-10-6 08:16:11

eeprom不存在读出次数问题,无限制的

jianplx 发表于 2014-10-6 08:23:54

FRAM1百亿次??

unifax001 发表于 2014-10-6 08:43:15

医疗不懂 听朋友说铁路上用的东西 是4个CPU一起算 乃至与4个不同厂家的cpu,4个不同的程序员 4种不同的算法 最后结果一样才能说是对的。

nongsan 发表于 2014-10-6 09:38:37

要求高,用铁电吧,一般的话,减少单个地址写入次数,

Xujuango 发表于 2014-10-6 09:41:50

所有需要存储的数据,在掉电瞬间 写入。
10万次,你算算,一天会掉电多少次,才能在10年里,把10万次用完。何况,也可以采用算法,按片,轮流擦写。寿命又会增加几倍

philip_0620 发表于 2014-10-6 11:00:23

要求高,用铁电

别有洞天下 发表于 2014-10-9 14:10:03

平时用的还真不考虑寿命问题...

jzkn 发表于 2014-10-9 15:20:04

STM32内部flash只有10K次寿命。想想也是醉了。有部分产品直接存内部flash了,估计机器烂了flash也还没写烂吧。。

sdkw 发表于 2014-10-9 15:30:54

如果只是保存配置参数,不是设备定时写数据,设备坏了芯片也不会坏吧

Samzzt 发表于 2014-10-9 15:37:48

没有必要考虑这些东西。

yoghourt 发表于 2014-10-9 16:27:21

不是很频繁的擦写,应该能用很久的吧。太频繁,现在的技术估计也就ram能顶得住

flywhale 发表于 2014-10-9 16:36:03

我觉得写入的算法很重要,有些固态硬盘擦写次数才几千次,全靠写平均算法、数据校验和冗余来解决寿命的问题。
如果需要存储的数据量不大的话,可以先写入,再读出来校验,发现错误换另一块存储空间(可以是FLASH的另一块),这样综合算下来寿命就很长了。
关于EEPROM出错后的情况,不要猜测,也不要自己做实验,直接问厂家,他会给你最正确的答案。

ackyee 发表于 2014-10-29 17:09:23

谢谢各位的回答,以后在环境要求高的场合 会考虑各位推荐的铁电的方案

还有关于单片机片内eeprom情况 本人也做了老化实验
单片机不停的读,写 ,写 读,连续开了3天,终于把eeprom刷爆了

刷爆后 单片机可正常运行,爆掉的地址位偶尔能写成功,读始终能读,不过可能读出来的是错误数据(最后一次成功写入的数据)

ghjstc 发表于 2014-11-4 11:26:07

stcL2K60S2做过这样的实验,同一地址不停地写入再读取,和写入的对比,通过的话下次写入的数值加1,最后是400多万次的时候读取出错了,写坏了两片都是400多万次

i7gly 发表于 2014-11-4 12:13:50

ghjstc 发表于 2014-11-4 11:26
stcL2K60S2做过这样的实验,同一地址不停地写入再读取,和写入的对比,通过的话下次写入的数值加1,最后是4 ...

这成绩也不错了。

dianqi2007013 发表于 2014-11-5 08:46:10

不是很频繁的擦写,应该能用很久的吧。

jiafulu 发表于 2014-11-5 08:54:52

稳定性值得考虑!

gfy200866 发表于 2014-11-5 09:02:12

不是厂家,没都多少人,能有精力来验证极限情况的{:sleepy:}

yanggang2880 发表于 2014-11-5 09:19:57

从来没用坏过。实际次数远远大于标的值

linguimin 发表于 2014-11-7 13:09:47

ackyee 发表于 2014-10-29 17:09
谢谢各位的回答,以后在环境要求高的场合 会考虑各位推荐的铁电的方案

还有关于单片机片内eeprom情况 本人 ...

等写坏一个地方再换的话也有风险啊,毕竟旧的地址在块坏的时候已经不可靠了,比方说电压变动一点就读取错误,就完蛋了。。

我现在用EEPROM基本上都是正反互补冗余读写的,空间多的话就冗余几十份,反正空间不用白不用,而且STC的EEPROM传说也是问题多多,怕出问题。。(也有人说STC爱掉程序,这个就压力山大了)

wingerchen 发表于 2014-11-7 13:26:27

前几天对一片串行FLASH的一个256块反复擦除(整4096擦除)写入,25W次了,还没看到数据不对。
疑惑是不是要完成擦除写入掉电这个过程,才会是真正能看到他10W次寿命?

spacefram 发表于 2014-11-7 13:52:04

还是电池+SRAM封装到一起的IC吧。

redroof 发表于 2014-11-7 14:04:27

wingerchen 发表于 2014-11-7 13:26
前几天对一片串行FLASH的一个256块反复擦除(整4096擦除)写入,25W次了,还没看到数据不对。
疑惑是不是要 ...

是Min 10万还是 Typical 10万 ?
这两种标法实际可差的太远了。
如果是Min 10万次寿命,那么Typical寿命一般是100万
如果Typical 10万 ,那么Min通常只有1万

最小保证寿命一般是典型寿命的1/10,碰运气吧,没准你也能遇到一个比典型寿命大好几倍的。。。
因为这东西的生产分散性很大,又没法测量(只有把它写坏才能测到寿命)。

zljcat3721 发表于 2014-11-7 14:07:37

我大部分程序,只用内部eeprom空间的5%不到,一般是打一枪换一个地方,另外95%的地址轮着用,变相增加寿命

proc 发表于 2014-11-7 14:27:27

这个问题值得关注

wangyu_2011 发表于 2014-11-8 01:11:54

一般是说最小值。

xiaobendan 发表于 2014-11-8 08:21:29

本帖最后由 xiaobendan 于 2014-11-8 08:52 编辑

几年前对STC的10万次做过实验,只测试了一片,没有普遍性,结果是20万次依然坚挺,写入和读出的,完全是一样的
但是实际使用中,几乎无法统计次数(小于1000次)1000片中会有一片左右在1-2年左右时间里出现错误的数据,读出来是错误的,重新再读还是错误的,似乎是写入的问题,但是每次写入都是一串数据一起进行的,唯独某个数据会错。目前还无法判断是程序的问题还是硬件问题。总之概率很小,对于不常用数据没有校验的。常用的关键数据是有校验的,所以没出过错。

wt3333 发表于 2014-11-8 08:27:00

没做过极限测试,遇到过flash读错误
页: [1]
查看完整版本: 关于单片机内部自带eeprom寿命极限情况的讨论