DFT学习笔记-Mbist电路连接

上节学习了插mbist的时的脚本逻辑,这节进一步学习脚本在插mbist的时候都对电路做了哪些改动,包括定义了哪些端口,添加了哪些模块,都是什么功能。以下描述都是基于现在参考的一个设计环境,不方便贴出,有些步骤不是普适的。

在上图mbist_insertion_flow中,红框内的部分是插mbist的主要工作,根据之前的学习,三部分的工作内容如下:

dc.mbist.pre: 定义dft中用到的一些端口;为了避免之后可能会出现的DRC violation,在开始插Mbist之前将memory原本的function clock打断,通过mux连接上我们做Mbist的clock;对一些pin设置safevalue。

ts.mbist: 插Mbist。

dc.mbist.eco: 完善dc.mbist.pre中的clk连接。

下面介绍它们对电路做了哪些工作。

dc.mbist.pre

pre阶段是在dc中完成的。design loading就是给工具吃库文件和设计文件(netlist,sdc,def等等);generate instances list就是抓取设计中都有哪些instances,方便之后插相应的电路。后面五步是pre中实际的job,完成后写出网表。下面分别介绍这五个job。

create dft port

创建如下的port:

  • DftMode:各种DftMode端口,bypassEn,reset等等,一般置1模式打开,置0模式关闭。
  • ScanEn:sc
Mentor Graphics的DFT(Design for Testability)工具是一套用于提高集成电路可测试性的软件工具,广泛应用于数字电路和系统级芯片(SoC)的设计流程中。这些工具帮助设计工程师在设计阶段就考虑测试需求,从而确保芯片制造完成后能够高效、准确地进行测试。Mentor Graphics的DFT工具主要包括Scan、ATPG(Automatic Test Pattern Generation)、BIST(Built-In Self-Test)等功能模块,支持从设计到测试的全流程覆盖。 对于学习Mentor Graphics DFT工具,可以从以下几个方面入手: ### 学习资源与笔记 1. **官方文档与培训材料** Mentor Graphics提供了详细的官方文档和培训手册,这些资料通常包括工具的安装指南、用户手册、示例项目以及技术白皮书。例如,`Design-for-Test: Scan and ATPG Training Student Workbook` 是一本经典的培训教材,涵盖了扫描链插入、ATPG生成测试向量、故障覆盖率分析等内容。这些文档通常包含理论讲解和实践操作步骤,适合初学者和进阶用户[^1]。 2. **在线课程与视频教程** 一些在线教育平台如E课网提供了Mentor Graphics DFT工具的系统课程。这些课程通常包括视频讲解、代码示例和实验操作,帮助用户快速掌握工具的使用方法。例如,课程可能会涵盖如何使用Tessent Scan工具插入扫描链、如何生成测试向量以及如何分析测试结果等[^2]。 3. **实践操作与案例分析** 实践是掌握DFT工具的关键。可以通过实际项目或案例学习如何在设计中插入扫描链、生成测试向量以及进行故障仿真。例如,在使用Tessent Scan工具时,可以手动创建扫描电路,也可以在工具的帮助下自动生成扫描结构。测试程序文件通常包含基于周期的程序和时序定义,用于指导ATPG工具如何操作扫描结构。 4. **学术论文与研究资料** 学术界对DFT技术的研究也提供了丰富的学习资源。例如,《集成电路测试方法研究》是华中科技大学IC设计中心陈新武的讲稿,涵盖了DFT的基本原理和应用案例。此外,《数字系统测试和可测试性设计》一书由【美】赛纳拉伯丁-纳瓦比撰写,详细介绍了DFT的理论基础和工程实践,是学习DFT的重要参考资料[^1]。 5. **社区与论坛** 参与相关社区和论坛也是获取学习资料的有效途径。例如,修真院和E课网的论坛中经常有工程师分享学习笔记、工具使用技巧以及常见问题的解决方案。通过与其他用户交流,可以快速解决在学习过程中遇到的问题。 ### 示例:使用Tessent Scan插入扫描链 以下是一个使用Tessent Scan工具插入扫描链的简单示例代码片段: ```tcl # 初始化Tessent工具 create_session -name my_scan_test # 载设计 load_design -name my_design -file my_design.v # 创建扫描链 create_scan_chain -name my_scan_chain -type standard # 指定扫描链中的寄存器 add_registers_to_scan_chain -chain my_scan_chain -registers [get_registers] # 插入扫描链 insert_scan_chain -chain my_scan_chain # 保存修改后的设计 save_modified_design -file my_design_with_scan.v ``` 这段代码展示了如何使用Tessent Scan工具创建一个扫描链,并将其插入到设计中。通过这种方式,设计中的寄存器可以被串联起来,便于后续的测试向量生成和故障检测。 ### 工具的核心功能 Mentor Graphics的DFT工具支持多种核心功能,包括: - **扫描链插入**:将设计中的寄存器串联成扫描链,便于测试向量的载和输出结果的捕获。 - **ATPG生成测试向量**:自动生成用于检测特定故障类型的测试向量,提高测试覆盖率。 - **故障仿真**:模拟测试向量在设计中的执行情况,评估测试效果。 - **时序分析**:分析测试过程中的时序约束,确保测试向量能够在设计中正确运行[^2]。 ### 学习建议 - **从基础开始**:先了解DFT的基本概念,如扫描链、ATPG、故障模型等,再逐步深入工具的具体使用。 - **动手实践**:通过实际项目或实验平台练习工具的使用,熟悉各个功能模块的操作。 - **结合文档与教程**:参考官方文档和在线课程,理解工具的使用逻辑和应用场景。 - **参与讨论**:入相关社区或论坛,与其他工程师交流经验,解决实际问题。 通过以上资源和方法的学习,可以系统地掌握Mentor Graphics DFT工具的使用,并应用于实际的芯片设计和测试流程中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值