SOC Debug Visualization via Integrated Reporting Modules

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Debugging and performance analysis of System on Chip (SOC) systems are challenging due to their real-time nature and complexity, making existing debugging techniques not easily portable or feasible.

Innovation Solution

A visualization system that utilizes hardware-reported and firmware-reported information to generate and display visual insights, eliminating the need for expensive external analyzers by integrating reporting modules within SOC systems to collect and aggregate status information, which is then analyzed and visualized using a computer-based program.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Difficulty of detecting and measuring

If invasive debug probes are added at key locations in non-real-time systems, then debugging capability is improved, but system complexity and invasiveness increase

Engineering Contradiction:
Improvedebugging capabilityVSAvoidsystem complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The SOC system performs self-debugging through integrated performance monitoring units and trace buffers within each functional module, eliminating the need for external invasive probes. The system automatically collects and reports its own performance data, reducing external debugging complexity while maintaining real-time operational integrity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

A performance monitoring unit acts as an intermediary between functional modules and external debug interfaces. This intermediary collects performance data internally using trace buffers and counters, then exports processed information externally, reducing the need for direct invasive connections while maintaining debugging capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If brute force debug is used in simple systems, then debugging simplicity is improved, but analysis precision deteriorates

Engineering Contradiction:
Improvedebugging simplicityVSAvoidanalysis precision
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The debugging system is segmented into multiple independent performance monitoring units, each with dedicated trace buffers and counters for specific functional modules. This segmentation allows simple individual module analysis while maintaining overall system precision through aggregated data from multiple specialized units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Performance data is preliminarily processed and stored in trace buffers within each functional module before external analysis. This preliminary action captures precise operational states in real-time, enabling both simple external querying and high-precision analysis without requiring complex real-time interrogation.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If probes are added at easily accessed points in distributed systems, then accessibility is improved, but measurement accuracy deteriorates

Engineering Contradiction:
ImproveaccessibilityVSAvoidmeasurement accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

Performance monitoring units serve as intermediaries that collect precise measurement data directly at functional module sources using internal trace buffers, then export this accurate data to easily accessible external interfaces. This intermediary approach maintains measurement precision while improving external accessibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates copies of performance data in trace buffers and message capture memories, allowing external probes to access replicated information at convenient locations without interfering with the original precise measurements taken at functional module sources.

Inventive Principle:
Principle #26Copying

4Difficulty of detecting and measuring

If external analyzers are used for SOC system analysis, then analysis capability is improved, but cost and system invasiveness increase

Engineering Contradiction:
Improveanalysis capabilityVSAvoidsystem invasiveness
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The SOC system performs self-analysis through integrated performance monitoring units that automatically collect, buffer, and export performance data. This self-service capability provides comprehensive analysis functionality internally, reducing dependence on expensive external analyzers while maintaining non-invasive operation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The performance monitoring units are designed with multi-functionality, serving as both operational functional modules and debugging/analysis instruments. This universal design provides analyzer capabilities within the SOC itself, eliminating the need for separate external analysis equipment while reducing system invasiveness.

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

Data Source

PatentUS20230153189A1Visualization system for debug or performance analysis of SOC systems
Publication Date: 2023.05.18 NANJING TENAFE ELECTRONIC TECHNOLOGY CO LTD
  • US20230153189A1 patent drawing
  • US20230153189A1 patent drawing
  • US20230153189A1 patent drawing

AI summary

A selection associated with a desired set of visual information, associated with a system on chip (SOC) that includes a hardware functional module and a firmware functional module, is received. A template is selected from a plurality of available templates based at least in part on the selection associated with the desired set of visual information. The selected template is used by the SOC to generate reported information, including by configuring the hardware functional module, as prescribed by the selected template, to generate select hardware-reported information and configuring the firmware functional module, as prescribed by the selected template, to generate select firmware-reported information. The reported information is received and the desired set of visual information is displayed.