CN112214172A - Encoding method and encoding device for QLC NAND - Google Patents

Encoding method and encoding device for QLC NAND Download PDF

Info

Publication number
CN112214172A
CN112214172A CN202011085907.4A CN202011085907A CN112214172A CN 112214172 A CN112214172 A CN 112214172A CN 202011085907 A CN202011085907 A CN 202011085907A CN 112214172 A CN112214172 A CN 112214172A
Authority
CN
China
Prior art keywords
coding
units
unit
error detection
decoding
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
CN202011085907.4A
Other languages
Chinese (zh)
Inventor
陈磊
邢冀鹏
吴彬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zeshi Technology Wuhan Co Ltd
Beijing Zeshi Technology Co ltd
Original Assignee
Zeshi Technology Wuhan Co Ltd
Beijing Zeshi Technology 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 Zeshi Technology Wuhan Co Ltd, Beijing Zeshi Technology Co ltd filed Critical Zeshi Technology Wuhan Co Ltd
Priority to CN202011085907.4A priority Critical patent/CN112214172A/en
Priority to CN202011602957.5A priority patent/CN112506446B/en
Publication of CN112214172A publication Critical patent/CN112214172A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

The application provides a coding method and a coding device of QLC NAND. The QLC NAND comprises a word line and a plurality of coding and decoding units, wherein the word line comprises a plurality of pages, and the pages comprise a lower bit page, a middle bit page, an upper bit page and a highest bit page, and the coding method comprises the following steps: splitting each coding and decoding unit into four parts, namely a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit and a fourth coding and decoding unit; the first coding and decoding units are distributed in a lower-order page, the second coding and decoding units are distributed in a middle-order page, the third coding and decoding units are distributed in an upper-order page, and the fourth coding and decoding units are distributed in a highest-order page. According to the scheme, the encoding and decoding unit is divided into four parts, and then the parts are distributed in the corresponding pages, so that the error ratio of data of any two pages is approximately equal, and the service life of the NAND flash memory medium is prolonged.

Description

Encoding method and encoding device for QLC NAND
Technical Field
The present application relates to the field of NAND coding, and in particular, to a coding method, a coding apparatus, a computer-readable storage medium, a processor, and a storage system for QLC NAND.
Background
With the wide application of non-volatile solid-state storage, solid-state storage devices are increasingly applied to various storage fields, and have replaced the dominant position of a traditional magnetic disk in the storage industry at present, and become the first choice of users. Non-volatile solid state memories have absolute advantages such as high performance, low power consumption, small size, large capacity, and better stability and reliability. However, it also has a very fatal drawback: such as service life. Particularly, with the continuous progress of semiconductor technology, the service life of NAND flash memory media is greatly reduced, and the number of times of erasing or writing is reduced from original tens of thousands of times to present hundreds of times from SLC (Single-level cell) media to QLC (Quad-level cell) media. Therefore, how to effectively solve the problem of the service life of the NAND solid-state storage device is a great challenge and technical direction for various large storage manufacturers. The conventional encoding method of the QLC NAND is a horizontal encoding method, as shown in fig. 1, a word line (WorldLine) of the QLC NAND has a plurality of pages (pages), which are respectively a Lower Page, a Middle Page, an Upper Page and a Top Page, AU0 to AU15 are encoding and decoding units, and ECC0 to ECC15 are Error detection and correction units, and due to the media characteristics, the life of each Page and the data Error ratio ber (bit Error ratio) are different, and the difference is very large, and varies from several times to several tens of times, and the difference becomes larger as the unit loss increases.
Therefore, the existing horizontal encoding method adopted by various manufacturers as shown in fig. 1 can cause great service life difference of NAND media, and in the same WorldLine, because BER of one page exceeds a set threshold, the whole World Line or even the whole Block (Block) must be abandoned. Therefore, the number of blocks of the storage device is rapidly reduced sharply until the whole storage device is exhausted and can not be used any more.
The above information disclosed in this background section is only for enhancement of understanding of the background of the technology described herein and, therefore, certain information may be included in the background that does not form the prior art that is already known in this country to a person of ordinary skill in the art.
Disclosure of Invention
The present application mainly aims to provide an encoding method, an encoding device, a computer-readable storage medium, a processor and a storage system for QLC NAND, so as to solve the problem of short lifetime of NAND flash memory medium in the prior art.
In order to achieve the above object, according to one aspect of the present application, there is provided an encoding method of a QLC NAND, the QLC NAND including a word line and a plurality of codec units, the word line including a plurality of pages including a lower-order page, a middle-order page, an upper-order page, and a highest-order page, the encoding method including: splitting each coding and decoding unit into four parts, namely a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit and a fourth coding and decoding unit; distributing the first coding and decoding units in the lower-order pages, the second coding and decoding units in the middle-order pages, the third coding and decoding units in the upper-order pages and the fourth coding and decoding units in the highest-order pages.
Further, splitting each of the coding and decoding units into four parts includes: and averagely splitting each coding and decoding unit into four parts.
Further, the QLC NAND further includes a plurality of error detection and correction units, the number of the error detection and correction units being equal to the number of the codec units, and the encoding method further includes: the error detection and correction units are sequentially distributed before the fourth coding and decoding units, or the error detection and correction units are sequentially distributed after the fourth coding and decoding units.
Further, the QLC NAND further includes a plurality of error detection and correction units, the number of the error detection and correction units being equal to the number of the codec units, and the encoding method further includes: dividing each error detection and correction unit into four parts, namely a first error detection and correction unit, a second error detection and correction unit, a third error detection and correction unit and a fourth error detection and correction unit; the first error detection and correction unit is distributed after the first codec unit, the second error detection and correction unit is distributed after the second codec unit, the third error detection and correction unit is distributed after the third codec unit, and the fourth error detection and correction unit is distributed after the fourth codec unit.
Further, splitting each of the error detection and correction units into four parts includes: each of the error detection and correction units is split equally into four of the portions.
According to another aspect of the present application, there is provided an encoding apparatus of a QLC NAND including a word line and a plurality of codec units, the word line including a plurality of pages, the pages being a lower page, a middle page, an upper page, and a highest page, respectively, the encoding apparatus including: the splitting unit is used for splitting each coding and decoding unit into four parts, namely a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit and a fourth coding and decoding unit; the distribution unit is used for distributing the first coding and decoding units in the lower-order pages, the second coding and decoding units in the middle-order pages, the third coding and decoding units in the upper-order pages and the fourth coding and decoding units in the highest-order pages.
Further, the splitting unit is further configured to split each of the coding and decoding units into four parts on average.
According to still another aspect of the present application, there is provided a computer-readable storage medium including a stored program, wherein the program, when executed, controls an apparatus in which the computer-readable storage medium is located to perform any one of the encoding methods for the QLC NAND.
According to another aspect of the present application, there is provided a processor for executing a program, wherein the program executes any one of the encoding methods for the QLC NAND.
According to still another aspect of the present application, there is provided a memory system including a QLC NAND; encoding means communicatively coupled to the QLC NAND, the encoding means configured to perform any of the methods.
By applying the technical scheme, the coding and decoding unit is divided into four parts, and then the parts are distributed in the corresponding pages, so that the error ratio of data of any two pages is approximately equal, the phenomenon that the whole word line cannot be used due to the fact that the error ratio of the data of one page is higher is avoided, and the service life of the NAND flash memory medium is prolonged.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this application, illustrate embodiments of the application and, together with the description, serve to explain the application and are not intended to limit the application. In the drawings:
FIG. 1 shows a diagram of a prior art encoding method for QLC NAND;
FIG. 2 shows a schematic encoding principle of a QLC NAND according to an embodiment of the present application;
FIG. 3 shows a flow chart of a method of encoding a QLC NAND according to an embodiment of the present application; and
FIG. 4 shows a QLC NAND encoding device schematic according to an embodiment of the application.
Detailed Description
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
In order to make the technical solutions better understood by those skilled in the art, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only partial embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that the terms "first," "second," and the like in the description and claims of this application and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It should be understood that the data so used may be interchanged under appropriate circumstances such that embodiments of the application described herein may be used. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It will be understood that when an element such as a layer, film, region, or substrate is referred to as being "on" another element, it can be directly on the other element or intervening elements may also be present. Also, in the specification and claims, when an element is described as being "connected" to another element, the element may be "directly connected" to the other element or "connected" to the other element through a third element.
As described in the background, the related art method for encoding QLC NAND results in a low lifespan of NAND flash media, and to solve the above problem of low lifespan of NAND flash media, embodiments of the present application provide an encoding method for QLC NAND, an encoding device, a computer-readable storage medium, a processor, and a storage system.
According to an embodiment of the present application, there is provided an encoding method of a QLC NAND.
Fig. 3 is a flowchart of an encoding method of a QLC NAND according to an embodiment of the present application. The QLC NAND includes a word line and a plurality of codec units, the word line includes a plurality of pages, and the plurality of pages includes a lower page, a middle page, an upper page, and a highest page, as shown in fig. 3, the method includes the steps of:
step S101, splitting each coding and decoding unit into four parts, namely a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit and a fourth coding and decoding unit;
step S102 is to distribute the first codec units in the lower page, the second codec units in the middle page, the third codec units in the upper page, and the fourth codec units in the highest page.
In the scheme, the coding and decoding unit is divided into four parts, and then the parts are distributed in the corresponding pages, so that the error ratio of data of any two pages is approximately equal, the phenomenon that the whole word line cannot be used due to the fact that the error ratio of the data of one page is high is avoided, and the service life of the NAND flash memory medium is prolonged.
It should be noted that the steps illustrated in the flowcharts of the figures may be performed in a computer system such as a set of computer-executable instructions and that, although a logical order is illustrated in the flowcharts, in some cases, the steps illustrated or described may be performed in an order different than presented herein.
In order to further prolong the life of the NAND flash memory medium, in an embodiment of the present application, splitting each of the codec units into four parts includes: and averagely splitting each coding and decoding unit into four parts.
In another embodiment of the present application, the QLC NAND further includes a plurality of error detection and correction units, the number of the error detection and correction units is equal to the number of the codec units, and the encoding method further includes: the error detection and correction units are sequentially distributed before the fourth codec units, or the error detection and correction units are sequentially distributed after the fourth codec units. The error detection and correction unit performs detection and correction of errors.
In another embodiment of the present application, the QLC NAND further includes a plurality of error detection and correction units, the number of the error detection and correction units is equal to the number of the codec units, and the encoding method further includes: dividing each error detection and correction unit into four parts, namely a first error detection and correction unit, a second error detection and correction unit, a third error detection and correction unit and a fourth error detection and correction unit; the first error detecting and correcting means is distributed after the first codec means, the second error detecting and correcting means is distributed after the second codec means, the third error detecting and correcting means is distributed after the third codec means, and the fourth error detecting and correcting means is distributed after the fourth codec means.
In another embodiment of the present application, splitting each of the error detection and correction units into four parts includes: each of the error detection and correction units is split equally into four of the above-mentioned parts. The detection and correction of errors are realized.
The embodiment of the present application further provides an encoding device for a QLC NAND, and it should be noted that the encoding device for a QLC NAND according to the embodiment of the present application may be used to execute the encoding method for a QLC NAND according to the embodiment of the present application. The following describes an encoding apparatus for QLC NAND according to an embodiment of the present application.
FIG. 4 is a schematic diagram of an encoding device for QLC NAND according to an embodiment of the present application. The QLC NAND includes a word line including a plurality of pages, which are a lower page, a middle page, an upper page, and a highest page, respectively, and a plurality of coding and decoding units, as shown in fig. 4, the apparatus includes:
a first splitting unit 10, configured to split each of the coding and decoding units into four parts, which are a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit, and a fourth coding and decoding unit respectively;
a first distribution unit 20 configured to distribute the first codec unit in the lower-order page, the second codec unit in the middle-order page, the third codec unit in the upper-order page, and the fourth codec unit in the highest-order page.
In the scheme, the splitting unit splits the coding and decoding unit into four parts, and the first distribution unit distributes the parts in the corresponding pages, so that the error ratios of data of any two pages are approximately equal, the phenomenon that the whole word line cannot be used due to the fact that the error ratio of the data of one page is high is avoided, and the service life of the NAND flash memory medium is prolonged.
In yet another embodiment of the present application, the first splitting unit is further configured to split each of the coding and decoding units into four parts on average.
In another embodiment of the present application, the QLC NAND further includes a plurality of error detection and correction units, the number of the error detection and correction units being equal to the number of the codec units, and the encoding apparatus further includes a second distribution unit configured to sequentially distribute the plurality of error detection and correction units before the fourth codec units or sequentially distribute the plurality of error detection and correction units after the fourth codec units. The error detection and correction unit performs detection and correction of errors.
In yet another embodiment of the present application, the QLC NAND further includes a plurality of error detection and correction units, the number of the error detection and correction units being equal to the number of the codec units, and the encoding apparatus further includes a second splitting unit and a third distribution unit, the second splitting unit being configured to split each of the error detection and correction units into four parts, which are a first error detection and correction unit, a second error detection and correction unit, a third error detection and correction unit, and a fourth error detection and correction unit, respectively; the third distribution unit is configured to distribute the first error detection and correction unit after the first codec unit, distribute the second error detection and correction unit after the second codec unit, distribute the third error detection and correction unit after the third codec unit, and distribute the fourth error detection and correction unit after the fourth codec unit.
In another embodiment of the present application, splitting each of the error detection and correction units into four parts includes: each of the error detection and correction units is split equally into four of the above-mentioned parts. The detection and correction of errors are realized.
The encoding device of the QLC NAND comprises a processor and a memory, wherein the first splitting unit, the first distributing unit and the like are stored in the memory as program units, and the processor executes the program units stored in the memory to realize corresponding functions.
The processor comprises a kernel, and the kernel calls the corresponding program unit from the memory. One or more cores can be set, and the service life of the QLC NAND is prolonged by adjusting the parameters of the cores.
The memory may include volatile memory in a computer readable medium, Random Access Memory (RAM) and/or nonvolatile memory such as Read Only Memory (ROM) or flash memory (flash RAM), and the memory includes at least one memory chip.
The embodiment of the invention provides a computer-readable storage medium, which includes a stored program, and when the program runs, the apparatus where the computer-readable storage medium is located is controlled to execute the encoding method of the QLC NAND.
The embodiment of the invention provides a processor, wherein the processor is used for running a program, and the QLC NAND coding method is executed when the program runs.
The embodiment of the invention provides equipment, which comprises a processor, a memory and a program which is stored on the memory and can run on the processor, wherein when the processor executes the program, at least the following steps are realized:
step S101, splitting each coding and decoding unit into four parts, namely a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit and a fourth coding and decoding unit;
step S102 is to distribute the first codec units in the lower page, the second codec units in the middle page, the third codec units in the upper page, and the fourth codec units in the highest page.
The device herein may be a server, a PC, a PAD, a mobile phone, etc.
The embodiment of the invention provides a storage system, which comprises a QLC NAND and an encoding device, wherein the encoding device is in communication connection with the QLC NAND, and is used for executing any one of the methods. The system splitting unit splits the coding and decoding unit into four parts, and the first distribution unit distributes the parts in the corresponding pages, so that the error ratio of data of any two pages is approximately equal, the phenomenon that the whole word line cannot be used due to the fact that the error ratio of data of one page is high is avoided, and the service life of the NAND flash memory medium is prolonged.
The present application further provides a computer program product adapted to perform a program of initializing at least the following method steps when executed on a data processing device:
step S101, splitting each coding and decoding unit into four parts, namely a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit and a fourth coding and decoding unit;
step S102 is to distribute the first codec units in the lower page, the second codec units in the middle page, the third codec units in the upper page, and the fourth codec units in the highest page.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). The memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in the process, method, article, or apparatus that comprises the element.
Examples
The embodiment relates to a specific encoding method of QLC NAND. AU0 to AU15 in fig. 1 represent codec units, ECC0 to ECC15 represent error detection and correction units, and fig. 2 is a diagram in which AU0 to AU15 in fig. 1 are divided into four parts, AU0 is divided into AU01 to AU04, AU1 is divided into AU11 to AU14, AU15 is divided into AU151 to AU154, and ECC0 to ECC15 in fig. 2 are distributed after AU04 to AU154, but the coding method is not limited to that shown in fig. 2, and ECC0 to ECC15 may be distributed after AU01 to AU151, ECC0 to ECC15 is distributed after AU02 to AU152, and ECC0 to ECC15 is distributed after AU03 to AU 153.
Preferably, the AU0 to AU15 are equally divided into four parts, the coding and decoding unit is divided into four parts, and then the parts are distributed in corresponding pages, so that the error ratio of data of any two pages is approximately equal, the phenomenon that the whole word line cannot be used due to the fact that the error ratio of data of a certain page is high is avoided, and the service life of the NAND flash memory medium is prolonged.
From the above description, it can be seen that the above-described embodiments of the present application achieve the following technical effects:
1) according to the encoding method of the QLC NAND, the encoding and decoding unit is divided into four parts, and then the parts are distributed in the corresponding pages, so that the error ratio of data of any two pages is approximately equal, the phenomenon that the whole word line cannot be used due to the fact that the error ratio of the data of one page is high is avoided, and the service life of the NAND flash memory medium is prolonged.
2) The utility model provides a QLC NAND's coding device, the split unit is divided into four parts with the codec unit split, and first distribution unit distributes each part in the page that corresponds for the data proportion of makeing mistakes of arbitrary two pages is approximately equal, can not be higher because of the data proportion of makeing mistakes of a certain page, and lead to whole word line to be unable to use, and then prolonged the life-span of NAND flash memory medium.
3) According to the storage system, the splitting unit splits the coding and decoding unit into four parts, and the first distribution unit distributes the parts in the corresponding pages, so that the error ratio of data of any two pages is approximately equal, the situation that the whole word line cannot be used due to the fact that the error ratio of the data of a certain page is higher is avoided, and the service life of the NAND flash memory medium is prolonged.
The above description is only a preferred embodiment of the present application and is not intended to limit the present application, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (10)

1. An encoding method of a QLC NAND, wherein the QLC NAND comprises a word line and a plurality of codec units, the word line comprises a plurality of pages, and the plurality of pages comprise a lower page, a middle page, an upper page and a highest page, the encoding method comprises:
splitting each coding and decoding unit into four parts, namely a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit and a fourth coding and decoding unit;
distributing the first coding and decoding units in the lower-order pages, the second coding and decoding units in the middle-order pages, the third coding and decoding units in the upper-order pages and the fourth coding and decoding units in the highest-order pages.
2. The QLC NAND coding method of claim 1, wherein splitting each codec unit into four parts comprises:
and averagely splitting each coding and decoding unit into four parts.
3. The encoding method of a QLC NAND as claimed in claim 1, wherein the QLC NAND further comprises a plurality of error detection and correction units equal in number to the number of the codec units, the encoding method further comprising:
the error detection and correction units are sequentially distributed before the fourth coding and decoding units, or the error detection and correction units are sequentially distributed after the fourth coding and decoding units.
4. The encoding method of a QLC NAND as claimed in claim 1, wherein the QLC NAND further comprises a plurality of error detection and correction units equal in number to the number of the codec units, the encoding method further comprising:
dividing each error detection and correction unit into four parts, namely a first error detection and correction unit, a second error detection and correction unit, a third error detection and correction unit and a fourth error detection and correction unit;
the first error detection and correction unit is distributed after the first codec unit, the second error detection and correction unit is distributed after the second codec unit, the third error detection and correction unit is distributed after the third codec unit, and the fourth error detection and correction unit is distributed after the fourth codec unit.
5. The QLC NAND coding method of claim 4, wherein splitting each of the error detection and correction units into four parts comprises:
each of the error detection and correction units is split equally into four of the portions.
6. An encoding apparatus of a QLC NAND, the QLC NAND comprising a word line and a plurality of codec units, the word line comprising a plurality of pages, the pages being a lower page, a middle page, an upper page, and a highest page, respectively, the encoding apparatus comprising:
the splitting unit is used for splitting each coding and decoding unit into four parts, namely a first coding and decoding unit, a second coding and decoding unit, a third coding and decoding unit and a fourth coding and decoding unit;
the distribution unit is used for distributing the first coding and decoding units in the lower-order pages, the second coding and decoding units in the middle-order pages, the third coding and decoding units in the upper-order pages and the fourth coding and decoding units in the highest-order pages.
7. The encoding apparatus as claimed in claim 6, wherein the splitting unit is further configured to split each of the codec units into four parts on average.
8. A computer-readable storage medium, comprising a stored program, wherein when the program runs, the computer-readable storage medium controls an apparatus to execute the encoding method for the QLC NAND as claimed in any one of claims 1 to 5.
9. A processor, wherein the processor is configured to execute a program, wherein the program executes the encoding method for the QLC NAND as claimed in any one of claims 1 to 5.
10. A storage system, comprising:
QLC NAND;
encoding means communicatively coupled to the QLC NAND, the encoding means configured to perform the method of any of claims 1-5.
CN202011085907.4A 2020-10-12 2020-10-12 Encoding method and encoding device for QLC NAND Withdrawn CN112214172A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011085907.4A CN112214172A (en) 2020-10-12 2020-10-12 Encoding method and encoding device for QLC NAND
CN202011602957.5A CN112506446B (en) 2020-10-12 2020-12-29 Flash memory coding method and coding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011085907.4A CN112214172A (en) 2020-10-12 2020-10-12 Encoding method and encoding device for QLC NAND

Publications (1)

Publication Number Publication Date
CN112214172A true CN112214172A (en) 2021-01-12

Family

ID=74053618

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202011085907.4A Withdrawn CN112214172A (en) 2020-10-12 2020-10-12 Encoding method and encoding device for QLC NAND
CN202011602957.5A Active CN112506446B (en) 2020-10-12 2020-12-29 Flash memory coding method and coding device

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202011602957.5A Active CN112506446B (en) 2020-10-12 2020-12-29 Flash memory coding method and coding device

Country Status (1)

Country Link
CN (2) CN112214172A (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8020060B2 (en) * 2006-01-18 2011-09-13 Sandisk Il Ltd Method of arranging data in a multi-level cell memory device
CN103098378B (en) * 2010-09-15 2014-08-20 桑迪士克科技股份有限公司 System and method of distributive ecc processing
CN104217761B (en) * 2013-05-31 2018-12-14 慧荣科技股份有限公司 Data storage device and error correction method thereof
US9343170B2 (en) * 2014-06-24 2016-05-17 Hgst Technologies Santa Ana, Inc. Word-line inter-cell interference detector in flash system
CN105788647B (en) * 2014-12-26 2019-02-22 北京兆易创新科技股份有限公司 A kind of error correction method and device of nonvolatile storage
US10289313B2 (en) * 2016-06-28 2019-05-14 Intel Corporation Method and apparatus for improving sequential reading in NAND flash

Also Published As

Publication number Publication date
CN112506446A (en) 2021-03-16
CN112506446B (en) 2024-05-24

Similar Documents

Publication Publication Date Title
US11287984B2 (en) Method and device for writing stored data into storage medium based on flash memory
CN107968810B (en) Resource scheduling method, device and system for server cluster
KR102490899B1 (en) Changing lockstep configuration dynamically
TW201526010A (en) Method for performing error correction, and associated memory apparatus thereof and associated controller thereof
CN103513938A (en) System expansion method and device of redundant array of independent disks (RAID)
US10929033B2 (en) Allocating variable media types of memory devices in a memory system
US20190205212A1 (en) Method and apparatus for storing data and method and apparatus for recovering data
US20150310920A1 (en) Storage device, memory controller and memory control method
CN107729174B (en) Memory device, method of storing data thereof, and controller thereof
US20200401353A1 (en) Resource allocation in memory systems based on operation modes
CN103713857A (en) Data storage method and storage device
CN112214172A (en) Encoding method and encoding device for QLC NAND
CN111399780B (en) Data writing method, device and equipment
US20180373746A1 (en) Table partition configuration method, apparatus and system for database system
CN114896326A (en) Method and device for importing large-data-volume text file into database
WO2020238653A1 (en) Encoding method in distributed system environment, decoding method in distributed system environment, and corresponding apparatuses
US20220043588A1 (en) Localized memory traffic control for high-speed memory devices
CN110032446B (en) Method and device for allocating memory space in embedded system
CN110377262B (en) Data storage method and device, storage medium and processor
US20180150237A1 (en) Electronic device and page merging method therefor
US10628061B2 (en) Systems and methods for rebalancing striped information across multiple storage devices
CN111951860A (en) Nonvolatile memory write processing method and device
CN110634525B (en) Nonvolatile memory processing method and device
US11829623B2 (en) Using incomplete super blocks for increased write performance
CN110634521B (en) Nonvolatile memory processing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20210112