Howard Cascade Inter-Chip Communication via Shared Memory Queues

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multiprocessor systems on a chip (MPSoCs) face inefficiencies in inter-core and inter-chip communication, particularly in coordinating shared memory access and message transmission across multiple processor nodes, leading to increased memory access times and potential blocking issues.

Innovation Solution

The implementation of a Howard Cascade architecture, which utilizes a switch fabric for inter-core and inter-chip communication, including shared memory configurations with input queues, allows for coordinated communication between multiple System on a Chip (SoC) nodes, eliminating the need for memory locking/unlocking and preventing blocking by using a tree broadcast all-to-all exchange mechanism.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional shared memory access coordination is used in multiprocessor systems, then memory access control is implemented, but memory access time increases and blocking issues occur

Engineering Contradiction:
Improvememory access controlVSAvoidmemory access time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent introduces a message queue as an intermediary mechanism between processor nodes and shared memory. Instead of direct memory access requiring coordination and locking, messages are queued and transmitted through the message queue interface, eliminating the need for memory locking/unlocking operations and reducing access time while maintaining reliable access control.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the traditional mechanical locking/unlocking mechanism for memory access coordination with a software-based message queue system. This substitution eliminates the blocking issues and time delays associated with hardware-level memory locking, allowing concurrent access without interference while maintaining access control integrity.

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

2Reliability

If traditional inter-core communication methods are used, then communication between cores is established, but communication efficiency decreases and blocking occurs

Engineering Contradiction:
Improveinter-core communicationVSAvoidcommunication efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the communication system into independent message queues for each processor node, allowing parallel message transmission without interference. This segmentation enables multiple cores to communicate simultaneously through their respective queues, eliminating blocking issues while maintaining reliable communication between all core pairs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The message queue mechanism enables continuous message transmission between processor nodes without interruption or blocking. Messages are queued and transmitted in a continuous flow, allowing communication to proceed without the start-stop pattern caused by traditional coordination protocols, thereby improving overall communication efficiency.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If memory locking/unlocking mechanisms are used for coordination, then access control is maintained, but system blocking increases

Engineering Contradiction:
Improveaccess controlVSAvoidsystem blocking
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The message queue serves as an intermediary that handles all coordination and access control requirements, eliminating the need for memory locking/unlocking mechanisms. The queue manages message transmission between nodes without requiring any node to block or acquire locks, thereby maintaining access control while completely eliminating system blocking.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Each processor node independently manages its own message queue without requiring coordination or locking with other nodes. The self-service nature of individual queue management eliminates inter-node dependencies that cause blocking, while the queue structure itself provides the necessary access control and coordination functionality.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10216692B2Multi-core parallel processing system
Publication Date: 2019.02.26 MASSIVELY PARALLEL TECHNOLOGIES INC
  • US10216692B2 patent drawing
  • US10216692B2 patent drawing
  • US10216692B2 patent drawing

AI summary

A multiprocessor system on a chip (MPSoC) implements parallel processing and include a plurality of cores with inter-core communication. This communication is implemented by an on-chip switch fabric in communication with each core, or by shared memory in communication with each core. In another embodiment, a parallel processing system is implemented as a Howard Cascade and uses shared memory for implementing inter-chip communication. The parallel processing system includes a plurality of chips, each formed as an MPSoC, and implements communication between the chips using shared memory.