Processor Local Bus Atomic Event Signaling for Multi-Core Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for on-chip communication between multiple processors and data-handling engines in integrated circuits are inefficient, leading to delays and interference, as they rely on polling, dedicated interrupts, and serial mechanisms that restrict parallel processing and scalability.

Innovation Solution

A distributed signalling mechanism (DSM) using atomic data writes over a general-purpose communication bus, where data handlers prepare and send DSM signals with identification and data, allowing immediate notification and preventing race conditions, enabling efficient communication without dedicated interrupt lanes or memory locks, and allowing multiple data handlers to work concurrently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If polling is used for communication between processors, then communication can be implemented, but processing power is wasted and delays are introduced

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidprocessing delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent replaces the mechanical polling system with an event-driven notification system. Instead of continuously checking for communication needs, processors use atomic operations to publish events and subscribe to specific event types. This substitution eliminates the time-consuming polling loop while maintaining reliable communication through event-driven architecture.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The communication system performs self-service by automatically notifying interested processors when events occur. The publishing processor simply sets the event in memory with atomic operations, and the notification mechanism automatically delivers it to subscribers without requiring continuous manual checking or polling from the publishing side.

Inventive Principle:
Principle #25Self-service

2Reliability

If dedicated interrupt lines are used for processor communication, then signals can be sent reliably, but device complexity increases and scalability is restricted

Engineering Contradiction:
Improvesignal delivery reliabilityVSAvoidinterrupt wiring complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a universal communication bus that handles multiple types of signals (interrupts, data transfers, coordination messages) through a single shared infrastructure. Processors communicate by publishing atomic events on this universal bus, eliminating the need for dedicated interrupt lines for each processor pair while maintaining reliable signal delivery through atomic operation guarantees.

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

Solution Approach 2:

Instead of using physical dedicated wires for each communication channel, the system uses virtual channels implemented through software-defined event routing on a shared bus. The atomic operation mechanism creates virtual copies of signals that can be delivered to multiple destinations simultaneously without requiring physical duplication of wiring infrastructure.

Inventive Principle:
Principle #26Copying

3Productivity

If serial communication mechanisms are used between processors, then data can be transmitted, but only one message can be sent at a time introducing delay

Engineering Contradiction:
Improvedata transmission speedVSAvoidmessage transmission delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the communication stream into independent parallel channels using atomic operations with different addresses or identifiers. Multiple processors can simultaneously publish different atomic events on the same bus without conflict, and the system can route these events to different destinations in parallel, effectively creating multiple simultaneous communication channels rather than a single serial stream.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from one-dimensional serial communication to multi-dimensional parallel communication by adding dimensions such as event types, destinations, and priorities. This allows multiple messages to be transmitted simultaneously across different dimensions of the event space, eliminating the bottleneck of sequential message processing.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Reliability

If memory locks are used to protect data, then data integrity is maintained, but interference between data handlers occurs and accessibility is reduced

Engineering Contradiction:
Improvedata integrityVSAvoiddata accessibility
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the locking mechanism from the data access process and replaces it with atomic operation primitives. Instead of using locks that block access, the system uses atomic compare-and-swap and atomic load/store operations that guarantee memory consistency without blocking. This extraction eliminates the interference caused by locks while maintaining data integrity through atomic guarantees.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system replaces the mechanical lock-based synchronization with an atomic operation-based synchronization mechanism. Atomic operations provide memory consistency and data protection without the blocking behavior of locks, allowing multiple data handlers to access shared memory simultaneously without interference while maintaining integrity through atomic guarantees.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11341087B2Single-chip multi-processor communication
Publication Date: 2022.05.24 DISPLAYLINK (UK) LTD
  • US11341087B2 patent drawing
  • US11341087B2 patent drawing
  • US11341087B2 patent drawing

AI summary

A heterogeneous multi-core integrated circuit comprising two or more processors, at least one of the processors being a general purpose CPU and at least one of the processors being a specialized hardware processing engine, the processors being connected by a processor local bus on the integrated circuit, wherein the general purpose CPU is configured to generate a first instruction for an atomic operation to be performed by a second processor, different from the general purpose CPU, the first instruction comprising an address of the second processor and a first command indicating a first action to be executed by the second processor, and transmit the first instruction to the second processor over the processor local bus. The first command may include the first action, or may be a descriptor of the first action or a pointer to where the first action may be found in a memory.