精华内容
下载资源
问答
  • DFT设计的要点
  • DFT设计流程

    2012-03-20 18:46:06
    synopsys DC综合工具的DFT设计流程,内含多个文档,是很好的参考使用资料,
  • DFT设计绪论

    2019-09-22 10:55:19
    DFT设计的主要目的是为了将defect-free的芯片交给客户。 产品质量,通常使用Parts Per million(PPM)来衡量。 但是随着IC从SSI到VLSI的发展,在test上花销的时间越来越多,test的quality却很难提高,这使得DFT的...

    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)

     

    icg_mode,在shift时,设置为1,capture时,根据ATPG的情况来判断。

    icc_bypass,用在ac stuck at model下的测试,相比较于dc stuck at,低频clock的clock define点不同,可以不需要在修

                      timing,而如果没有ac stuck at,一些经过同一低频clock,不同occ clock的逻辑,可能是异步的,但是在dc mode

                      在被作为同步,designer需要为此修很多timing,增加buffer。

    ac mode下,会有很多低频的clock mux,用于测试不同的逻辑。 

    转载于:https://www.cnblogs.com/-9-8/p/5608305.html

    展开全文
  • 基于DFT设计流程概述

    2010-07-14 10:58:35
    本文档在充分分析DFT原理的基础上,根据本人专心研究,总结出DFT设计流程,仅供参考!
  •  在DFT设计中,测试覆盖率及其测试效率是最重要的指标。一方面,理想的设计目标当然希望测试能够遍及整个芯片的逻辑,尽管理想值100%是不容易达到的;另一方面,测试效率亦非常重要,设计工程师总希望用最少的测试...
  • 该文档主要描述了SOC芯片中的DFT设计实施,主要内容有DFT、ATPG等内容,对学习集成电路设计很有帮助~!
  • 在集成电路(Integrated Circuit,简称IC)进入超大规模集成电路时代,可测试性设计(Design for Test,简称DFT)是电路和芯片设计的重要环节,它通过在芯片原始设计中插入各种用于提高芯片可测试性(包括
  • DFT设计之scan chain

    2021-03-31 15:37:08
    scan chain的基本原理是将设计中所有的触发器连接成一条链,用统一的scan clk驱动,这样可以使用预先设计好的scan pattern用逐bit移入的方法送入芯片中,然后开启capture使能,这样每个触发器的Q端输出会传入他们所...

    scan chain的基本原理是将设计中所有的触发器连接成一条链,用统一的scan clk驱动,这样可以使用预先设计好的scan pattern用逐bit移入的方法送入芯片中,然后开启capture使能,这样每个触发器的Q端输出会传入他们所驱动的组合电路,scan chain中的下一级出发器D端会捕获这个组合电路的输出,然后capture失效,捕获到的每一级组合电路输出再被移出scan chain,从而在scan chain输出端得到一组结果向量,这组结果向量与工具预先计算好的预期(当然是与输入scan chain的pattern不同的)相比较,从而可以依据比较结果来判断芯片中是否有制造错误。
    在这里插入图片描述
    这个是scan前和scan后的DFF,其实就是替换成带有scan逻辑的DFF,
    那么当scan_en有效时,scan逻辑就会从scan-in穿过DFF到达scan-out,
    多个scan DFF链接在一起就成了scan chain,链上有多少个scan DFF表示这条链的长度。
    在这里插入图片描述
    如下图:
    完整的 scan chain过程:

    1。 对于时序电路 sequential 部分,选择scan mode ,shift in pattern , 然后shift out

    1. 对于组合电路combinational 部分,首先选择scan mode , shift in pattern ,直接输入

    pi 的值,选择function mode ,经过一段时间以后, PPO PO 都稳定了,先比较PO 的值,

    再来一个时钟周期,capture ppo 的值,选择scan mode ,shift out PPO 的值

    然后下一条 pattern
    在这里插入图片描述
    这里注意两点:
    工具会依据芯片结够生成多种scan patter和输出预期。scan pattern越多,则可以达到的覆盖率就越高。实际中当然是要求尽可能高的scan 覆盖率。
    scanchain的设计是为了侦测制造错误,因此它跟功能验证是完全不同的概念。
    通常来讲,工具会帮我们做好一切,而且现在都已经有标准的scanable触发器库,我们只需要看最后的report就好。然而还是会出现一些问题,使得scan
    coverage达不到要求,这就需要设计者依据report来修改design,以提高scan coverage。

    最常见的问题就两种:
    某个点不可控
    实际设计中,可能会出现某一级组合逻辑的输入端C并不是来自触发器Q端,这样都会造成组合逻辑的输出端不可控,这样就需要手工插入控制点(用触发器和MUX组成的C’点),以提高scan覆盖率。
    某个点不可观测
    可能某个组合逻辑的输出点O是没有接入到触发器的D端的,这样其输出点就无法被scan chain观测了,那么需要手工插入观测点O’,来提高覆盖率。

    注意:

    所有手工加入的观测点和控制点对于原本设计功能而言都是无用的,所以必须用MUX来保证其只在scan模式下有效。

    加入的观测点可能因为没有实际逻辑作用而在综合时被优化掉,需要在约束上加don’t touch说明。

    展开全文
  • DFT

    2017-07-29 19:42:00
    在了解DFT之前,先简短回顾下整个数字芯片的设计流程:产品定义-设计-验证-逻辑综合-物理设计-生产制造。设计和验证工作完成之后,我们就得到了一个实现了特定功能的RTL设计。这里我们可以说功能设计的部分已经完成...

    在了解DFT之前,先简短回顾下整个数字芯片的设计流程:产品定义-设计-验证-逻辑综合-物理设计-生产制造。设计和验证工作完成之后,我们就得到了一个实现了特定功能的RTL设计。这里我们可以说功能设计的部分已经完成,那接下来的流程中一个很重要的方面就是保证之前实现的功能不能被改变。      

    逻辑综合(logic synthesis)完成后执行的形式验证(formal verification)就是保证逻辑综合得到的网表(netlist )与之前的RTL设计保持功能一致。物理设计的工作完成后,一是要进行物理设计产生的网表(post-routing netlist)与综合网表(pre-routing netlist)间的形式验证,另一工作就是LVS(logic versus schematic)以确保可制造的GDSII版图实现与post-routing netlist的功能一致性。至此我们就得到了一个与RTL设计功能一致的,可制造的版图实现,然后经过生产制造的过程得到实现特定功能的芯片。

    那新的问题就是用怎样的方法检查post-routing netlist(或GDSII database)与制造出的芯片之间是否功能一致?或者说制造出来的芯片是否实现了产品定义阶段所定义的功能呢?

    回答这一问题之前再让我们来看看常用的功能验证方法。

    常用的功能验证的方法之一是逻辑功能仿真。在输入特定激励的情况下,检查设计能不能得到期望的输出。这也是设计验证阶段所采用的常规办法。当然我们也可以利用验证阶段所得到测试用例,在netlist上采用逻辑功能仿真的方法,验证netlist中有没有改变RTL设计中实现的功能。但在netlist上采用这种方法的缺点是仿真周期长,消耗资源(cpu & memory)多。所以在特定的情境下,形式验证,包括LVS,被用来做功能验证。当然这些方法不需要测试用例,而是根据电路结构来判断两个实现之间是否保持功能一致。如果两个设计实现保证了电路结构一致,功能自然而然也就是一致的。

    接下来言归正传,DFT的全称是design for test(可测试性设计),DFT技术就是前面寻求的检测post-routing netlist与制造出来的芯片之间功能一致性的方法。逻辑综合以及物理设计的过程中,可能因为EDA工具,或者设计流程,甚至人为等因素导致功能被改变。而在生产制造过程中,由于工艺或者环境等因素有可能在硅片上产生物理缺陷,进而导致制造出的芯片表现出不同于设计功能的现象。DFT技术就是用来捕捉芯片中的物理异常,进而做出芯片是否与post-routing netlist功能一致的判断。DFT技术所采用的方法也是根据电路结构,利用post-routing netlist产生出结构测试向量;如果在测试机台(ATE)上,这些结构测试向量也能令制造出的芯片产生出同样的输出结果,那么我们就认为该芯片与pos-routing netlist功能一致,实现了特定的设计功能。

    需要注意的是DFT的方法并不能百分百检测出功能正确的芯片(因为没有覆盖百分百的电路结构),我们需要通过叠加板(board)级系统测试等方法来达到接近百分之百的覆盖率。另外,结构测试向量在DFT应用过程中起着至关重要的作用,为了得到高效率的此类测试向量,需要在设计阶段实现特定的辅助性设计;通过增加一定的硬件开销,获得最大可测试性。而此类的辅助性设计就包括扫描链(scan chain),内建自测试(build-in-self-test)及边界扫描(boundary scan)等逻辑。

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

    展开全文
  • 可测试性设计DFT) 在市场上所有的电子设计自动化(EDA) 工具中是不被重视的,纵然在设计阶段提高芯片的可测试性将会大幅缩减高昂的测试成本,也是如此。近的分析数据表明,在制造完成后测试芯片是否存在制造...
  • 要求 设计并分析一个JVf=2的DFT滤波器组,所用原型滤波器为Ho(z)=2+3z-1+3z-2+2z-3。  该DFT滤波器组在图1中给出,可以看到其中包含一对多相滤波器和一个2点DFT。该DFT滤波器组沿顶部路径测得的冲激响应为{...
  • SOC芯片与DFT
  • DFT,可测试性设计

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

    DFT,可测试性设计 插入扫描链

    工程会接触DFT。需要了解DFT知识,但不需要深入。

    三种基本的测试(概念来自参考文档):
    1. 边界扫描测试:Boundary Scan Test: 测试目标是IO-PAD,利用JTAG接口互连以方便测试。(jtag接口,实现不同芯片之间的互连。这样可以形成整个系统的可测试性设计)
    2. 内建自测试BIST:(模拟IP的关键功能,可以开发BIST设计。一般情况,BIST造成系统复杂度大大增加。memory IP一般自带BIST,简称MBIST
    3. 扫描测试(ATPG)Scan path: 与边界扫描测试的区别,是内部移位寄存器实现的测试数据输入输出。测试目标是std-logic,即标准单元库。(扫描测试和边界扫描,不是一个概念。需要区别对待。内部的触发器,全部要使用带SCAN功能的触发器类型。)


    补充:
    还有一种测试:
    4. 全速测试at-speed-test(其实是属于扫描测试的一种。只不过测试时钟来源频率更快。)
    at-speed 就是实速测试, 主要用于scan测试-即AC测试和mbist测试。这种测试手段的目的是-测试芯片在其工作频率下是否能正常工作,实速即实际速度。测试时钟往往是由芯片内部的PLL产生很快的测试时钟,用于实速测试。
    相对而言,一般的测试是20~40兆的测试时钟,频率低,测不到transition fault。即使测试通过,实际使用中还会由于使用高频时钟发生芯片电路故障

    展开全文
  • 用于SoC设计DFT和BIST

    2011-03-07 21:49:16
    用于SoC设计DFT和BIST,讲解了在SOC设计中需要考虑的可测性设计问题 -SoC design for DFT and BIST, explain in the SOC design need to consider design-for-test issues
  • DFT可测性设计

    2021-05-30 10:55:37
    DFT 常用技术: (1)扫描链(Scan Chain),主要针对时序电路,测试寄存器和组合逻辑; (2)BIST,内建自测试逻辑(Bulit-in Self Test),主要针对 ROM 和 RAM 等存储器; (3)边界扫描(Bounary Scan),主要...
  • 最近的统计数据表明:制造完成后,测试芯片是否存在制造缺陷(与不存在设计缺陷相比)的成本已增至制造成本的 40%。...该方法称为可测试性设计 (DFT)本文为大家介绍一下硬件仿真验证的可测试性设计
  • DFT基础 DFTCompile生成扫描链 TetraMAX生成ATPG 设计实例
  • ASIC--DFT可测性设计工程师

    万次阅读 多人点赞 2019-03-09 13:37:57
    DFT是design for test(可测性设计)的缩写,就是在芯片设计过程中,加入可测性逻辑。有的公司把该职位归到前端设计,有的归到中端实现。 DFT职位大多分布于规模较大的数字IC设计公司里,因为大公司对芯片品质要求...
  • DFT--可测性设计

    2020-06-09 14:30:07
    目前多数厂商提供在设计中包括可测性的解决方案。通过包含在DC套装里面的DFT Compiler(DFTC),Synopsys为DC增加了DFT功能。DFT技术分类如下: 1、扫描插入 2、存储器BIST插入 3、逻辑BIST插入 4、边界扫描插入 其中...
  • DFT-BIST-内建自测试

    2016-10-08 10:39:45
    ic design 中的DFT设计教程
  • 文中介绍了在DFT与ATPG阶段均可通过各自的方法来达到降低测试功耗的目的。以实际项目为例,阐述了在DFT过程中分步法的原理,通过此方法可显著降低在Transition测试时的捕获功耗。同时也介绍了SYNOPSYS公司推荐的降低...
  • 基于FPGA DFT算法IP核的设计与实现.pdf
  • DFT频谱分析系统的FPGA设计与实现.pdf
  • Fault是一个完整的开放式测试设计DFT)解决方案,其中包括针对网表,扫描链拼接,综合脚本和许多其他便利功能的自动测试模式生成。 快速设置/演练 如果您愿意的话,可以参考快速安装说明(和一小段演练!)。 跑步...
  • 该软件包读取标准格式的电路网表,并且可以执行不同的测试设计DFT)操作,包括: 门级逻辑仿真 故障模拟(PFS,DFS) 优势和对等关系 系统故障掉线(CPT) 基于故障的ATPG(D算法和PODEM的不同版本) 全回路ATPG ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,185
精华内容 2,074
关键字:

dft设计