Summary: | 碩士 === 國立臺灣大學 === 電機工程學研究所 === 102 === When a system goes wrong, it is difficult to find out the root cause due to lack of system observability、non-deterministic behavior of the system、multiple clock domain and real-time application constraints. It is desirable if we can reproduce the bug on the simulation platform which is fully observable and controllable.
However, it is nearly impossible to simulate the whole system due to limited simulation speed. Moreover, the non-deterministic behavior of the system make it even worse. The bug may only exist on specific path and it is hard to reproduce the bug.
In this work, we try to remove the bug-unrelated parts of the system. By abstracting the system, we narrow down the root cause of the bug, shorten the bug trace and speed up the simulation. Besides, we discuss what the abstract system state transition should be so that we can record the necessary transactions of CPU and rebuild its behavior model later.
|