Automated Transaction Event Detection in Circuit Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Debugging circuit designs on programmable integrated circuits is challenging due to the difficulty in visually inspecting waveforms to identify communication channels and transaction-level events, especially as the number of transactions increases, leading to inefficiencies in evaluating protocol compliance and performance metrics.

Innovation Solution

A method and apparatus for capturing waveform data, generating data structures, and analyzing transaction-level events to identify communication channels, protocols, and performance metrics, with the use of application programming interfaces (APIs) to automate the identification of transaction-level events and provide graphical representations for visual inspection and analysis.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If waveform data is captured and visually inspected to identify communication channels and transaction-level events, then debugging information can be obtained, but the complexity and time required increase significantly as the number of transactions increases

Engineering Contradiction:
Improvedebugging accuracyVSAvoidinspection time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by automatically identifying communication channels and transaction-level events before the debugging analyst performs visual inspection. The system pre-processes waveform data to generate structured information about communication channels, protocols, and transaction events, so that when the analyst views the debug interface, the heavy lifting of identification has already been completed. This resolves the contradiction by performing time-consuming analysis work in advance, reducing the actual inspection time while maintaining accurate identification.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary layer between the raw waveform data and the debugging analyst. This intermediary is an automated analysis system that processes waveform data, identifies communication channels, detects transaction-level events, and presents structured results to the user. This intermediary handles the complex pattern recognition and protocol identification tasks, allowing the analyst to focus on higher-level debugging without being overwhelmed by raw waveform complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If manual visual inspection of waveforms is performed to evaluate protocol compliance and performance metrics, then debugging can be conducted, but the process becomes inefficient and error-prone as transaction volume increases

Engineering Contradiction:
Improveprotocol compliance detection accuracyVSAvoiddebugging efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent replaces the mechanical process of manual visual inspection with an automated computational system. Instead of relying on human analysts to manually examine waveforms and identify protocol violations, the system uses automated algorithms to detect transaction-level events, validate protocol compliance, and measure performance metrics. This substitution eliminates human error and fatigue while dramatically increasing debugging throughput and efficiency.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The debugging system performs self-service by automatically analyzing its own waveform data without requiring manual intervention for basic identification tasks. The system autonomously identifies communication channels, detects transaction events, and evaluates protocol compliance, effectively debugging itself. This self-service capability frees up debugging resources and maintains high precision even as transaction volumes scale.

Inventive Principle:
Principle #25Self-service

3Loss of information

If comprehensive waveform data is captured for all signals, then complete debugging information is available, but the complexity of analyzing and interpreting the data increases

Engineering Contradiction:
Improvedebugging information completenessVSAvoidanalysis complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the comprehensive waveform data into organized groups based on communication channels and transaction events. Instead of presenting all signal waveforms as a single complex dataset, the system segments them into meaningful units such as individual communication channels, protocol layers, and transaction sequences. This segmentation reduces analysis complexity by allowing the debugger to focus on one channel or transaction at a time while maintaining access to complete debugging information.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by providing different levels of detail and analysis for different portions of the waveform data. The system identifies and highlights specific regions of interest such as transaction boundaries, protocol violations, and performance metric anomalies, while presenting summarized views for routine segments. This allows the debugging interface to display comprehensive information in a differentiated manner, reducing overall complexity while preserving completeness.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3369015B1Methods and circuits for debugging circuit designs
Publication Date: 2021.03.03 XILINX INC
  • EP3369015B1 patent drawingFigure 1
  • EP3369015B1 patent drawingFigure 2
  • EP3369015B1 patent drawingFigure 3

AI summary

Various example implementations are directed to circuits and methods for debugging circuit designs. According to an example implementation, waveform data is captured (104), for a set of signals produced by a circuit design during operation. Data structures are generated (110) for the set of signals and waveform data for the signals is stored in the data structures. Communication channels associated with the set of signals are identified (114). Waveform data stored in the data structures is analyzed (114) to locate transaction-level events in the set of signal for one or more communication channels. Data indicating locations of the set of transaction-level events is output by the computer system.