Patent ID: 8209472

Claim:
A data writing method, for moving data in a first flash memory module or a second flash memory module during a write command of a host system is executed, wherein the first flash memory module and the second flash memory module respectively have a plurality of physical blocks, the data writing method comprising: transferring first data received from the host system to the first flash memory module and writing the first data into the physical blocks of the first flash memory module according to the write command by a flash memory controller, wherein the flash memory controller is coupled to the first flash memory module and the second flash memory module through the same data input/output bus; determining whether the second flash memory module is busy; when the second flash memory module is not busy, determining whether at least one second data of at least one physical block in the physical blocks of the second flash memory module is needed to be combined; and when the at least one second data of the at least one physical block in the physical blocks of the second flash memory module is needed to be combined, moving the at least one second data of the at least one physical block in the physical blocks of the second flash memory module by the flash memory controller during the first data is written into the physical blocks of the first flash memory module.