• DocumentCode
    2853726
  • Title

    A methodology for detecting performance faults in microprocessors via performance monitoring hardware

  • Author

    Hatzimihail, M. ; Psarakis, M. ; Gizopoulos, D. ; Paschalis, A.

  • Author_Institution
    Dept. of Inf., Univ. of Piraeus, Piraeus
  • fYear
    2007
  • fDate
    21-26 Oct. 2007
  • Firstpage
    1
  • Lastpage
    10
  • Abstract
    Speculative execution of instructions boosts performance in modern microprocessors. Control and data flow dependencies are overcome through speculation mechanisms, such as branch prediction or data value prediction. Because of their inherent self-correcting nature, the presence of defects in speculative execution units does not affect their functionality (and escapes traditional functional testing approaches) but impose severe performance degradation. In this paper, we investigate the effects of performance faults in speculative execution units and propose a generic, software-based test methodology, which utilizes available processor resources: hardware performance monitors and processor exceptions, to detect these faults in a systematic way. We demonstrate the methodology on a publicly available fully pipelined RISC processor that has been enhanced with the most common speculative execution unit, the branch prediction unit. Two popular schemes of predictors built around a Branch Target Buffer have been studied and experimental results show significant improvements on both cases fault coverage of the branch prediction units increased from 80% to 97%. Detailed experiments for the application of a functional self-testing methodology on a complete RISC processor incorporating both a full pipeline structure and a branch prediction unit have not been previously given in the literature.
  • Keywords
    computerised instrumentation; electronic engineering computing; microprocessor chips; branch prediction unit; branch target buffer; fault coverage; functional self-testing methodology; hardware performance monitor; microprocessor; performance fault detection; performance monitoring hardware; pipelined RISC processor; processor resource; reduced instruction set computing; software-based test methodology; speculative execution unit; Automatic testing; Built-in self-test; Degradation; Fault detection; Hardware; Microprocessors; Monitoring; Reduced instruction set computing; Software testing; System testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Test Conference, 2007. ITC 2007. IEEE International
  • Conference_Location
    Santa Clara, CA
  • ISSN
    1089-3539
  • Print_ISBN
    978-1-4244-1127-6
  • Electronic_ISBN
    1089-3539
  • Type

    conf

  • DOI
    10.1109/TEST.2007.4437646
  • Filename
    4437646