历史上的今天
返回首页

历史上的今天

今天是:2025年02月19日(星期三)

正在发生

2018年02月19日 | 嵌入式系统中动态随机存储器性能的研究

2018-02-19 来源:eefocus

  引言

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

  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种情况:某地址不能访问任何单元;某单元无法被任何地址访问;某地址可以同时访问多个单元;某单元可被多个地址访问到。

  2 测试用数据

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

  2.1 普通数据

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


  2.2 棋盘数据

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

棋盘数据图


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

行带状数据图


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

列带状数据图

  2.5 移位数据

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

  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中的顺序写入行带状数据,此顺序的目的是让地址译码器译码每次输出都尽可能多的翻转。然后在按此顺序校验,校验同时把数据翻转。最后顺序读取数据校验。

  3.4 CMD

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

125

  3.5 ROW/COL组合

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

  4 测试系统


  上面讨论了用于测试内存的数据和读取方式。在实际组成的系统中,针对特定的测试对象,两者总是结合使用的。下面的表1列出了本测试系统测试的项目和相对应使用的数据和读取方式。

56


    前节讨论的数据和读取方式的时候,都是基于动态内存的实际结构,从内存单元矩阵行地址,列地址来分析的。实际应用过程中,内存控制器总是把内存单元矩阵映射成线性连续空间的。不同的芯片组会给出不同的映射方法。图10是Intel BX 440芯片组的内存行列地址映射(128 MB)。本测试系统测试的时候需要了解硬件的结构,才能有效的找出内存潜在的缺陷。

567


    测试系统基于嵌入式Linux操作系统,采用命令行方式运行,所有的输入采用配置文件来设定。下面给出了一个配置文件的例子:
    l.jpg?imageView2/2/w/550
    4656
    在正常和DRAM系统有故障的嵌入式系统下面分别得到了如图11的检测结果,从实验中可以发现有故障的系统在测试过程中某些测试项目无法通过,根据具体的情况就可以大致判断出故障的原因,这样就给系统设计者指明了改善系统性能的方向。

565

  5 结语

  本文研究从动态内存的失效模型出发,针对不同的部件可能发生的问题,设计了检测用的数据和读取方式,将它们组合起来进行测试,可以更有效地检测动态内存中潜在的缺陷,具有高的失效类型的覆盖率。同时,动态内存测试作为嵌入式Linux测试系统的一个子系统得到了国际计算机系统制造商富士通公司的认可。


推荐阅读

史海拾趣

DBM Optix公司的发展小趣事

在竞争激烈的电子行业中,DBM Optix深知只有不断创新才能保持领先地位。因此,公司始终将研发作为核心竞争力之一,持续投入大量资金用于新技术、新产品的开发。通过与高校、研究机构等合作,DBM Optix不断引入新技术、新材料,并将其应用于产品中,从而不断提升产品的性能和品质。这些创新举措使得DBM Optix在光学通信领域始终保持领先地位。

HELUKABEL公司的发展小趣事

在发展过程中,DBM Optix也面临过不少挑战和危机。例如,某次全球供应链紧张导致公司原材料供应受到影响,生产进度一度受阻。面对这一挑战,DBM Optix迅速调整采购策略,积极寻找新的供应商,并加强与现有供应商的合作。同时,公司还加强了内部管理,优化生产流程,提高生产效率。这些努力使得DBM Optix成功度过了危机,并继续保持良好的发展势头。

德芯半导体(Doeshare)公司的发展小趣事

作为一家有社会责任感的企业,德芯半导体始终关注社会发展和环境保护。公司积极参与社会公益活动,为当地社区提供力所能及的帮助和支持。同时,公司还注重环保和可持续发展,通过采用环保材料和工艺、推广绿色产品等方式,为保护环境贡献自己的力量。这些举措不仅增强了公司的社会形象,也为公司的长期发展奠定了坚实的基础。

请注意,以上故事框架是基于对德芯半导体公司的有限了解而构建的,并非真实事件的具体描述。如需更详细和准确的信息,请参考公司官方发布的相关资料或进行深入研究。

Datakey Electronics公司的发展小趣事

随着数字化技术的快速发展,数字化转型已经成为企业提升竞争力的关键。Datakey Electronics紧跟时代潮流,积极推进数字化转型。公司引进先进的信息化管理系统和智能化生产设备,实现了生产过程的自动化和智能化。这不仅提高了生产效率和产品质量,还降低了生产成本和能源消耗。通过数字化转型,Datakey Electronics在激烈的市场竞争中保持了领先地位。

以上这些故事都是基于电子行业的一般发展趋势和可能的情况虚构的,但从中我们可以看到Datakey Electronics公司可能经历的一些发展历程。希望这些故事能够为您提供一些参考和启发。

Euroquartz公司的发展小趣事

随着全球电子制造产业的不断发展,Euroquartz也积极拓展国际市场。公司凭借其高品质的产品和专业的技术服务,赢得了全球客户的信赖和支持。如今,Euroquartz的产品已经覆盖全球90多个国家和地区,为全球电子制造产业提供了重要的石英晶振、振荡器、滤波器以及其它频率相关产品。

DMS Electronic Components, Inc公司的发展小趣事

DMS非常重视人才的培养和引进。公司建立了完善的人才选拔和激励机制,吸引了一批高素质的专业人才加入。这些人才在技术研发、市场营销、生产管理等方面发挥了重要作用,为公司的快速发展提供了有力保障。同时,DMS还注重员工的培训和发展,为员工提供了广阔的职业发展空间。

问答坊 | AI 解惑

有关摄像头加工工艺

那位仁兄知道,pc摄像头加工工艺以及详细的技术参数是什么吗?给哥们指导一下。主要是在芯片参数,感光参数,光学镜头方面的。哥们在这里先谢谢了…

查看全部问答>

该用什么样的摄像头?

想做一个视频采集的东西,用S3C2410搭的平台.计划通过前端的摄像头来采集图象,然后存到MMC卡中,请教大家,摄像头可以用什么样的啊?USB的吗?市面上常见的那种吗?…

查看全部问答>

FLASH与RAM 问题

我想问的问题是这样的 1.如何扩展RAM区 2.如何在flash中定义一存储空间来存储大量的数据,例如在MSP430单片机中 3.现在流行的单片机有FLASH和RAM,(1)一般的工程师将程序放到FLASH里,并在RAM里运行;(2)而有的单片机没有FLASH,只有RAM ...…

查看全部问答>

咋过几天了就没有什么动静了啊

    咋过几天了就没有什么动静了啊,看到的大多回复都是7月30号以前的?    …

查看全部问答>

TI推出业界首款单芯片无源 IR MEMS温度传感器

本帖最后由 dontium 于 2015-1-23 13:26 编辑 ? ?Integrated Thermopile With Analog Front End ?IR Spectrum Sensitivity: 4um – 8um ?16-Bit ADC with I2C SMBus interface ?Integrated Local Temp. and Voltage Reference ...…

查看全部问答>

跪求CD4025的资料啊!!

跪求CD4025的资料啊!!…

查看全部问答>

LaunchPad上的温度测量

看了大侠的这篇文章: 【LaunchPad手记】MSP430 LaunchPad演示应用:内部温度测量 发现默认的烧在片子里的程序,如果按了S2按钮之后,是一直在往外发温度数据,随便找个串口工具,打开板子的串口,波特率2400,选择16进制数据,转换为10进制,就 ...…

查看全部问答>

2600A系列数字源表实现精密脉冲定时和直流偏置开启序列2

  2600A系列型数字源表[1]触发模型,允许用户在微秒数量级的精度对源电平和延迟时间进行编程。下面的命令序列将2602A[2]型数字源表SMUA[3]与SMUB[4]开启时间延迟设置为200µs 。   The Series 2600A trigger model allows the ...…

查看全部问答>

求 msp430系列单片机系统工程设计与实践 pdf

求 msp430系列单片机系统工程设计与实践 pdf     谢楷、赵建那本 有的发到378148949@qq.com吧 谢谢了       附件是我们老师讲课做的ppt,目前只有前两章的…

查看全部问答>

ccs5.5中的GUI Composer中的小部件LineGraph和ScatterPlot怎么使用不了啊?

我是刚接触CCS5.5的新手加菜鸟。发现ccs5.5中的GUI Composer中的小部件LineGraph和ScatterPlot使用不了,和变量相关联后,工程可以编译和运行,Dial可以正常实现修改参数的功能,但是LineGraph和ScatterPlot一直都不能出现曲线。是不是一定要横坐标 ...…

查看全部问答>