SIMD Shuffle Logic Gate Simulation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The computational burden of simulating gate-level digital circuit designs is significant due to the complexity and resource-intensive nature of modeling individual logic gates, which increases time and resource costs as circuit complexity grows.

Innovation Solution

The use of single-instruction, multiple-data (SIMD) instructions, specifically byte shuffle and population count instructions, allows for concurrent simulation of multiple heterogeneous logic gates by assigning logic gates to SIMD element positions and executing a single instruction that simulates the behavior of multiple gates with different logic functions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If gate-level model is used to represent digital circuit, then manufacturing precision and reliability are improved, but computational burden and simulation time increase significantly

Engineering Contradiction:
Improvecircuit structure representation accuracyVSAvoidsimulation time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The gate-level circuit is segmented into multiple logic levels, where each level contains logic gates that can be simulated concurrently. This segmentation allows the simulation to process large numbers of gates in parallel batches, reducing overall simulation time while maintaining accurate gate-level representation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention introduces a new dimension of parallelism by organizing gate simulation into multiple levels and using concurrent execution across these levels. This dimensional organization transforms the simulation from sequential gate-by-gate processing to parallel level-based processing, dramatically reducing simulation time.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Manufacturing precision

If gate-level model is used to represent digital circuit, then manufacturing precision and reliability are improved, but computational resources required increase

Engineering Contradiction:
Improvecircuit structure representation accuracyVSAvoidcomputational resources
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

By segmenting the circuit into logic levels and processing gates in parallel within each level, the computational workload is distributed more efficiently across available resources, reducing the total computational burden while maintaining accurate gate-level simulation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple logic gates at the same logic level are merged into a single simulation step, allowing concurrent evaluation of numerous gates. This merging reduces the total number of sequential operations required, thereby decreasing computational resource consumption.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If conventional SIMD instructions are used for logic gate simulation, then productivity is improved, but device complexity increases due to homogeneous instruction requirements

Engineering Contradiction:
Improvesimulation throughputVSAvoidSIMD instruction complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The invention makes conventional homogeneous SIMD instructions universal by showing how they can simulate multiple heterogeneous logic gate types (AND, OR, NAND, NOR, XOR, etc.) through appropriate encoding of logic gate types and input values. This multi-functionality allows a single SIMD instruction format to handle diverse logic operations, improving productivity without requiring specialized heterogeneous SIMD instructions.

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

Solution Approach 2:

The invention changes the parameters encoded within the SIMD instruction operands to represent different logic gate types and their inputs. By varying these parameters (logic gate type encoding, input value encoding), the same SIMD instruction structure can simulate different logic functions, reducing device complexity while maintaining high productivity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10331830B1Heterogeneous logic gate simulation using SIMD instructions
Publication Date: 2019.06.25 APPLE INC
  • US10331830B1 patent drawing
  • US10331830B1 patent drawing
  • US10331830B1 patent drawing

AI summary

Techniques for logic gate simulation. Program instructions may be executable by a processor to select logic gates from a netlist that specifies a gate-level representation of a digital circuit. Each logic gate may be assigned to a corresponding element position of a single-instruction, multiple-data (SIMD) shuffle or population count instruction, and at least two logic gates may specify different logic functions. Simulation-executable instructions including the SIMD shuffle or population count instruction may be generated. When executed, the simulation-executable instructions simulate the functionality of the selected logic gates. More particularly, execution of the SIMD shuffle or population count instruction may concurrently simulate operation of at least two logic gates that specify different logic functions.