A microcontroller has many internal peripheral devices. The peripheral devices
are coupled to a scan path. A memory storage device that is external to the microcontroller
is also coupled to the scan path. When commanded, data is shifted out of each device
configuration register onto the scan path and stored in the external memory device.
This is particularly useful for obtaining the states of each device without bringing
down the application. Furthermore, configuration data stored in external memory
can be loaded into the peripheral device configuration registers via the scan path.
This invention also supports zero-volt suspend/resume which does not need extra
software readable shadow registers which are often required in other architectures
for reading back the current state of legacy registers which are read-only.