Deterministic reversible MPSoC debugger based on virtual platform execution traces - Archive ouverte HAL Accéder directement au contenu
Article Dans Une Revue Design Automation for Embedded Systems Année : 2016

Deterministic reversible MPSoC debugger based on virtual platform execution traces

Résumé

The increasing complexity of multiprocessor system on chip (MPSoC) makes the software developers life harder when chasing bugs. The debugging process is particularly tedious as it involves analyzing parallel execution flows. Executing a program many times is an integral part of the process in conventional debugging, but the non-determinism due to parallel execution often leads to different execution paths and different behaviors. In this paper, we propose an approach based on simulation, as it is nowadays an integral part of the MPSoC design flow, to ease pin-pointing bugs in a parallel execution. To that aim, we collect traces using a virtual platform, and when an execution fails, re-execute the traces, in either forward or reverse direction. We define a trace model suitable for this task, and detail a strategy for providing forward and reverse execution features to avoid long simulation times during a debug session. We demonstrate experimentally that re-execution is a deterministic process which, when debugging using the usual trial and error developer approach, is much faster than simulation.
Fichier non déposé

Dates et versions

hal-01332728 , version 1 (16-06-2016)

Licence

Paternité - Pas d'utilisation commerciale

Identifiants

Citer

M. Cunha, N. Fournel, Frédéric Pétrot. Deterministic reversible MPSoC debugger based on virtual platform execution traces. Design Automation for Embedded Systems, 2016, 20 (1), pp.47-63. ⟨10.1007/s10617-015-9167-8⟩. ⟨hal-01332728⟩

Collections

UGA CNRS TIMA
29 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More