Non-Synthesizable HDL Components for Circuit Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Debugging complex circuit designs in HDL code is difficult and time-consuming due to lengthy and complex signal paths, as existing solutions that add unique identifiers result in increased circuit size, cost, and power consumption during synthesis.

Innovation Solution

Appending non-synthesizable components with unique identifiers to the HDL code, which are omitted during netlist synthesis, allowing for efficient simulation and verification without adding unnecessary circuit elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Difficulty of detecting and measuring

If unique identifiers are added to trace signal paths for debugging, then debugging capability is improved, but circuit size increases

Engineering Contradiction:
Improvedebugging capabilityVSAvoidcircuit size
Core Design Contradiction:
Difficulty of detecting and measuringVSQuantity of substance

Solution Approach 1:

The patent introduces non-synthesizable components as intermediary elements that carry unique identifiers through the circuit during simulation. These components act as mediators between the physical circuit elements and the debugging/verification process, enabling traceability without becoming part of the final synthesized circuit.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent extracts the identification and tracing function from the physical circuit implementation by using non-synthesizable components. These components are taken out from the synthesis process entirely - they exist only in the HDL model for verification purposes and are removed before netlist generation, leaving the final circuit without the additional overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

2Difficulty of detecting and measuring

If non-synthesizable components are added for verification, then debugging capability is improved, but device complexity increases

Engineering Contradiction:
Improveverification capabilityVSAvoidHDL code complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The patent segments the circuit model into two distinct parts: synthesizable physical components that will be implemented, and non-synthesizable verification components that aid debugging. This segmentation allows each part to serve its specific purpose without interfering with the other, managing complexity through clear separation of concerns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the synthesizability parameter of certain components from true to false, creating a dual-mode system where components can be either synthesizable or non-synthesizable. This parameter change enables the same HDL code to serve both verification and synthesis purposes by simply adjusting the synthesizable attribute of specific components.

Inventive Principle:
Principle #35Parameter changes

3Loss of information

If identifiers are added to all components for tracing, then signal path tracing is improved, but netlist size increases

Engineering Contradiction:
Improvesignal path traceabilityVSAvoidnetlist size
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The non-synthesizable components with identifiers serve as intermediaries that preserve traceability information during simulation but do not propagate into the final netlist. They mediate between the need for detailed tracing during verification and the requirement for a clean, minimal final circuit description.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a parallel copy of the circuit signal paths using non-synthesizable components. This copy exists solely for verification and tracing purposes during simulation, while the original physical circuit paths remain unchanged and are what gets synthesized into the final netlist, avoiding any size increase.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10614181B2Electronic design tools using non-synthesizable circuit elements
Publication Date: 2020.04.07 MELLANOX TECHNOLOGIES LTD(IL)
  • US10614181B2 patent drawing
  • US10614181B2 patent drawing
  • US10614181B2 patent drawing

AI summary

A method for circuit design automation includes appending a non-synthesizable input having a unique identifier to HDL code that specifies a physical input of the circuit. For the physical components in the circuit to which a signal from the physical input is to propagate, corresponding non-synthesizable components are appended, having respective identifiers assigned responsively to the unique identifier of the non-synthesizable input, to the HDL code that specifies the physical components. The design is verified by simulating operation of the circuit using the HDL code, including both the physical and non-synthesizable inputs and components. After verifying the design, a netlist synthesis tool automatically generates a netlist of the circuit including the physical inputs and components while omitting the non-synthesizable inputs and components.