IP Library Granted Patent US 11,914,873
Granted Patent B2
US 11,914,873 · App. 17/324,121 · Granted Feb 27, 2024

Flash memory controller

Inventors: Tsung-Chieh Yang (Hsinchu, TW); Chun-Chieh Kuo (Taipei, TW); Ching-Hui Lin (Hsinchu County, TW); Yang-Chih Shen (Taoyuan, TW)
Assignee: Silicon Motion, Inc.
G06F3/0634G06F3/064G06F3/0604G06F3/0679G06F12/0246G11C11/5628G11C11/5642G06F2212/7201G06F2212/7206Y02D10/00
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 11,914,873
App. No.
17/324,121
Granted
Feb 27, 2024
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 (12)

1. A flash memory controller for controlling a flash memory module, wherein the flash memory module comprises a read and write circuit and a plurality of data blocks, the flash memory controller comprising:

a communication interface for receiving data from a host device; and

a processing circuit, coupled with the communication interface and the flash memory module, for receiving data from a host device;

wherein the processing circuit determines if the data received from the host device is cold data or hot data; and if the processing circuit determines that the data is the cold data, the processing circuit uses a two-bit-per-cell mode or a three-bit-per-cell mode to write the data into a one of the data blocks; and if the processing circuit determines that the data is the hot data, the processing circuit uses a one-bit-per-cell mode to write the data into another one of the data blocks.

2. The flash memory controller of claim 1 , wherein the plurality of data blocks are realized by triple-level cells (TLCs), and the blocks supports eight plurality of program threshold voltage intervals.

3. The flash memory controller of claim 1 , wherein the processing circuit determines if the data is the cold data or the hot data according to a file type, a file extension, or a logical address of the data.

4. A data storage system, comprising:

a flash memory module, wherein the flash memory module comprises a read and write circuit and a plurality of data blocks; and

a flash memory controller, configured to access the flash memory module;

wherein when the flash memory controller receives data from a host device, the flash memory controller determines if the data is cold data or hot data; and if the flash memory controller determines that the data is the cold data, the flash memory controller uses a two-bit-per-cell mode or a three-bit-per-cell mode to write the data into a one of the data blocks; and if the flash memory controller determines that the data is the hot data, the flash memory controller uses a one-bit-per-cell mode to write the data into another one of the data blocks.

5. The data storage system of claim 4 , wherein the plurality of data blocks are realized by triple-level cells (TLCs), and the blocks supports eight plurality of program threshold voltage intervals.

6. The data storage system of claim 4 , wherein the flash memory controller determines if the data is the cold data or the hot data according to a file type, a file extension, or a logical address of the data.

Priority Claims (1)
TW 100129676 · Aug 19, 2011 · national
Continuity (10)
Continuation 17030392 · Sep 24, 2020
Continuation 16686200 · Nov 17, 2019
Continuation 16260142 · Jan 29, 2019
Continuation 15985718 · May 22, 2018
Continuation 15643501 · Jul 7, 2017
Continuation 15235128 · Aug 12, 2016
Continuation 14983566 · Dec 30, 2015
Continuation 14596236 · Jan 14, 2015
Continuation 13491377 · Jun 7, 2012
Related Publication 20210271402A1 · Sep 2, 2021
Cited By (1)
US 12,236,115