Microprocessor Binary Translation for Safety Redundancy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern microprocessors, especially those in automotive systems, face challenges in executing program code from different instruction-set architectures and ensuring safety-relevant functions with redundancy, as they are often not explicitly designed for automotive use, leading to high development costs and difficulties in adapting hardware for new functions.

Innovation Solution

A method utilizing dynamic binary translation software that converts source instructions from one architecture to another, replicates and renames target instructions for redundant execution, and includes error detection and correction mechanisms, allowing for the execution of safety-relevant functions without modifying hardware, and enabling updates through software modifications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If program code is translated from a first instruction-set architecture to a second instruction-set architecture using conversion software, then compatibility with different microprocessor architectures is improved, but device complexity increases due to the additional translation layer

Engineering Contradiction:
Improvecompatibility with different microprocessor architecturesVSAvoidcomplexity of conversion software layer
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent employs conversion software as an intermediary layer between program code and the microprocessor execution unit. This mediator translates source instructions from a first instruction-set architecture into target instructions for a second instruction-set architecture, enabling cross-architecture compatibility without modifying the underlying hardware. The conversion software acts as a buffer that resolves the incompatibility between different ISA formats.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If target instructions are replicated with renamed memory areas for redundant execution, then reliability for safety-critical functions is improved, but processing time increases due to duplicate execution

Engineering Contradiction:
Improveredundancy for safety-critical functionsVSAvoidprocessing time for redundant execution
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The conversion software performs preliminary replication of target instructions before execution, creating multiple copies with renamed memory area references. This advance preparation allows the microprocessor to execute redundant instructions simultaneously or in rapid succession, ensuring that safety-critical functions have verified results without significant time penalty. The replication is done in advance of the actual execution phase.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If hardware is modified to support new functions or automotive-specific requirements, then functionality for safety-relevant applications is improved, but manufacturing cost and development complexity increase

Engineering Contradiction:
Improvefunctionality for safety-relevant applicationsVSAvoidmanufacturing cost and development complexity
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent implements a dynamic software-based adaptation mechanism that allows the microprocessor to adjust its behavior and supported functions through conversion software updates rather than hardware modifications. The conversion software can be dynamically loaded, updated, or configured to support new instruction-set architectures or safety protocols, providing flexibility without requiring physical hardware changes. This dynamic approach enables the same hardware platform to serve multiple automotive applications.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10157062B2Method for operating a microprocessor
Publication Date: 2018.12.18 ROBERT BOSCH GMBH
  • US10157062B2 patent drawing
  • US10157062B2 patent drawing

AI summary

A method is described for operating a microprocessor, in which a conversion software executed in the microprocessor carries out a binary translation, in the course of which a source instruction that is encoded according to a first instruction-set architecture is translated into a target instruction in a binary manner, which is encoded according to a second instruction-set architecture, and the target instruction translated by the translation software into the second instruction-set architecture being replicated, and in this replicated target instruction a memory area which is to be accessed in the course of the execution of the target instruction is replaced by a second memory area, and the target instruction and the copied target instruction is executed by the microprocessor. With the aid of the method, a temporal redundancy is achieved by a (temporally) parallel execution of the target instruction on a processor core and a local or regional redundancy by a parallel execution of the target instruction on different processor cores.