Memory Unit Shift Command Bypasses Bus Bottleneck

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The von Neumann architecture-based digital computer systems face a bottleneck due to limited bus throughput between the CPU and memory, leading to inefficiencies in data transfer and processing, especially when handling large data sets, as existing strategies require complex data structures and increased energy consumption.

Innovation Solution

A memory unit that stores data in a logical memory space with index variables, allowing for shift commands to move data within the memory space without using the bus, enabling simpler and faster data operations like insertion and deletion, and incorporating a buffer for direct data communication, reducing energy consumption and heat generation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is transferred between CPU and memory using the bus, then data can be moved between processing unit and storage, but the bus throughput is limited causing the von Neumann bottleneck

Engineering Contradiction:
Improvedata transfer rateVSAvoidCPU waiting time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The memory is divided into two independent spaces: a first memory space accessible via the bus for standard data operations, and a second memory space with direct access to CPU registers for rapid data manipulation. This segmentation allows data-intensive operations to occur in the second space without consuming bus bandwidth, resolving the bottleneck between data transfer rate and CPU waiting time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A data buffer is introduced as an intermediary component between the CPU and the second memory space. The buffer enables direct data exchange between CPU registers and the second memory space without passing through the bus, effectively mediating the data transfer process and eliminating the von Neumann bottleneck for operations within the second space.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If complex data structures are used to handle dynamic data, then data manipulation operations can be performed, but the operations become slower due to bus communication requirements

Engineering Contradiction:
Improvedata handling capabilityVSAvoidoperation speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system segments data storage into two spaces with different access characteristics. The second memory space is specifically designed for dynamic data manipulation with direct CPU register access, enabling complex data structures to be handled without bus communication overhead. This allows insertion, deletion, and reordering operations to proceed at high speed while maintaining adaptability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The second memory space and its associated buffer enable the system to perform data manipulation operations autonomously without requiring CPU intervention through the bus. The buffer automatically transfers data between CPU registers and the second memory space, allowing the system to serve itself during data-intensive operations and maintain high productivity.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If data is moved through the bus for array operations, then data can be accessed and modified, but energy consumption increases proportionally to array size

Engineering Contradiction:
Improvedata access capabilityVSAvoidenergy consumption
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The memory is segmented into a first space requiring bus access and a second space with direct register access. Array operations are performed in the second space where data is accessed and modified through direct register operations rather than bus transfers. This segmentation dramatically reduces energy consumption for data manipulation operations while maintaining ease of operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The buffer and second memory space enable the system to perform data operations autonomously without repeated bus transactions. Once data is loaded into the second space, the system can manipulate and process it locally, serving its own energy-intensive operations without requiring continuous energy-consuming bus communication, thus reducing overall energy consumption.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11960747B2Moving data in a memory and command for memory control
Publication Date: 2024.04.16 BLUESHIFT MEMORY LTD
  • US11960747B2 patent drawing
  • US11960747B2 patent drawing
  • US11960747B2 patent drawing

AI summary

A memory unit (23,24) is proposed for a computer system having a processing unit and a data bus for transferring data between the processing unit and the memory unit. The memory unit (23,24) stores data at a plurality of locations (“data items”) in a logical memory space (32), such that each data item has an address given by at least one index variable. In addition to read and write commands, the memory unit is operative to receive a shift command in a predefined format and including shift data which indicates a source address in the logical space. Upon receiving the command, the memory unit is operative to recognise it as a shift command and accordingly perform a predefined shift function comprising (i) using the source address to identify a portion of data in the memory space and (ii) writing that portion of data to a different location in the memory space. Thus, the portion of data can be shifted within the memory space without a need to transfer the portion of data along the bus.