IP Library Granted Patent US 9,256,529
Granted Patent B2
US 9,256,529 · App. 14/596,236 · Granted Feb 9, 2016

Flash memory controller

Inventors: Tsung-Chieh Yang (Hsinchu, TW); Chun-Chieh Kuo (Taipei, TW); Ching-Hui Lin (Taipei, TW); Yang-Chih Shen (Taipei, TW)
Assignee: Silicon Motion Inc.
G06F12/0246G06F2212/7201G06F2212/7206Y02B60/1225
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 9,256,529
App. No.
14/596,236
Granted
Feb 9, 2016
Kind
B2
Abstract

A flash memory controller for controlling a flash memory module includes a communication interface for receiving a first data and a second data; and a processing circuit for dynamically controlling a data writing mode of the flash memory module according to an amount of stored data in the flash memory module. If the amount of stored data in the flash memory module is less than a first threshold when the communication interface receives the first data, the processing circuit controls the flash memory module so that the first data is written into the first data block under an one-bit-per-cell mode. If the amount of stored data in the flash memory module is greater than the first threshold when the communication interface receives the second data, the processing circuit controls the flash memory module so that the second data is written into the second data block under a two-bit-per-cell mode.

Claims (24)

1. A flash memory controller for controlling a flash memory module, wherein the flash memory module comprises a read and write circuit, a first data block, and a second data block, the flash memory controller comprising:

a communication interface for receiving a first data and a second data; and

a processing circuit, coupled with the communication interface and the flash memory module, for dynamically controlling a data writing mode of the flash memory module according to an amount of stored data in the flash memory module;

wherein if the amount of stored data in the flash memory module is less than a first threshold when the communication interface receives the first data, the processing circuit controls the flash memory module so that the first data is written into the first data block under an one-bit-per-cell mode, and if the amount of stored data in the flash memory module is greater than the first threshold when the communication interface receives the second data, the processing circuit controls the flash memory module so that the second data is written into the second data block under a two-bit-per-cell mode.

2. The flash memory controller of claim 1 , wherein the processing circuit controls the flash memory module so that a program threshold voltage of at least one cell in the first data block is configured to be within a first voltage range when writing the first data into the first data block, and controls the flash memory module so that a program threshold voltage of at least one cell in the second data block is configured to be within a third voltage range when writing the second data into the second data block;

wherein the first voltage range is less than the third voltage range.

3. A flash memory controller for controlling a flash memory module, wherein the flash memory module comprises a read and write circuit, a first data block, and a second data block, the flash memory controller comprising:

a communication interface for receiving a first data; and

a processing circuit, coupled with the communication interface and the flash memory module, for dynamically controlling a data writing mode of the flash memory module according to an amount of stored data in the flash memory module;

wherein if the amount of stored data in the flash memory module is less than a first threshold when the communication interface receives the first data, the processing circuit controls the flash memory module so that the first data is written into the first data block under an one-bit-per-cell mode, and afterwards the processing circuit controls the flash memory module so that at least one data stored in the first data block is rewritten into the second data block under a two-bit-per-cell mode.

4. The flash memory controller of claim 3 , wherein the processing circuit controls the flash memory module so that a program threshold voltage of at least one cell in the first data block is configured to be within a first voltage range when writing the first data into the first data block, and controls the flash memory module so that a program threshold voltage of at least one cell in the second data block is configured to be within a third voltage range when writing the second data into the second data block;

wherein the first voltage range is less than the third voltage range.

5. A flash memory controller for controlling a flash memory module, wherein the flash memory module comprises a read and write circuit, a first data block, and a second data block, the flash memory controller comprising:

a communication interface for receiving at least a first data; and

a processing circuit, coupled with the communication interface and the flash memory module, for controlling the read and write circuit to write data into the flash memory module;

wherein if an amount of stored data in the flash memory module is less than a first threshold when the communication interface receives the first data, the processing circuit controls the flash memory module so that a program threshold voltage of at least one cell in the first data block is configured to be within a first voltage range for writing the first data into the first data block.

6. The flash memory controller of claim 5 , wherein if the amount of stored data in the flash memory module is greater than the first threshold when the communication interface receives a second data, the processing circuit controls the flash memory module so that a program threshold voltage of at least one cell in the second data block is configured to be within a third voltage range for writing the second data into the second data block, wherein the third voltage range is greater than the first voltage range.

7. The flash memory controller of claim 6 , wherein if the amount of stored data in the flash memory module is greater than a second threshold when the communication interface receives a third data, the processing circuit controls the flash memory module so that a program threshold voltage of at least one cell in a third data block is configured to be within a second voltage range for writing the third data into the third data block, wherein the second threshold is greater than the first threshold, and the second voltage range is greater than the third voltage range.

8. The flash memory controller of claim 7 , wherein the processing circuit controls the flash memory module so that the first data is written into the first data block under an one-bit-per-cell mode, the second data is written into the second data block under a two-bit-per-cell mode, and the third data is written into the third data block under a three-bit-per-cell mode.

9. The flash memory controller of claim 7 , wherein an upper limit of the first voltage range is less than an upper limit of the third voltage range, and the upper limit of the third voltage range is less than an upper limit of the second voltage range.

10. A flash memory controller for controlling a flash memory module, wherein the flash memory module comprises a read and write circuit, a first data block, and a second data block, the flash memory controller comprising:

a communication interface for receiving a first data; and

a processing circuit, coupled with the communication interface and the flash memory module;

wherein if an amount of stored data in the flash memory module is less than a first threshold when the communication interface receives the first data, the processing circuit controls the flash memory module so that a program threshold voltage of at least one cell in the first data block is configured to be within a first voltage range for writing the first data into the first data block, and afterwards the processing circuit controls the flash memory module so that a program threshold voltage of at least one cell in the second data block is configured to be within a third voltage range for writing at least one data stored in the first data block into the second data block, wherein the first voltage range is less than the third voltage range.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2015
From: YANG, TSUNG-CHIEH; KUO, CHUN-CHIEH; LIN, CHING-HUI; SHEN, YANG-CHIH
To: SILICON MOTION INC.
Reel/Frame 034944/0096 →
Priority Claims (1)
TW 100129676 A · Aug 19, 2011 · national
Continuity (2)
Continuation 13491377 · Jun 7, 2012
Related Publication 20150127894A1 · May 7, 2015