Instruction Tracing Execution Mode Packet Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing instruction tracing systems face challenges in accurately tracking execution modes and transactional memory operations, leading to misinterpretation of instruction bytes and errors in decoding software control flow due to lack of real-time mode information and synchronization issues.

Innovation Solution

The implementation of an instruction tracing system that generates execution mode (EM) and transactional memory (TMX) packets with two-bit patterns to indicate current processor modes, including changes in execution mode and transactional memory status, ensuring the decoder receives precise mode information at periodic sync points and mode change events.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the instruction tracing system does not track execution mode changes, then the tracing system is simpler, but the decoder cannot accurately interpret instruction bytes leading to control flow errors

Engineering Contradiction:
Improvedecoding accuracyVSAvoidtracing system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The execution mode tracking is segmented into discrete EM packets that are inserted at specific points in the trace (mode change events and periodic sync points). This segmentation allows the decoder to receive mode information only when necessary, maintaining accuracy without continuously increasing trace complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

EM packets serve as intermediary elements between the processor and decoder, carrying execution mode information. These packets act as a mediator that translates internal processor mode states into decoder-understandable format, enabling accurate interpretation without direct complex processor-decoder mode synchronization.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If EM packets are generated at every mode change event, then the decoder receives accurate mode information, but the trace packet volume increases

Engineering Contradiction:
Improvemode information accuracyVSAvoidtrace packet quantity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

EM packets are generated periodically at sync points in addition to mode change events. This periodic generation ensures the decoder has up-to-date mode information at regular intervals, maintaining reliability while avoiding the need for continuous mode tracking that would generate excessive packets.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system uses partial action by generating EM packets only at critical moments (mode changes and periodic sync points) rather than continuously. This selective approach provides sufficient mode information for accurate decoding without the excessive packet generation that would result from continuous tracking.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If the system tracks transactional memory operations, then the decoder can accurately interpret TMX instructions, but the tracing system complexity increases

Engineering Contradiction:
ImproveTMX operation tracking accuracyVSAvoidtracing system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Transactional memory tracking is merged with the existing execution mode tracking infrastructure. TMX packets are generated using the same EM packet generation mechanism and are integrated into the same trace stream, allowing TMX operation tracking to leverage existing system components rather than requiring separate dedicated tracking hardware.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10331452B2Tracking mode of a processing device in instruction tracing systems
Publication Date: 2019.06.25 TAHOE RES LTD
  • US10331452B2 patent drawing
  • US10331452B2 patent drawing
  • US10331452B2 patent drawing

AI summary

In accordance with embodiments disclosed herein, there is provided systems and methods for tracking the mode of processing devices in an instruction tracing system. The method may include receiving an indication of a change in a current execution mode of the processing device. The method may also include determining that the current execution mode of the received indication is different than a value of an execution mode of a first execution mode (EM) packet previously-generated by the IT module. The method may also include generating, based on the determining that the current execution mode is different, a second EM packet that provides a value of the current execution mode of the processing device to indicate the change in the execution mode for an instruction in a trace generated by the IT module. The method may further include generating transactional memory (TMX) packets having n bit mode pattern in the packet log. The n is at least two and the n bit mode indicates transaction status of the TMX operation.