Interleaved Storage Circuits for SIMD Data Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In Single Instruction Multiple Data (SIMD) architectures, the latency of data processing elements is increased due to the need for multiple accesses to register banks when handling data elements, which consumes space and power, and existing methods require multiple accesses to the same storage circuit, leading to inefficiencies.

Innovation Solution

The implementation of a data processing device with storage circuits configured for interleaved storage of data elements, allowing a consumer to access either subsets of data elements or bits of each element in parallel, reducing the number of storage circuits and circuitry required, thereby minimizing latency and power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple register banks are provided to store data elements for parallel access, then data access parallelism is improved, but device complexity and power consumption increase

Engineering Contradiction:
Improvedata access parallelismVSAvoidnumber of register banks
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments data elements into multiple fields within each register bank, allowing different fields of different data elements to be stored in the same register bank. This segmentation enables parallel access to multiple data elements without requiring multiple separate register banks, thus improving productivity while controlling device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each register bank is designed to be multi-functional by storing different fields of multiple data elements simultaneously. The register banks can serve multiple purposes: storing complete data elements, storing specific fields of data elements, and supporting both element-wise and field-wise access patterns, thereby reducing the total number of register banks needed.

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

2Adaptability or versatility

If multiple accesses to the same storage circuit are required, then data access flexibility is improved, but latency increases

Engineering Contradiction:
Improvedata access flexibilityVSAvoidaccess latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary organization of data fields within register banks during the storage phase, arranging fields so that commonly accessed combinations are positioned for optimal parallel access. This preliminary arrangement ensures that subsequent access operations can retrieve required data in a single access cycle, preventing latency increases while maintaining flexibility.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a field dimension within each register bank, allowing access not only by data element index but also by field position. This additional dimension enables flexible data access patterns where specific fields of multiple data elements can be accessed simultaneously in parallel, maintaining versatility while avoiding multiple sequential accesses that would increase latency.

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

3Speed

If more storage circuits are used to reduce access latency, then data access speed is improved, but power consumption increases

Engineering Contradiction:
Improvedata access speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by stationary object

Solution Approach 1:

The patent merges the storage of different fields of data elements into the same register bank, combining multiple storage functions into a single circuit. This merging reduces the total number of storage circuits required while maintaining the ability to access multiple data elements in parallel, thus improving data access speed without proportionally increasing power consumption.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent applies local quality optimization by allowing different register banks to store different field configurations optimized for specific access patterns. Each register bank can be locally optimized to store fields that are frequently accessed together, improving access speed for common operations while minimizing the number of active storage circuits and reducing overall power consumption.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9582419B2Data processing device and method for interleaved storage of data elements
Publication Date: 2017.02.28 ARM LTD
  • US9582419B2 patent drawing
  • US9582419B2 patent drawing
  • US9582419B2 patent drawing

AI summary

A data processing device 100 comprises a plurality of storage circuits 130, 160, which store a plurality of data elements of the bits in an interleaved manner. Data processing device also comprises a consumer 110 with a number of lanes 120. The consumer is able to individually access each of the plurality of storage circuits 130, 160 in order to receive into the lanes 120 either a subset of the plurality of data elements or y bits of each of the plurality of data elements. The consumer 110 is also able to execute a common instruction of each of the plurality of lanes 120. The relationship of the bits is such that b is greater than y and is an integer multiple of y. Each of the plurality of storage circuits 130, 160 stores at most y bits of each of the data elements. Furthermore, each of the storage circuits 130, 160 stores at most y/b of the plurality of data elements. By carrying out the interleaving in this manner, the plurality of storage circuits 130, 160 comprise no more than b/y storage circuits.