TWI615847B - Solid state storage device and data processing method thereof - Google Patents

Solid state storage device and data processing method thereof Download PDF

Info

Publication number
TWI615847B
TWI615847B TW105104645A TW105104645A TWI615847B TW I615847 B TWI615847 B TW I615847B TW 105104645 A TW105104645 A TW 105104645A TW 105104645 A TW105104645 A TW 105104645A TW I615847 B TWI615847 B TW I615847B
Authority
TW
Taiwan
Prior art keywords
data
invalid
error
voltage
predetermined
Prior art date
Application number
TW105104645A
Other languages
Chinese (zh)
Other versions
TW201730891A (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 TW105104645A priority Critical patent/TWI615847B/en
Publication of TW201730891A publication Critical patent/TW201730891A/en
Application granted granted Critical
Publication of TWI615847B publication Critical patent/TWI615847B/en

Links

Landscapes

  • Read Only Memory (AREA)

Abstract

一種固態儲存裝置的資料處理方法,該固態儲存裝置包含一非揮發記憶體,該非揮發記憶體具有至少一資料區段。該資料處理方法包括:依據一預定條件判斷儲存於該資料區段中的一資料是否為無效資料。其中,對該資料區段施加至少一電壓,並讀取該資料區段中對應該電壓的一記憶胞導通個數,其中該電壓預定對應於一預定個數值;以及依據該記憶胞導通個數與該預定個數值的關係是否滿足該預定條件來判斷該資料是否為無效資料。 A data processing method for a solid state storage device, the solid state storage device comprising a non-volatile memory having at least one data segment. The data processing method includes: determining whether a piece of data stored in the data section is invalid according to a predetermined condition. Wherein, at least one voltage is applied to the data segment, and a number of memory cells corresponding to the voltage in the data segment is read, wherein the voltage is predetermined to correspond to a predetermined number; and the number of cells is turned on according to the memory cell Whether the relationship with the predetermined value satisfies the predetermined condition to determine whether the material is invalid data.

Description

固態儲存裝置及其資料處理方法 Solid state storage device and data processing method thereof

本發明是有關於一種固態儲存裝置,且特別是有關於一種固態儲存裝置及其資料處理方法。 The present invention relates to a solid state storage device, and more particularly to a solid state storage device and a data processing method thereof.

眾所周知,固態儲存裝置(Solid State Device,SSD)使用非揮發記憶體(non-volatile memory)為主要儲存元件。也就是說,當資料寫入非揮發記憶體後,一旦系統電源關閉,資料仍保存在固態儲存裝置中。 Solid state devices (SSDs) are known to use non-volatile memory as the primary storage component. That is to say, when the data is written to the non-volatile memory, once the system power is turned off, the data is still stored in the solid-state storage device.

當讀取非揮發記憶體中的儲存資料時,儲存的資料若發生一定範圍內的錯誤率,則可以通過錯誤回復(error recover)程序將資料回復。上述的錯誤狀況是指儲存資料是被完整的寫入非揮發記憶體中,但因非揮發記憶體的儲存特性,例如:儲存電子的流失等,使儲存的資料產生錯誤。此種因素所造成的資料錯誤大多會落在一定的錯誤率範圍內,且由於儲存資料是被完整的寫入非揮發記憶體中,因此可通過錯誤回復程序將資料回復。 When reading the stored data in the non-volatile memory, if the stored data has a certain range of error rate, the data can be recovered by an error recovery procedure. The above error condition means that the stored data is completely written into the non-volatile memory, but the storage characteristics of the non-volatile memory, such as the loss of stored electrons, cause errors in the stored data. Most of the data errors caused by such factors will fall within a certain error rate, and since the stored data is completely written into the non-volatile memory, the data can be recovered through the error response procedure.

然而,若在寫入時因為錯誤的寫入或抹除程序而產生無效資料時,由於此種無效資料代表儲存在非揮發記憶體中的資料並不完整,因此無法通過錯誤回復程序來回復資料。再者,當讀取非揮發記憶體中的儲存資料時,一般並無法判定讀取的資料是否為無效資料,因此,一旦發現讀取的資料有錯誤時,則會直接進入錯誤回復程序,並試圖回復資料。 However, if invalid data is generated during writing due to an erroneous write or erase procedure, since the invalid data represents that the data stored in the non-volatile memory is incomplete, the data cannot be replied by the error reply procedure. . Moreover, when reading the stored data in the non-volatile memory, it is generally impossible to determine whether the read data is invalid data. Therefore, once the read data is found to be in error, it will directly enter the error recovery program, and Trying to reply to the information.

然而,如上所述,無效資料並無法通過錯誤回復程序來回復,因此錯誤回復程序會花費相當多的時間來處理無效資料,但最終仍無法回復資料,如此將耗費相當多的時間,造成固態儲存裝置整體的讀寫效率下降。 However, as mentioned above, invalid data cannot be replied by the error response procedure, so the error replies will take a considerable amount of time to process the invalid data, but in the end it will not be able to reply to the data, which will take a considerable amount of time, resulting in solid storage. The reading and writing efficiency of the entire device is degraded.

本發明有關於一種固態儲存裝置及其資料處理方法,通過無效資料的判斷來提高固態儲存裝置的存取效率。 The invention relates to a solid-state storage device and a data processing method thereof, which improve the access efficiency of the solid-state storage device by determining the invalid data.

根據本發明的第一方面,提出一種固態儲存裝置的資料處理方法,該固態儲存裝置包含一非揮發記憶體,該非揮發記憶體具有至少一資料區段,該資料區段包含複數個記憶胞,該資料處理方法包括:依據一預定條件判斷儲存於該資料區段中的一資料是否為無效資料。其中,對該資料區段施加至少一電壓,並讀取該資料區段中對應該電壓的一記憶胞導通個數,其中該電壓預定對應於一預定個數值;以及依據該記憶胞導通個數與該預定個數值的關係是否滿足該預定條件來判斷該資料是否為無效 資料。 According to a first aspect of the present invention, a data processing method for a solid-state storage device is provided. The solid-state storage device includes a non-volatile memory having at least one data segment, the data segment including a plurality of memory cells. The data processing method includes: determining whether a piece of data stored in the data section is invalid according to a predetermined condition. Wherein, at least one voltage is applied to the data segment, and a number of memory cells corresponding to the voltage in the data segment is read, wherein the voltage is predetermined to correspond to a predetermined number; and the number of cells is turned on according to the memory cell Whether the relationship with the predetermined value satisfies the predetermined condition to determine whether the data is invalid data.

根據本發明的第二方面,提出一種固態儲存裝置,包括:一非揮發記憶體,具有至少一資料區段,該資料區段包含複數個記憶胞;以及一控制器。控制器包括:一無效判斷單元,用以依據一預定條件判斷儲存於該資料區段中的一資料是否為無效資料;以及一錯誤回復單元,用以執行一錯誤回復(Error Recover)程序。其中,若該無效判斷單元判斷該資料為無效資料,且該資料發生讀取錯誤時,該錯誤回復單元不針對該資料執行該錯誤回復程序。 According to a second aspect of the present invention, a solid state storage device is provided, comprising: a non-volatile memory having at least one data segment, the data segment comprising a plurality of memory cells; and a controller. The controller includes: an invalid determination unit configured to determine whether a material stored in the data section is invalid according to a predetermined condition; and an error response unit to execute an error response (Error Recover) procedure. Wherein, if the invalidation determining unit determines that the data is invalid data, and the data has a reading error, the error replying unit does not execute the error replying procedure for the data.

根據本發明的第三方面,提出一種固態儲存裝置的資料處理方法,該固態儲存裝置包含一非揮發記憶體,該非揮發記憶體具有至少一資料區段,該資料區段包含複數個記憶胞,該資料處理方法包括:依據一預定條件判斷儲存於該資料區段中的一資料是否為無效資料;若判斷該資料為有效資料,且該資料發生讀取錯誤時,針對該資料執行一錯誤回復(Error Recover)程序;以及若判斷該資料為無效資料,且該資料發生讀取錯誤時,不針對該資料執行該錯誤回復程序。 According to a third aspect of the present invention, a data processing method for a solid-state storage device is provided. The solid-state storage device includes a non-volatile memory having at least one data segment, the data segment including a plurality of memory cells. The data processing method comprises: determining whether a material stored in the data section is invalid according to a predetermined condition; and if the data is determined to be valid data, and the data is read incorrectly, performing an error reply for the data (Error Recover) program; and if the data is judged to be invalid, and the data is read incorrectly, the error replying program is not executed for the data.

為了對本發明上述及其他方面有更佳的瞭解,下文特舉較佳實施例,並配合所附圖式,作詳細說明如下: In order to better understand the above and other aspects of the present invention, the preferred embodiments are described below, and in conjunction with the drawings, the detailed description is as follows:

300‧‧‧固態儲存裝置 300‧‧‧Solid storage device

310‧‧‧非揮發記憶體 310‧‧‧ Non-volatile memory

320‧‧‧控制器 320‧‧‧ Controller

322‧‧‧讀取判斷單元 322‧‧‧Reading unit

324‧‧‧無效判斷單元 324‧‧‧ invalid judgment unit

328‧‧‧錯誤回復單元 328‧‧‧Error response unit

S410、S420、S440‧‧‧流程步驟 S410, S420, S440‧‧‧ process steps

S510~S550‧‧‧流程步驟 S510~S550‧‧‧ Process steps

D‧‧‧預設誤差 D‧‧‧Preset error

P0~P3、P0’~P2’‧‧‧記憶胞導通個數 P0~P3, P0’~P2’‧‧‧ memory cell conduction number

T0~T3‧‧‧預定個數值 T0~T3‧‧‧Predetermined values

V0~V3‧‧‧電壓 V0~V3‧‧‧ voltage

第1圖繪示對非揮發記憶體的資料區段施加不同讀取電壓與對應的記憶胞導通個數的分佈圖。 FIG. 1 is a diagram showing a distribution of different read voltages and corresponding number of memory cell conductions to a data segment of a non-volatile memory.

第2圖繪示對儲存有效資料的資料區段以及儲存無效資料的資料區段施加不同讀取電壓與其對應的記憶胞導通個數的分佈圖。 FIG. 2 is a diagram showing a distribution of different reading voltages and corresponding number of memory cell conductions for a data section storing valid data and a data section storing invalid data.

第3圖繪示依照本發明一實施例的固態儲存裝置的示意圖。 FIG. 3 is a schematic diagram of a solid state storage device in accordance with an embodiment of the present invention.

第4圖繪示依照本發明一實施例的資料處理方法的流程圖。 FIG. 4 is a flow chart of a data processing method according to an embodiment of the invention.

第5圖繪示依照本發明一實施例的判斷資料是否為無效資料的流程圖。 FIG. 5 is a flow chart showing whether data is invalid data according to an embodiment of the invention.

第6圖繪示依照本發明一實施例施加一特定讀取電壓於資料區段,其有效資料及無效資料的記憶胞導通個數與一預定個數值的關係示意圖。 FIG. 6 is a schematic diagram showing the relationship between the number of memory cells of a valid data and invalid data and a predetermined value by applying a specific read voltage to a data section according to an embodiment of the invention.

第7圖繪示依照本發明另一實施例施加多個讀取電壓於資料區段,其有效資料及無效資料的記憶胞導通個數與對應的預定個數值的關係示意圖。 FIG. 7 is a schematic diagram showing the relationship between the number of memory cells of the valid data and the invalid data and the corresponding predetermined values by applying a plurality of read voltages to the data section according to another embodiment of the present invention.

第8圖繪示本發明設定預定條件的另一實施例示意圖。 FIG. 8 is a schematic view showing another embodiment of setting predetermined conditions of the present invention.

以下提出各種實施例進行詳細說明,其利用對非揮發記憶體的資料區段中的複數個記憶胞(cell)施加電壓,並得到此資料區段中的記憶胞的導通個數,進而判斷此資料區段中的資料是否為無效資料。然而,實施例僅用以作為範例說明,並不會限縮本發明欲保護之範圍。此外,實施例中的圖式省略部份元 件,以清楚顯示本發明的技術特點。 Various embodiments are described below in detail, which utilizes voltages applied to a plurality of memory cells in a data section of a non-volatile memory, and obtains the number of conductive cells in the data section, thereby determining the number. Whether the data in the data section is invalid. However, the examples are for illustrative purposes only and are not intended to limit the scope of the invention. In addition, the figure in the embodiment omits part of the element In order to clearly show the technical features of the present invention.

請參照第1圖,其繪示對非揮發記憶體的資料區段施加不同讀取電壓與對應的記憶胞導通個數的分佈圖。非揮發記憶體可分為多個資料區段,例如資料區段可為非揮發記憶體的一字元線,亦可為非揮發記憶體的複數條字元線,且資料區段包括了複數個記憶胞,而記憶胞可以為儲存1位元資料的單階儲存單元(single-level cell,SLC)、儲存2位元資料的多階儲存單元(multi-level cell,MLC)、儲存3位元資料的三階儲存單元(triple-level cell,TLC)或其他類型的儲存單元。 Please refer to FIG. 1 , which shows a distribution diagram of applying different read voltages and corresponding number of memory cells to the data segment of the non-volatile memory. The non-volatile memory can be divided into a plurality of data segments, for example, the data segment can be a word line of non-volatile memory, or a plurality of word lines of non-volatile memory, and the data segment includes a plurality of data segments. Memory cells, which can be a single-level cell (SLC) that stores 1-bit data, a multi-level cell (MLC) that stores 2-bit data, and a 3-bit memory cell. A triple-level cell (TLC) or other type of storage unit of metadata.

第1圖繪示的分佈圖的縱軸表示被施加特定讀取電壓的記憶胞的導通個數,橫軸表示施加於記憶胞的讀取電壓。由第1圖可以得知,當由小到大漸進地施加讀取電壓於非揮發記憶體的資料區段時,隨著施加的讀取電壓慢慢變大,此資料區段中會有愈來愈多的記憶胞被導通,當施加的讀取電壓夠大時,此資料區段中的所有記憶胞都會被導通。 The vertical axis of the profile shown in Fig. 1 indicates the number of conduction of the memory cell to which the specific read voltage is applied, and the horizontal axis indicates the read voltage applied to the memory cell. It can be seen from Fig. 1 that when the read voltage is applied to the data section of the non-volatile memory from small to large progressively, as the applied read voltage gradually becomes larger, there will be more in the data section. The more memory cells are turned on, and when the applied read voltage is large enough, all the memory cells in this data segment are turned on.

在讀寫或抹除非揮發記憶體的資料的過程中,若發生中斷或其他因素影響,將可能產生無效資料,而使儲存於資料區段的資料為無效資料。無效資料的造成原因,舉例來說,可以是在對資料區段寫入資料時,寫入資料步驟發生中斷而沒有完成,造成資料寫入不完整,而使資料區段所儲存的資料為無效資料,或於抹除資料區段的資料時,抹除資料步驟發生中斷而沒有完成,造成資料抹除不完整,使資料區段所儲存的資料為無效資 料。因此,儲存於資料區段中的資料,可能會是無效資料。 In the process of reading or writing or wiping the data of the volatilized memory, if an interruption or other factors are affected, invalid data may be generated, and the data stored in the data section may be invalid. The cause of the invalid data, for example, may be that when the data is written to the data section, the step of writing the data is interrupted and not completed, resulting in incomplete data writing, and the data stored in the data section is invalid. When the data is erased or the data in the data section is erased, the step of erasing the data is interrupted and not completed, resulting in incomplete data erasure, so that the data stored in the data section is invalid. material. Therefore, the data stored in the data section may be invalid.

在本發明實施例中,有效資料是指儲存在非揮發記憶體中的資料內容是完整的,因此於讀取時,有效資料的錯誤可通過錯誤回復程序來回復。無效資料是指儲存在非揮發記憶體中的資料內容是不完整的,換句話說,原始資料已經遺失,因此無效資料無法通過錯誤回復程序來回復。 In the embodiment of the present invention, the valid data means that the content of the data stored in the non-volatile memory is complete, so that when reading, the error of the valid data can be replied by the error replying procedure. Invalid data means that the content of the data stored in non-volatile memory is incomplete. In other words, the original data has been lost, so invalid data cannot be replied by the error response procedure.

為了判斷儲存於資料區段中的資料是否為無效資料,本發明實施例通過儲存有效資料的資料區段以及儲存無效資料的資料區段,彼此之間所表現出來的物理特徵差異性來達成。在經過多次的測試後發現,當由小到大漸進地施加讀取電壓於非揮發記憶體的資料區段時,對應於儲存有效資料的資料區段以及儲存無效資料的資料區段所呈現出來的記憶胞導通個數的分佈曲線有很大的區別。 In order to determine whether the data stored in the data section is invalid data, the embodiment of the present invention achieves the difference in physical characteristics between the data sections storing the valid data and the data sections storing the invalid data. After many tests, it is found that when the reading voltage is applied to the data section of the non-volatile memory from small to large, the data section corresponding to the storage of the valid data and the data section storing the invalid data are presented. There is a big difference in the distribution curve of the number of memory cells that are coming out.

請參照第2圖,其繪示非揮發記憶體的資料區段分別儲存有效資料及無效資料時,對儲存有效資料的資料區段以及儲存無效資料的資料區段施加不同讀取電壓與其對應的記憶胞導通個數的分佈圖。縱軸表示被施加特定讀取電壓的記憶胞的導通個數,橫軸表示施加於記憶胞的讀取電壓,第2圖繪示兩種不同的分佈曲線,實線表示非揮發記憶體的資料區段儲存有效資料時,對其施加不同讀取電壓與對應的記憶胞導通個數的分佈曲線,虛線則表示非揮發記憶體的資料區段儲存無效資料時,對其施加不同讀取電壓與對應的記憶胞導通個數的分佈曲線。由第2 圖可以得知,在特定的讀取電壓範圍中,當分別施加適當的相同讀取電壓於儲存有效資料及無效資料的資料區段時,對應有效資料與無效資料所得到的記憶胞導通個數並不相同。換句話說,根據上述特性,可以通過施加適當的讀取電壓於資料區段,依據資料區段中的記憶胞導通個數來判斷資料區段所儲存的資料為有效資料或無效資料。 Please refer to FIG. 2, which shows that when the data section of the non-volatile memory stores the valid data and the invalid data respectively, different reading voltages are applied to the data section storing the valid data and the data section storing the invalid data. A distribution map of the number of memory cells. The vertical axis represents the number of conduction of the memory cell to which a specific read voltage is applied, the horizontal axis represents the read voltage applied to the memory cell, the second diagram shows two different distribution curves, and the solid line represents the data of the non-volatile memory. When a valid data is stored in a segment, a distribution curve of different read voltages and corresponding number of memory cells is applied, and a broken line indicates that when the data segment of the non-volatile memory stores invalid data, different read voltages are applied thereto. The corresponding distribution curve of the number of memory cells. By the second The figure shows that in a specific read voltage range, when the appropriate same read voltage is applied to the data section storing the valid data and the invalid data, the number of memory cells obtained by the corresponding valid data and the invalid data is obtained. Not the same. In other words, according to the above characteristics, the data stored in the data section can be judged to be valid data or invalid data according to the number of memory cells in the data section by applying an appropriate read voltage to the data section.

請參照第3圖,其繪示依據本發明一實施例的固態儲存裝置300的示意圖。固態儲存裝置300包括一非揮發記憶體310及一控制器320,且控制器320耦接於非揮發記憶體310,並用以控制非揮發記憶體310的資料存取及其他操作。非揮發記憶體310為固態儲存裝置300主要的資料儲存媒體。而在固態儲存裝置300外部,控制器320可通過外部匯流排與主機(未繪示)之間進行指令與資料的傳遞。 Please refer to FIG. 3, which illustrates a schematic diagram of a solid state storage device 300 in accordance with an embodiment of the present invention. The solid state storage device 300 includes a non-volatile memory 310 and a controller 320. The controller 320 is coupled to the non-volatile memory 310 and controls data access and other operations of the non-volatile memory 310. The non-volatile memory 310 is the primary data storage medium for the solid state storage device 300. Outside the solid state storage device 300, the controller 320 can transmit instructions and data through an external bus bar and a host (not shown).

控制器320用以執行各種控制程序或計算程序。舉例來說,控制器320可以是一晶片、晶片內的一電路區塊、一韌體電路、含有數個電子元件及導線的電路板或儲存複數組程式碼的一儲存媒體。在本實施例中,控制器320包括一讀取判斷單元322、一無效判斷單元324及一錯誤回復單元328。讀取判斷單元322用以判斷資料是否發生讀取錯誤。無效判斷單元324用以判斷資料是否為無效資料。錯誤回復單元328用以執行一錯誤回復(Error Recover)程序。其中,讀取判斷單元322、無效判斷單元324及錯誤回復單元328可以例如是一晶片、晶片內的一電路 區塊、一韌體電路、含有數個電子元件及導線的電路板或儲存複數組程式碼的一儲存媒體。 The controller 320 is operative to execute various control programs or calculation programs. For example, the controller 320 can be a wafer, a circuit block within the wafer, a firmware circuit, a circuit board containing a plurality of electronic components and wires, or a storage medium storing a complex array of code. In this embodiment, the controller 320 includes a read determination unit 322, an invalid determination unit 324, and an error recovery unit 328. The read determination unit 322 is configured to determine whether a data has a read error. The invalidation determining unit 324 is configured to determine whether the data is invalid data. The error response unit 328 is configured to execute an Error Recover program. The read determination unit 322, the invalidation determination unit 324, and the error recovery unit 328 can be, for example, a wafer, a circuit within the wafer. A block, a firmware circuit, a circuit board containing a plurality of electronic components and wires, or a storage medium storing a complex array of code.

接著,請參照第4圖,其繪示依據本發明一實施例的資料處理方法的流程圖。為了清楚說明上述各項元件的運作以及本發明實施例的固態儲存裝置的資料處理方法,以下是搭配一流程圖詳細說明如下。然而,本發明所屬技術領域中具有通常知識者均可瞭解,本發明實施例的資料處理方法並不侷限應用於第3圖的固態儲存裝置300,也不侷限於流程圖的各項步驟順序。 Next, please refer to FIG. 4, which is a flowchart of a data processing method according to an embodiment of the invention. In order to clearly explain the operation of the above various elements and the data processing method of the solid state storage device of the embodiment of the present invention, the following is a detailed description of the following flowchart. However, those skilled in the art to which the present invention pertains can understand that the data processing method of the embodiment of the present invention is not limited to the solid-state storage device 300 of FIG. 3, nor is it limited to the sequence of steps of the flowchart.

請同時參照第3圖及第4圖。根據本發明一實施例,在步驟S410中,控制器320的讀取判斷單元322可讀取非揮發記憶體310的資料區段,並判斷資料區段所儲存的資料是否發生讀取錯誤。在本發明實施例中,讀取判斷單元322可以利用例如錯誤校正碼(Error-Correcting Codes,ECC)、漢明碼(Hamming Codes)、BCH碼(BCH Codes)、里德索羅門碼(Reed-Solomon Codes)或相似錯誤判斷方法來對讀取的資料進行錯誤校正(Error Correction),並根據錯誤校正結果來判斷資料是否發生讀取錯誤。造成儲存的資料發生讀取錯誤的原因有很多。舉例來說,因為溫度或時間的環境因素而造成資料區段儲存的資料發生偏移或流失,因此在資料讀取時無法通過錯誤校正來回復正確資料而發生讀取錯誤。又或者因為在讀寫或抹除資料區段的操作過程中,發生操作中斷或操作不完全,造成儲存於資料區段的資料不完整,因而在資料讀取時同樣會無法通過錯誤校正來回復正確資 料而發生讀取錯誤。 Please refer to Figures 3 and 4 at the same time. According to an embodiment of the invention, in step S410, the read determination unit 322 of the controller 320 can read the data section of the non-volatile memory 310 and determine whether a data read by the data section has a read error. In the embodiment of the present invention, the read determination unit 322 can use, for example, Error-Correcting Codes (ECC), Hamming Codes, BCH codes, and Reed-Solomon. Codes) or similar error judgment method to perform error correction (Error Correction) on the read data, and judge whether the data has a read error according to the error correction result. There are many reasons for the read errors in the stored data. For example, due to environmental factors such as temperature or time, the data stored in the data section is shifted or lost. Therefore, when the data is read, the correct data cannot be recovered by error correction and a reading error occurs. Or because during the operation of reading or writing or erasing the data section, the operation interruption or the operation is incomplete, the data stored in the data section is incomplete, and the data can not be replied by error correction when the data is read. Correct capital A read error occurred.

在步驟S410中,當讀取的資料無法通過錯誤校正來回復正確資料時,讀取判斷單元322判斷資料區段所儲存的資料發生讀取錯誤。在步驟S410中,當讀取的資料可通過錯誤校正來回復正確資料時,讀取判斷單元322判斷資料區段所儲存的資料未發生讀取錯誤。此時,控制器320可得到正確的讀取資料。若此資料讀取是根據主機的讀取指令,則控制器320可將讀取出的正確資料傳送至主機。 In step S410, when the read data cannot be returned to the correct data by error correction, the read determination unit 322 determines that the data stored in the data section has a read error. In step S410, when the read data can be returned to the correct data by error correction, the read determination unit 322 determines that the data stored in the data section has not been read. At this time, the controller 320 can obtain the correct reading data. If the data reading is based on the read command of the host, the controller 320 can transmit the read correct data to the host.

接著,於步驟S420中,當讀取判斷單元322判斷資料區段所儲存的資料發生讀取錯誤時,無效判斷單元324進而依據一預定條件判斷此資料是否為無效資料。無效資料的造成原因,例如,在對資料區段寫入資料時,寫入步驟發生中斷而沒有完成,造成資料寫入不完整而使儲存於資料區段的資料為無效資料,或抹除資料區段儲存的資料時,抹除步驟發生中斷而沒有完成,造成資料抹除不完整而使儲存於資料區段的資料為無效資料。 Next, in step S420, when the reading determination unit 322 determines that the data stored in the data section has a reading error, the invalidation determining unit 324 further determines whether the data is invalid according to a predetermined condition. The reason for invalid data, for example, when writing data to the data section, the writing step is interrupted and not completed, resulting in incomplete data writing, making the data stored in the data section invalid, or erasing the data. When the data is stored in the section, the erasing step is interrupted and not completed, resulting in incomplete data erasing and invalidation of the data stored in the data section.

經過步驟S410以及步驟S420的判斷後,儲存的資料會被判斷出三種情況。第一種情況(步驟S410為否):資料區段所儲存的資料為有效資料,且資料讀取時未發生讀取錯誤。第二種情況(步驟S410為是且步驟S420為否):資料區段所儲存的資料為有效資料,但因為溫度或時間的環境因素而造成資料區段儲存的有效資料發生偏移或流失,因此在資料讀取時無法通過 錯誤校正來回復正確資料,進而發生讀取錯誤。第三種情況(步驟S410為是且步驟S420為是):資料區段所儲存的資料為無效資料,例如,因為在讀寫或抹除資料區段的操作過程中,發生操作中斷或操作不完全,造成資料區段儲存的資料不完整而為無效資料,因而發生資料讀取錯誤。 After the judgments of step S410 and step S420, the stored data is judged in three cases. The first case (No in step S410): the data stored in the data section is valid data, and no reading error occurs when the data is read. The second case (YES in step S410 and NO in step S420): the data stored in the data section is valid data, but the valid data stored in the data section is offset or lost due to environmental factors such as temperature or time. Therefore, it cannot pass when the data is read. Error correction to reply to the correct data, resulting in a read error. The third case (YES in step S410 and YES in step S420): the data stored in the data section is invalid data, for example, because the operation interruption or operation does not occur during the operation of reading or writing or erasing the data section. Completely, the data stored in the data section is incomplete and invalid, and data reading errors occur.

隨後,當無效判斷單元324依據預定條件判斷資料為無效資料時,控制器320結束此流程。若此資料讀取是根據主機的讀取指令,則控制器320可傳送一讀取錯誤結果至主機,表示此資料已無法讀取。而當無效判斷單元324依據預定條件判斷資料為有效資料時,在步驟440中,錯誤回復單元328則對此資料執行一錯誤回復(Error Recover)程序。在本發明實施例中,錯誤回復(Error Recover)程序不同於錯誤校正(Error Correction)。錯誤校正(Error Correction)例如是利用錯誤校正碼(Error-Correcting Codes,ECC)、漢明碼(Hamming Codes)、BCH碼(BCH Codes)、里德索羅門碼(Reed-Solomon Codes)或相似錯誤更正回復方法對讀取的資料進行錯誤校正。錯誤回復(Error Recover)程序則是利用不同的讀取條件來重新讀取資料。 Subsequently, when the invalidity determining unit 324 determines that the material is invalid according to the predetermined condition, the controller 320 ends the flow. If the data reading is based on the read command of the host, the controller 320 can transmit a read error result to the host, indicating that the data is unreadable. When the invalidity determining unit 324 determines that the data is valid according to the predetermined condition, in step 440, the error replying unit 328 executes an error response (Error Recover) procedure for the data. In the embodiment of the present invention, the Error Recover program is different from Error Correction. Error Correction is, for example, using Error-Correcting Codes (ECC), Hamming Codes, BCH Codes, Reed-Solomon Codes, or similar error corrections. The reply method performs error correction on the read data. The Error Recover program uses different reading conditions to re-read the data.

在本發明一實施例中,錯誤回復單元328可根據一重試表(Retry Table),使用不同的讀取條件重新讀取資料,直到可正確讀取資料而未發生讀取錯誤。讀取條件例如可以是不同的讀取電壓、不同的錯誤校正碼或是不同的錯誤校正方法。錯誤回復單元328可使用不同的讀取電壓重新讀取資料,或是將重新讀 取的資料通過不同的錯誤校正碼或是不同的錯誤校正方法進行錯誤校正,直到可正確讀取資料而未發生讀取錯誤。 In an embodiment of the invention, the error recovery unit 328 can re-read the data using different read conditions according to a Retry Table until the data can be read correctly without a read error. The reading conditions may be, for example, different read voltages, different error correction codes, or different error correction methods. The error recovery unit 328 can re-read the data using different read voltages, or will re-read The data obtained is corrected by different error correction codes or different error correction methods until the data can be read correctly without reading errors.

在本發明另一實施例中,控制器320可事先進行無效資料的判斷以決定是否進行資料讀取流程。具體而言,控制器320在欲讀取非揮發記憶體310的資料區段的儲存資料時,無效判斷單元324可先依據預定條件判斷儲存資料是否為無效資料。若儲存資料為無效資料時,控制器320可不進行資料區段的資料讀取流程。且若此資料讀取是根據主機的讀取指令,則控制器320可傳送一讀取錯誤結果至主機,表示此資料已無法讀取。相反地,若儲存資料為有效資料時,控制器320進行資料區段的資料讀取流程,即進行步驟S410及步驟S440。由於控制器320已事先進行無效資料的判斷(步驟S420),因此在進行資料區段的資料讀取流程時,無須再進行無效資料的判斷(步驟S420)。 In another embodiment of the present invention, the controller 320 may perform determination of invalid data in advance to decide whether to perform a data reading process. Specifically, when the controller 320 wants to read the stored data of the data section of the non-volatile memory 310, the invalidity determining unit 324 may first determine whether the stored data is invalid according to a predetermined condition. If the stored data is invalid, the controller 320 may not perform the data reading process of the data section. And if the data reading is based on the read command of the host, the controller 320 can transmit a read error result to the host, indicating that the data is unreadable. Conversely, if the stored data is valid data, the controller 320 performs a data reading process of the data section, that is, steps S410 and S440. Since the controller 320 has previously determined the invalidation data (step S420), it is not necessary to judge the invalidation data when the data reading process of the data section is performed (step S420).

請參照第5圖,其繪示判斷資料是否為無效資料的流程圖。在第4圖的步驟S420中,無效判斷單元324依據一預定條件判斷儲存於資料區段中的資料是否為無效資料。第5圖的步驟S510至步驟S550進一步說明第4圖的步驟S420判斷資料是否為無效資料的流程。在步驟S510中,無效判斷單元324對資料區段施加至少一讀取電壓,並在步驟S520中,無效判斷單元324讀取此資料區段中對應讀取電壓的記憶胞導通個數。接著,在步驟S530中,無效判斷單元324依據對應的記憶胞導通個數與其對應讀取電壓的一預定個數值的關係是否滿足一預定 條件,來判斷此資料區段儲存的資料為無效資料或有效資料。 Please refer to FIG. 5, which shows a flow chart for judging whether the data is invalid data. In step S420 of Fig. 4, the invalidation determining unit 324 determines whether the material stored in the data section is invalid data based on a predetermined condition. Steps S510 to S550 of Fig. 5 further explain the flow of determining whether the material is invalid data in step S420 of Fig. 4. In step S510, the invalidity determining unit 324 applies at least one read voltage to the data section, and in step S520, the invalidity determining unit 324 reads the number of memory cells that are corresponding to the read voltage in the data section. Next, in step S530, the invalidity determining unit 324 determines whether the relationship between the number of corresponding memory cells and a predetermined value of the corresponding read voltage satisfies a predetermined one. Conditions to determine whether the data stored in this data section is invalid or valid.

請參照第6圖。第6圖繪示依本發明一實施例施加一特定讀取電壓於非揮發記憶體的資料區段,其有效資料及無效資料的記憶胞導通個數與一預定個數值的關係示意圖。縱軸表示被施加特定讀取電壓的記憶胞導通個數,橫軸表示施加於記憶胞的讀取電壓。在此實施例中,在步驟S510中,無效判斷單元324對資料區段施加一讀取電壓V0,並在步驟S520中,無效判斷單元324讀取此資料區段中的記憶胞導通個數。接著,在步驟S530中,無效判斷單元324依據此導通個數與對應讀取電壓V0的一預定個數值T0的關係是否滿足預定條件,來判斷此資料區段儲存的資料為無效資料或有效資料。在第6圖的例子中,在施加讀取電壓V0下,無效資料的記憶胞導通個數P0大於預定個數值T0,而有效資料的記憶胞導通個數P0’小於預定個數值T0。 Please refer to Figure 6. FIG. 6 is a schematic diagram showing the relationship between the effective data and the number of memory cells of the invalid data and a predetermined value according to an embodiment of the present invention for applying a specific read voltage to the data segment of the non-volatile memory. The vertical axis represents the number of memory cell conduction to which a specific read voltage is applied, and the horizontal axis represents the read voltage applied to the memory cell. In this embodiment, in step S510, the invalidity determining unit 324 applies a read voltage V0 to the data section, and in step S520, the invalidity determining unit 324 reads the number of memory cells in the data section. Next, in step S530, the invalidity determining unit 324 determines whether the data stored in the data section is invalid data or valid data according to whether the relationship between the number of conductions and a predetermined value T0 of the corresponding read voltage V0 satisfies a predetermined condition. . In the example of Fig. 6, at the application of the read voltage V0, the memory cell conduction number P0 of the invalid data is larger than the predetermined value T0, and the memory cell conduction number P0' of the valid data is smaller than the predetermined value T0.

因此,在第6圖的例子中,預定條件可設定為導通個數大於預定個數值。在施加讀取電壓V0下,若導通個數與預定個數值T0的關係滿足預定條件,即導通個數大於預定個數值T0,則在步驟540中,無效判斷單元324判斷此資料區段儲存的資料為無效資料。相反地,在施加讀取電壓V0下,若導通個數與預定個數值T0的關係未滿足預定條件,即導通個數小於預定個數值T0,則在步驟550中,無效判斷單元324判斷此資料區段儲存的資料為有效資料。 Therefore, in the example of Fig. 6, the predetermined condition can be set such that the number of conductions is greater than a predetermined number. When the read voltage V0 is applied, if the relationship between the number of turns and the predetermined value T0 satisfies a predetermined condition, that is, the number of turns is greater than the predetermined value T0, then in step 540, the invalidity determining unit 324 determines that the data segment is stored. The information is invalid. Conversely, when the read voltage V0 is applied, if the relationship between the number of turns and the predetermined value T0 does not satisfy the predetermined condition, that is, the number of turns is less than the predetermined value T0, then in step 550, the invalidity determining unit 324 determines the data. The information stored in the section is valid.

請參照第7圖,其依本發明另一實施例施加多個讀 取電壓於非揮發記憶體的資料區段,其有效資料及無效資料的記憶胞導通個數與對應的預定個數值的關係示意圖。縱軸表示被施加特定讀取電壓的記憶胞導通個數,橫軸表示施加於記憶胞的讀取電壓。在此實施例中,無效判斷單元324對非揮發記憶體的資料區段分別施加第一讀取電壓V1及第二讀取電壓V2(步驟S510),並讀取其對應的第一記憶胞導通個數及第二記憶胞導通個數(步驟S520)。在此實施例中,第一讀取電壓V1及第二讀取電壓V2分別具有對應的第一預定個數值T1及第二預定個數值T2,無效判斷單元324會依據對應第一讀取電壓V1的第一記憶胞導通個數與第一預定個數值T1的關係,以及對應第二讀取電壓V2的第二記憶胞導通個數與第二預定個數值T2的關係是否滿足預定條件,來判斷此資料區段儲存的資料為無效資料或有效資料。 Please refer to FIG. 7, which applies multiple readings according to another embodiment of the present invention. Taking the voltage in the non-volatile memory data section, the relationship between the effective data and the number of memory cells of the invalid data and the corresponding predetermined values. The vertical axis represents the number of memory cell conduction to which a specific read voltage is applied, and the horizontal axis represents the read voltage applied to the memory cell. In this embodiment, the invalidity determining unit 324 applies the first read voltage V1 and the second read voltage V2 to the data section of the non-volatile memory, respectively (step S510), and reads the corresponding first memory cell conduction. The number and the number of second memory cells are turned on (step S520). In this embodiment, the first read voltage V1 and the second read voltage V2 respectively have a corresponding first predetermined value T1 and a second predetermined value T2, and the invalid determination unit 324 is configured according to the corresponding first read voltage V1. Judging whether the relationship between the number of first memory cells and the first predetermined value T1 and whether the relationship between the number of second memory cells corresponding to the second read voltage V2 and the second predetermined value T2 satisfies a predetermined condition The data stored in this data section is invalid or valid.

在第7圖的例子中,在施加第一讀取電壓V1下,無效資料的記憶胞導通個數P1小於第一預定個數值T1,而有效資料的記憶胞導通個數P1’大於第一預定個數值T1;而在施加第二讀取電壓V2下,無效資料的記憶胞導通個數P2大於第二預定個數值T2,而有效資料的記憶胞導通個數P2’小於第二預定個數值T2。因此,在第7圖的例子中,預定條件可設定為對應第一讀取電壓V1的第一記憶胞導通個數小於第一預定個數值T1,且對應第二讀取電壓V2的第二記憶胞導通個數大於第二預定個數值T2。在分別施加讀取電壓V1及V2下,若對應的導通個數與預定 個數值的關係滿足上述的預定條件,則在步驟540中,無效判斷單元324判斷此資料區段儲存的資料為無效資料。相反地,在分別施加讀取電壓V1及V2下,若對應的導通個數與預定個數值的關係未滿足上述的預定條件,則在步驟550中,無效判斷單元324判斷此資料區段儲存的資料為有效資料。 In the example of FIG. 7, when the first read voltage V1 is applied, the memory cell conduction number P1 of the invalid data is smaller than the first predetermined value T1, and the memory cell conduction number P1' of the valid data is greater than the first predetermined. a value T1; and when the second read voltage V2 is applied, the memory cell conduction number P2 of the invalid data is greater than the second predetermined value T2, and the memory cell conduction number P2' of the valid data is less than the second predetermined value T2 . Therefore, in the example of FIG. 7, the predetermined condition may be set such that the first memory cell corresponding to the first read voltage V1 is smaller than the first predetermined value T1, and the second memory corresponding to the second read voltage V2 The number of cell conduction is greater than the second predetermined value T2. Under the respective application of the read voltages V1 and V2, if the corresponding number of conductions is predetermined If the relationship of the values satisfies the predetermined condition described above, then in step 540, the invalidity determining unit 324 determines that the data stored in the data section is invalid. On the contrary, when the read voltages V1 and V2 are respectively applied, if the relationship between the corresponding number of turns and the predetermined value does not satisfy the predetermined condition, then in step 550, the invalidity determining unit 324 determines that the data segment is stored. The information is valid.

由於無效資料的造成原因有很多種,因此在第6圖及第7圖的例子中,儲存有效資料的資料區段以及儲存無效資料的資料區段在施加不同讀取電壓下,所得出的記憶胞導通個數的分佈曲線並不相同。在本發明一實施例中,可針對不同的有效資料及無效資料的記憶胞導通個數的分佈曲線各自設定對應的讀取電壓、預定個數值及預定條件。其中,讀取電壓可為單一讀取電壓或多個讀取電壓,其取決於分佈曲線的特性。在本發明另一實施例中,可通過分析來統合不同的有效資料及無效資料的記憶胞導通個數的分佈曲線,並設定可滿足多種分佈曲線特性的讀取電壓,其取決於統合後的分佈曲線特性。 Since there are many reasons for invalid data, in the examples of FIG. 6 and FIG. 7, the data section storing the valid data and the data section storing the invalid data are subjected to different reading voltages, and the resulting memory is obtained. The distribution curve of the number of cell conduction is not the same. In an embodiment of the present invention, a corresponding read voltage, a predetermined value, and a predetermined condition may be set for each of the effective data and the distribution curve of the number of memory cells of the invalid data. Wherein, the read voltage may be a single read voltage or a plurality of read voltages, depending on the characteristics of the distribution curve. In another embodiment of the present invention, the distribution curve of the number of memory cells of different valid data and invalid data can be integrated by analysis, and the read voltage that satisfies the characteristics of various distribution curves can be set, which depends on the integrated Distribution curve characteristics.

請參照第8圖,其繪示本發明設定預定條件的另一實施例示意圖。縱軸表示被施加特定讀取電壓的記憶胞導通個數,橫軸表示施加於記憶胞的讀取電壓。在此實施例中,無效判斷單元324設定有一預設誤差D,且預定條件設定為記憶胞導通個數與預定個數值的差值的絕對值大於預設誤差D。在第8圖的例子中,當施加一讀取電壓V3於資料區段時,若記憶胞導通個數與預定個數值T3的差值的絕對值大於預設誤差D,則判斷此 資料區段儲存的資料是為無效資料。在此實施例中,預定個數值T3可設定為在施加特定讀取電壓V3且儲存的資料為有效資料的情況下的記憶胞導通個數。 Please refer to FIG. 8 , which illustrates a schematic diagram of another embodiment of the present invention for setting predetermined conditions. The vertical axis represents the number of memory cell conduction to which a specific read voltage is applied, and the horizontal axis represents the read voltage applied to the memory cell. In this embodiment, the invalidity determining unit 324 sets a preset error D, and the predetermined condition is set such that the absolute value of the difference between the number of memory cells and the predetermined number is greater than the preset error D. In the example of FIG. 8, when a read voltage V3 is applied to the data section, if the absolute value of the difference between the number of memory cells and the predetermined value T3 is greater than the preset error D, then the determination is made. The data stored in the data section is invalid. In this embodiment, the predetermined value T3 can be set as the number of memory cell conduction in the case where a specific read voltage V3 is applied and the stored data is valid data.

舉例來說,若非揮發記憶體的一資料區段中有1000個的記憶胞,當此資料區段儲存的資料為有效資料,在施加一讀取電壓時,此資料區段中的記憶胞導通個數為100,則設定預定個數值T3為100,並且設定預設誤差D為30。因此,若施加同一讀取電壓於此資料區段,此時此資料區段中的記憶胞導通個數為200,由於此時記憶胞導通個數與預定個數值T3的差值的絕對值大於預設誤差D,是以,判斷此時此資料區段所儲存的資料為無效資料。 For example, if there is 1000 memory cells in a data segment of the non-volatile memory, when the data stored in the data segment is valid data, the memory cells in the data segment are turned on when a read voltage is applied. When the number is 100, the predetermined value T3 is set to 100, and the preset error D is set to 30. Therefore, if the same read voltage is applied to the data segment, the number of memory cells in the data segment is 200, because the absolute value of the difference between the number of memory cells and the predetermined value T3 is greater than The preset error D is determined by judging that the data stored in the data section at this time is invalid.

本發明實施例通過在非揮發記憶體的資料區段施加至少一特定讀取電壓,讀取此資料區段中的記憶胞導通個數,並根據記憶胞導通個數與預定個數值的關係是否滿足預定條件來判斷此非揮發記憶體的資料區段所儲存的資料是否為無效資料。通過上述實施例可以讓非揮發記憶體的資料區段所儲存的資料發生讀取錯誤時,在進入錯誤回復程序的流程前,先判斷出資料區段所儲存的資料是否為無效資料,以避免無謂的錯誤回復程序,避免浪費運算成本,節省時間,提高資料處理的效能。 In the embodiment of the present invention, by reading at least one specific read voltage in the data section of the non-volatile memory, the number of memory cells in the data section is read, and according to whether the number of memory cells is related to a predetermined value The predetermined condition is met to determine whether the data stored in the data section of the non-volatile memory is invalid. When the above-mentioned embodiment can make the data stored in the data section of the non-volatile memory read error, before entering the process of the error recovery procedure, it is first determined whether the data stored in the data section is invalid data to avoid Unnecessary error recovery procedures, avoiding wasted computing costs, saving time and improving data processing efficiency.

綜上所述,雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作各種的更動與潤 飾。因此,本發明的保護範圍當視後附的申請專利範圍所界定者為準。 In conclusion, the present invention has been disclosed in the above preferred embodiments, and is not intended to limit the present invention. Those skilled in the art to which the invention pertains can make various changes and changes without departing from the spirit and scope of the invention. Decoration. Therefore, the scope of the invention is defined by the scope of the appended claims.

S410、S420、S440‧‧‧流程步驟 S410, S420, S440‧‧‧ process steps

Claims (8)

一種固態儲存裝置的資料處理方法,該固態儲存裝置包含一非揮發記憶體,該非揮發記憶體具有至少一資料區段,該資料區段包含複數個記憶胞,該資料處理方法包括:依據一預定條件判斷儲存於該資料區段中的一資料是否為無效資料,其中依據該預定條件判斷該資料是否為無效資料的步驟包括:對該資料區段施加至少一電壓,並讀取該資料區段中對應該電壓的一記憶胞導通個數,其中該電壓預定對應於一預定個數值;以及依據該記憶胞導通個數與該預定個數值的關係是否滿足該預定條件來判斷該資料是否為無效資料,其中,該預定條件是根據對儲存有效資料的該資料區段以及對儲存無效資料的該資料區段施加不同讀取電壓所對應得出的記憶胞導通個數的分佈曲線的關係而決定。 A data processing method for a solid-state storage device, the solid-state storage device comprising a non-volatile memory, the non-volatile memory having at least one data segment, the data segment comprising a plurality of memory cells, the data processing method comprising: according to a predetermined The condition determines whether a material stored in the data section is invalid data, wherein the step of determining whether the data is invalid according to the predetermined condition comprises: applying at least one voltage to the data section, and reading the data section a number of memory cells corresponding to the voltage, wherein the voltage is predetermined to correspond to a predetermined value; and determining whether the data is invalid according to whether the relationship between the number of memory cells and the predetermined value satisfies the predetermined condition The data, wherein the predetermined condition is determined according to a relationship between a data segment storing the valid data and a distribution curve of the number of memory cells corresponding to the different reading voltages applied to the data segment storing the invalid data. . 如申請專利範圍第1項所述的資料處理方法,更包括:若判斷該資料為有效資料,且該資料發生讀取錯誤時,針對該資料執行一錯誤回復(Error Recover)程序;以及若判斷該資料為無效資料,且該資料發生讀取錯誤時,不針對該資料執行該錯誤回復程序。 The method for processing data according to item 1 of the patent application scope further includes: if the data is determined to be valid data, and the data is read incorrectly, performing an error response (Error Recover) procedure for the data; If the data is invalid and the data is read incorrectly, the error response procedure is not executed for the data. 如申請專利範圍第1項所述的資料處理方法,其中該資料為無效資料代表儲存在該資料區段中的該資料不完整。 For example, the data processing method described in claim 1 is wherein the data is invalid and the information stored in the data section is incomplete. 如申請專利範圍第1項所述的資料處理方法,更包括:判斷儲存於該資料區段中的該資料是否發生讀取錯誤;以及當該資料發生讀取錯誤時,依據該預定條件判斷該資料是否為無效資料。 The data processing method of claim 1, further comprising: determining whether the data stored in the data section has a reading error; and when the data is read incorrectly, determining the predetermined condition Whether the information is invalid. 如申請專利範圍第1項所述的資料處理方法,其中依據該預定條件判斷該資料是否為無效資料的步驟包括:對該資料區段施加一第一電壓,並讀取該資料區段中對應該第一電壓的一第一記憶胞導通個數,其中該第一電壓預定對應於一第一預定個數值;對該資料區段施加一第二電壓,並讀取該資料區段中對應該第二電壓的一第二記憶胞導通個數,其中該第二電壓預定對應於一第二預定個數值;以及依據該第一記憶胞導通個數與該第一預定個數值的關係及該第二記憶胞導通個數與該第二預定個數值的關係是否滿足該預定條件來判斷該資料是否為無效資料。 The data processing method of claim 1, wherein the step of determining whether the data is invalid according to the predetermined condition comprises: applying a first voltage to the data segment, and reading a pair in the data segment A first memory cell of the first voltage should be turned on, wherein the first voltage is predetermined to correspond to a first predetermined value; a second voltage is applied to the data segment, and the corresponding data segment is read a second memory cell of the second voltage is turned on, wherein the second voltage is predetermined to correspond to a second predetermined value; and the relationship between the first memory cell conduction number and the first predetermined value and the first Whether the relationship between the number of memory cells and the second predetermined value satisfies the predetermined condition to determine whether the data is invalid data. 一種固態儲存裝置,包括:一非揮發記憶體,具有至少一資料區段,該資料區段包含複數個記憶胞;以及一控制器,包括:一無效判斷單元,用以依據一預定條件判斷儲存於該資料區段中的一資料是否為無效資料;其中,該無效判斷單元對該資料區段施加至少一電 壓,並讀取該資料區段中對應該電壓的一記憶胞導通個數,其中該電壓預定對應於一預定個數值;以及依據該記憶胞導通個數與該預定個數值的關係是否滿足該預定條件來判斷該資料是否為無效資料,其中,該預定條件是根據對儲存有效資料的該資料區段以及對儲存無效資料的該資料區段施加不同讀取電壓所對應得出的記憶胞導通個數的分佈曲線的關係而決定。 A solid state storage device comprising: a non-volatile memory having at least one data segment, the data segment comprising a plurality of memory cells; and a controller comprising: an invalidation determining unit for determining storage according to a predetermined condition Whether the data in the data section is invalid data; wherein the invalidation determining unit applies at least one electricity to the data section Pressing, and reading a number of memory cells corresponding to the voltage in the data segment, wherein the voltage is predetermined to correspond to a predetermined value; and whether the relationship between the number of memory cells and the predetermined value satisfies Predetermining conditions for determining whether the data is invalid data, wherein the predetermined condition is based on a memory cell corresponding to the data segment storing the valid data and the different reading voltages applied to the data segment storing the invalid data. The relationship between the distribution curves of the numbers is determined. 如申請專利範圍第6項所述的固態儲存裝置,更包含一錯誤回復單元,用以執行一錯誤回復(Error Recover)程序,其中,若該無效判斷單元判斷該資料為有效資料,且該資料發生讀取錯誤時,該錯誤回復單元針對該資料執行該錯誤回復程序,若該無效判斷單元判斷該資料為無效資料,且該資料發生讀取錯誤時,該錯誤回復單元不針對該資料執行該錯誤回復程序。 The solid state storage device of claim 6, further comprising an error recovery unit for performing an error recovering process, wherein if the invalidation determining unit determines that the data is valid data, and the data When a read error occurs, the error replying unit executes the error replying program for the data. If the invalidity determining unit determines that the data is invalid data, and the data has a reading error, the error replying unit does not execute the data for the data. Error reply procedure. 如申請專利範圍第6項所述的固態儲存裝置,其中該資料為無效資料代表儲存在該資料區段中的該資料不完整。 The solid state storage device of claim 6, wherein the data is invalid data represents that the data stored in the data section is incomplete.
TW105104645A 2016-02-17 2016-02-17 Solid state storage device and data processing method thereof TWI615847B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW105104645A TWI615847B (en) 2016-02-17 2016-02-17 Solid state storage device and data processing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW105104645A TWI615847B (en) 2016-02-17 2016-02-17 Solid state storage device and data processing method thereof

Publications (2)

Publication Number Publication Date
TW201730891A TW201730891A (en) 2017-09-01
TWI615847B true TWI615847B (en) 2018-02-21

Family

ID=60479933

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105104645A TWI615847B (en) 2016-02-17 2016-02-17 Solid state storage device and data processing method thereof

Country Status (1)

Country Link
TW (1) TWI615847B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090055585A1 (en) * 2007-08-24 2009-02-26 Datadirect Networks, Inc. Method for auto-correction of errors in a raid memory system
US8166233B2 (en) * 2009-07-24 2012-04-24 Lsi Corporation Garbage collection for solid state disks
US20150113342A1 (en) * 2013-10-17 2015-04-23 Samsung Electronics Co., Ltd. Nonvolatile memory device including dummy wordline, memory system, and method of operating memory system
US20150161039A1 (en) * 2013-12-09 2015-06-11 Phison Electronics Corp. Data erasing method, memory control circuit unit and memory storage apparatus
US20150212752A1 (en) * 2013-04-08 2015-07-30 Avalanche Technology, Inc. Storage system redundant array of solid state disk array
US9122580B2 (en) * 2011-05-06 2015-09-01 Genesys Logic, Inc. Flash memory system and managing and collecting methods for flash memory with invalid page messages thereof

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090055585A1 (en) * 2007-08-24 2009-02-26 Datadirect Networks, Inc. Method for auto-correction of errors in a raid memory system
US8166233B2 (en) * 2009-07-24 2012-04-24 Lsi Corporation Garbage collection for solid state disks
US9122580B2 (en) * 2011-05-06 2015-09-01 Genesys Logic, Inc. Flash memory system and managing and collecting methods for flash memory with invalid page messages thereof
US20150212752A1 (en) * 2013-04-08 2015-07-30 Avalanche Technology, Inc. Storage system redundant array of solid state disk array
US20150113342A1 (en) * 2013-10-17 2015-04-23 Samsung Electronics Co., Ltd. Nonvolatile memory device including dummy wordline, memory system, and method of operating memory system
US20150161039A1 (en) * 2013-12-09 2015-06-11 Phison Electronics Corp. Data erasing method, memory control circuit unit and memory storage apparatus

Also Published As

Publication number Publication date
TW201730891A (en) 2017-09-01

Similar Documents

Publication Publication Date Title
US9697076B2 (en) Data storage device and error correction method thereof
US9257204B2 (en) Read voltage setting method, and control circuit, and memory storage apparatus using the same
US9043678B2 (en) Detecting effect of corrupting event on preloaded data in non-volatile memory
TWI555023B (en) Refresh method for flash memory and memory controller
TW201911329A (en) Data writing method and memory storage device using same
US8578245B2 (en) Data reading method, memory storage apparatus, and controller thereof
US10157682B2 (en) Data storage device and error correction method capable of adjusting voltage distribution by reading pages
TWI512742B (en) Non-volatile memory flash memory erase-abnormal block repair method and device applying the same
US9478298B2 (en) Memory system and method of reading data thereof
US9514848B2 (en) Solid state drive and associated error check and correction method
US9563508B2 (en) Memory management method, memory control circuit unit and memory storage apparatus
TWI545572B (en) Memory cell programming method, memory control circuit unit and memory storage apparatus
US9436397B2 (en) Validating the status of memory operations
WO2017008501A1 (en) Method for recovering data when error occurring in nand flash cannot be corrected by ecc
US8830750B1 (en) Data reading method, and control circuit, memory module and memory storage apparatus using the same
JP2010067098A (en) Information processor, information processing method, and information processing program
CN104572324A (en) Solid-state storage device and control method thereof
US9417953B2 (en) Apparatus and method for decoding data
TWI615847B (en) Solid state storage device and data processing method thereof
CN107093458B (en) Solid state storage device and data processing method thereof
US9007829B2 (en) Memory repairing method, and memory controller and memory storage apparatus using the same
TWI640868B (en) Data storage device and data writing method thereof
TW202113850A (en) Memory system and method of operating memory
US11966289B2 (en) Cross-temperature compensation in non-volatile memory devices
TWI515729B (en) Data storage device and error correction method thereof