嵌入式系统测试与优化技术解析
1. 签名分析
在测试被测设备(DUT)时,为避免移出响应,可对响应进行压缩。具体操作是,将生成的测试模式作为输入(刺激)提供给 DUT,DUT 的响应经过压缩形成签名,该签名用于表征响应,后续会将其与预期响应进行比较,预期响应可通过仿真计算得出。
压缩通常使用线性反馈移位寄存器(LFSR),即带有异或反馈的移位寄存器。以 4 位 LFSR 为例,在测试过程中,将系统测试的响应发送到 LFSR 的输入,LFSR 会生成反映该响应的签名。由于存储的是签名而非完整响应,多个响应模式可能映射到相同的签名。
对于一个 n 位签名生成器,可生成 (2^n) 个签名。对于 DUT 的 m 位响应,最佳情况是将 (2^{(m - n)}) 个响应均匀映射到同一个签名。假设系统正确响应应生成特定签名,那么会有 (2^{(m - n)} - 1) 个错误响应也映射到该签名。若响应为 m 位长,总共有 (2^m - 1) 个错误响应。因此,错误响应映射到正确签名的概率(假设模式均匀映射到签名)为:
[P = \frac{2^{(m - n)} - 1}{2^m - 1} \approx \frac{1}{2^n} \text{(当 } m \gg n \text{ 时)}]
这表明,如果移位寄存器较长,从错误测试响应生成正确签名的概率非常小。
2. 伪随机测试模式生成
对于具有大量触发器的芯片,移入测试模式可能需要较长时间。为加快芯片上模式的生成过程,可在芯片上集成用于生成测试模式的硬件。例如,可使用由 LFSR 生成的伪随机模式作为测试模式。通过对特定电路进行修改,可生成除全零模式外的所有可能测试模式,因