344|0

7249

帖子

192

TA的资源

五彩晶圆(高级)

楼主
 

【STM32H7S78-DK测评】第4篇 FLASH ECC学习 [复制链接]

   ECC(ErrorCorrect-ionCode)校验是一种内存纠错原理,它是现在比较先进的内存错误检查和更正的手段。ECC内存即纠错内存,简单的说,其具有发现错误,纠正错误的功能。首个 ECC 由数学家 Richard Hamming 发明。第一个 Hamming 码使用 7 位存储 4 位信息,冗余位用于纠正和检测错误。

“不同于NOR Flash内部结构,NAND Flash存储单元(cell)是串行组织的,当读取一个单元的时候,读出放大器(sense amplifier)所检测到信号强度会被这种串行存储结构削弱,这也难免降低了所读信号的准确性。因此如何保证NAND Flash数据的可靠性成了一个问题。ECC作为一种解决手段,被广泛使用”

 

 

为什么现在高端一些的或者汽车MCU都开始带FLASH ECC呢?

在 Flash 存储器中,数据会随时间衰减,尤其是在高温下。存储温度会对 Flash 存储器数据产生影响,但循环(编程)温度的影响更大。 Flash 存储器只能对每个存储字进行一定量的重写,这就需要在数据存储的情况下实现平均抹写存储区块。这两种类型的故障(一位错误和两位错误)均不可避免,但正确使用 ECC 可以防止数据丢失。而且随着芯片的制造工艺水平越高,带电粒子产生的位翻转就越多,此时的ECC是必须要有的,一般可以纠正1-2个bit

 

来看下H7的FLASH ECC介绍吧

 

 

 

 

 

 

 

 

 

使能一下错误中断吧

void HAL_FLASHEx_EnableEccDetectionInterrupt(void)

{

  __HAL_FLASH_ENABLE_IT(FLASH_IT_DBECCERR);

}

进入错误中断后设置标志

 

 

 

进入回调函数

 

 

 

 

此帖出自stm32/stm8论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
有奖直播:当AI遇见仿真,会有什么样的电子行业革新之路?
首场直播:Simcenter AI 赋能电子行业研发创新
直播时间:04月15日14:00-14:50

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网 4

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表