内存测试方法、装置及存储介质与流程

文档序号:29451364发布日期:2022-03-30 11:56阅读:164来源:国知局
内存测试方法、装置及存储介质与流程

1.本技术实施例涉及存储技术领域,特别涉及一种内存测试方法、装置及存储介质。


背景技术:

2.随着内存的工艺制程缩小、工作频率提高、容量增大,内存的可靠性问题越来越突出。为了降低由于内存缺陷所导致的设备故障率,在生产环节加强内存测试,以对故障内存进行拦截是非常有必要的。
3.当前,主要是通过中央处理器(central processing unit,cpu)将固定的数据写入内存,之后再对写入数据进行读取,将写入的数据和读取的数据进行比较,以此来测试内存是否出现错误。其中,cpu包括多个处理核,为每个处理核分配一部分虚拟内存地址。各个处理核依次经过多级缓存来访问为其分配的虚拟内存地址,从而实现对相应内存的数据写入和读取。由于处理核要经过多级缓存才能访问内存,访问路径较长,从而导致单位时间对内存总线的占用率较低,内存访问效率低下。在此基础上,当内存容量倍增时,内存测试的时间也将延长,这将导致测试成本增加。


技术实现要素:

4.本技术实施例提供了一种内存测试方法、装置及存储介质,能够提高内存测试效率,降低内存测试成本。所述技术方案如下:
5.第一方面,提供了一种内存测试方法,所述方法包括:在参考模式下,获取内存测试参数的多个参数值,所述参考模式是指允许根据内存的物理地址访问所述内存的模式,所述内存测试参数是指影响所述内存的可靠性的参数;根据所述内存测试参数的多个参数值中的每个参数值,对所述内存进行测试,得到所述内存测试参数下各个参数值对应的测试结果;根据所述内存测试参数下各个参数值对应的测试结果,确定所述内存的测试结果。
6.在本技术实施例中,参考模式是指允许根据内存的物理地址直接访问内存的模式。基于此,在参考模式下对内存进行测试时,能够直接通过内存的物理地址访问内存,而无需经过多级缓存。这样,访问内存的路径变短,单位时间内对内存总线的占用率提高,内存访问效率提高且访问压力增大,从而提高了内存的测试效率,缩短了测试时间,降低了测试成本。
7.另外,内存测试参数可以为一种,也可以为多种,当内存测试参数为多种时,对于每种内存测试参数,均根据相应内存测试参数的多个参数值对内存进行测试,进而根据各种内存测试参数下各个参数值对应的测试结果,来确定内存的测试结果。
8.在一种实现方式中,所述内存包括多个存储单元,每个存储单元包括多个存储体,所述内存测试参数包括影响所述存储体的数据保持能力的参数和测试所述存储体的传输路径接触阻抗的参数中的至少一种。
9.内存的故障问题主要存在两种,分别为存储体漏电导致的数据保持能力不足的问题和传输路径接触阻抗变大导致的晶体管无法及时通断的问题。基于此,本技术实施例中
的内存测试参数包括影响存储体的数据保持能力的参数和测试存储体的传输路径接触阻抗的参数,以此来评估内存的可靠性。
10.在一种实现方式中,所述参考模式为内存内建自测试(memory built-in self-test,mbist)模式,所述影响所述存储体的数据保持能力的参数包括自刷新周期,所述自刷新周期是指对所述存储体的电容充电的时间间隔。
11.由于每个电容的特性参数存在差异,因此,电容的漏电程度也不同,而对电容进行充电的时间间隔的长短决定了电容在该时间间隔内是否能保持数据不出错,由此可见,对电容进行充电的时间间隔是影响存储体的数据保持能力的参数。
12.在一种实现方式中,所述参考模式为mbist模式,所述测试所述存储体的传输路径接触阻抗的参数包括写恢复时间,所述写恢复时间是指在所述存储体中写入数据的时长。
13.其中,传输路径接触阻抗是指由晶体管和电容所组成的充放电通路上的传输路径接触阻抗。该传输路径接触阻抗越大,写入数据所需的时长相应的就越长。换句话说,在存储体中写入数据实际所需的时长能够表征存储体的充放电通路上的传输路径接触阻抗的情况。基于此,在本技术实施例中,可以通过设置不同的写入数据的时长来测试存储体的充放电通路上的传输路径接触阻抗的情况。
14.在一种实现方式中,参考模式为测试(test)模式,在该种模式下,影响存储体的数据保持能力的参数和测试传输路径接触阻抗的参数均为内存的内部时序参数和/或电压参数。
15.在一种实现方式中,所述根据内存测试参数的多个参数值中的每个参数值,对所述内存进行测试,得到内存测试参数下各个参数值对应的测试结果的实现过程为:在内存测试参数的第一参数值下,按照所述内存的物理地址首尾交替的顺序,在各个物理地址所对应的存储单元中进行数据写入和数据读取,其中,物理地址相邻的存储单元中写入的数据不同,所述第一参数值为所述内存测试参数的多个参数值中的任一参数值;如果在任一存储单元中读取的数据和写入的数据不同,则确定所述内存在所述内存测试参数的第一参数值下的测试结果为测试未通过;如果在每个存储单元中读取的数据和写入的数据均相同,则确定所述内存在所述内存测试参数的第一参数值下的测试结果为测试通过。
16.在本技术实施例中,按照内存的物理地址首尾交替的顺序,在各个物理地址所对应的存储单元中进行数据写入和数据读取,这样,相较于顺序访问物理地址,增加了地址线的访问压力,解决了测试压力不足的问题。另外,在物理地址相邻的存储单元中写入不同的数据,有利于将由于干扰问题所导致的数据出错的存储单元筛选出来。
17.在一种实现方式中,所述根据所述内存测试参数下各个参数值对应的测试结果,确定所述内存的测试结果的实现过程包括:获取目标质量等级对应的每种内存测试参数的参考阈值;如果所述内存在所述目标质量等级对应的每种内存测试参数的参考阈值下的测试结果均为测试通过,则确定所述内存的测试结果为符合所述目标质量等级。
18.在本技术实施例中,通过寻找内存测试参数与直通率的曲线图中的拐点来确定不同的质量等级所对应的内存测试参数的参考阈值,进而以此来实现内存的快速质量分级,如此,能够快速高效的满足不同客户群体的质量述求。
19.第二方面,提供了一种内存测试装置,所述内存测试装置具有实现上述第一方面中内存测试方法行为的功能。所述内存测试装置包括至少一个模块,该至少一个模块用于
实现上述第一方面所提供的内存测试方法。
20.第三方面,提供了一种内存测试装置,所述内存测试装置的结构中包括处理器和存储器,所述存储器用于存储支持内存测试装置执行上述第一方面所提供的内存测试方法的程序,以及存储用于实现上述第一方面所提供的内存测试方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
21.第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的内存测试方法。
22.第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的内存测试方法。
23.上述第二方面、第三方面、第四方面和第五方面所获得的技术效果与第一方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
24.本技术实施例提供的技术方案带来的有益效果至少包括:
25.在本技术实施例中,参考模式是指允许根据内存的物理地址直接访问内存的模式。基于此,在参考模式下对内存进行测试时,能够直接通过内存的物理地址访问内存,而无需经过多级缓存。这样,访问内存的路径变短,单位时间内对内存总线的占用率提高,内存访问效率提高且访问压力增大,从而提高了内存的测试效率,缩短了测试时间,降低了测试成本。
附图说明
26.图1是本技术实施例提供的一种测试设备的结构示意图;
27.图2是本技术实施例提供的一种内存测试方法流程图;
28.图3是本技术实施例提供的一种按照自刷新周期对内存的存储单元进行充电的示意图;
29.图4是本技术实施例提供的一种按照物理地址首尾交替顺序对各个存储单元进行访问的示意图;
30.图5是本技术实施例提供的一种参数值和内存直通率的曲线关系图;
31.图6是本技术实施例提供的一种内存测试装置的结构示意图。
具体实施方式
32.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
33.在对本技术实施例进行详细的解释说明之前,先对本技术实施例涉及的应用场景予以介绍。
34.随着内存的工艺制程缩小、工作频率提高、容量增大,内存的可靠性问题越来越突出。目前,内存普遍采用动态随机存取存储器(dynamic random access memory,dram)技术。在这种情况下,内存包括多个存储单元,每个存储单元包括多个存储体。一个存储体由一个晶体管和一个电容组成。其中,电容不可避免存在漏电现象,且相邻的存储单元由于互相干扰可能会引起晶体管误通断,这些问题均会导致存储单元存储的数据出错。而随着内
存的工艺制程的缩小,上述的电容漏电问题、存储单元互相干扰的问题被进一步的放大。基于此,在生产环节加强内存测试,以对故障内存进行拦截,能够有效降低由于内存缺陷所导致的现网设备的故障率。本技术实施例提供的内存测试方法即用于在生产环节中对内存进行测试,以便对可能由上述原因所导致的故障内存进行拦截,从而降低现网设备的故障率。
35.图1是本技术实施例提供的一种测试设备的结构示意图。如图1所示,该测试设备包括一个或多个处理器101、通信总线102、存储器103以及一个或多个通信接口104。
36.处理器101可以是一个通用中央处理器(central processing unit,cpu)、网络处理器(network processor,np)、微处理器、或者可以是一个或多个用于实现本技术方案的集成电路,例如,专用集成电路(application-specific integrated circuit,asic)、可编程逻辑器件(programmable logic device,pld)或其组合。上述pld可以是复杂可编程逻辑器件(complex programmable logic device,cpld)、现场可编程逻辑门阵列(field-programmable gate array,fpga)、通用阵列逻辑(generic array logic,gal)或其任意组合。
37.通信总线102用于在上述组件之间传送信息。通信总线102可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
38.存储器103包括只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、电可擦可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、光盘(包括只读光盘(compact disc read-only memory,cd-rom)、压缩光盘、激光盘、数字通用光盘、蓝光光盘等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质中的一个或多个,但不限于此。另外,在本技术实施例中,存储器103还包括待测试的内存,该内存可以为动态随机存取存储器(dynamic random-access memory,dram),例如同步动态随机存取存储器(synchronous dynamic random-access memory,sdram)、双倍速率同步动态随机存取存储器(double data rate synchronous dynamic random-access memory,ddr sdram)、ddr2 sdram、ddr3 sdram、ddr4 sdrm、ddr5 sdram等。存储器103可以是独立存在,并通过通信总线102与处理器101相连接。存储器103也可以和处理器101集成在一起。
39.通信接口104使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接口104包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域网(wireless local area networks,wlan)接口,蜂窝网络通信接口或其组合等。
40.在一些实施例中,网络设备可以包括多个处理器,如图1中所示的处理器101和处理器105。这些处理器中的每一个可以是一个单核处理器,也可以是一个多核处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
41.在具体实现中,作为一种实施例,网络设备还可以包括输出设备106和输入设备107。输出设备106和处理器101通信,可以以多种方式来显示信息。例如,输出设备106可以是液晶显示器(liquid crystal display,lcd)、发光二级管(light emitting diode,led)
显示设备、阴极射线管(cathode ray tube,crt)显示设备或投影仪(projector)等。输入设备107和处理器101通信,可以以多种方式接收用户的输入。例如,输入设备107可以是鼠标、键盘、触摸屏设备或传感设备等。
42.在一些实施例中,存储器103中除待测试内存之外的其他存储介质中存储有执行本技术方案的程序代码108,处理器101可以执行存储器103中存储的程序代码108。该程序代码中可以包括一个或多个软件模块,该测试设备可以通过处理器101以及存储器103中的程序代码108,来实现下文图2实施例提供的内存测试方法。
43.接下来对本技术实施例提供的内存测试方法进行介绍。
44.图2是本技术实施例提供的一种内存测试方法的流程图。该方法应用于图1所示的测试设备中,该测试设备中包括待测试的内存。如图2所示,该方法包括以下步骤:
45.步骤201:在参考模式下,获取内存测试参数的多个参数值,参考模式是指允许根据内存的物理地址访问所述内存的模式,内存测试参数是指影响内存的可靠性的参数。
46.在本技术实施例中,测试设备在运行过程中进入参考模式。其中,该参考模式为内存内建自测试(memory built-in self-test,mbist)模式,或者,该参考模式为测试(test)模式。需要说明的是,在mbist模式或test模式下,测试设备的cpu能够直接根据内存的物理地址访问内存,而不需要通过多级缓存来根据虚拟地址访问内存。在本技术实施例中,待测试的内存是指一个或多个内存条。
47.在一种可能的实现方式中,当参考模式为mbist模式时,也即,当采用mbist模式来进行内存测试时,由于该种模式下无法通过调节内存的内部时序参数和电压参数来影响内存的可靠性,进而对内存进行测试,因此,在本技术实施例中通过调节不同测试环境中的参数来对内存进行测试。换句话说,当采用mbist模式来进行内存测试时,可以分别将待测试的内存置于不同温度的测试环境中来完成测试。基于此,测试设备在进入到mbist模式之后,首先获取当前的环境温度,以此来确定当前测试环境。其中,如果根据当前的环境温度确定当前测试环境为高温测试环境,则测试设备获取内存测试参数在高温测试环境下的多个参数值。如果根据当前的环境温度确定当前所处测试环境为低温测试环境,则测试设备获取内存测试参数在低温测试环境下的多个参数值。
48.需要说明的是,当前的环境温度是指待测试的内存当前所处的环境温度。测试设备可以通过温度传感器来检测该环境温度,该温度传感器可以和待测试的内存相邻。在获取到当前所处的环境温度之后,测试设备将该环境温度分别与第一温度阈值和第二温度阈值进行比较,如果该环境温度大于第一温度阈值,则确定当前测试环境为高温测试环境。如果该环境温度小于第二温度阈值,则确定当前测试环境为低温测试环境。其中,第一温度阈值大于第二温度阈值。示例性地,第一参考阈值为80摄氏度,第二参考阈值为0摄氏度。
49.另外,由前述应用场景中的介绍可知,内存包括多个存储单元,每个存储单元包括多个存储体。基于此,内存测试参数包括影响存储体的数据保持能力的参数和测试所述存储体的传输路径接触阻抗的参数中的至少一种。
50.其中,影响存储体的数据保持能力的参数包括自刷新周期,该自刷新周期是指对存储体的电容充电的时间间隔。需要说明的是,存储体包括一个电容和一个晶体管。其中,电容的状态决定着存储体的逻辑状态是0还是1。当电容的电荷数大于电荷阈值时,代表存储体的逻辑状态为1,当电容的电荷小于电荷阈值时,代表存储体的逻辑状态为0。然而,电
容不可避免的存在漏电的现象,因此,对于存储有数据的存储体,在该存储体中的数据未经历重写的情况下,为了保持该存储体中的数据,也即为了保持该存储体的逻辑状态为1,则需要按照一定的时间间隔对电容进行定期充电。其中,由于每个电容的特性参数存在差异,因此,电容的漏电程度也不同,而对电容进行充电的时间间隔的长短决定了电容在该时间间隔内是否能保持数据不出错,由此可见,对电容进行充电的时间间隔是影响存储体的数据保持能力的参数。
51.另外,测试存储体的传输路径接触阻抗的参数包括写恢复时间,该写恢复时间是指在存储体中写入数据的时长,在本技术实施例中,在存储体中写入数据时,当经过设置的写恢复时间的参数值之后即可以读取写入的数据,以此来测试存储体的传输路径接触阻抗的情况。需要说明的是,当在存储体中写入数据时,要通过选通存储体的晶体管,进而对电容进行充电来实现。而选通晶体管以及对电容充电均需要一定的时长,也即,在存储体中写入数据需要一定的时长。其中,如果由晶体管和电容所组成的充放电通路上的传输路径接触阻抗比较大,则写入数据所需的时长相应的就比较长,如果该充放电通路上的传输路径接触阻抗比较小,则写入数据所需的时长相应的也比较短。换句话说,在存储体中写入数据实际所需的时长能够表征存储体的充放电通路上的传输路径接触阻抗的情况。基于此,在本技术实施例中,可以通过设置不同的写入数据的时长来测试存储体的充放电通路上的传输路径接触阻抗的情况。
52.测试设备在确定当前测试环境之后,首先获取每种内存测试参数在当前测试环境下的初始参数值,之后,根据每种内存测试参数在当前测试环境下的初始参数值和对应的步进值来确定相应内存测试参数剩余的多个参数值。
53.例如,当内存测试参数包括自刷新周期和写恢复时间时,测试设备分别获取当前测试环境下的自刷新周期的初始参数值和写恢复时间的初始值。之后,测试设备根据当前测试环境下的自刷新周期的初始参数值和第一步进值,确定自刷新周期在当前测试环境下的多个参数值。根据当前测试环境下的写恢复时间的初始值和第二步进值,确定写恢复时间在当前测试环境下的多个参数值。其中,第一步进值和第二步进值不相同。
54.其中,测试设备可以将自刷新周期的初始参数值加上第一步进值,得到自刷新周期的第二个参数值。如果自刷新周期的第二个参数值小于第一参考阈值,则将第二个参数值加上第一步进值,得到自刷新周期的第三个参数值,如果第三个参数值还小于第一参考阈值,则将第三个参数值加上第一步进值,得到自刷新周期的第四个参数值,以此类推,直到得到的参数值不小于第一参考阈值为止,将最后一个得到的参数值之前得到的所有参数值和初始参数值作为该自刷新周期的多个参数值。
55.对于写恢复时间的多个参数值,测试设备可以参考获得自刷新周期的多个参数值的方法来获得,本技术实施例在此不再赘述。
56.需要说明的是,在上述实现方式中,测试设备是在根据内存测试参数的参数值对内存测试进行测试之前,一次性获取每种内存测试参数的多个参数值。在一种可能的实现方式,测试设备也可以在内存测试过程中分步获取内存测试参数的多个参数值。也即,测试设备首先获取任一种内存测试参数在当前测试环境下的初始参数值,之后,通过步骤202中介绍的实现方式根据该种内存测试参数的初始参数值对内存进行测试,从而得到该种内存测试参数的初始参数值对应的测试结果。之后,测试设备将该初始参数值加上该种内存测
试参数对应的步进值,得到该种内存测试参数的第二个参数值,然后通过步骤202中介绍的实现方式根据第二个参数值对内存进行测试,从而得到该种内存测试参数的第二个参数值对应的测试结果。如果第二个参数值不小于该种内存测试参数的参考阈值,则将第二个参数值加上步进值,得到第三个参数值,并根据第三个参数值对内存进行测试,得到对应的测试结果。以此类推,直到得到的参数值不小于参考阈值为止,执行步骤203,或者是开始获取另一种内存测试参数的初始参数值,并参考前述方式分步获取另一种内存测试参数的每个参数值和对应的测试结果。
57.可选地,测试设备中存储有预先配置的每种内存测试参数在当前测试环境下的多个参数值,在这种情况下,测试设备在确定当前测试环境之后,直接获取存储的每种内存测试参数在当前测试环境下的多个参数值。
58.可选地,在一些可能的实现方式中,由于在高温测试环境下配合调整自刷新周期的参数值能够激发电容漏电的问题,而在低温测试环境下配合调整写恢复时间有利于测试内存的传输路径接触阻抗的问题。因此,在本技术实施例中,如果测试设备确定当前测试环境为高温测试环境时,则获取自刷新周期的多个参数值,以此来测试高温测试环境下自刷新周期的多个参数值对内存的影响。而如果测试设备确定当前测试环境为低温测试环境时,则获取写恢复时间的多个参数值,以此来确定低温测试环境下写恢复时间的多个参数值对应的测试结果。
59.在另一种可能的实现方式中,当参考模式为test模式时,由于该种模式下能够对内存的内部时序参数和电压参数进行调节,同时配合高温测试环境即可起到内存加速老化的作用,从而将内存的潜在缺陷暴露出来,所以,当采用该种模式时,可以直接将测试设备置于高温测试环境下进行测试。相应地,测试设备获取内存测试参数在高温测试环境下的多个参数值。其中,内存测试参数包括影响存储体的数据保持能力的参数和测试传输路径接触阻抗的参数。但是与mbist模式下不同,影响存储体的数据保持能力的参数和测试传输路径接触阻抗的参数均为内存的内部时序参数和/或电压参数,本技术实施例不对内部时序参数和电压参数的具体种类进行限定。
60.另外,获取每种内存测试参数的多个参数值的实现方式可以参考前述mbist模式下获取每种内存测试参数的多个参数值的实现方式,本技术实施例在此不再赘述。
61.步骤202:根据内存测试参数的多个参数值中的每个参数值,对内存进行测试,得到相应内存测试参数下各个参数值对应的测试结果。
62.由前述步骤201中的介绍可知,内存测试参数可能为一种,也可能为多种,并且,内存测试参数的参数值为多个。基于此,在本步骤中以任一内存测试参数的多个参数值中的一个参数值为例,来对确定该参数值对应的测试结果的实现过程进行说明。其中,为了方便说明,将该内存测试参数称为第一内存测试参数,将该内存测试参数中的一个参数值称为第一参数值。
63.示例性地,测试设备在第一内存测试参数的第一参数值下,按照内存的物理地址首尾交替的顺序,在各个物理地址所对应的存储单元中进行数据写入和数据读取,其中,物理地址相邻的存储单元中写入的数据不同;如果在任一存储单元中读取的数据和写入的数据不同,则确定该内存在第一内存测试参数的第一参数值下的测试结果为测试未通过;如果在每个存储单元中读取的数据和写入的数据均相同,则确定该内存在第一内存测试参数
的第一参数值下的测试结果为测试通过。
64.例如,当第一内存测试参数为自刷新周期时,第一参数值为t1时,测试设备按照t1来对每个存储单元包括的多个存储体中的电容进行定期充电。也即,测试设备每隔t1时长,对每个存储单元包括的多个存储体中的电容进行一次充电。在本技术实施例中,参见图3,内存包括的存储单元可以被划分为n行,每行包括多个存储单元。测试设备按行对存储单元进行充电。示例性地,测试设备首先对第一行中的存储单元进行充电,之后间隔m1对第二行中的存储单元进行充电,以此类推,直至对第n行充电完成之后,间隔m1后再从第一行开始充电。如此,对于每一行的存储单元而言,自刷新周期t1=m1*n。在对存储单元中的电容进行充电的过程中,测试设备的cpu无法对存储单元进行访问。在不对存储单元的电容进行充电时,测试设备能够对存储单元进行访问。对于任一个存储单元,如果在该存储单元充电完成之后立即对该存储单元进行数据读写,则由于该存储单元刚完成充电,所以此时数据出错的概率是最小的。如果在该存储单元充电一次之后即将进行下一次充电之前才对该存储单元进行数据读写,则由于该存储单元已经过了t1没有充电,所以此时数据出错的概率是最大的。如果在该存储单元两次充电之间的其他时刻进行数据读写,数据出错的概率位于上述的最小值和最大值之间。然而,由于测试设备无法精确控制对每个存储单元的数据读写均发生在该存储单元的下一次即将刷新之前,因此,在本技术实施例中,通过改变自刷新周期来改变对存储单元进行数据读写的时刻所处的时长范围的大小,例如,自刷新周期为64ms时,对存储单元进行数据读写的时刻将是从该存储单元刷新完成的a时刻到a+64时刻之间的一个时刻,而如果自刷新周期变为128ms,则对存储单元进行数据读写的时刻将变为a时刻到a+128时刻之间的一个时刻。如此,该时间范围内包括的可能导致数据出错的时刻的数量增多,也即提高了该存储单元的数据出错的概率。由此可见,通过改变自刷新周期可以改变存储单元中数据出错的出错概率,这样,内存中存在的由于电容漏电严重而导致的数据出错的存储单元被检测出来的概率也会不同。
65.基于此,在本技术实施例中,测试设备在按照上述方式对内存中的存储单元进行充电的情况下,按照内存的物理地址首尾交替的顺序,在各个物理地址所对应的存储单元中进行数据写入和数据读取。
66.示例性地,测试设备首先在内存的起始物理地址对应的存储单元中写入数据,之后,在内存的最后一个物理地址对应的存储单元中写入数据,再之后,在第二个物理地址对应的存储单元中写入数据,然后,在倒数第二个物理地址对应的存储单元中写入数据,以此类推,直至在所有存储单元中写入数据为止。之后,测试设备按照上述物理地址首尾交替的顺序依次对各个存储单元进行数据读取。对于每个存储单元,如果从该存储单元中读取的数据与写入的数据不同,则确定该存储单元的测试未通过。如果从各个存储单元中读取的数据与相应存储单元写入的数据均相同,则测试设备按照上述物理地址首尾交替的顺序依次在各个存储单元中第二次写入数据,其中,各个存储单元中第二次写入的数据和第一次写入的数据不同,示例性地,第一次写入的数据为全1,第二次写入的数据为全0。或者,第一次写入的数据为全0,第二次写入的数据为全1。之后,测试设备再按照上述物理地址首尾交替的顺序依次对各个存储单元中的数据进行读取。对于每个存储单元,如果从该存储单元中读取的数据与第二次写入的数据不同,则确定该存储单元的测试未通过。如果从该存储单元中读取的数据与写入的第二数据相同,则确定该存储单元的测试通过。按照内存的物
理地址首尾交替的顺序对各个存储单元进行访问,这样,相较于按照物理地址顺序对各个存储单元访问,能够增大地址线访问压力。
67.图4是本技术实施例示出的一种按照物理地址首尾交替顺序对各个存储单元进行访问的示意图。如图4所示,测试设备首先访问0000000000这一物理地址对应的存储单元,之后访问1111111111这一物理地址对应的存储单元。之后访问0000000001这一物理地址对应的存储单元,再访问1111111110这一物理地址对应的存储单元,如此类推。
68.另外,还需要说明的是,由于相邻的存储单元之间如果存储的数据不同,彼此之间可能会由于干扰导致数据出错。基于此,在本技术实施例中,对于物理地址相邻的存储单元,写入的数据不同。例如,在0000000000中最终写入的数据为全1,则在0000000001中最终写入的数据为全0。如此可以将由于干扰问题所导致的数据出错的存储单元筛选出来。
69.在通过上述方式对每个存储单元进行测试之后,如果该内存中任一存储单元的测试未通过,则确定该内存在自刷新周期的第一参数值下的测试未通过。如果该内存中所有存储单元的测试均通过,则认为该内存在自刷新周期的第一参数值下的测试通过。
70.对于自刷新周期的其他参数值,测试设备均可以参考上述方法来进行测试,从而得到自刷新周期的每个参数值对应的测试结果。
71.可选地,当第一内存测试参数为写恢复时间,第一参数值为t2时,测试设备参考前述介绍的方法按照物理地址首尾交替的顺序来对各个存储单元进行数据读写。其中,对于任意一个物理地址对应的存储单元,测试设备从开始向该存储单元中写入第一数据起计时,当经过t2之后,从该存储单元中读取数据,得到第二数据。之后,从开始向该存储单元中写入第三数据起计时,当经过t2之后,再从该存储单元中读取数据,得到第四数据。如果第一数据和第二数据不同,或者第三数据和第四数据不同,则说明在t2这个时长之内,由于该存储单元中存储体的传输路径接触阻抗过大,导致数据写入没有完成,从而导致了读取数据和写入数据不同,也即,数据出错,此时,则判定该存储单元的测试未通过。如果第一数据和第二数据相同,且第三数据和第四数据也相同,则说明该存储单元数据未出错,此时,判定该存储单元的测试通过。
72.在通过上述方式对每个存储单元进行测试之后,如果该内存中任一存储单元的测试未通过,则确定该内存在写恢复时间的第一参数值下的测试未通过。如果该内存中所有存储单元的测试均通过,则认为该内存在写恢复时间的第一参数值下的测试通过。
73.对于写恢复时间的其他参数值,测试设备均可以参考上述方法来进行测试,从而得到写恢复时间的每个参数值对应的测试结果。
74.上述主要介绍了内存测试参数为自刷新周期和写恢复时间时确定内存测试参数的每个参数值对应的测试结果的实现过程,对于其他的内存测试参数,可以参考上述实现方式,本技术实施例在此不再赘述。
75.步骤203:根据内存测试参数下各个参数值对应的测试结果,确定内存的测试结果。
76.在得到每种内存测试参数下各个参数值对应的测试结果之后,测试设备获取目标质量等级对应的每种内存测试参数的参考阈值;如果内存在每种内存测试参数的参考阈值下的测试结果均为测试通过,则确定该内存的测试结果为符合所述目标质量等级。
77.需要说明的是,在本技术实施例中,测试设备可以通过上述步骤201和步骤202中
介绍的方法,采用相同的内存测试参数和参数值对多个内存分别进行测试,从而获得多个内存中每个内存在每种内存测试参数的各个参数值下的测试结果。之后,对于任一种内存测试参数,测试设备统计该种内存测试参数的各个参数值下通过测试的内存与内存总数之间的比值,得到该种内存测试参数的各个参数值下的内存直通率。之后,测试设备可以根据各个参数值和对应的内存直通率绘制得到参数值和内存直通率的曲线关系图,并根据该曲线关系图中出现的拐点来确定不同质量等级所对应的参考内存直通率,并将不同质量等级对应的参考内存直通率所对应的参数值确定为相应质量等级对应的该种内存测试参数的参考阈值。
78.示例性地,以内存测试参数为自刷新周期为例,假设自刷新周期的多个参数值分别为(t1,t2,t3,t4,
……
,tn),测试设备根据该多个参数值,对1000个内存进行了测试,从而得到了每个内存在每个参数值下的测试结果。之后,测试设备首先统计在t1下,1000个内存中测试通过的内存的数量与1000的比值,得到t1下的内存直通率k1,按照相同的方法,统计t2下的内存直通率k2,以此类推,直到得到tn下的内存直通率kn为止。之后,测试设备可以根据各个参数值和对应的内存直通率绘制得到参数值和内存直通率的曲线关系图,如图5所示,将绘制得到的曲线中的各个拐点作为不同质量等级点,其中,质量等级点对应的参考内存直通率越低,质量等级越高。例如,图5中即可得到优秀、良好和普通三个质量等级,其中优先等级对应的参考内存直通率为q1,良好等级对应的参考内存直通率为q2,普通等级对应的参考内存直通率为q3。从上述曲线关系图中确定q1所对应的参数值作为优先等级对应的自刷新周期的参考阈值,确定q2所对应的参数值作为良好等级对应的自刷新周期的参考阈值,确定q3对应的参数值作为普通等级对应的自刷新周期的参考阈值。
79.对于每种内存测试参数,测试设备均可以参考上述方式获得不同质量等级对应的该种内存测试参数的参考阈值。
80.之后,对于任一个内存,测试设备获取该内存在目标质量等级对应的每种内存测试参数的参考阈值下的测试结果,如果这些测试结果均为测试通过,则说明该内存的测试结果符合该目标质量等级。
81.示例性地,假设目标质量等级为优秀等级,优秀等级对应的自刷新周期的参考阈值为q1,对应的写恢复时间的参考阈值为w1,则测试设备获取内存在q1下的测试结果和在w1下的测试结果,如果这两个测试结果均为通过,则说明该内存符合优秀等级。
82.在本技术实施例中,参考模式是指允许根据内存的物理地址直接访问内存的模式。基于此,在参考模式下对内存进行测试时,能够直接通过内存的物理地址访问内存,而无需经过多级缓存。这样,访问内存的路径变短,单位时间内对内存总线的占用率提高,内存访问效率提高且访问压力增大,从而提高了内存的测试效率,缩短了测试时间,降低了测试成本。
83.另外,在本技术实施例中,在对内存进行测试时,按照物理地址首尾交替的顺序来对各个存储单元进行访问,如此,增加了地址线的访问压力,解决了测试压力不足的问题。
84.最后,在本技术实施例中,通过寻找内存测试参数与直通率的曲线图中的拐点来确定不同的质量等级所对应的内存测试参数的参考阈值,进而以此来实现内存的快速质量分级,如此,能够快速高效的满足不同客户群体的质量述求。
85.参见图6,本技术实施例提供了一种内存测试装置600,该装置包括:
86.获取模块601,用于执行上述实施例中的步骤201;
87.测试模块602,用于执行上述实施例中的步骤202;
88.确定模块603,用于执行上述实施例中的步骤203。
89.需要说明的是,上述获取模块601、测试模块602和确定模块603均能够通过图1所示的测试设备的cpu来实现。
90.可选地,内存包括多个存储单元,每个存储单元包括多个存储体,内存测试参数包括影响存储体的数据保持能力的参数和测试存储体的传输路径接触阻抗的参数中的至少一种。
91.可选地,参考模式为mbist模式,影响存储体的数据保持能力的参数包括自刷新周期,自刷新周期是指对存储体的电容充电的时间间隔。
92.可选地,参考模式为mbist模式,测试存储体的传输路径接触阻抗的参数包括写恢复时间,写恢复时间是指在存储体中写入数据的时长。
93.可选地,测试模块602用于:
94.在内存测试参数的第一参数值下,按照内存的物理地址首尾交替的顺序,在各个物理地址所对应的存储单元中进行数据写入和数据读取,其中,物理地址相邻的存储单元中写入的数据不同,第一参数值为内存测试参数的多个参数值中的任一参数值;
95.如果在任一存储单元中读取的数据和写入的数据不同,则确定内存在内存测试参数的第一参数值下的测试结果为测试未通过;
96.如果在每个存储单元中读取的数据和写入的数据均相同,则确定内存在内存测试参数的第一参数值下的测试结果为测试通过。
97.可选地,确定模块603用于:
98.获取目标质量等级对应的每种内存测试参数的参考阈值;
99.如果内存在目标质量等级对应的每种内存测试参数的参考阈值下的测试结果均为测试通过,则确定内存的测试结果为符合目标质量等级。
100.综上所述,在本技术实施例中,参考模式是指允许根据内存的物理地址直接访问内存的模式。基于此,在参考模式下对内存进行测试时,能够直接通过内存的物理地址访问内存,而无需经过多级缓存。这样,访问内存的路径变短,单位时间内对内存总线的占用率提高,内存访问效率提高且访问压力增大,从而提高了内存的测试效率,缩短了测试时间,降低了测试成本。
101.需要说明的是:上述实施例提供的内存测试装置在进行内存测试时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的内存测试装置与内存测试方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
102.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或
者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(digital subscriber line,dsl))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(digital versatile disc,dvd))、或者半导体介质(例如:固态硬盘(solid state disk,ssd))等。
103.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
104.应当理解的是,本文提及的“至少一个”是指一个或多个,“多个”是指两个或两个以上。在本文的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,为了便于清楚描述本技术实施例的技术方案,在本技术的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
105.以上所述并不用以限制本技术实施例,凡在本技术实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术实施例的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1