Method for channel encoding, method and apparatus for channel decoding |
|||||||
申请号 | EP08101915.0 | 申请日 | 2008-02-22 | 公开(公告)号 | EP2093884A1 | 公开(公告)日 | 2009-08-26 |
申请人 | Deutsche Thomson OHG; | 发明人 | Theis, Oliver; Chen, Xiao-Ming; Timmermann, Friedrich; | ||||
摘要 | A channel encoding method is disclosed, which comprises dk-encoding and NRZI precoding, the output of which obeys a repeated minimum transition runlength constraint and is FSM decodable with a given lookahead depth. Occurrences of RMTR violating critical bit sequences are replaced by same length replacement sequences containing extended zero runs; and the FSM decodability with the given lookahead depth is achieved by using only those replacement sequences that are decodable with the given lookahead depth. A pertaining FSM channel decoding method and channel decoding apparatus are disclosed. | ||||||
权利要求 | |||||||
说明书全文 | The present invention relates to channel encoding and decoding, for example to channel encoding or decoding digital data under a Repeated Minimum Transition Runlength constraint. For high density optical storage, a so-called (1,7) RLL code having parity preservation and prohibiting certain RMTRs, also known as "17PP" code, is known and is being used. In this, "RLL" stands for "runlength limited", and the nomenclature "(1,7)" is a specific instance of a general, widely used nomenclature, according to which a code is termed to be "(d,k) runlength limited". The notation "(1,7) RLL" then denotes, that the code obeys a lower runlength limit of d=1 and an upper runlength limit of k=7. This means that in a sequence of code bits generated according to such a code, consecutive bits having a first binary value are separated by at least 1 and at most 7 consecutive bits having the other binary value. After a widely used NRZI modulation step, denoting a Non-Return-to-Zero-Inverted modulation, this amounts to an output bit sequence which changes its polarity after between 2 and 8 basic time intervals T. "RMTR" stands for "Repeated Minimum Transition Run", and "PP" stands for "Parity preserve / Prohibit repeated minimum-transition run". The code is of code rate 2/3, signifying that for every 2 bits of payload, 3 code bits are generated. For the 17PP code, a decoder structured as a Finite State Machine or FSM, and having 21 states and 79 state transitions also called "branches" has been described in: Unpublished European Patent Application The encoding method of It is an aspect of this invention to provide a channel encoding method the output of which is runlength limited, RMTR-limitation-obeying and low complexity FSM decodable with a lookahead of one code tuple. It is an aspect of this invention to provide a decoding method and decoding apparatus for the runlength limited and RMTR-limitation-obeying channel code that is low complexity FSM decodable. It is an aspect of this invention to provide a channel code which allows for DC control. Aspects of the invention are achieved by the features in the independent claims, further developments and variants are achieved by the features in the dependent claims. It is one embodiment of encoding according to the invention to perform a true (d,k) encoding step followed by a real replacement step as described above. Equivalently it is another embodiment of encoding according to the invention to directly provide the bitstream that results from the then merely conceptual steps of (d,k) encoding and subsequent replacement. It is an aspect of the invention, that digital data are channel decoded by steps of, when a current state and a received code triplet are as listed in one of the lines of the Decoding Table (code according to this invention), outputting a data duplet and transiting to a next state as listed in that line of the Decoding Table. It is an aspect of the invention, that an apparatus for channel decoding digital data has 9 states and 30 state transitions and is equipped and configured to perform a decoding method according to the invention. The apparatus allows to decode data that have been coded using an RMTR-limitation-obeying code. It is an aspect of the invention to have recognized that among the two predefined replacement sequences generically proposed by
Exemplary embodiments of the invention are illustrated in the drawings and are explained in more detail in the following description.
Data storage, as a transformation of signals in time, is modelled as a bandlimited channel, and for digital signal readout in particular, the bit clock is commonly regenerated from the read out signal. Both facts are reasons that Run-Length Limited channel codes also known as RLL codes are widely used on digital storage media. All through the following, we assume binary data consisting of bits having values selected from the two binary values "0" and "1". In a first conversion step, RLL channel codes convert any sequence of arbitrary payload words into a sequence of channel words that has at least a minimum number d and at most a maximum number k of "0" valued bits between consecutive "1" valued bits; in a shorthand notation, such codes are also known as "(d,k) codes", accordingly. After the conversion step, a transcoding or precoding step takes place, where the sequence of channel words from the first step is converted to an output signal or output sequence where each of the "1"s in the sequence of channel words causes a change in the output signal. With other words, whenever the sequence of channel words contains a "1", the output sequence, depending on which binary value it currently has, will change either from "0" to "1", or from "1" to "0". Where the sequence of channel words contains a "0", the output sequence maintains and repeats its current value unchanged. In optical storage, changes of the output sequence correspond to transitions between "pit" and "space". In magnetical recording, changes are for instance between a "plus" and a "minus" magnetical orientation. The transcoding step is also known as NRZI coding. For reasons of mathematical tractability, the output values of the NRZI decoding are typically considered to be x∈ {-1,+1}. Regardless of the recording technology, the limitations on the distance of the "1"s in the sequence of channel words before NRZI coding translate into the physically homogeneous regions between consecutive state changes on a storage track being of a length that is upper and lower limited to the (d+1)-fold and the (k+1)-fold, respectively, of a basic length unit often called "T". In recent high density storage, it has been found as vital that codes additionally obey another constraint: It is forbidden, with other words it must not occur in the channel coded bitstream, that too many runs of the minimum allowed length (d+1) are immediately consecutive. This is known as a Repeated Minimum Transition Runlength or RMTR constraint, and if demanded for a storage channel, must be obeyed by any channel encoding method or apparatus to be used thereon. RMTR constrained RLL channel codes are used in recent high-density optical storage media, like blue laser optical discs. Same as the lower runlength limitation itself, the RMTR constraint aims at reducing the high frequency portions of the channel signal. For various reasons connected to signal regeneration on the storage readout side, it is important that the output signal being written onto the medium is "DC free", with other words, that, at least on average, this signal contains as much of "pit" as of "space", or as much of "plus" as of "minus" in the magnetic case. As a criterion to measure this desirable property, the Running Digital Sum or RDS is used. In the domain of the symmetrically valued output values ∈{-1,+1} given after NRZI coding, the RDS corresponds to the time integral or sum taken from some start time t0 up to a current time t. Alternatively, the RDS is derived before the NRZI precoder, i.e. in the domain of the dk-encoded data. This amounts to sequentially using the runs of "0"s between the isolated "1"s to alternatively count up and down in an up-down-counter. In addition to the RDS itself, its variation is also used as a criterion whether a code is DC-free. This variation is often designated as Digital Sum Variation or DSV and defined as DSV=max(RDS)-min(RDS)+1. In a digital data storage system, Error Correcting Coding also denoted as ECC is typically used: incoming data to be stored are being ECC encoded prior to being channel encoded, and correspondingly, the read back signal from the storage medium is channel decoded and then ECC decoded, in sequence. Among the many ECC decoding approaches, so-called "soft input" algorithms like those known in the art as "BCJR", "Max-Log-MAP" or "SOVA" are known to be particularly powerful, but they require a reliability or confidence information about the channel decoded symbols entering them. An important property of channel codes is whether or not they are decodable with a Finite State Machine FSM; also termed the code's "FSM decodability". Having an FSM decodable channel code is a prerequisite for using soft output channel decoding methods, which in turn provide the sought reliability information for subsequent soft decision ECC decoding, or for a soft decision joint channel and ECC decoding. In these decoding methods, which are trellis based, the state transition structure of the decoding FSM is used as a trellis. In Finite State Machine decoding, an internal state of the decoder is determined from a current tuple of code bits, also termed a current code symbol, together with some more, subsequent code bits. In this, the number of code bits that are needed in addition to the code bits of the current code symbol, is also termed the lookahead depth of the FSM decoder. As an example, a channel code that is FSM decodable with a lookahead depth of 3 code bits means that, for determining the current state of the decoder, the code bits of the current code symbol together with 3 more, subsequent code bits from the code bit sequence are needed. With respect to the basic coding table and the substitution coding table, a widely followed notational convention is used here, in that a dot "." is written in the middle of data duplet pairs and code triplet pairs to denote those cases where a substitution according to the substitution coding table has occurred. This eases reading longer strings of data bits or code bits, because it intuitively illustrates the positions where substitutions apply. As an example, the encoding of a data bit string of "00 00 00" when written as "00.00 00" -> "101.000 101" indicates that it was the first pair of "00" duplets, and not the second one, where substitution has been applied. The state diagram of The decoding as represented by the state diagram of Application of the coding tables above shows that, with the (1,7) RLL channel code of It is an aspect of the present invention, that RMTRs are being replaced in the encoding process. The overall result of runlength coding and replacing amounts to a modified channel code which does obey an RMTR limitation. Specifically, the code bit sequence "101010101010" of a sixfold RMTR is being replaced using a zero run of length greater than 7 which will translate into a corresponding run after NRZI modulation. Depending on the position of the sixfold RMTR sequence within the grid of code triplets, three cases with some replacement options have to be distinguished. The first case is given when a data duplet of "10", translating to a code triplet of "001", precedes the sixfold RMTR sequence:
In this, "X" stands for a data bit having any value, i.e. "0" or "1". According to the basic coding table and the substitution coding table, a data duplet "1X" translates into code triplets "001" or "010", together symbolised here by "0??". The resulting sequence of 18 code bits exhibits a forbidden RMTR: Starting at the 3rd bit of the 1st code triplet, it contains at least 6 consecutive instances of a single "0" surrounded on both sides by "1", which is the characteristic of a short homogenious region after NRZI. For eliminating the RMTR from the code bit sequence, a first replacement sequence of "001 000 000 000 101 OXX" is used. In this, the range of changed triplets is highlighted by underlining. The replacement introduces a run of 9 consecutive "0"s. The bit sequence resulting from the replacement is decodable with a lookahead of 3 code bits. The second case is given when a code triplet of "XXO", i.e. a code triplet that ends in a "0", precedes the sixfold RMTR sequence that results from the data duplets "11 00 ...". Such a code triplet results when the basic coding table is being applied to data duplets "01" or "11"; it also results as the second code triplet when the substitution code table is being applied to any of the data duplet pairs contained therein. The notion of the data duplet being indicated as "??", together with the code triplet being indicated as "XXO" shall symbolise these cases. ?? 11 00 11 00 11 ... data XXO 010 101 010 101 010 ... (1,7) RLL code bit sequence Here, a fourth replacement sequence "XXO 010 100 000 000 010" is used. As above, underlining highlights the exchanged parts. The bit sequence resulting from the replacement is decodable with a lookahead of 3 code bits. The third case is given when a code triplet of "X00", i.e. a code triplet ending in "00", precedes the sixfold RMTR sequence that results from the data duplets "00 11 ...": 0? 00 11 00 11 0? ... data X00 101 010 101 010 10X ... (1,7) RLL code bit sequence Here, two replacement sequences eliminating the forbidden RMTR exist, namely a fifth replacement sequence "X00 100 000 000 010 10X" and a sixth replacement sequence "X00 101 000 000 000 10X". It is important to note, that in this third case, both replacement sequences can be decoded with a lookahead of 3 code bits, so that selectively using either the fifth or the sixth replacement sequence allows to control the DC content of the code bit sequence. An important finding of the invention is, that even though only such replacement sequences are used, which are FSM decodable with a lookahead of three code bits, in the third case two alternatively usable replacement sequences exist. Selecting from these two possible replacement sequences constitutes a degree of freedom of the encoding process, which allows to perform a DC control of the resulting coded bitstream. With other words, by suitably selecting, whenever the third case is given, either the fifth or the sixth replacement sequence, the long term average of the outputted coded bit sequence can be influenced into a desired direction. This average corresponds to the low frequency content of the stored data signal. Having a small low frequency content is important for avoiding difficulties for any control loops of the storage system or transmission channel. These control loops may encompass focus or tracking or clock regeneration. Other configurations of data preceding the sixfold RMTR sequence either can not occur as a regular output of the encoding as defined by the two coding tables, or are equivalent to one of the three cases considered above. The state diagram of the code according to the invention, shown in In the decoding table above, the modifications and extensions due to the 3 new states S7, S8, S9 are emphasized in bold typeface. With other words, a channel encoding method is disclosed, which comprises dk-encoding and NRZI precoding, the output of which obeys a repeated minimum transition runlength constraint and is FSM decodable with a given lookahead depth. Occurrences of RMTR violating critical bit sequences are replaced by same length replacement sequences containing extended zero runs; and the FSM decodability with the given lookahead depth is achieved by using only those replacement sequences that are decodable with the given lookahead depth. A pertaining FSM channel decoding method and channel decoding apparatus are disclosed. |