Program Debugging Device Waveform Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Debugging bugs in system applications, particularly in field-programmable gate arrays (FPGAs), is challenging due to bugs being difficult to identify during simulation and often overlooked.

Innovation Solution

A program debugging device and method that establishes a simulated environment, maps instructions to standard waveforms, sets trigger points, and compares simulation waveforms with standard waveforms to detect and fix bugs, optimizing the debugging process by analyzing abnormal waveform segments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If simulation is used to verify system applications, then debugging difficulty increases and bugs are easily ignored, but full system testing is required to ensure comprehensive coverage

Engineering Contradiction:
Improvebug detection accuracyVSAvoiddebugging complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the debugging process by dividing waveform data into segments corresponding to different trigger points. Each segment is analyzed independently to identify bugs, which reduces the complexity of analyzing entire waveform datasets and improves bug detection accuracy by focusing on specific problem areas.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces standard waveform segments as an intermediary reference for comparing against actual simulation waveforms. This mediator enables systematic bug detection by highlighting deviations from expected behavior, making bugs easier to identify without requiring complete re-simulation of the system.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If complete waveform analysis is performed, then bug detection coverage is improved, but memory usage and processing time increase significantly

Engineering Contradiction:
Improvebug detection coverageVSAvoiddebugging time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides waveform analysis into segments based on trigger points, allowing the system to analyze only relevant portions of waveform data. This segmentation maintains comprehensive bug detection coverage while significantly reducing the time and computational resources required compared to analyzing complete waveform datasets.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-processing waveform data into segments and establishing standard waveform segments before comparison. This preparation enables faster bug detection during actual debugging by having data ready in an optimized format, reducing the time required for comprehensive analysis.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If simulation waveforms are analyzed in detail, then bug detection precision is improved, but memory consumption increases

Engineering Contradiction:
Improvewaveform analysis precisionVSAvoidmemory usage
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent segments waveform data into manageable portions associated with specific trigger points. This segmentation allows detailed precision analysis of each segment while using less memory overall, as the system processes and compares segments independently rather than loading entire waveform datasets into memory simultaneously.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11397662B2Method for debugging computer program, device employing method, and storage medium
Publication Date: 2022.07.26 HON HAI PRECISION INDUSTRY CO LTD
  • US11397662B2 patent drawing
  • US11397662B2 patent drawing
  • US11397662B2 patent drawing

AI summary

A method for debugging a program, based on simulating an object program and comparing simulated waveforms with standard waveforms are applied in an electronic device. A simulated environment corresponding to the object program is established and multiple instructions from code of the object program are mapped against the standard waveforms. Trigger points are set in the object program, the object program is run from the trigger point and simulation waveforms are stored. The simulation waveforms are compared with the standard waveforms, and the location of a bug of the object program is found according a comparison. The bug may be resolved or cured. The electronic device utilizing the method is also disclosed.