Generic Software Simulation Interface for IC Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for testing integrated circuit designs require separate software suites and test cases for simulation and hardware co-simulation, leading to cumbersome maintenance and dual effort, with simulation providing only a rough approximation of hardware co-simulation signals due to the lack of a functional equivalent for physical BSCAN components.

Innovation Solution

A generic software simulation interface that dynamically switches between simulation and hardware co-simulation using a simulation driver and hardware driver, translating simulation instructions into IC control protocol instructions and communicating with a communication module to output signaling information to a device under test, allowing the same design tool to be used for both simulation and hardware co-simulation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate software suites and test cases are used for simulation and hardware co-simulation, then each method can be optimized for its specific purposes, but the maintenance effort and development time are doubled

Engineering Contradiction:
Improvetesting accuracyVSAvoidmaintenance time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements a universal simulation interface that can operate in multiple modes: software simulation mode and hardware co-simulation mode. The same interface code handles both simulation types by dynamically selecting the appropriate execution path, eliminating the need for separate software suites and reducing maintenance effort while preserving the testing accuracy of both approaches

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The simulation interface incorporates dynamic switching capability that allows it to adapt between different operational modes based on configuration parameters. The interface can dynamically select whether to execute pure software simulation or hardware co-simulation, enabling a single codebase to serve multiple purposes without requiring manual intervention for mode switching

Inventive Principle:
Principle #15Dynamics

2Manufacturing precision

If manual test bench coding is used, then test cases can be precisely tailored to specific requirements, but the development process is time consuming and error prone

Engineering Contradiction:
Improvetest case precisionVSAvoidtest bench development speed
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent uses HDL-based virtual test benches that create virtual copies of the device under test and its interface. These virtual representations automatically generate test cases based on the HDL model, eliminating manual coding while preserving the precision of tailored test scenarios. The virtual test bench mirrors the physical device's behavior, ensuring accurate test coverage without the time and error costs of manual development

Inventive Principle:
Principle #26Copying

3Device complexity

If simulation is used instead of hardware co-simulation, then testing can be performed entirely in software without physical hardware, but the simulation provides only a rough approximation of hardware signals

Engineering Contradiction:
Improvetesting system complexityVSAvoidsignal accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent introduces a virtual JTAG controller as an intermediary component that bridges the gap between software simulation and hardware co-simulation. This virtual controller emulates the physical JTAG interface behavior with high fidelity, providing accurate signal representation while maintaining software-based testing. The intermediary layer translates high-level simulation commands into accurate hardware-like signals, resolving the contradiction between simplicity and precision

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If hardware co-simulation is used, then physical IC testing can be performed, but separate test cases must be developed and maintained for both simulation and hardware testing

Engineering Contradiction:
Improvetesting validityVSAvoidtest management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a universal test management system that handles both software simulation and hardware co-simulation through a single interface and test case framework. The system maintains a unified test case library that can be executed in either mode, eliminating the need for separate test case management and reducing overall system complexity while preserving testing validity for both approaches

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8041553B1Generic software simulation interface for integrated circuits
Publication Date: 2011.10.18 XILINX INC
  • US8041553B1 patent drawing
  • US8041553B1 patent drawing
  • US8041553B1 patent drawing

AI summary

A computer-based system for testing a circuit design for implementation within an integrated circuit device can include a design application (205) providing simulation instructions for testing a circuit design and a simulation driver (225) receiving the simulation instructions and translating the simulation instructions into control protocol instructions specifying operations of an integrated circuit control protocol. The system can include a simulation environment (240). The simulation environment can include a communication module (245) communicating with the simulation driver, a simulation cable driver (250) receiving the control protocol instructions from the simulation driver via the communication module, and a control module (255). The simulation cable driver further can translate the control protocol instructions into signaling information corresponding to the integrated circuit control protocol. The control module can include a plurality of ports receiving the signaling information and outputting the signaling information to a device under test within the simulation environment.