TWI685845B - Flash memory controller - Google Patents

Flash memory controller Download PDF

Info

Publication number
TWI685845B
TWI685845B TW108112175A TW108112175A TWI685845B TW I685845 B TWI685845 B TW I685845B TW 108112175 A TW108112175 A TW 108112175A TW 108112175 A TW108112175 A TW 108112175A TW I685845 B TWI685845 B TW I685845B
Authority
TW
Taiwan
Prior art keywords
data
flash memory
storage unit
processing circuit
ambient temperature
Prior art date
Application number
TW108112175A
Other languages
Chinese (zh)
Other versions
TW202038235A (en
Inventor
黃識夫
陳政宇
Original Assignee
大陸商合肥沛睿微電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 大陸商合肥沛睿微電子股份有限公司 filed Critical 大陸商合肥沛睿微電子股份有限公司
Priority to TW108112175A priority Critical patent/TWI685845B/en
Application granted granted Critical
Publication of TWI685845B publication Critical patent/TWI685845B/en
Publication of TW202038235A publication Critical patent/TW202038235A/en

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

A flash memory controller includes: a transmission interface configured to operably receive data to be written into a flash memory; a temperature detecting circuit configured to operably detect an environment temperature, the temperature detecting circuit generates a control signal when the environment temperature goes beyond a predetermined temperature range; and a processing circuit, coupled to the transmission interface and the temperature detecting circuit, configured to operably select one of a plurality of data program schemes to program the data into a first storage block of the flash memory according to the control signal.

Description

快閃記憶體控制器 Flash memory controller

本發明涉及快閃記憶體(Flash Memory)控制器,尤指一種用於提高快閃記憶體內的資料的可靠度的控制電路。 The invention relates to a flash memory (Flash Memory) controller, in particular to a control circuit for improving the reliability of data in the flash memory.

快閃記憶體被廣泛使用在很多應用中,例如固態硬碟、記憶卡、數位相機、數位攝影機、多媒體播放器、行動電話、電腦、交通工具和其他電子裝置。該些電子裝置常被攜帶至不同的環境溫度下使用。 Flash memory is widely used in many applications, such as solid state drives, memory cards, digital cameras, digital cameras, multimedia players, mobile phones, computers, vehicles, and other electronic devices. These electronic devices are often carried to different ambient temperatures for use.

眾所周知,環境溫度越來越極端,溫度變化差異性也越來越大。此時,對溫度較敏感的快閃記憶體在寫入資料的環境溫度與讀取資料的環境溫度差異過大時,容易造成大量的資料錯誤。 As we all know, the ambient temperature is becoming more and more extreme, and the difference in temperature changes is also increasing. At this time, when the temperature difference between the ambient temperature for writing data and the ambient temperature for reading data is too large, the flash memory that is more sensitive to temperature is likely to cause a large number of data errors.

有鑑於此,如何改善快閃記憶體在環境溫度差異較大時的資料可靠度,實為業界有待解決的問題。 In view of this, how to improve the data reliability of flash memory when the ambient temperature difference is large is a problem to be solved in the industry.

本說明書提供一種快閃記憶體控制器的實施例,其包含:一傳輸介面,設置成接收待寫入一快閃記憶體的資料;一溫度偵測電路,設置成可偵測一環境溫度,當該環境溫度超過一預定溫度範圍時,該溫度偵測電路可產生一控制信號;以及一處理電路,耦接於該傳輸介面及該溫度偵測電路,設置成可依據該控制信號來選擇複數個資料編程模式中之一資料編程模式來將資料寫入該快閃記憶體中的一第一儲存區塊。 This specification provides an embodiment of a flash memory controller, which includes: a transmission interface configured to receive data to be written to a flash memory; a temperature detection circuit configured to detect an ambient temperature, When the ambient temperature exceeds a predetermined temperature range, the temperature detection circuit can generate a control signal; and a processing circuit, coupled to the transmission interface and the temperature detection circuit, is configured to select a plurality according to the control signal One of the data programming modes is to write data to a first storage block in the flash memory.

本說明書另提供一種快閃記憶體控制器的實施例,其包含:一溫度偵測電路,設置成可偵測一環境溫度,當該環境溫度超過一預定溫度範圍時,該溫度偵測電路可產生一控制信號;以及一處理電路, 耦接於該溫度偵測電路,設置成可依據該控制信號來將儲存在一快閃記憶體中的一第一儲存區塊的資料重新儲存在該快閃記憶體中的一第二儲存區塊;其中該第一儲存區塊的一第一儲存單元係以一第一位元數為儲存單位,該第二儲存區塊的一第二儲存單元係以一第二位元數為儲存單位,以及該第一位元數係大於該第二位元數。 This specification also provides an embodiment of a flash memory controller, which includes: a temperature detection circuit configured to detect an ambient temperature, and when the ambient temperature exceeds a predetermined temperature range, the temperature detection circuit may Generate a control signal; and a processing circuit, Coupled to the temperature detection circuit, and configured to re-store data of a first storage block stored in a flash memory in a second storage area of the flash memory according to the control signal Block; wherein a first storage unit of the first storage block uses a first bit number as the storage unit, and a second storage unit of the second storage block uses a second bit number as the storage unit , And the number of first bits is greater than the number of second bits.

上述實施例的優點之一,是無論快閃記憶體控制器處於休眠模式或正常操作下,溫度偵測電路都會持續地偵測快閃記憶體控制器的環境溫度,一旦環境溫度超出該預定溫度範圍時,溫度偵測電路得以馬上通知處理電路以進行資料保護的動作。 One of the advantages of the above embodiments is that whether the flash memory controller is in the sleep mode or in normal operation, the temperature detection circuit will continuously detect the ambient temperature of the flash memory controller once the ambient temperature exceeds the predetermined temperature Within the range, the temperature detection circuit can immediately notify the processing circuit for data protection.

上述實施例的另一優點,是當環境溫度超出該預定溫度範圍時,無論已儲存在快閃記憶體中的資料或新進的資料都得到適當的保護。 Another advantage of the above embodiment is that when the ambient temperature exceeds the predetermined temperature range, no matter the data stored in the flash memory or the newly entered data are properly protected.

上述實施例的另一優點,是快閃記憶體的容量可以被妥善的運用。 Another advantage of the above embodiment is that the capacity of the flash memory can be used properly.

本發明的其他優點將搭配以下的說明和圖式進行更詳細的解說。 Other advantages of the present invention will be explained in more detail with the following description and drawings.

100‧‧‧資料儲存系統 100‧‧‧Data storage system

110‧‧‧電源管理電路 110‧‧‧Power management circuit

111‧‧‧輔助電源模組 111‧‧‧Auxiliary power module

112‧‧‧電源模組 112‧‧‧Power Module

120‧‧‧快閃記憶體控制器 120‧‧‧Flash memory controller

121‧‧‧溫度偵測電路 121‧‧‧Temperature detection circuit

122‧‧‧處理電路 122‧‧‧ processing circuit

123‧‧‧溫度偵測單元 123‧‧‧Temperature detection unit

124‧‧‧控制單元 124‧‧‧Control unit

130‧‧‧快閃記憶體 130‧‧‧Flash memory

140‧‧‧傳輸介面 140‧‧‧Transmission interface

302、304、306、308、310、312、314、316、318、320‧‧‧流程 302, 304, 306, 308, 310, 312, 314, 316, 318, 320

圖1為本發明一實施例的資料儲存系統簡化後的功能方塊圖。 FIG. 1 is a simplified functional block diagram of a data storage system according to an embodiment of the invention.

圖2為本發明一實施例的環境溫度分佈的示意圖。 FIG. 2 is a schematic diagram of ambient temperature distribution according to an embodiment of the invention.

圖3為本發明一實施例之依據環境溫度將資料寫入快閃記憶體中的方法簡化後的流程圖。 3 is a simplified flowchart of a method for writing data into a flash memory according to an ambient temperature according to an embodiment of the invention.

以下將配合相關圖式來說明本發明的實施例。在圖式中,相同的標號表示相同或類似的元件或方法流程。 The embodiments of the present invention will be described below in conjunction with related drawings. In the drawings, the same reference numerals indicate the same or similar elements or method flows.

圖1為本發明一實施例的資料儲存系統100簡化後的功能方塊圖。資料儲存系統100包含一電源管理電路110、一快閃記憶體控制器120、一快閃記憶體130及一傳輸介面140。電源管理電路110耦接於快閃記憶體控制器120,設置成可提供電源至快閃記憶體控制器120。快閃記憶體控制器120耦接於快閃記憶體130,設置成可將資料寫入或讀出快閃記憶體130。 FIG. 1 is a simplified functional block diagram of a data storage system 100 according to an embodiment of the invention. The data storage system 100 includes a power management circuit 110, a flash memory controller 120, a flash memory 130, and a transmission interface 140. The power management circuit 110 is coupled to the flash memory controller 120 and is configured to provide power to the flash memory controller 120. The flash memory controller 120 is coupled to the flash memory 130 and is configured to write or read data into the flash memory 130.

傳輸介面140耦接於快閃記憶體控制器120,設置成接收待寫入或輸出快閃記憶體130的資料。傳輸介面140設置成與一主控裝置(host device,未繪示於圖1中)進行資料通信。實作上,傳輸介面140可用相容於各種序列式先進附加技術(Serial Advanced Technology Attachment,SATA)系列傳輸標準、快速週邊組件互連(peripheral component interconnect express,PCIe)系列傳輸標準、和/或通用串列匯流排(Universal Serial Bus,USB)系列傳輸標準的介面電路來實現。 The transmission interface 140 is coupled to the flash memory controller 120 and is configured to receive data to be written to or output from the flash memory 130. The transmission interface 140 is configured to communicate with a host device (not shown in FIG. 1). In practice, the transmission interface 140 can be compatible with various Serial Advanced Technology Attachment (SATA) series transmission standards, peripheral component interconnect express (PCIe) series transmission standards, and/or universal Serial interface bus (Universal Serial Bus, USB) series transmission standard interface circuit to achieve.

快閃記憶體控制器120至少包含一溫度偵測電路121及一處理電路122。溫度偵測電路121耦接於處理電路122,設置成可持續偵測快閃記憶體控制器120的一環境溫度。換言之,無論快閃記憶體控制器120處於一正常操作模式或一休眠模式下,溫度偵測電路121均可間隔地偵測快閃記憶體控制器120的環境溫度。當環境溫度超過一預定溫度範圍Rn時,溫度偵測電路121可產生一控制信號Sc至處理電路122。控制信號Sc可包含有環境溫度的資訊。當處理電路122處於休眠模式時,控制信號Sc可喚醒該處理電路122。因此,處理電路122可依據該環境溫度超過預定溫度範圍Rn的大小來選擇適當的資料編程模式來編程該資料,並將該編程後的資料寫入快閃記憶體130。請注意,雖然控制信號Sc可包含有環境溫度的資訊,但本發明並不以此為限,該環境溫度的資訊也可以獨自地傳送至處理電路122。 The flash memory controller 120 at least includes a temperature detection circuit 121 and a processing circuit 122. The temperature detection circuit 121 is coupled to the processing circuit 122 and is configured to continuously detect an ambient temperature of the flash memory controller 120. In other words, regardless of whether the flash memory controller 120 is in a normal operation mode or a sleep mode, the temperature detection circuit 121 can detect the ambient temperature of the flash memory controller 120 at intervals. When the ambient temperature exceeds a predetermined temperature range Rn, the temperature detection circuit 121 can generate a control signal Sc to the processing circuit 122. The control signal Sc may contain information about the ambient temperature. When the processing circuit 122 is in the sleep mode, the control signal Sc can wake up the processing circuit 122. Therefore, the processing circuit 122 can select an appropriate data programming mode to program the data according to the size of the ambient temperature exceeding the predetermined temperature range Rn, and write the programmed data into the flash memory 130. Please note that although the control signal Sc may include information on the ambient temperature, the invention is not limited to this, and the information on the ambient temperature may also be transmitted to the processing circuit 122 alone.

此外,該環境溫度可以係快閃記憶體130、快閃記憶體控制器120或資料儲存系統100週遭或本身的溫度。 In addition, the ambient temperature may be the temperature around or in the flash memory 130, the flash memory controller 120, or the data storage system 100.

請注意,為了簡起見,本實施例將處理電路122定義為具有對快閃記憶體130進行資料存取的功能。然在實作上,快閃記憶體控制器120也可另包含一存取電路(未繪示於圖1),其設置成依據處理電路122的指令來對快閃記憶體130進行存取。 Please note that for the sake of simplicity, this embodiment defines the processing circuit 122 as having the function of accessing data to the flash memory 130. However, in practice, the flash memory controller 120 may also include an access circuit (not shown in FIG. 1 ), which is configured to access the flash memory 130 according to the instructions of the processing circuit 122.

當環境溫度落在一預定溫度範圍內時,處理電路122利用一預定資料編程模式來編程該資料,並將該編程後的資料寫入快閃記憶體130中的一第一儲存區塊。當環境溫度超過預定溫度範圍Rn時,處理電路122可依據控制信號Sc來選擇複數個資料編程模式中之一資料編程模式來編程該資料,並將編程後的資料寫入快閃記憶體130中的一第二儲存區塊。在一實施例中,不同的資料編程模式可存取到快閃記憶體130中不同的儲存區塊,而處理電路122可將一資料編程模式與其存取儲存區塊的關係記錄於快閃記憶體控制器120的一儲存單元中。該第一儲存區塊的每一個第一儲存單元係以一第一位元數為儲存單位,該第二儲存區塊的每一個第二儲存單元係以一第二位元數為儲存單位,以及該第一位元數係大於該第二位元數。 When the ambient temperature falls within a predetermined temperature range, the processing circuit 122 uses a predetermined data programming mode to program the data, and writes the programmed data to a first storage block in the flash memory 130. When the ambient temperature exceeds the predetermined temperature range Rn, the processing circuit 122 may select one of the plurality of data programming modes to program the data according to the control signal Sc, and write the programmed data into the flash memory 130 A second storage block. In one embodiment, different data programming modes can access different storage blocks in the flash memory 130, and the processing circuit 122 can record the relationship between a data programming mode and its access storage blocks in the flash memory A storage unit of the body controller 120. Each first storage unit of the first storage block uses a first bit number as the storage unit, and each second storage unit of the second storage block uses a second bit number as the storage unit, And the number of first bits is greater than the number of second bits.

舉例而言,當快閃記憶體130係一3D反及閘快閃記憶體(3D NAND Flash)時,快閃記憶體130內部的儲存單元可以以單階儲存單元(Single-level cells,SLC)、虛擬的多階儲存單元(Pseudo-Multi-level cells,pMLC)、虛擬的三階儲存單元(Pseudo-Triple-level cells,pTLC)、四階儲存單元(Quad-level cells,QLC)或更高階數的儲存單元形式存在,其中單階儲存單元形式為每儲存單元以一位元(one-bit-per-cell,1bpc)編程模式來儲存資料,多階儲存單元形式為每儲存單元以二位元(two-bit-per-cell,2bpc)編程模式來儲存資料,三階儲存單元形式為每儲存單元以三位元(three-bit-per-cell,3bpc)編程模式來儲存資料,四階儲存單元形式為每儲存單元以四位元(four-bit-per-cell,4bpc)編程模式來儲存資料,以此類推。為了方便描述,處理電路122利用一四位元編程模式、一三位元編程模式、一二位元編程模式及一一位元編程模式編程資料所寫入的儲存單元分別簡稱為“四階儲存單元”、“三階儲存單元”、“多階儲存單元”及“單階儲存單元”。 For example, when the flash memory 130 is a 3D NAND flash memory (3D NAND Flash), the storage unit in the flash memory 130 may be a single-level storage unit (SLC) , Virtual multi-level storage units (Pseudo-Multi-level cells, pMLC), virtual third-level storage units (Pseudo-Triple-level cells, pTLC), fourth-level storage units (Quad-level cells, QLC) or higher There are several types of memory cells, including single-level memory cells in the form of one-bit-per-cell (1bpc) programming mode for storing data, and multi-level memory cells in the form of two bits per memory cell. The two-bit-per-cell (2bpc) programming mode is used to store data, and the third-level storage unit is a three-bit (per-cell-per-cell, 3bpc) programming mode for each storage unit. The storage unit format is that each storage unit stores data in a four-bit-per-cell (4bpc) programming mode, and so on. For the convenience of description, the processing circuit 122 uses a four-bit programming mode, a three-bit programming mode, a two-bit programming mode, and a one-bit programming mode. Cell", "third-level storage cell", "multi-level storage cell" and "single-level storage cell".

在實作上,上述的第一儲存單元可以是四階儲存單元,而上述的第 二儲存單元可以是單階儲存單元、多階儲存單元及三階儲存單元中之一。 In practice, the above-mentioned first storage unit may be a fourth-order storage unit, and the above-mentioned first storage unit The second storage unit may be one of a single-level storage unit, a multi-level storage unit, and a third-level storage unit.

溫度偵測電路121包含一溫度偵測單元123及一控制單元124。溫度偵測單元123耦接於控制單元124,設置成可間隔地偵測快閃記憶體控制器120當下的環境溫度,並將偵測到的環境溫度傳送至控制單元124。控制單元124設置成可判斷環境溫度是否超過預定溫度範圍Rn及/或可判斷環境溫度超過預定溫度範圍Rn的程度。舉例而言,預定溫度範圍Rn可以是快閃記憶體130的一正常操作溫度範圍,例如攝氏-25度至75度。請注意,此溫度範圍並不作為本發明的限制所在,不同製造商的快閃記憶體可有不同的預定溫度範圍。當控制單元124判斷環境溫度超過預定溫度範圍Rn時,會產生控制信號Sc至處理電路122,以使得使用一對應該環境溫度的適當的資料編程模式來將資料寫入快閃記憶體130中。進一步而言,控制單元124設置成可比較預定溫度範圍Rn與來自溫度偵測單元123的環境溫度,並判斷環境溫度超過預定溫度範圍Rn的程度,以據此產生控制信號Sc。 The temperature detection circuit 121 includes a temperature detection unit 123 and a control unit 124. The temperature detection unit 123 is coupled to the control unit 124, and is configured to detect the current ambient temperature of the flash memory controller 120 at intervals and transmit the detected ambient temperature to the control unit 124. The control unit 124 is configured to determine whether the ambient temperature exceeds the predetermined temperature range Rn and/or the extent to which the ambient temperature exceeds the predetermined temperature range Rn. For example, the predetermined temperature range Rn may be a normal operating temperature range of the flash memory 130, such as -25 degrees Celsius to 75 degrees Celsius. Please note that this temperature range is not a limitation of the present invention, and flash memory of different manufacturers may have different predetermined temperature ranges. When the control unit 124 determines that the ambient temperature exceeds the predetermined temperature range Rn, it generates a control signal Sc to the processing circuit 122, so that a proper data programming mode corresponding to the ambient temperature is used to write data into the flash memory 130. Further, the control unit 124 is configured to compare the predetermined temperature range Rn with the ambient temperature from the temperature detection unit 123, and determine the degree to which the ambient temperature exceeds the predetermined temperature range Rn to generate the control signal Sc accordingly.

請注意,本發明並不限制溫度偵測單元123實現方式,其可以由半導體元件或熱電偶來構成,其也可以設置在快閃記憶體控制器120的外部或內建在快閃記憶體控制器120或快閃記憶體130裡。 Please note that the present invention does not limit the implementation of the temperature detection unit 123, which can be composed of a semiconductor element or a thermocouple, it can also be provided outside the flash memory controller 120 or built-in flash memory control Device 120 or flash memory 130.

在一實施例中,控制單元124會判斷環境溫度是否落在超過預定溫度範圍Rn之外的一第一溫度區間R1、一第二溫度區間R2以及一第三溫度區間R3來產生對應的控制信號Sc。圖2為本發明一實施例的環境溫度分佈的示意圖。舉例而言,預定溫度範圍Rn係介於T4(例如攝氏-25度)至T5(例如攝氏65度)之間,第一溫度區間R1係介於T3(例如攝氏-30度)至T4與T5至T6(例如攝氏70度)之間,第二溫度區間R2係介於T2(例如攝氏-35度)至T3與T6至T7(例如攝氏75度)之間,以及第三溫度區間係介於T1(例如攝氏-40度)至T2與T7至T8(例如攝氏80度)之間。 In one embodiment, the control unit 124 determines whether the ambient temperature falls within a first temperature interval R1, a second temperature interval R2, and a third temperature interval R3 outside the predetermined temperature range Rn to generate corresponding control signals Sc. FIG. 2 is a schematic diagram of ambient temperature distribution according to an embodiment of the invention. For example, the predetermined temperature range Rn is between T4 (e.g. -25 degrees Celsius) to T5 (e.g. 65 degrees Celsius), and the first temperature interval R1 is between T3 (e.g. -30 degrees Celsius) to T4 and T5 Between T6 (eg 70 degrees Celsius), the second temperature interval R2 is between T2 (eg -35 degrees Celsius) to T3 and T6 to T7 (eg 75 degrees Celsius), and the third temperature interval is between Between T1 (for example, -40 degrees Celsius) to T2 and T7 to T8 (for example, 80 degrees Celsius).

請注意,上述的溫度至與範圍並不作為本發明的限制所在。T3至T4之間的溫差可以相同或異於T5至T6之間的溫差。T2至T3之間的溫差可以相同或異於T6至T7之間的溫差。T1至T2之間的溫差可以相同或異於T7至T8之間的溫差。 Please note that the above temperature ranges and ranges are not limitations of the present invention. The temperature difference between T3 and T4 may be the same or different from the temperature difference between T5 and T6. The temperature difference between T2 and T3 may be the same or different from the temperature difference between T6 and T7. The temperature difference between T1 and T2 may be the same or different from the temperature difference between T7 and T8.

此外,第一溫度區間R1可以只包含T3至T4或T5至T6之間的範圍,第二溫度區間R2可以只包含T2至T3或T6至T7之間的範圍,以及第三溫度區間可以只包含T1至T2或T7至T8之間的範圍。 In addition, the first temperature interval R1 may only include the range between T3 to T4 or T5 to T6, the second temperature interval R2 may only include the range between T2 to T3 or T6 to T7, and the third temperature interval may only include the range The range between T1 to T2 or T7 to T8.

為了滿足上述功能,控制單元124除了包含一運算電路之外,其可另包含一儲存單元用來儲存該些溫度數據及預定溫度範圍Rn的資訊。 In order to satisfy the above function, in addition to an arithmetic circuit, the control unit 124 may further include a storage unit for storing the temperature data and the information of the predetermined temperature range Rn.

在實作上,當環境溫度落在第一溫度區間R1時,處理電路122選擇複數個資料編程模式中之一第一資料編程模式來編程該資料以寫入儲存單元為三階儲存單元的儲存區塊中。當環境溫度落在第二溫度區間R2時,處理電路122選擇複數個資料編程模式中之一第二資料編程模式來編程該資料以寫入儲存單元為多階儲存單元的儲存區塊中。當環境溫度落在第三溫度區間R3時,處理電路122選擇複數個資料編程模式中之一第三資料編程模式來編程該資料以寫入儲存單元為單階儲存單元的儲存區塊中。換言之,當環境溫度偏離預定溫度範圍Rn越大時,處理電路122會以可靠度較高的資料編程模式(且可靠度高的儲存單元)來儲存資料。當環境溫度偏離預定溫度範圍Rn越小時,處理電路122會以一般可靠度的儲存單元(也就是無需特別利用可靠度較高的儲存單元)來儲存資料。 In practice, when the ambient temperature falls within the first temperature range R1, the processing circuit 122 selects one of the plurality of data programming modes to program the data to write to the storage unit as the storage of the tertiary storage unit In the block. When the ambient temperature falls within the second temperature interval R2, the processing circuit 122 selects one of the plurality of data programming modes to program the data to be written into the storage block where the storage unit is a multi-level storage unit. When the ambient temperature falls within the third temperature interval R3, the processing circuit 122 selects a third data programming mode among the plurality of data programming modes to program the data to be written into the storage block where the storage unit is a single-level storage unit. In other words, when the ambient temperature deviates from the predetermined temperature range Rn, the processing circuit 122 will store data in a data programming mode with a high reliability (and a storage unit with a high reliability). When the ambient temperature deviates from the predetermined temperature range Rn, the processing circuit 122 will store data in a storage unit with a general reliability (that is, without using a storage unit with a higher reliability).

如圖1所示,電源管理電路110包含一輔助電源模組111及一電源模組112。實作上,輔助電源模組111可以係一電池模組。由於輔助電源模組111及電源模組112係以互補的方式提供電源至快閃記憶體控制器120,因此無論快閃記憶體控制器120處於正常操作模式或休眠模式下,電源管理電路110都會提供電源至快閃記憶體控制器120。 As shown in FIG. 1, the power management circuit 110 includes an auxiliary power module 111 and a power module 112. In practice, the auxiliary power module 111 can be a battery module. Since the auxiliary power module 111 and the power module 112 provide power to the flash memory controller 120 in a complementary manner, regardless of whether the flash memory controller 120 is in the normal operation mode or the sleep mode, the power management circuit 110 will Provide power to the flash memory controller 120.

進一步而言,當快閃記憶體控制器120處於休眠模式下,輔助電源 模組111設置成可持續提供一第一電源P1至溫度偵測電路121以偵測環境溫度,以及依據控制信號Sc來選擇性的提供一第二電源P2至處理電路122。例如:當環境溫度未超過預定溫度範圍Rn時,則輔助電源模組111不提供第二電源P2至處理電路122(即,處理電路122處於斷電狀態)以達到省電的目的。當環境溫度超過預定溫度範圍Rn時,則溫度偵測電路121產生控制信號Sc以通知輔助電源模組111來提供第二電源P2至處理電路122。此時,控制信號Sc可為一啟動信號(Activate signal),而輔助電源模組111就會提供第二電源P2至處理電路122,以使用對應該環境溫度的一資料編程模式來將資料寫入快閃記憶體130中。 Further, when the flash memory controller 120 is in the sleep mode, the auxiliary power supply The module 111 is configured to continuously provide a first power P1 to the temperature detection circuit 121 to detect the ambient temperature, and selectively provide a second power P2 to the processing circuit 122 according to the control signal Sc. For example, when the ambient temperature does not exceed the predetermined temperature range Rn, the auxiliary power module 111 does not provide the second power P2 to the processing circuit 122 (that is, the processing circuit 122 is in a power-off state) to achieve power saving. When the ambient temperature exceeds the predetermined temperature range Rn, the temperature detection circuit 121 generates a control signal Sc to notify the auxiliary power module 111 to provide the second power P2 to the processing circuit 122. At this time, the control signal Sc may be an activation signal (Activate signal), and the auxiliary power module 111 will provide the second power P2 to the processing circuit 122 to use a data programming mode corresponding to the ambient temperature to write the data In flash memory 130.

當快閃記憶體控制器120處於正常操作模式時,電源模組112設置成可同時分別提供一第三電源P3及一第四電源P4至溫度偵測電路121及處理電路122。因此,當處理電路122在正常操作模式下可將控制信號Sc可視為一中斷信號(Interrupt signal)。處理電路122依據該控制信號Sc以對應該環境溫度的一資料編程模式來將資料寫入快閃記憶體130中。此時,當快閃記憶體控制器120處於正常操作模式時,由於該溫度偵測電路121係間隔地偵測環境溫度,故在處理電路122的控制下可間隔地提供第四電源P4給該溫度偵測電路121,以達到較佳的省電效果。 When the flash memory controller 120 is in the normal operation mode, the power module 112 is configured to simultaneously provide a third power P3 and a fourth power P4 to the temperature detection circuit 121 and the processing circuit 122, respectively. Therefore, when the processing circuit 122 is in the normal operation mode, the control signal Sc can be regarded as an interrupt signal. The processing circuit 122 writes the data into the flash memory 130 in a data programming mode corresponding to the ambient temperature according to the control signal Sc. At this time, when the flash memory controller 120 is in the normal operation mode, since the temperature detection circuit 121 detects the ambient temperature at intervals, under the control of the processing circuit 122, the fourth power P4 can be provided at intervals The temperature detection circuit 121 can achieve better power saving effect.

請注意,本發明並未限制第一電源P1、第二電源P2、第三電源P3及第四電源P4傳送至快閃記憶體控制器120的方式。 Please note that the present invention does not limit the manner in which the first power supply P1, the second power supply P2, the third power supply P3, and the fourth power supply P4 are transmitted to the flash memory controller 120.

在另一實施例中,輔助電源模組111可整合在快閃記憶體控制器120裡面。 In another embodiment, the auxiliary power module 111 may be integrated in the flash memory controller 120.

又例如,在另一實施例中,電源管理電路110也可整合在快閃記憶體控制器120裡面。 For another example, in another embodiment, the power management circuit 110 may also be integrated in the flash memory controller 120.

以下將搭配圖2來進一步說明快閃記憶體控制器120將資料寫入快閃記憶體130中的運作方式。 The operation of the flash memory controller 120 to write data into the flash memory 130 will be further described below with reference to FIG. 2.

圖3為本發明一實施例之依據環境溫度將資料寫入快閃記憶體130中的方法簡化後的流程圖。 FIG. 3 is a simplified flowchart of a method for writing data into the flash memory 130 according to an ambient temperature according to an embodiment of the invention.

在流程302中,溫度偵測單元123間隔地偵測快閃記憶體控制器120的環境溫度,並將偵測到的環境溫度傳送至控制單元124。 In the process 302, the temperature detection unit 123 detects the ambient temperature of the flash memory controller 120 at intervals, and transmits the detected ambient temperature to the control unit 124.

在流程304中,控制單元124判斷環境溫度是否超過預定溫度範圍Rn。若環境溫度超過預定溫度範圍Rn,則進入流程306。若環境溫度未超過預定溫度範圍Rn,則回到流程302。 In flow 304, the control unit 124 determines whether the ambient temperature exceeds the predetermined temperature range Rn. If the ambient temperature exceeds the predetermined temperature range Rn, then flow 306 is entered. If the ambient temperature does not exceed the predetermined temperature range Rn, return to the process 302.

在流程306中,控制單元124發出控制信號Sc至處理電路122,其中控制信號Sc可包含有該環境溫度的資訊。 In the process 306, the control unit 124 sends a control signal Sc to the processing circuit 122, wherein the control signal Sc may include information about the ambient temperature.

在流程308中,當處理電路122接收到控制信號Sc時,處理電路122會先判斷快閃記憶體控制器120當下的操作模式為休眠模式或正常操作模式。若快閃記憶體控制器120處於休眠模式,則進入流程310。若快閃記憶體控制器120處於正常操作模式,則進入流程316及320。 In the process 308, when the processing circuit 122 receives the control signal Sc, the processing circuit 122 first determines whether the current operation mode of the flash memory controller 120 is the sleep mode or the normal operation mode. If the flash memory controller 120 is in the sleep mode, the process 310 is entered. If the flash memory controller 120 is in the normal operation mode, the processes 316 and 320 are entered.

在流程310中,控制信號Sc啟動處理電路122的全部功能電路或處理電路122內的一部分功能電路。該部分功能電路可用來將資料從快閃記憶體130中讀出並重新寫入快閃記憶體130中的相關電路。 In the process 310, the control signal Sc activates all the functional circuits of the processing circuit 122 or a part of the functional circuits in the processing circuit 122. This part of the functional circuit can be used to read data from the flash memory 130 and rewrite the related circuits in the flash memory 130.

在流程312中,處理電路122於背景執行資料處理,即處理電路122在不需要使用者干預的情況下,將快閃記憶體130內的資料以更高資料可靠度的方式儲存,以進行資料保護。進一步而言,處理電路122對已利用一原本的資料編程模式寫入快閃記憶體130中的資料讀出並重新以另一資料編程模式寫入快閃記憶體130中,該另一資料編程模式相較於該原本的資料編程模式具有較高的資料可靠度。 In the process 312, the processing circuit 122 performs data processing in the background, that is, the processing circuit 122 stores the data in the flash memory 130 in a higher data reliability manner for data processing without user intervention protection. Further, the processing circuit 122 reads out the data that has been written into the flash memory 130 using an original data programming mode and rewrites the data into the flash memory 130 in another data programming mode, and the other data is programmed The mode has higher data reliability than the original data programming mode.

以快閃記憶體130是一3D反及閘快閃記憶體為例子,單階儲存單元具有最高的資料可靠度,但具有一位元(最低)的儲存容量。多階儲存單元具有第二高的資料可靠度,以及二位元(第二低)的儲存容量。三階儲存單元具有第三高的資料可靠度,以及三位元(第三低)的儲存容量。四階儲存單元具有最低的資料可靠度,以及四位 元(最高)的儲存容量。其他更高階數的儲存單元則以此類推。 Taking flash memory 130 as a 3D flip-flop flash memory as an example, a single-stage storage unit has the highest data reliability, but has a one-bit (lowest) storage capacity. The multi-level storage unit has the second highest data reliability and a two-bit (second lowest) storage capacity. The tertiary storage unit has the third highest data reliability and a three-bit (third lowest) storage capacity. The fourth-order storage unit has the lowest data reliability and four digits Yuan (highest) storage capacity. Other higher-order storage units are similar.

由於每一種儲存單元所適合寫入的位元數都不同,因此處理電路122會利用四種不同的資料編程模式來將資料分別寫入不同的儲存單元。為了方便描述,在本流程中,處理電路122會利用一預定資料編程模式、一第一資料編程模式、一第二資料編程模式及一第三資料編程模式來將資料分別寫入四階儲存單元、三階儲存單元、多階儲存單元及單階儲存單元。 Since the number of bits suitable for writing in each storage unit is different, the processing circuit 122 uses four different data programming modes to write data into different storage units respectively. For the convenience of description, in this process, the processing circuit 122 will use a predetermined data programming mode, a first data programming mode, a second data programming mode, and a third data programming mode to write data into the fourth-level storage unit respectively , Three-level storage unit, multi-level storage unit and single-level storage unit.

在實作上,三階儲存單元、多階儲存單元及單階儲存單元可以分別係虛擬的三階儲存單元(Pseudo TLC)、虛擬的多階儲存單元(Pseudo MLC)及單階儲存單元(SLC)。因此,第一資料編程模式、第二資料編程模式及第三資料編程模式則分別係虛擬的三階儲存單元的資料編程模式、虛擬的多階儲存單元的資料編程模式及單階儲存單元的資料編程模式。 In practice, the three-level storage unit, multi-level storage unit and single-level storage unit can be virtual third-level storage unit (Pseudo TLC), virtual multi-level storage unit (Pseudo MLC) and single-level storage unit (SLC ). Therefore, the first data programming mode, the second data programming mode, and the third data programming mode are the data programming mode of the virtual third-level storage unit, the data programming mode of the virtual multi-level storage unit, and the data of the single-level storage unit, respectively. Programming mode.

進一步而言,當快閃記憶體控制器120處於正常操作模式以及環境溫度落在預定溫度範圍Rn內時,快閃記憶體130係設置成以最高的儲存容量來儲存資料,亦即快閃記憶體130係以四位元編程模式來儲存資料。換言之,當環境溫度落在預定溫度範圍Rn內時,處理電路122係利用該預定資料編程模式(例如:四位元編程模式)來將該資料寫入快閃記憶體130中的四階儲存單元。 Further, when the flash memory controller 120 is in the normal operation mode and the ambient temperature falls within the predetermined temperature range Rn, the flash memory 130 is set to store data with the highest storage capacity, that is, flash memory The body 130 stores data in a four-bit programming mode. In other words, when the ambient temperature falls within the predetermined temperature range Rn, the processing circuit 122 uses the predetermined data programming mode (eg, four-bit programming mode) to write the data into the fourth-order storage unit in the flash memory 130 .

當快閃記憶體控制器120處於休眠模式以及環境溫度超過預定溫度範圍Rn時,處理電路122可以依據環境溫度超出預定溫度範圍Rn的程度來決定要將原本在四階儲存單元的資料寫入三階儲存單元、多階儲存單元或單階儲存單元中。舉例而言,如圖1所示,當環境溫度只是稍微超過預定溫度範圍Rn時(例如超出預定溫度範圍Rn的5度以內),處理電路122可將原本在四階儲存單元的資料寫入三階儲存單元中。當環境溫度超出預定溫度範圍Rn的5~10度之中,處理電路122可將原本的資料寫入多階儲存單元中。當環境溫度嚴重超 出預定溫度範圍Rn時(例如超出預定溫度範圍Rn的10度以外),處理電路122可將原本的資料寫入單階儲存單元中。 When the flash memory controller 120 is in the sleep mode and the ambient temperature exceeds the predetermined temperature range Rn, the processing circuit 122 may decide to write the data in the fourth-level storage unit according to the degree of the ambient temperature exceeding the predetermined temperature range Rn The multi-level storage unit, the multi-level storage unit or the single-level storage unit. For example, as shown in FIG. 1, when the ambient temperature only slightly exceeds the predetermined temperature range Rn (for example, within 5 degrees beyond the predetermined temperature range Rn), the processing circuit 122 may write the data originally in the fourth-order storage unit to the third Level storage unit. When the ambient temperature exceeds 5 to 10 degrees of the predetermined temperature range Rn, the processing circuit 122 may write the original data into the multi-level storage unit. When the ambient temperature is severely exceeded When the predetermined temperature range Rn is reached (for example, 10 degrees beyond the predetermined temperature range Rn), the processing circuit 122 may write the original data into the single-stage storage unit.

上述範例中,若處理電路122將資料重新寫入三階儲存單元時,則處理電路122會利用該預定資料編程模式將讀出的資料再利用該第一資料編程模式進行編程再寫入儲存單元中。若處理電路122將資料重新寫入多階儲存單元時,則處理電路122會利用該預定資料編程模式將讀出的資料再利用該第二資料編程模式進行編程再寫入儲存單元中。若處理電路122將資料重新寫入單階儲存單元時,則處理電路122會利用該預定資料編程模式將讀出的資料再利用該第三資料編程模式進行編程再寫入儲存單元中。 In the above example, if the processing circuit 122 rewrites the data into the tertiary storage unit, the processing circuit 122 will use the predetermined data programming mode to program the read data and then use the first data programming mode to program and then write to the storage unit in. If the processing circuit 122 rewrites the data into the multi-level storage unit, the processing circuit 122 will use the predetermined data programming mode to program the read data and then use the second data programming mode to program and write to the storage unit. If the processing circuit 122 rewrites the data into the single-stage storage unit, the processing circuit 122 will use the predetermined data programming mode to reprogram the read data using the third data programming mode and then write the data into the storage unit.

然而,為了簡化快閃記憶體控制器120的複雜度,當環境溫度超過預定溫度範圍Rn時,處理電路122也可以設置成將原本的資料直接利用可靠度最高的該第三資料編程模式寫入資料至儲存單元中。 However, to simplify the complexity of the flash memory controller 120, when the ambient temperature exceeds the predetermined temperature range Rn, the processing circuit 122 may also be configured to write the original data directly using the third data programming mode with the highest reliability Data to the storage unit.

此外,為了可以讓處理電路122能夠正確地對儲存在較高可靠度的儲存單元(即單階儲存單元、多階儲存單元或三階儲存單元)的資料進行解碼,當處理電路122以該第一資料編程模式、該第二資料編程模式或該第三資料編程模式將資料分別寫入三階儲存單元時、多階儲存單元或單階儲存單元,處理電路122會同時將當時的環境溫度值標記在該筆資料上。當環境溫度重新回到預定溫度範圍Rn內,且該筆資料要被讀出時,處理電路122就得以知曉當時儲存該筆資料的環境溫度,進而利用一對應的解碼方式來解讀出儲存在三階儲存單元時、多階儲存單元或單階儲存單元的該筆資料。 In addition, in order to allow the processing circuit 122 to correctly decode the data stored in the storage unit with higher reliability (ie, single-level storage unit, multi-level storage unit, or tertiary storage unit), when the processing circuit 122 uses the first When a data programming mode, the second data programming mode, or the third data programming mode writes data to a third-level storage unit, a multi-level storage unit, or a single-level storage unit, the processing circuit 122 will simultaneously set the current ambient temperature value Mark on the data. When the ambient temperature returns to the predetermined temperature range Rn, and the pen data is to be read out, the processing circuit 122 can know the ambient temperature at which the pen data is stored at that time, and then use a corresponding decoding method to interpret the stored in the three The first-level storage unit, the multi-level storage unit or the single-level storage unit of the data.

在流程314中,當快閃記憶體控制器120內的資料全部被寫入較高可靠度的儲存區塊後,快閃記憶體控制器120就會重新進入休眠模式。 In the process 314, when all the data in the flash memory controller 120 is written into the storage block with higher reliability, the flash memory controller 120 will re-enter the sleep mode.

在流程316中,快閃記憶體控制器120係處於正常操作模式且環境溫度超出預定溫度範圍Rn之外,此時處理電路122會對新進的資料以較高資料可靠度的編程來寫入快閃記憶體130,以保護新進的資料。 In the process 316, the flash memory controller 120 is in the normal operating mode and the ambient temperature exceeds the predetermined temperature range Rn. At this time, the processing circuit 122 writes the new data into the flash memory with higher data reliability programming. Flash memory 130 to protect newly entered data.

針對新進的資料,處理電路122會依據控制信號Sc及環境溫度超過預定溫度範圍Rn的大小來選擇適當的資料編程模式來編程該資料。簡言之,如圖2所示,當環境溫度落在第一溫度區間R1時,處理電路122選擇該第一資料編程模式來編程該新進資料,並將編程後資料寫入儲存單元(流程318)。當環境溫度落在第二溫度區間R2時,處理電路122選擇該第二資料編程模式來編程該新進資料,並將編程後資料寫入儲存單元(流程318)。當環境溫度落在第三溫度區間R3時,處理電路122選擇該第三資料編程模式來編程該新進資料,並將編程後資料寫入儲存單元(流程318)。然而,為了簡化快閃記憶體控制器120的複雜度,當環境溫度超過預定溫度範圍Rn時,處理電路122也可以設置成直接用第三資料編程模式來編程該新進資料,並將編程後資料寫入儲存單元(流程318)。由於其編程及寫入方式已詳細揭露於上述有關於處理電路122的段落中,故其詳細內容在此不另贅述。 For newly entered data, the processing circuit 122 will select an appropriate data programming mode to program the data according to the control signal Sc and the size of the ambient temperature exceeding the predetermined temperature range Rn. In short, as shown in FIG. 2, when the ambient temperature falls within the first temperature range R1, the processing circuit 122 selects the first data programming mode to program the newly entered data, and writes the programmed data into the storage unit (flow 318 ). When the ambient temperature falls within the second temperature range R2, the processing circuit 122 selects the second data programming mode to program the newly entered data, and writes the programmed data into the storage unit (flow 318). When the ambient temperature falls within the third temperature interval R3, the processing circuit 122 selects the third data programming mode to program the newly entered data, and writes the programmed data into the storage unit (flow 318). However, in order to simplify the complexity of the flash memory controller 120, when the ambient temperature exceeds the predetermined temperature range Rn, the processing circuit 122 may also be configured to directly use the third data programming mode to program the newly entered data, and the programmed data Write to storage unit (process 318). Since the programming and writing methods have been disclosed in detail in the above paragraphs about the processing circuit 122, the detailed contents are not repeated here.

在流程320中,處理電路122也會對已儲存在快閃記憶體130內的資料重新以較高資料可靠度的編程來寫入快閃記憶體130。針對已儲存在快閃記憶體130內的資料,如圖2所示,處理電路122也會依據控制信號Sc及環境溫度超過預定溫度範圍Rn的大小來選擇適當的資料編程模式來重新編程該資料,以將該資料重新寫入儲存單元為三階儲存單元、多階儲存單元或單階儲存單元的儲存區塊中(流程318)。由於其判斷方式係相似於流程312,故其詳細內容在此不另贅述。 In the process 320, the processing circuit 122 also reprograms the data stored in the flash memory 130 with higher data reliability to write to the flash memory 130. For the data stored in the flash memory 130, as shown in FIG. 2, the processing circuit 122 also selects an appropriate data programming mode to reprogram the data according to the control signal Sc and the size of the ambient temperature exceeding the predetermined temperature range Rn To re-write the data into the storage block where the storage unit is a third-level storage unit, a multi-level storage unit, or a single-level storage unit (flow 318). Since the determination method is similar to the process 312, its detailed content will not be repeated here.

在流程318中,處理電路122將編程後的資料寫入對應的儲存區塊中。 In the process 318, the processing circuit 122 writes the programmed data into the corresponding storage block.

從上述有關處理電路122的運作流程可以得知,處理電路122可以依據環境溫度超過預定溫度範圍Rn的程度來選擇不同的資料編程模式來重新編程資料,也在環境溫度超過預定溫度範圍Rn的程度時,無視其超過的程度,而直接利用最佳資料可靠度的編程模式來重新編 程資料。 It can be known from the above operation flow of the processing circuit 122 that the processing circuit 122 can select different data programming modes to reprogram the data according to the degree to which the ambient temperature exceeds the predetermined temperature range Rn, and also to the extent that the ambient temperature exceeds the predetermined temperature range Rn At the time, ignore the degree of excess, and directly use the best data reliability programming mode to reprogram Process information.

由前述說明可知,無論快閃記憶體控制器120處於休眠模式或正常操作下,溫度偵測電路121都會間隔地偵測快閃記憶體控制器120的環境溫度,一旦環境溫度超出預定溫度範圍Rn時,溫度偵測電路121得以馬上通知處理電路122以進行資料保護的動作。 As can be seen from the foregoing description, regardless of whether the flash memory controller 120 is in the sleep mode or under normal operation, the temperature detection circuit 121 will detect the ambient temperature of the flash memory controller 120 at intervals, once the ambient temperature exceeds the predetermined temperature range Rn At this time, the temperature detection circuit 121 can immediately notify the processing circuit 122 to perform data protection.

當快閃記憶體控制器120處於休眠模式時,處理電路122將已儲存在快閃記憶體130中的資料讀出,然後重新編程該資料,以將編程後的資料寫入快閃記憶體130中較高資料可靠度的儲存單元中。當快閃記憶體控制器120處於正常操作時,處理電路122除了將已儲存在快閃記憶體130中的資料重新編程並寫入較高資料可靠度的儲存單元之外,處理電路122還會對新進的資料以較高資料可靠度的資料編程模式進行編程,並編程後的資料寫入較高資料可靠度的儲存單元中。因此,當環境溫度超出預定溫度範圍Rn時,無論已儲存在快閃記憶體130中的資料或新進的資料都得到適當的保護。 When the flash memory controller 120 is in the sleep mode, the processing circuit 122 reads out the data stored in the flash memory 130 and then reprograms the data to write the programmed data into the flash memory 130 In the storage unit with high data reliability. When the flash memory controller 120 is in normal operation, the processing circuit 122, in addition to reprogramming the data already stored in the flash memory 130 and writing to a storage unit with higher data reliability, the processing circuit 122 will also The newly entered data is programmed in a data programming mode with higher data reliability, and the programmed data is written into a storage unit with higher data reliability. Therefore, when the ambient temperature exceeds the predetermined temperature range Rn, no matter the data already stored in the flash memory 130 or newly entered data are properly protected.

此外,處理電路122也可以依據環境溫度超出預定溫度範圍Rn的程度來選擇一適當的資料編程模式來編程資料,以將編程後的資料寫入適當的儲存單元中。例如,當環境溫度超出預定溫度範圍Rn的程度較小時,處理電路122將編程後的資料寫入較低資料可靠度,但較高儲存容量的儲存單元中。當環境溫度超出預定溫度範圍Rn的程度較大時,處理電路122將編程後的資料寫入較高資料可靠度,但較低儲存容量的儲存單元中。如此一來,除了資料得以受到保護外,快閃記憶體130的容量也可以被妥善的運用。 In addition, the processing circuit 122 can also select an appropriate data programming mode to program the data according to the degree that the ambient temperature exceeds the predetermined temperature range Rn, so as to write the programmed data into the appropriate storage unit. For example, when the ambient temperature exceeds the predetermined temperature range Rn to a lesser extent, the processing circuit 122 writes the programmed data into a storage unit with lower data reliability but higher storage capacity. When the ambient temperature exceeds the predetermined temperature range Rn to a greater extent, the processing circuit 122 writes the programmed data into a storage unit with higher data reliability but lower storage capacity. In this way, in addition to the data being protected, the capacity of the flash memory 130 can also be used properly.

請注意,前述圖1中的電路架構只是一示範性的實施例,並非侷限本發明的實際實施方式。 Please note that the aforementioned circuit architecture in FIG. 1 is only an exemplary embodiment and does not limit the actual implementation of the present invention.

此外,前述圖3中的流程執行順序只是一示範性的實施例,並非侷限本發明的實際實施方式。例如,流程320可以調整到流程316和318之間進行,流程320和流程316也可以同時進行。 In addition, the foregoing sequence of process execution in FIG. 3 is only an exemplary embodiment, and does not limit the actual implementation of the present invention. For example, the process 320 may be adjusted to be performed between the processes 316 and 318, and the process 320 and the process 316 may also be performed at the same time.

在說明書及申請專利範圍中使用了某些詞彙來指稱特定的元件,而本領域內的技術人員可能會用不同的名詞來稱呼同樣的元件。本說明書及申請專利範圍並不以名稱的差異來作為區分元件的方式,而是以元件在功能上的差異來作為區分的基準。在說明書及申請專利範圍中所提及的「包含」為開放式的用語,應解釋成「包含但不限定於」。另外,「耦接」一詞在此包含任何直接及間接的連接手段。因此,若文中描述第一元件耦接於第二元件,則代表第一元件可通過電性連接或無線傳輸、光學傳輸等信號連接方式而直接地連接於第二元件,或通過其它元件或連接手段間接地電性或信號連接至第二元件。 Certain words are used in the specification and patent application scope to refer to specific elements, and those skilled in the art may use different terms to refer to the same element. This specification and the scope of patent application do not use the difference in names as a means of distinguishing elements, but the difference in function of elements as a basis for distinguishing. "Inclusion" mentioned in the description and the scope of patent application is an open term and should be interpreted as "including but not limited to." In addition, the term "coupled" here includes any direct and indirect connection means. Therefore, if it is described that the first element is coupled to the second element, it means that the first element can be directly connected to the second element through electrical connection, wireless transmission, optical transmission, or other signal connection, or through other elements or connections The means is indirectly electrically or signally connected to the second element.

在說明書中所使用的「和/或」的描述方式,包含所列舉的其中一個項目或多個項目的任意組合。另外,除非說明書中特別指明,否則任何單數格的用語都同時包含複數格的含義。 The description method of "and/or" used in the specification includes any one of the listed items or any combination of multiple items. In addition, unless otherwise specified in the specification, any singular expressions also include the plural meaning.

說明書及申請專利範圍中的「控制信號」及「電源」,在實作上可採用電壓形式或電流形式來實現。 The "control signal" and "power supply" in the specification and patent application scope can be implemented in the form of voltage or current.

以上僅為本發明的較佳實施例,凡依本發明請求項所做的等效變化與修改,皆應屬本發明的涵蓋範圍。 The above are only preferred embodiments of the present invention, and any equivalent changes and modifications made according to the claims of the present invention shall fall within the scope of the present invention.

100‧‧‧資料儲存系統 100‧‧‧Data storage system

110‧‧‧電源管理電路 110‧‧‧Power management circuit

111‧‧‧輔助電源模組 111‧‧‧Auxiliary power module

112‧‧‧電源模組 112‧‧‧Power Module

120‧‧‧快閃記憶體控制器 120‧‧‧Flash memory controller

121‧‧‧溫度偵測電路 121‧‧‧Temperature detection circuit

122‧‧‧處理電路 122‧‧‧ processing circuit

123‧‧‧溫度偵測單元 123‧‧‧Temperature detection unit

124‧‧‧控制單元 124‧‧‧Control unit

130‧‧‧快閃記憶體 130‧‧‧Flash memory

140‧‧‧傳輸介面 140‧‧‧Transmission interface

Sc‧‧‧控制信號 Sc‧‧‧Control signal

P1、P2、P3、P4‧‧‧電源 P1, P2, P3, P4 ‧‧‧ power supply

Claims (10)

一種快閃記憶體控制器(120),包含:一傳輸介面(140),設置成接收待寫入一快閃記憶體(130)的資料;一溫度偵測電路(121),設置成可偵測一環境溫度,當該環境溫度超過一預定溫度範圍時,該溫度偵測電路(121)可產生一控制信號(Sc);以及一處理電路(122),耦接於該傳輸介面(140)及該溫度偵測電路(121),設置成可在該環境溫度落在一預定溫度範圍內時,利用一預定資料編程模式來編程該資料,並將編程後的資料寫入該快閃記憶體(130)中的一第一儲存區塊;其中,在該環境溫度超過該預定溫度範圍時,該處理電路(122)還設置成將已儲存在該第一儲存區塊中的資料讀出,並依據該控制信號(Sc)來選擇複數個資料編程模式中之一資料編程模式來重新編程該第一儲存區塊中的資料,以及將重新編程後的資料寫入該快閃記憶體(130)中的一第二儲存區塊;其中,該第一儲存區塊的一第一儲存單元係以一第一位元數為儲存單位,該第二儲存區塊的一第二儲存單元係以一第二位元數為儲存單位,以及該第一位元數係大於該第二位元數。 A flash memory controller (120) includes: a transmission interface (140) configured to receive data to be written into a flash memory (130); and a temperature detection circuit (121) configured to detect Measuring an ambient temperature, when the ambient temperature exceeds a predetermined temperature range, the temperature detection circuit (121) can generate a control signal (Sc); and a processing circuit (122), coupled to the transmission interface (140) And the temperature detection circuit (121) is configured to program the data using a predetermined data programming mode when the ambient temperature falls within a predetermined temperature range, and write the programmed data into the flash memory A first storage block in (130); wherein, when the ambient temperature exceeds the predetermined temperature range, the processing circuit (122) is further configured to read out the data stored in the first storage block, And select one of the plurality of data programming modes according to the control signal (Sc) to reprogram the data in the first storage block, and write the reprogrammed data into the flash memory (130) ) A second storage block; wherein, a first storage unit of the first storage block uses a first bit number as a storage unit, and a second storage unit of the second storage block is a A second bit number is a storage unit, and the first bit number is larger than the second bit number. 如請求項1所述的快閃記憶體控制器(120),其中,該第一儲存單元為四階儲存單元(Quad-level cells,QLC),該第二儲存單元為單階儲存單元(Single-level cells,SLC)、虛擬的多階儲存單元(Pseudo-Multi-level cells,pMLC)及虛擬的三階儲存單元(Pseudo-Triple-level cells,pTLC)中之一。 The flash memory controller (120) according to claim 1, wherein the first storage unit is a quad-level storage unit (Quad-level cells, QLC), and the second storage unit is a single-level storage unit (Single -level cells (SLC), virtual multi-level storage cells (Pseudo-Multi-level cells, pMLC) and virtual third-level storage cells (Pseudo-Triple-level cells, pTLC). 如請求項2所述的快閃記憶體控制器(120),其中,當該環境溫度落在超過該預定溫度範圍之外的一第一溫度區間時,該處理電路 (122)選擇複數個資料編程模式中之一第一資料編程模式來將資料寫入該第二儲存單元為該三階儲存單元的該第二儲存區塊中;當該環境溫度落在超過該預定溫度範圍之外的一第二溫度區間時,該處理電路(122)選擇複數個資料編程模式中之一第二資料編程模式來將資料寫入該第二儲存單元為該多階儲存單元的該第二儲存區塊中;當該環境溫度落在超過該預定溫度範圍之外的一第三溫度區間時,該處理電路(122)選擇複數個資料編程模式中之一第三資料編程模式來將資料寫入該第二儲存單元為該單階儲存單元的該第二儲存區塊中;該第三溫度區間係不同於二溫度區間,以及該第二溫度區間係不同於該第一溫度區間。 The flash memory controller (120) according to claim 2, wherein when the ambient temperature falls within a first temperature interval that exceeds the predetermined temperature range, the processing circuit (122) Select one of the plurality of data programming modes in the first data programming mode to write data into the second storage block where the second storage unit is the tertiary storage unit; when the ambient temperature falls below the When a second temperature interval outside the predetermined temperature range, the processing circuit (122) selects a second data programming mode among the plurality of data programming modes to write data into the second storage unit as the multi-level storage unit In the second storage block; when the ambient temperature falls within a third temperature range that exceeds the predetermined temperature range, the processing circuit (122) selects one of the plurality of data programming modes for the third data programming mode to Write data into the second storage block where the second storage unit is the single-stage storage unit; the third temperature interval is different from the second temperature interval, and the second temperature interval is different from the first temperature interval . 如請求項3所述的快閃記憶體控制器(120),其中,該第一資料編程模式係一虛擬的三位元資料編程模式,該第二資料編程模式係一虛擬的二位元資料編程模式及該第三資料編程模式係一一位元資料編程模式。 The flash memory controller (120) according to claim 3, wherein the first data programming mode is a virtual three-bit data programming mode and the second data programming mode is a virtual two-bit data programming The programming mode and the third data programming mode are one-bit data programming modes. 如請求項1所述的快閃記憶體控制器(120),另包含:一電源管理電路(110),耦接於該溫度偵測電路(121)及該處理電路(122),設置成可分別提供一第一電源(P3)及一第二電源(P4)至該溫度偵測電路(121)及該處理電路(122)。 The flash memory controller (120) according to claim 1, further comprising: a power management circuit (110), coupled to the temperature detection circuit (121) and the processing circuit (122), configured to be A first power supply (P3) and a second power supply (P4) are provided to the temperature detection circuit (121) and the processing circuit (122), respectively. 如請求項1所述的快閃記憶體控制器(120),其中,該溫度偵測電路(121)包含:一溫度偵測單元(123),設置成可偵測該快閃記憶體控制器(120)所在的該環境溫度;以及一控制單元(124),耦接於該溫度偵測單元(123),設置成可判斷該環境溫度是否超過該預定溫度範圍,當該環境溫度超過該預定溫度範圍時,該控制單元(124)產生該控制信號(Sc)至該處理電路(122)。 The flash memory controller (120) according to claim 1, wherein the temperature detection circuit (121) includes: a temperature detection unit (123) configured to detect the flash memory controller (120) the ambient temperature where it is located; and a control unit (124), coupled to the temperature detection unit (123), configured to determine whether the ambient temperature exceeds the predetermined temperature range when the ambient temperature exceeds the predetermined In the temperature range, the control unit (124) generates the control signal (Sc) to the processing circuit (122). 一種快閃記憶體控制器(120),包含: 一溫度偵測電路(121),設置成可偵測一環境溫度,當該環境溫度超過一預定溫度範圍時,該溫度偵測電路(121)可產生一控制信號(Sc);以及一處理電路(122),耦接於該溫度偵測電路(121),設置成可在該環境溫度落在一預定溫度範圍內時,利用一預定資料編程模式來編程待寫入一快閃記憶體(130)的資料,並將編程後的資料寫入該快閃記憶體(130)中的一第一儲存區塊;其中,在該環境溫度超過該預定溫度範圍時,該處理電路(122)還設置成將已儲存在該第一儲存區塊中的資料讀出,並依據該控制信號(Sc)來選擇複數個資料編程模式中之一資料編程模式來重新編程該第一儲存區塊中的資料,以及將重新編程後的資料寫入該快閃記憶體(130)中的一第二儲存區塊;其中該第一儲存區塊的一第一儲存單元係以一第一位元數為儲存單位,該第二儲存區塊的一第二儲存單元係以一第二位元數為儲存單位,以及該第一位元數係大於該第二位元數。 A flash memory controller (120), including: A temperature detection circuit (121) configured to detect an ambient temperature, and when the ambient temperature exceeds a predetermined temperature range, the temperature detection circuit (121) can generate a control signal (Sc); and a processing circuit (122), coupled to the temperature detection circuit (121), configured to program a flash memory to be written to using a predetermined data programming mode when the ambient temperature falls within a predetermined temperature range (130) ), and write the programmed data to a first storage block in the flash memory (130); wherein, when the ambient temperature exceeds the predetermined temperature range, the processing circuit (122) is also set Cheng reads the data stored in the first storage block, and selects one of the plurality of data programming modes according to the control signal (Sc) to reprogram the data in the first storage block And writing the reprogrammed data into a second storage block in the flash memory (130); wherein a first storage unit of the first storage block is stored with a first number of bits Unit, a second storage unit of the second storage block uses a second bit number as the storage unit, and the first bit number is greater than the second bit number. 如請求項7所述的快閃記憶體控制器(120),其中,該第一儲存單元為四階儲存單元,該第二儲存單元為單階儲存單元、虛擬多階儲存單元及虛擬三階儲存單元中之一。 The flash memory controller (120) according to claim 7, wherein the first storage unit is a fourth-level storage unit, and the second storage unit is a single-level storage unit, a virtual multi-level storage unit, and a virtual third-level storage unit One of the storage units. 如請求項7所述的快閃記憶體控制器(120),其中,該溫度偵測電路(121)包含:一溫度偵測單元(123),設置成可偵測該快閃記憶體控制器(120)的該環境溫度;以及一控制單元(124),耦接於該溫度偵測單元(123),設置成可判斷該環境溫度是否超過該預定溫度範圍,當該環境溫度超過該預定溫度範圍時,該控制單元(124)產生該控制信號(Sc)至該處理電路(122)。 The flash memory controller (120) according to claim 7, wherein the temperature detection circuit (121) includes: a temperature detection unit (123) configured to detect the flash memory controller (120) the ambient temperature; and a control unit (124), coupled to the temperature detection unit (123), configured to determine whether the ambient temperature exceeds the predetermined temperature range when the ambient temperature exceeds the predetermined temperature In the range, the control unit (124) generates the control signal (Sc) to the processing circuit (122). 如請求項7所述的快閃記憶體控制器(120),另包含: 一電源管理電路(110),耦接於該溫度偵測電路(121)及該處理電路(122),設置成可提供一第一電源(P1)至該溫度偵測電路(121)及依據該控制信號(Sc)以選擇性地提供一第二電源(P2)至該處理電路(122)。 The flash memory controller (120) according to claim 7, further comprising: A power management circuit (110), coupled to the temperature detection circuit (121) and the processing circuit (122), is configured to provide a first power supply (P1) to the temperature detection circuit (121) and according to the The control signal (Sc) selectively provides a second power source (P2) to the processing circuit (122).
TW108112175A 2019-04-08 2019-04-08 Flash memory controller TWI685845B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108112175A TWI685845B (en) 2019-04-08 2019-04-08 Flash memory controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108112175A TWI685845B (en) 2019-04-08 2019-04-08 Flash memory controller

Publications (2)

Publication Number Publication Date
TWI685845B true TWI685845B (en) 2020-02-21
TW202038235A TW202038235A (en) 2020-10-16

Family

ID=70413604

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108112175A TWI685845B (en) 2019-04-08 2019-04-08 Flash memory controller

Country Status (1)

Country Link
TW (1) TWI685845B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015048125A1 (en) * 2013-09-27 2015-04-02 Intel Corporation Flash memory system endurance improvement using temperature based nand settings
US20150310938A1 (en) * 2014-04-25 2015-10-29 Seagate Technology Llc Temperature Tracking to Manage Threshold Voltages in a Memory
US20180121131A1 (en) * 2016-08-09 2018-05-03 Apple Inc. Systems and methods for managing non-volatile memory based on temperature
US20180293009A1 (en) * 2016-03-04 2018-10-11 Western Digital Technologies, Inc. Temperature variation compensation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015048125A1 (en) * 2013-09-27 2015-04-02 Intel Corporation Flash memory system endurance improvement using temperature based nand settings
US20150092488A1 (en) * 2013-09-27 2015-04-02 Yogesh Wakchaure Flash memory system endurance improvement using temperature based nand settings
US20150310938A1 (en) * 2014-04-25 2015-10-29 Seagate Technology Llc Temperature Tracking to Manage Threshold Voltages in a Memory
US20180293009A1 (en) * 2016-03-04 2018-10-11 Western Digital Technologies, Inc. Temperature variation compensation
US20180121131A1 (en) * 2016-08-09 2018-05-03 Apple Inc. Systems and methods for managing non-volatile memory based on temperature

Also Published As

Publication number Publication date
TW202038235A (en) 2020-10-16

Similar Documents

Publication Publication Date Title
US10460775B2 (en) Asynchronous/synchronous interface
CN107799149B (en) Data storage device and operation method thereof
CN107123441B (en) Data storage device and operation method thereof
KR101563647B1 (en) Memory system and data processing method thereof
US10579518B2 (en) Memory management method and storage controller
KR101949987B1 (en) Data storage device and operating method thereof
KR20150109793A (en) Method of operating nonvolatile memory device and nonvolatile memory device using the same
US10956087B2 (en) Memory controller having temperature dependent data program scheme and related method
US9489143B2 (en) Method for accessing flash memory and associated controller and memory device
US8867283B2 (en) Semiconductor memory device, operating method thereof, and data storage apparatus including the same
CN103137197A (en) Semiconductor memory device, reading method thereof, and data storage device
CN108932958A (en) Semiconductor device and storage system with input buffer circuit
TWI486765B (en) Memory management method, memory controller and memory storage device using the same
US9728264B2 (en) Nonvolatile memory device, operating method thereof, and data storage device including the same
TWI526818B (en) Method of enabling sleep mode, memory control circuit unit and storage appartus
KR20140031551A (en) Nonvolatile memory device and data storage device including the same
TWI685845B (en) Flash memory controller
TWI619015B (en) Memory controller and memory control method
CN107545918B (en) Memory control circuit unit, memory device and reference voltage generation method
TWI512623B (en) Method of enabling sleep mode, memory control circuit unit and storage apparatus
CN110795366B (en) Data storage device and operation method thereof
US10726938B2 (en) Data storage device and operating method thereof
TWI600017B (en) Memory control circuit unit, memory storage device and reference voltage generation method