[go: up one dir, main page]

CN111562998A - 一种集成电路的内存诊断方法、诊断设备及存储介质 - Google Patents

一种集成电路的内存诊断方法、诊断设备及存储介质 Download PDF

Info

Publication number
CN111562998A
CN111562998A CN202010289170.1A CN202010289170A CN111562998A CN 111562998 A CN111562998 A CN 111562998A CN 202010289170 A CN202010289170 A CN 202010289170A CN 111562998 A CN111562998 A CN 111562998A
Authority
CN
China
Prior art keywords
specific data
data value
storage unit
line
specific
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010289170.1A
Other languages
English (en)
Inventor
向卫东
孟庆晓
吴闽华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Genew Technologies Co Ltd
Original Assignee
Shenzhen Genew Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Genew Technologies Co Ltd filed Critical Shenzhen Genew Technologies Co Ltd
Priority to CN202010289170.1A priority Critical patent/CN111562998A/zh
Publication of CN111562998A publication Critical patent/CN111562998A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0763Error or fault detection not based on redundancy by bit configuration check, e.g. of formats or tags

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本发明公开了一种集成电路的内存诊断方法、诊断设备及存储介质,通过写入、读出特定的数据值来校验判断数据线有无故障,通过往特定地址的存储单元写入、读出数据来校验判断地址线有无故障,通过逐一写入、读取比较存储单元的数据来校验判断存储单元有无故障,然后分别分析显示导致不良故障的具体原因及相关的信号线,对集成电路上的内存芯片进行全面的诊断,并进行故障显示。

Description

一种集成电路的内存诊断方法、诊断设备及存储介质
技术领域
本发明涉及集成电路测试技术领域,尤其涉及一种集成电路的内存诊断方法、诊断设备及存储介质。
背景技术
集成电路中的内存芯片及其附属电路称为内存子系统,它是集成电路重要的组成部分。通常集成电路还安装有中央处理器(CPU),内存子系统用来存储CPU执行程序指令需要的数据。所以具体来说内存子系统给CPU提供了对数据存储单元读出、写入数据的功能。
内存芯片的信号线主要有两类,一种是数据线,用来输入或输出数据值;一种是地址线,用来指定内存芯片里数据的存储单元的地址编号。例如常用的内存子系统的地址线和数据线分别有32根,每根地址线和每根数据线都能独立输出0或1,32根地址线同时输出信号而组成的32位二进制数表示内存芯片的一个存储单元的地址;32根数据线同时输出的信号而组成的32位二进制数表示一个数据值。
因为集成电路上的内存芯片和信号线高度密集,所以在生产制造过程中内存子系统容易出现次品,常见的不良问题主要有数据线短路问题或断开问题、地址线短路问题或断开问题、内存芯片里的存储单元错误,而现有技术无法快速、准确检测出次品以及定位次品具体的不良问题原因和对应的信号线。
因此,现有技术还有待于改进和发展。
发明内容
本发明的主要目的在于提供一种集成电路的内存诊断方法、诊断设备及存储介质,旨在解决现有技术无法快速、准确检测出次品以及定位次品具体的不良问题原因和对应的信号线的问题。
为实现上述目的,本发明提供一种集成电路的内存诊断方法,所述集成电路的内存诊断方法包括如下步骤:
选择内存子系统中任意一个存储单元,写入第一数据到所选择的存储单元并读出第一特定数据值,写入第二数据到所选择的存储单元并读出第二特定数据值,校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障;
当确定数据线不存在断开故障时,选择内存子系统中任意一个存储单元,写入第三数据到所选择的存储单元并读出第三特定数据值,写入第四数据到所选择的存储单元并读出第四特定数据值,根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障;
当确定数据线正常时,选择内存子系统中第一特定地址的第一存储单元写入第五特定数据值,选择内存子系统中第二特定地址的第二存储单元写入第六特定数据值,读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障;
将相邻两根地址线作为一组依次测试,选择内存子系统中第三特定地址的第三存储单元写入第七特定数据值,选择内存子系统中第四特定地址的第四存储单元写入第八特定数据值,读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障;
当确定数据线和地址线均正常时,依次往内存子系统中所有存储单元里写入第九特定数据值,依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障;依次往内存子系统中所有存储单元里写入第十特定数据值,依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障。
可选地,所述的集成电路的内存诊断方法,其中,所述校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障,具体包括:
依次对应比较所述第一特定数据值和所述第二特定数据值每一位数的数值;
如果数值相同,表示对应的数据线出现断开故障;
如果数值不相同,表示对应的数据线未出现断开故障。
可选地,所述的集成电路的内存诊断方法,其中,所述第三数据中奇数位的数值为0,偶数位的数值为1;
所述第四数据中奇数位的数值为1,偶数位的数值为0。
可选地,所述的集成电路的内存诊断方法,其中,所述根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障,具体包括:
如果所述第三特定数据值中的某个偶数位n的数值为0,表示偶数位n对应的第n根数据线与它左右相邻的一根数据线短路;
判断偶数位n对应的第n根数据线是与左边的第n-1根数据线短路还是与右边的第n+1根数据线短路;
如果所述第四特定数据值中的某个奇数位m的数值为0,表示奇数位m对应的第m根数据线与它左右相邻的一根数据线短路;
如果第m根数据线为第n-1根数据线或者第n+1根数据线,则判断出第n根数据线与第m根数据线短路;
其中,m=n-1或m=n+1;n和m均为正整数。
可选地,所述的集成电路的内存诊断方法,其中,所述第五特定数据值和所述第六特定数据值不相等;
所述读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障,具体包括:
如果从第一存储单元和第二存储单元中读取的数值同时等于所述第五特定数据值或同时等于所述第六特定数据值,则第一存储单元和第二存储单元为同一个存储单元,则当前地址线出现断开故障,并以同样的方式测试完所有地址线。
可选地,所述的集成电路的内存诊断方法,其中,所述第七特定数据值和所述第八特定数据值不相等;
所述读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障,具体包括:
如果从第三存储单元和第四存储单元中读取的数值同时等于所述第七特定数据值或同时等于所述第八特定数据值,则第三存储单元和第四存储单元为同一个存储单元,则表示当前组中的两根地址线出现短路故障,并以同样的方式测试完所有组中的地址线。
可选地,所述的集成电路的内存诊断方法,其中,所述依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障,具体包括:
依次读取所有存储单元的数值与所述第九特定数据值比较,判断存储单元中读取的数值是否等于所述第九特定数据值,如果相等则当前存储单元正常,如果不相等,则当前存储单元出现故障;
所述依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障,具体包括:
依次读取所有存储单元的数值与所述第十特定数据值比较,判断存储单元中读取的数值是否等于所述第十特定数据值,如果相等则当前存储单元正常,如果不相等,则当前存储单元出现故障。
可选地,所述的集成电路的内存诊断方法,其中,所述内存诊断中的故障包括:数据线断开故障、数据线短路故障、地址线断开故障、地址线短路故障、以及存储单元故障;
当诊断出数据线断开故障、数据线短路故障、地址线断开故障、地址线短路故障、以及存储单元故障中任一故障时,显示当前故障。
此外,为实现上述目的,本发明还提供一种诊断设备,其中,所述诊断设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的集成电路的内存诊断程序,所述集成电路的内存诊断程序被所述处理器执行时实现如上所述的集成电路的内存诊断方法的步骤。
此外,为实现上述目的,本发明还提供一种存储介质,其中,所述存储介质存储有集成电路的内存诊断程序,所述集成电路的内存诊断程序被处理器执行时实现如上所述的集成电路的内存诊断方法的步骤。
本发明通过选择内存子系统中任意一个存储单元,写入第一数据到所选择的存储单元并读出第一特定数据值,写入第二数据到所选择的存储单元并读出第二特定数据值,校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障;当确定数据线不存在断开故障时,选择内存子系统中任意一个存储单元,写入第三数据到所选择的存储单元并读出第三特定数据值,写入第四数据到所选择的存储单元并读出第四特定数据值,根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障;当确定数据线正常时,选择内存子系统中第一特定地址的第一存储单元写入第五特定数据值,选择内存子系统中第二特定地址的第二存储单元写入第六特定数据值,读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障;将相邻两根地址线作为一组依次测试,选择内存子系统中第三特定地址的第三存储单元写入第七特定数据值,选择内存子系统中第四特定地址的第四存储单元写入第八特定数据值,读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障;当确定数据线和地址线均正常时,依次往内存子系统中所有存储单元里写入第九特定数据值,依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障;依次往内存子系统中所有存储单元里写入第十特定数据值,依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障。本发明通过写入、读出特定的数据值来校验判断数据线有无问题,通过往特定地址的存储单元写入、读出数据来校验判断地址线有无问题,通过逐一写入、读取比较存储单元的数据来校验判断存储单元有无问题,然后分别分析显示导致不良问题的具体原因及相关的信号线,对集成电路上的内存芯片进行全面的诊断,并进行故障显示。
附图说明
图1是本发明集成电路的内存诊断方法的较佳实施例的流程图;
图2是本发明断设备的较佳实施例的运行原理示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
短路问题即某一根信号线与另一根信号线接通了,而它们设计上是不接通的,导致信号干扰误传;短路会造成相关的两根信号线输出的信号互相影响,如果短路时两根信号线分别输出信号1和0(或0和1),此时接收者实际接收的信号会错变为0和0;短路时两根信号线同时输出0或同时输出1,此时接收者实际接收到的信号也是同为0或同为1,只是看起来不受影响。
断开问题相反,即某一根信号线中间断开了,导致信号无法传达。断开会造成无论信号线输出什么信号,在同样的电路设计下,接收者总是收到信号0(或总是收到信号1)。
数据线出现问题时,因为数据值传递出错,表现为对一个任意地址的存储单元写入数值,然后再读取出来的数值与之前写入的数值不相等。地址线出现问题时,因为地址值传递出错,表现为对某一个地址的存储单元写入或读取数据,而实际却是对另一个地址的存储单元写入或读取数据,也就是说有多个不同的地址值指向了同一个存储单元。
存储单元出错,表现为一些存储单元的某一位或多位数据读出来总为0或总为1或总为上次写入值的相反值。
首先,本发明以32根数据线和32根地址线的内存子系统为例,用1和0组成的32位数代表32根数据线(或32根地址线)的信号,例如00000010010010001001001010100100,最左边的那位数代表第1根信号线的信号值,最右边的那位数代表第32根信号线的信号值,32根数据线在集成电路里按编号从第1根到第32根的顺序排列,地址线也是如此。
本发明较佳实施例所述的集成电路的内存诊断方法,如图1所示,所述集成电路的内存诊断方法包括以下步骤:
步骤S10、选择内存子系统中任意一个存储单元,写入第一数据到所选择的存储单元并读出第一特定数据值,写入第二数据到所选择的存储单元并读出第二特定数据值,校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障。
具体地,依次对应比较所述第一特定数据值和所述第二特定数据值每一位数的数值;如果数值相同,表示对应的数据线出现断开故障;如果数值不相同,表示对应的数据线未出现断开故障。
首先测试数据线时,还不确定地址线有无故障,但这不重要,因为这时候是随意选择一个存储单元来写入、读取测试,地址线有问题不影响测试数据线的结果。同样的此时也还不确定存储单元有无故障,可以选择多个存储单元重复测试数据线的步骤,避免某一个存储单元有故障而影响测试结果。
选择地址00000000000000000000000000000000(这个地址没有特殊性,可以随意选择)代表的存储单元A1(任意一个存储单元),往存储单元A1里写入数据00000000000000000000000000000000(即第一数据,短路时两根信号线同时输出0或同时输出1,此时接收者实际接收到的信号也是同为0或同为1,看起来不受影响,所以写入的值只能选为全0和全1,避免数据线短路问题干扰测试),然后从存储单元A1里读出数据值为D1(这里的D1表示第一特定数据值);往存储单元A1里写入数据11111111111111111111111111111111(即第二数据),然后从存储单元A1里读出数据值为D2(这里的D2表示第二特定数据值);正常情况下D1(第一特定数据值)和D2(第二特定数据值)应该分别等于00000000000000000000000000000000和11111111111111111111111111111111。依次对应比较D1(第一特定数据值)和D2(第二特定数据值)每一位数的数值,数值相同的则表示对应的数据线出现断开故障,数值不相同的则表示对应的数据线未出现断开故障。
例如,D1(第一特定数据值)=10000000000000000000000000000000,D2(第二特定数据值)=11111111111111111111111111111110,表明第1根数据线和第32根数据线有断开故障。
测试出故障后,结束测试过程并显示本步骤发现的故障。
步骤S20、当确定数据线不存在断开故障时,选择内存子系统中任意一个存储单元,写入第三数据到所选择的存储单元并读出第三特定数据值,写入第四数据到所选择的存储单元并读出第四特定数据值,根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障。
其中,所述第三数据中奇数位的数值为0,偶数位的数值为1;所述第四数据中奇数位的数值为1,偶数位的数值为0。
具体地,如果所述第三特定数据值中的某个偶数位n的数值为0,表示偶数位n对应的第n根数据线与它左右相邻的一根数据线短路;判断偶数位n对应的第n根数据线是与左边的第n-1根数据线短路还是与右边的第n+1根数据线短路;如果所述第四特定数据值中的某个奇数位m的数值为0,表示奇数位m对应的第m根数据线与它左右相邻的一根数据线短路;如果第m根数据线为第n-1根数据线或者第n+1根数据线,则判断出第n根数据线与第m根数据线短路;其中,m=n-1或m=n+1;n和m均为正整数。
这时候已经确定数据线没有断开问题,选择地址00000000000000000000000000000000(这个地址没有特殊性,可以随意选择)的存储单元A1(任意一个存储单元),往存储单元A1里写入数据01010101010101010101010101010101(即第三数据,奇数位的数值为0,偶数位的数值为1,相邻的两位数据总是1和0(或0和1),这样只要有短路问题,数据就会变为0和0,从而暴露出来),然后从存储单元A1里读出数据值为D1(这里的D1表示第三特定数据值);如果D1(第三特定数据值)的某个偶数位n的数值为0,表示该偶数位n对应的第n根数据线与它旁边的一根数据线短路了,但是还不确定是与左边的第n-1根数据线短路还是与右边的第n+1根数据线短路。继续往A1里写入数据10101010101010101010101010101010(即第四数据,奇数位的数值为1,偶数位的数值为0),然后从存储单元A1里读出数据值为D2(这里的D2表示第四特定数据值);如果D2(第四特定数据值)的某个奇数位m的数值为0,表示该奇数位m对应的第m根数据线与它旁边的一根数据线短路了,如果这里的第m根数据线就是前面提到的第n-1根数据线或者第n+1根数据线,那么最终判断出是第n根数据线与第m根数据线短路了,其中,m=n-1或m=n+1。
测试出故障后,结束测试过程并显示本步骤发现的故障。
步骤S30、当确定数据线正常时,选择内存子系统中第一特定地址的第一存储单元写入第五特定数据值,选择内存子系统中第二特定地址的第二存储单元写入第六特定数据值,读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障。
其中,所述第五特定数据值和所述第六特定数据值不相等;具体地,如果从第一存储单元和第二存储单元中读取的数值同时等于所述第五特定数据值或同时等于所述第六特定数据值,则第一存储单元和第二存储单元为同一个存储单元,则当前地址线出现断开故障,并以同样的方式测试完所有地址线。
测试地址线时还不确定存储单元有无故障,可以选择多个存储单元分别重复测试数据线(择存储单元时,只对正在测试的那一根或两根地址线输出信号的值有要求,其它地址线的输出值不受限制,所以是有选择余地的),避免某一个存储单元有故障而影响测试结果。
这时候已经确认数据线没有任何问题,从第1根地址线开始测试,选择第1根地址线输出0、其余地址线都输出1组成的地址01111111111111111111111111111111(即第一特定地址)对应的存储单元A1(即第一特定地址的第一存储单元),往存储单元A1(第一特定地址的第一存储单元)里写入数据值D1(这里的D1表示第五特定数据值);再选择所有地址线都输出1组成的地址11111111111111111111111111111111(即第二特定地址)对应的存储单元A2(即第二特定地址的第二存储单元),往存储单元A2(第二特定地址的第二存储单元)里写入不等于D1(第五特定数据值)的数据值D2(这里的D2表示第六特定数据值);然后分别读取存储单元A1(第一特定地址的第一存储单元)和存储单元A2(第二特定地址的第二存储单元)里的数值,如果它们的数值同时等于D1(第五特定数据值)或同时等于D2(第六特定数据值),则表明存储单元A1(第一特定地址的第一存储单元)和存储单元A2(第二特定地址的第二存储单元)实际为同一个存储单元,也就是说第1根地址线断开了导致01111111111111111111111111111111地址和11111111111111111111111111111111地址指向了同一个存储单元(为什么不会是相邻地址线短路,因为如果是第1根地址线与第2根地址线短路了,那么01111111111111111111111111111111会实际变为指向00111111111111111111111111111111地址,而不是变为指向11111111111111111111111111111111地址)。以此类推继续测试第2根地址线,直到测试完第32根地址线。
一旦测试出故障,结束测试过程并显示本步骤发现的故障。
步骤S40、将相邻两根地址线作为一组依次测试,选择内存子系统中第三特定地址的第三存储单元写入第七特定数据值,选择内存子系统中第四特定地址的第四存储单元写入第八特定数据值,读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障。
其中,所述第七特定数据值和所述第八特定数据值不相等;具体地,如果从第三存储单元和第四存储单元中读取的数值同时等于所述第七特定数据值或同时等于所述第八特定数据值,则第三存储单元和第四存储单元为同一个存储单元,则表示当前组中的两根地址线出现短路故障,并以同样的方式测试完所有组中的地址线。
短路关乎两根地址线,所以以相邻两根为一组进行测试;从第(1、2)根地址线开始测试,选择其中1根地址线输出0、另一根地址线输出1、其余地址线也都输出为1组成的地址01111111111111111111111111111111(即第三特定地址)对应的存储单元A1(即第三特定地址的第三存储单元),往A1(第三特定地址的第三存储单元)里写入数据值D1(这里的D1表示第七特定数据值);再选择这两根地址线输出0、其余地址线都输出1组成的地址00111111111111111111111111111111(即第四特定地址)对应的存储单元A2(即第四特定地址的第四存储单元),往A2(第四特定地址的第四存储单元)里写入不等于D1(第七特定数据值)的数据值D2(这里的D2表示第八特定数据值);然后分别读取A1(第三特定地址的第三存储单元)和A2(第四特定地址的第四存储单元)里的数值,如果它们的数值同时等于D1(第七特定数据值)或同时等于D2(第八特定数据值),则表明A1(第三特定地址的第三存储单元)和A2(第四特定地址的第四存储单元)实际为同一个存储单元,也就是说第1根地址线与第2根地址线短路了导致01111111111111111111111111111111地址和00111111111111111111111111111111地址指向了同一个存储单元。以此类推继续测试第(2、3)根地址线,直到第(31、32)根地址线。
一旦测试出故障后,结束测试过程并显示本步骤发现的故障。
步骤S50、当确定数据线和地址线均正常时,依次往内存子系统中所有存储单元里写入第九特定数据值,依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障;依次往内存子系统中所有存储单元里写入第十特定数据值,依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障。
具体地,依次读取所有存储单元的数值与所述第九特定数据值比较,判断存储单元中读取的数值是否等于所述第九特定数据值,如果相等则当前存储单元正常,如果不相等,则当前存储单元出现故障;依次读取所有存储单元的数值与所述第十特定数据值比较,判断存储单元中读取的数值是否等于所述第十特定数据值,如果相等则当前存储单元正常,如果不相等,则当前存储单元出现故障。
这时候已经确认数据线和地址线均无问题,依次往所有存储单元里写入数值D1=00000000000000000000000000000000(这里的D1标表示第九特定数据值),然后依次读取数值出来比较是否等于D1(第九特定数据值),不相等的话表示存储单元有问题,结束测试过程并显示本步骤发现的故障。然后,依次往所有存储单元里写入数值D2=11111111111111111111111111111111(这里的D2表示第十特定数据值),然后依次读取数值出来比较是否等于D2(第十特定数据值),不相等的话表示存储单元有问题,结束测试过程并显示本步骤发现的故障。
本发明中,所述内存诊断中的故障包括:数据线断开故障、数据线短路故障、地址线断开故障、地址线短路故障、以及存储单元故障;当诊断出数据线断开故障、数据线短路故障、地址线断开故障、地址线短路故障、以及存储单元故障中任一故障时,显示当前故障。
根据短路和断开时输出的信号与实际接收的信号的对应变化关系,结合正常情况下同一个存储单元读出的数据值应该与上一次写入的数据值相等,本发明通过写入、读出特定的数据值来校验判断数据线有无问题,通过往特定地址的存储单元写入、读出数据来校验判断地址线有无问题,通过逐一写入、读取比较存储单元的数据来校验判断存储单元有无问题,然后分别分析显示导致不良问题的具体原因及相关的信号线。
进一步地,如图2所示,基于上述集成电路的内存诊断方法,本发明还相应提供了一种诊断设备,所述诊断设备包括处理器10、存储器20及显示器30。图2仅示出了诊断设备的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
所述存储器20在一些实施例中可以是所述诊断设备的内部存储单元,例如诊断设备的硬盘或内存。所述存储器20在另一些实施例中也可以是所述诊断设备的外部存储设备,例如所述诊断设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器20还可以既包括所述诊断设备的内部存储单元也包括外部存储设备。所述存储器20用于存储安装于所述诊断设备的应用软件及各类数据,例如所述安装诊断设备的程序代码等。所述存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有集成电路的内存诊断程序40,该集成电路的内存诊断程序40可被处理器10所执行,从而实现本申请中集成电路的内存诊断方法。
所述处理器10在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行所述存储器20中存储的程序代码或处理数据,例如执行所述集成电路的内存诊断方法等。
所述显示器30在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。所述显示器30用于显示在所述诊断设备的信息以及用于显示可视化的用户界面。所述诊断设备的部件10-30通过系统总线相互通信。
在一实施例中,当处理器10执行所述存储器20中集成电路的内存诊断程序40时实现以下步骤:
选择内存子系统中任意一个存储单元,写入第一数据到所选择的存储单元并读出第一特定数据值,写入第二数据到所选择的存储单元并读出第二特定数据值,校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障;
当确定数据线不存在断开故障时,选择内存子系统中任意一个存储单元,写入第三数据到所选择的存储单元并读出第三特定数据值,写入第四数据到所选择的存储单元并读出第四特定数据值,根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障;
当确定数据线正常时,选择内存子系统中第一特定地址的第一存储单元写入第五特定数据值,选择内存子系统中第二特定地址的第二存储单元写入第六特定数据值,读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障;
将相邻两根地址线作为一组依次测试,选择内存子系统中第三特定地址的第三存储单元写入第七特定数据值,选择内存子系统中第四特定地址的第四存储单元写入第八特定数据值,读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障;
当确定数据线和地址线均正常时,依次往内存子系统中所有存储单元里写入第九特定数据值,依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障;依次往内存子系统中所有存储单元里写入第十特定数据值,依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障。
所述校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障,具体包括:
依次对应比较所述第一特定数据值和所述第二特定数据值每一位数的数值;
如果数值相同,表示对应的数据线出现断开故障;
如果数值不相同,表示对应的数据线未出现断开故障。
所述第三数据中奇数位的数值为0,偶数位的数值为1;
所述第四数据中奇数位的数值为1,偶数位的数值为0。
所述根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障,具体包括:
如果所述第三特定数据值中的某个偶数位n的数值为0,表示偶数位n对应的第n根数据线与它左右相邻的一根数据线短路;
判断偶数位n对应的第n根数据线是与左边的第n-1根数据线短路还是与右边的第n+1根数据线短路;
如果所述第四特定数据值中的某个奇数位m的数值为0,表示奇数位m对应的第m根数据线与它左右相邻的一根数据线短路;
如果第m根数据线为第n-1根数据线或者第n+1根数据线,则判断出第n根数据线与第m根数据线短路;
其中,m=n-1或m=n+1;n和m均为正整数。
所述第五特定数据值和所述第六特定数据值不相等;
所述读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障,具体包括:
如果从第一存储单元和第二存储单元中读取的数值同时等于所述第五特定数据值或同时等于所述第六特定数据值,则第一存储单元和第二存储单元为同一个存储单元,则当前地址线出现断开故障,并以同样的方式测试完所有地址线。
所述第七特定数据值和所述第八特定数据值不相等;
所述读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障,具体包括:
如果从第三存储单元和第四存储单元中读取的数值同时等于所述第七特定数据值或同时等于所述第八特定数据值,则第三存储单元和第四存储单元为同一个存储单元,则表示当前组中的两根地址线出现短路故障,并以同样的方式测试完所有组中的地址线。
所述依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障,具体包括:
依次读取所有存储单元的数值与所述第九特定数据值比较,判断存储单元中读取的数值是否等于所述第九特定数据值,如果相等则当前存储单元正常,如果不相等,则当前存储单元出现故障;
所述依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障,具体包括:
依次读取所有存储单元的数值与所述第十特定数据值比较,判断存储单元中读取的数值是否等于所述第十特定数据值,如果相等则当前存储单元正常,如果不相等,则当前存储单元出现故障。
所述内存诊断中的故障包括:数据线断开故障、数据线短路故障、地址线断开故障、地址线短路故障、以及存储单元故障;
当诊断出数据线断开故障、数据线短路故障、地址线断开故障、地址线短路故障、以及存储单元故障中任一故障时,显示当前故障。
本发明还提供一种存储介质,其中,所述存储介质存储有集成电路的内存诊断程序,所述集成电路的内存诊断程序被处理器执行时实现如上所述的集成电路的内存诊断方法的步骤。
综上所述,本发明提供一种集成电路的内存诊断方法、诊断设备及存储介质,所述方法包括:选择内存子系统中任意一个存储单元,写入第一数据到所选择的存储单元并读出第一特定数据值,写入第二数据到所选择的存储单元并读出第二特定数据值,校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障;当确定数据线不存在断开故障时,选择内存子系统中任意一个存储单元,写入第三数据到所选择的存储单元并读出第三特定数据值,写入第四数据到所选择的存储单元并读出第四特定数据值,根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障;当确定数据线正常时,选择内存子系统中第一特定地址的第一存储单元写入第五特定数据值,选择内存子系统中第二特定地址的第二存储单元写入第六特定数据值,读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障;将相邻两根地址线作为一组依次测试,选择内存子系统中第三特定地址的第三存储单元写入第七特定数据值,选择内存子系统中第四特定地址的第四存储单元写入第八特定数据值,读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障;当确定数据线和地址线均正常时,依次往内存子系统中所有存储单元里写入第九特定数据值,依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障;依次往内存子系统中所有存储单元里写入第十特定数据值,依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障。本发明通过写入、读出特定的数据值来校验判断数据线有无问题,通过往特定地址的存储单元写入、读出数据来校验判断地址线有无问题,通过逐一写入、读取比较存储单元的数据来校验判断存储单元有无问题,然后分别分析显示导致不良问题的具体原因及相关的信号线,对集成电路上的内存芯片进行全面的诊断,并进行故障显示。
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。其中所述的存储介质可为存储器、磁碟、光盘等。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (10)

1.一种集成电路的内存诊断方法,其特征在于,所述集成电路的内存诊断方法包括:
选择内存子系统中任意一个存储单元,写入第一数据到所选择的存储单元并读出第一特定数据值,写入第二数据到所选择的存储单元并读出第二特定数据值,校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障;
当确定数据线不存在断开故障时,选择内存子系统中任意一个存储单元,写入第三数据到所选择的存储单元并读出第三特定数据值,写入第四数据到所选择的存储单元并读出第四特定数据值,根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障;
当确定数据线正常时,选择内存子系统中第一特定地址的第一存储单元写入第五特定数据值,选择内存子系统中第二特定地址的第二存储单元写入第六特定数据值,读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障;
将相邻两根地址线作为一组依次测试,选择内存子系统中第三特定地址的第三存储单元写入第七特定数据值,选择内存子系统中第四特定地址的第四存储单元写入第八特定数据值,读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障;
当确定数据线和地址线均正常时,依次往内存子系统中所有存储单元里写入第九特定数据值,依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障;依次往内存子系统中所有存储单元里写入第十特定数据值,依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障。
2.根据权利要求1所述的集成电路的内存诊断方法,其特征在于,所述校验所述第一特定数据值和所述第二特定数据值判断数据线是否出现断开故障,具体包括:
依次对应比较所述第一特定数据值和所述第二特定数据值每一位数的数值;
如果数值相同,表示对应的数据线出现断开故障;
如果数值不相同,表示对应的数据线未出现断开故障。
3.根据权利要求1所述的集成电路的内存诊断方法,其特征在于,所述第三数据中奇数位的数值为0,偶数位的数值为1;
所述第四数据中奇数位的数值为1,偶数位的数值为0。
4.根据权利要求3所述的集成电路的内存诊断方法,其特征在于,所述根据所述第三特定数据值和所述第四特定数据值判断数据线是否出现短路故障,具体包括:
如果所述第三特定数据值中的某个偶数位n的数值为0,表示偶数位n对应的第n根数据线与它左右相邻的一根数据线短路;
判断偶数位n对应的第n根数据线是与左边的第n-1根数据线短路还是与右边的第n+1根数据线短路;
如果所述第四特定数据值中的某个奇数位m的数值为0,表示奇数位m对应的第m根数据线与它左右相邻的一根数据线短路;
如果第m根数据线为第n-1根数据线或者第n+1根数据线,则判断出第n根数据线与第m根数据线短路;
其中,m=n-1或m=n+1;n和m均为正整数。
5.根据权利要求1所述的集成电路的内存诊断方法,其特征在于,所述第五特定数据值和所述第六特定数据值不相等;
所述读取第一存储单元和第二存储单元中的数值与所述第五特定数据值和所述第六特定数据值比较判断当前地址线是否出现断开故障,具体包括:
如果从第一存储单元和第二存储单元中读取的数值同时等于所述第五特定数据值或同时等于所述第六特定数据值,则第一存储单元和第二存储单元为同一个存储单元,则当前地址线出现断开故障,并以同样的方式测试完所有地址线。
6.根据权利要求1所述的集成电路的内存诊断方法,其特征在于,所述第七特定数据值和所述第八特定数据值不相等;
所述读取第三存储单元和第四存储单元中的数值与所述第七特定数据值和所述第八特定数据值比较判断当前地址线是否出现短路故障,具体包括:
如果从第三存储单元和第四存储单元中读取的数值同时等于所述第七特定数据值或同时等于所述第八特定数据值,则第三存储单元和第四存储单元为同一个存储单元,则表示当前组中的两根地址线出现短路故障,并以同样的方式测试完所有组中的地址线。
7.根据权利要求1所述的集成电路的内存诊断方法,其特征在于,所述依次读取所有存储单元的数值与所述第九特定数据值比较判断存储单元是否出现故障,具体包括:
依次读取所有存储单元的数值与所述第九特定数据值比较,判断存储单元中读取的数值是否等于所述第九特定数据值,如果相等则当前存储单元正常,如果不相等,则当前存储单元出现故障;
所述依次读取所有存储单元的数值与所述第十特定数据值比较判断存储单元是否出现故障,具体包括:
依次读取所有存储单元的数值与所述第十特定数据值比较,判断存储单元中读取的数值是否等于所述第十特定数据值,如果相等则当前存储单元正常,如果不相等,则当前存储单元出现故障。
8.根据权利要求1所述的集成电路的内存诊断方法,其特征在于,所述内存诊断中的故障包括:数据线断开故障、数据线短路故障、地址线断开故障、地址线短路故障、以及存储单元故障;
当诊断出数据线断开故障、数据线短路故障、地址线断开故障、地址线短路故障、以及存储单元故障中任一故障时,显示当前故障。
9.一种诊断设备,其特征在于,所述诊断设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的集成电路的内存诊断程序,所述集成电路的内存诊断程序被所述处理器执行时实现如权利要求1-8任一项所述的集成电路的内存诊断方法的步骤。
10.一种存储介质,其特征在于,所述存储介质存储有集成电路的内存诊断程序,所述集成电路的内存诊断程序被处理器执行时实现如权利要求1-8任一项所述的集成电路的内存诊断方法的步骤。
CN202010289170.1A 2020-04-14 2020-04-14 一种集成电路的内存诊断方法、诊断设备及存储介质 Pending CN111562998A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010289170.1A CN111562998A (zh) 2020-04-14 2020-04-14 一种集成电路的内存诊断方法、诊断设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010289170.1A CN111562998A (zh) 2020-04-14 2020-04-14 一种集成电路的内存诊断方法、诊断设备及存储介质

Publications (1)

Publication Number Publication Date
CN111562998A true CN111562998A (zh) 2020-08-21

Family

ID=72074220

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010289170.1A Pending CN111562998A (zh) 2020-04-14 2020-04-14 一种集成电路的内存诊断方法、诊断设备及存储介质

Country Status (1)

Country Link
CN (1) CN111562998A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000536A (zh) * 2020-09-29 2020-11-27 鹏城实验室 一种内存检测方法、系统及相关设备
CN112822074A (zh) * 2021-01-11 2021-05-18 中国船舶重工集团公司第七0七研究所 一种单节点反射内存及反射内存网故障检测方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101197194A (zh) * 2007-02-27 2008-06-11 深圳市同洲电子股份有限公司 一种存储器检测方法
JP2008171287A (ja) * 2007-01-12 2008-07-24 Ricoh Co Ltd 情報機器、接続検査方法、プログラム及び記録媒体
JP2010210282A (ja) * 2009-03-06 2010-09-24 Videocon Global Ltd Tftアレイ・ビルトイン・セルフ検査装置と検査方法
CN103000226A (zh) * 2011-09-08 2013-03-27 施耐德电器工业公司 通过随机存取存储器芯片地址引脚检测缺陷的测试方法
CN103137212A (zh) * 2011-12-05 2013-06-05 北大方正集团有限公司 Sdram测试方法
CN110767130A (zh) * 2018-07-23 2020-02-07 三星电子株式会社 短路检测装置、短路检测电路和显示装置
CN112000536A (zh) * 2020-09-29 2020-11-27 鹏城实验室 一种内存检测方法、系统及相关设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008171287A (ja) * 2007-01-12 2008-07-24 Ricoh Co Ltd 情報機器、接続検査方法、プログラム及び記録媒体
CN101197194A (zh) * 2007-02-27 2008-06-11 深圳市同洲电子股份有限公司 一种存储器检测方法
JP2010210282A (ja) * 2009-03-06 2010-09-24 Videocon Global Ltd Tftアレイ・ビルトイン・セルフ検査装置と検査方法
CN103000226A (zh) * 2011-09-08 2013-03-27 施耐德电器工业公司 通过随机存取存储器芯片地址引脚检测缺陷的测试方法
CN103137212A (zh) * 2011-12-05 2013-06-05 北大方正集团有限公司 Sdram测试方法
CN110767130A (zh) * 2018-07-23 2020-02-07 三星电子株式会社 短路检测装置、短路检测电路和显示装置
CN112000536A (zh) * 2020-09-29 2020-11-27 鹏城实验室 一种内存检测方法、系统及相关设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000536A (zh) * 2020-09-29 2020-11-27 鹏城实验室 一种内存检测方法、系统及相关设备
CN112822074A (zh) * 2021-01-11 2021-05-18 中国船舶重工集团公司第七0七研究所 一种单节点反射内存及反射内存网故障检测方法

Similar Documents

Publication Publication Date Title
CN112331253B (zh) 一种芯片的测试方法、终端和存储介质
US6505317B1 (en) System and method for testing signal interconnections using built-in self test
US6055653A (en) Method and apparatus for testing gang memory modules
CN101692351B (zh) 存储器测试方法及装置
CN101236790A (zh) 集成有只读存储器的芯片及内建自测试系统及方法
CN104425040A (zh) 用于测试存储器的方法和系统
CN111562998A (zh) 一种集成电路的内存诊断方法、诊断设备及存储介质
CN102929755A (zh) 一种cpu模块地址和数据总线的故障检测方法
CN107451017B (zh) 一种针对双口存储器的可靠性测试方法及系统
CN115801540B (zh) 一种PCIe设备降级检测方法、装置、终端及存储介质
US12499959B2 (en) Testing parity and ECC logic using MBIST
CN109726057A (zh) 一种cpu安全系统并行总线故障实时动态检测方法
US20110231716A1 (en) Diagnosis flow for read-only memories
CN101853198B (zh) 地址总线的检测方法、设备和系统
US8671317B2 (en) Built-in self test circuit and designing apparatus
CN100446129C (zh) 一种内存故障测试的方法及系统
CN102591762A (zh) 一种自诊断plc存储芯片的方法、自诊断plc
EP3564691B1 (en) Test device, test method, and test program
JP4636989B2 (ja) 遅延解析装置、遅延解析方法、遅延解析プログラム、および記録媒体
CN115201720B (zh) 晶圆测试设备的接线检查方法及装置、晶圆测试设备及系统
CN113360402B (zh) 一种测试方法、电子设备、芯片和存储介质
CN103744752A (zh) 一种内存的在线故障检测方法和装置
CN109240904B (zh) Fru写入测试系统及方法
CN120596322B (zh) 故障注入测试方法、装置、计算机设备及存储介质
JPS58172562A (ja) プリント基板検査装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200821