TWI404067B - Memory device and method for operating the memory device - Google Patents

Memory device and method for operating the memory device Download PDF

Info

Publication number
TWI404067B
TWI404067B TW98106473A TW98106473A TWI404067B TW I404067 B TWI404067 B TW I404067B TW 98106473 A TW98106473 A TW 98106473A TW 98106473 A TW98106473 A TW 98106473A TW I404067 B TWI404067 B TW I404067B
Authority
TW
Taiwan
Prior art keywords
error correction
data
memory device
memory
correction code
Prior art date
Application number
TW98106473A
Other languages
Chinese (zh)
Other versions
TW201032233A (en
Inventor
Wen Chiao Ho
Chin Hung Chang
Shuo Nan Hung
Chun Hsiung Hung
Original Assignee
Macronix Int Co Ltd
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 Macronix Int Co Ltd filed Critical Macronix Int Co Ltd
Priority to TW98106473A priority Critical patent/TWI404067B/en
Publication of TW201032233A publication Critical patent/TW201032233A/en
Application granted granted Critical
Publication of TWI404067B publication Critical patent/TWI404067B/en

Links

Landscapes

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

Abstract

A method for operating a memory device is provided and includes the following steps. A first error correction code is generated according to user data. Then, the user data is written to the memory device. Moreover, the user data in the memory device is read, and a second error correction code is generated according to the read user data. Further, the first and the second error correction codes are written to the memory device.

Description

記憶體裝置及其操作方法Memory device and method of operating same

本發明是有關於一種記憶體裝置的操作方法,且特別是有關於一種快閃記憶體的操作方法。The present invention relates to a method of operating a memory device, and more particularly to a method of operating a flash memory.

快閃記憶體具有可多次進行資料之存入、讀取、抹除等動作,且存入之資料在斷電後也不會消失等優點,故成為個人電腦、可攜式電腦、以及數位相機等電子設備所廣泛採用的一種非揮發性記憶體元件。然而,快閃記憶體在使用一段時間後,會有一些位元發生錯誤,進而造成資料的存取錯誤。針對上述情況,先前技術一般會使用錯誤校正碼(Error Correction Code)來進行錯誤校正。The flash memory has the advantages of multiple operations such as storing, reading, erasing, etc., and the stored data does not disappear after power-off, so it becomes a personal computer, a portable computer, and a digital device. A non-volatile memory component widely used in electronic devices such as cameras. However, after a period of use of the flash memory, there will be some errors in the bits, which may result in data access errors. In view of the above, the prior art generally uses an Error Correction Code to perform error correction.

圖1A與圖1B分別為先前技術利用錯誤校正碼來程式化與讀取快閃記憶體的方法流程圖。如圖1A所示的,在程式化快閃記憶體的過程中,先前技術在將所接收到的使用者資料存入暫存器之後(步驟S111與S112),即依據使用者資料來產生錯誤校正碼(步驟S113),並將使用者資料與錯誤校正碼同時寫入快閃記憶體(步驟S114)。藉此,如圖1B所示,在讀取快閃記憶體的過程中,先前技術在將所讀取到的錯誤校正碼以及讀取資料存入暫存器之後(步驟S121與S122),即可利用錯誤校正碼來校正讀取資料,並進而取得使用者資料(步驟S123)。藉著,先前技術將可暫存並輸出使用者資料(步驟S124與S125)。1A and 1B are respectively a flow chart of a prior art method of programming and reading a flash memory using an error correction code. As shown in FIG. 1A, in the process of staging the flash memory, the prior art stores the received user data into the temporary memory (steps S111 and S112), that is, generates an error according to the user data. The correction code is encoded (step S113), and the user data and the error correction code are simultaneously written into the flash memory (step S114). Thereby, as shown in FIG. 1B, in the process of reading the flash memory, the prior art stores the read error correction code and the read data into the register (steps S121 and S122), that is, The error correction code can be used to correct the read data, and further the user data is obtained (step S123). By the prior art, the user profile can be temporarily stored and outputted (steps S124 and S125).

值得注意的是,對於多階記憶胞(Multi Level Cell,以下簡稱MLC)快閃記憶體而言,由於其是透過多個不同級別的臨界電壓來記錄位元的資訊,因此如圖2所示,MLC快閃記憶體往往會因為臨界電壓VT的重疊(overlap)分佈210,而造成讀取準位RD無法辨別位元的資訊。此外,記憶胞的過度程式化(over-program)以及電荷損失(charge loss)是導致臨限電壓偏移的主因,且過度程式化是發生在使用者資料寫入至快閃記憶體的過程中,而電荷損失則是隨著記憶胞的循環操作而不斷地累加。It is worth noting that for multi-level cell (MLC) flash memory, since it records the bit information through a plurality of different levels of threshold voltage, as shown in FIG. 2 The MLC flash memory tends to have an overlap distribution 210 of the threshold voltage VT, so that the read level RD cannot distinguish the bit information. In addition, over-programming of memory cells and charge loss are the main causes of threshold voltage shift, and over-stylization occurs in the process of writing user data to flash memory. And the charge loss is continuously accumulated as the memory cell circulates.

對於先前技術而言,其只是利用在寫入使用者資料之前所產生的單一錯誤校正碼來進行錯誤校正。因此,對於使用者資料在寫入的過程中因過度程式化所產生的錯誤,或是使用者資料在寫入後因電荷損失所產生的錯誤,先前技術必須不斷地提高錯誤校正碼的可更正位元數才能完成錯誤校正。然而,隨著錯誤校正碼之可更正位元數的提高,先前技術勢必要增加硬體設施來支援複雜且龐大之錯誤校正碼的演算。For the prior art, it simply uses the single error correction code generated prior to writing the user profile for error correction. Therefore, the prior art must continuously improve the error correction code for errors caused by over-stylization of the user data during writing, or errors caused by charge loss after the user data is written. The number of bits can be corrected for errors. However, with the increase in the number of correctable bits of the error correction code, it has been necessary in the prior art to add hardware facilities to support the calculation of complex and large error correction codes.

本發明提供一種記憶體裝置的操作方法,除了有助於記憶體裝置之更正能力的提升,更有助於降低記憶體裝置之硬體設施的複雜度。The present invention provides a method of operating a memory device that, in addition to facilitating the improvement of the correction capability of the memory device, further contributes to reducing the complexity of the hardware device of the memory device.

本發明提供一種記憶體裝置的操作方法,可以提升記憶體裝置之更正能力。The invention provides a method for operating a memory device, which can improve the correction capability of the memory device.

本發明提供一種記憶體裝置,具有較佳的更正能力。The present invention provides a memory device with better correction capabilities.

本發明提出一種記憶體裝置的操作方法,包括下列步驟。在控制記憶體裝置的過程中,根據一使用者資料產生一第一錯誤校正碼。接著,將使用者資料寫入至記憶體裝置。之後,將讀取記憶體裝置中的使用者資料,並根據所讀取到的使用者資料產生一第二錯誤校正碼。最後,將第一與第二錯誤校正碼寫入至記憶體裝置。The present invention provides a method of operating a memory device comprising the following steps. In the process of controlling the memory device, a first error correction code is generated based on a user profile. Next, the user data is written to the memory device. Thereafter, the user data in the memory device is read, and a second error correction code is generated based on the read user data. Finally, the first and second error correction codes are written to the memory device.

從另一角度來看,本發明另提出一種記憶體裝置的操作方法,其中所述記憶體裝置儲存有一第一與一第二錯誤校正碼,且所述記憶體裝置的操作方法包括下列步驟:讀取記憶體裝置中的第一錯誤校正碼、第二錯誤校正碼以及一讀取資料;接著,利用第二錯誤校正碼校正讀取資料,以獲得一暫時資料;以及,利用第一錯誤校正碼校正暫時資料,以獲得一使用者資料。From another point of view, the present invention further provides a method for operating a memory device, wherein the memory device stores a first and a second error correction code, and the method of operating the memory device includes the following steps: Reading a first error correction code, a second error correction code, and a read data in the memory device; then, correcting the read data with the second error correction code to obtain a temporary data; and using the first error correction The code corrects the temporary data to obtain a user profile.

在本發明之一實施例中,上述之記憶體裝置的操作方法更包括:將讀取資料儲存至一暫存器;以暫時資料更新儲存在暫存器中的讀取資料;以使用者資料更新儲存在暫存器中的暫時資料;以及,輸出使用者資料。In an embodiment of the present invention, the method for operating the memory device further includes: storing the read data to a temporary storage device; updating the read data stored in the temporary storage device with temporary data; Update temporary data stored in the scratchpad; and output user data.

本發明又提出一種記憶體裝置,包括一記憶體、一錯誤校正電路以及一操作電路。錯誤校正電路電性連接至記憶體。操作電路用以致使錯誤校正電路根據尚未寫入至記憶體的一使用者資料而產生一第一錯誤校正碼,並用以致使錯誤校正電路根據來自記憶體的一讀取資料而產生一第二錯誤校正碼。The invention further provides a memory device comprising a memory, an error correction circuit and an operation circuit. The error correction circuit is electrically connected to the memory. The operation circuit is configured to cause the error correction circuit to generate a first error correction code according to a user data that has not been written to the memory, and to cause the error correction circuit to generate a second error according to a read data from the memory. Correction code.

基於上述,本發明是在使用者資料存入記憶體裝置之前與之後,分別產生第一與第二錯誤校正碼。藉此,本發明將可利用第一與第二錯誤校正碼對使用者資料進行階段式的校正,進而致使本發明可以利用較低可更正位元數的第一與第二錯誤校正碼,即可達到良好的更正能力。換而言之,與先前技術相較之下,本發明將可降低硬體設施的複雜度。Based on the above, the present invention generates first and second error correction codes before and after the user data is stored in the memory device. Thereby, the present invention can use the first and second error correction codes to perform phase correction on the user data, thereby enabling the present invention to utilize the first and second error correction codes of the lower correctable bit number, ie Good correction ability can be achieved. In other words, the present invention will reduce the complexity of the hardware facility as compared to the prior art.

為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。The above described features and advantages of the present invention will be more apparent from the following description.

圖3繪示為依據本發明一實施例之記憶體裝置的操作方法流程圖,圖4繪示為依據本發明另一實施例之記憶體裝置的操作方法流程圖,以下將以圖3為主來說明程式化記憶體裝置的流程,並以圖4為主來說明讀取記憶體裝置的流程。此外,圖3與圖4實施例所述的操作方法可應用在多階記憶胞快閃記憶體中,但其並非用以限定本發明。3 is a flow chart of a method for operating a memory device according to an embodiment of the invention, and FIG. 4 is a flow chart of a method for operating a memory device according to another embodiment of the present invention. The flow of the stylized memory device will be described, and the flow of reading the memory device will be described mainly with reference to FIG. In addition, the operation methods described in the embodiments of FIG. 3 and FIG. 4 can be applied to multi-level memory cell flash memory, but are not intended to limit the present invention.

請參照圖3,在程式化記憶體裝置的過程中,本實施例會先如步驟S310所示的,接收一使用者資料,並於步驟S320,將所接收到的使用者資料儲存在一暫存器中。接著,如步驟S330所示,根據使用者資料產生一第一錯誤校正碼。Referring to FIG. 3, in the process of programming the memory device, the embodiment first receives a user data as shown in step S310, and stores the received user data in a temporary storage in step S320. In the device. Next, as shown in step S330, a first error correction code is generated based on the user profile.

另一方面,於步驟S340中,將使用者資料寫入至記憶體裝置中。此外,針對資料寫入的細部流程來看,首先,於步驟S341,依據使用者資料來程式化記憶體裝置。之後,將於步驟S342,對記憶體裝置進行一寫入驗證,以判別記憶體裝置中被程式化的記憶胞,其臨界電壓的準位是否符合使用者資料的位元資訊。接著,於步驟S343,判別記憶體裝置是否通過寫入驗證。藉此,當寫入驗證尚未通過時,則將重複上述步驟S341~S343。反之,當寫入驗證通過時,則將執行步驟S350。On the other hand, in step S340, the user profile is written to the memory device. Further, in view of the detailed flow of data writing, first, in step S341, the memory device is programmed according to the user data. Then, in step S342, a write verification is performed on the memory device to determine whether the programmed memory cell in the memory device has a threshold voltage level that matches the bit information of the user data. Next, in step S343, it is determined whether the memory device passes the write verification. Thereby, when the write verification has not passed, the above steps S341 to S343 are repeated. On the other hand, when the write verification is passed, step S350 will be performed.

在步驟S350中,將讀取記憶體裝置中的使用者資料。值得注意的是,在寫入使用者資料的過程中,使用者資料可能會因過度程式化(over-program)而產生錯誤位元。此外,在寫入使用者資料之後,使用者資料也可能會因電荷損失(charge loss)而產生錯誤位元。因此,於步驟S350中所讀取到的使用者資料可能帶有錯誤位元,而被視為一筆讀取資料。In step S350, the user profile in the memory device will be read. It is worth noting that in the process of writing user data, user data may generate error bits due to over-programming. In addition, after the user data is written, the user data may also generate an error bit due to charge loss. Therefore, the user data read in step S350 may have an error bit and is regarded as a piece of read data.

請繼續參照圖3,當讀取到記憶體裝置中的使用者資料之後,將於步驟S360,根據所讀取到的使用者資料產生一第二錯誤校正碼。接著,將於步驟S370,將第一與第二錯誤校正碼寫入至記憶體裝置。藉此,使用者資料將可利用第一與第二錯誤校正碼進行階段式的校正,進而致使本實施例可以利用較低可更正位元數的第一與第二錯誤校正碼,即可達到良好的更正能力。Referring to FIG. 3, after reading the user data in the memory device, a second error correction code is generated according to the read user data in step S360. Next, in step S370, the first and second error correction codes are written to the memory device. Thereby, the user data can be phase-corrected by using the first and second error correction codes, thereby enabling the embodiment to utilize the first and second error correction codes of the lower correctable bit number. Good correction ability.

舉例來說,如圖4所示的,在讀取記憶體裝置的過程中,首先,於步驟S410,依照原先使用者資料所存入的位址,讀取記憶體裝置中的第一錯誤校正碼、第二錯誤校正碼以及一讀取資料。值得注意的是,步驟S350與步驟S410所界定的讀取資料,其實是在不同時間點從記憶體裝置中所讀取到的使用者資料。由於讀取時間點的不同,因此在步驟S350中所讀取到的使用者資料(讀取資料),與在步驟S410中所讀取到的使用者資料(讀取資料),會因受到不同程度的電荷損失而可能有所不同。For example, as shown in FIG. 4, in the process of reading the memory device, first, in step S410, the first error correction in the memory device is read according to the address stored in the original user data. The code, the second error correction code, and a read data. It should be noted that the read data defined in step S350 and step S410 is actually the user data read from the memory device at different time points. Since the reading time point is different, the user data (reading data) read in step S350 and the user data (reading data) read in step S410 are different. The degree of charge loss may vary.

請繼續參照圖4,接著於步驟S420,將讀取資料儲存至一暫存器,並透過步驟S430,利用第二錯誤校正碼校正讀取資料,以獲得一暫時資料。在校正讀取資料的過程中,首先,於步驟S431,利用第二錯誤校正碼與讀取資料,偵測出讀取資料的錯誤位元。之後,更於步驟S432,對讀取資料的錯誤位元進行校正,以獲得暫時資料。換而言之,本實施例是利用第二錯誤校正碼來對電荷損失所形成的部分位元錯誤先進行第一階段的校正。Referring to FIG. 4, in step S420, the read data is stored in a temporary storage device, and through step S430, the read data is corrected by using the second error correction code to obtain a temporary data. In the process of correcting the read data, first, in step S431, the error bit of the read data is detected by using the second error correction code and the read data. Thereafter, in step S432, the error bit of the read data is corrected to obtain temporary data. In other words, in this embodiment, the second error correction code is used to perform the first stage correction on the partial bit error formed by the charge loss.

接著,於步驟S440,以暫時資料更新儲存在暫存器中的讀取資料,以致使暫時資料儲存在暫存器中。另一方面,如步驟S450所示,利用第一錯誤校正碼校正暫時資料,以獲得使用者資料。在校正暫時資料的過程中,首先,於步驟S451,利用第一錯誤校正碼與暫時資料,偵測出暫時資料的錯誤位元。接著,於步驟S452,對暫時資料的錯誤位元進行校正,以獲得使用者資料。Next, in step S440, the read data stored in the temporary storage is updated with the temporary data, so that the temporary data is stored in the temporary storage. On the other hand, as shown in step S450, the temporary data is corrected using the first error correction code to obtain user data. In the process of correcting the temporary data, first, in step S451, the error bit of the temporary data is detected by using the first error correction code and the temporary data. Next, in step S452, the error bit of the temporary data is corrected to obtain user data.

換而言之,本實施例是利用第一錯誤校正碼來對過度程式化以及電荷損失所形成的位元錯誤進行第二階段的校正。藉此,本實施例將可透過步驟S460,利用使用者資料更新儲存在暫存器中的暫時資料,以致使用者資料儲存在暫存器中,並透過步驟S470,來輸出使用者資料。In other words, in the present embodiment, the first error correction code is used to perform the second-stage correction on the bit error caused by over-staging and charge loss. Therefore, in this embodiment, the temporary data stored in the temporary storage device is updated by the user data through the step S460, so that the user data is stored in the temporary storage device, and the user data is output through the step S470.

圖5繪示為依據本發明一實施例之記憶體裝置的電路方塊圖。參照圖5,記憶體裝置500包括一操作電路510、一錯誤校正電路520、一暫存器530以及一記憶體540。錯誤校正電路520與暫存器530電性連接至記憶體540。操作電路510則電性連接至錯誤校正電路520與暫存器530。FIG. 5 is a circuit block diagram of a memory device according to an embodiment of the invention. Referring to FIG. 5, the memory device 500 includes an operation circuit 510, an error correction circuit 520, a register 530, and a memory 540. The error correction circuit 520 and the register 530 are electrically connected to the memory 540. The operation circuit 510 is electrically connected to the error correction circuit 520 and the register 530.

當記憶體裝置500接收到使用者資料時,使用者資料會暫時地儲存在暫存器530中,且操作電路510將致使錯誤校正電路520根據尚未寫入至記憶體540的使用者資料而產生一第一錯誤校正碼。之後,使用者資料將寫入至記憶體540中。當記憶體540通過寫入驗證後,儲存在記憶體540中的使用者資料將被讀取。值得注意的是,所讀取到的使用者資料可能會因過度程式化或/與電荷損失而帶有錯誤位元,故被視為一筆讀取資料。此時,操作電路510將致使錯誤校正電路520根據讀取資料而產生一第二錯誤校正碼。When the memory device 500 receives the user profile, the user profile is temporarily stored in the register 530, and the operation circuit 510 causes the error correction circuit 520 to generate based on the user profile that has not been written to the memory 540. A first error correction code. User data is then written to memory 540. When the memory 540 is verified by writing, the user data stored in the memory 540 will be read. It is worth noting that the user data read may be misinterpreted or/and the loss of charge with incorrect bits and is considered a read data. At this time, the operation circuit 510 will cause the error correction circuit 520 to generate a second error correction code based on the read data.

在一讀取操作模式下,錯誤校正電路520將再次讀取儲存在記憶體540中的使用者資料。值得注意的是,從記憶體裝置中所讀取到的使用者資料,其錯誤位元可能會因不同程度的電荷損失而隨著時間增加,故此時從記憶體540中再次讀取到的使用者資料將被視為另一筆讀取資料。之後,操作電路510將利用第二錯誤校正碼來校正另一讀取資料,以獲得一暫時資料,並利用第一錯誤校正碼來校正暫時資料,以獲得原始的使用者資料。其中,暫時資料與讀取資料可暫存在暫存器530中。至於記憶體裝置500的細部操作,已包含在上述各實施例中,故在此不予贅述。In a read mode of operation, error correction circuit 520 will again read the user profile stored in memory 540. It is worth noting that the user bits read from the memory device may have their error bits increased over time due to different degrees of charge loss, so the read from the memory 540 is read again. The data will be treated as another reading. Thereafter, the operation circuit 510 will use the second error correction code to correct another read data to obtain a temporary data, and use the first error correction code to correct the temporary data to obtain the original user data. The temporary data and the read data may be temporarily stored in the temporary register 530. The detailed operation of the memory device 500 is included in the above embodiments, and thus will not be described herein.

綜上所述,本發明是在使用者資料存入記憶體裝置之前與之後,分別進行編碼以產生第一與第二錯誤校正碼。藉此,本發明將可利用第一與第二錯誤校正碼對使用者資料進行階段式的校正,進而致使本發明可以利用較低可更正位元數的第一與第二錯誤校正碼,即可達到良好的更正能力。In summary, the present invention separately encodes user data before and after being stored in the memory device to generate first and second error correction codes. Thereby, the present invention can use the first and second error correction codes to perform phase correction on the user data, thereby enabling the present invention to utilize the first and second error correction codes of the lower correctable bit number, ie Good correction ability can be achieved.

舉例來說,倘若第一與第二錯誤校正碼的可更正位元數分別為N位元與M位元,且N與M為正整數時,倘若N大於M,則本發明只需帶有N位元更正能力的錯誤校正演算法(error-correct-algorithm),相對地,倘若M大於N’則本發明只需帶有M位元更正能力的錯誤校正演算法。也就是說,本發明可以特別地針對矽的特性預先設定合適的數目,其中在矽的特性上,錯誤位元主要是受控在通過寫入驗證或是後期的階段中。然而,先前技術總是需要帶有(N+M)位元更正能力的錯誤校正演算法,來提供校正資料。藉此,與先前技術相較之下,本發明無需提高第一與第二錯誤校正碼的可更正位元數就可以達到良好的更正能力。換而言之,本發明將可降低硬體設施的複雜度,並且有助於記憶體之操作速度的提升。For example, if the number of correctable bits of the first and second error correction codes is N bits and M bits, respectively, and N and M are positive integers, if N is greater than M, the present invention only needs to carry The N-bit correction capability error-correct-algorithm, in contrast, if M is greater than N', the present invention only requires an error correction algorithm with M-bit correction capability. That is to say, the invention can be pre-set to a suitable number, in particular for the characteristics of 矽, where the erroneous bit is mainly controlled in the stage of pass-through verification or later. However, prior art always requires an error correction algorithm with (N+M) bit correction capability to provide correction data. Thereby, the present invention can achieve a good correction capability without increasing the number of correctable bits of the first and second error correction codes as compared with the prior art. In other words, the present invention will reduce the complexity of the hardware installation and contribute to the increase in the operating speed of the memory.

雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。Although the present invention has been disclosed in the above embodiments, it is not intended to limit the invention, and any one of ordinary skill in the art can make some modifications and refinements without departing from the spirit and scope of the invention. The scope of the invention is defined by the scope of the appended claims.

S111~S114...用以說明圖1A的各步驟流程S111~S114. . . Used to illustrate the flow of each step of Figure 1A

S121~S125...用以說明圖1B的各步驟流程S121~S125. . . Used to illustrate the flow of each step of Figure 1B

210...重疊分佈210. . . Overlapping distribution

S310~S370、S341~S343...用以說明圖3實施例的各步驟流程S310~S370, S341~S343. . . Used to explain the steps of the steps of the embodiment of FIG.

S410~S470、S431、S432、S451、S452...用以說明圖4實施例的各步驟流程S410~S470, S431, S432, S451, S452. . . Used to explain the steps of the steps of the embodiment of FIG.

500...記憶體裝置500. . . Memory device

510...操作電路510. . . Operating circuit

520...錯誤校正電路520. . . Error correction circuit

530...暫存器530. . . Register

540...記憶體540. . . Memory

圖1A為先前技術利用錯誤校正碼程式化快閃記憶體的方法流程圖。1A is a flow chart of a prior art method of staging a flash memory using an error correction code.

圖1B為先前技術利用錯誤校正碼讀取快閃記憶體的方法流程圖。FIG. 1B is a flow chart of a prior art method of reading a flash memory using an error correction code.

圖2為MLC快閃記憶體之臨界電壓的分佈示意圖。2 is a schematic diagram showing the distribution of the threshold voltage of the MLC flash memory.

圖3繪示為依據本發明一實施例之記憶體裝置的操作方法流程圖。3 is a flow chart of a method of operating a memory device in accordance with an embodiment of the invention.

圖4繪示為依據本發明另一實施例之記憶體裝置的操作方法流程圖。4 is a flow chart showing a method of operating a memory device in accordance with another embodiment of the present invention.

圖5繪示為依據本發明一實施例之記憶體裝置的電路方塊圖。FIG. 5 is a circuit block diagram of a memory device according to an embodiment of the invention.

S310~S370、S341~S343...用以說明圖3實施例的各步驟流程S310~S370, S341~S343. . . Used to explain the steps of the steps of the embodiment of FIG.

Claims (10)

一種記憶體裝置的操作方法,包括:根據一使用者資料產生一第一錯誤校正碼;將該使用者資料寫入至該記憶體裝置;讀取該記憶體裝置中的該使用者資料,並根據所讀取到的該使用者資料產生一第二錯誤校正碼;以及將該第一與該第二錯誤校正碼寫入至該記憶體裝置。 A method for operating a memory device, comprising: generating a first error correction code according to a user data; writing the user data to the memory device; reading the user data in the memory device, and Generating a second error correction code based on the read user data; and writing the first and second error correction codes to the memory device. 如申請專利範圍第1項所述之記憶體裝置的操作方法,其中將該使用者資料寫入至該記憶體裝置的步驟包括:依據該使用者資料程式化該記憶體裝置;對該記憶體裝置進行一寫入驗證;判別該記憶體裝置是否通過該寫入驗證;以及當該寫入驗證尚未通過時,重複上述三個步驟。 The method of operating a memory device according to claim 1, wherein the step of writing the user data to the memory device comprises: programming the memory device according to the user data; The device performs a write verification; determines whether the memory device passes the write verification; and repeats the above three steps when the write verification has not passed. 如申請專利範圍第1項所述之記憶體裝置的操作方法,其中該記憶體裝置為一多階記憶胞快閃記憶體。 The method of operating a memory device according to claim 1, wherein the memory device is a multi-level memory cell flash memory. 一種記憶體裝置的操作方法,包括:根據尚未寫入至該記憶體的一使用者資料而產生一第一錯誤校正碼;讀取寫入至該記憶體的該使用者資料以取得一第一讀取資料,並根據該第一讀取資料產生一第二錯誤校正碼;將該第一與該第二錯誤校正碼寫入至該記憶體裝置;讀取該記憶體裝置中的該第一錯誤校正碼與該第二錯誤校正碼,並再次讀取寫入至該記憶體的該使用者資料 以取得一第二讀取資料;利用該第二錯誤校正碼校正該第二讀取資料,以獲得一暫時資料;以及利用該第一錯誤校正碼校正該暫時資料,以獲得該使用者資料。 A method for operating a memory device includes: generating a first error correction code based on a user data that has not been written to the memory; and reading the user data written to the memory to obtain a first Reading the data, and generating a second error correction code according to the first read data; writing the first and the second error correction code to the memory device; reading the first in the memory device Error correction code and the second error correction code, and reading the user data written to the memory again Obtaining a second read data; correcting the second read data by using the second error correction code to obtain a temporary data; and correcting the temporary data by using the first error correction code to obtain the user data. 如申請專利範圍第4項所述之記憶體裝置的操作方法,更包括:將該第二讀取資料儲存至一暫存器;以該暫時資料更新儲存在該暫存器中的該第二讀取資料;以該使用者資料更新儲存在該暫存器中的該暫時資料;以及輸出該使用者資料。 The method of operating the memory device of claim 4, further comprising: storing the second read data to a temporary register; and updating the second stored in the temporary register with the temporary data Reading the data; updating the temporary data stored in the temporary register with the user data; and outputting the user data. 如申請專利範圍第4項所述之記憶體裝置的操作方法,其中利用該第二錯誤校正碼校正該第二讀取資料,以獲得該暫時資料的步驟包括:利用該第二錯誤校正碼與該第二讀取資料,偵測出該第二讀取資料的錯誤位元;以及對該第二讀取資料的錯誤位元進行校正,以獲得該暫時資料。 The method of operating a memory device according to claim 4, wherein the step of correcting the second read data by using the second error correction code to obtain the temporary data comprises: using the second error correction code and The second read data, detecting an error bit of the second read data; and correcting the error bit of the second read data to obtain the temporary data. 如申請專利範圍第4項所述之記憶體裝置的操作方法,其中利用該第一錯誤校正碼校正該暫時資料,以獲得該使用者資料的步驟包括:利用該第一錯誤校正碼與該暫時資料,偵測出該暫時 資料的錯誤位元;以及對該暫時資料的錯誤位元進行校正,以獲得該使用者資料。 The method for operating a memory device according to claim 4, wherein the step of correcting the temporary data by using the first error correction code to obtain the user data comprises: using the first error correction code and the temporary Data, detecting the temporary The error bit of the data; and correcting the error bit of the temporary data to obtain the user data. 如申請專利範圍第4項所述之記憶體裝置的操作方法,其中該記憶體裝置為一多階記憶胞快閃記憶體。 The method of operating a memory device according to claim 4, wherein the memory device is a multi-level memory cell flash memory. 一種記憶體裝置,包括:一記憶體;一錯誤校正電路,電性連接至該記憶體;以及一操作電路,用以致使該錯誤校正電路根據尚未寫入至該記憶體的一使用者資料而產生一第一錯誤校正碼,並用以致使該錯誤校正電路根據來自該記憶體的一讀取資料而產生一第二錯誤校正碼。 A memory device includes: a memory; an error correction circuit electrically connected to the memory; and an operation circuit for causing the error correction circuit to be based on a user data not yet written to the memory A first error correction code is generated and configured to cause the error correction circuit to generate a second error correction code based on a read data from the memory. 如申請專利範圍第9項所述之記憶體裝置,其中在一讀取操作模式下的該操作電路會致使該錯誤校正電路:讀取來自該記憶體的一資料;利用該第二錯誤校正碼校正從該記憶體所讀取到的該資料,以獲得一暫時資料;以及利用該第一錯誤校正碼校正該暫時資料,以獲得該使用者資料。 The memory device of claim 9, wherein the operation circuit in a read operation mode causes the error correction circuit to: read a data from the memory; and utilize the second error correction code Correcting the data read from the memory to obtain a temporary data; and correcting the temporary data by using the first error correction code to obtain the user data.
TW98106473A 2009-02-27 2009-02-27 Memory device and method for operating the memory device TWI404067B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW98106473A TWI404067B (en) 2009-02-27 2009-02-27 Memory device and method for operating the memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW98106473A TWI404067B (en) 2009-02-27 2009-02-27 Memory device and method for operating the memory device

Publications (2)

Publication Number Publication Date
TW201032233A TW201032233A (en) 2010-09-01
TWI404067B true TWI404067B (en) 2013-08-01

Family

ID=44854831

Family Applications (1)

Application Number Title Priority Date Filing Date
TW98106473A TWI404067B (en) 2009-02-27 2009-02-27 Memory device and method for operating the memory device

Country Status (1)

Country Link
TW (1) TWI404067B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1286359A2 (en) * 2001-08-23 2003-02-26 Fujitsu Limited Memory controller for multilevel cell memory
US6604214B1 (en) * 1998-04-09 2003-08-05 Nec Electronics Corporation One-chip microcomputer capable of internally producing ECC data
TW200641903A (en) * 2005-01-11 2006-12-01 Samsung Electronics Co Ltd Solid state disk controller apparatus
US20080163023A1 (en) * 2007-01-03 2008-07-03 Si-Hoon Hong ECC controller for use in flash memory device and memory system including the same
US20080168319A1 (en) * 2007-01-08 2008-07-10 Samsung Electronics Co., Ltd. Flash memory Device Error Correction Code Controllers and Related Methods and Memory Systems
TW200845012A (en) * 2006-12-24 2008-11-16 Sandisk Il Ltd Flash memory device, system and method with randomizing for suppressing error

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6604214B1 (en) * 1998-04-09 2003-08-05 Nec Electronics Corporation One-chip microcomputer capable of internally producing ECC data
EP1286359A2 (en) * 2001-08-23 2003-02-26 Fujitsu Limited Memory controller for multilevel cell memory
TW200641903A (en) * 2005-01-11 2006-12-01 Samsung Electronics Co Ltd Solid state disk controller apparatus
TW200845012A (en) * 2006-12-24 2008-11-16 Sandisk Il Ltd Flash memory device, system and method with randomizing for suppressing error
US20080163023A1 (en) * 2007-01-03 2008-07-03 Si-Hoon Hong ECC controller for use in flash memory device and memory system including the same
US20080168319A1 (en) * 2007-01-08 2008-07-10 Samsung Electronics Co., Ltd. Flash memory Device Error Correction Code Controllers and Related Methods and Memory Systems

Also Published As

Publication number Publication date
TW201032233A (en) 2010-09-01

Similar Documents

Publication Publication Date Title
CN101079322B (en) Multi-bit memory device and memory system
JP4856110B2 (en) Chain search apparatus and chain search method
US20110231738A1 (en) Error correction decoding apparatus and error correction decoding method
KR100632952B1 (en) Method and device capable of judging whether program operation is failed due to power failure
US8332728B2 (en) Method and apparatus of generating a soft value for a memory device
US10067824B2 (en) Error processing method, memory storage device and memory controlling circuit unit
US20100329030A1 (en) Nonvolatile memory device and method of programming the same
WO2013070366A2 (en) Statistical read comparison signal generation for memory systems
JP4999921B2 (en) Combination of distortion estimation and error correction coding for memory devices.
JP2009211742A (en) Error correcting device and error correcting method
JP2012079403A5 (en)
JP2012137994A (en) Memory system and controlling method thereof
JP2006209900A (en) Memory circuit
US8347183B2 (en) Flash memory device using ECC algorithm and method of operating the same
JP2010009643A (en) Error correction system
JP2009271852A (en) Semiconductor storage device
TW201604882A (en) Decoding method, memory storage device and memory controlling circuit unit
US8924819B2 (en) Memory device and operation method thereof
JP5283989B2 (en) Memory system and memory access method
JP6018508B2 (en) Nonvolatile semiconductor memory device and test method thereof
JP2023120450A (en) Semiconductor storage device and error detection/correction method
JP5335779B2 (en) Semiconductor recording device
JP2010108029A (en) Nonvolatile memory controller, non-volatile storage device, and non-volatile storage system
JP2014033364A (en) Error detection and correction circuit and memory device
TWI404067B (en) Memory device and method for operating the memory device