Virtual Platform Scheduling for Real-Time Vehicle Simulation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The challenge of simulating multiple concurrently operating electronic systems in vehicles, particularly in the context of complex automotive systems with diverse software and hardware, is exacerbated by the need to capture inter-dependencies between heterogeneous subsystems, making full-vehicle simulation necessary.

Innovation Solution

A simulation system utilizing a multi-thread scheduler and environment manager to allocate time quanta for thread execution, coupled with an inter-processor communication API, facilitates real-time multi-domain simulation of virtual platforms through synchronized execution and communication across functional mock-up units.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If full-vehicle simulation is implemented to capture interactions of individual subsystems, then simulation accuracy and reliability are improved, but device complexity and computational resource requirements worsen

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

Solution Approach 1:

The simulation system is divided into multiple independent virtual platforms, each representing a specific subsystem (e.g., infotainment, driver assistance, powertrain). Each virtual platform can be simulated independently and then integrated through the multi-thread scheduler, allowing full-vehicle simulation accuracy while managing complexity through modular segmentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The multi-thread scheduler and environment manager provide universal simulation capabilities that can handle multiple different virtual platforms simultaneously. The system uses a unified threading model that can accommodate diverse subsystems with different timing requirements, making the simulation framework adaptable to various automotive architectures without requiring separate simulation systems for each subsystem.

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

2Reliability

If multiple virtual platforms are simulated concurrently to capture inter-dependencies, then simulation comprehensiveness is improved, but computing resource consumption worsens

Engineering Contradiction:
Improvesimulation comprehensivenessVSAvoidcomputing resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The multi-thread scheduler ensures continuous simulation execution by allocating time quanta to multiple virtual platforms concurrently without interruption. Once a thread begins executing a virtual platform's simulation tasks, it continues uninterrupted within its allocated time quantum, maximizing CPU utilization and avoiding the overhead of frequent context switches while maintaining comprehensive multi-platform simulation.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The system uses periodic time quanta allocation where each virtual platform receives dedicated execution slots in a cyclic manner. The scheduler divides computation into discrete time quanta and systematically allocates these quanta to different virtual platforms, creating a periodic execution pattern that balances computational load across multiple platforms while ensuring each receives adequate processing time.

Inventive Principle:
Principle #19Periodic action

3Reliability

If real-time simulation is provided with strict timing requirements, then functional safety compliance is improved, but scheduling complexity worsens

Engineering Contradiction:
Improvefunctional safety complianceVSAvoidscheduling complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system transforms the scheduling problem by changing the parameter of time allocation from continuous to discrete time quanta. Each virtual platform is assigned specific time quantum parameters that define its execution windows, transforming complex real-time scheduling into a parameter-driven allocation system where timing requirements are met through configurable time slice assignments rather than complex dynamic scheduling decisions.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

Each virtual platform includes its own timing management mechanisms that allow it to self-regulate within its allocated time quantum. The platforms monitor their own execution progress and timing compliance, reducing the burden on the external scheduler and simplifying the overall scheduling complexity while maintaining functional safety requirements through distributed timing awareness.

Inventive Principle:
Principle #25Self-service

4Stability of the object's composition

If thread preemption is prevented during time quantum execution, then execution determinism is improved, but response time to timing events worsens

Engineering Contradiction:
Improveexecution determinismVSAvoidresponse time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-allocating time quanta to each virtual platform before execution begins. All necessary computational tasks for a given time quantum are identified and prepared in advance, allowing the thread to execute without preemption while still meeting timing requirements. Critical timing events are anticipated and their required computation is prepared beforehand within the allocated time quantum.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12578990B2Simulation system and method
Publication Date: 2026.03.17 GM GLOBAL TECHNOLOGY OPERATIONS LLC
  • US12578990B2 patent drawing
  • US12578990B2 patent drawing
  • US12578990B2 patent drawing

AI summary

A method in a simulation system includes: implementing a plurality of threads using an operating system that allocates a time quantum of a predetermined execution time to each thread during which the thread will not be preempted during execution; monitoring timing requirements of each of a plurality of tasks for a plurality of distinct virtual platforms; segmenting each of the plurality of tasks into one or more sequences of programmed instructions that can execute in a thread within a time quantum; providing the one or more sequences of programmed instructions for each of the plurality of tasks as a plurality of programmed instruction sequences with specific timing requirements; scheduling each of the plurality of programed instruction sequences, based on the specific timing requirements, to execute in one of the plurality of threads at an appropriate time; and performing real-time simulation of application code utilizing available computing compacity at full capacity.