Emulator Target Capture Replay for Clock Mismatch Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current in-circuit emulation technologies face limitations in debugging complex integrated circuit designs due to clock speed mismatches between emulators and dynamic targets, leading to inefficient data capture and replay, which restricts debug capability and increases verification time.

Innovation Solution

The method involves capturing and replaying signals between an emulator and targets using adaptive clock management and interfaces optimized for small packet data streaming, allowing continuous design clock operation during data transfer and enabling efficient data storage and retrieval for debugging and power estimation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional in-circuit emulation is used with dynamic targets, then clock speed matching is required, but this limits debug capability and increases verification time

Engineering Contradiction:
Improvedebug capabilityVSAvoidverification time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent creates a virtual target that replicates the interface behavior of the physical dynamic target. This virtual target is modeled in software and can be instantiated multiple times, allowing the emulator to interact with it instead of the physical target. The virtual target captures and replays interface signals, enabling debugging without requiring actual clock speed matching with the physical target.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces a virtual target as an intermediary between the emulator and the physical dynamic target. This intermediary layer captures signals from the physical target, processes them in software, and provides replay functionality to the emulator. This mediator eliminates the direct clock speed dependency while maintaining the debugging capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If data capture and replay is performed with clock stopping, then data can be transferred, but this reduces data throughput and efficiency

Engineering Contradiction:
Improvedata capture accuracyVSAvoiddata throughput
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent performs preliminary capture of interface signals during the emulation process. The virtual target records the signals exchanged between the emulator and the physical target in advance. This captured data is then stored and can be replayed later without requiring clock stopping, thus maintaining both data accuracy and throughput.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent enables continuous operation of the emulator by allowing data capture and replay to occur without stopping the design clocks. The virtual target continuously monitors and records signals, and the replay function can continuously feed data back to the emulator, maintaining uninterrupted operation and high data throughput.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10503848B2Target capture and replay in emulation
Publication Date: 2019.12.10 SIEMENS INDUSTRY SOFTWARE INC
  • US10503848B2 patent drawing
  • US10503848B2 patent drawing
  • US10503848B2 patent drawing

AI summary

An emulation process is performed with an emulator coupled to one or more targets. During a part or a whole of the emulation process, input signals to the emulator from the one or more targets are being captured, streamed out of the emulator and stored in one or more processor-readable media. The part or the whole of the emulation process is then repeated with the emulator decoupled to the one or more targets. During the repeating, the input signals stored in the one or more processor-readable media are being streamed back to the emulator. The streaming in both of the capture and replay modes may be through interfaces designed for small packets of data and fast streaming speed.