对于我每天一千来字的文章来说,这个题目起的着实有点大。要知道现在的DFT所涉及的内容实在太多了,以至于催生了专门的DFT team和专门做DFT的工程师。但是对于芯片设计中的每一环,对DFT所要做的工作都必须有所了解,今天我就把我所理解的DFT简单介绍一下。
DFT全称为Design for Test,可测性设计。就是说我们设计好一个芯片后,在仿真时可能99%的用例都通过了,怎么保证流片出来的实际芯片也能正常工作呢?这里大家必须建立一个概念就是,不管是前端后端,总之只要是设计阶段,不管是waveform还是版图,他都不能完全代表最终出来的芯片的样子,那些设计图纸只是我们美好的想象,实际的制造结果可能会有工艺的偏差的。比如GDS里没有short,但是有可能制造出来的芯片真的有short,这就关系到我们所谓的良率问题。那么DFT的终极目标就是在流片后,我也能通过某些测试的方法,保证芯片和我们的设计图纸吻合,不出现异常。
这其实是一件很难的事情。因为芯片太小了,我们不可能拿着电子显微镜一点一点地去看吧,那要怎么做呢?其实它蕴含的思想很简单,或者说人类还没有发明出更高级的办法。大家肯定有在家里用过电笔的经历,或者稍微专业一点的都知道万用表,他们都是有内部的自建电路,然后利用探针来测被测电路的某一点电势,进而判断是否发生open/short。对于芯片的测试也没有更高级,也是用这种方法,可以利用探针探测芯片的输入输出引脚,看看输入输出是否正常,第二种