On-Chip Transaction Profiling Circuit for SoC Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The integration of multiple core devices onto a single System-on-Chip (SoC) reduces the ability of external debugging tools to effectively find and solve bugs due to reduced access and increased data traffic, necessitating improved debugging technology for efficient profiling and memory usage optimization.

Innovation Solution

A method and architecture that extract transactions from interconnect circuitry, filter them using a bank of filters, increment counters based on passband matches, and output counter values to a debug controller, enabling precise and non-intrusive profiling of transactions on the integrated circuit chip.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Volume of moving object

If multiple core devices are integrated onto a single SoC chip, then product size is reduced and integration is improved, but access to internal buses for debugging is reduced and data traffic increases

Engineering Contradiction:
Improveproduct sizeVSAvoidaccess for debugging
Core Design Contradiction:
Volume of moving objectVSEase of operation

Solution Approach 1:

The patent extracts debugging and profiling functionality from external tools and integrates it directly onto the SoC chip through on-chip debug circuitry. This allows the chip to self-monitor and self-profile without requiring external access to internal buses, resolving the contradiction between compact integration and debuggability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary sampling circuit that periodically samples transaction data from internal buses and transfers it to external debug tools. This mediator allows external tools to indirectly monitor the chip's internal activity without direct access to the buses, maintaining both compact integration and debugging capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Difficulty of detecting and measuring

If external debugging tools are used to monitor internal bus traffic, then debugging capability is provided, but access is reduced and data traffic increases making bug finding slower

Engineering Contradiction:
Improvebug detection capabilityVSAvoidtime to find and solve bugs
Core Design Contradiction:
Difficulty of detecting and measuringVSLoss of time

Solution Approach 1:

The patent implements preliminary sampling of transaction data at periodic intervals during normal chip operation. By continuously collecting and buffering transaction information in advance, the system prepares debugging data before bugs occur, enabling faster analysis and reduction of time to detect and resolve issues.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The on-chip debug circuitry enables the SoC to self-monitor and self-profile its own transactions independently of external tools. The chip's internal bus traffic is automatically sampled and processed by integrated circuitry, allowing the system to provide its own debugging services without requiring external intervention for each monitoring operation.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If profiling is done by instrumenting the code, then measurement precision is improved, but the program timing is changed making the profiling intrusive

Engineering Contradiction:
Improveprofiling precisionVSAvoidintrusiveness to program timing
Core Design Contradiction:
Measurement precisionVSObject-affected harmful factors

Solution Approach 1:

The patent uses an intermediary sampling circuit that passively monitors transaction data on the internal buses without inserting instrumentation into the executed code. The sampling circuit acts as a mediator that captures transaction information as it naturally flows through the bus, providing precise profiling measurements while maintaining normal program timing and avoiding the harmful intrusiveness of code instrumentation.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Object-affected harmful factors

If profiling is done by periodic sampling, then intrusiveness is reduced, but measurement precision decreases because inter-sample behaviour is not captured

Engineering Contradiction:
Improveintrusiveness to program operationVSAvoidprofiling precision
Core Design Contradiction:
Object-affected harmful factorsVSMeasurement precision

Solution Approach 1:

The patent implements continuous transaction sampling at multiple periodic intervals, maintaining continuous monitoring of bus traffic throughout the profiling period. By keeping the sampling action continuous and comprehensive across multiple cycles, the system captures both the sampled transactions and the inter-sample behavior patterns, achieving high measurement precision while maintaining low intrusiveness through passive monitoring.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10296476B2Profiling transactions on an integrated circuit chip
Publication Date: 2019.05.21 SIEMENS INDUSTRY SOFTWARE INC
  • US10296476B2 patent drawing
  • US10296476B2 patent drawing
  • US10296476B2 patent drawing

AI summary

A method of profiling transactions on an integrated circuit chip. The method comprises, for each transaction: extracting the transaction from interconnect circuitry of the integrated circuit chip; and filtering the transaction at a filtering circuit to determine which passband a parameter of the transaction lies within; sending an increment signal to a counter of a bank of counters, the counter having a counter value indicative of a number of transactions having the parameter lying within the passband; and outputting the counter values of the bank of counters.