Linker Code Generation for Vehicle Control Units

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity and effort required to generate linker code for converting symbolic addresses into physical memory addresses in control units of vehicles are high, leading to inconsistencies and increased error probabilities during the executable code generation process.

Innovation Solution

A computer-implemented method using a code generator script that automatically generates linker code based on predefined information about memory areas, configurations, and macros, reducing complexity and ensuring consistency by employing data arrays and generic macros, which are then used to initialize memory areas and generate final macros for each memory unit.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If linker code is manually generated for converting symbolic addresses into physical memory addresses, then the code can be customized for specific control unit requirements, but the complexity and effort required increase significantly leading to inconsistencies and errors

Engineering Contradiction:
Improveconsistency of linker codeVSAvoidcomplexity of linker code generation
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-defining memory area information, configurations, and macros before the linker code generation process. The code generator script uses these pre-prepared elements to automatically generate consistent linker code, eliminating manual generation errors and ensuring reliability while reducing complexity.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If linker code is manually generated, then specific control unit requirements can be addressed, but the time and effort required for generation increase

Engineering Contradiction:
Improveadaptability to control unit requirementsVSAvoidtime for linker code generation
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent implements self-service through the code generator script that automatically generates linker code based on predefined information about the control unit's memory areas and configurations. This automated process adapts to specific control unit requirements without requiring manual intervention, significantly reducing the time and effort required while maintaining adaptability.

Inventive Principle:
Principle #25Self-service

3Ease of manufacture

If automated code generation is used, then complexity is reduced and consistency is improved, but predefined information about memory areas and configurations must be established first

Engineering Contradiction:
Improveease of linker code generationVSAvoidsetup complexity for code generation
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent resolves this contradiction by performing preliminary actions of defining memory area information, configurations, and macros before the automated code generation process. This upfront preparation enables the code generator script to automatically produce consistent linker code with reduced complexity, making the actual code generation process easier while the initial setup complexity is accepted as a one-time investment.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12260198B2Computer-implemented method for generating a linker code for a generation process of an executable code for a processing unit from a source code
Publication Date: 2025.03.25 ROBERT BOSCH GMBH
  • US12260198B2 patent drawing
  • US12260198B2 patent drawing

AI summary

A computer-implemented method for generating linker code for generation process of executable code for a processing unit from a source code, in particular in a control unit of a vehicle. The control unit includes at least one memory unit each including at least one memory area in each case, and a processor unit including at least one processor core. As a function of predefined pieces of information relating to the memory areas of the processing unit, a predefined configuration of the existing memory areas as to which applications are assigned to which memory areas, and a predefined configuration of the macros which describe accesses of applications to memory areas according to specific properties, data arrays are generated, according to which an initialization of the memory areas takes place.