Shared Memory Computing Architecture with Timeslot Interconnect

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Shared memory computing devices with multiple bus-masters experience real-time issues due to unwanted timing interference from unrelated memory transfer requests, leading to significant delays in servicing memory transfer requests over shared interconnects like ARM AMBA AHB.

Innovation Solution

A shared memory computing architecture with multiple interconnect masters and targets, utilizing a timeslot-based interconnect that decouples memory transfer requests and responses, allowing each interconnect master to issue requests independently without interference, and employing cache modules with update-type cache coherency policies to maintain timing integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If multiple bus masters share a common interconnect for memory transfers, then device complexity is reduced and resources are shared, but timing interference occurs causing unpredictable worst-case execution times

Engineering Contradiction:
Improveinterconnect architecture complexityVSAvoidworst-case execution time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The interconnect is segmented into multiple independent timeslots, with each timeslot dedicated to a specific interconnect master. This segmentation eliminates timing interference between masters while maintaining resource sharing, as each master operates in its assigned timeslot without contention from others.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The interconnect operates using periodic timeslots that are cyclically assigned to different interconnect masters. This periodic structure ensures that each master receives guaranteed access to the interconnect at regular intervals, providing predictable worst-case execution times while maintaining efficient resource utilization through cyclic rotation.

Inventive Principle:
Principle #19Periodic action

2Productivity

If memory transfer requests are serviced over a shared interconnect, then resource utilization is improved, but unrelated memory transfer requests cause timing interference and delays

Engineering Contradiction:
Improveresource utilizationVSAvoidtiming predictability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The shared interconnect is divided into separate timeslots for different masters, segmenting the resource access in time. This allows high resource utilization through sharing while ensuring timing predictability, as each master has guaranteed access during its assigned timeslot without interference from unrelated requests.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Timeslots are pre-allocated to interconnect masters in advance, establishing a predetermined schedule for resource access. This preliminary assignment ensures that each master knows when it will gain access to the interconnect, providing timing predictability while maintaining efficient resource utilization through the pre-planned sharing arrangement.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If a single interconnect services multiple masters, then device complexity is minimized, but a single request can block the bus for multiple clock cycles

Engineering Contradiction:
Improveinterconnect structureVSAvoidmemory transfer throughput
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The interconnect is segmented into multiple timeslots that can operate in parallel for different masters. This segmentation allows the system to maintain a simple single-bus structure while achieving higher effective throughput, as multiple transfers can be initiated in different timeslots without one blocking the others.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The timeslot-based interconnect maintains continuous useful action by ensuring that while one master is transferring data, other masters can simultaneously initiate or complete transfers in their assigned timeslots. This eliminates idle bus periods and maintains continuous productive activity, improving overall throughput without increasing structural complexity.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10210117B2Computing architecture with peripherals
Publication Date: 2019.02.19 GITTINS BENJAMIN AARON
  • US10210117B2 patent drawing
  • US10210117B2 patent drawing
  • US10210117B2 patent drawing

AI summary

A shared memory computing device optimised for executing realtime software that has at least one interconnect master, a shared memory, N cache modules and M processor cores, where the value of N>=1 and M =N. Each of the N cache modules has a means to implement an update-type cache coherency policy across those N cache modules. Each processor core is assigned a different one of the N cache modules as that processor core's private cache. Furthermore, the memory transfer request latency of non-atomic memory transfer requests issued by each of the M processor cores to the shared memory is not modified by: (a) the memory transfer requests issued by any of the other M processor cores; or (b) the memory transfer requests issued by at least one other interconnect master.