INSTRUCTION MONITORING MODULE
Provided is a module for monitoring instructions of a microcontroller. The module is adapted to receive instructions that are received at an input terminal of the microcontroller or that are being processed by a code pointer of the microcontroller. The module verifies the instructions received on the input terminal of the microcontroller or that are being processed by the code pointer of the microcontroller.
1 . A module for monitoring instructions of a microcontroller, comprising:
an input configured to receive instructions that are received at an input terminal of said microcontroller or that are being processed by a code pointer of said microcontroller; and
circuitry configured to verify the instructions that are received on the input terminal of said microcontroller or that are being processed by the code pointer of said microcontroller.
2 . The module according to claim 1 , wherein the microcontroller is configured to process the instructions in response to the module verifying the instructions.
3 . The module according to claim 1 , wherein the microcontroller is set to an error mode, a secure mode, or a semi-secure mode in response the verification by the module indicating that the instructions are not valid.
4 . The module according to claim 1 , wherein the circuitry is configured to verify the instructions by comparing at least one data element corresponding to said instructions with a reference data element.
5 . The module according to claim 4 , wherein when the instructions are received on said input terminal of said microcontroller, the reference data element is data element “0xFFFFFFFF.”
6 . The module according to claim 5 , wherein when the instructions are processed by the code pointer of said microcontroller, the reference data element is data element “0xF0000002.”
7 . The module according to claim 1 , wherein said input terminal of said microcontroller is a terminal having a connection to a data bus.
8 . The module according to claim 7 , wherein the data bus is a communication bus of Advanced High-performance Bus type.
9 . The module according to claim 7 , wherein the data bus is a communication bus of an Advanced extensible Interface (AXI) type.
10 . The module according to claim 1 , wherein said instructions originate from a memory.
11 . The module or method according to claim 10 , wherein said memory is a non-volatile memory.
12 . The module or method according to claim 10 , wherein said memory is a flash-type RAM.
13 . A microcontroller comprising:
a module for monitoring instructions of the microcontroller, the module including:
an input configured to receive instructions that are received at an input terminal of said microcontroller or that are being processed by a code pointer of said microcontroller; and
circuitry configured to verify the instructions that are received on the input terminal of said microcontroller or that are being processed by the code pointer of said microcontroller.
14 . The microcontroller according to claim 13 , wherein the microcontroller is configured to process the instructions in response to the module verifying the instructions.
15 . The microcontroller according to claim 13 , wherein the microcontroller is set to an error mode, a secure mode, or a semi-secure mode in response the verification by the module indicating that the instructions are not valid.
16 . The microcontroller according to claim 13 , wherein the circuitry is configured to verify the instructions by comparing at least one data element corresponding to said instructions with a reference data element.
17 . The microcontroller according to claim 16 , wherein when the instructions are received on said input terminal of said microcontroller, the reference data element is data element “0xFFFFFFFF.”
18 . A method, implemented by a monitoring module, for verification of instructions of a microcontroller, the method comprising:
receiving instructions that are received at an input terminal of said microcontroller or that are being processed by a code pointer of said microcontroller; and
verifying the instructions received at the input terminal of said microcontroller or that are being processed by the code pointer of said microcontroller.
19 . The method according to claim 18 , comprising:
processing, by the microcontroller, the instructions in response to the module verifying the instructions.
20 . The method according to claim 18 , wherein the microcontroller is set to an error mode, a secure mode, or a semi-secure mode in response the verification by the module indicating that the instructions are not valid.