Shared Message Queue for Multicore Protocol Abstraction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing electronic devices with multiple processors face challenges in efficiently communicating between processors due to the complexity of various communication protocols and hardware interfaces, leading to inefficiencies in data transfer and processing.
Innovation Solution
A unified and scalable multiprocessor communication framework utilizing a Smart Message Queue (SMQ) and shared memory to abstract hardware details, enabling processors to communicate through a common interface, manage data payloads, and abstract communication protocols.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple processors use various communication protocols and hardware interfaces to communicate, then data transfer between processors can be achieved, but the system complexity increases and processing efficiency decreases
Solution Approach 1:
The patent introduces a shared queue as an intermediary mechanism between processors. The shared queue abstracts the complexity of multiple communication protocols and hardware interfaces, providing a unified interface for data exchange. Processors interact with the shared queue through standardized operations (enqueue, dequeue) rather than dealing with diverse protocol-specific interfaces, thereby reducing system complexity while maintaining communication capability.
Solution Approach 2:
The shared queue serves as a universal communication interface that can handle data exchange between any pair of processors in the system. Instead of implementing separate communication channels for each processor pair with different protocols, the shared queue provides a single multi-functional interface that works across all processors, reducing the overall number of interfaces and protocols needed in the system.
2Reliability
If multiple processors use various communication protocols and hardware interfaces to communicate, then data transfer between processors can be achieved, but processing efficiency decreases
Solution Approach 1:
The shared queue acts as a mediator that optimizes data transfer between processors. By providing a standardized interface, it eliminates the overhead of protocol conversion and interface adaptation that would otherwise slow down communication. The queue's internal management of data buffers and transfer operations streamlines the data exchange process, improving processing efficiency.
Solution Approach 2:
The shared queue pre-allocates and manages data buffers in advance, preparing the data transfer infrastructure before actual communication occurs. This preliminary setup eliminates the need for dynamic buffer allocation and protocol negotiation during data transfer operations, thereby improving processing efficiency by reducing latency.
3Ease of operation
If a unified communication framework is implemented to reduce complexity, then ease of operation improves, but system architecture modification is required
Solution Approach 1:
The patent segments the communication system into distinct functional layers: the shared queue interface layer that provides simplicity to processors, and the underlying protocol/hardware interface layer that handles complexity. This segmentation allows the unified framework to improve ease of operation at the processor level while isolating architecture modifications to the queue implementation layer, minimizing the impact on overall system architecture.
Data Source
AI summary
A device can provide a unified and scalable multiprocessor communication framework that enables communication between multiple processor cores in a multicore device. For example, the device may be configured to perform data payload management using a Smart Message Queue (SMQ) and/or shared memory. Additionally or alternatively, the communication framework may enable the processors to communicate with each other and/or peripherals of the device while abstracting details of various communication protocols, hardware interfaces, and/or the like. For example, the communication framework may provide a common interface for applications, enabling a first application associated with a processor to establish a connection to any processor and/or peripheral without knowing details of a communication protocol for each connection.


