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
Link To Document