Matrix Pointer Registers for Variable-Word Instruction Sets

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing architectures, such as RISC and CISC, face limitations in extensibility and efficiency due to fixed word lengths and complexity, which restrict the growth of instruction sets and lead to higher power consumption and lower performance in matrix and array processing.

Innovation Solution

A computer-implemented instruction set architecture that utilizes a Matrix Space and matrix pointer registers to enable efficient computing with matrices and arrays, allowing for large instruction sets and immediate mode addressing through payload instructions, enabling access and manipulation of matrices by rows, columns, or both, and providing secure access control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If fixed word length is used in RISC architectures, then device complexity is reduced, but instruction set growth is limited

Engineering Contradiction:
Improveinstruction set growthVSAvoidword length flexibility
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements variable word length instructions that can dynamically adapt to different computational needs. The instruction set architecture allows instructions to have different lengths (e.g., 32-bit, 64-bit, 128-bit) depending on the operation type and data requirements, enabling the system to grow and adapt without being constrained by a fixed word length

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent creates a universal instruction set that can handle multiple data types and operations through a single architecture. The variable word length mechanism allows the same instruction set to accommodate scalar operations, vector operations, matrix operations, and array processing, making the architecture multi-functional and highly adaptable

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

2Adaptability or versatility

If CISC architectures with variable word length are used, then instruction set extensibility is improved, but device complexity increases

Engineering Contradiction:
Improveinstruction set extensibilityVSAvoidinstruction decoding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the instruction set into distinct categories based on word length and operation type. Instructions are organized into groups (e.g., 32-bit instructions for scalar operations, 64-bit for vector operations, 128-bit for matrix operations), allowing the decoder to process instructions in a systematic manner that reduces overall complexity while maintaining extensibility

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses parameter changes in instruction formatting to manage complexity. By varying word length as a parameter rather than creating entirely new instruction formats for each operation type, the system achieves extensibility through a controlled parameter variation approach that the decoder can handle systematically

Inventive Principle:
Principle #35Parameter changes

3Productivity

If matrices are stored and processed as 1-dimensional vectors, then device complexity is reduced, but processing performance deteriorates

Engineering Contradiction:
Improvematrix processing performanceVSAvoidmatrix storage and access structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces 2D matrix space addressing as a new dimension beyond traditional 1D vector storage. The system provides dedicated matrix pointer registers and addressing modes that enable direct access to matrix elements in two dimensions, allowing the processor to recognize and operate on matrices as two-dimensional structures rather than flattened 1D arrays, significantly improving processing performance for linear algebra operations

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

4Adaptability or versatility

If payload instructions are used for immediate mode addressing, then instruction set size grows, but decoding complexity increases

Engineering Contradiction:
Improveimmediate mode addressing capabilityVSAvoidinstruction decoding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces payload instructions as an intermediary mechanism between the fixed-length instruction format and the variable-length immediate mode addressing. The payload instruction serves as a mediator that can be appended to existing instructions to extend their immediate operand capacity, allowing the system to grow the instruction set size for immediate addressing without fundamentally redesigning the entire instruction decoding architecture

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240004655A1Computing Machine Using a Matrix Space And Matrix Pointer Registers For Matrix and Array Processing
Publication Date: 2024.01.04 ONNIVATION LLC
  • US20240004655A1 patent drawing
  • US20240004655A1 patent drawing
  • US20240004655A1 patent drawing

AI summary

This disclosure relates to methods and mechanisms for matrix computing which include machine embodiments with one or more matrix storage spaces for holding matrices and arrays for computing, where a matrix or an array is accessible by its columns, by its rows, or both, individually, or concurrently. A set of methods and mechanisms to build a large capacity instruction set with multi-length instructions to load, store, and compute with these matrices and arrays are also disclosed. Methods and access control mechanisms with keys to secure, share, lock and unlock regions in the storage space for matrices and arrays under the control of an operating system or a virtual machine hypervisor by permitted threads and processes are also disclosed. Methods and mechanisms to handle long immediate operands for use by shorter instructions using a payload instruction are also disclosed. The structure of the instructions with key instruction fields and a method for determining instruction length are also disclosed.