Functional Testing of Processor Cores in FPGA-Based Applications

keywords: Built-in self-test, embedded processor core test, fault injection, fault modelling, functional test, single-event upset
Embedded processor cores, which are widely used in SRAM-based break FPGA applications, are candidates for SEU (Single Event Upset)-induced faults and need to be tested occasionally during system exploitation. Verifying a processor core is a difficult task, due to its complexity and the lack of user knowledge about the core-implementation details. In user applications, processor cores are normally tested by executing some kind of functional test in which the individual processor's instructions are tested with a set of deterministic test patterns, and the results are then compared with the stored reference values. For practical reasons the number of test patterns and corresponding results is usually small, which inherently leads to low fault coverage. In this paper we develop a concept that combines the whole instruction-set test into a compact test sequence, which can then be repeated with different input test patterns. This improves the fault coverage considerably with no additional memory requirements.
reference: Vol. 28, 2009, No. 1, pp. 97–113