bios的功能不仅仅是填许多填寄存器,也把内存训练的活干了。

那么,内存训练是什么?

内存,就是熟知的ddr3,ddr4等等。

内存训练定义比较深奥,简单来说,就是得到一组对齐、补偿和参考电压参数,来平衡和对冲线路的差异和信号的噪声。

至于内存为什么需要训练,可以看看这篇硬核文章

内存为什么要Training? 内存初始化代码为什么是BIOS中的另类? - 知乎 (zhihu.com)

内存初始化代码一般由芯片厂商提供,Intel管它叫MRC(memory reference code)。

内存训练只有在主板第一次运行bios程序的时候才会运行,训练完后的数据会存在bios里面,在coreboot中存于fmap里面。不动内存条就不用再次内存训练。

如果这个时候把内存条拔下来,会有gpio记录下来,下一次开机重新训练即可。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐