IP Library Granted Patent US 10,998,051
Granted Patent B2
US 10,998,051 · App. 16/384,282 · Granted May 4, 2021

Memory controller and operating method thereof

Inventors: Min Hwan Moon (Seoul, KR); Seon Ju Lee (Gyeonggi-do, KR); Jung Chul Han (Seoul, KR)
Assignee: SK hynix Inc.
G11C16/16G06F3/0604G06F3/0652G06F3/0659G06F3/0679G11C16/0483G11C16/26
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,998,051
App. No.
16/384,282
Granted
May 4, 2021
Kind
B2
Abstract

In a memory controller configured to control a memory device including a plurality of memory blocks, the memory controller comprising: a memory interface configured to exchange data with the memory device; and a pre-program controller configured to perform a read operation on a last page of a program sequence for a plurality of pages in an erase target memory block when the memory device is in an idle state, and perform a pre-program operation on the erase target memory block according to the result obtained by performing the read operation, wherein the erase target memory block is a memory block on which an erase operation is to be performed among the plurality of memory blocks, and wherein the erase operation on the erase target memory block is performed after the pre-program operation is performed.

Claims (41)

1. A memory controller configured to control a memory device including a plurality of memory blocks, the memory controller comprising:

a memory interface configured to exchange data with the memory device; and

a pre-program controller configured to perform a read operation on a last page of a program sequence for a plurality of pages in an erase target memory block when the memory device is in an idle state, and perform a pre-program operation on the erase target memory block according to the result obtained by performing the read operation,

wherein the erase target memory block is a memory block on which an erase operation is to be performed among the plurality of memory blocks, and

wherein the erase operation on the erase target memory block is performed after the pre-program operation is performed.

2. The memory controller of claim 1 , wherein the pre-program controller determines whether the erase target memory block has been pre-programmed according to the result obtained by performing the read operation.

3. The memory controller of claim 2 , wherein, when data of the last page includes at least one 0 as the result obtained by performing the read operation, the pre-program controller sets the erase target memory block to be pre-programmed (pre-program target block).

4. The memory controller of claim 3 , wherein the pre-program controller performs the pre-program operation on the target memory block, when the erase target memory block is set as the pre-program target block.

5. The memory controller of claim 3 , wherein, when the memory device performs another operation, the pre-program controller does not perform the pre-program operation even though the erase target memory block is set as the pre-program target block.

6. The memory controller of claim 1 , wherein, in the pre-program operation, a program pulse is applied to move a threshold voltage of memory cells included in the erase target memory block to a set threshold voltage distribution.

7. The memory controller of claim 6 , wherein the set threshold voltage distribution corresponds to a highest program state.

8. The memory controller of claim 6 , wherein the pre-program controller performs the pre-program operation without a program verify operation.

9. The memory controller of claim 1 , wherein the pre-program controller includes a command generator configured to generate a read command for the last page and provide the generated read command to the memory device.

10. The memory controller of claim 9 , wherein the command generator provides a pre-program command for the erase target memory block to the memory device according to a response to the read command.

11. The memory controller of claim 9 , wherein the pre-program controller includes a memory block manager configured to store status information representing whether the pre-program operation on the erase target memory block has been performed.

12. The memory controller of claim 9 , wherein the memory block manager updates the status information of the erase target memory block when the command generator provides the pre-program command for the erase target memory block to the memory device.

13. A memory controller configured to control a memory device including a plurality of memory blocks, the memory controller comprising:

a memory interface configured to exchange data with the memory device; and

a pre-program controller configured to read status information of an erase target memory block on which an erase operation is to be performed, among the plurality of memory blocks, and perform a pre-program operation on the erase target memory block according to the status information of the erase target memory block,

wherein the erase operation on the erase target memory block is performed after the pre-program operation is performed, and

wherein the status information represents whether the pre-program operation on the erase target memory block has been performed.

14. The memory controller of claim 13 , wherein the pre-program controller performs the pre-program operation on the erase target memory block, when the status information of the erase target memory block represents that the pre-program operation has not been performed on the erase target memory block.

15. A method for operating a memory controller configured to control a memory device including a plurality of memory blocks, the method comprising:

detecting the memory device is in an idle state;

performing a read operation on a last page of a program sequence for a plurality of pages in an erase target memory block on which an erase operation is to be performed, among the plurality of memory blocks;

performing a pre-program operation on the erase target memory block according to the result obtained by performing the read operation; and

performing the erase operation on the erase target memory block after the performing of the pre-program operation.

16. The method of claim 15 , wherein the pre-program operation is performed on the erase target memory block when data of the last page includes at least one 0 as the result obtained by performing the read operation.

17. The method of claim 15 , further comprising storing status information representing whether the pre-program operation on the erase target memory block has been performed.

18. The method of claim 17 , further comprising updating, when the pre-program operation on the erase target memory block is performed, the status information of the erase target memory block.

19. A memory controller configured to control a memory device including a plurality of planes each including a plurality of memory blocks, the memory controller comprising:

a memory interface configured to exchange data with the memory device; and

a pre-program controller configured to read a last page of a program sequence for a plurality of pages in an erase target super block, among super blocks, when the memory device is in an idle state, and perform a pre-program operation on the erase target super block according to the result obtained by reading the last page,

wherein the super blocks each includes at least two memory blocks in different planes among the plurality of memory blocks,

wherein an erase operation on the erase target super block is performed after the pre-program operation is performed, and

wherein the erase target super block is a super block on which an erase operation is to be performed before data is programmed.

20. A memory controller configured to control a memory device including a plurality of planes each including a plurality of memory blocks, the memory controller comprising:

a memory interface configured to exchange data with the memory device; and

a pre-program controller configured to read status information of an erase target super block, and perform a pre-program operation on the erase target super block according to the status information,

wherein the erase target super block is a super block on which an erase operation is to be performed before data is programmed, among super blocks, each including at least two memory blocks in different planes among the plurality of memory blocks, and

wherein the status information represents whether the pre-program operation on the erase target super block has been performed.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 7, 2024
From: SK HYNIX INC.
To: MIMIRIP LLC
Reel/Frame 067335/0246 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATIONALITY PREVIOUSLY RECORDED ON REEL 048886 FRAME 0264. ASSIGNOR(S) HEREBY CONFIRMS THE REPUBLIC OF KOREA. Recorded May 1, 2019
From: MOON, MIN HWAN; LEE, SEON JU; HAN, JUNG CHUL
To: SK HYNIX INC.
Reel/Frame 049056/0744 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2019
From: MOON, MIN HWAN; LEE, SEON JU; HAN, JUNG CHUL
To: SK HYNIX INC.
Reel/Frame 048886/0264 →
Priority Claims (1)
KR 10-2018-0089616 · Jul 31, 2018 · national
Continuity (1)
Related Publication 20200043556A1 · Feb 6, 2020
Cited By (1)
US 12,424,290