您好、欢迎来到现金彩票网!
当前位置:PC蛋蛋 > 走步测试 >

存储器地址线测试方法

发布时间:2019-07-04 03:07 来源:未知 编辑:admin

  目前,单板上的CPU最小系统一般都包括CPU、FLASH和SDRAM等器件,CPU是单板的核心,用来执行单板软件指定的各项操作。FLASH是一种电可擦除的存储器,即使单板掉电,保存在其中的程序或数据也不会丢失。CPU可以方便地读出FLASH中的内容,但只有在特定的情况下才可以对其进行擦除和写入操作。SDRAM是一种动态的存储器,单板掉电以后,保存在其中的程序或数据就会丢失,CPU可以很方便地对SDRAM进行读写操作。这两种存储器本身的特点决定了CPU对FLASH中的数据读写较慢,而对SDRAM中的数据读写较快。所以一般都是将单板软件保存在FLASH中,单板上电进行必要的初始化以后,便将FLASH中的程序和数据搬移到SDRAM中来运行,这样可以保证单板的运行速度较快。SDRAM和FLASH在单板上的作用都是相当重要的,因此有必要对其数据线、地址线及单元进行全面的测试。

  对地址线开路故障和短路故障的诊断原理是一样的。大致流程如下BEGINIF读到数据和期望的数据一致报告地址线测试没有发现故障;ELSE将所有数据按写入顺序翻译成相对应的地址,得到期望响应矩阵T和实际响应矩阵V;FOR实际测试响应矩阵V的每一列ViIF Vi的每一个分量都固定为1报告第i条地址线的开路故障;ELSE IF Vi的每一个分量都固定为0报告第i条地址线的开路故障;ELSE IF在期望响应矩阵中找到第j列矢量Ti与第i列矢量Ti逻辑或运算的结果等于Vi报告第i条地址线和第j条地址线-支配型短路故障;ELSE IF在期望响应矩阵中找到第j列矢量Ti与第列矢量Ti逻辑与运算的结果等于Vi报告第i条地址线和第j条地址线-支配型短路故障;ELSE报告故障类型不可判断;END IFEND IFEND FOREND。

  现有技术一的缺点在运用“三步测试法”实现FLASH测试以后,在采用模拟故障的方法对实现的情况进行测试验证的过程中,发现测试程序并不能准确的定位FLASH地址线的故障所在,经过仔细分析,发现“三步测试法”的第三步无法准确定位FLASH地址线故障,下面针对“三步测试法”的第三步进行具体的分析。

  实际上现有的“三步测试法”的第三步的思路并没有错误,但具体的方法出现了问题。出问题的原因在于忽略了FLASH的特性,测试方法中把它当做RAM了,以为对某一个地址不擦除便可任意写入,而实际上FLASH是必须擦除后,才能正常写入的,即FLASH的写操作可以将为1的比特写成0,但不能将为0的比特写成1。

  通过分析发现,上面的表格(表三)并不准确,假设a2和a1为短路0-支配型故障,当往0010地址写入数据D2时,数据实际上是写入了0000地址,而非0010地址,此时如果读0010地址的内容,实际上读到的是0000地址的内容。同样往0100地址写入数据D3时也写入了0000地址,实际上读到的是0000地址的内容。因为FLASH的特性是可以将为1的比特写成0,但不能将为0的比特写成1,最终结果是0000地址中保存的内容为D2和D3相“与”的结果,同样1111中写入的内容也不是表中分析的那样。因而步骤三只能判断出地址线故障,但并不能判断出是哪一根(或哪几根)地址线故障。

  A)擦除FLASH全部存储空间;B)用“走步1”方法选取FLASH的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;C)重复步骤B,直到所有的地址线”测试;D)读取该FLASH第一个地址单元中的数据,根据数据中“0”的排列位置,确定相对应位置的地址线发生故障。

  本发明另提供一种FLASH存储器地址线测试方法,包括下列步骤A)擦除FLASH全部存储空间;B)用“走步0”方法选取FLASH的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;C)重复步骤B,直到所有的地址线”测试;D)读取该FLASH最后一个地址单元中的数据,根据数据中“0”的排列位置,确定相对应位置的地址线发生故障。

  本发明提供一种RAM存储器地址线测试方法,包括下列步骤A)将RAM存储器的第一地址单元写上全“1”;B)用“走步1”方法选取RAM的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;C)读取RAM存储器第一地址单元中的数据,并与上一次记录数据进行“逻辑与”操作,将操作结果保存起来(第一次读取时,没有“上一次记录数据”,直接将读到的数据保存起来即可);D)重复步骤B和步骤C,直到所有的地址线”的测试;E)根据最后结果中“0”的排列位置,确定相对应位置的地址线发生故障。

  B)用“走步0”方法选取RAM的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;C)读取RAM存储器最后一个地址单元中的数据,并与上一次记录数据进行“逻辑与”操作,将操作结果保存起来(第一次读取时,没有“上一次记录数据”,直接将读到的数据保存起来即可);D)重复步骤B和步骤C,直到所有的地址线”的测试;E)根据最后结果中“0”的排列位置,确定相对应位置的地址线发生故障。

  对于地址线”测试,如表四所示,以8bit的地址为例,首先假设只存在同一类连线-支配型,当出现这类故障时,程序在写入测试数据时会将测试数据写入地址为00000000的单元(当有多根地址线故障时,会多次写入,如果地址线正常则不会写入该地址单元),最后只需读取00000000地址中的值,根据哪些bit(比特位)为0就可以知道哪些地址线存在故障。表四中依次写完所有的测试数据以后,读到的00000000地址的内容为01001111。如表四所示,在地址线地址单元中的内容应该为11111111,而读到的结果为01001111,显示bit7、bit5、bit4变为0了,说明a7、a5和a4有问题。这样根据读到的数据就直观地知道哪根地址线有问题。

  (上表中加粗的数据表示有错误发生)由于FLASH与RAM的读写操作有些不同,在测试RAM的时候,首先要往00000000地址中写入全1,写入第一个测试数据以后,可以将00000000地址中的数据读出并记录下来,然后每写入一个数,就读出00000000地址的内容并与上一次记录数据进行“逻辑与”操作,将操作结果保存起来,最后根据结果中“0”的位置就可以知道哪根地址线有问题。如下表五所示,以8bit的地址为例,假设故障模式为a7恒为0,a5恒为1,每次读到的数据“逻辑与”的最后结果为01011111,通过这个结果就可以知道a7和a5有问题。

  (上表中加粗的数据表示有错误发生)如果地址线-支配型。这里读00000000地址时,读到的数据不一定是在00000000地址中的数据,但由于走步测试(包括“走步1”和“走步0”测试)过程中如果地址线故障,写入和读出就会是同一个地址,因此并不会影响测试结果,详细的情况可以参考下表六。

  对于地址线”测试,如下表七所示,以8bit的地址为例,首先假设只存在同一类连线-支配型,当出现这类故障时,程序在写入测试数据时会将测试数据写入地址为11111111的空间,最后只需读取11111111地址中的值,判断哪些bit为0就可以知道那些地址线存在此类故障。表七中写完所有的测试数据以后,11111111地址的内容为01001111,说明a7、a5和a4有问题。

  实际上对于地址线同时存在各种故障的问题,采取上述两种方法都能定位出故障连线的准确位置,只是实际写入地址可能不是00000000或11111111,但还是只需要读这两个地址的内容进行判断即可,因为读取这两个地址时,读到的实际上是写入的地址中的值。

  根据上面的分析,本发明步骤三(针对于FLASH存储器)的流程为BEGIN擦除FLASH空间;用“走步1”的方式向各地址中写入测试数据(测试数据与需要测试的地址线);IF FLASH中的0地址空间不为全1;报告地址线测试发现固定电平(可能固定为低也可能固定为高,但知道哪根地址线有问题了,故障就好定位了)的故障,用二进制方式打印该地址空间的内容;ELSE报告地址线”测试未发现固定电平的故障;END IF用“走步0”的方式向各地址中写入测试数据(测试数据与需要测试的地址线);IF FLASH中的最后地址空间不为全1;

  报告地址线测试发现固定电平(可能固定为高也可能固定为低,但知道哪根地址线有问题了,故障就好定位了)的故障,用二进制方式打印该地址空间的内容;ELSE报告地址线”测试未发现固定电平的故障;END IFEND。

  注上面的过程是每写一个数,紧接着就读一次存储器的0地址空间或1地址空间,直到所有的地址线都完成走步测试。根据上述流程对装备测试程序进行修改后,在单板上模拟各种地址线故障,都可以根据上报的数据准确定位哪根地址线故障。

  实际操作中,关于FLASH外围互连测试时需要根据系统中FLASH的具体应用来对待,需要考虑FLASH的数据总线宽度和地址空间。如某系统中,使用了两片数据宽度为16bit的FLASH并联,数据总线FFFFF。CPU地址总线,实际用到的地址线],对应FLASH的A

  ,共21根地址线M Bytes。进行地址线”测试时,写数据的起始地址为0xFD000004,读数据的地址为0xFD000000。进行地址线”测试时,写数据的起始地址为0xFD7FFFF8,读数据的地址为0xFD7FFFFC。测试的起始地址线根地址线。判断哪些地址出错的根据就是看0XFD000000和0XFD7FFFFC中读出的32位数据哪些bit为数据“0”。

  本发明方法在实际使用时,若存储器数据线的数量少于地址线,就需要将地址线分批次进行测试,使每次测试的地址线的数量小于等于数据线M Bytes FLASH,数据线bit,数据线的数量比地址线少,这样就要对地址线分两次进行测试了,首先用上面所描述的方法测试低16位地址线,然后再用同样的方法测试高位的地址线,这样就可以根据读到的数据方便地将故障定位到哪根地址线了。

  说明,如上表所示,共需2次测试,经过第一次测试,在0000000地地址单元读到的内容为1,其中d4、d5、d7、d15为0,从而可以判断与其对应的a4、a5、a7、a15有故障。经过第二次测试,在0000000地地址单元读到的内容为1,其中d2、d4为0,从而可以判断与其对应的a18(16+2)、a20(16+4)有故障。这样经过两次测试,即可准确定位地址线的故障。地址线”的方法与这个处理方式相同,在此不再赘述。

  1.一种FLASH存储器地址线测试方法,包括下列步骤A)擦除FLASH全部存储空间;B)用“走步1”方法选取FLASH的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;C)重复步骤B,直到所有的地址线”测试;D)读取该FLASH第一个地址单元中的数据,根据数据中“0”的排列位置,确定相对应位置的地址线所述的FLASH存储器地址线测试方法,其特征在于若数据线的数量比地址线少,则将地址线分批次进行测试,使每次测试的地址线所述的FLASH存储器地址线测试方法,其特征在于所述的地址单元的大小根据存储器的数据线.一种FLASH存储器地址线测试方法,包括下列步骤A)擦除FLASH全部存储空间;B)用“走步0”方法选取FLASH的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;C)重复步骤B,直到所有的地址线”测试;D)读取该FLASH最后一个地址单元中的数据,根据数据中“0”的排列位置,确定相对应位置的地址线所述的FLASH存储器地址线测试方法,其特征在于若数据线的数量比地址线少,则将地址线分批次进行测试,使每次测试的地址线所述的FLASH存储器地址线测试方法,其特征在于所述的地址单元的大小根据存储器的数据线.一种RAM存储器地址线测试方法,包括下列步骤A)将RAM存储器的第一地址单元写上全“1”;B)用“走步1”方法选取RAM的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;C)读取RAM存储器第一地址单元中的数据,并与上一次记录数据进行“逻辑与”操作,将操作结果保存起来;D)重复步骤B和步骤C,直到所有的地址线”的测试;E)根据最后结果中“0”的排列位置,确定相对应位置的地址线所述的RAM存储器地址线测试方法,其特征在于若数据线的数量比地址线少,则将地址线分批次进行测试,使每次测试的地址线所述的RAM存储器地址线测试方法,其特征在于所述的地址单元的大小根据存储器的数据线.一种RAM存储器地址线测试方法,包括下列步骤A)将RAM存储器的最后一个地址单元写上全“1”;B)用“走步0”方法选取RAM的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;C)读取RAM存储器最后一个地址单元中的数据,并与上一次记录数据进行“逻辑与”操作,将操作结果保存起来;D)重复步骤B和步骤C,直到所有的地址线”的测试;E)根据最后结果中“0”的排列位置,确定相对应位置的地址线所述的RAM存储器地址线测试方法,其特征在于若数据线的数量比地址线少,则将地址线分批次进行测试,使每次测试的地址线所述的RAM存储器地址线测试方法,其特征在于所述的地址单元的大小根据存储器的数据线位数确定。

  本发明有关于存储器地址线的测试方法。其主要是用“走步1”或“走步0”方法选取存储器的地址单元,在地址单元中写入测试数据,所述测试数据与需要测试的地址线”;对所有地址线进行走步测试,读取存储器第一地址单元和最后一个地址单元中的数据,根据数据中的“0”比特位来确定相应的地址线故障。

http://dietamujer.com/zoubuceshi/187.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有