Patent ID: 11907056
Assignee: ARM LIMITED
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 7:
8. A data processing system comprising:
a plurality of processing units, wherein each of the plurality of processing units is operable to process data to generate a sequence of outputs, wherein the processing units are configurable, when generating the sequence of outputs, such that data processing for generating each output in the sequence of outputs will be performed within a respective processing period for the output; and
a controller for the processing unit, wherein the controller is configured to cause the processing unit of the plurality of processing units, when generating the sequence of outputs, during respective processing periods for a plurality of outputs in the sequence of outputs, to also undergo one or more fault detection tests such that, for at least one output of the plurality of outputs, both processing of data for the at least one output and fault detection testing is performed during respective processing period for the at least one output;
wherein performing fault detection testing comprises performing a diagnostic test sequence comprising a plurality of the fault detection tests, wherein the fault detection tests are distributed across the processing periods for multiple outputs in the sequence of outputs such that the diagnostic test sequence is completed within a defined diagnostic test interval;
wherein the controller is configured to dynamically control the processing unit to perform processing work or fault detection testing to ensure that the diagnostic test sequence is completed within the defined diagnostic test interval;
wherein the controller is configured to initially control the processing unit to prioritise processing work, but is operable to prioritise fault detection testing over the processing work to ensure the diagnostic test sequence is completed within the defined diagnostic test interval; and
wherein the controller is configured to interrupt processing work for the processing unit to perform fault detection testing to ensure the diagnostic test sequence is completed within the defined diagnostic test interval, and
wherein when the controller is further configured to cause processing work for a particular one of the processing units to be interrupted so that the processing unit can perform fault detection testing, the controller is configured to move the processing work for the processing unit that is performing the fault detection testing to another processing unit of the plurality of processing units.