Co-Simulation System for Hardware Software Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current tools for electronic system design lack support for simultaneous simulation of hardware and software components, requiring designers to manually manage data exchange and synchronization between these components.

Innovation Solution

The development of an integrated design environment that allows for co-simulation of electronic system designs by instantiating hardware and software execution platform blocks, generating simulation models, and communicating data through a software execution platform interface block, with options for lock-step, asynchronous, and mixed co-simulation modes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate tools are used for hardware and software development, then each component can be developed independently, but simultaneous simulation and data exchange between hardware and software components cannot be achieved

Engineering Contradiction:
Improvesimulation accuracyVSAvoidintegration complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges separate hardware development tools (HLMS) and software development tools (IDE) into a single integrated development environment. This integration allows simultaneous simulation of both hardware and software components with automatic data exchange, eliminating the need for manual coordination while maintaining the independent development capabilities of each component.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The integrated development environment provides universal functionality to handle both hardware modeling and software development within a single platform. It supports multiple simulation modes (independent, lock-step, and event-driven) and automatically manages data exchange between components, making the system adaptable to various development needs without requiring separate toolchains.

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

2Productivity

If manual data exchange and synchronization control is implemented, then flexibility in design is maintained, but simulation time and complexity increase significantly

Engineering Contradiction:
Improvesimulation speedVSAvoidcontrol mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The integrated development environment implements self-service mechanisms where the system automatically manages data exchange and synchronization between hardware and software components. The environment monitors component states, coordinates simulation timing, and handles data transmission without requiring manual intervention from designers, thereby significantly reducing simulation time and complexity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system employs feedback mechanisms to automatically adjust simulation timing and data exchange based on the actual states of hardware and software components. Through event-driven architectures and state monitoring, the environment dynamically coordinates simulation progress, ensuring synchronized operation while maintaining simulation efficiency.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If cycle-accurate simulation is implemented for tightly coupled hardware-software interaction, then verification precision is improved, but simulation speed decreases

Engineering Contradiction:
Improvesimulation precisionVSAvoidsimulation speed
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The integrated development environment provides dynamic simulation capabilities that allow users to switch between different simulation modes based on verification needs. For tightly coupled hardware-software interactions requiring high precision, the system can operate in lock-step or event-driven modes with cycle-accurate timing. For less critical verification, independent simulation modes offer faster execution, allowing designers to optimize the trade-off between precision and speed for different parts of the design.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8473269B1System-level hardware and software development and co-simulation system
Publication Date: 2013.06.25 XILINX INC
  • US8473269B1 patent drawing
  • US8473269B1 patent drawing
  • US8473269B1 patent drawing

AI summary

Various approaches for co-simulating an electronic system design are described. In one approach, a hardware design function block in the design is instantiated, along with a specification of a software execution platform including external ports and software to execute on the platform. In response to a user instruction to import the software execution platform into the design, a software execution platform interface block is automatically instantiated. A first simulation model is generated from the hardware design function block and the software execution platform interface block and a second simulation model is generated from the software execution platform. The design is co-simulated using the first and second simulation models. Data is communicated between the first simulation model and the second simulation model via the interface block.