Emulation Trace Compression Using Differential Frame Encoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The limited bandwidth and storage capacity of DDR memory in emulation systems restrict the amount of trace data that can be stored and transferred, making it challenging to handle the increasing volume of data generated during the emulation of complex semiconductor IC designs.

Innovation Solution

Implementing a data compression system that uses differential data analysis and flag-based indexing to compress trace data, allowing only changed data to be stored, thereby reducing the storage and transfer requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If DDR memory size is increased to store more trace data, then trace data storage capacity is improved, but system cost and complexity increase

Engineering Contradiction:
Improvetrace data storage capacityVSAvoidmemory system complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent extracts only the essential information from trace data by identifying and storing only non-zero differential values and their positions, rather than storing complete trace data frames. This extraction approach significantly reduces the storage capacity requirements while maintaining the ability to reconstruct and analyze trace information.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent transforms the storage parameter from storing complete frame data to storing compressed differential data with flags and indices. By changing the data representation parameters (using differential encoding, flag bits for zero/non-zero indication, and index positions), the storage capacity requirement is reduced without losing essential trace information.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If DDR memory bandwidth is increased to transfer more trace data, then trace data transfer rate is improved, but system cost and complexity increase

Engineering Contradiction:
Improvetrace data transfer rateVSAvoidmemory system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts only the necessary trace information by storing only non-zero differential values and their positions, reducing the data volume that needs to be transferred through the memory bandwidth. This extraction significantly lowers the transfer rate requirements while maintaining diagnostic capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the data transfer parameter by transforming complete frame data into compressed differential representations with flags and indices. This parameter transformation reduces the amount of data that must be transferred per clock cycle, effectively improving the trace data transfer rate without increasing memory bandwidth capacity.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If trace data compression is implemented, then storage capacity efficiency is improved, but processing complexity increases

Engineering Contradiction:
Improvestorage efficiencyVSAvoidcompression processing complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments the trace data processing into distinct stages: generating differential data between frames, setting flag bits for each differential value, and storing index positions of non-zero values. This segmentation of the compression process into modular, manageable steps reduces the overall processing complexity while achieving high storage efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies parameter changes through differential encoding (subtracting previous frame values from current frame values), flag bit assignment (indicating zero or non-zero status), and index position encoding (storing locations of non-zero values). These parameter transformations enable efficient compression with relatively simple processing operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11573883B1Systems and methods for enhanced compression of trace data in an emulation system
Publication Date: 2023.02.07 CADENCE DESIGN SYST INC
  • US11573883B1 patent drawing
  • US11573883B1 patent drawing
  • US11573883B1 patent drawing

AI summary

A trace subsystem of an emulation system may generate differential frame data based upon successive frames. If one compression mode, the trace subsystem may set a flag bit and store differential frame data if there is at least one non-zero bit in the differential frame data. If the differential frame data includes only zero bits, the trace subsystem may set the flag bit without storing the frame data. In another compression mode, the computer may further compress the differential data if the frame data includes one (one-hot) or two (two-hot) non-zero bits. The controller may set flag bits to indicate one of all-zeroes, one-hot, two-hot, and random data conditions (more than two non-zero bits). For one-hot or two-hot conditions, the controller may store bits indicating the positions of the non-zero bits. For random data conditions, the controller may store the entire differential frame.