Physical Region Page Address Converter for NVMe Memory Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In systems using Non-Volatile Memory Express (NVME), the traditional storage of Physical Region Page (PRP) lists in physical memory leads to increased memory requirements as the number of PRP lists grows, posing a challenge in managing memory space efficiently, especially in systems with limited memory.

Innovation Solution

A method and circuit configuration for accessing PRP lists, involving a physical region page address converter with operating, adder, subtractor, and multiplexer circuits to calculate page base addresses and next PRP pointers, allowing for efficient memory usage without storing the entire PRP list in physical memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the PRP list is stored in physical memory, then data access can be performed using traditional memory storage methods, but the memory space required increases as the amount of PRP lists increases

Engineering Contradiction:
Improvedata access capabilityVSAvoidmemory space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts the PRP list from physical memory storage and implements it as a hardware circuit structure. The address converter circuit directly generates PRP list addresses through bit operations and circuit logic, eliminating the need to store PRP lists in physical memory while maintaining data access capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an address converter circuit as an intermediary between the memory controller and the storage system. This converter circuit processes address bits (dividing first N bits by a predetermined value, multiplying by page size parameter, adding to second value, subtracting offset value) to generate the next PRP list address, serving as a mediator that enables address generation without physical memory storage.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If the PRP list is stored in physical memory, then traditional memory access methods can be used, but memory requirements increase in systems with limited memory space

Engineering Contradiction:
Improvememory access methodVSAvoidmemory space
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent replaces the mechanical/memory-based PRP list storage system with a circuit-based address generation system. The address converter circuit uses electronic bit operations (division, multiplication, addition, subtraction) to generate PRP list addresses, substituting physical memory access with circuit-level computational operations.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Loss of information

If the entire PRP list is stored in physical memory, then complete PRP list data is available, but memory usage increases

Engineering Contradiction:
ImprovePRP list data availabilityVSAvoidmemory usage
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The patent implements preliminary action by pre-configuring the address converter circuit with the address generation logic. The circuit is designed beforehand to perform bit operations (dividing first N bits by predetermined value, multiplying by page size parameter, adding to second value, subtracting offset value) so that PRP list addresses can be generated on-demand without storing the entire list.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10592426B2Physical region page address converter and physical region page list access method
Publication Date: 2020.03.17 ASMEDIA TECHNOLOGY INC
  • US10592426B2 patent drawing
  • US10592426B2 patent drawing
  • US10592426B2 patent drawing

AI summary

A method for accessing a physical region page (PRP) list includes obtaining a PRP address of a PRP list, in which the PRP address has M bits; performing operation to the first N bits of the PRP address and the N+1 th to Mth bits of the PRP address respectively to obtain a page base address if the PRP address is within a page boundary; and performing operation to the first N bits of the PRP address and the N+1 th to Mth bits of the PRP address respectively to obtain next PRP address pointer if the PRP address reaches the page boundary. N is an integer, and M is an integer larger than N.