MBist技术可以自动实现存储器单元或阵列的RTL级内建自测试电路,MBIST的EDA工具支持多种测试算法的自动实现,可针对一个或多个内嵌存储器自动创建BIST逻辑,并完成BIST逻辑与存储器的连接,此外MBIST结构中还可包括故障自动诊断功能,方便了故障定位和开发针对性测试向量。本文将介绍用于嵌入式存储器设计的MBIST技术,并对其电路结构进行讨论。

随着半导体工艺尺寸不断缩小,IC设计的规模越来越大,高度复杂的IC产品正面临着高可靠性、高质量、低成本以及更短的产品上市周期等日益严峻的挑战。一方面随着半导体工艺尺寸的缩小,嵌入式存储器可能存在的缺陷类型越来越多;另一方面,随着IC产品的复杂度的提高,ROM、RAM、EEPROM在IC产品中的比重越来越大。

嵌入式存储器的可测试设计技术包括直接测试、用嵌入式CPU进行测试和内建自测试技术(MBIST)

直接测试方法利用自动测试设备进行测试,可以轻易实现多种高质量测试算法,但是这种方法存在着一些不足之处,

  1. 在ATE机上实现的算法越复杂,对ATE机存储器的容量要求越高,测试的费用也就越高;
  2. 在ATE机上不易实现对嵌入式存储器的“全速”测试,测试时钟的工作频率越高,测试成本越高;
  3. 由于芯片外围管脚的限制,对芯片内大容量嵌入式存储器进行直接测试往往不大现实。

利用嵌入式CPU进行测试的好处在于不需要对设计硬件做任何修改,而且测试算法的修改与实现可以通过灵活修改CPU软件程序完成。但是这种方法也存在缺点,首先是设计中的CPU并没有和所有的嵌入式存储器直接相连,其次编写或修改软件程序实现测试算法需要耗费大量的人力,另外这种方法还很难对存储CPU程序的存储器进行测试。

MBIST技术的缺点是增加了芯片的面积并有可能影响芯片的时序特性,然而,随着存储器容量的增加,这种方法所增加的芯片面积所占的比例相对很小,而且这种测试技术还有很多其它技术优势。

  1. 首先它可以实现可测性设计的自动化,自动实现通用存储器测试算法,达到高测试质量、低测试成本的目的;
  2. 其次MBIST电路可以利用系统时钟进行“全速”测试,从而覆盖更多生成缺陷,减少测试时间;
  3. 最后它可以针对每一个存储单元提供自诊断和自修复功能。此外MBIST的初始化测试向量可以在很低成本的测试设备上进行。

所以,从高测试质量、低测试成本的角度考虑,MBIST是目前嵌入式存储器测试设计的主流技术。

MBIST概述

BIST是一种结构性DFT技术,它将器件的测试结构置于该器件内部。BIST结构可以测试多种类型的电路,包括随机逻辑器件和规整的电路结构如数据通道、存储器等。BIST电路视其应用对象不同其实现存在显著差异,但任何类型的BIST都有共同的用途。BIST结构可以针对目标电路自动生成各种测试向量,并对输出响应进行比较。目标电路的类型也呈现多样化特征,它可以是整个芯片设计,也可以是设计模块或设计模块中的某个结构。此外,测试向量生成以及输出比较电路也可能存在差异。

大型、复杂电路通常包含多处难以测试的逻辑部分,即使就可测试性最好的大型设计而言,也同样需要耗费大量测试生成时间、占用大量的ATE存储器和ATE测试时间,所有这些都是非常昂贵,但对于采用ATPG方法进行测试而言又是必需的。另外,由于存储器缺陷类型不同于一般逻辑的缺陷类型,存储器在较大规模设计之中层次较深,ATPG通常不能提供完备的存储器测试解决方案,而MBIST技术则可以解决这些问题。

BIST能够在不牺牲检测质量的前提下提供一种存储器测试解决方案,在很多情况下,BIST结构可以彻底消除或最大限度减少对外部测试向量生成(以及ATE机存储器容量)和测试应用时间的需要。设计人员可以在某设计内部执行MBIST电路,并由于MBIST电路邻近被测试的存储器而轻易实现全速测试,设计人员也可以从该设计的较高层次运行MBIST流程

MBIST电路以某项设计中的RAM和ROM模型为目标。前面已经提到,由于存储器缺陷类型不同于一般逻辑的缺陷类型,所以检测RAM和ROM不同于检测随机逻辑,MBIST针对检测RAM和ROM共有的缺陷类型采用了有效的电路和算法。MBIST电路还可以基于各种算法生成多种测试向量,每种测试向量都着重测试一种特定的电路类型或错误类型。比较电路具有多种独特的实现方式,其中包括比较器和标签分析器。

存储器电路模型一般由三个基本模块组成,分别是地址译码器、读/写控制逻辑以及存储单元阵列。

MBIST架构

MBIST通常采用一种或多种算法为测试存储器一种或多种缺陷类型而特别设计,MBIST电路包括测试向量产生电路、BIST控制电路、响应分析器三部分。

测试向量产生电路可生成多种测试向量,不同的测试算法实现的电路所产生的测试向量内容也不同;BIST控制电路通常由状态机实现,控制BIST对存储器的读写操作,响应分析器既可以用比较器实现,也可以用压缩器多输入移位寄存器(MISR)电路实现,它对照已知正常的存储器响应,比较实际存储器模型响应并检测器件错误。

采用比较器实现的MBIST电路如图3所示,该电路提供两个标志输出信号tst_done和fail_h通知系统测试进程的状态和结果。tst_done在测试结束时被置为有效状态,在测试过程中发现任何错误,fail_h信号即置为有效并保持到测试结束。采用压缩器实现的MBIST电路如图4所示,该电路提供了基于MISR的比较技术,测试结束后可以输出压缩后的标签寄存器结果。

通常情况下,MBIST电路不仅可以筛选出失效的器件,还能够自动分析失效的原因,此时测试数据同时被用来分析定位存储器失效的具体地址空间。

此外,特殊的MBIST电路还可以提供自诊断和自修复功能。在MBIST电路中引入内建自分析模块,BIST模块根据失效的数据和地址等信息输出相应的控制信号R2R1R0,把系统对存储器失效地址空间的读写操作指向用于自修复冗余设计。

MBIST电路通常还包括BIST Collar模块,BIST Collar模块的内容包括流水处理电路、扫描旁路电路、多路复用器电路和MISR电路等,其中扫描旁路电路最为常用(图5)。

MBIST实现与EDA工具

MBIST工具允许设计人员将更多时间花在设计工作中,而不是在有关测试的问题上忧心忡忡。工具已经内建了开发存储器测试和管理BIST电路所必需的知识,其生成的故障诊断电路允许设计人员对故障数据进行识别和分析。它可以产生相应的testbench,方便对MBIST外围电路逻辑开展验证,还可产生相应的自动化脚本文件以有助于逻辑综合的自动化运行。此外对任何EDA工具来说,要想有效工作就必须能够适应设计者现有的设计流程,遵循各种行业标准。

MBISTArchitect是Mentor公司提供的MBIST自动化EDA工具。它可以针对一个或多个嵌入式存储器开发嵌入式测试电路,自动实现存储器单元或阵列的RTL级内建自测试电路。它支持多种测试算法,可对一个或多个内嵌存储器自动创建BIST逻辑,并完成BIST逻辑与存储器的连接,另外还能在多个存储器之间共享BIST控制器,实现并行测试,从而缩短测试时间并节约芯片面积。MBIST结构中还可以包括故障的自动诊断功能,方便了故障定位和开发针对性的测试向量。

转载于:https://www.cnblogs.com/YINBin/p/9844865.html

MBIST:用于嵌入式存储器的可测试设计技术相关推荐

  1. 减轻产品风险的测试设计技术

    为什么80%的码农都做不了架构师?>>>    ( Erik van Veenendaal是一名国际领先的顾问和培训师,和一名在软件测试和质量管理领域广受认可的专家. 他是Impro ...

  2. 嵌入式系统降低功耗的设计技术

    电源通常被认为是整个嵌入式系统的"心脏",绝大多数电子设备50%~80%的节能潜力在于电源系统.研制开发新型开关电源是节能的主要举措之一. 近年来许多公司相继推出一系列功能齐全.种 ...

  3. 【Selenium-WebDriver自学】Selenium测试设计技术(十三)

    Selenium页面对象模型 1.Selenium页面对象模型 优点 页面的对象模型是其中测试对象和功能被彼此分开,从而保持代码干净的实现. 对象保持独立的测试脚本.一个目的可以通过一个或多个测试脚本 ...

  4. MFQPPDCS大型嵌入式软件系统的测试分析和测试设计

    MFQ&PPDCS大型嵌入式软件系统的测试分析和测试设计 原创作者:邰晓梅 翻译:wzhj132 原创来源:2009年ICSEA大会上的论文<MFQ & PPDCS - Test ...

  5. MFQPPDCS 大型嵌入式软件系统的测试分析和测试设计

    原创作者:邰晓梅 翻译:wzhj132 原创来源:2009年ICSEA大会上的论文<MFQ & PPDCS – Test Analysis and Test Design for Lar ...

  6. TICA 2019 基于人工智能的模型驱动测试设计

    阿里QA导读:面对被测系统发生重大的变化,过去的资产如何维护?如何通过人工智能驱动,设计测试自动化解决方案?本次分享将从模型驱动设计,AI如何优化测试用例等维度,介绍一种AI在软件测试领域的实践方案. ...

  7. MFQPPDCS测试分析和测试设计框架l学习记录

    这几天在学习邰晓梅老师提出的MTQ-PPDCS测试框架,作为嵌入式软件测试从业人员,在测试框架学习过程中结合个人经历过的嵌入式软件测试项目,以思维导图形式梳理邰晓梅老师的框架理论,整理如下,希望通过进 ...

  8. 常用测试设计方法--其他

    其他测试设计技术 EC 等价类覆盖 BV 边界值覆盖   CRUD覆盖 数据周期测试   CheckList   EG 错误猜测 基于经验的测试设计 ET 探索测试 测试人员在测试执行过程中设计测试用 ...

  9. 软件测试之魂:核心测试设计精解

    软件测试之魂:核心测试设计精解(第2版)(掌握核心竞争力成为不可替代的测试精英) 肖利琼著 ISBN 978-7-121-19677-5 2013年5月出版 定价:59.00元 356页 16开 编辑 ...

最新文章

  1. 基于Python的频谱分析(一)
  2. 15.Three Sum
  3. websocket 工作原理
  4. mysql数据恢复时显示多线程恢复_MySQL多线程备份恢复工具mydumper,myloder
  5. linux登陆提示鉴定故障_5个最常见的Linux问题的故障排除提示
  6. Oracle11g客户端安装配置
  7. 宏正ATEN推出ALTUSEN全系列IP-Based远程机房管理方案
  8. Leetcode 242.有效的字母异位词 By Python
  9. 《网络对抗》 逆向及Bof基础实践
  10. 异贝,通过移动互联网技术,为中小微实体企业联盟、线上链接、线上线下自定义营销方案推送。案例7
  11. jsp 默认select option 默认选中方法
  12. 标准差 php,标准偏差怎么算
  13. 2016年米其林指南—澳门小食篇 -吃遍澳门,就这12家!
  14. html5侧匡下拉注释,可圈可点网资料
  15. 视频弹幕技术 php,HTML5实现视频弹幕功能
  16. C#一元一次算法求解
  17. Java常用技巧和常见错误扫雷
  18. 关于日期和时间的解析
  19. 如何合并多个Excel文件(相同列结构)至一个Excel文件中
  20. bzoj3028 食物 (普通型生成函数)

热门文章

  1. 程序的内存分配和管理
  2. 物联网给快递业带来新变革
  3. Building JavaScript Games for Phones Tablets and Desktop(6)- 响应玩家输入
  4. PHP面向对象分析设计的61条军规
  5. 蓝桥杯 ALGO-14 算法训练 回文数
  6. 蓝桥杯 ADV-9 算法提高 递归倒置字符数组
  7. oracle 的自增需要依靠序列和触发器共同实现
  8. web.xml 配置 contextConfigLocation
  9. Hive四种数据导入方式介绍
  10. Jenkins服务器磁盘空间爆满问题解决