[发明专利]一种物理内存检测方法、装置、设备及可读存储介质在审
申请号: | 201811419036.8 | 申请日: | 2018-11-26 |
公开(公告)号: | CN111221685A | 公开(公告)日: | 2020-06-02 |
发明(设计)人: | 杜宏宇 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F11/22 | 分类号: | G06F11/22 |
代理公司: | 北京元本知识产权代理事务所(普通合伙) 11308 | 代理人: | 金海荣 |
地址: | 广东省深圳市南山区高*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 物理 内存 检测 方法 装置 设备 可读 存储 介质 | ||
本文公开了一种物理内存检测方法、装置、设备及可读存储介质,属于通信技术领域,该方法包括:将内存测试程序从引导程序中拷贝到二级缓存;运行所述内存测试程序,输出物理内存测试结果,所述内存测试结果为测试通过区域或测试不通过区域;当所述测试结果内包括测试通过的区域时,将所述引导程序拷贝到所述测试通过的区域继续运行;当所述物理内存全部损坏时,终止运行并挂起CPU;通过将内存测试程序拷贝到二级缓存中对物理内存进行完整性测试,能够准确定位故障内存颗粒的位置。
技术领域
本文涉及通信技术领域,尤其涉及一种物理内存检测方法、装置、设备及可读存储介质。
背景技术
通常情况下,嵌入式设备启动引导阶段的过程是这样的:设备上电,将引导程序从ROM中拷贝到主用物理内存RAM中,执行引导程序,在引导程序中国初始化CPU/SOC及小系统、测试内存、初始化其他外设,然后进入交互命令行或加载系统镜像进行启动。这里的内存测试程序是为了启动速率快,只选取了很小的一段进行测试,无法知道内存的其他区域是否有问题。
在一般情况下的引导阶段,如果主用物理内存的内存颗粒及相关电路有问题,会导致如下三种情况:
1、加载和运行引导程序的这段主用物理内存及相关电路出问题;这种情况下,引导程序将无法运行,CPU挂死或重启,且调试界面无输出;这种现象下,故障的定位手段较少且定位过程复杂;即使明确了是内存的问题,也无法排除内存的其他区域是否也有问题,常规操作是将所有内存颗粒全部移除并重新焊接。
2、加载和运行引导程序及测试区间的这段内存及相关电路没问题,但是内存的其他区域有问题;这种情况下,内存问题可能在后续的引导系统阶段或系统运行阶段暴露出来,通常这会导致系统的挂死或重启。这种系统挂死或异常重启这类故障,定位过程将是费时费力的。
3、内存测试的这段区间测试失败;这种情况下,可以确定内存有问题,但不清楚测试区间之外的内存是否有问题,需要研发人员采用别的手段继续定位。
发明内容
本文在于提供一种物理内存检测方法、装置、设备及可读存储介质,通过将内存测试程序拷贝到二级缓存中对物理内存进行完整性测试,能够准确定位故障内存颗粒的位置。
本文解决上述技术问题所采用的技术方案如下:
根据本文的一个方面,提供的一种物理内存检测方法,包括:
将内存测试程序从引导程序中拷贝到二级缓存;
运行所述内存测试程序,输出物理内存测试结果,所述内存测试结果为测试通过区域或测试不通过区域;
当所述测试结果内包括测试通过的区域时,将所述引导程序拷贝到所述测试通过的区域继续运行;
当所述物理内存全部损坏时,终止运行并挂起CPU。
可选地,所述运行所述内存测试程序,输出物理内存测试结果之后还包括:
当所述测试结果内包括测试不通过的区域时,输出所述测试不通过的区域的位置。
可选地,所述将内存测试程序从引导程序中拷贝到二级缓存之前还包括:
初始化CPU和内存管理单元MMU,将二级缓存配置为静态随机存取存储器SRAM;使能内存管理单元和一级缓存。
可选地,所述将内存测试程序从引导程序中拷贝到二级缓存之前还包括:
将CPU初始化配置从引导程序中拷贝到二级缓存。
可选地,所述运行所述内存测试程序,输出物理内存测试结果之前还包括:
初始化CPU内存控制器和通用异步收发传输器接口UART。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811419036.8/2.html,转载请声明来源钻瓜专利网。