Method for monitoring a program execution using a debug logic
First Claim
1. A computer readable medium having a program, the program performing a method for monitoring an execution of another program that is executable on at least one microprocessor of a micro controller using a debug logic of the micro controller, comprising:
- causing the debug logic to trigger an exception upon access to a specific address range during a program execution time;
causing the at least one microprocessor to configure the debug logic; and
causing the debug logic to execute an exception routine after the exception is triggered during the program execution time;
wherein the access to the specific address range includes access to an illegal storage area, andwherein the debug logic and its registers are operated in parallel to the program execution time to check a stack having the specific address range and an exception routine is set up in reaction to a break point event in the stack, so as to provide a secure stack check without using the program execution time of the microprocessor;
wherein the debug logic monitors a program run,wherein a memory address is stored that was accessed before an occurrence of the fault in the fault memory and at least a type of a fault is stored in a fault memory, before the micro controller is reset and started up again and before the program is initialized,wherein during the execution of the exception routine, the micro controller is reset, the micro controller is started up again, and the program is initialized,wherein the exception corresponds to an interrupt of the execution of the program,wherein the debug logic is configured during a startup of the micro controller,wherein the debug logic monitors whether the program one of (i) accesses a preselectable address range of a memory during the program execution time, and (ii) accesses an address range of a stack of the micro controller beyond a preselectable maximum stack size during the program execution time, andwherein the debug logic monitors whether an attempt is made during the program execution time to execute a code sequence of the program in a first type of memory, swapped out from the first type of memory of the micro controller into another type of memory of the microcontroller.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for monitoring the execution of a program executable on at least one microprocessor of a micro controller using a debug logic of the micro controller, with an exception, particularly an interrupt of the program execution, being triggered by the debug logic upon access to a specific address range during the program execution time. In order to provide monitoring of the execution of a program, executable on a microprocessor, for faults, which is particularly reliable yet conserves resources as much as possible, it is suggested that the debug logic be configured by the microprocessor and that an exception routine be executed by the debug logic after an exception has been triggered during the program execution time. The debug logic is advantageously configured during the startup of the micro controller. Preferably, the micro controller is reset and started up again and the monitored program is initialized during the execution of the exception routine.
40 Citations
9 Claims
-
1. A computer readable medium having a program, the program performing a method for monitoring an execution of another program that is executable on at least one microprocessor of a micro controller using a debug logic of the micro controller, comprising:
-
causing the debug logic to trigger an exception upon access to a specific address range during a program execution time; causing the at least one microprocessor to configure the debug logic; and causing the debug logic to execute an exception routine after the exception is triggered during the program execution time; wherein the access to the specific address range includes access to an illegal storage area, and wherein the debug logic and its registers are operated in parallel to the program execution time to check a stack having the specific address range and an exception routine is set up in reaction to a break point event in the stack, so as to provide a secure stack check without using the program execution time of the microprocessor; wherein the debug logic monitors a program run, wherein a memory address is stored that was accessed before an occurrence of the fault in the fault memory and at least a type of a fault is stored in a fault memory, before the micro controller is reset and started up again and before the program is initialized, wherein during the execution of the exception routine, the micro controller is reset, the micro controller is started up again, and the program is initialized, wherein the exception corresponds to an interrupt of the execution of the program, wherein the debug logic is configured during a startup of the micro controller, wherein the debug logic monitors whether the program one of (i) accesses a preselectable address range of a memory during the program execution time, and (ii) accesses an address range of a stack of the micro controller beyond a preselectable maximum stack size during the program execution time, and wherein the debug logic monitors whether an attempt is made during the program execution time to execute a code sequence of the program in a first type of memory, swapped out from the first type of memory of the micro controller into another type of memory of the microcontroller. - View Dependent Claims (2, 3, 4)
-
-
5. A control element for a micro controller, comprising:
-
an arrangement for storing a program, the program being executable on at least one microprocessor to perform the following; causing a debug logic to trigger an exception upon access to a specific address range during a program execution time, causing the at least one microprocessor to configure the debug logic, and causing the debug logic to execute an exception routine after the exception is triggered during the program execution time; wherein the access to the specific address range includes-access to an illegal storage area, and wherein the debug logic and its registers are operated in parallel to the program execution time to check a stack having the specific address range and an exception routine is set up in reaction to a break point event in the stack, so as to provide a secure stack check without using the program execution time of the microprocessor; wherein the debug logic monitors a program run, wherein a memory address is stored that was accessed before an occurrence of the fault in the fault memory and at least a type of a fault is stored in a fault memory, before the micro controller is reset and started up again and before the program is initialized, wherein during the execution of the exception routine, the micro controller is reset, the micro controller is started up again, and the program is initialized, wherein the exception corresponds to an interrupt of the execution of the program, wherein the debug logic is configured during a startup of the micro controller, wherein the debug logic monitors whether the program one of (i) accesses a preselectable address range of a memory during the program execution time, and (ii) accesses an address range of a stack of the micro controller beyond a preselectable maximum stack size during the program execution time, and wherein the debug logic monitors whether an attempt is made during the program execution time to execute a code sequence of the program in a first type of memory, swapped out from the first type of memory of the micro controller into another type of memory of the microcontroller. - View Dependent Claims (6, 7)
-
-
8. A micro controller, comprising:
-
at least one microprocessor; a debug logic, wherein; a program is executable on the at least one microprocessor, the debug logic monitors an execution of the program during a program execution time and triggers an exception upon access to a specific address range, and the at least one microprocessor configures the debug logic; and an arrangement for executing an exception routine after the exception is triggered during the program execution time; wherein the access to the specific address range includes-access to an illegal storage area, and wherein the debug logic and its registers are operated in parallel to the program execution time to check a stack having the specific address range and an exception routine is set up in reaction to a break point event in the stack, so as to provide a secure stack check without using the program execution time of the microprocessor; wherein the debug logic monitors a program run, wherein a memory address is stored that was accessed before an occurrence of the fault in the fault memory and at least a type of a fault is stored in a fault memory, before the micro controller is reset and started up again and before the program is initialized, wherein during the execution of the exception routine, the micro controller is reset, the micro controller is started up again, and the program is initialized, wherein the exception corresponds to an interrupt of the execution of the program, wherein the debug logic is configured during a startup of the micro controller, wherein the debug logic monitors whether the program one of (i) accesses a preselectable address range of a memory during the program execution time, and (ii) accesses an address range of a stack of the micro controller beyond a preselectable maximum stack size during the program execution time, and wherein the debug logic monitors whether an attempt is made during the program execution time to execute a code sequence of the program in a first type of memory, swapped out from the first type of memory of the micro controller into another type of memory of the microcontroller. - View Dependent Claims (9)
-
Specification