-
公开(公告)号:US12253957B2
公开(公告)日:2025-03-18
申请号:US18102779
申请日:2023-01-30
Applicant: Silicon Motion, Inc.
Inventor: Tzu-Yi Yang
IPC: G06F12/12 , G06F12/1009
Abstract: A method of handling trim commands in a flash memory is provided. The method comprises: receiving a trim command; modifying logical-to-physical (L2P) address mapping entries of a L2P address mapping table according to the trim command; and storing trim information of the trim command into one of data blocks of the flash memory after modifying the L2P address mapping entries according to the trim command.
-
公开(公告)号:US11704241B2
公开(公告)日:2023-07-18
申请号:US17955505
申请日:2022-09-28
Applicant: Silicon Motion, Inc.
Inventor: Tzu-Yi Yang
IPC: G06F12/02
CPC classification number: G06F12/0253 , G06F12/0246 , G06F2212/7205
Abstract: A method of managing a garbage collection (GC) operation on a flash memory includes: setting a GC starting threshold, wherein the GC starting threshold indicates a predetermined spare block number that is higher than a target spare block number of spare blocks maintained by a flash translation layer (FTL) of the flash memory; determining whether to start the GC operation according to a current number of spare blocks in the flash memory and the GC starting threshold; and performing the GC operation on a source block in the flash memory when the current number of spare blocks is lower than or equal to the GC starting threshold.
-
公开(公告)号:US11662940B2
公开(公告)日:2023-05-30
申请号:US17079503
申请日:2020-10-25
Applicant: Silicon Motion, Inc.
Inventor: Tzu-Yi Yang
CPC classification number: G06F3/0655 , G06F3/0604 , G06F3/065 , G06F3/0619 , G06F3/0679 , G06F11/1448 , G06F12/0253 , G06F2201/805
Abstract: A data storage device includes a memory device and a memory controller. The memory controller configures a first memory block which is a TLC memory blocks as a data buffer, and accordingly configures a plurality of second memory blocks which are SLC memory blocks. The memory controller uses the first memory block to receive data and accordingly store same data in the second memory blocks as backup data. When an amount of available memory space of the first memory block is smaller than or equal to a predetermined amount, the memory controller determines whether any error has occurred in the data stored in the first memory block. When there is any error occurred in the data stored in the first memory block, the memory controller configures a third memory block and move the backup data stored in the second memory block to the third memory block.
-
公开(公告)号:US11494299B2
公开(公告)日:2022-11-08
申请号:US17179342
申请日:2021-02-18
Applicant: Silicon Motion, Inc.
Inventor: Tzu-Yi Yang
IPC: G06F12/02
Abstract: A method of managing a garbage collection (GC) operation on a flash memory includes: setting a GC starting threshold, wherein the GC starting threshold indicates a predetermined spare block number that is higher than a target spare block number of spare blocks maintained by a flash translation layer (FTL) of the flash memory; determining whether to start the GC operation according to a current number of spare blocks in the flash memory and the GC starting threshold; and performing the GC operation on a source block in the flash memory when the current number of spare blocks is lower than or equal to the GC starting threshold.
-
公开(公告)号:US20220261343A1
公开(公告)日:2022-08-18
申请号:US17206137
申请日:2021-03-19
Applicant: Silicon Motion, Inc.
Inventor: Tzu-Yi Yang
IPC: G06F12/02
Abstract: A method of managing a garbage collection (GC) operation on a flash memory includes: calculating an overall spare area in a flash memory, which includes a spare area in a plurality of spare blocks in the flash memory and at least two of a spare area in one or more target blocks corresponding to writing of user data based on host write commands, a spare area in one or more destination blocks corresponding to writing of valid data based on the GC operation and a spare area in a source block corresponding to reading of valid data based on the GC operation; determining an adjustment factor according to the overall spare area; and performing the GC operation on the source block according to a GC-to-host base ratio and the adjustment factor.
-
6.
公开(公告)号:US20250053313A1
公开(公告)日:2025-02-13
申请号:US18592458
申请日:2024-02-29
Applicant: Silicon Motion, Inc.
Inventor: Kuan-Chieh Peng , Tzu-Yi Yang
IPC: G06F3/06
Abstract: The present invention provides a method for controlling a flash memory module. The flash memory module includes a plurality of dies, each die includes a plurality of blocks, each block includes a plurality of pages, and the method includes the steps of: selecting a super block, wherein the super block includes a plurality of first blocks respectively located in the plurality of dies; for each first block in the super block, determining whether the first block is a full block or a blank block; and if the first block is not the full block or the blank block, writing dummy data to the first block so that the first block becomes the full block; and erasing the plurality of first blocks in the super block, so that the plurality of first blocks become a plurality of blank blocks.
-
公开(公告)号:US12153820B2
公开(公告)日:2024-11-26
申请号:US17206147
申请日:2021-03-19
Applicant: Silicon Motion, Inc.
Inventor: Tzu-Yi Yang
Abstract: A method of performing a wear-leveling operation in a flash memory includes: determining a block age for each of a plurality of blocks in the flash memory according to a number of erase operations that have been performed on the flash memory after the block is erased; selecting one or more candidate source blocks from the plurality of blocks by comparing block ages of the plurality of blocks with an age limit; determining a source block from the one or more candidate source blocks according to erase counts or block ages of the one or more candidate source blocks; and performing the wear-leveling operation on the source block.
-
8.
公开(公告)号:US20230367513A1
公开(公告)日:2023-11-16
申请号:US17743485
申请日:2022-05-13
Applicant: Silicon Motion, Inc.
Inventor: Tzu-Yi Yang
IPC: G06F3/06
CPC classification number: G06F3/0659 , G06F3/0604 , G06F3/0679
Abstract: A method of a storage device to be externally coupled to a host device via a specific communication interface includes: providing a flash memory unit comprising at least one flash memory; counting an outstanding command number for at least one submission queue which is used for storing information of unfinished commands; counting a completion command number for at least one completion queue which is used for storing information of finished commands; and, generating and outputting an interrupt event from the storage device to the host device when a comparison result of the counted outstanding command number with the counted completion command number matches a specific condition.
-
公开(公告)号:US20220261344A1
公开(公告)日:2022-08-18
申请号:US17206149
申请日:2021-03-19
Applicant: Silicon Motion, Inc.
Inventor: Tzu-Yi Yang
IPC: G06F12/02
Abstract: A method of managing a garbage collection (GC) operation includes: comprising: selecting a source block and at least one candidate source block from the flash memory; calculating an overall valid page percentage according to a number of valid pages in the source block and the at least one candidate source block; determining a GC-to-host base ratio according to the overall valid page percentage; and performing the GC operation on the source block according to at least the GC-to-host base ratio.
-
10.
公开(公告)号:US20250053314A1
公开(公告)日:2025-02-13
申请号:US18676488
申请日:2024-05-28
Applicant: Silicon Motion, Inc.
Inventor: Kuan-Chieh Peng , Tzu-Yi Yang
IPC: G06F3/06
Abstract: The present invention provides a method for controlling a flash memory module. The method includes: after the flash memory module is powered on, determining whether the flash memory module encountered an abnormal power failure before the flash memory module is powered on; if the flash memory module encounters the abnormal power failure before the flash memory module is powered on, determining a last super block written by the flash memory module before powering on, where the super block comprises multiple first blocks respectively located in the multiple dies; for each first block in the super block, determining a last successfully read page of the first block; determining a data weak region of the super block according to the last successfully read pages of the first blocks in the super block; and moving data in the weak data region to other regions of the super block or to another super block.
-
-
-
-
-
-
-
-
-