In-Circuit Emulator Trace Memory Event Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional in-circuit emulator devices cannot immediately test operations at the occurrence time of events during program execution based on the recorded history, limiting real-time debugging capabilities.
Innovation Solution
An in-circuit emulator device with a CPU, trace memories, an event detection circuit, and an event trace control circuit that allows for immediate retrieval of parameter value changes upon specific event detection, enabling real-time debugging without stopping program execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If the conventional in-circuit emulator device references instruction execution history and data access history recorded in the trace memory device after the debugging CPU has completed execution of the program, then the device can analyze the complete program execution, but it cannot immediately test operations at the occurrence time of events during program execution
Solution Approach 1:
The patent applies preliminary action by continuously storing parameter values in trace memories during program execution before any event occurs. The trace memories are pre-configured to capture and retain parameter changes throughout the entire execution process, so when a specific event occurs, the relevant parameter history is already recorded and immediately available for reference, eliminating the time delay of post-execution analysis.
Solution Approach 2:
The patent segments the trace memory into multiple independent trace memories, each dedicated to storing parameter values for specific events or execution phases. This segmentation allows the system to quickly locate and reference only the relevant parameter history for a particular event without processing the entire program execution history, enabling immediate real-time debugging when events occur during execution.
2Ease of operation
If the in-circuit emulator device continuously stores parameter values during program execution to enable immediate reference, then real-time debugging becomes possible, but the device complexity increases with multiple trace memories and control circuits
Solution Approach 1:
The event trace control circuit performs multiple functions: it controls the storage operation of trace memories during normal execution, detects specific events, stops storage operations in response to events, and reads out parameter values. This multi-functionality reduces the need for separate dedicated circuits for each function, thereby managing device complexity while enabling real-time debugging capabilities.
Solution Approach 2:
The patent extracts only the necessary parameter values related to specific events from the continuous stream of parameter changes and stores them in dedicated trace memories. By extracting and storing only event-relevant data rather than all possible data, the system reduces the complexity of data management and access while maintaining real-time debugging capability for critical events.
3Measurement precision
If the in-circuit emulator device stops program execution to reference trace memory data, then complete analysis is possible, but program execution is interrupted and debugging efficiency decreases
Solution Approach 1:
The trace memories act as an intermediary between the executing program and the analysis function. They continuously capture and store parameter values during program execution without interrupting the CPU, allowing the debugging system to reference complete and accurate operation history at any time while the program continues to execute, thus maintaining both measurement precision and debugging efficiency.
Data Source
AI summary
An in-circuit emulator device includes a CPU that executes a program, and outputs or inputs/outputs parameter values that change due to a program being executed, a plurality of trace memories that sequentially store the parameter values outputted by or inputted/outputted to/by the CPU to form a change history of the parameter values, an event detection circuit that detects a specific event that occurs as the CPU executes the program, and an event trace control circuit that stops a storage operation of any one of the plurality of trace memories in response to detection of the specific event by the event detection circuit, and reads and outputs the change history of the parameter value from the one trace memory.

