首页 » 科学 » DFT的简单介绍(下)_测试_暗记

DFT的简单介绍(下)_测试_暗记

萌界大人物 2024-11-08 04:02:25 0

扫一扫用手机浏览

文章目录 [+]

这种测试方法是建立在一个条件上的,便是我们可以任意改变输入旗子暗记的逻辑值。
如果这个输入恰好便是全体芯片的输入还好办,直接在芯片外部改变即可。
但很多时候我们须要测试芯片内部的各个逻辑单元,它们的输入就会是在芯片内部,不那么好调度了,这可咋办呢?

这个时候人们就想到了芯片中的主要元件——寄存器。
如果我们给寄存器存储相应的测试的逻辑值,让这些reg的存储的数据作为我们DFT测试的输入,不就可以达到掌握输入旗子暗记的目的了吗?但这种方法有一定局限性,这样我们的DFT测试输入位置必须担保是时序逻辑中寄存器的输出pin才行,吸收输出旗子暗记就还是用探针就可以,没有太多限定。
这样的输入限定有可能会导致我们无法完备测试出所有combinational cell的问题,但DFT工程师还是可以掌握输入旗子暗记测很多次,来尽可能多的覆盖到能测的cell。
DFT测试中有一个测试覆盖率的观点,一样平常都会哀求到90%以上。

DFT的简单介绍(下)_测试_暗记 DFT的简单介绍(下)_测试_暗记 科学

然而利用reg来作为测试输入又带来了新的问题,那便是我如何给这些reg灌进我想要的值呢?要知道芯片在正常事情时reg之间是会相互影响的,我们很难掌握在某一个时候,很多个reg都恰好输出我们想要的某个逻辑值组(一样平常DFT工程师称这种输入逻辑组叫pattern,比如上篇提到的例子里,11、10便是不同的两个pattern),怎么办呢?为了DFT测试,我们要对芯片进行大刀阔斧的改革!
我们要把芯片中所有的正常reg全部升级!
升级后的reg在可以正常事情的同时,还要支持一种模式,这种模式可以让我们直接掌握每个reg寄存的值。
但是我们不可能把每个reg都接一根net到全体芯片的port,那port数量就太多了,根本不现实。
如何只用掌握一个port就能掌握所有reg的值呢?别忘了,我们要掌握的是寄存器,是被时钟掌握的,时钟每跳变一次,旗子暗记今后传输一次,那么人们就想到把所有reg都串起来,后一个reg的输入是前一个reg的输出,我们只须要往第一个reg的输入一个个灌值就行了。
比如三个reg串起来,我们想要一个101的pattern,就在第一个时钟周期给第一个reg灌进去1,三个reg状态是1xx;下个时钟周期灌0,状态变为01x,第三个周期灌1,状态变为101.这便是我们想要的pattern,在这个时候进行测试即可。
这里的reg的输入输出便是不同于电路的输入输出了,便是别的pin,称为SI和SO,掌握旗子暗记SE,我们把这个串称为扫描链(scan chain)。
并且芯片事情的时钟很快,DFT测试的时候相对就很慢,我们就须要一个专门的慢速时钟用来测试,相应的这个慢速时钟和正常的时钟要经由一个选择器接到reg上。

DFT的简单介绍(下)_测试_暗记 DFT的简单介绍(下)_测试_暗记 科学
(图片来自网络侵删)

而后DFT工程师就要天生各个pattern了,终极把这一串值一个一个送到ATE机台完成测试。
呼~写了这么多只讲完了DC mode,但还有AC mode没讲...便是说我们上文提到的测试不涉及电路transition的问题,如果某个cell transition比预期的要慢,也会发生缺点,这也得测才行,因此就不能用慢速时钟了,得用常速时钟才行,相应的测试方法更加繁芜了。

这两天写的DFT相对细了点,讲的东西就少了点。
我昨天刚开始写的时候以为1000个字大概讲讲就行,结果创造大概讲讲也得少说一万字。
DFT更深入的内容之后有机会再写吧。

这是我的第23篇文章。
微信"大众年夜众号:伟酱的芯片后端之路

标签:

相关文章