1.Boundary scan

Boundary Scan就是我们俗称的边界扫描。Boundary Scan是上世纪90年代由 Joint Test Action Group(JTAG)提出的,它的初衷是为了解决在PCB上各个大规模集成电路间的信号互联测试需求,所以往往也被叫做JTAG(JTAG更是指由IEEE1149.1标准规定的4线接口极其控制逻辑如TAP、TDR等)。现在 JTAG / BScan 已被绝大多数芯片设计公司和系统厂商所采用,作为一种芯片 IO PAD connectivity测试、DC Characterization、内部逻辑电路debug、在线系统 PRGM 和系统级测试的一种高效手段和业界标准。

个人认知,JTAG/BScan 的实现主要有两种实现方式:一是RTL hand coding,一般从算法开始到系统的全系列公司常用;二是借助 EDA 厂商提供的 tools 来实现。这里要特别提及一下,非常佩服前任大牛老大,在项目间隙大家都在放羊的间隙,楞是用C写了一个 In-house BScan insertion 定制化工具。非常感慨:聪明的人不可怕,可怕的比我们聪明的人还比我们更勤奋!

JTAG/BScan 在DFT领域里面相对比较简单,所以没有多少挑战,作为新工程师了解和进入项目的初始工作任务是非常不错的一个task。  特别注意一些弯弯绕的地方,个人认为可能就在于:

  • 越来越多的MCP产品测试需要,在die的不同阶段BScan的不同测试方法和pattern准备;

  • 除了基本的In/Out/OEN的测试外,对PAD其他控制信号的测试实现。

2.MBIST

MBIST就是Memory Build In Test简称。随着集成电路规模和复杂程度的不断提高,在ASIC/SoC 中集成的 memory 数量和所占的die  size比例非常高(例如>40% in AP),同时 memory 本身的 cell density 也比较高,那么相应地在 memory 上面的制造 defect 在SoC的比例也较大。

MBIST 从上世纪90年代末发展起来、为实现对IC 内部集成memory 的测试而生。

MBIST design 的实现,主要靠EDA工具来完成,最早做的很好的一家是 Syntest 的TurboBIST, 不过好像现在这家EDA公司日渐式微,奈何美人迟暮英雄末路。 目前EDA三巨头各家都有自己MBIST的解决方案。

对于MBIST design过程中和芯片测试过程中的挑战,个人认为还是在diagnosis, auto-repaire和FA了。

LBIST:

A:LBIST 顾名思义就是LogicBIST,实现靠Tool。挑战主要是LBIST design overhead, Test coverage 以及最终的测试时间等.

Analog DFT:

Analog DFT,常常也把一些数模混合的IP归集到这一范畴,这部分基本不太可能依赖EDA tool来实现,往往都基于RTL coding 完成。Analog/IP DFT比较常用的架构有Internal/External Loopback,  JTAG program test,IO pin test muxing, embedded reg/mem sampling 等等。这部分重点是需要和 Analog/IP designer 紧密合作,共同确定后续lab和量产测试的spec;还有就是因为包含了Analog部分,如何完成仿真验证需要特别注意。

scan chain,stuck-at跟at-speed test各是什么?分别如何实现?挑战是什么?

A:Scan chain即是由芯片中的寄存器串在一起组成的扫描链; stuck-at和at-speed指的是ATPG 当中的fault model。Scan chain insertion 同样是靠工具完成。

压缩/解压缩的概念是什么:

这里所说的压缩是专指 Scanchain 的压缩(Compressor)。由于集成电路规模的不断增大,内部的寄存器数量也越来越庞大,如果没有压缩技术, Scan chain会非常长,相应的在ATE 上的test time就长,而ATE test time是影响整个芯片成本的一个关键因素。

具体压缩比的定义,还是要看是用那种架构来实现。比如M的TK,由于它使用LFSM电路结构,所以它能够做到比较高的压缩如数百倍或更高,工具同时支持用户利用analyze方式来提前评估各压缩比例的优劣。近年来S和C家也改进了压缩解压缩的电路结构,加入了时序逻辑到压缩解压缩电路中,压缩比都能做到足够高。

ATPG是什么?用于DFT的哪个方面?在电路结构上如何体现?如今业界算法是否大同小异?最流行的算法是什么?

A:ATPG 是Auto Test Pattern generation即测试向量生成的简称,用于DFT Scan 设计的验证和测试pattern的产生阶段。由于Scan是基于基本的数字逻辑电路Flip Flop以及之间的datapath完成测试的,所以据个人认知,Scan的算法也是基于Digital 电路的基本测试原理,比如D算法, Fan算法等等,各家无出其右。

测试时间跟哪些因素相关?缩短测试时间的办法有哪些?

A:测试时间相关因素有:SoC的规模,Test Plan和DFT Spec的要求,DFT design实现架构,具体DFT各项实现方法,DFT mode SDC和 timing signoff,还有Physical floor plan和IR drop影响等等。

与此对应的,努力减少测试时间和陈本的关键就是首先case by case定义好该芯片的DFTSpec,然后基于芯片实际情况选择最合理的design flow和EDA tools, 与STA 攻城狮一起评估和定义高效而又合理的SDC,结合后端的情况和将来 ATEpattern program的考虑,调整DFT design 情况和后面的pattern生成等等。

OCC/OPCG/scan clock mux用途是什么?工作原理是什么?如何实现?

A:  OCC/OPCG/SCAN mux等等首先是实现Scan DRC fixing,然后是根据不同 clock domain 的具体要求,决定是仅仅进行 stuck-a t还是更一步的 at-speed 测试。

它的工作原理是采用一组串在Scan Chain上的FF,作为pulse数量控制寄存器来 Shiftin 预设数值,再结合一组 function clock 的 pulse counter 寄存器,共同完成在 ATEclock 和 PLL/Func clock 之间的glitch free 的clock 切换。

在实现方式上,前端设计公司大多用 RTL hand coding module 在 clock gen 设计过程中就放入RTL database当中去;如果用EDA tool实现的话,S家的OCC跟C家的OPCG都是比较普遍的做法。

MBIST RTL flow跟netlistflow各有什么优劣?更推荐哪种flow?为什么?

A:从各种不同类型项目在RTL和netlist 上MBIST实现的工作经验来看,两者互有优劣。  个人感觉基于RTLflow更为清晰、灵活,对于复杂结构更容易完成工程师的特殊定义和约束要求;而基于netlist  flow比较单纯、简单,但对一些额外要求实现就比较困难。具体用那种flow,要根据该次项目的实际情况和整个DFT flow的具体情况来分析,以真实项目经验来说,两种还都在使用中的。

MBIST时,Memory partition要考虑哪些因素?推荐的做法是什么?

A:MBIST设计中的memory partition 因素主要有:

  • memory instance 在floor plan中的location (DEF + more) ,主要是解决绕线长度( timing / transition ) 和congestion问题;

  • memory 所处的power domain和clock domain,主要是满足atspeed test 要求;

  • memory type 和Group balance,主要是优化test time,同时也考虑physicalrouting和测试power consumption/IR drop 等等;

  • 其他还需要参考的因素还有部分 User-defined/programming Algorithm要求, MBIST diagnosis 以及memory redundancy repair要求等等

DFT的标准都有哪些?分别是什么?用于什么?

A:  DFT 的标准,如上面提到的每一种测试项,分别从不同角度去考量;

  • 如Scan,最主要就是 Stuck-at 和 At-speed 分别test coverage是多少,这点是决定量产 Yield 的关键;还有是 pattern volume 和相应 test coverage 的可实现程度;

  • MBIST 标准主要有 100% memory instance 已经被覆盖到;各个MBIST case / pattern 的设计频点 ( timing closurd );各个group采用的 MBIST Algorithm, 是否 Repairable 及其策略;

  • BSCAN,主要就是各组 pattern involved IO list, pattern类型等;

  • 对Analog & IP DFT 差异比较大,个人认为考量标准有能够 cover 的 digital/analog path范围;lpbk可以配置的pattern种类;数据的 sampling rate和可配置频率等。

除了以上提到的,DFT还有哪些类别?

A:   群主所提问题已经非常专业全面了,如果非要再找一些边边角角,那想来DFT还必须包含内容:如BurnIn,结合CPU和Code的测试,OTP/DRO/Sensor IP等等;另Analog&IP DFT林林总总可能十几项也各不相同。

当前DFT的发展趋势是什么?

A:   个人想来应该有很多很多,还是仅仅抛砖引玉吧:

  • 随着集成电路规设计技术的发展,芯片的运行频率越来越高如2GHz以上,DFT design 电路和实现策略要相应发展;

  • 随着集成电路规模的持续迅速发展,ATE上 DFT pattern 的量产封测当中的花费以及在整个芯片中的成本比重越来越高(如有些品线20%+),那么为了减少测试时间和想办法提高测试效率提高的DFT 技术和架构持续发展;

  • 高速发展中的汽车电子、自动驾驶和AI 等集成电路,芯片的 Safety Critical 紧密关联的 DFT Design Solution要求也越来越急迫,如 ISO26262 Certified Testsolution 等等;

  • 半导体制造工艺的持续快速发展到12nm、7nm等,工艺缺陷和foundry生产当中 defect方式、类型、分布,随之相对应的fault model、测试算法的发展;

个人认为,DFT 在以后集成电路发展中将会越来越重要, DFT 攻城狮需要掌握的基本技能和熟悉知识面要求越来越多。

  • 无论是前面都提到的在芯片中的成本比重,对整个产品Yield的决定性,还是对整个系统工作的安全、可恢复性,以及最终的对某一款芯片是不是可以推进产品化,都将起到越来越重要的决定作用;

  • DFT 工作基本要求愈来愈广泛,例如必须完成在RTLCoding 和整个database DFT integration,熟练掌握实现过程中的 FV, Synthesis, SDC/STA 和 timing closure等,并熟悉后端 Physical 相关 floorplan, CTS, PGA 等等;

  • DFT 在 silicon, ATE  和 PCB 系统上面调试和 debug 工作将越来越重要。如在 silicon 回来之前进行的 ATE pattern generation 和全面的 verification;面向 ATE CP, FT 等 pattern programming;拿到silicon后第一时间的ATE testing bring up以及IC 量产中的FA等,都不断有新的技术发展和新要求,我们攻城狮必须保持一颗不断学习、紧跟技术潮流的心啊! :)

  • 最后,做DFT和做silicon其他一样一样的,借用流行的话来说就是需要工匠精神。对于新技术、新工艺可能大家都能够掌握,但是仔细、耐心和要求尽善尽美,才是决定芯片是不是可以正常work、进一步产品化成功的最最关键因素。

转载于:https://www.cnblogs.com/lelin/p/11479846.html

DFT 问答 III相关推荐

  1. BIST(build_in selftest)介绍

    BIST Created: January 20, 2022 1:53 PM 参考文章如下: BIST介绍 可能是DFT最全面的介绍–BIST 基础名词扫盲篇 葵花宝典:DFT问答第二篇 scan_c ...

  2. UA MATH571B 试验设计III 单因素试验设计1

    UA MATH571B 试验设计III 单因素试验设计 单因素ANOVA 模型设定与假设 ANOVA F检验 单因素ANOVA 方差分析(Analysis of Variance,ANOVA)是两样本 ...

  3. UA MATH571A 一元线性回归III 方差分析与相关性分析

    UA MATH571A 一元线性回归III 方差分析与相关性分析 ANOVA Table F检验 回归系数的F检验 F检验与t检验等价 广义线性检验方法 R2R^2R2 数值例子:女性肌肉量与年龄的关 ...

  4. 【BZOJ 3636】教义问答手册 (分治+整体二分+dp)

    description "汉中沃野如关中,四五百里烟蒙蒙.黄云连天夏麦熟,水稻漠漠吹秋风."--摘自 黄裳<汉中行> "泉岭精神不朽,汉中诸球永生." ...

  5. 论文浅尝 | Tree-to-sequence 学习知识问答

    论文笔记整理:谭亦鸣,东南大学博士生,研究兴趣:知识图谱问答. 来源:Neurocomputing 372: 64-72 (2020) 链接:https://sciencedirect.xilesou ...

  6. 「罗马人的故事 III 胜者的迷思」读后感 Part1,格拉古兄弟

    「罗马人的故事 III 胜者的迷思」读后感 Part1,格拉古兄弟 第二本 罗马人的故事 II 汉尼拔战记 描述了了罗马公敌--汉尼拔·巴卡 的前世今生,自然而然的,第三本罗马人的故事的时间线推进到了 ...

  7. Stacked Attention Networks for Image Question Answering(用于图像问答的堆叠注意力网络)

    Stacked Attention Networks for Image Question Answering Abstract 1.introduction 2. 相关工作 略 3.堆叠注意力网络( ...

  8. 第一性原理(DFT)基础知识

    文章目录 1.计算模拟介绍 1.科学研究范式 2.计算模拟的作用 3.计算模拟的应用范围 2.第一性原理基础(DFT) 1.第一性原理 2.密度泛函理论 3.薛定谔方程与能带 4.绝热近似(Born- ...

  9. 【VideoQA最新论文阅读】第一篇视频问答综述Video Question Answering: a Survey of Models and Datasets

    Video Question Answering: a Survey of Models and Datasets 长文预警!!! p.s.此篇文章于2021年1月25日新鲜出炉,在Springer需 ...

最新文章

  1. java怎么在记事本里写过运行_[置顶] 如何运行用记事本写的java程序
  2. Oracle11g:分区表数据操作出现ORA-14400异常处理
  3. YARN作业提交流程剖析
  4. html分级显示的下拉列表,javascript实现在下拉列表中显示多级树形菜单的方法
  5. cpu利用率低linux,linux计算,cpu 利用率超低,如何处理?
  6. returned message 找不到可安装的 ISAM。.
  7. Unity创建字体库给TextMeshPro
  8. 信息论与编码曹雪虹第三版学习第二章总结
  9. 学习java第15天
  10. ACM一年总结(写于2011年11月18日)
  11. “百度杯”CTF比赛 2017 二月场 wp
  12. 鲁大师2023年Q1手机报告:ColorOS蝉联榜首
  13. 半路接手项目有多难?教你做个接盘侠高手!
  14. IDEA修改编辑与控制台字体大小
  15. matlab欧拉法截断误差,一阶常微分方程欧拉法与梯形公式局部截断误差与p阶精度Range.PPT...
  16. 微信小程序人工智能之添加学生信息
  17. windows删除文件失败、文件访问被拒绝,需要system的权限
  18. 手持两把锟斤拷, 口中疾呼烫烫烫, 脚踏千朵屯屯屯, 笑看万物锘锘锘
  19. 深入理解HBase的系统架构
  20. golang: make 与 new 的区别

热门文章

  1. 这些矫健的背影、可亲的脸庞,你记住了吗
  2. 分子动力学(MD)模拟,模拟体系构建经验总结
  3. 用Java画出五星红旗
  4. 贪小便宜吃大亏关于汇泽平板和智能手表
  5. 基于PCIE 闪存卡的 Oracle 数据
  6. RobotFramework环境配置十八:数据驱动(Read CSV File)
  7. 华为屏幕锁如何解除强制恢复出厂解开华为手机忘记的密码线刷解决方法
  8. Zotero与infini-cloud网盘(原TeraCLOUD网盘)实现便捷全平台(PC+IOS+Android)文献同步
  9. EFR32MG ZCL命令获取灯泡on-off属性状态
  10. matlab连续信合和离散信合,与学习为伴 与智慧同行——固始信合外国语小学信息技术应用能力提升2.0第二次集中研修...