VLSI可测性设计-冯建华课程 04-1
### VLSI可测性设计:冯建华课程中的PODEM算法解析 #### 冯建华教授的可测性设计课程概述 冯建华教授是北京大学微电子学研究院SOC研究所的知名学者,专注于集成电路(IC)设计与验证领域,尤其是可测性设计(Design for Testability, DFT)的研究。在这一领域,他深入讲解了一系列重要的理论和技术,其中PODEM算法作为自动化测试模式生成(Automatic Test Pattern Generation, ATPG)的关键方法之一,被详细地探讨和分析。 #### PODIM算法的核心理念 PODEM算法(Path Oriented Decision Making),由Goel于1981年在IBM提出,是一种改进的自动测试向量生成技术,旨在解决D-算法在大规模集成电路测试中遇到的计算复杂度问题。与传统D-算法相比,PODEM通过以下几点创新来提升效率: 1. **仅围绕原始输入扩展二元判决树**:这减少了不必要的搜索空间,使得算法更专注于寻找有效的测试向量。 2. **采用X-PATH-CHECK测试是否D-边界仍然存在**:这一步骤确保了算法能够及时发现无效路径,避免了无谓的计算。 3. **目标是使ATPG传播D(D)靠近PO**:即通过优化算法流程,让测试向量的生成更加高效,更贴近实际需求。 4. **回溯机制**:当检测到无效路径或计算无法继续时,算法会回溯并尝试其他可能性,从而提高了测试覆盖率和算法的整体性能。 #### PODIM算法的工作原理 PODEM算法在执行过程中,结合了正向驱动和反向回溯两种策略。具体而言: - **正向驱动**:选择故障信息D(D)与原始输出最近的门,以期尽快达到测试目的。 - **反向回溯**:当目标值为0时,优先选择AND门和NOR门的输出信号线;当目标值为1时,则优先选择OR门和NAND门的输出信号线。这种策略有助于快速定位和测试特定故障。 #### PODIM算法的流程 PODEM算法遵循一套严格的步骤,确保测试向量的有效生成: 1. **初始化阶段**:给未分配的PI(Primary Input)分配二进制值。 2. **确定所有PI的蕴涵**:通过分析电路结构,确定输入之间的逻辑关系。 3. **测试矢量生成**:如果成功,算法结束。 4. **检查是否需要更多PI的测试矢量**:如果需要,返回第一步继续处理。 5. **检查PI上是否存在未试验的组合值**:如果不存在,可能意味着存在不可测试的故障。 6. **采用目标和回溯**:设置PI上的未试验组合值,再次进行测试。 #### PODIM算法的应用实例 通过一系列实例,如例4所示,PODEM算法首先激活故障,然后反向回溯至原始输入,每步都确保满足激活条件和赋值的准确性。例如,在设置r到1敏化故障的过程中,通过逐步的正向驱动和反向回溯,最终确定了有效的测试向量,确保了故障的准确检测。 #### 结论 冯建华教授的课程不仅提供了PODEM算法的理论基础,还通过实际案例深入浅出地讲解了其在VLSI可测性设计中的应用。对于从事集成电路设计与验证的工程师来说,掌握PODEM算法能够显著提升测试效率,减少设计周期,是不可或缺的重要技能。
- 粉丝: 0
- 资源: 22
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助