Register Block Validity Control for Uninitialized Access Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graphics processing systems face security risks due to unauthorized access of data stored in non-resettable register files by subsequent shader programs, and existing solutions like overwriting registers or using resettable memory incur time, area, or latency penalties.

Innovation Solution

Implementing a method where register files are divided into blocks with corresponding validity bits, allowing parallel reading and writing while preventing unauthorized access by outputting predetermined values if validity bits indicate invalid data, and efficiently resetting validity bits.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Area of stationary object

If register files are made non-resettable to save area, then area is reduced, but subsequent shader programs can unauthorizedly access data from previous programs

Engineering Contradiction:
Improveregister file areaVSAvoiddata access security
Core Design Contradiction:
Area of stationary objectVSReliability

Solution Approach 1:

The register file is segmented into multiple blocks, with each block having its own validity bit. This segmentation allows selective invalidation of specific register blocks without affecting the entire register file, enabling security protection while maintaining area efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Validity bits are introduced as intermediary elements between the register file and the shader programs. These validity bits act as mediators that control whether data in each register block should be accessed or blocked, providing a mechanism for secure data access without requiring resettable memory.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If all registers are overwritten with zeros or random data to prevent unauthorized access, then data security is improved, but processing time and power consumption increase

Engineering Contradiction:
Improvedata access securityVSAvoidreset time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of overwriting all registers, only the validity bits of specific blocks need to be reset. This segmentation approach reduces the amount of data that needs to be rewritten from potentially millions of registers to just a few validity bits, dramatically reducing reset time and power consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the security function from the entire register file and concentrates it in individual validity bits associated with each block. This allows the security mechanism to be applied selectively only where needed, rather than across the entire register file.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If resettable memory is used to prevent unauthorized access, then data security is improved, but area increases significantly

Engineering Contradiction:
Improvedata access securityVSAvoidmemory area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The register file is divided into blocks with individual validity bits, allowing security control with minimal additional memory. Only one validity bit per block is needed, rather than requiring resettable memory for the entire register file, dramatically reducing the area penalty.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The validity bits act as disposable control elements that can be easily reset without requiring expensive resettable memory infrastructure. These simple bit elements provide the necessary security functionality with minimal resource consumption.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

4Reliability

If validity bits are added for each register to monitor validity independently, then data security is improved, but area increases due to the large number of validity bits required

Engineering Contradiction:
Improvedata validity monitoringVSAvoidvalidity bit area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

Multiple registers are grouped into blocks, with each block sharing a single validity bit. This segmentation reduces the number of validity bits from one per register to one per block, significantly reducing the area while maintaining the ability to monitor data validity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple register validity monitoring functions into a single validity bit per block. By combining the security control for multiple registers into one shared validity bit, the area requirement is reduced while still providing comprehensive validity monitoring for all registers in the block.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS20250378522A1Uninitialized Access Protection of a Register
Publication Date: 2025.12.11 IMAGINATION TECH LTD
  • US20250378522A1 patent drawing
  • US20250378522A1 patent drawing
  • US20250378522A1 patent drawing

AI summary

A method of preventing unauthorized access to uninitialized memory. Registers are grouped into blocks, each of which has a corresponding validity bit. When data is written to a block of memory the validity bit is set to valid. A read function reads both the register data and the validity bit but if the validity bit is set to invalid dummy values are output. Once a program is complete, or before a fresh program the validity bits are reset to invalid.