DFT设计的主要目的是为了将defect-free的芯片交给客户。

产品质量,通常使用Parts Per million(PPM)来衡量。

但是随着IC从SSI到VLSI的发展,在test上花销的时间越来越多,test的quality却很难提高,这使得DFT的engineer不断的发展着DFT的技术。

DFT engineer面对的第一个问题是设计内部的状态的可测试性问题。在1970-1980年间,提出了ad hoc等可测试性设计的方法。

可以提高一个design的可测试性,但是对于sequential的电路还是很难进行ATPG的产生。

对于combinational的电路,有很多ATPG的算法可以用来进行test pattern的生成,但是对于sequential的电路却很难。

后来带有直接外部访问的storage elements的提出,才解决了sequential的可测性与可观性。这样的cell叫做scan cells。

scan design是目前为止,使用最多的structure的DFT方法,通过将多个storage element连接为多个shift register来实现。

一个design中,所有的storage element都做了scan inserting,这样的design叫做full-scan design;

一个design中,大多数的(超过98%)的storage element做了scan inserting,这样的design叫做almost full-scan design。

一些不用SDFF替代的cell,可能是不想要在scan mode下被改变的register,本身就是shift register的寄存器(包括sync FF)

timing非常critical的path等。

一个design中,一些storage element做了scan inserting,并且使用了sequential的ATPG,这样的design叫做partial-scan design。

其中的storage element主要为了break sequential feedback来选择,从90年代起,随着沈亚微米技术的发展,full_scan逐渐代替

partial_scan成为主流。

每一个DFF的D端值,可以表示为某些DFF的Q值和组合逻辑的函数来得到,Di=f(Qx, Input)。在SE为1的情况下,所有的Qx都有了确定的值。

如果整个chip的input pad也是固定值,那每一个DFF的D端值一定是可以计算出来的。

一些analog和ram类的输出信号,着这种会进行bypass处理,保证Di是一个确定值。如果没有相应的mux,那TMAX计算出的Di为不确定值。

相应DFF在移位出scan chain的时候,对应的cycle应该进行mask处理。

这些hardblock如果没有bypass处理,会影响test coverage。

为了提高fault coverage,一些scan design rules必须被遵循。除了scan_design外,还有Built_in self_test(BIST)和test compression

也得到了很广泛的应用。

而近几年,DFT的测试开始从netlist转向RTL level来减小test development的时间,以及testable的code。

scan register的替换,带来的area increased,大约在15%

compression logic带来的area increased,大约在1%

bist logic带来的area increased,大约在2%--5%

defect的model类型有:

Stuck At

Transition

Path Delay

Bridge Test

IDDQ

针对芯片的三大部分,我们DFT工程师手里有三大法宝

BSCAN技术-- 测试IO pad,主要实现工具是Mentor-BSDArchit,sysnopsy-BSD Compiler

MBIST技术-- 测试mem,   主要实现工具是Mentor的MBISTArchitect 和 Tessent mbist

ATPG 技术-- 测试std-logic,  主要实现工具是:产生ATPG使用Mentor的 TestKompress 和synopsys TetraMAX;

插入scan chain主要使用synopsys 的DFT compiler/cadence的RTL Compiler

Mentor的工具更新为Tessent平台,包括工具:Tessent FastScan                  Tessent MemoryBIST

Tessent testKompress           Tessent LogicBIST

Tessent Scan

Tessent Diagnosis

Insert scan:

1.         虽然教科书会介绍很多种DFT DRC,但是在实际设计中95%的工作在修复scan_clk和scan_reset的DRC violation

2.         修复clk/reset violation 的方法主要是用DC插入mux ,目的是使在scan_mode下clk和reset被芯片scan_clk和scan_reset pad控制。

同时,scan_clk和scan_reset pad会用于ATE给芯片施加激励

3.         插入scan时,DFT Compiler必须修复的DRC violations 类别为D1/D2/D3/D9

4.         做全片级的DFT设计时,需要在scan_in,scan_out,scan_reset,scan_clk的IO pad 的OEN/IE/REN端插入mux,控制pad的输入和输出方向

Atpg patterns产生和仿真

1.         所有的模拟模块,例如PLL,POR等,一般设置为black-box,无法用ATPG测试其内部

2.         芯片clk,power,reset的控制寄存器,一般不会放到scan_chain上,以免在测试时由于寄存器的动作,改变芯片工作状态

3.         考虑power domain的开关,一般必须保证在scan测试时,所有power domain都打开,每个数字标准单元都能测试到。

4.         如果有模拟的IO pad,一般必须在产生pattern时mask掉,因为他们不是数字的,ATPG工具无法控制它们

5.         业界一般使用DC插入OCC (on chip clocking)模块,实现at-speed scan测试电路

MBIST工具

目前使用较多的是MBISTArchi,但是Tessent MBIST以后会成为主流。原因是Mentor公司2013年已经宣布MBISTArchi将不再提供技术支持,

而且Tessent MBIST技术更为先进。

1.         所有的MBIST设计应该考虑diagnose,加入diagnose电路,方便诊断mem故障,这会在芯片量产时大大提高成品率。

2.         由于ARM与Mentor有合作,Coretex-A9以上的ARM核具有share-bus接口,可以很好支持Tessent Mbist,

就能够实现ARM内核的mem的高速测试和访问,也提高了ARM CPU的性能。

3.         Tessent MBIST会使用JTAP,只占用TCK/TMS/TDO/TDI/TRST五个pad,比MBISTArich使用更少的pad资源

BSCAN 工具

1.         所有的模拟IO,一般无法用bscan来测试,不要加上bscan_cells

2.         所有需要测试的数字pad的OEN/IE/REN 在bscan_mode下,需要插mux来控制

3.         所有需要测试的数字pad的PU/PD 在bscan_mode下,一般需要插mux来控制,保证在bscan_mode下,

PU和PD=0,才能使bscan HIGHZ测试仿真通过

4.         所有JTAG的强制要求指令如IDCODE,EXIST必须在bscan电路中实现,特别是BYPASS

chip中的test mode可以分为analog(BIST),function,BIST,SCAN,IO

Yield:良率 (number of acceptable parts)/(total number of parts fabricated)

DFT设计绪论的更多相关文章

  1. Power Gating的设计(模块二)

    针对lower power的验证,由cpf/upf来建模,包括: 1)power gating的功能模型(在power gate之后将output force为x) 2)isolation功能模型: ...

  2. Power Gating的设计(模块)

    Switching Fabric的设计: 三种架构:P沟道的switch vdd(header switch),N沟道的switch vss(footer switch),两个switch. 但是如果 ...

  3. Power Gating的设计(概述)

    Leakage power随着CMOS电路工艺进程,功耗越来越大. Power Domain的开关一般通过硬件中的timer和系统层次的功耗管理软件来进行控制,需要在一下几方面做trade-off: ...

  4. DFT 问答 I

    Q: Boundary Scan是什么?应用场景是什么?实现的方法是什么?挑战是什么? A: Boundary Scan就是边界扫描,是由Joint Test action Group起草的规范,最初 ...

  5. test generation和MBIST

    The problem of test generation Random test generation Deterministic algorithm for test generation fo ...

  6. (转)Synopsys工具简介

    DC Ultra--Design Compiler的最高版本 在Synopsys软件中完整的综合方案的核心是DC UltraTM,对所有设计而言它也是最好级别的综合平台.DC Ultra添加了全面的数 ...

  7. IC设计基础

    一 前言 这一周连续两场线下面试,紧接着又是微信视频面试,从连续三天的面试中,收获颇丰! 存在的问题: 一是对项目细节模糊: 二是IC基础知识薄弱: 具体表现是,在面试过程中,如被问到DDR3和千兆以 ...

  8. IC 设计中DFT的Boundary Scan功能

    在很大规模的IC设计中,往往会有一些各种各样的bug出现,不论是在前期design的过程,还是在post silicon流片回来chip的flaw,都会导致chip的功能的失败,时钟频率无法达到期望频 ...

  9. DFT,可测试性设计--概念理解

    工程会接触DFT.需要了解DFT知识,但不需要深入. 三种基本的测试(概念来自参考文档): 1. 边界扫描测试:Boundary Scan Test: 测试目标是IO-PAD,利用JTAG接口互连以方 ...

随机推荐

  1. 设计模式:简单工厂(Simple Factory)

    定义:根据提供的数据或参数返回几种可能类中的一种. 示例:实现计算器功能,要求输入两个数和运算符号,得到结果. 结构图: HTML: <html xmlns="http://www.w ...

  2. Magento的迁移方法

    Magento有很多配置内容,比如说CMS配置页.Static Stock.多语言配置等等,所以做数据迁移很有必要性,下面就说说如何做迁移 这个技术文章是从网上整理的,不过一个很重要的点被疏忽了,我在 ...

  3. mac下配置laravel环境

    1.由于 Laravel 需要使用 PHP 的 Mcrypt 扩展,所以我们使用下面的命令来安装. brew search mcrypt brew install php54-mcrypt 2.安装 ...

  4. Installing OpenCV 2.4.10 in Ubuntu 12.04 LTS

    转自 http://www.samontab.com/web/2012/06/installing-opencv-2-4-1-ubuntu-12-04-lts/ EDIT: I published a ...

  5. Oracle中的数据类型和数据类型之间的转换

    Oracle中的数据类型 /* ORACLE 中的数据类型: char 长度固定 范围:1-2000 VARCHAR2 长度可变 范围:1-4000 LONG 长度可变 最大的范围2gb 长字符类型 ...

  6. typedef 和 const

    1. typedef 允许你为各种数据类型定义新名字 #include <stdio.h>typedef char *ptr_to_char; //这让我看起来,好奇怪,不好读void m ...

  7. Inside Kolla - 03 下载Kolla

    下载 Kolla Kolla 目前托管在 github.com 上,项目仓库的 URL 是 https://github.com/stackforge/kolla. 下载 Kolla 时,可下载 gi ...

  8. iOS获取运营商的相关信息

    1.导入:CoreTelephony.framework 2.添加头文件 #import <CoreTelephony/CTTelephonyNetworkInfo.h> #import ...

  9. 线性空间光照(即Gamma)

    在渲染管线中正确使用Gamma校正是决定渲染效果的一个非常重要的因素,现在商业引擎包括很多国内引擎都已经是在线性空间计算光照.当然也包括我们之前公司设计的引擎.关于gamma校正的定义可以查看wiki ...

  10. MVC 上传文件并展示

    最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精    最近在做自学MVC,遇到的问题很多,索性一点点总结 ...