The error detection use case requires that all transient and permanent faults are detected. This is essential in fail safe and fault tolerant applications, where redundancy is used to improve system availability.
In this system two redundant MicroBlaze processors run in lockstep. A comparator is used to signal an error when a mis-match is detected on the outputs of the two processors. Any error immediately causes both processors to halt, preventing further error propagation.
The redundant MicroBlaze processors are functionally identical, except for debug logic and associated signals.The outputs from the master MicroBlaze core drive the peripherals in the system. The slave MicroBlaze core only has inputs connected; all outputs are left open.
The system contains the basic building block for designing a complete fault tolerant application, where one or more additional blocks must be added to provide redundancy.
This use case is illustrated in the following figure.