• DocumentCode
    3847051
  • Title

    Caches and Predictors for Real-Time, Unobtrusive, and Cost-Effective Program Tracing in Embedded Systems

  • Author

    Aleksandar Milenkovic;Vladimir Uzelac;Milena Milenkovic;Martin Burtscher

  • Author_Institution
    The University of Alabama in Huntsville, Huntsville
  • Volume
    60
  • Issue
    7
  • fYear
    2011
  • Firstpage
    992
  • Lastpage
    1005
  • Abstract
    The increasing complexity of modern embedded computer systems makes software development and system verification the most critical steps in system development. To expedite verification and program debugging, chip manufacturers increasingly consider hardware infrastructure for program debugging and tracing, including logic to capture and filter traces, buffers to store traces, and a trace port through which the trace is read by the debug tools. In this paper, we introduce a new approach to capture and compress program execution traces in hardware. The proposed trace compressor encompasses two cost-effective structures, a stream descriptor cache, and a last stream predictor. Information about the program flow is translated into a sequence of hit and miss events in these structures, thus dramatically reducing the number of bits that need to be sent out of the chip. We evaluate the efficiency of the proposed mechanism by measuring the trace port bandwidth on a set of benchmark programs. Our mechanism requires only 0.15 bits/instruction/CPU on average on the trace port, which is a sixfold improvement over state-of-the-art commercial solutions. The trace compressor requires an on-chip area that is equivalent to one third of a 1 kilobyte cache and it allows for continual and unobtrusive program tracing in real time.
  • Keywords
    "Silicon","Debugging","Detectors","Program processors","Hardware","Bandwidth","Complexity theory"
  • Journal_Title
    IEEE Transactions on Computers
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/TC.2010.146
  • Filename
    5487509