发明名称 Method for managing a plurality of blocks of a flash memory, and associated memory device and controller thereof
摘要 A method for managing a plurality of blocks of a Flash memory includes: sieving out at least one first block having invalid pages from the plurality of blocks; and moving data of a portion of valid pages of the first block to a second block, where data of all valid pages of the first block is not moved to the second block at a time. An associated memory device and a controller thereof are also provided, where the controller includes: a ROM arranged to store a program code; and a microprocessor arranged to execute the program code to control the access to the Flash memory and manage the plurality of blocks. The controller that executes the program code by utilizing the microprocessor sieves out the first block from the plurality of blocks, and moves the data of the portion of valid pages of the first block to the second block.
申请公布号 US8762623(B2) 申请公布日期 2014.06.24
申请号 US200912606190 申请日期 2009.10.27
申请人 Silicon Motion Inc.;Silicon Motion Inc. 发明人 Lee Chun-Kun
分类号 G06F12/00;G06F13/00;G06F13/28;G06F12/02;G11C16/10;G06F3/06 主分类号 G06F12/00
代理机构 代理人 Hsu Winston;Margo Scott
主权项 1. A method for managing a plurality of blocks of a Flash memory, the method being applied to a controller of a memory device, which comprises the Flash memory, the method comprising: after a specific host command is received from a host device external to the memory device, selecting at least one first block having invalid pages from the plurality of blocks in response to the specific host command received from the host device; and after the at least one first block is selected, determining a first portion of valid pages of the first block to be moved according to time required for moving the portion of valid pages, and moving the first portion of valid pages of the first block, rather than all valid pages of the first block, to a second block corresponding to the specific host command; after the first portion of valid pages of the first block is moved to the second block, receiving another host command from the host device, and moving a second portion of valid pages of the first block to the second block corresponding to the another host command, wherein the second portion of valid pages are different from the first portion of valid pages; wherein the specific host command is a writing command, and the step of moving the first portion of valid pages of the first block to the second block further comprises: after receiving the writing command from the host device, writing data corresponding to the writing command into the second block and utilizing the write command to trigger an operation of moving data of the first portion of valid pages of the first block to the second block.
地址 Tianan Digital, Futian, Shenzhen, Guangdong CN