IP Library Granted Patent US 10,635,598
Granted Patent B2
US 10,635,598 · App. 15/941,868 · Granted Apr 28, 2020

Memory-addressed maps for persistent storage device

Inventors: Bryan Veal (Beaverton, OR); Annie Foong (Aloha, OR)
Assignee: Intel Corporation
G06F12/10G06F13/1642G06F2212/1016G06F2212/202G06F2212/657
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,635,598
App. No.
15/941,868
Granted
Apr 28, 2020
Kind
B2
Abstract

An embodiment of a semiconductor apparatus may include technology to determine one or more logical block addresses for a persistent storage media, determine one or more addresses for a physical memory space, and define a memory-mapped input/output region for the physical memory space with a direct mapping between the one or more addresses for the physical memory space and the one or more logical block addresses for the persistent storage media. Other embodiments are disclosed and claimed.

Claims (60)

1. An electronic processing system, comprising:

a processor;

persistent storage media communicatively coupled to the processor; and

logic communicatively coupled to the persistent storage media to:

determine one or more logical block addresses for the persistent storage media,

determine one or more addresses for a physical memory space, and

define a memory-mapped input/output region for the physical memory space with a direct mapping between the one or more addresses for the physical memory space and the one or more logical block addresses for the persistent storage media, wherein the persistent storage media comprises a solid-state drive with memory-addressed device technology to map memory space to non-volatile storage, and wherein peer-to-peer writes of data between a peer device to the memory-addressed device technology of a host system do not interfere with a central processing unit of the host system.

2. The system of claim 1 , wherein the logic is further to:

provide a pre-determined granularity for the one or more logical block addresses.

3. The system of claim 1 , wherein the logic is further to:

provide access to the memory-mapped input/output region based on one or more of a processor load and a processor store instruction.

4. The system of claim 1 , wherein the logic is further to:

provide access to the memory-mapped input/output region based on a bus access request from a peer bus device.

5. The system of claim 4 , wherein the logic is further to:

queue bus access requests for the memory-mapped input/output region; and

interpret the bus access requests as input/output commands with associated addresses and lengths.

6. The system of claim 5 , wherein the logic is further to:

buffer a bus write request if the size of the bus write request is smaller than a size of a persistent storage media access.

7. The system of claim 4 , wherein the logic is further to:

offset the one or more logical block addresses of the persistent storage media based on an offset from a bus base address register.

8. The system of claim 1 , wherein the persistent storage media comprises a non-volatile memory.

9. A semiconductor apparatus, comprising:

one or more substrates; and

logic coupled to the one or more substrates, wherein the logic is at least partly implemented in one or more of configurable logic and fixed-functionality hardware logic, the logic coupled to the one or more substrates to:

determine one or more logical block addresses for a persistent storage media,

determine one or more addresses for a physical memory space, and

define a memory-mapped input/output region for the physical memory space with a direct mapping between the one or more addresses for the physical memory space and the one or more logical block addresses for the persistent storage media, wherein the persistent storage media comprises a solid-state drive with memory-addressed device technology to map memory space to non-volatile storage, and wherein peer-to-peer writes of data between a peer device to the memory-addressed device technology of a host system do not interfere with a central processing unit of the host system.

10. The apparatus of claim 9 , wherein the logic is further to:

provide a pre-determined granularity for the one or more logical block addresses.

11. The apparatus of claim 9 , wherein the logic is further to:

provide access to the memory-mapped input/output region based on one or more of a processor load and a processor store instruction.

12. The apparatus of claim 9 , wherein the logic is further to:

provide access to the memory-mapped input/output region based on a bus access request from a peer bus device.

13. The apparatus of claim 12 , wherein the logic is further to:

queue bus access requests for the memory-mapped input/output region; and

interpret the bus access requests as input/output commands with associated addresses and lengths.

14. The apparatus of claim 13 , wherein the logic is further to:

buffer a bus write request if the size of the bus write request is smaller than a size of a persistent storage media access.

15. The apparatus of claim 12 , wherein the logic is further to:

offset the one or more logical block addresses of the persistent storage media based on an offset from a bus base address register.

16. The apparatus of claim 9 , wherein the persistent storage media comprises a non-volatile memory.

17. The apparatus of claim 9 , wherein the logic coupled to the one or more substrates includes transistor channel regions that are positioned within the one or more substrates.

18. A method of mapping memory, comprising:

determining one or more logical block addresses for a persistent storage media;

determining one or more addresses for a physical memory space; and

defining a memory-mapped input/output region for the physical memory space with a direct mapping between the one or more addresses for the physical memory space and the one or more logical block addresses for the persistent storage media, wherein the persistent storage media comprises a solid-state drive with memory-addressed device technology to map memory space to non-volatile storage, and wherein peer-to-peer writes of data between a peer device to the memory-addressed device technology of a host system do not interfere with a central processing unit of the host system.

19. The method of claim 18 , further comprising:

providing a pre-determined granularity for the one or more logical block addresses.

20. The method of claim 18 , further comprising:

providing access to the memory-mapped input/output region based on one or more of a processor load and a processor store instruction.

21. The method of claim 18 , further comprising:

providing access to the memory-mapped input/output region based on a bus access request from a peer bus device.

22. The method of claim 21 , further comprising:

queuing bus access requests for the memory-mapped input/output region; and

interpreting the bus access requests as input/output commands with associated addresses and lengths.

23. The method of claim 22 , further comprising:

buffering a bus write request if the size of the bus write request is smaller than a size of a persistent storage media access.

24. The method of claim 21 , further comprising:

offsetting the one or more logical block addresses of the persistent storage media based on an offset from a bus base address register.

25. The method of claim 18 , wherein the persistent storage media comprises a non-volatile memory.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2023
From: INTEL CORPORATION
To: INTEL NDTM US LLC
Reel/Frame 064928/0832 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2018
From: VEAL, BRYAN; FOONG, ANNIE
To: INTEL CORPORATION
Reel/Frame 045407/0535 →
Continuity (1)
Related Publication 20190050341A1 · Feb 14, 2019
Cited By (3)
US 12,468,640 US 12,541,326 US 12,591,530