|
发表于 2019-2-22 13:14:12
|
显示全部楼层
Synopsys SolvNet, Mentor training 都有全面的 simulation fail debug guideline, 可以参考.
需确认Simulation 环境与 ATPG constraints 一致. Netlist, PLL verilog model, ATPG pattern, ATPG constraints, etc
通过Dump waveform or checker 确认, chip-level/core-level scan signals, 在shift/capture phase 是符合预期的, 跟 ATPG test procedure 一样. 比如说, Scan mode, scan enable, scan reset, scan clocks, scan inputs, scan outputs, PLL clocks, OCC control bits. 即是从chip-level I/O pad 能正确地送值给 internal scan chains, 能够从chip-level output I/O pad 观察到.
以上都没有问题, 如果是post-simulation with SDF, 再确认simulation (some VCS options, etc)环境是不是正确.
以对Design, ATPG pattern的了解都没有办法, 只有dump waveform实实在在找问题.
比如说由于timing violation(SDF), 除 review STA, simulation report violated path/register外, 这就是必须要做的了.
Scan chain length 比较长, debug 费时的问题怎么解决?
1. Parallel run simulation, NSHIFT = 2, etc (如果说是post-simulation fail, NSHIFT比pre-sim pass的值加1)
2. 在 load procedure 完, 去观察 scan chain care bit value 是不是与ATPG or pre-sim pass value 一样?
3. 如果不一样, 就找到了有问题的register. (只敲一个shift clock pulse)
无论是pre-sim/post-sim, chain test or logic test fail 都有效.
如何去观察整条scan chain registers? 可以automatic写一个monitor test-bench, 在某一个时间点display register value. 对比pass/fail两个结果就知道哪个register是错的.
如果是pre-sim, 没有可以对比的, 那要想办法从ATPG pattern DAT 看怎么提取了. |
|