Apply Abstraction Techniques to Embedded System Debug

碩士 === 國立臺灣大學 === 電機工程學研究所 === 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 si...

Full description

Bibliographic Details
Main Authors: Hung-Wei Wang, 王宏偉
Other Authors: Chung-Yang (Ric) Haung
Format: Others
Language:en_US
Published: 2014
Online Access:http://ndltd.ncl.edu.tw/handle/08207636713939355441
Description
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.