Embedded Computing Device Shared Memory Inter-Processor Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Embedded multi-processor devices face challenges in enabling processors and their applications to communicate and share data asynchronously and concurrently, particularly in low-power devices where power consumption optimization is crucial.

Innovation Solution

Implementing a shared information space, referred to as a whiteboard, which allows multiple processing units to write and retrieve data, enabling interoperability and data sharing between processors and applications, even when they are running on different devices or servers, using a data interchange protocol and logical memory mapping techniques.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple processors are used to increase computational capacity and enable concurrent task processing, then processing power and functionality are improved, but power consumption increases

Engineering Contradiction:
Improveprocessing powerVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The system dynamically transitions processors between active and hibernation states based on task requirements. The first processor remains active while the second processor hibernates during basic operations, and activates the second processor only when additional computational capacity is needed, making the processing power adaptable rather than static.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the operational state parameter of processors between active and hibernation modes. By modifying the power state parameter dynamically, the system optimizes the balance between processing capacity and energy consumption based on real-time computational demands.

Inventive Principle:
Principle #35Parameter changes

2Use of energy by moving object

If processors hibernate to save power, then energy consumption is reduced, but communication and data sharing between processors become more difficult

Engineering Contradiction:
Improvepower consumptionVSAvoidcommunication between processors
Core Design Contradiction:
Use of energy by moving objectVSEase of operation

Solution Approach 1:

The shared memory space is pre-configured and maintained as a persistent communication channel that remains accessible even when processors are in hibernation state. Data structures and protocols are prepared in advance to enable seamless data exchange when processors transition between states, eliminating the need for complex reconfiguration during wake-up.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The shared memory space acts as an intermediary between processors, allowing data to be stored and retrieved asynchronously. The notification mechanism serves as a mediator that signals when data is available in the shared memory, enabling reliable communication without requiring processors to remain continuously active or synchronized.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If a shared memory space is implemented for data sharing between processors, then interoperability is improved, but memory management complexity increases

Engineering Contradiction:
ImproveinteroperabilityVSAvoidmemory management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The shared memory space is segmented into distinct regions with specific purposes: a notification area for signaling data availability, data storage areas for different types of information, and protocol definition areas. This segmentation organizes the memory management task into manageable segments rather than a monolithic complex system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The shared memory space is designed as a universal communication infrastructure that handles multiple functions: data storage, notification signaling, protocol definition, and inter-processor communication. This multi-functional design consolidates what could be separate complex systems into a single versatile memory structure.

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

Data Source

PatentUS10417045B2Embedded computing device
Publication Date: 2019.09.17 SUUNTO OY
  • US10417045B2 patent drawing
  • US10417045B2 patent drawing

AI summary

An apparatus and a method is provided that comprises at least one first processing unit configured to run at least one first computer program application capable of receiving and processing signals received from at least one interface or device connected to said first processing unit, at least one second processing unit configured to run at least a second computer program application capable of further processing at least some information processed in said first processing unit. According to the invention the first and second processing unit are interfaced with a shared information space, whereby a first application running in the first processing unit is configured to enable said first processing unit to write data to said information space, and a second application running in the second processing unit is configured to receive a notification about said data being written to said shared information space, and to enable said second processing unit to retrieve from said information space said data written by said first processing unit for further processing.