Reading and writing data at multiple, individual non-volatile memory portions in response to data transfer sent to single relative memory address
First Claim
1. A method of performing memory operations in a storage system, the storage system having one or more memory controllers and a set of memory devices, each memory device comprising a plurality of memory portions, the method comprising:
- at a first memory portion of the plurality of memory portions in a first memory device of the set of memory devices;
determining a designated position of the first memory portion;
receiving a sub-request conveyed to the plurality of memory portions in the first memory device, wherein the sub-request comprises a single contiguous instruction portion and a plurality of data segments of a data packet, and wherein the single contiguous instruction portion comprises a single relative memory address and a single set of one or more instructions to write the plurality of data segments;
detecting that the received sub-request includes an instruction to write data; and
in response to detecting the instruction to write data;
identifying, of the plurality of data segments, a first data segment allocated to the first memory portion;
placing the first data segment into a buffer of the first memory portion; and
writing the buffered first data segment to a location in non-volatile memory of the first memory portion, the location corresponding to the single relative memory address.
3 Assignments
0 Petitions
Accused Products
Abstract
A first memory portion of a plurality of memory portions is configured to determine a designated position of the first memory portion (in a predefined sequence of the plurality of memory portions), and to receive a sub-request conveyed to the plurality of memory portions in the first memory device. The sub-request has a single contiguous instruction portion and a plurality of data segments. The single contiguous instruction portion has a single relative memory address and a single set of one or more instructions to write the data segments. The first memory portion detects that the received sub-request includes an instruction to write data, and in response, identifies a first data segment allocated to the first memory portion, places the first data segment into a buffer of the first memory portion, and writes the buffered first data segment to a location in non-volatile memory of the first memory portion.
-
Citations
20 Claims
-
1. A method of performing memory operations in a storage system, the storage system having one or more memory controllers and a set of memory devices, each memory device comprising a plurality of memory portions, the method comprising:
at a first memory portion of the plurality of memory portions in a first memory device of the set of memory devices; determining a designated position of the first memory portion; receiving a sub-request conveyed to the plurality of memory portions in the first memory device, wherein the sub-request comprises a single contiguous instruction portion and a plurality of data segments of a data packet, and wherein the single contiguous instruction portion comprises a single relative memory address and a single set of one or more instructions to write the plurality of data segments; detecting that the received sub-request includes an instruction to write data; and in response to detecting the instruction to write data; identifying, of the plurality of data segments, a first data segment allocated to the first memory portion; placing the first data segment into a buffer of the first memory portion; and writing the buffered first data segment to a location in non-volatile memory of the first memory portion, the location corresponding to the single relative memory address. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
9. A storage system, comprising:
-
a storage device that includes a set of memory devices, a first memory device of the set of memory devices comprising a plurality of memory portions;
the storage device further including one or more memory controllers for controlling operation of the storage system and responding to host commands;wherein a first memory portion of the plurality of memory portions in the first memory device is configured to perform memory operations, including; determining a designated position of the first memory portion within the first memory device; receiving a sub-request conveyed to the plurality of memory portions in the first memory device, wherein the sub-request comprises a single contiguous instruction portion and a plurality of data segments of a data packet, and the single contiguous instruction portion comprises a single relative memory address and a single set of one or more instructions to write the plurality of data segments; detecting that the received sub-request includes an instruction to write data; and in response to detecting the instruction to write data; identifying, of the plurality of data segments, a first data segment allocated to the first memory portion; placing the first data segment into a buffer of the first memory portion; and writing the buffered first data segment to a location in non-volatile memory of the first memory portion, the location corresponding to the single relative memory address. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which, when executed by a local controller, comprising one or more processors and/or state machines, cause a first memory portion of a plurality of memory portions in a first memory device to:
-
determine a designated position of the first memory portion; receive a sub-request conveyed to the plurality of memory portions in the first memory device, wherein the sub-request comprises a single contiguous instruction portion and a plurality of data segments of a data packet, and wherein the single contiguous instruction portion comprises a single relative memory address and a single set of one or more instructions to write the plurality of data segments; detect that the received sub-request includes an instruction to write data; and in response to detecting the instruction to write data; identify, of the plurality of data segments, a first data segment allocated to the first memory portion; place the first data segment into a buffer of the first memory portion; and write the buffered first data segment to a location in non-volatile memory of the first memory portion, the location corresponding to the single relative memory address. - View Dependent Claims (20)
-
Specification