Debug Trace Data Throttling with Gap Markers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current debug technologies face challenges in efficiently managing and transmitting large amounts of debug trace data, such as program counter tracing, cycle accurate profiling, and load/store data logging, due to bandwidth limitations, especially as CPU clock rates increase, leading to potential data loss and excessive bandwidth consumption.

Innovation Solution

A method is introduced to inject a 'data gap' marker into the trace stream with an accompanying count value to indicate data loss, along with throttling mechanisms like Dead-Window and Real-Time Throttling to control trace data, ensuring that only necessary data is transmitted, and implementing a 10-bit encoding scheme to optimize bandwidth utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If high frequency pins are supplied to view all debug data, then visibility into program operation is improved, but cost and practicality worsen

Engineering Contradiction:
Improvedebug data visibilityVSAvoidcost effectiveness
Core Design Contradiction:
Measurement precisionVSEase of manufacture

Solution Approach 1:

The patent combines multiple debug data types (PC trace, data log, timing information) into a single encoded transmission stream using a unified instruction set. This merging allows all debug information to be transmitted through the same pins at the same frequency, eliminating the need for separate high-frequency pins for each data type while maintaining complete visibility into program operation.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent applies encoding schemes that transform debug data into compressed representations, changing the parameter of data density. By encoding multiple bits of debug information into fewer transmission cycles, the system achieves high measurement precision with reduced pin frequency requirements, making the solution both technically effective and cost-efficient.

Inventive Principle:
Principle #35Parameter changes

2Speed

If CPU clock rates increase, then processing speed is improved, but bandwidth requirements worsen

Engineering Contradiction:
ImproveCPU clock rateVSAvoidbandwidth consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent employs compression encoding that dynamically adapts to CPU clock rates. As CPU speed increases and generates more debug data, the encoding scheme consolidates multiple data points into fewer transmission cycles, changing the effective bandwidth consumption parameter to maintain proportionality rather than linear growth.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The transmission format uses periodic synchronization and structured instruction sets that organize debug data into efficient transmission batches. This periodic structure allows the system to handle higher CPU clock rates by aggregating and compressing data over time intervals, reducing instantaneous bandwidth requirements while maintaining data integrity.

Inventive Principle:
Principle #19Periodic action

3Quantity of substance

If compression encoding is applied to reduce bandwidth, then bandwidth utilization is improved, but device complexity worsens

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidhardware expenditure
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements a universal instruction set that handles multiple debug data types (PC tracing, data logging, timing information) through a single encoding mechanism. This multi-functional approach consolidates what would otherwise require separate encoding hardware for each data type, improving bandwidth utilization while limiting the growth of device complexity through functional integration.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Loss of information

If more debug information is transmitted, then diagnostic capability is improved, but transmission time worsens

Engineering Contradiction:
Improvedebug information completenessVSAvoidtransmission time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The encoding scheme changes the information density parameter by representing multiple debug events within single transmission cycles. By packing PC trace, data log, and timing information into compressed encoded formats, the system transmits complete diagnostic information faster, reducing transmission time while maintaining information completeness.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9304890B2Method for throttling trace data streams
Publication Date: 2016.04.05 TEXAS INSTRUMENTS INC
  • US9304890B2 patent drawing
  • US9304890B2 patent drawing

AI summary

A method of managing a debug trace data stream by detecting conditions where the trace data generated exceeds the available transmission bandwidth, and throttling the trace data stream to ensure that the bandwidth available for the trace data stream is not exceeded. A trace data gap is inserted into the data stream to indicate the amount and type of data discarded during the throttling process.