assertion-based debugging of hw/sw concurrency issues in ... · luis gabriel murillo. contact:...
TRANSCRIPT
![Page 1: Assertion-based Debugging of HW/SW Concurrency Issues in ... · Luis Gabriel Murillo. Contact: murillo@ice.rwth-aachen.de SWAT Debugger Framework a. Front-end and AST generation b](https://reader035.vdocument.in/reader035/viewer/2022071023/5fd88af7187b11268c6ecfda/html5/thumbnails/1.jpg)
Evaluation: EURETILE Platform
SW stack
KPN programming model for user applications (DAL)
Threading model and message passing for lower SW layers
OS running on each tile
Assertion-based Debugging of HW/SW Concurrency Issues
in Many-core Systems
Debugging is hard with multiple cores Many HW/SW actors working concurrently
Luis Gabriel Murillo. Contact: [email protected]
SWAT Debugger Framework
a. Front-end and AST generation
b. IR-level partitions and transformations
c. Assertion Checker generation
d. Source debugger back-end
SWAT being applied for: OS-level debugging and driver ISRs, e.g.:
Checking the collective state of the system (e.g.,
distributed arrays) in DAL applications, e.g.:
How to deal with concurrency bugs at the
system level?
System Complexity
$$
$
$$
The trend: Debugging based on Virtual
Platforms (VPs) Enable earlier HW/SW integration
Full control of HW and SW
Non-intrusive inspection
Vehicle to reproduce concurrency bugs
OSs Drivers
User Applications
…
SWAT: Language for System-wide Assertions Easy way to capture user knowledge, covering:
SW contexts (thread, process), variables
HW devices, signals, registers
Concurrency-related events (e.g., OS events)
Linear Temporal Logic (LTL)
(HW/SW signal handling bug)
(SW-only order violation bug)
Hard to find and
understand
Root unrelated to
visible symptoms
Random occurrences
Not always
reproducible
May remain unnoticed
(IRQ mask back-up/restore consistency check)
(Distribution of initial conditions)