CN100517254C - 数据线测试方法 - Google Patents
数据线测试方法 Download PDFInfo
- Publication number
- CN100517254C CN100517254C CNB200710079516XA CN200710079516A CN100517254C CN 100517254 C CN100517254 C CN 100517254C CN B200710079516X A CNB200710079516X A CN B200710079516XA CN 200710079516 A CN200710079516 A CN 200710079516A CN 100517254 C CN100517254 C CN 100517254C
- Authority
- CN
- China
- Prior art keywords
- data
- reading
- test
- address
- datawire
- 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.)
- Active
Links
Images
Abstract
本发明提供了一种数据线测试方法,其包括以下步骤:步骤S102,从被测器件的地址空间中任意选择不同的四个地址,同时产生不同的两个测试数据;步骤S104,分别将两个测试数据中的第一数据和第二数据写入四个地址中的第一地址和第二地址中;步骤S106,读出第一地址中的数据并存储为第一读取数据,以及读出第二地址中的数据并存储为第二读取数据;步骤S108,判断第一读取数据是否与第一数据相同,以及第二读取数据是否与第二数据相同;以及步骤S110,根据判断结果,执行相应的操作。本发明测试逻辑简单,测试效率高,适用于各种类型的RAM和RAM、以及带有总线接口的各类功能器件和FPGA等。
Description
技术领域
本发明涉及电子测试领域,更具体的,涉及一种数据线测试方法。
背景技术
一般,嵌入式系统由用于实现不同功能的单板组成,这些单板上基本上包括存储器、功能器件。这些存储器、功能器件又往往包括总线接口,总线有数据总线、地址总线、控制总线,单板上的CPU通过这些总线来访问以及控制这些器件。
通常情况下,系统的运行程序一般存放在存储器中,由存储器与功能器件完成单板的数据存储、业务功能等。无论是存储器还是功能器件,都是嵌入式系统中的重要部件,在交付使用前需要对这些部件进行测试,数据线测试就是其中的一部分。
目前,在业界内普遍采用的数据线测试方法是“走步1”法和“走步0”法、或者两种方法的结合。
在“走步1”法中,假设数据线的个数为n,则在进行测试时,依次向不同的地址A0、A1、A2、...、An-2、和An-1中写入特定数据0b00...001、0b00...010、0b00...100、0b01...000、和0b10...00,其中,特定数据的产生算法为:写入地址Am的特定数据为0x01左移m位,位宽为n,然后依次从各个地址中读出数据,看是否与先前写入的特定数据一致,如果不一致,则说明数据线存在故障。
在“走步0”法中,假设数据线的个数为n,则在进行测试时,依次向不同的地址A0、A1、A2、...、An-2、和An-1中写入特定数据0b11...110、0b11...101、0b11...011、0b10...111、和0b01...111,其中,特定数据的产生算法为:写入地址Am的特定数据为0x01左移m位然后按位取反,位宽为n,然后依次从各个地址中读出数据,看是否与先前写入的特定数据一致,如果不一致,则说明数据线存在故障。
从理论上来说,“走步1”法和“走步0”法是没有区别的。但两种方法的测试都不一定全面,在实际应用中,可能会出现有的故障“走步1”法无法测试出来而“走步0”法能测试来的情况,比如故障数据线的对地电阻为30欧姆的临界状态时的软故障,反之也是有可能的。因此,为了保证测试质量,在进行测试时,最好两种方法都采用。
在华为技术有限公司提出的题为“动态存储器功能测试方法”的第CN01140560号中国专利中公开了一种动态存储器的功能测试方法,其对存储器数据线的测试就是采用的“走步1”法和“走步0”法相结合的方法。
然而,由于利用“走步1”法和“走步0”法对数据线进行测试需要同时使用两种方法,而且测试逻辑比较繁琐,所以需要进行的读写操作很多。
因而,急需一种方法来解决上述问题。
发明内容
为了解决上述问题,本发明提出了一种数据线测试方法,其基本原理是:在一个地址中写入第一个‘0’、‘1’交替的测试数据,这样,数据线的每一位获得了一个‘1’或者‘0’赋值。然后,测试数据的每一位翻转,即将原来为‘0’的位翻转为‘1’,将原来为‘1’的位翻转为‘0’,再将翻转后的数据写入另一个地址中。之后,读出两个地址的数据进行判断。如果两个地址读出的数据与写入的数据一致,则测试通过。如果不一致,则查找读出的数据的哪一位不一致,则定位该位对应的数据线存在故障。这个测试过程需要进行两次,来完成某一位数据线的由‘0’到‘1’和由‘1’到‘0’这两次翻转测试。因而,本发明的方法比上述方法的效率更高,并且操作简单。
本发明提供了一种数据线测试方法,其可以包括以下步骤:步骤S102,从被测器件的地址空间中任意选择不同的四个地址,同时产生不同的两个测试数据;步骤S104,分别将两个测试数据中的第一数据和第二数据写入四个地址中的第一地址和第二地址中;步骤S106,读出第一地址中的数据并存储为第一读取数据,以及读出第二地址中的数据并存储为第二读取数据;步骤S108,判断第一读取数据是否与第一数据相同,以及第二读取数据是否与第二数据相同;以及步骤S110,根据判断结果,执行相应的操作。
根据本发明,当在步骤S108中,判断结果为第一读取数据与第一数据相同,并且第二读取数据与第二数据相同时,步骤S110可以包括以下步骤:步骤A,分别将第二数据和第一数据写入四个地址中的第三地址和第四地址中;步骤B,读出第三地址中的数据并存储为第三读取数据,以及读出第四地址中的数据并存储为第四读取数据;步骤C,判断第三读取数据是否与第二数据相同,以及第四读取数据是否与第一数据相同;以及步骤D,根据判断结果,进行相应处理。
其中,当在步骤C中,判断结果为第三读取数据与第二数据相同,并且第四读取数据与第一数据相同时,步骤D中的相应处理可以为:确认测试的结果为通过。
可选地,当在步骤C中,判断结果为第三读取数据与第二数据不相同,和/或第四读取数据与第一数据不相同时,步骤D中的相应处理可以为:确认测试的结果为失败;查找所读出的第三读取数据和/或第四读取数据中的不一致的数据位;以及根据所找到的数据位,确定数据位对应的数据线存在故障。
另外,步骤D还可以包括以下步骤:存储或上报测试的结果。
根据本发明,当在步骤S108中,判断结果为第一读取数据与第一数据不相同、和/或第二读取数据与第二数据不相同时,步骤S110可以包括以下步骤:确认测试的结果为失败;查找所读出的第一读取数据和/或第二读取数据中的不一致的数据位;以及根据所找到的数据位,确定数据位对应的数据线存在故障。
根据本发明,步骤S110还可以包括以下步骤:存储或上报测试的结果。
根据本发明,四个地址可以为连续或不连续的,第一数据可以为“0”、“1”交替的数据,其位数可以为被测数据线的数目,以及第二数据可以为第一数据按位取反所得到的数据,其位数可以为被测数据线的数目。
本发明的方法还适用于各种类型的RAM和RAM、以及带有总线接口的各类功能器件和FPGA等。
本发明的优点在于测试效率高,同时又没有损失测试质量。“走步1”法的本质在于依次将数据线的每一位由‘0’变为‘1’进行测试,“走步0”法的本质在于依次将数据线的每一位由‘1’变为‘0’进行测试,而本发明的方法完成了将数据线的每一位由‘0’变为‘1’和由‘1’变为‘0’的全部测试。因此,在测试质量方面,本发明的方法与“走步1”法和“走步0”法结合的测试质量相同。在效率方面,“走步1”法和“走步0”法结合测试需要进行4×n次读写,n为数据线的个数,而本发明的方法的读写次数是固定的,只有8次,与数据线的个数无关,极大的提高了测试效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是根据本发明的数据线测试方法的流程图;
图2是根据本发明的实施例的数据线快速测试方法的流程图;以及
图3是以功能单板为例的数据线测试方法的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明的数据线测试方法的基本原理是:在一个地址中写入第一个‘0’、‘1’交替的测试数据,这样,数据线的每一位获得了一个‘1’或者‘0’赋值。然后,测试数据的每一位翻转,即将原来为‘0’的位翻转为‘1’,将原来为‘1’的位翻转为‘0’,再将翻转后的数据写入另一个地址中。之后,读出两个地址的数据进行判断。如果两个地址读出的数据与写入的数据一致,则测试通过。如果不一致,则查找读出的数据的哪一位不一致,则定位该位对应的数据线存在故障。这个测试过程需要进行两次,来完成某一位数据线的由‘0’到‘1’和由‘1’到‘0’这两次翻转测试。
图1是根据本发明的数据线测试方法的流程图。如图1所示,该方法包括以下步骤:
步骤S102,从被测器件的地址空间中任意选择不同的四个地址,同时产生不同的两个测试数据;
步骤S104,分别将两个测试数据中的第一数据和第二数据写入四个地址中的第一地址和第二地址中;
步骤S106,读出第一地址中的数据并存储为第一读取数据,以及读出第二地址中的数据并存储为第二读取数据;
步骤S108,判断第一读取数据是否与第一数据相同,以及第二读取数据是否与第二数据相同;以及
步骤S110,根据判断结果,执行相应的操作。
当在步骤S108中,判断结果为第一读取数据与第一数据相同,并且第二读取数据与第二数据相同时,步骤S110包括以下步骤:步骤A,分别将第二数据和第一数据写入四个地址中的第三地址和第四地址中;步骤B,读出第三地址中的数据并存储为第三读取数据,以及读出第四地址中的数据并存储为第四读取数据;步骤C,判断第三读取数据是否与第二数据相同,以及第四读取数据是否与第一数据相同;以及步骤D,根据判断结果,进行相应处理。
其中,当在步骤C中,判断结果为第三读取数据与第二数据相同,并且第四读取数据与第一数据相同时,步骤D中的相应处理为:确认测试的结果为通过。
可选地,当在步骤C中,判断结果为第三读取数据与第二数据不相同,和/或第四读取数据与第一数据不相同时,步骤D中的相应处理为:确认测试的结果为失败;查找所读出的第三读取数据和/或第四读取数据中的不一致的数据位;以及根据所找到的数据位,确定数据位对应的数据线存在故障。
另外,步骤D还包括以下步骤:存储或上报测试的结果。
当在步骤S108中,判断结果为第一读取数据与第一数据不相同、和/或第二读取数据与第二数据不相同时,步骤S110包括以下步骤:确认测试的结果为失败;查找所读出的第一读取数据和/或第二读取数据中的不一致的数据位;以及根据所找到的数据位,确定数据位对应的数据线存在故障。
根据本发明,步骤S110还包括以下步骤:存储或上报测试的结果。
根据本发明,四个地址为连续或不连续的,第一数据为“0”、“1”交替的数据,其位数为被测数据线的数目,以及第二数据为第一数据按位取反所得到的数据,其位数为被测数据线的数目。
通过上述步骤就完成了数据线测试的整个过程。
图2是根据本发明的实施例的数据线快速测试方法的流程图。如图2所示,假设被测期间的数据线的个数为n,其包括以下步骤:
步骤S202:选取4个不同的任意地址:A0(第一地址)、A1(第二地址)、A2(第三地址)、A3(第四地址),这4个地址应该位于CPU小系统中被测器件所在的地址空间中,不必是连续的,同时产生两个测试数据,其中,测试数据1为0b0101...0101,其位宽为被测器件的数据线的个数,而测试数据2为0b1010...1010(即测试数据1按位取反),其位宽与测试数据1一致,并且向地址A0中写入测试数据1即0b0101...0101,向地址A1中写入测试数据2,即,0b1010...1010;
步骤S204:读取A0中的数据放入变量a,读取A1中的数据放入变量b,如果a等于测试数据1即0b0101...0101且b等于测试数据2即0b1010...1010,则跳到步骤S206执行,否则跳到步骤S212执行;
步骤S206:向地址A2中写入测试数据2即0b1010...1010,向地址A3中写入测试数据1即0b0101...0101;
步骤S208:读取A2中的数据放入变量a,读取A3中的数据放入变量b,如果a等于测试数据2(即,0b1010...1010)且b等于测试数据1(即,0b0101...0101),则跳到步骤S210执行,否则跳到步骤S212执行;
步骤S210:测试通过,存储或上报测试结果信息,执行步骤S214;以及
步骤S212:测试失败,查找读出的数据的哪一位不一致,定位该位对应的数据线存在故障,存储或上报测试结果信息。
这样,测试结束。通过上述步骤就完成了数据线测试过程。
图3是以功能单板为例的数据线测试方法的流程图。如图3所示,这块功能单板的CPU是MP860,小系统中包好了1M字节的FLASH和16M字节的SDRAM,SDRAM的地址范围为0x000000-0xFFFFFF,其数据位宽为32,该过程包括以下步骤:
步骤S302:选取4个地址0x700000(第一地址)、0x700004(第二地址)、0x700008(第三地址)、0x70000C(第四地址),两个测试数据分别为0x55555555和0xAAAAAAAA(0x55555555的取反),并且向地址0x700000中写入0x55555555,向地址0x700004中写入数据0xAAAAAAAA。
步骤S304:读取地址0x700000中的数据看是否等于0x55555555,读取地址0x700004中的数据看是否等于0xAAAAAAAA,如果两个都相等,则跳到步骤S306。否则,数据线测试失败,记录失败信息,测试结束。
步骤S306:向地址0x700008中写入0xAAAAAAAA,向地址0x70000C中写入数据0x55555555。
步骤S308:读取地址0x700008中的数据看是否等于0xAAAAAAAA,读取地址0x70000C中的数据看是否等于0x55555555,如果两个都相等,则数据线测试通过。否则,数据线测试失败,记录失败信息。测试结束。
综上所述,本发明测试逻辑简单,测试效率高,适用于各种类型的RAM和RAM、以及带有总线接口的各类功能器件和FPGA等。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种数据线测试方法,其特征在于,包括以下步骤:
步骤S102,从被测器件的地址空间中任意选择不同的四个地址,同时产生不同的两个测试数据;
步骤S104,分别将所述两个测试数据中的第一数据和第二数据写入所述四个地址中的第一地址和第二地址中;
步骤S106,读出所述第一地址中的数据并存储为第一读取数据,以及读出所述第二地址中的数据并存储为第二读取数据;
步骤S108,判断所述第一读取数据是否与所述第一数据相同,以及所述第二读取数据是否与所述第二数据相同;以及
步骤S110,根据判断结果,执行相应的操作;
其中,所述第一数据为“0”、“1”交替的数据,其位数为所述被测数据线的数目,所述第二数据为所述第一数据按位取反所得到的数据,其位数为所述被测数据线的数目。
2.根据权利要求1所述的数据线测试方法,其特征在于,当在所述步骤S108中,判断结果为所述第一读取数据与所述第一数据相同,并且所述第二读取数据与所述第二数据相同时,所述步骤S110包括以下步骤:
步骤A,分别将所述第二数据和所述第一数据写入所述四个地址中的第三地址和第四地址中;
步骤B,读出所述第三地址中的数据并存储为第三读取数据,以及读出所述第四地址中的数据并存储为第四读取数据;
步骤C,判断所述第三读取数据是否与所述第二数据相同,以及所述第四读取数据是否与所述第一数据相同;以及
步骤D,根据判断结果,进行相应处理。
3.根据权利要求2所述的数据线测试方法,其特征在于,当在所述步骤C中,判断结果为所述第三读取数据与所述第二数据相同,并且所述第四读取数据与所述第一数据相同时,所述步骤D中的相应处理为:
确认测试的结果为通过。
4.根据权利要求2所述的数据线测试方法,其特征在于,当在所述步骤C中,判断结果为所述第三读取数据与所述第二数据不相同,和/或所述第四读取数据与所述第一数据不相同时,所述步骤D中的相应处理为:
确认测试的结果为失败;
查找所读出的所述第三读取数据和/或所述第四读取数据中的不一致的数据位;以及
根据所找到的数据位,确定所述数据位对应的数据线存在故障。
5.根据权利要求3或4所述的数据线测试方法,其特征在于,所述步骤D还包括以下步骤:
存储或上报所述测试的结果。
6.根据权利要求1所述的数据线测试方法,其特征在于,当在所述步骤S108中,判断结果为所述第一读取数据与所述第一数据不相同、和/或所述第二读取数据与所述第二数据不相同时,所述步骤S110包括以下步骤:
确认测试的结果为失败;
查找所读出的所述第一读取数据和/或所述第二读取数据中的不一致的数据位;以及
根据所找到的数据位,确定所述数据位对应的数据线存在故障。
7.根据权利要求6所述的数据线测试方法,其特征在于,所述步骤S110还包括以下步骤:
存储或上报所述测试的结果。
8. 根据权利要求1所述的数据线测试方法,其特征在于,所述四个地址为连续或不连续的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200710079516XA CN100517254C (zh) | 2007-02-16 | 2007-02-16 | 数据线测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200710079516XA CN100517254C (zh) | 2007-02-16 | 2007-02-16 | 数据线测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101140539A CN101140539A (zh) | 2008-03-12 |
CN100517254C true CN100517254C (zh) | 2009-07-22 |
Family
ID=39192498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200710079516XA Active CN100517254C (zh) | 2007-02-16 | 2007-02-16 | 数据线测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100517254C (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101625651B (zh) * | 2008-07-09 | 2011-09-21 | 中兴通讯股份有限公司 | 数据线检测方法/装置、地址线检测方法/装置 |
US8644098B2 (en) | 2011-03-28 | 2014-02-04 | Peiyuan Liu | Dynamic random access memory address line test technique |
CN105097041A (zh) * | 2014-05-05 | 2015-11-25 | 华邦电子股份有限公司 | 存储器装置及其诊断方法 |
CN104459386B (zh) * | 2014-11-24 | 2017-11-03 | 东莞理工学院 | 一种usb数据线测试仪 |
CN105761759A (zh) * | 2016-02-02 | 2016-07-13 | 深圳市江波龙电子有限公司 | 随机存取存储器的测试方法及装置 |
CN109658898B (zh) * | 2019-02-27 | 2021-12-17 | 惠科股份有限公司 | 防止读取数据出错的电路、方法及显示装置 |
CN111736878B (zh) * | 2020-08-10 | 2020-12-08 | 广州汽车集团股份有限公司 | 一种对cpu连接ddr芯片的数据线异常进行定位的方法及系统 |
-
2007
- 2007-02-16 CN CNB200710079516XA patent/CN100517254C/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101140539A (zh) | 2008-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100517254C (zh) | 数据线测试方法 | |
CA1315886C (en) | Memory testing system | |
US7454671B2 (en) | Memory device testing system and method having real time redundancy repair analysis | |
US20130019130A1 (en) | Testing electronic memories based on fault and test algorithm periodicity | |
CN101853301A (zh) | 正则表达式匹配的方法和系统 | |
CN108039190B (zh) | 一种测试方法及装置 | |
CN102486938B (zh) | 一种快速检测存储器的方法及装置 | |
CN104813401A (zh) | 用于动态随机存取存储器的差分向量存储 | |
US20040088614A1 (en) | Management system for defective memory | |
CN111078462B (zh) | 数据校验方法及电路 | |
US20080235540A1 (en) | Test apparatus and electronic device | |
CN102339648B (zh) | 一种检错/纠错校验模块的检测方法及装置 | |
CN101576838A (zh) | 一种检测内存的方法和装置 | |
CN100458717C (zh) | 测试和/或运行存储器的方法以及带有该存储器的装置 | |
US7124336B2 (en) | Method for the defect analysis of memory modules | |
CN105354107A (zh) | NOR Flash的数据传输方法及系统 | |
CN103177768B (zh) | 一种存储器的bist地址扫描电路及其扫描方法 | |
CN112151103B (zh) | 基于March算法的DRAM故障检测方法和装置 | |
CN112102875B (zh) | Lpddr测试方法、装置、可读存储介质及电子设备 | |
CN110648715B (zh) | 一种低电压sram写半选择故障的测试方法 | |
JP4704131B2 (ja) | 試験装置、及び試験方法 | |
US9361180B2 (en) | Storing data by an ECC memory | |
CN116913364B (zh) | 闪存读干扰测试方法和系统、电子设备、存储介质 | |
CN103793333A (zh) | 非易失性存储器加密的方法和装置以及非易失性存储器 | |
CN112420117A (zh) | 测试sram的方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |