【转】 DFT小讲座之2_DFT@芯片开发不同阶段

在很多人的印象里,DFT(可测试性设计)就是简单的利用EDA工具,在IC设计的某一阶段,通过工具对芯片逻辑自动优化重组,产生DFT测试逻辑。

然而在现实中, DFT解决方案远非push button那么简单。尽管EDA厂商在提供DFT解决方案时候的愿景是实现测试逻辑生成的最大可能性的自动化,随着芯片功能的复杂化,仅调配片上资源产生DFT逻辑就需要巨大的时间和精力。

在项目执行过程中,DFT的参与的越早,对于测试逻辑的规划就越合理;对现有功能电路的利用率就越高;版图和时序的实现就越容易。

芯片开发过程包括从产品架构定义到封装后芯片测试等10个阶段。

它们分别是:

  • 产品定义

  • RTL实现

  • RTL验证

  • 逻辑综合 (产生synthesis netlist)

  • 物理综合 (place&route 产生layout netlist)

  • 后端验证 (基于netlist 和sdf的验证)

  • 流片

  • 晶圆级测试

  • 封装

  • 封装后测试

除了流片和封装这2个生产步骤之外,DFT需要参与到其他所有的阶段当中。

产品定义和架构阶段

在这一阶段, 与整个SoC架构定义类似, DFT架构需要安排整体测试架构,考虑scan策略,mbist布局,片上资源规划分析等各种任务。

该阶段的DFT规划至关重要。 在项目整体结构上综合考虑DFT方案,合理规划不同IP, module的测试需求,可以给整个芯片实现最经济的测试方案。

RTL实现及验证阶段

在这一阶段,除了将架构阶段的各种策略以RTL的方式实现外,还需要通过module级别,以及chip级别的验证,检查设计漏洞。同时和芯片的功能设计交互印证,确保DFT的设计不会影响功能方的设计,同时功能方的设计可以被DFT逻辑所控制。 这部分的工作时间跨度较长,需要在整个前段设计阶段不断交互反馈,修改。

逻辑及物理综合和layout验证

在这一阶段, DFT的主要任务在于和版图部门充分沟通合作。 任务包含但不局限与:

  • 提供不同测试模式下的约束条件

  • 扫描链插入

  • 针对测试逻辑的时序分析

  • 版图后时序仿真

流片后阶段

在芯片流片后,前段IC设计工作基本完成。

这时,DFT需要参与到silicon support当中。 DFT工程师需要生成并调试测试向量;帮助芯片bring up;帮助silicon learning以及failure analysis。

这一阶段的DFT工作除了测试向量以外,还需要对测试,yield等各部门给予及时有效的支持。

原文地址:https://www.cnblogs.com/lidan2019/p/10338416.html