IP Library › Granted Patent US 10,101,909
Granted Patent B2
US 10,101,909 · App. 14/827,133 · Granted Oct 16, 2018

Memory system and operating method for programming data in super blocks

Inventor: Min-O Song (Gyeonggi-do, KR)
Assignee: SK Hynix Inc.
G06F3/0604G06F3/064G06F3/0679G06F3/0688G06F12/0246G06F2212/7202
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,101,909
App. No.
14/827,133
Granted
Oct 16, 2018
Kind
B2
Abstract

A memory system includes a memory device including a plurality of memory chips each including a plurality of memory blocks grouped as one or more super blocks, wherein the memory blocks each include a plurality of pages suitable for storing write data requested from a host, and a controller suitable for checking a size of the write data and free pages of the super blocks, determining a first super block corresponding to the checked size of the write data based on the checked free pages among the super blocks, and programming the write data in memory blocks of the first super block.

Claims (47)

1. A memory system comprising:

a memory device including a plurality of memory chips each including a plurality of memory blocks grouped as one or more super blocks, wherein the memory blocks each include a plurality of pages suitable for storing write data requested from a host; and

a controller suitable for checking a size of the write data and free pages of the super blocks, determining a first super block corresponding to the checked size of the write data based on the checked free pages among the super blocks, and programming the write data in memory blocks of the first super block,

wherein, the respective super blocks have a same size,

wherein, when the size of the write data is a first size, the controller programs the write data in a first page group of the first super block, by starting from a program start page of the first page group, through one shot programming,

wherein, when the size of the write data is a second size, the controller programs the write data in a second page group of the first super block, by starting from a program start page of the second page group, through multi-plane programming,

wherein, when the size of the write data is a third size, the controller programs the write data in a third page group of the first super block, by starting from a program start page of the third page group, through one plane programming,

wherein, the first page group includes first pages included each in all of memory blocks of the first super block,

wherein, the number of the first pages are determined according to the first size,

wherein, the second page group includes second pages included each in some of memory blocks of the first super block,

wherein, the number of the second pages are determined according to the second size,

wherein, the third page group includes third pages included in one memory block of the first super block,

wherein, the number of the third pages are determined according to the third size.

2. The memory system according to claim 1 , wherein the controller checks program start pages and programmable pages in the respective super blocks included in the memory chips, as the free pages.

3. The memory system according to claim 2 , wherein the first size is greater than a total size of respective pages of the memory blocks of the first super block, and the programmable page includes one or more pages of each of the memory blocks of the first super block.

4. The memory system according to claim 2 , wherein the second size is greater than a size of one page of the memory blocks of the first super block, and the programmable page includes pages of two or more memory blocks of the first super block.

5. The memory system according to claim 2 , wherein the third size is equal to a size of one page of the memory blocks of the first super block, and the programmable page includes a page of one memory block of the first super block.

6. The memory system according to claim 2 ,

wherein the third size is smaller than a size of one page of the memory blocks of the first super block, and

wherein the controller programs dummy data or null data in a remaining page region of the programmable page, after programming the write data.

7. The memory system according to claim 1 , wherein, when two or more super blocks are checked as the first super block among the super blocks, the controller determines one of the two or more super blocks as the first super block based on a priority of a page address.

8. The memory system according to claim 1 , wherein, when two or more super blocks are checked as the first super block among the super blocks, the controller determines one of the two or more super blocks as the first super block based on program performance.

9. A method for operating a memory system, comprising:

checking a size of write data corresponding to a write command received from a host, and

checking free pages of a plurality of super blocks, wherein a plurality of memory blocks of a memory device are grouped as the super blocks and each include a plurality of pages;

determining a first super block corresponding to the checked size of the write data based on the checked free pages among the super blocks; and

programming the write data in memory blocks of the first super block,

wherein, the respective super blocks have a same size,

wherein, when the size of the write data is a first size, the programming of the write data includes:

programming the write data in a first page group of the first super block, by starting from a program start page of the first page group, through one shot programming, wherein, when the size of the write data is a second size, the programming of the write data includes:

programming the write data in a second page group of the first super block, by starting from a program start page of the second page group, through multi-plane programming, wherein, when the size of the write data is a third size, the programming of the write data includes:

programming the write data in a third page group of the first super block, by starting from a program start page of the third page group, through one plane programming,

wherein, the first page group includes first pages included each in all of memory blocks of the first super block,

wherein, the number of the first pages are determined according to the first size,

wherein, the second page group includes second pages included each in some of memory blocks of the first super block,

wherein, the number of the second pages are determined according to the second size,

wherein, the third page group includes third pages included in one memory block of the first super block,

wherein, the number of the third pages are determined according to the third size.

10. The method according to claim 9 , wherein the checking of the free pages includes:

checking program start pages and programmable pages in the respective super blocks.

11. The method according to claim 10 , wherein the first size is greater than a total size of respective pages of the memory blocks of the first super block, and the programmable page includes one or more pages of each of the memory blocks of the first super block.

12. The method according to claim 10 , wherein the second size is greater than a size of one page of the memory blocks of the first super block, and the programmable page includes pages of two or more memory blocks of the first super block.

13. The method according to claim 10 , wherein the third size is equal to a size of one page of the memory blocks of the first super block, and the programmable page includes a page of one memory block of the first super block.

14. The method according to claim 10 ,

wherein the third size is smaller than a size of one page of the memory blocks of the first super block, and

wherein the programming of the write data further includes:

programming dummy data or null data in a remaining page region of the programmable page.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2015
From: SONG, MIN-O
To: SK HYNIX INC.
Reel/Frame 036355/0949 →
Priority Claims (1)
KR 10-2015-0037268 · Mar 18, 2015 · national
Continuity (1)
Related Publication 20160274791A1 · Sep 22, 2016
Cited By (1)
US 12,265,733