对于 DDR4 DIMM 和 SODIMM(支持 ECC),ECC(纠错码)由内存控制器为写入的每个字节计算。每字节一个位作为计算的一部分提供,并存储在与存储其保护的字节不同的设备中。但是,一旦写入数据到达 DRAM,就不会对其进行检查。ECC 实际上仅用于保护 Read 上的数据。读回数据后,内存控制器检查 ECC,如果不正确,则尝试进行某种恢复。该恢复取决于系统,并且未由 JEDEC 规范指定。事实上,ECC 的计算和算法也没有具体说明,许多系统供应商也没有发布他们的 ECC 算法。如果是单个位错误,它将进行更正并将更正后的数据写回 DRAM。单位错误也称为“软错误”。如果它检测到双位错误,则无法进行任何纠正,因为 ECC 算法在数学上受到限制,只能进行单错误检测和纠正,而只能进行双位错误检测。您可能已经看过首字母缩略词 SECDED,这就是它的来源,单错误纠正,双错误检测。你可能已经看到首字母缩略词 SECDED,这就是它的来源,单错误纠正,双错误检测。系统日志文件应显示所有软错误和发生错误的地址。此外,它还应指明所有硬错误以及产生双位错误的读取地址。

数据源自内存控制器,然后通过内存通道,进入 DRAM。如果内存通道受到串扰、电源波动或其它信号完整性问题的影响,则数据到达 DRAM 时可能有问题,而且由于没有在 DRAM 中进行检查,我们不知道它是否正确。

接下来,写入数据被存储在 DRAM 中,并且可能会保留数天。当它位于 DRAM 中时它可能会被损坏(这可能以多种方式发生!)。当它最终被存储控制器读取时,计算 ECC 以查看是否可以检测到单个或双位错误,如果存在多个单或双位错误,则无法检测到。想象一下会对关键应用程序造成破坏的破坏!现在绝大多数时候,数据是好的,但是在出现错误的情况下,任何地方都没有指定错误处理。许多人不明白 JEDEC 规范是 DRAM 规范,而不是系统或内存控制器规范。更复杂的是,内存控制器没有向 DDR4 总线发出信号,表明它已检测到错误。所以我们不能在有问题的读取事务上触发逻辑分析器或范围。

那么我们如何找出将错误归咎于谁呢?由于 DDR4(和之前的 DDR3)架构在及时错误检测和恢复方面很差,我们必须采取务实的方法。我们必须通过查看重载和轻载下的信号完整性来验证信道。我们必须检查内存控制器是否违反协议。这可能是由于 BIOS 错误地设置了时序参数。我们需要查看读取数据的信号完整性,看看DIMM是否有问题。我们需要检查 SPD 以查看内存控制器是否将正确的参数编程到 DRAM 中。我们还需要查看导致系统最常出现故障的应用程序,以查看其是否可以指示“Row Hammer”事件。

DDR 内存 ECC 纠错相关推荐

  1. linux 服务器 报内存 ecc 错误,解决方法:ECC内存检查错误纠正技术

    ECC的全英文名称是Error Checking and Correcting.从这个名字可以看出,它的主要功能是"发现并纠正错误". 像奇偶校验技术一样,ECC纠错技术也需要额外 ...

  2. DDR 内存与 PCB 设计挑战

    手机.笔记本电脑.云计算等对电子性能要求越来越高.除了处理器速度/性能外,内存在整体系统性能中也起着非常关键的作用.双倍数据速率(DDR)内存已成为主要选择,它具有低时延,大存储容量和低功耗. 内存简 ...

  3. XLINX系列之Zynq-7000系列DDR内存控制器详解

    1DDR内存控制器介绍 DDR内存控制器支持DDR2,DDR3,DDR3L和LPDDR2设备,包括三个主要块:AXI存储器端口接口(DDRI),带有交易调度器(DDRC)的核心控制器和具有数字PHY( ...

  4. ddr读时序波形_测试新体验|如何解决DDR内存系统测试难题?

    DDR应用现状 随着近十年以来智能手机.智能电视.AI技术的风起云涌,人们对容量更高.速度更快.能耗更低.物理尺寸更小的嵌入式和计算机存储器的需求不断提高,DDR SDRAM也不断地响应市场的需求和技 ...

  5. 服务器内存会显示ecc么,服务器内存ecc

    服务器内存ecc 内容精选 换一换 设备实时状态查询是检测设备在运行过程中的状态信息.用户可任选以下指令之一查看设备实时状态查询命令的可用参数.ascend-dmi -i -hascend-dmi - ...

  6. ZYNQ图像处理|静态图像通路|VDMA寄存器、DDR内存操作

    "关于"Lena美女图像 在图像处理.计算机视觉领域,Lena数字图像被大多数的键盘侠广泛使用,Lena可以说是一张司空见惯的标准图. 国外某期刊的主编,曾经说明过以下原因:1.L ...

  7. 前端总线频率(FSB)及DDR内存频率详解,彻底让你明白CPU总线带宽与内存带宽......

    外频 外频是由主板为CPU提供的基准时钟频率,一般常见的有100.133.166.200.我们说的FSB(FrontSystemBus)指的是系统前端总线,它是处理器与主板北桥芯片或内存控制集线器之间 ...

  8. 前端总线频率(FSB)及DDR内存频率详解,彻底让你明白CPU总线带宽与内存带宽...

    外频 外频是由主板为CPU提供的基准时钟频率,一般常见的有100.133.166.200.我们说的FSB(Front System Bus)指的是系统前端总线,它是处理器与主板北桥芯片或内存控制集线器 ...

  9. 前端总线频率(FSB)及DDR内存频率详解,彻底让你明白CPU总线带宽与内存带宽匹配问题!

    外频 外频是由主板为CPU提供的基准时钟频率,一般常见的有100.133.166.200.我们说的FSB(Front System Bus)指的是系统前端总线,它是处理器与主板北桥芯片或内存控制集线器 ...

最新文章

  1. python 类实例化理解
  2. mysql获取服务器的剩余空间_mysql服务器内存耗尽,并占用大量swap
  3. 【小白学习C++ 教程】十三、C++命名空间namespace
  4. html语言怎么那么难用,css语言难学吗?
  5. scala学习---2
  6. 如何去掉 从网页上copy到word文档中之后 的背景颜色 (备忘)
  7. 半年内使用两次借呗就没法申请房贷?
  8. java实现poi导入excel_Java POI实现将导入Excel文件的示例代码
  9. IE6下的text-indent属性BUG解决方法
  10. K8S+KubeSphere之Helm安装
  11. mysql 长轮询_基于HTTP长轮询实现简单推送
  12. 【MySQL】MySQL 执行 PROCEDURE ANALYSE 报错 ERROR 1064 (42000)
  13. iOS开发之runtime(16):设置/获取section数据详解
  14. php mysql 容器_docker下搭建MySQL+php-fpm+nginx容器环境
  15. openv Mat 之 forEach 操作
  16. 【halcon】菜鸡入门,白纸黑点
  17. Blob转换二进制流下载文件
  18. github官网进不去解决方案
  19. latex中表格、图片的排版
  20. arXiv论文提交流程

热门文章

  1. 6.18科技新闻(2)
  2. Oracle创建多个(大量)属性表,建表语句如下,案例是创建509个属性的表
  3. phpstorm学习
  4. 耶鲁大学Michel H. Devoret教授荣获2021年“墨子量子奖”
  5. SAP移动平均价格与标准价格
  6. 一次kong概念验证之旅
  7. harmonyos下载安装,harmonyos系统下载_harmonyos系统安装 v2.0_零度软件园
  8. styled 手撸Switch开关
  9. 魔兽世界怀旧服聊天服务器中断,魔兽世界怀旧服世界服务器无法连接
  10. 帧结构和物理资源(RB,PRB,VRB,REG,RBG)