Breakpoint control in an in-circuit emulation system
First Claim
Patent Images
1. An In-Circuit Emulation system breakpoint control, comprising:
- a microcontroller;
a virtual microcontroller, which is not identical to and emulates operation of the microcontroller, configured to operate in lock-step synchronization with the microcontroller by executing same instructions using same clocking signals;
a breakpoint lookup table which is accessed in response to operation of said virtual microcontroller, wherein said breakpoint lookup table comprises a plurality of break bits associated with a sequence of instruction addresses, and wherein said sequence of instruction addresses are associated with the virtual microcontroller, and wherein each of said sequence addresses has a corresponding break bit, the break bit being set to indicate that a break is to occur at a specified address; and
a breakpoint controller that sends a break message to the microcontroller whenever an instruction address is encountered that is associated with a set break bit.
5 Assignments
0 Petitions
Accused Products
Abstract
A breakpoint control mechanism for an In-Circuit Emulation system. Break bits are assigned to each instruction address and stored in a lookup table within a base station containing a virtual microcontroller. As a program counter increments, a determination is made as to whether or not a break is to occur by reading the break bit from the lookup table. When a break is to occur, a breakpoint controller issues a break command over an interface to an actual microcontroller under test, thus freeing the microcontroller under test from having to include a look-up table on board for a breakpoint control or otherwise provide specifically for breakpoint control.
1182 Citations
21 Claims
-
1. An In-Circuit Emulation system breakpoint control, comprising:
-
a microcontroller; a virtual microcontroller, which is not identical to and emulates operation of the microcontroller, configured to operate in lock-step synchronization with the microcontroller by executing same instructions using same clocking signals; a breakpoint lookup table which is accessed in response to operation of said virtual microcontroller, wherein said breakpoint lookup table comprises a plurality of break bits associated with a sequence of instruction addresses, and wherein said sequence of instruction addresses are associated with the virtual microcontroller, and wherein each of said sequence addresses has a corresponding break bit, the break bit being set to indicate that a break is to occur at a specified address; and a breakpoint controller that sends a break message to the microcontroller whenever an instruction address is encountered that is associated with a set break bit. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of establishing a breakpoint in a microcontroller in an In-Circuit Emulation system, comprising:
-
storing a breakpoint lookup table in a virtual microcontroller, which is not identical to and emulates operation of the microcontroller, wherein said breakpoint lookup table comprises a plurality of break bits associated with a sequence of instructions, wherein each of said sequence of instructions has a corresponding break bit; executing said sequence of instructions in the microcontroller and in the virtual microcontroller in lock-step synchronization by using same clocking signals; at each instruction of the sequence of instructions to be executed by said virtual microcontroller, inspecting the breakpoint lookup table for a set break bit associated with instruction; and if a break bit is set, sending a break message to the microcontroller to implement a break in instruction execution. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A method of establishing a breakpoint in an In-Circuit Emulation system, comprising:
-
executing a sequence of instructions in a microcontroller and in a virtual microcontroller, which is not identical to and emulates operation of the microcontroller, in lock-step synchronization by using same clocking signals, the virtual microcontroller having a breakpoint lookup table, wherein said breakpoint lookup table comprises a plurality of break bits associated with said sequence of instructions, and wherein each of said sequence of instructions has a corresponding break bit; determining an instruction address which a break is to precede; programming the breakpoint lookup table to have a set break bit at the instruction address which the break is to precede; at each instruction of the sequence of instructions to be executed by said virtual microcontroller, inspecting the breakpoint lookup table for a set break bit associated with instruction; and halting execution of instructions in the microcontroller and the virtual microcontroller prior to the instruction associated with the set break bit. - View Dependent Claims (17, 18, 19, 20, 21)
-
Specification