Bit-True Processor Simulation via Automated Configuration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current simulation-based design environments face challenges in achieving bit-true results between design models and generated code, particularly due to difficulties in accurately modeling finite precision fixed-point and floating-point operations, and not all blocks expose internal scaling or bit-widths, leading to numerical differences and inability to achieve exact bit-true simulations.

Innovation Solution

A mechanism is provided to register and specify attributes of a target processor environment, such as architecture, compiler, and operating system information, to constrain simulation behavior at each block instance, generating intermediate representation files and executing them in simulation mode to match code-generated implementations, ensuring bit-true correspondence between simulation and code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If user specifies internal scaling and data sizes for each block to match target processor hardware, then numeric equivalence in simulation is achieved, but manual configuration time and complexity increase significantly

Engineering Contradiction:
Improvenumeric equivalenceVSAvoidmanual configuration time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system automatically collects target processor information and configures simulation parameters without requiring manual user input for each block. The automated configuration system queries the target processor's hardware specifications and applies appropriate scaling and data size settings across all blocks, eliminating tedious manual configuration while maintaining numeric equivalence.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

A unified automated configuration system is implemented that works across all blocks and processor types. The system provides a universal mechanism for collecting target processor information and applying appropriate simulation settings, eliminating the need for block-by-block manual configuration and enabling consistent numeric equivalence across diverse hardware platforms.

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

2Measurement precision

If comprehensive target processor attributes are specified to achieve bit-true simulation, then simulation accuracy improves, but system complexity and difficulty of implementation increase

Engineering Contradiction:
Improvebit-true simulation accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

An automated configuration system acts as an intermediary between the target processor and the simulation model. This intermediary automatically collects comprehensive processor attributes including architecture details, compiler settings, and runtime parameters, then translates these into appropriate simulation configurations. This mediator approach enables bit-true accuracy without requiring users to directly manage the complexity of numerous processor attributes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements iterative testing and updating of simulation settings by comparing simulation results with actual target processor behavior. This feedback mechanism automatically identifies discrepancies and adjusts configuration parameters to achieve bit-true correspondence, eliminating the need for manual trial-and-error configuration of complex processor attributes.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If manual configuration of each block is performed to achieve numeric equivalence, then simulation accuracy improves, but productivity and development speed decrease

Engineering Contradiction:
Improvenumeric equivalenceVSAvoiddevelopment speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The automated configuration system performs self-service by automatically collecting target processor information and configuring all simulation blocks without requiring manual intervention. The system queries the target processor's hardware specifications, infers appropriate simulation parameters, and applies configurations across the entire model, maintaining numeric equivalence while dramatically accelerating development speed.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary automatic configuration of all simulation parameters before execution, based on pre-collected target processor information. By preparing the simulation environment in advance with appropriate scaling and data size settings, the system eliminates time-consuming manual configuration during the development process, thereby improving both accuracy and productivity.

Inventive Principle:
Principle #10Preliminary action

4Measurement precision

If detailed target environment information is collected and simulated, then bit-true correspondence is achieved, but computational overhead and simulation time increase

Engineering Contradiction:
Improvebit-true correspondenceVSAvoidsimulation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system implements efficient feedback-based optimization by comparing simulation results with target processor behavior and automatically adjusting configuration parameters. This iterative feedback process identifies only the critical parameters that affect bit-true correspondence, avoiding unnecessary simulation of all possible processor attributes, thereby achieving high precision without excessive simulation time.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system dynamically adjusts simulation parameters based on collected target processor information, changing only those parameters that have significant impact on numeric equivalence. By selectively modifying critical parameters such as data scaling, bit-widths, and rounding modes based on actual processor characteristics, the system achieves bit-true correspondence while minimizing computational overhead.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8938381B1Automatic numerical simulation of processor environment
Publication Date: 2015.01.20 MATHWORKS INC
  • US8938381B1 patent drawing
  • US8938381B1 patent drawing
  • US8938381B1 patent drawing

AI summary

A system receives a model, internals associated with a target processor, and code information associated with the target processor, and obtains a bit-true model simulation for the target processor based on the model, the target processor internals, and the target processor code information.