IP Library Granted Patent US 10,482,038
Granted Patent B2
US 10,482,038 · App. 15/219,210 · Granted Nov 19, 2019

Programmable protocol independent bar memory for SSD controller

Inventors: Xianfeng Rui (Sunnyvale, CA); Ka Wing Cheung (Milpitas, CA); Ryan Yu (Sunnyvale, CA); Ananthanarayanan Nagarajan (Palo Alto, CA)
Assignee: SK hynix Inc.
G06F12/1425G06F13/4022G06F2212/1052
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,482,038
App. No.
15/219,210
Granted
Nov 19, 2019
Kind
B2
Abstract

Memory systems may include a programmable bit control unit suitable for defining read-write properties to locations in a base address register (BAR) memory, a read-write switch suitable for receiving a memory access request, and identifying whether the memory access request is a read access or a write access, and an access control unit suitable for receiving the memory access request from the read-write switch when the memory access request is identified as a write access, determining a read-write property associated with the write access, and processing the write access to a location in the BAR memory with a defined read-write property that is the same as the determined read-write property associated with the write request.

Claims (43)

1. A memory system, comprising:

a programmable bit controller configured to define read-write properties to locations in a base address register (BAR) memory;

a read-write switch configured to:

receive a memory access request;

identify whether the memory access request is a read access or a write access; and

control routing of the memory access request for further processing based on the identify operation, wherein, when the memory access request is identified as a read access, the memory access request is routed directly to the BAR memory; and

an access controller configured to:

receive the memory access request from the read-write switch when the memory access request is identified as a write access but not when the memory access request is identified as a read access;

determine a read-write property, among a plurality of read-write properties including a first read-write property, associated with the write access;

bypass the write access when the read-write property is determined to be the first read-write property; and

process the write access to a location in the BAR memory with a defined read-write property that is the same as the determined read-write property associated with the write request, when the read-write property is determined to be any other of the plurality of read-write properties.

2. The memory system of claim 1 , wherein the first read-write property includes read-only, and the other read-write properties include read-write 1 to clear, read-write 1 to set, and read-write.

3. The memory system of claim 2 , wherein the access controller is further configured to write 0 to the BAR memory when the read-write property associated with the write access is read-write 1 to clear, and to write 1 to the BAR memory when the read-write property associated with the write access is read-write 1 to set.

4. The memory system of claim 1 , wherein the access controller is further configured to calculate a destination address of the write access in the BAR memory.

5. The memory system of claim 1 , wherein the read-write properties are defined to locations in the BAR memory by a 2-bit parameter.

6. A method, comprising:

defining, with a programmable bit controller, read-write properties to locations in a base address register (BAR) memory;

receiving, with a read-write switch, a memory access request;

identifying, with the read-write switch, whether the memory access request is a read access or a write access;

controlling, with the read-write switch, routing of the memory access request for further processing based on the identifying operation, wherein, when the memory access request is identified as a read access, the memory access request is routed directly to the BAR memory;

receiving, with an access controller, the memory access request from the read-write switch when the memory access request is identified as a write access but not when the memory access request is identified as a read access;

determining, with the access controller, a read-write property, among a plurality of read-write properties including a first read-write property, associated with the write access;

bypass the write access when the read-write property is determined to be the first read-write property; and

processing, with the access controller, the write access to a location in the BAR memory with a defined read-write property that is the same as the determined read-write property associated with the write request, when the read-write property is determined to be any other of the plurality of read-write properties.

7. The method of claim 6 , wherein the first read-write property includes read-only, and the other read-write properties include read-write 1 to clear, read-write 1 to set, and read-write.

8. The method of claim 7 , further comprising writing 0 to the BAR memory when the read-write property associated with the write access is read-write 1 to clear, and writing 1 to the BAR memory when the read-write property associated with the write access is read-write 1 to set.

9. The method of claim 6 , further comprising calculating a destination address of the write access in the BAR memory.

10. The method of claim 6 , wherein the read-write properties are defined to locations in the BAR memory by a 2-bit parameter.

11. A memory device, comprising:

a programmable bit controller configured to define read-write properties to locations in a base address register (BAR) memory;

a read-write switch configured to:

receive a memory access request;

identify whether the memory access request is a read access or a write access; and

control routing of the memory access request for further processing based on the identify operation, wherein, when the memory access request is identified as a read access, the memory access request is routed directly to the BAR memory; and

an access controller configured to:

receive the memory access request from the read-write switch when the memory access request is identified as a write access but not when the memory access request is identified as a read access;

determine a read-write property, among a plurality of read-write properties including a first read-write property, associated with the write access;

bypass the write access when the read-write property is determined to be the first read-write property; and

process the write access to a location in the BAR memory with a defined read-write property that is the same as the determined read-write property associated with the write request, when the read-write property is determined to be any other of the plurality of read-write properties.

12. The memory device of claim 11 , wherein the first read-write property includes read-only, and the other read-write properties include read-write 1 to clear, read-write 1 to set, and read-write.

13. The memory device of claim 12 , wherein the access controller is further configured to write 0 to the BAR memory when the read-write property associated with the write access is read-write 1 to clear, and to write 1 to the BAR memory when the read-write property associated with the write access is read-write 1 to set.

14. The memory device of claim 11 , wherein the controller is further configured to calculate a destination address of the write access in the BAR memory.

15. The memory device of claim 11 , wherein the read-write properties are defined to locations in the BAR memory by a 2-bit parameter.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2017
From: SK HYNIX MEMORY SOLUTIONS INC.
To: SK HYNIX INC.
Reel/Frame 044899/0443 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2016
From: RUI, XIANFENG; CHEUNG, KA WING; YU, RYAN; NAGARAJAN, ANANTHANARAYANAN
To: SK HYNIX MEMORY SOLUTIONS INC.
Reel/Frame 039987/0272 →
Continuity (2)
Provisional Application 62196851 · Jul 24, 2015
Related Publication 20170024332A1 · Jan 26, 2017