A METHOD FOR ENCODING MULTIWORD INFORMATION

Abstract: Multiword information is encoded as based on multibit symbols in relative contiguity with respect to a medium, whilst providing wordwise interleaving and wordwise error protection code facilities. This may provide error locative clues across words of multiword groups, that originate in high protectivity clue words and point to low protectivity target words. The clue words may have a first uniform size and be interspersed in a first uniform manner. The target words may have a second uniform size and be interspersed in a second uniform manner. The organization may be applied for use with optical storage. Sectors may get provisional protectivity as a low-latency error correction mechanism.

Description: A METHOD FOR ENCODING MULTIWORD INFORMATION BACKGROUND OF THE INVENTION The invention relates to a method as recited in the preamble of Claim 1. US Patents 4,559,625 to Berlekamp et al and 5,299,208 to Blaum et al disclose the decoding of interleaved and error protected information, wherein an error pattern found in a first word may give a clue to locate errors in another word of the same group of words. Errors pointed at are relatively closer or more contiguous than other symbols of the word that would generate the clue. The references use a standardized format and a fault model with multisymbol error bursts across various words. Occurrence of an error in a particular word gives a strong probability for an error to occur in a symbol position pointed at in a next word or words. The procedure will often raise the number of corrected errors. The present inventors have recognized a problem with this method: a clue will only materialize when the clue word has been fully corrected. They have recognized a further problem: complete decoding necessitates a whole block, even if only a tiny part thereof were afflicted with errors. Combining this with a mechanically driven carrier will cause an appreciable latency, which for a disc would average about one revolution. SUMMARY TO THE INVENTION In consequence, amongst other things, it is an object of the present invention to provide a coding format wherein clue words will be correctly decoded with a greater degree of certainty than a target word. Now therefore, according to one of its aspects the invention is characterized according to the characterizing part of Claim 1. A clue or a combination of clues, once found, may cause identifying one or more unreliable symbols. With such identifying, such as by characterizing as erasure symbols, error correction will become more powerful. Many codes will correct at most t errors when no error locations are known. Given one or more erasure locations, generally a larger number e>t of erasures may be corrected. Other types of identifying than characterizing as erasure symbols are feasible. Protection against a combination of bursts and random errors will also improve. Alternatively, the providing of erasure locations will need the use of only a lower number of syndrome symbols, thus simplifying the calculation. The invention may be used in a storage environment as well as in a transmission environment. It is a further object of the invention to diminish the above latency for the rather common situation that the errors are sparse- According to a solution therefor, latency will often reduce to about a single sector. The invention also relates to a method for decoding information so encoded, to an encoding and/or decoding device for use with the above method, and to a carrier provided with information for interfacing to such encoding and/or decoding. Further advantageous aspects of the invention are recited in dependent Claims. BRIEF DESCRIPTION OF THE DRAWING These and further aspects and advantages of the invention will be discussed more in detail hereinafter with reference to the disclosure of preferred embodiments, and in particular with reference to the appended Figures that show: Figure 1, a system with encoder, carrier, and decoder; Figure 2, a code format principle; Figure 3, a product code format; Figure 4, a Long Distance Code with burst detection; Figure 5, a picket code and burst indicator subcode; Figure 6, a burst indicator subcode format; Figure 7, a picket code and its product subcode; Figure 8, various further aspects thereof; Figure 9, an alternative format; Figure 10, a detail on the interleaving. Figure 11, the location of local redundancy; Figure 12, the protectivity by local redundancy; Figures 13, 14, possible sector formats. DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS Figure 1 shows a comprehensive system according to the invention, provided with encoder, carrier, and decoder. The embodiment is used for encoding, storing, and finally decoding a sequence of multibit symbols derived from an audio or video signal, or from data. Terminal 20 receives successive symbols that by way of example have an eight bit size. Splitter 22 recurrently and cyclically transfers symbols intended for the clue words to encoder 24, and all other symbols to encoder 26. In encoder 24 the clue words are formed by encoding the data into code words of a first multi-symbol error correcting code. This code may be a Reed-Solomon code, a product code, an interleaved code, or a combination thereof. In encoder 26 the target words are formed by encoding into code words of a second multi- symbol error correcting code. In the embodiment, all code words will have a uniform length, but this is not necessary. Preferably, both codes will be Reed-Solomon codes with the first one a subcode of the second code. As shown in Figure 2, the clue words have a higher degree of error protection. Furthermore, each sector may get an additional amount of provisional protectivity to be discussed hereinafter. In block 28, the code words are transferred to one or more outputs of which an arbitrary number has been indicated, so that the distribution on a medium to be discussed later will become uniform. Block 30 symbolizes the unitary medium itself such as tape or disc that receives the encoded data. This may imply direct writing in a write- mechanism-plus-medium combination. Alternatively, the medium may be realized as a copy from a master encoded medium such as a stamp. In block 32, the various words are read again from the medium. Then the clue words of the first code will be sent to decoder 34, and decoded as based on their inherent redundancies. Furthermore, as will become apparent in the discussion of Figure 2 hereinafter, such decoding may present clues on the locations of errors in other than these clue words. Box 35 receives these clues and as the case may be, other indications on arrow 33, and operates on the basis of a stored program for using one or more different strategies to translate clues into erasure locations or other indications for identifying unreliable symbols. The target words are decoded in decoder 36. With help from such erasure locations or other identifications, the error protection of the target words is raised to a higher level. Finally, all decoded words are demultiplexed by means of element 38 conformingly to the original format to output 40. For brevity, the mechanical interfacing of the various subsystems has been omitted. Figure 2 illustrates a relatively simple code format. As shown, the coded information has been notionally arranged in a block of 16 rows and 32 columns of symbols, that is 512 symbols. Storage on a medium is serially column-by-column starting at the top left column. The hatched region contains check symbols, and clue words 0, 4, 8, and 12 have 8 check symbols each. The other words contain 4 check symbols each and constitute target words. The whole block contains 432 information symbols and 80 check symbols. The latter may be localized in a more distributed manner over their respective words. A part of the information symbols may be dummy symbols. The Reed-Solomon code allows to correct in each clue word up to four symbol errors. Actual symbol errors have been indicated by a crosses. In consequence, all clue words may be decoded correctly, inasmuch as they never have more than four errors. Notably words 2 and 3 may however not be decoded on the basis of their own redundant symbols only. Now, in Figure 2 all errors, except 62, 66, 68 represent error strings. However, only strings 52 and 58 that cross at least three consecutive clue words are considered as error bursts, and cause erasure flags in all intermediate symbol locations. Also- one or more target words before the first clue word error of the burst and one or more target words just after the last clue symbol of the burst may get an erasure flag, depending on the strategy followed. String 54 is not considered a burst, because it is too short. Therefore, two of the errors in word 4 produce an erasure flag in the associated columns. This renders words 2 and 3 correctable, each with a single error symbol and two erasure symbols. However, random errors 62, 68, nor string 54 constitute clues for words 5, 6, 7, because each of them contains only a single clue word. In certain situations, an erasure may result in a zero error pattern, because an arbitrary error in an 8-bit symbol has a 1/256 probability to cause again a correct symbol. Likewise, a burst crossing a particular clue word may produce a correct symbol therein. A bridging strategy between preceding and succeeding clue symbols of the same burst will incorporate this correct symbol into the burst, and in the same manner as erroneous clue symbols may translate it into erasure values for appropriate target symbols. DISCUSSION OF A PRACTICAL FORMAT Hereinafter, a practical format will be discussed. Figure 3 symbolizes a product code format. Words are horizontal and vertical, and parity has been hatched. Figure 4 symbolizes a so-called Long Distance Code with special burst detection in a few upper words that have more parity. The invention presents a so-called Picket Code that may be constructed as a combination of the principles of Figures 3 and 4. Always, writing is sequential along the arrows shown in Figures 3, 4. Practising the invention is governed by newer methods for digital optical storage. In particular, for substrate incident reading the upper transmissive layer may be as thin as 100 micron. The channel bits have a size of some 0.14 microns, and a data byte at a channel rate of 2/3 will have a length of only 1.7 microns. At the top surface the beam has a diameter of some 125 microns. A caddy or envelope for the disc reduces the probability of large bursts. However, non-conforming particles of less than 50 microns may cause short faults. The inventors have inter alia used a fault model wherein such faults through error propagation may lead to bursts of 200 microns, corresponding to some 120 Bytes. The fault model proposes fixed size bursts of 120B that start randomly with a probability per byte of 2.6*10 's , or on the average one burst per 32kB block. The invention has been conceived for serial storage on optical disc, but configurations such as multitrack tape, and other technologies such as magnetic and magneto-optical would also benefit from the improved approach herein. Figure 5 shows a picket code and burst indicator subcode. A picket code consists of two subcodes A and B. The burst indicator subcode (BIS) contains the clue words. It is formatted as a very deeply interleaved long distance code that allows to localize the positions of the multiple burst errors. The error patterns so found are processed to obtain erasure information for the target words that are configured in the embodiment as a product subcode (PS). The product subcode will correct combinations of multiple bursts and random errors, by using erasure flags obtained from the burst indicator subcode. The following format is proposed: • the block of '32 kB' contains 16 DVD-compatible sectors • each such sector contains 2064=2048 + 16 Bytes data • each sector after ECC encoding contains 2368 Bytes • therefore, the coding rate is 0.872 • in the block, 256 sync blocks are formatted as follows • each sector contains 16 sync blocks • each sync block consists of 4 groups of 37 B • each group of 37 B contains 1 B of deeply interleaved Burst Indicator Subcode and 36 B of Product Subcode. In Figure 5, rows are read sequentially, starting with the preceding sync pattern. Each row contains 4 Bytes of the BIS shown in grey, numbered consecutively, and spaced by 36 other Bytes. Sixteen rows form one sector and 256 rows form one sync block. Overall redundancy has been hatched. Also the synchronization bytes may also be used to yield clues, through redundancy therein that is outside the main code facilities. The same hardware arrangement of Figure 1 may execute the processing of the synchronization bytes that now constitute words of different format than the data bytes in a preliminary operation step. Still further information may indicate certain words or symbols as unreliable, such as through the quality of the signal derived from the disc, through demodulation errors, and others. Figure 6 shows exclusively a burst indicator subcode format of the same 64 numbered Bytes per sector of Figure 5, and is constructed as follows: • there are 16 rows, with each a [64,32,33] RS code with t = 16; • sequential columns derive from disk as shown by the arrow, and groups of four columns derive from a single sector for fast addressing; • BIS may indicate at least 16 bursts of 592 B (~1 mm) each; • BIS contains 32 Bytes data per sector: 4 columns of the BIS, and in particular 16 Bytes DVD header, 5 Bytes parity on the header to allow fast address readout, and 11 Bytes user data. Figure 7 shows a Picket Code and its Product Subcode that is built from the target words. The Bytes of the Product Subcode are numbered in the order as they are read from the disc, whilst ignoring the BIS bytes. Figure 8 shows further aspects of the product subcode, which is a [256,228,29]*[144, 143,2] Product Code of Reed-Solomon codes. The number of data Bytes is 228*143=32604, that is 16*(2048+ 11) user Bytes plus 12 spare Bytes- Figure 9 as an alternative to Figure 8 omits the horizontal Reed-Solomon code; the format shown is repeated four times in horizontal direction. The horizontal block is 36 Bytes (one quarter of Figure 7), and uses a [256,224,33] Reed-Solomon code. Each sector has 2368 Bytes. No dummy Bytes are present. The code in the first column is formed in two steps. From each sector, the 16 header Bytes are first encoded in a [20,16,5] code to allow fast address retrieving. The resulting 20 Bytes plus a further 32 user Bytes per sector form data bytes and are collectively encoded further. The data symbols of one 2K sector may lie in only one physical sector, as follows. Each column of the [256,224,33] code contains 8 parity symbols per 2K sector. Further, each [256,208,49] code has 12 parity symbols per 2K sector and 4 parity symbols of the [20,16,5] code to get a [256,208,49] code with 48 redundant bytes. Figure 10 shows this interleaving in detail. Here, '*' represents the header Bytes, '□' the parities of the [20,16] code, '•' the 32 "further" data Bytes and 12 parity Bytes for the [256,208] code. Figure 11 shows the relative positions of the local redundancy just as in Figure 5, but with only three horizontal periods. At the far right, crosses give the positions of the local redundancy. The hatched redundancy will only be useful when all sectors will have been read. Figure 12 shows the protectivity of the local redundancy, with the hatched part of Figure 11 removed. The scope of the local protectivity is just one sector, minus the redundancy of the main error protective code facilities. The provisional protectivity is thus outside the main code facilities. Figures 13, 14 show two possible formats for a 2068 Byte sector, corresponding to Figure 12. In Figure 13, the various fields contain successively: a four Byte identifier, six parity Bytes exclusively for the identifier, six bytes CPR_MAI (CoPyRight MAnagement Information), 2048 Bytes Main Data, and an error detection field of four Bytes, such as a cyclic redundancy code CRC field. Here, the identifier is protected relatively heavily. In Figure 14, the protection of the identifier is reduced to 2 bytes. The remainder forms an extra single burst error correcting code over the sector: this can correct a burst of up to 16 bits that is located in an arbitrary bit column. Various further inventive aspects are as follows: • The local code is a so-called subspace subcode. Such code is formed by first defining a multisymbol code with the symbols of a code word in a finite field. Next, the code is limited to words that have a prescribed uniform partial pattern in all their non-redundant symbols, such as "00" in the two least significant bit positions. This part, although taken into consideration for purposes of processing, need not be stored then, inasmuch as it does not contain user information. In fact, the code words will now apparently be based on shorter symbols. However, without further consideration the redundant symbols may have different patterns than "00" on these bit positions, so their lengths may not be reduced. The solution is then to reserve a number of user symbol positions for pseudo-information that renders a sufficient number (here at least two) of predetermined bit positions in the redundant symbols equal to zero. Suppressing these zeros and rearranging all other bits on the positions corresponding to the shorter symbol length will fix the redundant symbols in the shorter format. The skilled art practitioner will know how to use other content and other location for the above partial pattern. It may be necessary to suppress a few non-redundant symbols, if the code word length was near its theoretical boundary. • The local code is a bit burst correcting code. Four symbols may in general be used to correct a sixteen bit burst. Another bit burst correcting code is the known FIRE-code. Alternatively, the local code allows to correct a quaternary burst that is made up from bit pairs. The local code may be used as a provisional protectivity to start decoding. In case of failure, the local code is foregone, and the main code is used to correct major error patterns. Subsequent to the decoding of the main code, a few errors may subside. Then, the local code may be called upon again, as a third layer of code.

Claims: CLAIMS: 1. A method for encoding multiword information that is based on multibit symbols in relative contiguity with respect to a medium, whilst providing wordwise interleaving and wordwise error protection code facilities, for providing error locative clues across words of a multiword group, characterized by originating such clues in high protectivity clue words as being directed to low protectivity target words. 2. A method as claimed in Claim 1, wherein such clue words have a first uniform size and are interspersed in a first uniform manner with respect to target words that have a second uniform size and are interspersed in a second uniform manner. 3. A method as claimed in Claim 1, and applied to storage in an optical medium. 4. A method as claimed in Claim 1, wherein said information is presented as blocks that each contain the above code facilities and furthermore additional error protection outside said code facilities, each block comprising a plurality of sectors that are sequentially presented to said medium and each have their own header information. 5. A method as claimed in Claim 4, and providing each sector with provisional protectivity as a low-latency error correction mechanism. 6. A method as claimed in Claim 5, said provisional protectivity having another symbol alphabet than said symbols. 7. A method as claimed in Claim 5, said provisional protectivity being a subspace subcode. 8. A method as claimed in Claim 5, wherein said provisional protectivity is burst error correcting. 9. A method for decoding received multiword information that is based on multibit symbols presented in relative contiguity with respect to a medium, whilst effecting wordwise deinterleaving and decoding of error protection code facilities, inclusive of evaluating error locative clues across words of a multiword group, characterized by deriving such clues from high protectivity clue words as being directed to low protectivity target words. 10. A method as claimed in Claim 9, being based on clue words that have a first uniform size and are interspersed in a first uniform manner, and target words that have a second uniform size, and are interspersed in a second uniform manner. 11. A method as claimed in Claim 9, wherein corrected symbols in clue words provide respective clues, and successive clues in a series of received informations collectively yield erasure flags for physically intermediate symbols and/or one or more externally adjacent symbols of target words. 12. A method as claimed in Claim 11, and assigning a notional clue to an intermediate unaltered clue word symbol within such series. 13. A method as claimed in Claim 9, wherein said information is derived from said medium as a sequence of blocks that each contain the above code facilities and also additional error protection outside said code facilities, each block comprising a plurality of sectors that are derived from said medium in sequence and each have their own header information. 14. A method as claimed in Claim 13, whilst undertaking error protection per sector on synchronization informations that have further redundancy outside said code facilities. 15. A method as claimed in Claim 13, and initially evaluating a sector by provisional protectivity provided therein as a low-latency error correction mechanism, whilst reverting to such wordwise decoding exclusively in case of said provisional protectivity failing. 16. A method as claimed in Claim 15, whilst accessing the provisional protectivity on a different code alphabet than said code facilities. 17. A method as claimed in Claim 15, the provisional protectivity having a subspace subcode. 18. A method as claimed in Claim 15, wherein said provisional protectivity allows multibit burst error correcting. 19. A device for encoding multiword information that is based on multibit symbols in relative contiguity with respect to a medium, and having interleaving means to provide within a block wordwise interleaving, coding means to provide wordwise error protection code facilities, and assign means to produce error locative clues across words of a multiword group, wherein the assign means are arranged to provide such clues to originate in high protectivity clue words and point to low protectivity target words. 20. A device as claimed in Claim 19, wherein such interleave means are arranged for interleaving such clue words that have a first uniform size as being interspersed in a first uniform manner with respect to target words that have a second uniform size and are interspersed in a second uniform manner. 21. A device as claimed in Claim 19, wherein said information is presented as blocks that each contain the above code facilities and furthermore additional error protection outside said code facilities, each block comprising a plurality of sectors that are sequentially presented to said medium and each have their own header information. 22. A device as claimed in Claim 21, whilst providing per sector additional error protection to synchronization information outside said code facilities. 23. A device as claimed in claim 19, furthermore having distributing means for distributing such block into physical sectors and for providing each sector with provisional protectivity as a low-latency error correction mechanism. 24. A device as claimed in Claim 23, such provisional protectivity being outside said protection code facilities. 25. A device as claimed in Claim 23, said provisional protectivity having a different code alphabet than said symbols. 26. A device as claimed in Claim 23, said provisional protectivity being a subspace subcode. 27. A device as claimed in Claim 23, wherein said provisional protectivity is burst error correcting. 28. A device for decoding received multiword information that is based on multibit symbols presented in relative contiguity with respect to a medium, and having de- interleave means for effecting wordwise de-interleaving within a stored block of information, decoding means for decoding error protection code facilities and evaluating means for evaluating error locative clues across words of a multiword group, characterized in that said evaluating means are arranged for deriving such clues from high protectivity clue words being directed to low protectivity target words. 29. A device as claimed in Claim 28, and based on clue words that have a first uniform size and are interspersed in a first uniform manner, and target words that have a second uniform size and are interspersed in a second uniform manner. 30. A device as claimed in Claim 28, being arranged for receiving multiple sequential sectors from a stored block and for undertaking error protection per sector through header and/or synchronization information redundancy outside said code facilities- 31. A device as claimed in Claim 28, furthermore having assessing means for assessing respective physical sectors from such block and initially evaluating each sector with respect to provisional protectivity therein as a low-latency error correction mechanism, whilst reverting to such wordwise decoding means exclusively under condition of said assessing means failing. 32. A device as claimed in Claim 31, such provisional protectivity evaluating being privy to a single physical sector. 33. A device as claimed in Claim 31, said assessing means evaluating the provisional protectivity outside the code facilities. 34. A device as claimed in Claim 31, such assessing means assessing a different code alphabet than said symbols. 35. A device as claimed in Claim 31, said provisional protectivity being a subspace subcode. 36. A physical carrier produced by practising a method as claimed in Claim 1 , comprising an array of interleaved clue words and target words that together contain error protection code facilities that offer error clue information across words of a multiword group, such clue words having higher error protectivity than said target words. 37. A carrier as claimed in Claim 36, wherein such clue words have a first uniform size and are interspersed in a first uniform manner with respect to target words that have a second uniform size and are interspersed in a second uniform manner. 38. A carrier as claimed in Claim 36, being based on optical storage and intended for use with substrate incident reading. 39. A carrier as claimed in Claim 36, wherein such array is organized inside a block of information which contains a plurality of sequentially presentable physical sectors that each contain header information, and which sectors have error protectivity outside said code facilities. 40. A carrier as claimed in Claim 39, wherein each sector has provisional protectivity as a low-latency error correction mechanism. 41. A carrier as claimed in Claim 40, said provisional protectivity basing on a different alphabet than said symbols. 42. A carrier as claimed in Claim 40, said provisional protectivity being a subspace subcode. 43. A carrier as claimed in Claim 40, said provisional protectivity being burst error correcting.

Inventors: BAGGEN CONSTANT PAUL MARIE JOZ, TOLHUIZEN LUDOVICUS MARINUS GE, VAN DIJK MARTEN ERIK, BAGGEN, CONSTANT, PAUL, MARIE, JOZEF, TOLHUIZEN, LUDOVICUS, MARINUS, GERARDUS, MARIA, VAN DIJK, MARTEN, ERIK
Applicants: KONINKL PHILIPS ELECTRONICS NV, PHILIPS SVENSKA AB, KONINKLIJKE PHILIPS ELECTRONICS N.V., PHILIPS AB
Application year: 1998
Main classification: H03M13
IPC codes: G11B20, H03M13