Memory controller, nonvolatile storage device, nonvolatile storage system, and memory control method
Abstract
A memory controller controls a nonvolatile memory having physical blocks. The memory controller includes a control unit and a host interface unit. The control unit writes data into a physical block. The host interface unit receives and transmits data from and to the external device. The control unit manages first vacant blocks and second vacant blocks based on a physical-block management table for managing states of the physical blocks. The first vacant block can be used in garbage collection processing of arranging data stored in the nonvolatile memory. The second vacant block cannot be used in garbage collection processing. The control unit increases a quantity of the second vacant blocks when the control unit does not receive an instruction from the external device. The control unit writes data into the second vacant blocks when the control unit receives an instruction for writing data from the external device.
Claims
exact text as granted — not AI-modified1 . A memory controller for controlling a nonvolatile memory having a plurality of physical block,
the memory controller comprising: a control unit that writes data into the physical block; and a host interface unit that is connected to an external device and receives and transmits data from and to the external device, wherein the control unit manages first vacant blocks and second vacant blocks based on a physical-block management table for managing states of the plurality of physical blocks, the first vacant block being a physical block that can be used in garbage collection processing of arranging data stored in the nonvolatile memory, and the second vacant block being a physical block that cannot be used in the garbage collection processing, the control unit increases a quantity of the second vacant blocks when the control unit does not receive an instruction from the external device, and the control unit writes data into the second vacant block when the control unit receives an instruction for writing data from the external device.
2 . The memory controller according to claim 1 , wherein
when the control unit does not receive an instruction from the external device, the control unit increases the quantity of the second vacant blocks to a predetermined setting value based on priority-writing quantity information including the predetermined setting value.
3 . The memory controller according to claim 2 , wherein
the priority-writing quantity information comprises information indicating a present quantity of the second vacant blocks, the control unit refers to the priority-writing quantity information when the control unit receives the instruction from the external device, the control unit writes data into the second vacant blocks when the present quantity of the second vacant blocks is not equal to or smaller than the predetermined value, and the control unit writes data using the first vacant blocks when the present quantity of second vacant blocks is equal to or smaller than the predetermined value.
4 . The memory controller according to claim 3 , wherein
when the present quantity of the second vacant blocks is equal to or smaller than a predetermined value and the first vacant blocks meet a predetermined condition, the control unit executes the garbage collection processing using the first vacant blocks to generate a writable physical block.
5 . The memory controller according to claim 4 , wherein
when the control unit receives an instruction from the external device while carrying out processing of increasing the quantity of second vacant blocks, the control unit suspends the processing of increasing the quantity of second vacant blocks.
6 . The memory controller according claim 2 , wherein
the control unit outputs information regarding the priority-writing quantity information to the external device, based on an instruction from the external device.
7 . The memory controller according to claim 2 , wherein
the control unit determines a setting value of the priority-writing quantity information, based on a value instructed from the external device.
8 . A nonvolatile storage device comprising:
the memory controller according to claim 1 ; and a nonvolatile memory connected to the memory controller and storing data written by the memory controller.
9 . A nonvolatile storage system comprising:
the memory controller according to claim 1 ; a nonvolatile memory connected to the memory controller and storing data written by the memory controller; and an external device connecting to the memory controller and transmitting an instruction to the memory controller for writing data into the nonvolatile memory.
10 . The nonvolatile storage system according to claim 9 , wherein
the external device acquires information indicating a quantity of second physical blocks from the memory controller, and transmits writing data to the memory controller, the quantity of writing data being equal to or smaller than the quantity of the second physical blocks indicated by the acquired information.
11 . A memory control method for controlling a nonvolatile memory having a plurality of physical blocks by the memory controller,
the memory control method comprising: managing first vacant blocks and second vacant blocks based on a physical-block management table for managing states of the plurality of physical blocks, the first vacant block being a physical block that can be used in garbage collection processing of arranging data stored in the nonvolatile memory, and the second vacant block being a physical block that cannot be used in the garbage collection processing; increasing the quantity of second vacant blocks when the memory controller does not receive an instruction from an external device; and writing data into the second vacant blocks when the memory controller receives an instruction for writing data from the external device.Join the waitlist — get patent alerts
Track US2017269870A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.