Error Detection
Thu Jan 24, 2019 · 307 words

How can we classify the various types of error that occur in embedded systems?

Why classify them? Each different type can be handled in a manner thats more appropriate.

Errors in externally-sourced data.

Can be caught by validation checks Need to be complete. must strictly control our input. One of two recovery options, “silent drop” or “log and continue”.

Errors in internally-generated data

This is the internal state of the application, and tends to be contained on the stack or in global variables. The implication here is that the software itself has corrupted its internal state and hence cannot recover. Unsafe to continue, must reset to restore a valid internal state.

Errors in behaviour

These tend to be the incorrect behaviour of the application, ‘designed-in’. Unrecoverable, must log and reset.

Errors in hardware

Requires application-level recovery. Application can invoke particular behaviours to attempt recovery. Likely go into a ‘safe mode’.

Chains of errors

One type of error can trigger another. Should ideally be detected at first error.

For example, a


back · Articles · Who am I? ·