Processor Variable Namespace Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer processor architectures face limitations in exploiting increased transistor counts due to the 'ILP Wall' and 'Memory Wall,' primarily due to namespace management issues in register machines, which hinder parallelism and efficiency, especially in handling shared variables and memory access.

Innovation Solution

The introduction of a multi-layer control structure with a mentor layer that manages variables in a local high-speed memory and interprets instructions to control functional units, allowing for efficient operand access and parallel operations beyond traditional register architectures, and the use of a frames/bins structure for high-speed memory access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional register machine namespace management is used, then processor architecture is simple, but parallelism is limited and performance gains from increased transistor counts are lost

Engineering Contradiction:
ImproveperformanceVSAvoidnamespace complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The namespace is segmented into multiple independent layers: the traditional register namespace and the new variable namespace. Each layer operates independently with its own management rules, allowing parallelism in the variable namespace without interfering with the established register namespace. This segmentation enables the system to achieve higher productivity by exploiting parallelism while maintaining manageable complexity through clear separation of concerns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the namespace by adding the variable namespace layer above the traditional register namespace. This dimensional addition allows the system to manage variables and registers separately, enabling parallel operations on variables without the constraints of traditional register allocation. The multi-layer namespace structure resolves the contradiction by providing additional organizational dimension that decouples parallelism requirements from namespace management complexity.

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

2Productivity

If more transistors are used to implement ILP register architecture processors, then transistor count increases, but performance gains diminish due to the ILP wall

Engineering Contradiction:
ImproveperformanceVSAvoidtransistor count
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent introduces dynamic variable binding that allows variables to be bound to different storage locations (registers, memory, or hybrid structures) based on runtime conditions and optimization requirements. This dynamic approach enables the system to adaptively utilize available transistors for maximum performance gain rather than being constrained by static register allocation. The mentor circuits dynamically manage variable bindings to exploit parallelism opportunities, thereby improving performance without proportionally increasing transistor count.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the fundamental parameter of namespace organization from traditional register-based to variable-based with multiple binding options. This parameter change enables more efficient utilization of transistor resources by allowing variables to be stored in optimal locations (registers for frequently accessed, memory for less frequently accessed) based on access patterns. The mentor circuits analyze and adjust binding parameters dynamically, breaking the ILP wall by enabling parallel operations that were previously constrained by rigid register allocation.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If shadow register structures are used to increase performance, then performance improves, but system complexity far exceeds acceptable levels

Engineering Contradiction:
ImproveperformanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the variable management functionality from the traditional register management system and places it in a separate variable namespace managed by mentor circuits. Instead of using complex shadow register structures to manage variable states, the system takes out variable binding management as a distinct function that operates independently. This extraction reduces system complexity by separating concerns: registers handle traditional operations while the variable namespace handles high-level variable management with parallelism support.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The mentor circuits serve as intermediaries between the variable namespace and the physical storage structures (registers, memory). Rather than using complex shadow register structures directly, the mentor circuits mediate variable access by dynamically binding variables to appropriate storage locations. This intermediary layer simplifies the system by providing a unified variable management interface that handles the complexity of parallelism and storage management internally, while presenting a simple variable-based namespace to the programmer.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Speed

If caches are introduced to solve operand access delays, then access speed improves, but namespace coherency issues arise

Engineering Contradiction:
Improveoperand access speedVSAvoidnamespace coherency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The variable namespace is designed to be universal, accommodating multiple storage backends (registers, caches, memory) through a unified variable binding mechanism. The mentor circuits manage variable bindings across different storage types, ensuring coherency through centralized control. This multi-functional namespace structure allows the system to exploit cache speed improvements while maintaining namespace coherency through the universal variable management interface that tracks and manages bindings across all storage levels.

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

Data Source

PatentUS9977693B2Processor that uses plural form information
Publication Date: 2018.05.22 POTASH HANAN
  • US9977693B2 patent drawing
  • US9977693B2 patent drawing
  • US9977693B2 patent drawing

AI summary

A computing device includes a memory storing one or more Variables, and information relating to the singular/plural nature of at least one variable and/or algorithm, one or more functional units (Language Unit). The functional units receive the singular/plural information and perform one or more operations using at least one of the Variables using the singular/plural information. In an embodiment, a method of computing with plural information includes storing, in a memory, one or more Variables, storing, in a memory, information relating to the singular/plural nature of at least one algorithm; receiving at least a portion of the singular/plural information; and performing, using the singular/plural information, one or more operations using at least one of the Variables. In one embodiment, a method of computing includes linguistically implementing, by one or more circuits, plural-form instructions comprising one or more threads. Each thread may be a set of one or more programs. Each thread may be associated with one or more Variables such that the thread can be assigned plural and robustness properties relating to its interaction discipline(s) with other threads.