通常集成电路芯片故障检测必需的模块有三个:源激励模块,观测信息采集模块和检测模块。源激励模块用于将测试向量输送给集成电路芯片,以驱使芯片进入各种工作模式。故,通常希望测试向量集能尽量多得包含所有可能的输入向量。观测信息采集模块负责对之后用于分析和处理的信息进行采集。观测信息的选取对于故障检测至关重要,它应当尽量多的包含故障特征信息且容易采集。检测模块负责分析处理采集到的观测信息,将隐藏在观测信息中的故障特征识别出来,以诊断出电路故障的模式。
最早的电路故障诊断方法主要依靠一些简单工具进行测试诊断,它极大地依赖于专家或技术人员的理论知识和经验。在这些测试方法中,最常用的主要有四类:虚拟测试、功能测试、结构测试和缺陷故障测试。虚拟测试不需要检测实际芯片,而只测试仿真的芯片,适用于在芯片制造前进行。它能及时检测出芯片设计上的故障,但它并未考虑芯片在实际的制造和运行中的噪声或差异。功能测试依据芯片在测试中能否完成预期的功能来判定芯片是否存在故障。这种方法容易实施但无法检测出非功能性影响的故障。结构测试是对内建测试的改进,它结合了扫描技术,多用于对生产出来的芯片进行故障检验。缺陷故障测试基于实际生产完成的芯片,通过检验芯片的生产工艺质量来发现是否包含故障。缺陷故障测试对专业技术人员的知识和经验都要求很高。芯片厂商通常会将这四种测试技术相结合,以保障集成电路芯片从设计到生产再到应用整个流程的可靠性和安全性。然而,对于日趋复杂的电路系统,这些早期方法越发显得捉襟见肘。经过不断的改进和创新,许多新的思想和方法相继问世。