您当前的位置:五五电子网电子知识单片机-工控设备嵌入式系统-技术嵌入式系统中动态随机存储器性能的研究 正文
嵌入式系统中动态随机存储器性能的研究

嵌入式系统中动态随机存储器性能的研究

点击数:7590 次   录入时间:03-04 12:00:35   整理:http://www.55dianzi.com   嵌入式系统-技术

  内容摘要:动态随机存储器是嵌入式系统的一个重要组成部分,而动态随机存储器故障是嵌入式系统故障的一个主要原因之一。在此从动态随机存储器的结构和失效模型出发,有针对地提出了用于检测性能的数据和读写方式,实验证明通过提出的检测方法能够有效地找出潜在的存储器故障,从而能够为嵌入式系统设计人员提供改善系统性能的方法和途径。

  关键词:嵌入式系统;动态随机存储器;故障检测;失效模型

  引言

  随着超大规模集成电路的制造工艺的进步,在单一芯片上动态随机存储器实现了更高密度的比特位,使得计算机系统在计算速度迅猛发展的同时,内存容量极大的扩大。伴随着集成度的提高,存储器单元呈现失效的可能性随之增大,失效的形式和原因也趋于更加复杂化。存储器测试的目的是确保其每个单元能够存储数据并且惟一的寻址、读、写。存储器的测试面临两方面的要求:较高失效类型覆盖率,尽可能检测出潜在的存储器故障;较少的存储器操作,以便缩短检测时间。因此存储器测试应能够在一定的测试时间内得到可能的最佳故障覆盖率。由于对存储器进行物理检测是不可能的,可行的办法是将待测存储器的访存结果与认定无故障的存储器的访存结果做比较。

  1 DRAM的原理及失效模型

  动态内存的结构和ROM及SRAM有较大的不同。图1是动态内存的总体结构。内存单元按照行、列组成阵列。地址首先分为行地址和列地址,行地址经过译码器,选中一行内存单元。列地址选择数据输出到数据输出端。

动态内存的总体结构图


    图2是内存单元的结构图。动态内存使用一个晶体管和一个电容来存储一位数据。由于电容量很小,数据读出消耗电容上存储的电荷,读取以后需要重新对电容充电。并且由于电容自身的漏电,动态内存需要定期刷新。

内存单元的结构图


    图3是读写控制电路示意图。图中显示了读取1位数据的过程。假设这个单元存储的数据为“1”初始状态(图3(a)),电容电压为V,数据线D和电压均为0.5 V,T1,T2,T3均截止。首先,T3导通,电容上的电荷使数据线D上电压为0.5 V+a。放大器对信号放大,使得数据线D上电压为V,上电压为0,读出数据“1”(图3(b)),同时对电容充电,电容电压为V(图3(c))。然后T3截止,T1,T2导通,数据线D,上电压恢复为0.5V。电路恢复初始状态(图3(d))。

读写控制电路示意图


    假设存储器实效仅仅被单元状态的跳变所激活,即不考虑不改变状态的写操作时出现的失效。存储器的失效模型可以表述为如下:
    (1)粘滞实效(Stuck-at Faults,SF)。一个或多个存储器单元固定为s,s∈(0,1),不因对该单元的读写而发生状态的变化。
    (2)组合实效(Coupling Faults,CF)。存储器某些位的跳变导致其他位的逻辑值发生非预期的变化。组合失效的产生归咎于单元物理上毗邻所产生的分布电容或者是单元间的电流泄漏。2个存储单元之间的组合失效称双组合实效。例如:对于单元j的一个0→1或是1→0的写操作将会改变i单元的内容,使之状态翻转。但是反之i单元的状态改变并不一定也会对j产生影响。
    (3)地址译码故障(Address Decoder Faults,AF)。有4种情况:某地址不能访问任何单元;某单元无法被任何地址访问;某地址可以同时访问多个单元;某单元可被多个地址访问到。



www.55dianzi.com

  2 测试用数据

  由前节讨论可知,动态内存除了内存单元,还有地址译码器,选择器,控制器,放大器等部件。为此针对不同的部件,设计了不同的数据和读写方式来进行测试。

  2.1 普通数据

  普通数据就是全“0”或者全“1”。写入全“0”或者全“1”的数据,然后读取校验,来验证内存单元是否正常工作。

  2.2 棋盘数据

  图4表示了棋盘数据。在内存单阵列中写入如国际象棋棋盘一样的数据。由于与每一位数据相邻的数据都不一样,棋盘数据可以用来检测内存单元间的泄漏。

棋盘数据图


2.3 行带状数据
    图5表示了行带状数据。采用行带状数据可以检测Word线之间的泄漏。

行带状数据图


2.4 列带状数据
    图6表示了列带状数据,用来检测Bit线(数据线)之间的泄漏。

列带状数据图

  2.5 移位数据

  读取内存数据时,Word线选中一行内存单元,数据还要通过选择器,经过列地址选择,到达数据线。使用移位数据,使得每次只有一个数据引脚为1,其余都为0,检测相互是否有影响。



www.55dianzi.com

  2.6 Waltz数据

  前面介绍了使用行带状数据检测Word线之间的泄漏,为了检测相隔行的微弱的影响,可以使用Waltz数据。如图7所示。

Waltz数据图



3 测试用读写方式
    为了检测内存潜在的问题,除了设计一些测试用的数据,还设计了一些读写方式,和数据相结合来检测。
3.1 MSCAN
    MSAN读写方式是按地址递增顺序,首先写入0,然后仍然按照此顺序读出校验。MSCAN用来检测内存单元。
3.2 MARCH
    MARCH读写方式的检测对象是地址译码器。如果地址译码器有问题,就会产生多重选择的问题,即同一个地址对应多个内存单元,或者多个地址对应同一个内存单元。可以采用如下的读写方式来检测这种问题。如图8,首先顺序写入“0”,然后顺序校验,校验一个数据后立即将数据改为“1”,然后逆序校验,校验后立即将数据改为“0”。

yuu

  3.3 MASEST

  MASEST读写方式的检测对象也是地址译码器。不过侧重于地址译码器的翻转噪声。按照图8中的顺序写入行带状数据,此顺序的目的是让地址译码器译码每次输出都尽可能多的翻转。然后在按此顺序校验,校验同时把数据翻转。最后顺序读取数据校验。



www.55dianzi.com

  3.4 CMD

  CMD读写方式检测内存单元间的相互干涉。如图9,首先写入棋盘数据。然后按照如图9顺序校验。

125



www.55dianzi.com

  3.5 ROW/COL组合

  ROW/COL组合测试的对象是内存控制电路。内存单元阵列分为行和列,某一个行地址有效时,对某一个单元进行读/写组合的操作,由于内存单元需要定时刷新,这种操作可能对刷新造成影响。ROW/COL组合读取方式固定某一行,对一个单元进行读/写组合操作,验证刷新的影响。然后对同一行的下一列进行相同的操作。

[1] [2]  下一页


本文关键字:存储器  嵌入式  动态  嵌入式系统-技术单片机-工控设备 - 嵌入式系统-技术