Effective Post-Silicon Validation of System-on-Chips Using Quick Error Detection
- 16 September 2014
- journal article
- research article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
- Vol. 33 (10) , 1573-1590
Abstract
This paper presents the Quick Error Detection (QED) technique for systematically creating families of post-silicon validation tests that quickly detect bugs inside processor cores and uncore components (cache controllers, memory controllers, and on-chip interconnection networks) of multicore system on chips (SoCs). Such quick detection is essential because long error detection latency, the time elapsed between the occurrence of an error due to a bug and its manifestation as an observable failure, severely limits the effectiveness of traditional post-silicon validation approaches. QED can be implemented completely in software, without any hardware modification. Hence, it is readily applicable to existing designs. Results using multiple hardware platforms, including the Intel® Core™ i7 SoC, and a state-of-the-art commercial multicore SoC, along with simulation results using an OpenSPARC T2-like multicore SoC with bug scenarios from commercial multicore SoCs demonstrate: 1) error detection latencies of post-silicon validation tests can be very long, up to billions of clock cycles, especially for bugs inside uncore components; 2) QED shortens error detection latencies by up to nine orders of magnitude to only a few hundred cycles for most bug scenarios; and 3) QED enables up to a fourfold increase in bug coverage.Keywords
This publication has 48 references indexed in Scilit:
- The Daikon system for dynamic detection of likely invariantsScience of Computer Programming, 2007
- Multifacet's general execution-driven multiprocessor simulator (GEMS) toolsetACM SIGARCH Computer Architecture News, 2005
- The LINPACK Benchmark: past, present and futureConcurrency and Computation: Practice and Experience, 2003
- ED/sup 4/I: error detection by diverse data and duplicated instructionsIEEE Transactions on Computers, 2002
- Control-flow checking by software signaturesIEEE Transactions on Reliability, 2002
- Error detection by duplicated instructions in super-scalar processorsIEEE Transactions on Reliability, 2002
- Embedded software-based self-test for programmable core-based designsIEEE Design & Test of Computers, 2002
- Software-implemented EDAC protection against SEUsIEEE Transactions on Reliability, 2000
- Collection and analysis of microprocessor design errorsIEEE Design & Test of Computers, 2000
- Distributed deadlock detectionACM Transactions on Computer Systems, 1983