CN102981924A - Method and device suitable for data storage of dynamic coding - Google Patents

Method and device suitable for data storage of dynamic coding Download PDF

Info

Publication number
CN102981924A
CN102981924A CN2012104448056A CN201210444805A CN102981924A CN 102981924 A CN102981924 A CN 102981924A CN 2012104448056 A CN2012104448056 A CN 2012104448056A CN 201210444805 A CN201210444805 A CN 201210444805A CN 102981924 A CN102981924 A CN 102981924A
Authority
CN
China
Prior art keywords
data
row
sector
coding
code
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.)
Granted
Application number
CN2012104448056A
Other languages
Chinese (zh)
Other versions
CN102981924B (en
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.)
Hangzhou Silan Microelectronics Co Ltd
Original Assignee
Hangzhou Silan Microelectronics 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 Hangzhou Silan Microelectronics Co Ltd filed Critical Hangzhou Silan Microelectronics Co Ltd
Priority to CN201210444805.6A priority Critical patent/CN102981924B/en
Publication of CN102981924A publication Critical patent/CN102981924A/en
Application granted granted Critical
Publication of CN102981924B publication Critical patent/CN102981924B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention provides a method suitable for data storage of dynamic coding. The method suitable for data storage of dynamic coding comprises the following steps: combining user information data of an X1 bite to a data sector; sequentially adding the number of the sector, a reverse signal (RS) error correction code of the number of the sector, a first reserved word and a data sector control word before the data sector; carrying out error detection for the user information data and coding an error detection code to obtain an error detection and correction (EDC) check code of an X6 bite, and postfix the EDC check code after the data sector to form a recording sector; dividing the recording sector into X7 rows, and each row comprises M bites. The method is capable of being suitable for dynamic coding, and is high in organization efficiency of a stored data structure.

Description

Be applicable to date storage method and the device of dynamic coding
Technical field
The present invention relates to data storage technology, relate in particular to a kind of date storage method and device that is applicable to dynamic coding.
Background technology
Deposit data before crossing transmission on the various media or with data communication device, can be reorganized or packing with various forms of data structures.This data structure also comprises for the redundant data of inquiring about, error-detection error-correction and data security etc. are appended except comprising original user data.Consider the characteristic of different channels characteristic and storage medium, the data after the reorganization also will be carried out chnnel coding, add synchronous code to realize effective transmission or the storage of data.
Because current environment for use, service time, manufactured materials and the manufacturing process of medium, the factors such as requirement of the medium of transmission channel and environment or data reliability all are constantly to change, therefore can adopt the dynamic data coding at some application scenarios, and this dynamic data coding needs corresponding data structure storage method to adapt with it.
In addition, the organizational efficiency of data structure also is the important indicator of evaluating data structure, usually can be 0.2843 such as the Organization of Data efficient of CD; The Organization of Data efficient of DVD can be 0.4235 usually; The Organization of Data efficient of BD DVD can be 0.5471 usually.
Therefore, how to realize to be applicable to dynamic data coded data storage means, and how the organizational efficiency of the data structure of storage can reach the problem that higher requirement is current needs solution.
Summary of the invention
The technical problem to be solved in the present invention provides a kind of date storage method and device that is applicable to dynamic coding, can be applicable to the dynamic data coding, and the organizational efficiency of the data structure of storage is higher.
For solving the problems of the technologies described above, the invention provides a kind of date storage method that is applicable to dynamic coding, comprising:
With X 1The user profile data of byte form data sector, described X 1Be positive integer;
Add successively RS error correcting code, the first reserved word and the data sector control word of sector number, described sector number before described data sector, the length of the RS error correcting code of described sector number, sector number, the first reserved word and data sector control word is for being followed successively by X 2Byte, X 3Byte, X 4Byte and X 5Byte, wherein X 2Be any positive integer of 2 to 8, X 3Be 2 or 4 or 6 or 8, X 4Be nonnegative integer, X 5Be any positive integer of 1 to 16, the high X of described data sector control word 5* 4 are used to indicate row coding method and row coding method, low X 5* 4 be used to indicate the row checking symbol count L and the row checking symbol count K, wherein L is positive integer, K is nonnegative integer;
Described user profile data are carried out error-detecting error-detecting code coding, obtain X 6The EDC check code of byte, thereby and with described EDC check code suffix after described data sector, form the record sector, wherein X 6Be any positive integer of 1 to 16, the length of described record sector is X 1+ X 2+ X 3+ X 4+ X 5+ X 6Byte;
Described record sector is divided into X 7OK, every behavior M byte, wherein X 7Be any positive integer of 1 to 64, M=(X 1+ X 2+ X 3+ X 4+ X 5+ X 6)/X 7And M is positive integer.
According to one embodiment of present invention, described record sector is being divided into X 7Also comprise after the row: with X 8Individual record sector forms the capable user profile data block of N, wherein X 8Be positive integer, N=X 8* X 7
According to one embodiment of present invention, forming described user profile data block also comprises afterwards:
The row coding method of adopting the indication of described data sector control word is listed as coding to each row of described user profile data block, L * M the row checking symbol and the described user data block that obtain are combined as the capable information data block that (N+L) row M is listed as, adopt afterwards the capable coding method of described data sector control word indication to each every trade coding of advancing of described row information data block, (N+L) * K capable checking symbol and the described row information data block that obtains is combined as the error correction coding block that (N+L) row (M+K) is listed as; Perhaps,
Adopt the capable coding method of described data sector control word indication to each every trade coding of advancing of described user profile data block, N * K the capable checking symbol and the described user data block that obtain are combined as the column information data block that N capable (M+K) is listed as, the row coding method of adopting afterwards the indication of described data sector control word is listed as coding to each row of described column information data block, with obtain L * (M+K) individual row checking symbol is combined into the error correction coding block that (N+L) row (M+K) is listed as with described column information data chunk.
According to one embodiment of present invention, after generating described error correction coding block, also comprise: at every delegation prefixing synchronous code and second reserved word of described error correction coding block, and described the second reserved word each symbol afterwards carried out chnnel coding.
According to one embodiment of present invention, described row checking symbol is counted L and row checking symbol, and to count K variable according to the current application scene dynamics, wherein the current application scene comprises following one or more combination: current environment for use, service time, manufactured materials and the manufacturing process of medium, the medium of transmission channel and environment, the requirement of data reliability.
According to one embodiment of present invention, described row coding method and row coding method are selected from: RS code, convolutional code, BCH code, EDC code, verification and code, Turbo code and LDPC code.
According to one embodiment of present invention, described record sector is divided into X 7Also comprise after the row: described user profile data are carried out scrambler.
According to one embodiment of present invention, the row checking symbol is counted L=10,12 or 16, and the row checking symbol is counted K=2,4,6,8,10,16 or 32.
According to one embodiment of present invention, described user profile data are for being used for the data of optical disc storage, wherein X 1=2048, X 2=4, X 3=2, X 4=1, X 5=1, X 6=4, X 7=10, X 8=16, N=160, M=206.
According to one embodiment of present invention, described user profile data are for being used for the data of Internet Transmission, wherein X 1=1024, X 2=4, X 3=2, X 4=4, X 5=2, X 6=4, X 7=10, X 8=16, N=160, M=104.
According to one embodiment of present invention, described user profile data are for being used for the data of USB flash disk storage, wherein X 1=512, X 2=4, X 3=2, X 4=1, X 5=1, X 6=4, X 7=4, X 8=16, N=64, M=131.
The present invention also provides a kind of data storage device that is applicable to dynamic coding, comprising:
The data sector generation module is with X 1The user profile data of byte form data sector, described X 1Be positive integer;
Laminating module, add successively RS error correcting code, the first reserved word and the data sector control word of sector number, described sector number before described data sector, the length of the RS error correcting code of described sector number, sector number, the first reserved word and data sector control word is for being followed successively by X 2Byte, X 3Byte, X 4Byte and X 5Byte, wherein X 2Be any positive integer of 2 to 8, X 3Be 2 or 4 or 6 or 8, X 4Be nonnegative integer, X 5Be any positive integer of 1 to 16, the high X of described data sector control word 5* 4 are used to indicate row coding method and row coding method, and low X5 * 4 is used to indicate that the row checking symbol is counted L and the row checking symbol is counted K, and wherein L is positive integer, and K is nonnegative integer;
The error-detecting code coding module carries out error-detecting error-detecting code coding to described user profile data, obtains X 6The EDC check code of byte, thereby and with described EDC check code transfer to described laminating module suffix after described data sector, form the record sector, wherein X 6Be any positive integer of 1 to 16, the length of described record sector is X 1+ X 2+ X 3+ X 4+ X 5+ X 6
Record sector branch module is divided into X with described record sector 7OK, every behavior M byte, wherein X 7Be any positive integer of 1 to 64, M=(X 1+ X 2+ X 3+ X 4+ X 5+ X 6)/X 7And M is positive integer.
According to one embodiment of present invention, described data storage device also comprises: user profile data block generation module links to each other with described record sector branch module, with X 8Individual record sector forms the capable user profile data block of N, wherein X 8Be positive integer, N=X 8* X 7
According to one embodiment of present invention, described data storage device also comprises: the Error Correction of Coding module, the row coding method of adopting the indication of described data sector control word is listed as coding to each row of described user profile data block, L * M the row checking symbol and the described user data block that obtain are combined as the capable information data block that (N+L) row M is listed as, adopt afterwards the capable coding method of described data sector control word indication to each every trade coding of advancing of described row information data block, (N+L) * K capable checking symbol and the described row information data block that obtains is combined as the error correction coding block that (N+L) row (M+K) is listed as; Perhaps,
Adopt the capable coding method of described data sector control word indication to each every trade coding of advancing of described user profile data block, N * K the capable checking symbol and the described user data block that obtain are combined as the column information data block that N capable (M+K) is listed as, the row coding method of adopting afterwards the indication of described data sector control word is listed as coding to each row of described column information data block, with obtain L * (M+K) individual row checking symbol is combined into the error correction coding block that (N+L) row (M+K) is listed as with described column information data chunk.
According to one embodiment of present invention, described data storage device also comprises: the synchronous code maker, at every delegation prefixing synchronous code and second reserved word of described error correction coding block, and carry out chnnel coding to each symbol after described the second reserved word.
According to one embodiment of present invention, described data storage device also comprises: the dynamic parameter generation module, according to the current application scene dynamics generate changeably described row checking symbol count L and the row checking symbol count K, wherein the current application scene comprises following one or more combination: current environment for use, service time, manufactured materials and the manufacturing process of medium, the medium of transmission channel and environment, the requirement of data reliability.
According to one embodiment of present invention, described row coding method and row coding method are selected from: RS code, convolutional code, BCH code, EDC code, verification and code, Turbo code and LDPC code.
According to one embodiment of present invention, described data storage device also comprises: scrambler, link to each other with described record sector branch module, and described user profile data are carried out scrambler.
According to one embodiment of present invention, the row checking symbol is counted L=10,12 or 16, and the row checking symbol is counted K=2,4,6,8,10,16 or 32.
According to one embodiment of present invention, described user profile data are for being used for the data of optical disc storage, wherein X 1=2048, X 2=4, X 3=2, X 4=1, X 5=1, X 6=4, X 7=10, X 8=16, N=160, M=206.
According to one embodiment of present invention, described user profile data are for being used for the data of Internet Transmission, wherein X 1=1024, X 2=4, X 3=2, X 4=4, X 5=2, X 6=4, X 7=10, X 8=16, N=160, M=104.
According to one embodiment of present invention, described user profile data are for being used for the data of USB flash disk storage, wherein X 1=512, X 2=4, X 3=2, X 4=1, X 5=1, X 6=4, X 7=4, X 8=16, N=64, M=131.
Compared with prior art, the present invention has the following advantages:
The embodiment of the invention provides a kind of date storage method and device that is applicable to dynamic coding, goes for high-density storage media, and is comprising in the situation of chnnel coding, and Organization of Data efficient can reach 0.6918.
In addition, the embodiment of the invention was added with the data sector control word before the user profile data, this control word is used to indicate row coding method, row coding method, row checking symbol number and row checking symbol number, these parameters all can be set according to the current application scene dynamics, thereby so that the data structure of storage can be applicable to the dynamic correction coding.
Description of drawings
Fig. 1 is the schematic flow sheet of the date storage method of the embodiment of the invention;
Fig. 2 is the structured flowchart of the data storage device of the embodiment of the invention;
Fig. 3 is the structured flowchart of the data deciphering device of the embodiment of the invention.
Embodiment
The invention will be further described below in conjunction with specific embodiments and the drawings, but should not limit protection scope of the present invention with this.
With reference to figure 1, the date storage method of present embodiment comprises:
Step S11 is with X 1The user profile data of byte form data sector, described X 1Be positive integer;
Step S12, add successively RS error correcting code, the first reserved word and the data sector control word of sector number, described sector number before described data sector, the length of the RS error correcting code of described sector number, sector number, the first reserved word and data sector control word is for being followed successively by X 2Byte, X 3Byte, X 4Byte and X 5Byte, wherein X 2Be any positive integer of 2 to 8, X 3Be 2 or 4 or 6 or 8, X 4Be nonnegative integer, X 5Be any positive integer of 1 to 16, the high X of described data sector control word 5* 4 are used to indicate row coding method and row coding method, low X 5* 4 are used to indicate that the row checking symbol is counted L and the row checking symbol is counted K, and wherein L is positive integer, and K is non-negative
Integer;
Step S13 carries out error-detecting error-detecting code coding to described user profile data, obtains X 6The EDC check code of byte, thereby and with described EDC check code suffix after described data sector, form the record sector, wherein X 6Be any positive integer of 1 to 16, the length of described record sector is X 1+ X 2+ X 3+ X 4+ X 5+ X 6Byte;
Step S14 is divided into X with described record sector 7OK, every behavior M byte, wherein X 7Be any positive integer of 1 to 64, M=(X 1+ X 2+ X 3+ X 4+ X 5+ X 6)/X 7And M is positive integer.
In addition, after step S14, can also be with X 8Individual record sector forms the capable user profile data block of N, wherein X 8Be positive integer, N=X 8* X 7
The first example
The below adopts a nonrestrictive example to be elaborated, and this example describes as an example of optical disc storage example.The first step at first is that 2048(is X with length 1=2048) the user profile data of byte form data sector, and the structure of the data sector of gained is as shown in table 1:
Table 1 data sector
U 0 U 1 ?...... U 2046 U 2047
Second step, before the data sector that forms, RS error correcting code (SECC), the first reserved word (RSV) and the data sector control word (SCON) of adding successively sector number (SID), sector number (SID), wherein the length of sector number is that 4 bytes (are X 2=4), the length of the RS error correcting code of sector number is that 2 bytes (are X 3=2), the length of the first reserved word is that 1 byte (is X 4=1), the length of data sector control word is that 1 byte (is X 5=1).The structure of the data sector after adding is followed successively by: the RS error correcting code of sector number, sector number, the first reserved word, data sector control word, user profile data.
Afterwards, can also carry out error-detecting code (EDC, ErrorDetection Code) coding to the user profile data of 2048 bytes, obtaining 4 bytes (is X 6=4) EDC check code, and with the EDC check code suffix that obtains after data sector, namely suffix finally forms the record sector of 2060 bytes after the user profile data.
For assurance record sector can form matrix, and guarantee error correction execution efficient.The symbol of every row should be in 100 ~ 300 bytes after the branch.In the present embodiment, will recording the sector, to be divided into 10 row (be X 7=10), every behavior 206 bytes (being M=206), the structure of the record sector after the branch is as shown in table 2:
Record sector after table 2 branch
Figure BDA00002376434900061
Figure BDA00002376434900071
In the table 2, SID 0, SID 1, SID 2, SID 3Be sector number; SECC 0, SECC 1RS error correcting code for sector number; RSV is the first reserved word, and its low 4 can be used for preserving interleaving degree I or can be 0H, and high 4 can be set to 0H; SCON is the data sector control word, and wherein high 4 can be used to indicate row coding method and row coding method, and low 4 can be used to refer to that the row checking symbol is counted L and the row checking symbol is counted K; U 0-U 2047Be the user profile data; EDC 0-EDC 3Be the EDC check code.
In addition, specific implementation about the RS error correcting code of sector number and user profile data can be referring to document " error correcting code---principle and method (revised edition) " (Wang Xinmei, Xiao Guo town), publishing house of Xian Electronics Science and Technology University, ISBN:7560601643, calendar year 2001.
In addition, can also carry out scrambler to the user profile data in the record sector, the length behind the scrambler is constant, still is 2048 bytes, and the scrambler data with scrambler replace the user profile data afterwards.The specific implementation of scrambler sees also document " error correcting code---principle and method (revised edition) " (Wang Xinmei, Xiao Guo town), publishing house of Xian Electronics Science and Technology University, ISBN:7560601643, calendar year 2001.
The 3rd step in order to guarantee to go error correction, as when the CD somewhere produces cut, can not have the zone of cut to carry out error correction according to row checking symbol, row checking symbol and other, can select a plurality of records sector composition user profile data block.For example, in the present embodiment, getting 16 (is X 8=16) the record sector forms the user profile data block of 160 row (being N=160), and the symbolic number of every row remains 206 in the user profile data block, and its structure is as shown in table 3:
Figure BDA00002376434900072
Carried out for the 4th step afterwards, each row to the user profile data block are listed as coding, row coding method and row checking symbol are counted L and are determined according to the data sector control word, the row coding method is selected from the RS code, convolutional code, BCH code, the EDC code, verification and code, Turbo code and LDPC code, the row checking symbol is counted L can be variable according to the current application scene dynamics, wherein the current application scene comprises following one or more combination: the current environment for use of medium, service time, manufactured materials and manufacturing process, the medium of transmission channel and environment, the requirement of data reliability.In the present embodiment, what the row coding method was selected is the RS coding, and L is chosen to be 16, and the row checking symbol that obtains is 16 * 206; Row checking symbol and the user data block that will obtain afterwards is combined as the capable information data block of (160+16) row 206 row, and its structure is as shown in table 4:
The capable information data block of table 4
Figure BDA00002376434900081
Carry out afterwards step 5, adopt the capable coding method of data sector control word indication to each every trade coding of advancing of above line information data block, the coding method of wherein going is selected from RS code, convolutional code, BCH code, EDC code, verification and code, Turbo code and LDPC code, the row checking symbol is counted L can be variable according to the current application scene dynamics, wherein the current application scene comprises following one or more combination: current environment for use, service time, manufactured materials and the manufacturing process of medium, the medium of transmission channel and environment, the requirement of data reliability.
The row coding method can with the row coding staff to the same or different, K is chosen to be 2 in the present embodiment, the capable checking symbol that obtains is (160+16) * 2; The capable checking symbol that will obtain afterwards is combined as the error correction coding block that (160+16) row (206+2) is listed as with the row information data block, and its structure is as shown in table 5:
Table 5 error correction coding block
Figure BDA00002376434900082
The row verification is mainly used in tackling burst error and carries out error correction, for optical disc storage, can be used for cut that CD occurs, impression of the hand etc. and carry out error correction; The row verification is mainly used in the random error error correction, for CD, can carry out error correction for situations such as occurring dust on the CD.More preferably, the row checking symbol is counted L=10,12 or 16, and the row checking symbol is counted K=2,4,6,8,10,16 or 32.
Need to prove, be rank of advanced units coding in the present embodiment, goes afterwards coding again, it will be appreciated by those skilled in the art that in other specific embodiments, also can advanced every trade encode, and is listed as afterwards coding again.
After generating error correction coding block, can also be at every delegation prefixing synchronous code and second reserved word of error correction coding block, and each symbol after described the second reserved word carried out chnnel coding, thereby generation physical frame, this physical frame can be used for being stored in storage medium, perhaps via wired or wireless transmission, the storage medium that transfers to receiving end is stored.
The second example
In the example of Internet Transmission, the user profile data (are X by 1024 bytes usually 1=1024) form.Afterwards, before the user profile data, add successively error correcting code (SECC), the first reserved word (RSV) and the data sector control word (SCON) of sector number (SID), sector number (SID), user profile data to 1024 bytes are carried out error-detecting code (EDC, Error Detection Code) coding, obtain the EDC check code, and with the EDC check code suffix that obtains after data sector, namely suffix after the user profile data, the final record sector that forms.The content that comprises in the record sector is followed successively by: the error correcting code of sector number, sector number, the first reserved word, data sector control word, user profile data, EDC check code.Wherein, the length of sector number can be 4 bytes, and the length of the error correcting code of sector number can be 2 bytes, the length of the first reserved word can be 4 bytes, the length of data sector control word can be 2 bytes, and the EDC check code is 4 bytes, thereby finally forms the record sector of 1040 bytes.
To record afterwards the sector and carry out branch, and can form matrix for guaranteeing the record sector, and guarantee error correction execution efficient, the user profile data of every row in the present embodiment, will record the sector and be divided into 10 row, every behavior 104 bytes in 100 ~ 300 bytes after the branch; In order to guarantee to carry out error correction, as disturbing when existing, can carry out error correction according to error correcting code and other data that do not have to disturb, select in the present embodiment 16 record sectors, the user profile data block that forms like this N*M, wherein capable, the M=104 of N=16*10=160.
Afterwards, can go to the user profile data block that forms and encode and the row coding, row coding and row cataloged procedure in its detailed process and above-mentioned the first example are similar, repeat no more here.
The 3rd example
In the example of USB flash disk storage, usually the user profile data are comprised of 512 bytes, need to add successively error correcting code (SECC), the first reserved word (RSV) and the data sector control word (SCON) of sector number (SID), sector number (SID) before the user profile data; Afterwards the user profile data of 512 bytes are carried out error-detecting code (EDC, Error Detection Code) coding, obtain the EDC check code, and with the EDC check code suffix that obtains after data sector, be that suffix is after the user profile data, the final record sector that forms, the content that the record sector comprises is followed successively by: the error correcting code of sector number, sector number, the first reserved word, data sector control word, user profile data, EDC check code.Wherein, the length of sector number can be 4 bytes, and the length of the error correcting code of sector number can be 2 bytes, the length of the first reserved word can be 1 byte, the length of data sector control word can be 1 byte, and the EDC check code is 4 bytes, thereby finally forms the record sector of 524 bytes.
To record afterwards the sector and carry out branch, and can form matrix for guaranteeing the record sector, and guarantee error correction execution efficient, the user profile data of every row in the present embodiment, will record the sector and be divided into 4 row, every behavior 131 bytes in 100 ~ 300 bytes after the branch; In order to guarantee to carry out error correction, as producing mistake when the USB flash disk somewhere, can there be wrong zone to carry out error correction according to error correcting code and other, select in the present embodiment 16 record sectors, the user profile data block that forms like this N*M, wherein capable, the M=131 of N=16*4=64.
Afterwards, can go to the user profile data block that forms and encode and the row coding, row coding and row cataloged procedure in its detailed process and above-mentioned the first example are similar, repeat no more here.
With reference to figure 2, the data storage device of present embodiment comprises: data sector generation module, laminating module 24, error-detecting code coding (EDC) module 21, record sector branch module 25, dynamic parameter generation module 23, Error Correction of Coding (ECC) module 26, synchronous code maker 27 and merging module 28.
Wherein, the data sector generation module is with X 1The user profile data of byte form data sector, X 1Be positive integer.
Laminating module 24 adds RS error correcting code, the first reserved word and the data sector control word of sector number, described sector number successively before described data sector, the length of the RS error correcting code of described sector number, sector number, the first reserved word and data sector control word is for being followed successively by X 2Byte, X 3Byte, X 4Byte and X 5Byte, wherein X 2Be any positive integer of 2 to 8, X 3Be 2 or 4 or 6 or 8, X 4Be nonnegative integer, X 5Be any positive integer of 1 to 16, the high X of described data sector control word 5* 4 are used to indicate row coding method and row coding method, and low X5 * 4 is used to indicate that the row checking symbol is counted L and the row checking symbol is counted K, and wherein L is positive integer, and K is nonnegative integer.Wherein, the RS error correcting code of sector number can be to be undertaken generating behind the RS coding by the sector number of RS coding module 22 according to input.Indication row checking symbol in the data sector control word counts L and the row checking symbol is counted K and can be generated according to the current application scene dynamics by dynamic parameter generation module 23, the current application scene comprises following one or more combination: current environment for use, service time, manufactured materials and the manufacturing process of medium, the medium of transmission channel and environment, the requirement of data reliability.
21 pairs of described user profile data of EDC coding module are carried out error-detecting error-detecting code coding, obtain X 6The EDC check code of byte, thereby and with described EDC check code transfer to described laminating module 24 suffix after described data sector, form the record sector, wherein X 6Be any positive integer of 1 to 16, the length of described record sector is X 1+ X 2+ X 3+ X 4+ X 5+ X 6Record sector branch module 25 is divided into X with described record sector 7OK, every behavior M byte, wherein X 7Be any positive integer of 1 to 64, M=(X 1+ X 2+ X 3+ X 4+ X 5+ X 6)/X 7And M is positive integer.
Record sector branch module 25 will record the sector and be divided into X 7OK, every behavior M byte, wherein X 7Be any positive integer of 1 to 64, M=(X 1+ X 2+ X 3+ X 4+ X 5+ X 6)/X 7And M is positive integer.
Record sector after the branch can transfer to scrambler, and scrambler carries out scrambler to the user profile data, and the data transmission behind the scrambler is to user profile data block generation module (not shown), and this user profile data generation module can be with X 8Individual record sector forms the capable user profile data block of N, wherein X 8Be positive integer, N=X 8* X 7
The user profile transmission of data blocks is to ECC coding module 26, the row coding method of the described data sector control word indication of these ECC coding module 26 employings is listed as coding to each row of described user profile data block, L * M the row checking symbol and the described user data block that obtain are combined as the capable information data block that (N+L) row M is listed as, adopt afterwards the capable coding method of described data sector control word indication to each every trade coding of advancing of described row information data block, (N+L) * K capable checking symbol and the described row information data block that obtains is combined as the error correction coding block that (N+L) row (M+K) is listed as; Perhaps, adopt the capable coding method of described data sector control word indication to each every trade coding of advancing of described user profile data block, N * K the capable checking symbol and the described user data block that obtain are combined as the column information data block that N capable (M+K) is listed as, the row coding method of adopting afterwards the indication of described data sector control word is listed as coding to each row of described column information data block, with obtain L * (M+K) individual row checking symbol is combined into the error correction coding block that (N+L) row (M+K) is listed as with described column information data chunk.
Synchronous code maker 27 is prefixing synchronous code and the second reserved word before every delegation of the error correction coding block that ECC coding module 26 generates, and each symbol after described the second reserved word is carried out chnnel coding.Merge module 28 and merge into physical frame with above-mentioned prefix synchronous code, the second reserved word and via the error correction coding block after the chnnel coding.
About more details of the course of work of data storage device shown in Figure 2, please refer to the associated description of the date storage method in above-described embodiment.
Fig. 3 shows the structured flowchart of the data deciphering device of present embodiment, comprising: synchronous code detector 31, ECC demoder 32 and data buffer 33.
Wherein, synchronous code detector 31 receives physical frame, and prefix synchronous code and the second reserved word that comprises in the physical frame parsed, and obtains the ECC encoding block.
ECC demoder 32 links to each other with synchronous code detector 31, the ECC encoding block is decoded, row coding method and row coding method that row coding/decoding method in the decode procedure, row coding/decoding method adopt with when coding respectively are corresponding, the row checking symbol count that L and row checking symbol are counted K and when encoding the numerical value of employing consistent.Carry out generating a plurality of records sector after the ECC decoding.
Data buffer 33 links to each other with the ECC demoder, a plurality of records sector of generating of buffer memory decoding respectively, and extract respectively sector number in each record sector, user profile data etc.
Although the present invention with preferred embodiment openly as above; but it is not to limit the present invention; any those skilled in the art without departing from the spirit and scope of the present invention; can make possible change and modification, so protection scope of the present invention should be as the criterion with the scope that claim of the present invention was defined.

Claims (22)

1. a date storage method that is applicable to dynamic coding is characterized in that, comprising:
With X 1The user profile data of byte form data sector, described X 1Be positive integer;
Add successively RS error correcting code, the first reserved word and the data sector control word of sector number, described sector number before described data sector, the length of the RS error correcting code of described sector number, sector number, the first reserved word and data sector control word is for being followed successively by X 2Byte, X 3Byte, X 4Byte and X 5Byte, wherein X 2Be any positive integer of 2 to 8, X 3Be 2 or 4 or 6 or 8, X 4Be nonnegative integer, X 5Be any positive integer of 1 to 16, the high X of described data sector control word 5* 4 are used to indicate row coding method and row coding method, low X 5* 4 be used to indicate the row checking symbol count L and the row checking symbol count K, wherein L is positive integer, K is nonnegative integer;
Described user profile data are carried out error-detecting error-detecting code coding, obtain X 6The EDC check code of byte, thereby and with described EDC check code suffix after described data sector, form the record sector, wherein X 6Be any positive integer of 1 to 16, the length of described record sector is X 1+ X 2+ X 3+ X 4+ X 5+ X 6Byte;
Described record sector is divided into X 7OK, every behavior M byte, wherein X 7Be any positive integer of 1 to 64, M=(X 1+ X 2+ X 3+ X 4+ X 5+ X 6)/X 7And M is positive integer.
2. date storage method according to claim 1 is characterized in that, described record sector is being divided into X 7Also comprise after the row: with X 8Individual record sector forms the capable user profile data block of N, wherein X 8Be positive integer, N=X 8* X 7
3. date storage method according to claim 2 is characterized in that, forms described user profile data block and also comprises afterwards:
The row coding method of adopting the indication of described data sector control word is listed as coding to each row of described user profile data block, L * M the row checking symbol and the described user data block that obtain are combined as the capable information data block that (N+L) row M is listed as, adopt afterwards the capable coding method of described data sector control word indication to each every trade coding of advancing of described row information data block, (N+L) * K capable checking symbol and the described row information data block that obtains is combined as the error correction coding block that (N+L) row (M+K) is listed as; Perhaps,
Adopt the capable coding method of described data sector control word indication to each every trade coding of advancing of described user profile data block, N * K the capable checking symbol and the described user data block that obtain are combined as the column information data block that N capable (M+K) is listed as, the row coding method of adopting afterwards the indication of described data sector control word is listed as coding to each row of described column information data block, with obtain L * (M+K) individual row checking symbol is combined into the error correction coding block that (N+L) row (M+K) is listed as with described column information data chunk.
4. date storage method according to claim 3, it is characterized in that, after generating described error correction coding block, also comprise: at every delegation prefixing synchronous code and second reserved word of described error correction coding block, and described the second reserved word each symbol afterwards carried out chnnel coding.
5. each described date storage method in 4 according to claim 1, it is characterized in that, described row checking symbol is counted L and row checking symbol, and to count K variable according to the current application scene dynamics, wherein the current application scene comprises following one or more combination: current environment for use, service time, manufactured materials and the manufacturing process of medium, the medium of transmission channel and environment, the requirement of data reliability.
6. each described date storage method in 4 according to claim 1 is characterized in that described row coding method and row coding method are selected from: RS code, convolutional code, BCH code, EDC code, verification and code, Turbo code and LDPC code.
7. each described date storage method in 4 according to claim 1 is characterized in that, described record sector is divided into X 7Also comprise after the row: described user profile data are carried out scrambler.
8. each described date storage method in 4 according to claim 1 is characterized in that described row checking symbol is counted L=10,12 or 16, and described row checking symbol is counted K=2,4,6,8,10,16 or 32.
9. date storage method according to claim 3 is characterized in that, described user profile data are for being used for the data of optical disc storage, wherein X 1=2048, X 2=4, X 3=2, X 4=1, X 5=1, X 6=4, X 7=10, X 8=16, N=160, M=206.
10. date storage method according to claim 3 is characterized in that, described user profile data are for being used for the data of Internet Transmission, wherein X 1=1024, X 2=4, X 3=2, X 4=4, X 5=2, X 6=4, X 7=10, X 8=16, N=160, M=104.
11. date storage method according to claim 3 is characterized in that, described user profile data are for being used for the data of USB flash disk storage, wherein X 1=512, X 2=4, X 3=2, X 4=1, X 5=1, X 6=4, X 7=4, X 8=16, N=64, M=131.
12. a data storage device that is applicable to dynamic coding is characterized in that, comprising:
The data sector generation module is with X 1The user profile data of byte form data sector, described X 1Be positive integer;
Laminating module, add successively RS error correcting code, the first reserved word and the data sector control word of sector number, described sector number before described data sector, the length of the RS error correcting code of described sector number, sector number, the first reserved word and data sector control word is for being followed successively by X 2Byte, X 3Byte, X 4Byte and X 5Byte, wherein X 2Be any positive integer of 2 to 8, X 3Be 2 or 4 or 6 or 8, X 4Be nonnegative integer, X 5Be any positive integer of 1 to 16, the high X of described data sector control word 5* 4 are used to indicate row coding method and row coding method, and low X5 * 4 is used to indicate that the row checking symbol is counted L and the row checking symbol is counted K, and wherein L is positive integer, and K is nonnegative integer;
The error-detecting code coding module carries out error-detecting error-detecting code coding to described user profile data, obtains X 6The EDC check code of byte, thereby and with described EDC check code transfer to described laminating module suffix after described data sector, form the record sector, wherein X 6Be any positive integer of 1 to 16, the length of described record sector is X 1+ X 2+ X 3+ X 4+ X 5+ X 6
Record sector branch module is divided into X with described record sector 7OK, every behavior M byte, wherein X 7Be any positive integer of 1 to 64, M=(X 1+ X 2+ X 3+ X 4+ X 5+ X 6)/X 7And M is positive integer.
13. data storage device according to claim 12 is characterized in that, also comprises:
User profile data block generation module links to each other with described record sector branch module, with X 8Individual record sector forms the capable user profile data block of N, wherein X 8Be positive integer, N=X 8* X 7
14. data storage device according to claim 13 is characterized in that, also comprises:
The Error Correction of Coding module, the row coding method of adopting the indication of described data sector control word is listed as coding to each row of described user profile data block, L * M the row checking symbol and the described user data block that obtain are combined as the capable information data block that (N+L) row M is listed as, adopt afterwards the capable coding method of described data sector control word indication to each every trade coding of advancing of described row information data block, (N+L) * K capable checking symbol and the described row information data block that obtains is combined as the error correction coding block that (N+L) row (M+K) is listed as; Perhaps,
Adopt the capable coding method of described data sector control word indication to each every trade coding of advancing of described user profile data block, N * K the capable checking symbol and the described user data block that obtain are combined as the column information data block that N capable (M+K) is listed as, the row coding method of adopting afterwards the indication of described data sector control word is listed as coding to each row of described column information data block, with obtain L * (M+K) individual row checking symbol is combined into the error correction coding block that (N+L) row (M+K) is listed as with described column information data chunk.
15. data storage device according to claim 14 is characterized in that, also comprises:
The synchronous code maker at every delegation prefixing synchronous code and second reserved word of described error correction coding block, and carries out chnnel coding to each symbol after described the second reserved word.
16. to 15 each described data storage devices, it is characterized in that according to claim 12, also comprise:
The dynamic parameter generation module, according to the current application scene dynamics generate changeably described row checking symbol count L and the row checking symbol count K, wherein the current application scene comprises following one or more combination: current environment for use, service time, manufactured materials and the manufacturing process of medium, the medium of transmission channel and environment, the requirement of data reliability.
17. to 15 each described data storage devices, it is characterized in that according to claim 12 described row coding method and row coding method are selected from: RS code, convolutional code, BCH code, EDC code, verification and code, Turbo code and LDPC code.
18. to 15 each described data storage devices, it is characterized in that according to claim 12, also comprise:
Scrambler links to each other with described record sector branch module, and described user profile data are carried out scrambler.
19. to 15 each described data storage devices, it is characterized in that according to claim 12 the row checking symbol is counted L=10,12 or 16, the row checking symbol is counted K=2,4,6,8,10,16 or 32.
20. data storage device according to claim 14 is characterized in that, described user profile data are for being used for the data of optical disc storage, wherein X 1=2048, X 2=4, X 3=2, X 4=1, X 5=1, X 6=4, X 7=10, X 8=16, N=160, M=206.
21. data storage device according to claim 14 is characterized in that, described user profile data are for being used for the data of Internet Transmission, wherein X 1=1024, X 2=4, X 3=2, X 4=4, X 5=2, X 6=4, X 7=10, X 8=16, N=160, M=104.
22. data storage device according to claim 14 is characterized in that, described user profile data are for being used for the data of USB flash disk storage, wherein X 1=512, X 2=4, X 3=2, X 4=1, X 5=1, X 6=4, X 7=4, X 8=16, N=64, M=131.
CN201210444805.6A 2012-11-08 2012-11-08 Method and device suitable for data storage of dynamic coding Active CN102981924B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210444805.6A CN102981924B (en) 2012-11-08 2012-11-08 Method and device suitable for data storage of dynamic coding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210444805.6A CN102981924B (en) 2012-11-08 2012-11-08 Method and device suitable for data storage of dynamic coding

Publications (2)

Publication Number Publication Date
CN102981924A true CN102981924A (en) 2013-03-20
CN102981924B CN102981924B (en) 2015-04-29

Family

ID=47855979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210444805.6A Active CN102981924B (en) 2012-11-08 2012-11-08 Method and device suitable for data storage of dynamic coding

Country Status (1)

Country Link
CN (1) CN102981924B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018119741A1 (en) * 2016-12-28 2018-07-05 华为技术有限公司 Data access method, and flash memory apparatus
CN115904798A (en) * 2023-03-09 2023-04-04 苏州萨沙迈半导体有限公司 Error correction and detection method and system of memory and controller

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1355919A (en) * 1999-04-28 2002-06-26 松下电器产业株式会社 Optical disk, optical disk recording and reproducing apparatus, method for recording reproducing, and delecting data on optical disk, and information procesisng system
CN1417790A (en) * 2001-11-09 2003-05-14 株式会社东芝 Signal processing method and device, signal reproducing method and device and record medium
CN1479280A (en) * 2002-08-30 2004-03-03 上海乐金广电电子有限公司 Method of high density data recording of optical recording medium
CN1838297A (en) * 2006-01-16 2006-09-27 华中科技大学 Error correction code and data format for high density optical disk
CN101183565A (en) * 2007-12-12 2008-05-21 深圳市硅格半导体有限公司 Data verification method for storage medium
CN102577495A (en) * 2009-10-14 2012-07-11 高通股份有限公司 Coding methods and apparatus for broadcast channels

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1355919A (en) * 1999-04-28 2002-06-26 松下电器产业株式会社 Optical disk, optical disk recording and reproducing apparatus, method for recording reproducing, and delecting data on optical disk, and information procesisng system
CN1417790A (en) * 2001-11-09 2003-05-14 株式会社东芝 Signal processing method and device, signal reproducing method and device and record medium
CN1479280A (en) * 2002-08-30 2004-03-03 上海乐金广电电子有限公司 Method of high density data recording of optical recording medium
CN1838297A (en) * 2006-01-16 2006-09-27 华中科技大学 Error correction code and data format for high density optical disk
CN101183565A (en) * 2007-12-12 2008-05-21 深圳市硅格半导体有限公司 Data verification method for storage medium
CN102577495A (en) * 2009-10-14 2012-07-11 高通股份有限公司 Coding methods and apparatus for broadcast channels

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
佳一: "DVD视盘系统的记录数据处理和恢复", 《电声技术》 *
傅鸿雅,党小宇: "Turbo乘积码与RS码的混合纠错性能对比分析", 《应用科技》 *
刘进跃: "DVD数据结构和纠错方式", 《电声技术》 *
吴佳佳: "新一代多功能光盘数据格式的研究", 《中国优秀硕士学位论文全文数据库 信息科技辑 》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018119741A1 (en) * 2016-12-28 2018-07-05 华为技术有限公司 Data access method, and flash memory apparatus
CN115904798A (en) * 2023-03-09 2023-04-04 苏州萨沙迈半导体有限公司 Error correction and detection method and system of memory and controller

Also Published As

Publication number Publication date
CN102981924B (en) 2015-04-29

Similar Documents

Publication Publication Date Title
CN103392172B (en) Correct the erasing in storage array
US7877662B2 (en) Reverse concatenation for product codes
US8930798B2 (en) Data encoding in solid state storage devices
US8560915B2 (en) 2D product code and method for detecting false decoding errors
JP2013524609A5 (en)
CN102468855A (en) Apparatus and method for correcting at least one bit error within a coded bit sequence
US7978100B2 (en) Encoding and decoding methods using generalized concatenated codes (GCC)
CN102904585B (en) Dynamic correction coding and decoding method and device
US20080235562A1 (en) Reverse concatenation for product codes
US8458557B1 (en) Interleaved error correction coding for channels with non-uniform signal-to-noise ratios
JP2002509331A5 (en)
US20070220396A1 (en) Error correction code striping
US8365053B2 (en) Encoding and decoding data using store and exclusive or operations
CN102981924B (en) Method and device suitable for data storage of dynamic coding
KR20090100346A (en) Reverse concatenation for product codes
US8627167B1 (en) Methods and apparatus for providing multi-layered coding for memory devices
CN100495932C (en) Data coding method capable of correcting error
US20190020359A1 (en) Systematic coding technique for erasure correction
US8472130B2 (en) Track-dependent data randomization mitigating false VFO detection
KR102023120B1 (en) Concatenated BCH coding method, coding apparatus, and reliability based decoding method
CN102034515A (en) Method for improving error correcting capability of optical storage medium
Signalverarbeitung SV5: Error Correcting Codes
JP2004273114A (en) Data recording method for optical information storage medium
AL-AZZAWI ERROR-CORRECTING CODES AND THEIR APPLICATIONS
KR20150032455A (en) transmitter and signal processing method thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant