我正在寻找固件解决方案,在我正在使用的产品中,预计它可以工作至少15年,因此硬件中有外部RAM扩展的范围,现在我需要开发一个固件工程师可以检测RAM大小的引导加载程序固件及其供应商然后相应地配置SOC,任何人都可以帮助找到通过固件检测RAM大小和供应商的最佳方法,我使用SOC与ARM Cortex-A8核心。这里相同的引导加载程序应该能够在具有不同RAM类型的任何板上运行。如果固件不可能,那么还有其他方法吗?
答案 0 :(得分:0)
一般来说,你无法检测出一个标牌内存芯片的尺寸和供应商。您可以连续确定柱塞尺寸。将一些唯一值写入指定的地址并将其读回。只要值相等,ram芯片就很可能处理这个存储区域。
在moderen内存模块中有一个额外的SPD EEPROM,它提供了你要查找的信息。
答案 1 :(得分:0)
根据您的架构,可能有各种选项。如果您的BIOS读取这些信息,您可以从那里获取它。在某些情况下,EEPROM应明确写入电路板组件的详细信息,例如型号,尺寸,供应商详细信息,这些信息可以依次提取。其他选项可以是访问SMBIOS并使用类似于dmidecode等工具使用的逻辑。此外,根据您的体系结构,在某些情况下,可以在SPD中获取可以获取的硬件信息。