IP Library Granted Patent US 10,248,327
Granted Patent B2
US 10,248,327 · App. 15/476,503 · Granted Apr 2, 2019

Throttling for a memory system using a GC/HOST ratio and operating method thereof

Inventor: Siarhei Kryvaltsevich (San Jose, CA)
Assignee: SK hynix Inc.
G06F3/061G06F3/0659G06F3/0688G06F12/0246G06F2212/7205
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,248,327
App. No.
15/476,503
Granted
Apr 2, 2019
Kind
B2
Abstract

A semiconductor memory system and an operating method thereof include: a memory device; and a memory controller including a processor, coupled to the memory device, containing instructions executed by the processor, and configured to provide sets of throttling numbers, select a throttling mode, calculate a garbage collection (GC)/HOST ratio based on at least a part of invalid count of garbage collection (GC) blocks and valid count of BGC blocks, and adjust throttling parameters of commands in accordance with the GC/HOST ratio and a number of erased blocks.

Claims (28)

1. A semiconductor memory system comprising:

a memory device; and

a memory controller including a processor, coupled to the memory device, containing instructions executed by the processor, and configured to

select a throttling mode based on a number of erased blocks of the memory device,

calculate a background garbage collection (BGC) command/HOST command ratio (BGC/HOST ratio) based at least in part on an invalid page count of at least one BGC block and a valid page count of the at least one BGC block, and

adjust throttling parameters of commands including a set of host throttling numbers for throttling HOST commands and a set of BGC throttling numbers for throttling BGC commands in accordance with the BGC/HOST ratio, the selected throttling mode, and a number of erased blocks.

2. The system of claim 1 wherein each of the sets of throttling numbers includes a maximum throttling number, a minimum throttling number, and a throttling balance point.

3. The system of claim 1 wherein the throttling mode includes a BGC throttling mode and a HOST throttling mode, wherein the BGC throttling mode is set when performance of HOST is less than productivity of BGC, and the HOST mode is set when the performance of HOST is greater than or equal to the productivity of BGC.

4. The system of claim 1 wherein the throttling parameters of commands include throttling parameters of commands of a current time slot calculated based on measurements of a previous time slot.

5. The system of claim 1 wherein the BGC/HOST ratio is calculated based at least in part on an error correction factor.

6. The system of claim 1 wherein the BGC/HOST ratio is calculated based at least in part on the throttling parameters and the number of erased blocks in accordance with the selected throttling mode.

7. The system of claim 1 wherein the BGC/HOST ratio includes a write amplification factor.

8. The system of claim 1 wherein the BGC/HOST ratio is calculated within a time slot including a plurality of intervals, HOST commands are distributed in each of the plurality of intervals.

9. The system of claim 1 wherein a number of HOST commands is calculated in accordance with the BGC/HOST ratio and a number of BGC commands of a prior time slot at a HOST throttling mode, and a number of BGC commands is calculated in accordance with the BGC/HOST ratio and a number of HOST commands of the prior time slot at a BGC throttling mode.

10. The system of claim 9 wherein the number of HOST commands of the prior time slot includes an average value of HOST commands, and the number of BGC commands of the prior time slot includes an average value of BGC commands.

11. An operating method of a semiconductor memory system comprising:

selecting a throttling mode based on a number of erased blocks of the memory system,

calculating a background garbage collection (BGC) command/HOST command ratio (BGC/HOST ratio) based at least in part on an invalid count of at least one BGC block and a valid count of the at least one BGC block, and

adjusting throttling parameters of commands including a set of host throttling numbers for throttling HOST commands and a set of BGC throttling numbers for throttling BGC commands in accordance with the BGC/HOST ratio, the selected throttling mode, and a number of erased blocks.

12. The method of claim 11 wherein each of the sets of throttling numbers includes a maximum throttling number, a minimum throttling number, and a throttling balance point.

13. The method of claim 11 wherein the selecting the throttling mode includes selecting a BGC throttling mode and a HOST throttling mode, wherein the BGC throttling mode is set when performance of HOST is less than productivity of BGC, and the HOST mode is set when the performance of HOST is greater than or equal to the productivity of BGC.

14. The method of claim 11 wherein the adjusting the throttling parameters of commands includes adjusting throttling parameters of commands of a current time slot calculated based on measurements of a previous time slot.

15. The method of claim 11 wherein the calculating BGC/HOST ratio includes calculating the BGC/HOST ratio based at least in part on an error correction factor.

16. The method of claim 11 wherein the calculating of the BGC/HOST ratio includes calculating the BGC/HOST ratio based at least in part on the throttling parameters and the number of erased blocks in accordance with the selected throttling mode.

17. The method of claim 11 wherein the calculating BGC/HOST ratio includes calculating a write amplification factor.

18. The method of claim 11 wherein the calculating BGC/HOST ratio includes calculating the BGC/HOST ratio within a time slot including with a plurality of intervals, HOST commands are distributed in each of the plurality of intervals.

19. The method of claim 11 wherein a number of HOST commands is calculated in accordance with the BGC/HOST ratio and a number of BGC commands of a prior time slot commands at a HOST throttling mode, and a number of BGC commands is calculated in accordance with the BGC/HOST ratio and a number of HOST commands at a BGC throttling mode.

20. The method of claim 19 wherein the number of HOST commands of the prior time slot includes an average value of HOST commands, and the number of BGC commands of the prior time slot includes an average value of BGC commands.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2017
From: SK HYNIX MEMORY SOLUTIONS INC.
To: SK HYNIX INC.
Reel/Frame 044899/0443 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2017
From: KRYVALTSEVICH, SIARHEI
To: SK HYNIX MEMORY SOLUTIONS INC.
Reel/Frame 041815/0401 →
Continuity (2)
Provisional Application 62317364 · Apr 1, 2016
Related Publication 20170285945A1 · Oct 5, 2017
Cited By (2)
US 12,430,244 US 12,561,089