Multipage preparation commands for non-volatile memory systems
AssigneeApple Inc.
InventorsVadim Khmelnitsky, Nir Jacob Wakrat, Tahoma Toelkes, Daniel Jeffrey Post, Anthony Fai
Life of this patent
Estimating the term…
Abstract
Multipage preparation commands for non-volatile memory systems are disclosed. The multipage preparation commands supply data that can be used to prepare a non-volatile memory device for forthcoming multipage program operations. A host controller can use the commands ahead of a multipage program operation to optimize usage of a multipage program command. The non-volatile memory device can use the commands to configure the non-volatile memory in preparation for a subsequent operation, such as changing a command order or using the most optimized command set for the subsequent operation.
Claims15
A method, comprising:
- partitioning a data storage device into a plurality of concurrently accessible units (CAUs), wherein each of the plurality of CAUs includes one or more memory blocks;
- receiving a first command from a host controller, wherein the first command includes an operation to be performed, and one or more addresses on which the operation will be performed;
- preparing an array of memory blocks dependent upon the one or more addresses, wherein the array includes a memory block from each of the plurality of CAUs;
- and
- performing the operation responsive to receiving a second command from the host controller.
An apparatus, comprising:
- a plurality of memory planes, wherein each memory plane includes one or more memory blocks, wherein each of the one or more memory blocks includes a plurality of data storage cells;
- and
- a memory controller coupled to the plurality of memory planes, wherein the memory controller is configured to:
- receive a first command from a host, wherein the first command includes an operation to be performed, and one or more addresses on which the operation is to be performed;
- prepare an array of memory blocks dependent upon the one or more addresses, wherein the array of memory blocks includes a memory block from each memory plane of the plurality of memory planes;
- and
- perform the operation responsive to receiving a second command from the host.
A system, comprising:
- a host controller;
- one or more memories, wherein each of the one or more memories are partitioned into a plurality of memory planes, wherein each memory plane comprises a plurality of memory blocks;
- a memory controller coupled to the one or more memories, wherein the memory controller is configured to:
- receive a first command from the host controller, wherein the first command includes an operation to be performed, and one or more addresses in the one or more memories on which the operation will be performed;
- prepare an array of memory blocks dependent upon the one or more addresses, wherein the array of memory blocks includes a memory block from each memory plane of the plurality of memory planes;
- and
- perform the operation responsive to receiving a second command from the host controller.
Dependencies are inferred from the claim text.