Host Address Translation for Non-Linear Memory Buffering

Solution Overview

Problem

Existing memory systems face inefficiencies in performing write and read operations due to the need to manage non-linear host physical addresses, which can lead to performance degradation and complexity in data allocation and retrieval.

Innovation Solution

A memory system that translates non-linear host physical addresses into linear virtual addresses, using a host address translation section to generate a physical-virtual address mapping table, allowing for efficient buffering and operation in a controller buffer memory, and subsequent output to a host buffer memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If non-linear host physical addresses are used directly for buffering, then the host memory addressing is simplified, but the controller buffer management becomes complex and inefficient

Engineering Contradiction:
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces a host address translation section as an intermediary component that translates non-linear host physical addresses into linear virtual addresses. This translation layer acts as a mediator between the host interface and the controller buffer memory, converting complex non-linear addressing into simple linear addressing that the controller can efficiently manage. The intermediary resolves the contradiction by maintaining ease of host addressing while simplifying controller buffer management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If non-linear host physical addresses are used for data buffering, then host address allocation is straightforward, but write and read operation performance degrades

Engineering Contradiction:
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent changes the addressing parameter from non-linear host physical addresses to linear virtual addresses through the address translation section. By transforming the address parameter representation, the system maintains straightforward host address allocation while enabling sequential address patterns in the controller buffer that significantly improve write and read operation performance. The parameter change resolves the contradiction by preserving host allocation simplicity while enhancing operational productivity.

Inventive Principle:
Principle #35Parameter changes

3Loss of time

If non-linear addresses are mapped directly to buffer locations, then address translation overhead is minimized, but address allocation efficiency decreases

Engineering Contradiction:
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent performs preliminary address translation by converting non-linear host physical addresses to linear virtual addresses before data buffering operations. This preliminary action of address translation establishes an efficient linear addressing scheme upfront, enabling sequential address allocation in the controller buffer that improves overall address allocation efficiency. The preliminary translation resolves the contradiction by minimizing subsequent address translation overhead while maximizing allocation efficiency through sequential address patterns.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10678476B2Memory system with host address translation capability and operating method thereof
Publication Date: 2020.06.09
  • US10678476B2 patent drawing
  • US10678476B2 patent drawing
  • US10678476B2 patent drawing

AI summary

A memory system and an operating method thereof are provided. The memory system includes a controller buffer memory, a host interface configured to receive non-linear host physical addresses and write data from a host, a host address translation section configured to map the non-linear host physical addresses to linear virtual addresses, and a host control section configured to buffer the write data in the controller buffer memory according to the linear virtual addresses.