Although a microprocessor is a sequential circuit, its behavior is too complex to be analysed directly by the tools presented in Chapter 7.

In this chapter, the time unit is associated with an instruction. A cycle corresponds to a period of a basic clock (several clocks with the same period may exist in a microprocessor). Execution of an instruction requires several cycles, and the number of cycles is not the same for all the instructions in a microprocessor. In this chapter, an instruction Ij then takes the place devoted to an input vector Xj in the preceding ones. The microprocessor is tested by a sequence of random instructions with random data.

A functional behavior model and functional fault models are considered, which may be used for test analysis in a user environment

The approach in this chapter can be used for a variety of microprocessor-like circuits, i.e., various circuits whose aim is to perform computations.

Functional models of faults are presented in Section 9.1. An accurate method (Markov chain) and an approximate method (MDTS) can be used for analysis of a fault in a microprocessor: they are compared in Section 9.2. How to estimate of the test lengths for faults in the data processing section and the control section of the microprocessor are presented in Sections 9.3 and 9.4, then the test length for a whole microprocessor is considered in Section 9.5.