Lock-Step Server Chaining for Fault-Tolerant Autonomous Computing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Fully self-driving vehicle technology requires sophisticated software and hardware that is more susceptible to failure and interference due to increased functionality and higher clock speeds, necessitating a reliable and scalable computing system.

Innovation Solution

A loosely-coupled lock-step (LCLS) chain architecture that utilizes fault-tolerant servers running parallel operations, ensuring that all servers arrive at the same state through synchronization and replication, and supports data-driven, demand-driven, and hybrid data flows.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If sophisticated software and hardware with increased functionality and higher clock speeds are used for self-driving vehicles, then processing capability and functionality are improved, but susceptibility to failure and interference increases

Engineering Contradiction:
Improveprocessing capabilityVSAvoidsusceptibility to failure
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements functional replication by creating multiple copies of the same computational function running in parallel on different processing units. Each replica executes identical operations on the same input data, and results are compared through voting mechanisms. This copying approach provides fault tolerance because if one replica fails or produces incorrect results due to hardware susceptibility, other replicas can compensate, thereby maintaining reliability while preserving processing capability.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces intermediary components including synchronization mechanisms, voting logic, and result comparison units that mediate between multiple processing replicas and the final output. These intermediaries coordinate the parallel execution, aggregate results from multiple sources, and filter out erroneous outputs, thereby protecting the system from failures in individual processing units while maintaining high processing capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If multiple processing units are used to improve reliability through replication, then fault tolerance is improved, but system complexity increases

Engineering Contradiction:
Improvefault toleranceVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the computational system into distinct functional modules: input processing units, parallel execution replicas, voting mechanisms, and output generation components. Each segment has a specific, well-defined function. This segmentation allows the complex fault-tolerant system to be managed through modular design, where each component can be independently developed, tested, and maintained, thereby reducing overall system complexity despite using multiple processing units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent employs homogeneous processing replicas that execute identical functions with the same operational characteristics. This homogeneity simplifies the system design because all replicas can be implemented using the same hardware architecture and software configuration, making them interchangeable and easier to manage. The uniformity reduces the complexity of coordination and synchronization compared to heterogeneous systems, while still providing the fault tolerance benefits of replication.

Inventive Principle:
Principle #33Homogeneity

Data Source

PatentEP3631642B1Loosely-coupled lock-step chaining
Publication Date: 2025.03.05 BLACKBERRY LTD
  • EP3631642B1 patent drawingFigure 1
  • EP3631642B1 patent drawingFigure 2
  • EP3631642B1 patent drawingFigure 3

AI summary

A system and method enables loosely-coupled lock-step computing including sensors that detect or measure a physical property and server groups. Each server group is serially linked to another server group and includes server instances operating in virtual synchrony. Virtual synchrony middleware receives outputs from multiple server instances and renders a single reply based on the outputs from the multiple server instances. The virtual synchrony middleware replicates and orders incoming requests to the server groups to ensure each of the server instances of that server group receives the same incoming requests in the same order.