nuTAB-BackSpace: rewriting to normalize non-determinism in post-silicon debug traces

  • Authors:
  • Flavio M. De Paula;Alan J. Hu;Amir Nahir

  • Affiliations:
  • Dept. of Comp. Sci., Univ. of British Columbia, Canada;Dept. of Comp. Sci., Univ. of British Columbia, Canada;IBM Corp., Haifa, Israel

  • Venue:
  • CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

A primary challenge in post-silicon debug is the lack of observability of on-chip signals. In 2008, we introduced BackSpace, a new paradigm that uses repeated silicon runs to automatically compute debug traces that lead to an observed buggy state. The original BackSpace, however, required excessive on-chip overhead, so we next developed TAB-BackSpace, which uses only pre-existing on-chip debug hardware to compute an abstract debug trace with very low probability of error. With TAB-BackSpace, we demonstrated root-causing a (previously known) bug on an IBM POWER7 processor, in actual silicon. The problem with these BackSpace approaches, however, is the need to repeatedly trigger the bug via the exact same execution. In practice, non-determinism makes such exact repetition extremely unlikely. Instead, what typically arises is an intuitively "equivalent" trace that triggers the same bug, but isn't cycle-by-cycle identical. In this paper, we introduce nuTAB-BackSpace to exploit this observation. The user provides rewrite rules to specify which traces should be considered equivalent, and nuTAB-BackSpace uses these rules to make progress in trace computation even in the absence of exact trace matches. We prove that under reasonable assumptions about the rewrite rules, the abstract trace computed by nuTAB-BackSpace is concretizable -- i.e., it corresponds to a possible, real chip execution (with the same low possibility of error as TAB-BackSpace). In simulation studies and in FPGA-emulation, nuTAB-BackSpace successfully computes error traces on substantial design examples, where TAB-BackSpace cannot.