Dual CPU Communication via Virtual Channel Mediator

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing communication methods between dual CPUs in smartphones, which rely on serial ports or USB for direct communication, lead to conflicts and complexity due to frequent invocations between the baseband and application CPUs, necessitating complicated synchronization and mutual exclusion mechanisms.

Innovation Solution

Implementing a system that uses a service channel and virtual channels for communication between the baseband and application CPUs, where the baseband function module receives and responds to invocation requests through a virtual channel identifier, simplifying the communication process and avoiding conflicts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If direct communication through serial port/USB/shared memory is used between double CPUs, then basic communication channel is established, but conflicts occur due to frequent invocations requiring complicated synchronization and mutual exclusion mechanisms

Engineering Contradiction:
Improvecommunication reliabilityVSAvoidsynchronization mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a message queue as an intermediary component between the application CPU and baseband CPU. The message queue buffer stores invocation requests and responses, acting as a mediator that decouples the two CPUs. This eliminates the need for complex synchronization and mutual exclusion mechanisms while ensuring reliable communication, as the message queue handles data buffering and transmission automatically.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If RPC mechanism is adopted for each invocation program between application CPU and baseband CPU, then function invocation is enabled, but communication process becomes complicated

Engineering Contradiction:
Improvefunction invocation capabilityVSAvoidcommunication procedure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges multiple RPC invocation procedures into a single unified message queue interface. Instead of implementing separate RPC mechanisms for each function invocation, the system combines all invocations into a standardized message passing protocol through the message queue. This simplifies the communication procedure while maintaining full function invocation capability between the two CPUs.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If multiple application programs running on application CPU invoke baseband CPU functions, then application functionality is achieved, but conflicts occur without complicated synchronization mechanisms

Engineering Contradiction:
Improveapplication program functionalityVSAvoidsynchronization and mutual exclusion complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The message queue serves as an intermediary that handles multiple application programs' invocations to the baseband CPU simultaneously. Each application program can independently send requests to the message queue without needing to implement its own synchronization logic. The message queue buffer manages multiple invocations concurrently, eliminating conflicts while supporting diverse application functionalities.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP2538744B1Method, device and system for communication between double central processing units
Publication Date: 2018.09.26 HUAWEI DEVICE CO LTD
  • EP2538744B1 patent drawingFigure 1~2
  • EP2538744B1 patent drawingFigure 3
  • EP2538744B1 patent drawingFigure 4

AI summary

Embodiments of the present invention provide a method, a device and a system for communication between double central processing units, which relates to the field of mobile communications technologies. An embodiment of the present invention provides a method for communication between double central processing units, where the method includes: receiving, by a baseband function module, a baseband function invocation request message sent by an application function module through a service channel and a virtual channel, where the baseband function invocation request message carries a virtual channel identifier, and the virtual channel identifier corresponds to the virtual channel; and in response to the baseband function invocation request message, returning, by the baseband function module, a baseband function invocation response message to the application function module, where the baseband function invocation response message carries the virtual channel identifier. Through the embodiments of the present invention, conflicts in a process of communication between double CPUs can be avoided, and the communication implementation process and application process are also simplified.