US 11,816,360 B2
Method and apparatus for performing data access performance shaping of memory device
Kaihong Wang, Colorado Springs, CO (US); and Cheng Yi, Vancouver (CA)
Assigned to Silicon Motion, Inc., Hsinchu County (TW)
Filed by Silicon Motion, Inc., Hsinchu County (TW)
Filed on Mar. 29, 2022, as Appl. No. 17/706,645.
Prior Publication US 2023/0315337 A1, Oct. 5, 2023
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/0659 (2013.01) [G06F 3/064 (2013.01); G06F 3/0604 (2013.01); G06F 3/0613 (2013.01); G06F 3/0631 (2013.01); G06F 3/0653 (2013.01); G06F 3/0679 (2013.01)] 12 Claims
OG exemplary drawing
 
1. A method for performing data access performance shaping of a memory device, the method being applied to a memory controller of the memory device, the memory device comprising the memory controller and a non-volatile (NV) memory, the NV memory comprising at least one NV memory element, the method comprising:
receiving a plurality of host commands from a host device, for performing data access on the NV memory according to the plurality of host commands; and
monitoring the plurality of host commands to control respective performance metrics of a plurality of access control groups of the memory device with a dual-state leaky bucket (LB) model, wherein regarding any access control group among the plurality of access control groups, controlling the respective performance metrics of the plurality of access control groups with the dual-state LB model comprises:
determining at least one first performance metric of the any access control group according to at least one first command among the plurality of host commands to be a first LB fill level of a dual-state LB in the dual-state LB model, wherein the at least one first command carries first information related to data access performance of the any access control group;
in response to the first LB fill level being below a state threshold, determining the dual-state LB to be in a first predetermined state among multiple predetermined states of the dual-state LB; and
in response to the dual-state LB being in the first predetermined state, configuring the dual-state LB to have a first predetermined drain rate corresponding to the first predetermined state, for dynamically adjusting a performance quota of the any access control group, wherein the first predetermined drain rate is selected from multiple predetermined drain rate respectively corresponding to the multiple predetermined states of the dual-state LB.