Emulator chip/board architecture and interface
First Claim
1. A communication interface for coupling a device (DUT) under test with an emulator device, the emulator device implementing the DUT and executing instruction in lock-step with the DUT, the communication interface comprising:
- a time dependent data transport portion that communicates serialized data between the DUT and the emulator device; and
a clock portion that supplies clock information to the DUT and the emulator device;
whereinthe time dependent data transport portion transports varying types of information depending upon a time phase of operation of the DUT and the emulator device.
3 Assignments
0 Petitions
Accused Products
Abstract
A communication interface for an in-circuit emulation system. The interface uses four pins between a virtual microcontroller (an FPGA emulating a microcontroller) and a real microcontroller under test. The bus is fast enough to allow the two devices to operate in synchronization. I/O reads, interrupt vector information and watchdog information is provided over the bus in a time fast enough to allow execution in lock step. Two data lines are provided, one is bi-directional and one is driven only by the microcontroller. A system clock is provided and the microcontroller supplies its clock signal to the FPGA since the microcontroller can operate at varying clock speeds. The bus is time-dependent so more information can be placed on this reduced-pin count bus. Therefore, instructions and data are distinguished based on the time the information is sent within the sequence. The bus can be used to carry trace information, program the flash memory on the microcontroller, perform test control functions, etc.
149 Citations
26 Claims
-
1. A communication interface for coupling a device (DUT) under test with an emulator device, the emulator device implementing the DUT and executing instruction in lock-step with the DUT, the communication interface comprising:
-
a time dependent data transport portion that communicates serialized data between the DUT and the emulator device; and a clock portion that supplies clock information to the DUT and the emulator device;
whereinthe time dependent data transport portion transports varying types of information depending upon a time phase of operation of the DUT and the emulator device. - View Dependent Claims (2, 3, 4)
-
-
5. A communication interface, comprising:
-
an interface; a microcontroller; an emulator device implementing a microcontroller and executing instructions; wherein the microcontroller is coupled to the emulator device via the interface, the microcontroller executing the instructions in lock-step with the emulator device; and wherein the interface comprises; a first time dependent data line; a second bi-directional time dependent data line; a third line for supplying an internal clock signal from the microcontroller; and a system clock line. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A four-wire interface for use in an in-circuit emulation (ICE) system to couple a microcontroller with an emulator device functioning as a virtual microcontroller, comprising:
-
a first interface line carrying a system clock driven by the microcontroller, for driving the communication state machines forming a part of the virtual microcontroller; a second interface line carrying an internal microcontroller CPU clock; a third interface line for use by the microcontroller to send I/O data to the ICE and to notify the ICE of pending interrupts; and a fourth interface line for bi-directional communication that is used by the microcontroller to send I/O data to the ICE, and that is used by the ICE to convey halt requests to the microcontroller. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A four wire interface for use in an in-circuit emulation (ICE) system to couple a microcontroller with an emulator device based on a field programmable gate array (FPGA) functioning as a virtual microcontroller, comprising:
-
a first interface line carrying a system clock driven by the microcontroller, for driving the communication state machines forming a part of the virtual microcontroller; a second interface line carrying an internal microcontroller CPU clock, where in the clock frequency of the microcontroller is programmable; wherein the system clock runs at a first clock rate, unless the internal microcontroller CPU clock is running at the first clock rate in which case the system clock switches to two times the first clock rate; a third interface line for use by the microcontroller to send I/O data to the ICE and to notify the ICE of pending interrupts; a fourth interface line used for bi-directional communication that is used by the microcontroller to send I/O data to the ICE, and that is used by the ICE to convey halt requests to the microcontroller; wherein register read/write commands are conveyed over the third and fourth interface lines when the microcontroller is in a halted mode and wherein the third and fourth interface lines are used to communicated I/O read, interrupt vector and watchdog timer information when the microcontroller is running; wherein test and control functions are carried over the third and fourth interface lines to carry out real-time trace functions; wherein the microcontroller sends I/O data over the interface at a rate adequate to keep the microcontroller and the emulation device in synchronization; and wherein the interface lines are carried over a Category five cable.
-
Specification