We consider designs where the same processing units (or circuits) appear multiple times. This is prevalent in current microprocessors and in reliable systems. Fault detection in such designs can be done by comparing output responses of identical circuits when identical input sequences are applied to them. The main advantage of this method over other methods of fault detection is that output responses do not need to be pre-computed, and therefore, arbitrary, unknown input sequences can be used for testing. We propose a design-for-testability method for such designs that applies the same modifications to the states of the circuits being compared. If the circuits are fault free, they continue to produce identical output sequences after their states are modified in the same way. However, if one of the circuits is faulty, state modification can help increase the distance between the circuit states and eventually contribute to the detection of the fault. The proposed state modifications can be implemented by using hardware that supports assignment statements in the instruction sets of microprocessors. Depending on the state modification used, the proposed method may be applicable to concurrent, on-line or off-line testing. We present experimental results to support the effectiveness of the proposed method.
展开▼