Error rate analysis method, system and device of MLC chip

文档序号:19690 发布日期:2021-09-21 浏览:27次 中文

阅读说明:本技术 一种mlc芯片的错误率分析方法、系统及装置 (Error rate analysis method, system and device of MLC chip ) 是由 王敏 张闯 任智新 于 2021-08-24 设计创作,主要内容包括:本发明公开了一种MLC芯片的错误率分析方法、系统及装置,从MLC芯片中选取数据块,并将数据块进行擦写操作;待擦写操作完成后,读取数据块的每个第一页和第二页对应的每组双比特位,并确定每组双比特位的比特状态;统计目标页对应的所有双比特位在表示数据写入错误的目标比特状态下的第一总数量,以此得到目标页在目标比特状态下的第一错误率;统计数据块对应的所有双比特位在目标比特状态下的第二总数量,以此得到数据块在目标比特状态下的第二错误率,以基于第一/第二错误率分析芯片性能。可见,本申请可对MLC芯片的具体数据块和页进行错误率分析,且可在不同比特状态下分析具体数据块和页的错误率,有利于MLC芯片的性能全面分析。(The invention discloses an error rate analysis method, a system and a device of an MLC chip, wherein a data block is selected from the MLC chip, and the data block is erased and written; after the erasing operation is finished, reading each group of double-bit bits corresponding to each first page and each second page of the data block, and determining the bit state of each group of double-bit bits; counting a first total number of all double-bit bits corresponding to the target page in a target bit state representing data write errors, so as to obtain a first error rate of the target page in the target bit state; and counting the second total number of all the double-bit bits corresponding to the data block in the target bit state to obtain a second error rate of the data block in the target bit state, and analyzing the performance of the chip based on the first/second error rate. Therefore, the error rate analysis method and the device can be used for analyzing the error rate of the specific data block and page of the MLC chip, and analyzing the error rate of the specific data block and page under different bit states, and are beneficial to comprehensive analysis of the performance of the MLC chip.)

1. An error rate analysis method of an MLC chip, comprising:

selecting a preset number of data blocks from an MLC chip, and performing erasing operation on the data blocks for a preset number of times; the data block comprises 2 x N pages, wherein the 2 x N pages are divided into N pairs of pages, and each pair of pages comprises a first page for storing high bits in double bits and a second page for storing low bits in the double bits; all the first pages in the data block write the same data, and all the second pages in the data block write the same data; n is an integer greater than 1;

after the erasing operation is finished, reading each group of double-bit bits corresponding to each first page and each second page of the data block, and determining the bit state of each group of double-bit bits; wherein, the bit states comprise a first bit state for indicating that the data is written correctly and three second bit states for indicating that the data is written wrongly;

counting a first total number of all double bits corresponding to a target page in a target bit state, and dividing the first total number by the total number of the double bits corresponding to the target page to obtain a first error rate of the target page in the target bit state; wherein the target page is any one of the first pages or any one of the second pages; the target bit state is any one of the second bit states;

counting a second total number of all the double-bit bits corresponding to the data block in the target bit state, and dividing the second total number by the total number of the double-bit bits corresponding to the data block to obtain a second error rate of the data block in the target bit state, so as to analyze the performance of the MLC chip based on the first error rate and the second error rate;

the process of erasing and writing the data block for the preset times comprises the following steps:

carrying out data erasing operation on the data block; wherein, the erased states of all the pages in the data block are 11;

performing data writing operation on the data block; wherein, the bit data written in the first page in the data block are all 1, and the bit data written in the second page are all 0;

and after the data writing operation is finished, returning to the step of executing the data erasing operation on the data block until the total erasing operation times of the data block reach the preset times.

2. The method of analyzing error rate of MLC chip of claim 1, wherein while counting the first total number of all dibit bits corresponding to the target page in the target bit state, the method further comprises:

and counting a third total number of all the double-bit bits corresponding to the target page in the first bit state, and dividing the third total number by the total number of the double-bit bits corresponding to the target page to obtain a first correct rate of the target page in the first bit state.

3. The method of analyzing error rate of MLC chip of claim 2, wherein while counting the second total number of all dibit bits corresponding to the data block in the target bit state, the method of analyzing error rate of MLC chip further comprises:

and counting a fourth total number of all the double-bit bits corresponding to the data block in the first bit state, and dividing the fourth total number by the total number of the double-bit bits corresponding to the data block to obtain a second correct rate of the data block in the first bit state.

4. The method of analyzing error rates of MLC chips of claim 1, wherein the step of selecting a predetermined number of data blocks from the MLC chip comprises:

numbering the data blocks of the MLC chip in sequence according to a storage sequence;

and selecting the data blocks without faults from the data blocks, and selecting the same number of odd-numbered data blocks and even-numbered data blocks from the data blocks without faults as the data blocks for analyzing the error rate.

5. The MLC chip error rate analysis method of any of claims 1-4, wherein the process of counting the first total number of all dibits corresponding to the target page in the target bit state comprises:

according toCounting a first total number of all the double-bit bits corresponding to the target page in a target bit state;

wherein the bit states include four of the three second bit states L0, L1, L3, and the first bit state L2; l is2j=1 indicating that the bit state changes from L2 to Lj,L2j=0 indicates that the bit state has not changed from L2 to Lj,j=0、1、3;Indicating L corresponding to t1 th double bit corresponding to the target page2jThe maximum value of t1 is the total number of dibits corresponding to the target page;all double-bit corresponding to the target page is in a bit state LjThe first total number.

6. The method of analyzing error rates of MLC chips of claim 5, wherein the step of counting the second total number of all dibit bits corresponding to the data block in the target bit state comprises:

according to'

Counting a second total number of all the double-bit bits corresponding to the data block in the target bit state;

wherein the content of the first and second substances,representing a first total number corresponding to the t2 th first page or second page of the data block, wherein the maximum value of t2 is the total number of the first pages or the total number of the second pages of the data block;is in bit state L for all double bits corresponding to the data blockjA second total number of.

7. An error rate analysis system for an MLC chip, comprising:

the erasing module is used for selecting a preset number of data blocks from the MLC chip and performing erasing operation on the data blocks for a preset number of times; the data block comprises 2 x N pages, wherein the 2 x N pages are divided into N pairs of pages, and each pair of pages comprises a first page for storing high bits in double bits and a second page for storing low bits in the double bits; all the first pages in the data block write the same data, and all the second pages in the data block write the same data; n is an integer greater than 1;

the state determining module is used for reading each group of double-bit bits corresponding to each first page and each second page of the data block after the erasing operation is finished, and determining the bit state of each group of double-bit bits; wherein, the bit states comprise a first bit state for indicating that the data is written correctly and three second bit states for indicating that the data is written wrongly;

the page counting module is used for counting a first total quantity of all double bits corresponding to a target page in a target bit state, and dividing the first total quantity by the total quantity of the double bits corresponding to the target page to obtain a first error rate of the target page in the target bit state; wherein the target page is any one of the first pages or any one of the second pages; the target bit state is any one of the second bit states;

a data block counting module, configured to count a second total number of all double bits corresponding to the data block in the target bit state, and divide the second total number by the total number of the double bits corresponding to the data block to obtain a second error rate of the data block in the target bit state, so as to analyze performance of the MLC chip based on the first error rate and the second error rate;

the process of erasing and writing the data block for the preset times comprises the following steps:

carrying out data erasing operation on the data block; wherein, the erased states of all the pages in the data block are 11;

performing data writing operation on the data block; wherein, the bit data written in the first page in the data block are all 1, and the bit data written in the second page are all 0;

and after the data writing operation is finished, returning to the step of executing the data erasing operation on the data block until the total erasing operation times of the data block reach the preset times.

8. The system for error rate analysis of MLC chips of claim 7, wherein the page statistics module is further to:

counting a third total number of all double bits corresponding to a target page in a target bit state while counting a first total number of all double bits corresponding to the target page in the target bit state, and dividing the third total number by the total number of the double bits corresponding to the target page to obtain a first correct rate of the target page in the first bit state;

the data block statistics module is further configured to:

and when the second total number of all the double-bit bits corresponding to the data block in the target bit state is counted, counting a fourth total number of all the double-bit bits corresponding to the data block in the first bit state, and dividing the fourth total number by the total number of the double-bit bits corresponding to the data block to obtain a second correct rate of the data block in the first bit state.

9. An error rate analysis device for an MLC chip, comprising:

a memory for storing a computer program;

a processor for implementing the steps of the method of error rate analysis of an MLC chip of any of claims 1 to 6 when executing the computer program.

Technical Field

The present invention relates to the field of storage, and in particular, to a method, a system, and an apparatus for analyzing an error rate of an MLC chip.

Background

At present, NAND Flash (non-volatile Flash memory) is widely used, and is suitable for various storage situations, and its architecture is divided into three types, namely SLC (Single-Level Cell, Single-layer Cell, which means 1 storage Cell can store 1 bit of data, and there are two cases of 0 and 1), MLC (Multi-Level Cell, double-layer Cell, which means 1 storage Cell can store 2 bits of data, and there are four cases of (11, 10, 01, 00)), and TLC (Triple-Level Cell, three-layer Cell, which means 1 storage Cell can store 3 bits of data, and there are 8 cases of (000, 001, 010, 011, 100, 101, 110, 111)). The MLC chip is a mainstream memory chip, and the performance of the MLC chip mainly depends on the error rate of writing data by the MLC chip (it can be understood that the higher the error rate of writing data by the MLC chip is, the lower the performance of the MLC chip is generally).

In the prior art, a single-bit global analysis method is generally adopted to calculate the error rate of the data written in the MLC chip. Specifically, the principle of the single-bit global analysis method is as follows: if the written Bit data changes from 0 to 1 or from 1 to 0 when the MLC chip writes data, it is considered that the Bit data has an Error, and the total Error Bit number is accumulated once, then the total Error Bit number is set to M, and the total Bit number participating in the Bit data Error analysis is N, so for the whole MLC chip, BER (Bit Error Ratio, Bit Error probability) = M/N of the data written by the chip. However, the single-bit global analysis method cannot analyze the error rate of a specific data block (block) and page (page) of the MLC chip, which is not favorable for the overall performance analysis of the MLC chip.

Therefore, how to provide a solution to the above technical problem is a problem that needs to be solved by those skilled in the art.

Disclosure of Invention

The invention aims to provide an error rate analysis method, system and device of an MLC chip, which can analyze the error rate of specific data blocks and pages of the MLC chip and analyze the error rate of the specific data blocks and pages under different bit states, and are beneficial to the comprehensive analysis of the performance of the MLC chip.

In order to solve the above technical problem, the present invention provides an error rate analysis method for an MLC chip, including:

selecting a preset number of data blocks from an MLC chip, and performing erasing operation on the data blocks for a preset number of times; the data block comprises 2 x N pages, wherein the 2 x N pages are divided into N pairs of pages, and each pair of pages comprises a first page for storing high bits in double bits and a second page for storing low bits in the double bits; all the first pages in the data block write the same data, and all the second pages in the data block write the same data; n is an integer greater than 1;

after the erasing operation is finished, reading each group of double-bit bits corresponding to each first page and each second page of the data block, and determining the bit state of each group of double-bit bits; wherein, the bit states comprise a first bit state for indicating that the data is written correctly and three second bit states for indicating that the data is written wrongly;

counting a first total number of all double bits corresponding to a target page in a target bit state, and dividing the first total number by the total number of the double bits corresponding to the target page to obtain a first error rate of the target page in the target bit state; wherein the target page is any one of the first pages or any one of the second pages; the target bit state is any one of the second bit states;

and counting a second total number of all the double-bit bits corresponding to the data block in the target bit state, and dividing the second total number by the total number of the double-bit bits corresponding to the data block to obtain a second error rate of the data block in the target bit state, so as to analyze the performance of the MLC chip based on the first error rate and the second error rate.

Preferably, while counting a first total number of all the double-bit bits corresponding to the target page in the target bit state, the error rate analysis method for the MLC chip further includes:

and counting a third total number of all the double-bit bits corresponding to the target page in the first bit state, and dividing the third total number by the total number of the double-bit bits corresponding to the target page to obtain a first correct rate of the target page in the first bit state.

Preferably, while counting a second total number of all the double-bit bits corresponding to the data block in the target bit state, the method for analyzing the error rate of the MLC chip further includes:

and counting a fourth total number of all the double-bit bits corresponding to the data block in the first bit state, and dividing the fourth total number by the total number of the double-bit bits corresponding to the data block to obtain a second correct rate of the data block in the first bit state.

Preferably, the process of selecting a preset number of data blocks from the MLC chip includes:

numbering the data blocks of the MLC chip in sequence according to a storage sequence;

and selecting the data blocks without faults from the data blocks, and selecting the same number of odd-numbered data blocks and even-numbered data blocks from the data blocks without faults as the data blocks for analyzing the error rate.

Preferably, the process of performing erase-write operation on the data block for a preset number of times includes:

carrying out data erasing operation on the data block; wherein, the erased states of all the pages in the data block are 11;

performing data writing operation on the data block; wherein, the bit data written in the first page in the data block are all 1, and the bit data written in the second page are all 0;

and after the data writing operation is finished, returning to the step of executing the data erasing operation on the data block until the total erasing operation times of the data block reach the preset times.

Preferably, the process of counting a first total number of all the dibit bits corresponding to the target page in the target bit state includes:

according toCounting a first total number of all the double-bit bits corresponding to the target page in a target bit state;

wherein the bit states include four of the three second bit states L0, L1, L3, and the first bit state L2; l is2j=1 indicating that the bit state changes from L2 to Lj,L2j=0 indicates that the bit state has not changed from L2 to Lj,j=0、1、3;Indicating L corresponding to t1 th double bit corresponding to the target page2jThe maximum value of t1 is the total number of dibits corresponding to the target page;all double-bit corresponding to the target page is in a bit state LjThe first total number.

Preferably, the process of counting the second total number of all dibits corresponding to the data block in the target bit state includes:

according toCounting a second total number of all the double-bit bits corresponding to the data block in the target bit state;

wherein the content of the first and second substances,representing a first total number corresponding to the t2 th first page or second page of the data block, wherein the maximum value of t2 is the total number of the first pages or the total number of the second pages of the data block;is in bit state L for all double bits corresponding to the data blockjA second total number of.

In order to solve the above technical problem, the present invention further provides an error rate analysis system for an MLC chip, including:

the erasing module is used for selecting a preset number of data blocks from the MLC chip and performing erasing operation on the data blocks for a preset number of times; the data block comprises 2 x N pages, wherein the 2 x N pages are divided into N pairs of pages, and each pair of pages comprises a first page for storing high bits in double bits and a second page for storing low bits in the double bits; all the first pages in the data block write the same data, and all the second pages in the data block write the same data; n is an integer greater than 1;

the state determining module is used for reading each group of double-bit bits corresponding to each first page and each second page of the data block after the erasing operation is finished, and determining the bit state of each group of double-bit bits; wherein, the bit states comprise a first bit state for indicating that the data is written correctly and three second bit states for indicating that the data is written wrongly;

the page counting module is used for counting a first total quantity of all double bits corresponding to a target page in a target bit state, and dividing the first total quantity by the total quantity of the double bits corresponding to the target page to obtain a first error rate of the target page in the target bit state; wherein the target page is any one of the first pages or any one of the second pages; the target bit state is any one of the second bit states;

a data block counting module, configured to count a second total number of all the dibits corresponding to the data block in the target bit state, and divide the second total number by the total number of the dibits corresponding to the data block, to obtain a second error rate of the data block in the target bit state, so as to analyze performance of the MLC chip based on the first error rate and the second error rate.

Preferably, the page statistics module is further configured to:

counting a third total number of all double bits corresponding to a target page in a target bit state while counting a first total number of all double bits corresponding to the target page in the target bit state, and dividing the third total number by the total number of the double bits corresponding to the target page to obtain a first correct rate of the target page in the first bit state;

the data block statistics module is further configured to:

and when the second total number of all the double-bit bits corresponding to the data block in the target bit state is counted, counting a fourth total number of all the double-bit bits corresponding to the data block in the first bit state, and dividing the fourth total number by the total number of the double-bit bits corresponding to the data block to obtain a second correct rate of the data block in the first bit state.

In order to solve the above technical problem, the present invention further provides an error rate analysis device for an MLC chip, including:

a memory for storing a computer program;

a processor for implementing the steps of any of the above-described methods of error rate analysis of MLC chips when executing the computer program.

The invention provides an error rate analysis method of an MLC chip, which comprises the steps of selecting a preset number of data blocks from the MLC chip, and carrying out erasing operation on the data blocks for preset times; after the erasing operation is finished, reading each group of double-bit bits corresponding to each first page and each second page of the data block, and determining the bit state of each group of double-bit bits; counting a first total number of all double-bit bits corresponding to the target page in a target bit state representing data writing errors, and dividing the first total number by the total number of the double-bit bits corresponding to the target page to obtain a first error rate of the target page in the target bit state; and counting a second total number of all the double-bit bits corresponding to the data block in the target bit state, dividing the second total number by the total number of the double-bit bits corresponding to the data block to obtain a second error rate of the data block in the target bit state, and analyzing the performance of the MLC chip based on the first error rate and the second error rate. Therefore, the error rate analysis method and the device can be used for analyzing the error rate of the specific data block and page of the MLC chip, and analyzing the error rate of the specific data block and page under different bit states, and are beneficial to comprehensive analysis of the performance of the MLC chip.

The invention also provides an error rate analysis system and device of the MLC chip, and the error rate analysis system and device have the same beneficial effects as the error rate analysis method.

Drawings

In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed in the prior art and the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings without creative efforts.

FIG. 1 is a flowchart illustrating an error rate analysis method for an MLC chip according to an embodiment of the present invention;

fig. 2 is a schematic diagram illustrating voltage distribution of a dual bit under different bit states according to an embodiment of the present invention;

fig. 3 is a schematic structural diagram of an error rate analysis system of an MLC chip according to an embodiment of the present invention.

Detailed Description

The core of the invention is to provide an error rate analysis method, a system and a device of an MLC chip, which can analyze the error rate of specific data blocks and pages of the MLC chip and analyze the error rate of the specific data blocks and pages under different bit states, and are beneficial to the comprehensive analysis of the performance of the MLC chip.

In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. 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 invention.

Referring to fig. 1, fig. 1 is a flowchart illustrating an error rate analysis method for an MLC chip according to an embodiment of the present invention.

The error rate analysis method of the MLC chip comprises the following steps:

step S1: selecting a preset number of data blocks from the MLC chip, and performing erasing operation on the data blocks for a preset number of times; the data block comprises 2 x N pages, wherein the 2 x N pages are divided into N pairs of pages, and each pair of pages comprises a first page for storing high bits in the double bits and a second page for storing low bits in the double bits; all the first pages in the data block write the same data, and all the second pages write the same data.

Specifically, the MLC chip contains a plurality of data blocks (minimum unit of erase operation) and each data block contains a plurality of pages (minimum unit of write operation), such as 128 pages, 256 pages, and 512 pages. For an MLC chip, two bits (bits) are used as a unit, called as a double Bit, where the double Bit includes an MSB (Most Significant Bit) Bit and an LSB (Least Significant Bit) Bit, and if the originally written content is MN, the MSB Bit (i.e., a high Bit) is M, LSB bits (i.e., a low Bit) is N. It should be noted that the high bits and the low bits of the dibits are mapped to different pages, that is, each data block includes two types of pages, which are respectively called a first page (Upper page) and a second page (lower page), the first page is used for storing the high bits of the dibits, and the second page is used for storing the low bits of the dibits. That is, the first page and the second page are a pair of pages, and the high bits in the first page and the corresponding low bits in the second page can constitute the complete double bits.

Based on this, in the present application, a preset number of data blocks (e.g. 20% of the total number of data blocks of the MLC chip, all data blocks are not generally selected, and thus the data is huge and error rate analysis is inconvenient) are first selected from the MLC chip, and then the selected data blocks are subjected to a stress test, that is, the selected data blocks are subjected to erasing and writing operations for a preset number of times, so as to prepare for subsequent analysis of the error rate of specific data blocks and pages of the MLC chip. It should be noted that the data written by the first pages in the data block is the same, and the data written by the second pages in the data block is the same.

Step S2: after the erasing operation is finished, reading each group of double-bit bits corresponding to each first page and each second page of the data block, and determining the bit state of each group of double-bit bits; the bit states include a first bit state indicating that data is written correctly and three second bit states indicating that data is written incorrectly.

Specifically, after the selected data block is erased and written for the preset number of times, the following operations are performed on any selected data block (taking the first data block as an example): reading each group of double bits corresponding to each first page and each second page of the first data block (reading the high bit of the double bits from the first page of the first data block, reading the low bit of the double bits from the second page of the first data block, and placing the data in a buffer for subsequent analysis), and determining the bit state of each group of double bits (there are four cases of 11, 10, 01, and 00) to determine the error rate of the specific data block and page of the MLC chip for subsequent analysis.

For example, it can be understood that if a group of double bits 10 is originally written into the first page and the second page of the first data block, the bit state of reading the group of double bits from the first page and the second page of the first data block should be 10, and if the bit state of reading the group of double bits from the first page and the second page of the first data block is 11, 01, or 00, it indicates that a write error occurs in the group of double bits. That is, there are four cases of bit states of all the dibits of the first data block: one bit state indicating that data was written correctly (referred to as the first bit state) and three bit states indicating that data was written incorrectly (referred to as the second bit state).

Step S3: counting a first total quantity of all the double-bit bits corresponding to the target page in the target bit state, and dividing the first total quantity by the total quantity of the double-bit bits corresponding to the target page to obtain a first error rate of the target page in the target bit state; the target page is any first page or any second page; the target bit state is any second bit state.

Specifically, taking a target page (referring to any first page or any second page, where the number of the first page and the second page in the same data block is the same) as an example, the present application counts a first total number of all double bits corresponding to the target page in a target bit state (referring to any second bit state), and then divides the first total number corresponding to the target page in the target bit state by the total number of the double bits corresponding to the target page, so as to obtain an error rate (referred to as a first error rate) of the target page in the target bit state, thereby obtaining the first error rate of the target page in three second bit states respectively.

In addition, when counting the page error rates, it is generally easy to think of counting the single bit error rate of the first page and the single bit error rate of the second page in a pair of pages, for example, if bit 1 is uniformly written in the first page and bit 0 is uniformly written in the second page, counting the single bit error rate of the first page, that is, counting the ratio of bit 1 to bit 0 in the first page, and counting the single bit error rate of the second page, that is, counting the ratio of bit 0 to bit 1 in the second page. However, in the MLC chip, the double bit error rate corresponding to the statistical page is more meaningful, and the single bit error rate corresponding to the statistical page cannot directly reflect the double bit error rate corresponding to the page, because a group of double bits "10", bit 1 is written into the first page, bit 0 is written into the second page, if the group of double bits "10" becomes "01", the single bit error numbers of the first page and the second page are both added by 1, and for the double bits, it is only one error, so if the double bit error rate corresponding to the page is calculated from the single bit error rate corresponding to the page, the error deduplication processing is required, and the true double bit error rate corresponding to the page can be obtained.

Step S4: and counting a second total number of all the double-bit bits corresponding to the data block in the target bit state, dividing the second total number by the total number of the double-bit bits corresponding to the data block to obtain a second error rate of the data block in the target bit state, and analyzing the performance of the MLC chip based on the first error rate and the second error rate.

Specifically, taking the first data block as an example for illustration (the rest of data blocks are the same), the present application counts the second total number of all the dibit bits corresponding to the first data block in the target bit state (which refers to any second bit state), and then divides the second total number corresponding to the first data block in the target bit state by the total number of dibit bits corresponding to the first data block, so as to obtain the error rate (referred to as a second error rate) of the first data block in the target bit state, and thus obtain the second error rates of the first data block in the three second bit states, so as to implement a comprehensive analysis of the performance of the MLC chip based on the first error rate corresponding to each page of the data block and the second error rate corresponding to the data block.

The invention provides an error rate analysis method of an MLC chip, which comprises the steps of selecting a preset number of data blocks from the MLC chip, and carrying out erasing operation on the data blocks for preset times; after the erasing operation is finished, reading each group of double-bit bits corresponding to each first page and each second page of the data block, and determining the bit state of each group of double-bit bits; counting a first total number of all double-bit bits corresponding to the target page in a target bit state representing data writing errors, and dividing the first total number by the total number of the double-bit bits corresponding to the target page to obtain a first error rate of the target page in the target bit state; and counting a second total number of all the double-bit bits corresponding to the data block in the target bit state, dividing the second total number by the total number of the double-bit bits corresponding to the data block to obtain a second error rate of the data block in the target bit state, and analyzing the performance of the MLC chip based on the first error rate and the second error rate. Therefore, the error rate analysis method and the device can be used for analyzing the error rate of the specific data block and page of the MLC chip, and analyzing the error rate of the specific data block and page under different bit states, and are beneficial to comprehensive analysis of the performance of the MLC chip.

On the basis of the above-described embodiment:

as an optional embodiment, while counting a first total number of all the double-bit bits corresponding to the target page in the target bit state, the error rate analysis method for the MLC chip further includes:

and counting the third total number of all the double bits corresponding to the target page in the first bit state, and dividing the third total number by the total number of the double bits corresponding to the target page to obtain a first accuracy of the target page in the first bit state.

Further, the method and the device count a first total number of all the double bits corresponding to the target page in the target bit state, count a third total number of all the double bits corresponding to the target page in the first bit state, and divide the third total number of all the double bits corresponding to the target page in the first bit state by the total number of the double bits corresponding to the target page to obtain a correct rate (referred to as a first correct rate) of the target page in the first bit state.

As an optional embodiment, while counting the second total number of all the double-bit bits corresponding to the data block in the target bit state, the method for analyzing the error rate of the MLC chip further includes:

and counting the fourth total number of all the double-bit bits corresponding to the data block in the first bit state, and dividing the fourth total number by the total number of the double-bit bits corresponding to the data block to obtain a second correct rate of the data block in the first bit state.

Further, taking the first data block as an example for illustration (the rest of data blocks are the same), while counting the second total number of all the dibit bits corresponding to the first data block in the target bit state, the present application also counts the fourth total number of all the dibit bits corresponding to the first data block in the first bit state, and divides the fourth total number corresponding to the first data block in the first bit state by the total number of dibit bits corresponding to the first data block, so as to obtain the correct rate (referred to as the second correct rate) of the first data block in the first bit state.

It can be understood that the higher the correctness of each data block of the MLC chip in the first bit state, the higher the correctness of each page of the data block in the first bit state, and the better the performance of the MLC chip.

As an alternative embodiment, the process of selecting a preset number of data blocks from the MLC chip includes:

numbering each data block of the MLC chip according to a storage sequence in sequence;

and selecting a fault-free data block from the data blocks, and selecting the same number of odd-numbered data blocks and even-numbered data blocks from the fault-free data blocks to be used as data blocks for analyzing the error rate.

Specifically, when a preset number of data blocks are selected from the MLC chip, the data blocks of the MLC chip may be numbered (1, 2, 3, 4 … …) in sequence according to the storage order, and then the data blocks are selected according to three conditions: 1) the total number of the selected data blocks = a preset number; 2) the selected data block is a good block (i.e. a data block without a fault), because the error rate of the bad block is high, the bad block can be judged by mistake; 3) the number of the selected odd-numbered data blocks is equal to that of the selected even-numbered data blocks, because the odd-numbered data blocks are different from the even-numbered data blocks in error distribution, and therefore, the even distribution of the odd-numbered data blocks and the even-numbered data blocks should be ensured. The application selects the data blocks without faults from the data blocks of the MLC chip, and selects the odd-numbered data blocks and the even-numbered data blocks with the same number from the data blocks without faults as the data blocks for analyzing the error rate.

As an alternative embodiment, the process of performing erase/write operations on a data block for a preset number of times includes:

carrying out data erasing operation on the data block; wherein, the erased states of all pages in the data block are 11;

carrying out data writing operation on the data block; wherein, the bit data written in the first page in the data block are all 1, and the bit data written in the second page are all 0;

and after the data writing operation is finished, returning to the step of executing the data erasing operation on the data block until the total times of the erasing operation of the data block reach the preset times.

Specifically, taking the first data block as an example (the rest data blocks are the same), the pressure test procedure of the present application on the first data block is as follows (refer to table 1 below): 1) carrying out data erasing operation on the first data block; wherein, the erased states of all the pages in the first data block are 11; 2) performing data writing operation on the first data block; the bit data written in the first page in the first data block are all 1, the bit data written in the second page are all 0, that is, the data written in all the double-bit bits corresponding to the first data block are 10; 3) repeating the data erasing operation and the data writing operation of the step 1) and the step 2) until the total erasing operation frequency of the first data block reaches a preset frequency.

TABLE 1

When data is written into a page of a data block, the voltage of the corresponding memory circuit changes, and as shown in fig. 2, the voltage distribution of the double-bit in different bit states is: voltage < bit state 01 for bit state 11 and voltage < bit state 10 for bit state 00. The change of 11 to 10 is selected during the pressure test, so that the maximum jump of the voltage is ensured, the pressure is maximum, the loss is maximum, and the pressure test is more effective.

As an alternative embodiment, the process of counting a first total number of all the dibit bits corresponding to the target page in the target bit state includes:

according toCounting a first total number of all double-bit bits corresponding to the target page in the target bit state;

wherein, the bit states include four of three second bit states L0, L1, L3 and first bit state L2; l is2j=1 indicating that the bit state changes from L2 to Lj,L2j=0 indicates that the bit state has not changed from L2 to Lj,j=0、1、3;Indicating L corresponding to t1 th double bit corresponding to the target page2jThe maximum value of t1 is the total number of dibits corresponding to the target page;all dibits corresponding to the target page are in bit state LjThe first total number.

Specifically, there are four cases of the bit state of a dibit: one first bit state (denoted by L2) indicating that data was written correctly and three second bit states (denoted by L0, L1, L3) indicating that data was written incorrectly. That is, the bit state of the original double bit written into the data block is L2, and if the bit state of the double bit read from the data block is L2, it indicates that no error occurs in the data, there is a case that no error occurs in the data: the bit state of the dibit is always L2 (in this case denoted L)22) (ii) a If the bit states of the double bits read from the data block are L0, L1, and L3, which indicates that the data has an error, there are three cases of the data having an error: 1) the bit state of the dibit changes from L2 to L0 (this case is denoted as L)20) (ii) a 2) The bit state of the dibit changes from L2 to L1 (this case is denoted as L)21) (ii) a 3) The bit state of the dibit changes from L2 to L3 (this case is denoted as L)23)。

Based on this, the first total number of all the double-bit bits corresponding to the target page in the target bit state (referring to any one of the second bit states) is calculated as:wherein L is2j=1 indicating that the bit state changes from L2 to Lj,L2j=0 indicates that the bit state has not changed from L2 to Lj,j=0、1、3;Indicating L corresponding to t1 th double bit corresponding to the target page2jThe maximum value of t1 is the total number of dibit bits (total number of page bits) corresponding to the target page;all dibits corresponding to the target page are in bit state LjIs as followsThe first total number.

As an alternative embodiment, the process of counting the second total number of all dibits corresponding to the data block in the target bit state includes:

according toCounting a second total number of all the double-bit bits corresponding to the data block in the target bit state;

wherein the content of the first and second substances,the maximum value of t2 is the total number of the first pages or the total number of the second pages of the data block;for all the dibits corresponding to a data block in bit state LjA second total number of.

Specifically, the relationship of the second total number of all the dibits corresponding to the statistical data block in the target bit state (referring to any second bit state) is as follows:wherein, in the step (A),the maximum value of t2 is the total number of the first pages or the total number of the second pages (the total number of the first pages or the total number of the second pages) of the data block;for all the dibits corresponding to a data block in bit state LjA second total number of.

In addition, one table can be drawn based on the total number of all the double-bit bits corresponding to each data block of the MLC chip in each bit state, and another table can be drawn based on the total number of all the double-bit bits corresponding to each page in the data block in each bit state, so that the conversion rule of the bit states can be clearly counted.

For example, the analysis is performed by taking L06B NAND (a non-volatile flash memory chip) as an example, and the chip has 512 blocks, and each block has 256 pages. 40 blocks were selected for testing, 20 odd blocks and 20 even blocks, and the selected block was guaranteed to be a good block, and a stress test of 1000 erasures was performed with the contents of L2 = 10 (0 for the second page and 1 for the first page).

Data reading analysis and statistics are carried out, and the results obtained are shown in the following table 2 (taking page 17 and page 20 as examples):

TABLE 2

The change rule of the bit state can be clearly seen, and the percentage processing is carried out, so that the results of the following table 3 are obtained:

TABLE 3

Referring to fig. 3, fig. 3 is a schematic structural diagram of an error rate analysis system of an MLC chip according to an embodiment of the present invention.

The error rate analysis system of the MLC chip comprises:

the erasing module 1 is used for selecting a preset number of data blocks from the MLC chip and performing erasing operation on the data blocks for a preset number of times; the data block comprises 2 x N pages, wherein the 2 x N pages are divided into N pairs of pages, and each pair of pages comprises a first page for storing high bits in the double bits and a second page for storing low bits in the double bits; all the first pages in the data block write the same data, and all the second pages write the same data; n is an integer greater than 1;

the state determining module 2 is used for reading each group of double-bit bits corresponding to each first page and each second page of the data block after the erasing operation is finished, and determining the bit state of each group of double-bit bits; the bit states comprise a first bit state which represents that data are written correctly and three second bit states which represent that data are written wrongly;

the page counting module 3 is configured to count a first total number of all the dibit bits corresponding to the target page in the target bit state, and divide the first total number by a total number of the dibit bits corresponding to the target page to obtain a first error rate of the target page in the target bit state; the target page is any first page or any second page; the target bit state is any second bit state;

the data block counting module 4 is configured to count a second total number of all the double-bit bits corresponding to the data block in the target bit state, and divide the second total number by the total number of the double-bit bits corresponding to the data block to obtain a second error rate of the data block in the target bit state, so as to analyze the performance of the MLC chip based on the first error rate and the second error rate;

the process of erasing and writing the data block for the preset times comprises the following steps:

carrying out data erasing operation on the data block; wherein, the erased states of all the pages in the data block are 11;

performing data writing operation on the data block; wherein, the bit data written in the first page in the data block are all 1, and the bit data written in the second page are all 0;

and after the data writing operation is finished, returning to the step of executing the data erasing operation on the data block until the total erasing operation times of the data block reach the preset times.

As an alternative embodiment, the page statistics module 3 is further configured to:

counting a third total number of all the double-bit bits corresponding to the target page in the first bit state while counting a first total number of all the double-bit bits corresponding to the target page in the target bit state, and dividing the third total number by the total number of the double-bit bits corresponding to the target page to obtain a first accuracy of the target page in the first bit state;

the data block statistics module 4 is further configured to:

and counting the second total number of all the double-bit bits corresponding to the data block in the target bit state, meanwhile, counting the fourth total number of all the double-bit bits corresponding to the data block in the first bit state, and dividing the fourth total number by the total number of the double-bit bits corresponding to the data block to obtain the second accuracy of the data block in the first bit state.

For introduction of the error rate analysis system provided in the present application, reference is made to the above-mentioned embodiments of the error rate analysis method, and details are not repeated herein.

The present application further provides an error rate analysis device for an MLC chip, comprising:

a memory for storing a computer program;

and the processor is used for realizing the steps of any one of the error rate analysis methods of the MLC chip when executing the computer program.

For introduction of the error rate analysis apparatus provided in the present application, reference is made to the above-mentioned embodiments of the error rate analysis method, and details thereof are not repeated herein.

It is further noted that, in the present specification, relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, 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 a process, method, article, or apparatus that comprises the element.

The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于状态分析的对象管理的方法、系统、设备和存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类