US5768293A - Digital transmission and recording system with simple error correction - Google Patents

Digital transmission and recording system with simple error correction Download PDF

Info

Publication number
US5768293A
US5768293A US08/534,915 US53491595A US5768293A US 5768293 A US5768293 A US 5768293A US 53491595 A US53491595 A US 53491595A US 5768293 A US5768293 A US 5768293A
Authority
US
United States
Prior art keywords
symbol
symbols
value
reliability level
establishing
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.)
Expired - Fee Related
Application number
US08/534,915
Inventor
Gijsbert J. Van Den Enden
Kornelis A. Schouhamer-Immink
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.)
US Philips Corp
Original Assignee
US Philips Corp
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 US Philips Corp filed Critical US Philips Corp
Assigned to U.S. PHILIPS CORPORATION reassignment U.S. PHILIPS CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SCHOUHAMER-IMMINK, KORNELIS A., VAN DEN ENDEN, GIJSBERT J.
Application granted granted Critical
Publication of US5768293A publication Critical patent/US5768293A/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0054Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms

Definitions

  • the invention relates to a digital transmission system comprising a transmitter which includes an encoder for converting source symbols into channel symbols, which transmitter is arranged for transmitting channel symbols to a receiver via a transmission medium and which receiver comprises a detector for deriving detected symbols from a signal received from the transmission medium.
  • the invention likewise relates to a receiver for such a transmission system, a recording system and a transmission or recording method.
  • a transmission system as defined in the opening paragraph is known from U.S. Pat. No. 4,573,034.
  • Such transmission systems may be used, for example, for transmitting digital symbols through the public telephone network, for transmitting multiplex signals between telephone exchanges or for transmitting digital signals in mobile telephony systems.
  • Said recording systems may be used for recording and reproducing digital symbols with the aid of magnetic tape or magnetic discs such as hard discs and floppy discs.
  • Such recording systems may also be used for optical or optomagnetic discs.
  • a possible object of coding is obtaining a coded symbol which has a frequency spectrum that meets specific requirements.
  • One of these requirements is, for example, the lack of a DC-component , because a number of frequently used transmitting channels or recording media respectively, are incapable of transmitting a DC-component or reproducing same.
  • Another reason for the use of coding is obtaining the possibility of correcting transmission errors. These transmission errors may be caused by thermal noise and other disturbing signals.
  • the invention is characterized in that the detector likewise comprises means for determining a reliability level of the detected symbols, in that the receiver comprises an error detector for establishing the occurrence of a type of detection error from at least two possible types of detection errors and establishing the erroneous symbol based upon the occurring type of detection error and the reliability level of symbols already detected previously, and in that the receiver comprises adapting means for adapting the symbol value of the erroneous symbol.
  • Two types of detection errors may occur in binary channel symbols.
  • a first type of detection error is found if a transmitted symbol having the symbol value "0" is erroneously detected as a symbol having the symbol value "1".
  • a second type of detection error is found if a transmitted symbol having the symbol value "1" is erroneously detected as a symbol having the symbol value "0". If a first type of detection error has been detected, the maximum probability error symbol is the symbol having the symbol value "1" that has the lowest reliability level. If a second type of detection error has been detected, the maximum probability error symbol is the symbol having the symbol value "0" that has the lowest reliability level. That particular symbol may then be simply inverted for correction. It is imaginable that especially with multivalued symbols the number of types of detection errors may exceed two.
  • Viterbi detector for a large number of codes the use of a Viterbi detector is also possible to obtain a reduced symbol error rate. Simulations have shown that the use of the invention leads to a similar transmission error rate to the rate found when a Viterbi detector is used. A Viterbi detector, however, has considerably larger complexity than the receiver of the transmission system according to the invention.
  • An embodiment of the invention is characterized in that the detector is likewise arranged for updating a minimum reliability symbol with the corresponding reliability level for each of the possible types of detection errors.
  • the symbol to be corrected is immediately available when that particular type of detection error occurs, which favourably affects the speed of the correction and thus the maximum permissible processing rate.
  • a further embodiment of the invention is characterized in that the detector is arranged for replacing the minimum reliability symbol for each of the types of detection errors by a more recent symbol if a correction possibility for symbols older than the more recent symbol is lacking.
  • three minimum reliability symbols may be updated, while always the symbol having the least reliability of the three is updated when an error is detected.
  • FIG. 1 shows a transmission system according to the invention
  • FIG. 2 shows a recording system according to the invention
  • FIG. 3 shows the trellis of an 8-10 block code
  • FIG. 4 shows a flow chart of a program for a programmable processor for implementation of the invention for the 8-10 block code
  • FIG. 5 shows the trellis of an 8-9 block code
  • FIG. 6 shows a flow chart of a program for a programmable processor for implementation of the invention with a partial response channel that has a transfer function
  • the transmit symbols b i are applied to an input of a transmitter 2.
  • the input of the transmitter 2 is connected to an input of an encoder 4.
  • the output of the encoder 4 is coupled to the output of the transmitter 2.
  • the output of the transmitter 2 is coupled to an input of a receiver 8 by the channel 6.
  • the input signal r of the receiver 8 is applied to an input of a detector 11. Inside the detector that particular input signal is applied to an input of a decision circuit 10 and to an input of measuring means 12 for determining the reliability level of the detected symbols.
  • An output of the decision circuit 10 is connected to an input of the measuring circuit 12, a memory 22, memory elements 16 and 18 and an input of an error detector 14.
  • An output of the measuring circuit 12 is connected to an input of the memory circuits 16 and 18.
  • each of the memory circuits 16 and 18 is connected to a corresponding input of a correction means 20. So is connected an output of the error detector 14 to an input of the correction means 20. An output of the correction means 20 is connected to an input of the memory 22. An output of the memory 22 forms the output of the receiver 8.
  • the transmit symbols b i are converted by the encoder 4 into coded symbols a k .
  • This coding is obtained by utilizing a block code, a code resulting in a so-termed partial response signal, or a convolution code.
  • the transmitted symbols a k result in a signal r on the input of the receiver 8.
  • This signal r includes disturbance signals such as noise or crosstalk in addition to the signal representing the symbols a k .
  • the decision circuit 10 makes (provisional) decisions about the value of the symbol a k and feeds these decisions to the memory 22.
  • the measuring circuit 12 determines from the signal r and the dedicated output symbol of the decision circuit 10 the reliability level of that particular symbol.
  • the reliability level may, for example, be equal to the difference of the expected value of the signal r in the absence of disturbance signals and the current value of that signal r. The larger the difference is, all the larger the disturbance signal is and all the smaller the reliability of that particular symbol is.
  • the minimum reliability symbol belonging to a first type of detection error together with the appropriate position is stored in the memory circuit 16 and the minimum reliability symbol belonging to a second type of detection error is stored in memory circuit 18.
  • a first type of detection error may, for example, be found if a symbol value +1 is detected, whereas a symbol value -1 has been transmitted.
  • the second type of detection error is then found if a symbol value -1 is detected, whereas a symbol value +1 has been transmitted.
  • the position of the minimum reliability symbol +1 is stored, whereas in memory circuit 18 the minimum reliability symbol -1 is stored.
  • the error detector 11 detects the occurrence of transmission errors and additionally indicates what type of detection error has occurred. For this purpose, the detector utilizes certain properties of the code used, as will be explained hereafter. If the error detector detects a first type of detection error, it is obvious that only a detected symbol value that may give rise to that particular type of detection error is eligible for correction.
  • the correction circuit 20 takes the position of the minimum reliability symbol from the memory circuit that accommodates that particular type of detection error, and the symbol at that position is corrected. This is effected by selecting that particular symbol in memory 22 on the basis of the position found and, subsequently, changing its symbol value. The larger the number of types of detection errors is, the more the probability increases that really the erroneously transmitted symbol is corrected. Simulations for an 8-10 block code have shown that the performance of a detector according to the invention utilizing only two types of detection errors measures up to the performance of a (much more complex) Viterbi detector.
  • the symbols to be recorded are coded by an encoder 4 in the write means 2.
  • the output signal of the write means 4 is applied to a write head 24.
  • This write head 24 writes the recording symbols on the recording medium which in this case is formed by a magnetic tape 26.
  • a read signal is obtained by means of a read head 28.
  • This read signal is converted into reconstituted symbols by the reading means 8 which may have a similar structure to the receiver 8 shown in FIG. 1.
  • FIG. 3 a so-termed trellis of an 8-10 block code is shown.
  • Such a block code is known from U.S. Pat. No. 4,573,034.
  • the trellis presents the possible values of the so-called running digital sum as a function of the position of a symbol in a word.
  • the running digital sum is defined as ##EQU1##
  • the running digital sum is bounded by -4 and +1.
  • a code whose running digital sum is bounded is DC-free.
  • the running digital sum can assume only either digital value 0 or -2.
  • a transmission error has certainly occurred.
  • a symbol transmitted as -1 has been received as +1.
  • Such a transmission error may be considered a first type of detection error.
  • the maximum probability error symbol is then the minimum reliability symbol having the symbol value +1. If the running digital sum at a word-boundary is smaller than -2, or if the running digital sum within a word is smaller than -4, it is also certain that a transmission error has occurred. Additionally, it is known then that a symbol transmitted as +1 has been received as -1. Such a transmission error may be considered a second type of detection error. The maximum probability error symbol is then the minimum reliability symbol having the symbol value -1.
  • the running digital sum at a word-boundary is equal to 0 or within a word is equal to +1, it is no longer possible to change a previously received symbol having the value -1 into a symbol having the value +1,because the instruction relating to the running digital sum would then be violated. In a suchlike situation it is no longer use retaining an older unreliable symbol having the value -1. In a suchlike situation the minimum reliability symbol having value -1 becomes the next symbol having that value.
  • the running digital sum at a word-boundary is equal to -2 or within a word is equal to -2, it is no longer possible to change a previously received symbol having the value +1 into a symbol having a value -1, because in that case the instruction relating to the running digital value would be violated. In a suchlike situation it is no longer use retaining an older unreliable symbol having the value +1. In a suchlike situation the minimum reliability symbol having the value +1 becomes the next symbol having that value.
  • the invention may also be implemented by a programmable processor executing the program as shown in the flow chart of FIG. 4.
  • the transmitted symbols can assume only the value +1 or -1.
  • the symbols are coded with an 8-10 block code whose trellis is shown in FIG. 3.
  • instruction 30 the variables needed are initialized and word synchronization is waited for. After the last sample of the received signal belonging to a certain word has been received, instruction 32 is proceeded to for which the counter I is set to zero. In instruction 34 the next sample is taken from the received signal and the running index N is increased by 1. In instruction 36 the value of the symbol a N is determined from the sign of the sample r. If the sign of the sample r is positive, the value of the symbol a N is equal to +1. If the sign of the sample r is negative, the value of the symbol a N is equal to -1. In instruction 38 the new value of the running digital sum is computed by adding the value of the symbol a N to the old value of the running digital sum.
  • instruction 40 there is checked whether a N is equal to +1. If it is, the minimum reliability symbol +1 is determined in instruction 42. This is effected by comparing the value r with the smallest value of r found during a certain time interval in the past. The smaller the value of r is, the less reliable becomes the decision leading to a value of a N which is equal to +1. The minimum value of r is retained in the variable MN, while the value of N belonging to the corresponding symbol is retained in the variable MNI. If the new value of r is smaller than MN, the new value of MN becomes equal to r and the value MNI becomes equal to the current value of N.
  • the minimum reliability symbol -1 is determined in instruction 44. This is effected by comparing the value r with the maximum value of r found during a certain time interval in the past. The greater (less negative) the value of r is, the more unreliable the decision leading to a value of a N which is equal to -1 becomes.
  • the maximum value of r is retained in the variable MX, while the value of N belonging to the corresponding symbol is retained in the variable MXI. If the new value of r exceeds MX, the new value of MX becomes equal to r and the value of MXI becomes equal to the current value of N.
  • the value MN is replaced by the value of r belonging to the minimum reliability symbol but one, after the symbol having the least reliability of the three has been corrected.
  • the value of MNI is then replaced by the value of N belonging to the minimum reliability symbol but one having symbol value +1.
  • instruction 52 there is checked whether the running digital sum is not smaller than permitted according to the code. If the running digital sum is too small, this means that a symbol having a value +1 has erroneously been detected as a symbol having the value -1. Finding too small a running digital sum is finding a second type of detection error. The maximum probability error symbol is then the previously determined minimum reliability symbol having a value +1. Therefore, in instruction 54 the symbol value of this minimum reliability symbol a MNI is inverted. In instruction 56 the values MX and MXI are adapted. If no more than the minimum reliability symbol having the value -1 is updated, MX may be set to a very small value. This leads to the fact that the next symbol having the value -1 then becomes the minimum reliability symbol having the value -1.
  • the value MX is replaced by the value of r belonging to the minimum reliability symbol but one having value -1, after the symbol having the least reliability of the three has been corrected.
  • the value of MXI is then replaced by the value of N belonging to the minimum reliability symbol but one having the value -1.
  • instruction 58 there is checked whether the running digital sum assumes its maximum value. If it does, a symbol previously detected as -1 can no longer be corrected to a value +1, because otherwise the coding instruction would be violated. In that case, MX is set to a very small value in instruction 60, so that the next symbol having the value -1 becomes the minimum reliability symbol having the value -1. If the three minimum reliability symbols having the value -1 are updated, the corresponding values of r may be given three very small values.
  • instruction 62 there is checked whether the running digital sum assumes its minimum value. If it does, a symbol previously detected as +1 can no longer be corrected to a value -1, because otherwise the coding instruction would again be violated. In that case MN is set to assume a very large value in instruction 64, so that the next symbol having the value +1 becomes the minimum reliability symbol having the value +1. If the three minimum reliability symbols having the value +1 are updated, the corresponding values of r may be given three very large values.
  • instruction 66 there is checked whether the value of I is equal to 9. If it is, the last symbol of the word has been processed and the next sample is representative of the first symbol of a new word. In that case a jump is made straight to instruction 32. If I is unequal to 9, I is increased by 1 in instruction 68 and instruction 34 is jumped to.
  • the running digital sum is bounded by -4 and +5.
  • ODD the running digital sum at the beginning of "odd” words
  • the running digital sum at the beginning of "odd” words can assume only of the values -2, 0, +2 or +4. If the running digital sum at the beginning of an "odd” word exceeds +4, at the beginning of an "even” (EVEN) word exceeds +3, or if the running digital sum within a word exceeds +5, a transmission error must have occurred. Furthermore, there is known then that a symbol transmitted as -1 has been received as +1. Such a transmission error may be considered to belong to a first type of detection error.
  • the maximum probability error symbol is then the minimum reliability symbol having the symbol value +1. If the running digital sum at the beginning of an "odd" word is smaller than -2, at the beginning of an "even” word is smaller -3, or if the running digital sum within a word is smaller than -4, a transmission error must have occurred too. Furthermore, it is known then that a symbol transmitted as +1 has been received as -1. Such a transmission error may be considered to belong to a second type of detection errors. The maximum probability error symbol is then the minimum reliability symbol having symbol value -1.
  • the program according to the flow chart shown in FIG. 4 may easily be rendered suitable for the code whose trellis is shown in FIG. 5.
  • the instructions 46, 52, 58, 62 and 66 are to be replaced by the following instructions:
  • the changes in the instructions 46, 52, 58 and 62 are necessary to adapt the running digital sum to the other possible values.
  • the change in the instruction 66 is necessary because of the smaller word length.
  • the received signal is a so-called partial response signal of the type 1-D.
  • the channel symbols a k are equal to b k -b k-1 , where b k are the source symbols.
  • the channel symbols may assume the values 31 1, 0 and +1. For such a signal it cannot happen that twice in a row the value +1 occurs, with intervening zero symbol values or not. If this occurs none the less, a transmission error must have occurred with the symbol having the value -1 received as a symbol having the value 0 or a symbol having the value 0 received as a symbol having the value +1. By way of correction, the minimum reliability symbol that may lead to that particular (first) type of detection error is reduced by 1.
  • the minimum reliability symbol that may lead to that particular (second) type of detection error is increased by 1. If a symbol having the value +1 (-1) is preceded by a symbol having the value -1 (+1), with intervening zero symbol values or not, it is no longer possible to correct the symbols received in the past, because otherwise the code instruction would be violated. This means that it is no longer use remembering the corresponding minimum reliability symbols from the past. The minimum reliability symbol then becomes the most recent symbol having that particular value.
  • instruction 70 the program is started and the variables obtain a suitable initial value.
  • instruction 72 the next sample of the received signal is determined and the running index N is increased.
  • instruction 74 there is checked whether the sample value r is smaller than the negative threshold NEG. If it is, the value of the symbol a N is made equal to -1.
  • instruction 80 the minimum reliability symbol value is adapted. This is effected by comparing the value of (NEG-r) with MIN1. If (NEG-r) is smaller than MIN1, this means that the symbol a N is the minimum reliability symbol. MIN1 is then made equal to (NEG-r) and IMIN1 is made equal to N.
  • instruction 90 there is checked whether the previous non-zero symbol is equal to -1. If it is, a transmission error of the second type of detection errors has occurred and in instruction 96 the symbol value of the minimum reliability symbol a IMIN1 is increased by 1.
  • instruction 100 the parameter of MIN2 is reset to a large value, and IMIN2 to N+1, so that no symbols from the past can be reduced by 1 any longer, which would otherwise lead to a violation of the coding instruction.
  • instruction 104 the value of PREV is set to -1, because the most recent non-zero symbol is equal to -1. Subsequently, instruction 72 is returned to.
  • instruction 76 there is checked whether the sample value r is smaller than the positive threshold POS. If it is not, the value of the symbol a N is made equal to +1 in instruction 82. Otherwise the symbol a N is made equal to 0 in instruction 84.
  • instruction 86 the minimum reliability symbol value is updated. This is effected by comparing the value of (r-POS) with MIN1. If (r-POS) is smaller than MIN2, this means that the symbol a N is the minimum reliability symbol. MIN2 is then made equal to (r-POS) and IMIN2 is made equal to N.
  • instruction 92 there is checked whether the previous non-zero symbol is equal to +b 1. If it is, a transmission error of the first type of detection errors has occurred and in instruction 94 the symbol value of the minimum reliability symbol a IMIN2 is reduced by 1. In instruction 98 the value of MIN1 is reset to a large value, and IMIN1 to N+1, so that no symbols from the past can be increased by 1, which would otherwise lead to a violation of the coding instruction. In instruction 102 the value of PREV is set to +1, because the most recent non-zero symbol is equal to +1. Thereafter, instruction 72 is returned to.
  • the minimum reliability symbol having the value zero or -1 is adapted. This is effected by comparing the value (r-NEG) with MIN1. If (r-NEG) is smaller than MIN1, this means that the symbol a N is the minimum reliability symbol. MIN1 is then made equal to (r-NEG), and IMIN1 is made equal to N.
  • instruction 87 the minimum reliability symbol having the value 0 or +1 is updated. This is effected by comparing the value (POS-r) with MIN2. If (POS-r) is smaller than MIN2, this means that the symbol a N is the minimum reliability symbol. MIN2 is then made equal to (POS-r) and IMIN2 is made equal to N. Subsequently, instruction 72 is returned to.

Abstract

To obtain a detector which has considerably less complexity than a Viterbi detector without a loss of performance, there is proposed to use a code that makes it possible to distinguish types of transmission errors. As a result of this distinction of types of detection errors, there may be established what symbols can be erroneous. The minimum reliability symbol of these symbols is corrected.

Description

FIELD OF THE INVENTION
The invention relates to a digital transmission system comprising a transmitter which includes an encoder for converting source symbols into channel symbols, which transmitter is arranged for transmitting channel symbols to a receiver via a transmission medium and which receiver comprises a detector for deriving detected symbols from a signal received from the transmission medium.
BACKGROUND OF THE INVENTION
The invention likewise relates to a receiver for such a transmission system, a recording system and a transmission or recording method.
A transmission system as defined in the opening paragraph is known from U.S. Pat. No. 4,573,034.
Such transmission systems may be used, for example, for transmitting digital symbols through the public telephone network, for transmitting multiplex signals between telephone exchanges or for transmitting digital signals in mobile telephony systems. Said recording systems may be used for recording and reproducing digital symbols with the aid of magnetic tape or magnetic discs such as hard discs and floppy discs. Such recording systems may also be used for optical or optomagnetic discs.
For transmitting source symbols by the transmitter channel or via a recording medium respectively, these symbols are often converted into coded symbols. A possible object of coding is obtaining a coded symbol which has a frequency spectrum that meets specific requirements. One of these requirements is, for example, the lack of a DC-component , because a number of frequently used transmitting channels or recording media respectively, are incapable of transmitting a DC-component or reproducing same. Another reason for the use of coding is obtaining the possibility of correcting transmission errors. These transmission errors may be caused by thermal noise and other disturbing signals.
In the known transmission system a detector is used which makes decisions about the symbol value symbol-by-symbol. In this manner a sub-optimum detection is obtained, because the redundancy added by the coding to reduce the symbol error rate is not utilized.
SUMMARY OF THE INVENTION
It is an object of the invention to provide a transmission and recording system respectively, in which the redundancy present arising from coding is utilized for obtaining a reduced symbol error rate.
For this purpose, the invention is characterized in that the detector likewise comprises means for determining a reliability level of the detected symbols, in that the receiver comprises an error detector for establishing the occurrence of a type of detection error from at least two possible types of detection errors and establishing the erroneous symbol based upon the occurring type of detection error and the reliability level of symbols already detected previously, and in that the receiver comprises adapting means for adapting the symbol value of the erroneous symbol.
Two types of detection errors may occur in binary channel symbols. A first type of detection error is found if a transmitted symbol having the symbol value "0" is erroneously detected as a symbol having the symbol value "1". A second type of detection error is found if a transmitted symbol having the symbol value "1" is erroneously detected as a symbol having the symbol value "0". If a first type of detection error has been detected, the maximum probability error symbol is the symbol having the symbol value "1" that has the lowest reliability level. If a second type of detection error has been detected, the maximum probability error symbol is the symbol having the symbol value "0" that has the lowest reliability level. That particular symbol may then be simply inverted for correction. It is imaginable that especially with multivalued symbols the number of types of detection errors may exceed two.
It is noted that for a large number of codes the use of a Viterbi detector is also possible to obtain a reduced symbol error rate. Simulations have shown that the use of the invention leads to a similar transmission error rate to the rate found when a Viterbi detector is used. A Viterbi detector, however, has considerably larger complexity than the receiver of the transmission system according to the invention.
An embodiment of the invention is characterized in that the detector is likewise arranged for updating a minimum reliability symbol with the corresponding reliability level for each of the possible types of detection errors.
By updating the minimum reliability symbol for each type of detection error, the symbol to be corrected is immediately available when that particular type of detection error occurs, which favourably affects the speed of the correction and thus the maximum permissible processing rate.
A further embodiment of the invention is characterized in that the detector is arranged for replacing the minimum reliability symbol for each of the types of detection errors by a more recent symbol if a correction possibility for symbols older than the more recent symbol is lacking.
If there is no longer a correction possibility for older symbols, which correction leads to a valid codeword, it is unlikely for one of these older symbols to be erroneous. In that case preference is given to substituting a more recent (more reliable) symbol for the minimum reliability symbol.
To correct more than one error, for example, three minimum reliability symbols may be updated, while always the symbol having the least reliability of the three is updated when an error is detected.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention will now be further explained with reference to the drawing Figures, in which:
FIG. 1 shows a transmission system according to the invention;
FIG. 2 shows a recording system according to the invention;
FIG. 3 shows the trellis of an 8-10 block code;
FIG. 4 shows a flow chart of a program for a programmable processor for implementation of the invention for the 8-10 block code;
FIG. 5 shows the trellis of an 8-9 block code; and
FIG. 6 shows a flow chart of a program for a programmable processor for implementation of the invention with a partial response channel that has a transfer function
DETAILED DESCRIPTION OF THE DRAWINGS
In the transmission system shown in FIG. 1 the transmit symbols bi are applied to an input of a transmitter 2. The input of the transmitter 2 is connected to an input of an encoder 4. The output of the encoder 4 is coupled to the output of the transmitter 2. The output of the transmitter 2 is coupled to an input of a receiver 8 by the channel 6.
The input signal r of the receiver 8 is applied to an input of a detector 11. Inside the detector that particular input signal is applied to an input of a decision circuit 10 and to an input of measuring means 12 for determining the reliability level of the detected symbols. An output of the decision circuit 10 is connected to an input of the measuring circuit 12, a memory 22, memory elements 16 and 18 and an input of an error detector 14. An output of the measuring circuit 12 is connected to an input of the memory circuits 16 and 18.
An output of each of the memory circuits 16 and 18 is connected to a corresponding input of a correction means 20. So is connected an output of the error detector 14 to an input of the correction means 20. An output of the correction means 20 is connected to an input of the memory 22. An output of the memory 22 forms the output of the receiver 8.
The transmit symbols bi are converted by the encoder 4 into coded symbols ak. This coding is obtained by utilizing a block code, a code resulting in a so-termed partial response signal, or a convolution code.
The transmitted symbols ak result in a signal r on the input of the receiver 8. This signal r includes disturbance signals such as noise or crosstalk in addition to the signal representing the symbols ak.
The decision circuit 10 makes (provisional) decisions about the value of the symbol ak and feeds these decisions to the memory 22. The measuring circuit 12 determines from the signal r and the dedicated output symbol of the decision circuit 10 the reliability level of that particular symbol. The reliability level may, for example, be equal to the difference of the expected value of the signal r in the absence of disturbance signals and the current value of that signal r. The larger the difference is, all the larger the disturbance signal is and all the smaller the reliability of that particular symbol is.
The minimum reliability symbol belonging to a first type of detection error together with the appropriate position is stored in the memory circuit 16 and the minimum reliability symbol belonging to a second type of detection error is stored in memory circuit 18. A first type of detection error may, for example, be found if a symbol value +1 is detected, whereas a symbol value -1 has been transmitted. The second type of detection error is then found if a symbol value -1 is detected, whereas a symbol value +1 has been transmitted. In the memory circuit 16 the position of the minimum reliability symbol +1 is stored, whereas in memory circuit 18 the minimum reliability symbol -1 is stored.
The error detector 11 detects the occurrence of transmission errors and additionally indicates what type of detection error has occurred. For this purpose, the detector utilizes certain properties of the code used, as will be explained hereafter. If the error detector detects a first type of detection error, it is obvious that only a detected symbol value that may give rise to that particular type of detection error is eligible for correction. The correction circuit 20 takes the position of the minimum reliability symbol from the memory circuit that accommodates that particular type of detection error, and the symbol at that position is corrected. This is effected by selecting that particular symbol in memory 22 on the basis of the position found and, subsequently, changing its symbol value. The larger the number of types of detection errors is, the more the probability increases that really the erroneously transmitted symbol is corrected. Simulations for an 8-10 block code have shown that the performance of a detector according to the invention utilizing only two types of detection errors measures up to the performance of a (much more complex) Viterbi detector.
In the magnetic recording system shown in FIG. 2 the symbols to be recorded are coded by an encoder 4 in the write means 2. The output signal of the write means 4 is applied to a write head 24. This write head 24 writes the recording symbols on the recording medium which in this case is formed by a magnetic tape 26. When the recorded symbols are reconstituted, a read signal is obtained by means of a read head 28. This read signal is converted into reconstituted symbols by the reading means 8 which may have a similar structure to the receiver 8 shown in FIG. 1.
In FIG. 3 a so-termed trellis of an 8-10 block code is shown. Such a block code is known from U.S. Pat. No. 4,573,034. The trellis presents the possible values of the so-called running digital sum as a function of the position of a symbol in a word. The running digital sum is defined as ##EQU1## In the code whose trellis is shown in FIG. 3, the running digital sum is bounded by -4 and +1. A code whose running digital sum is bounded is DC-free. At the word-boundaries of the code shown in FIG. 3 the running digital sum can assume only either digital value 0 or -2. If the running digital sum at a word-boundary exceeds 0, or if the running digital sum within a word exceeds +1, a transmission error has certainly occurred. In addition, it is known then that a symbol transmitted as -1 has been received as +1. Such a transmission error may be considered a first type of detection error. The maximum probability error symbol is then the minimum reliability symbol having the symbol value +1. If the running digital sum at a word-boundary is smaller than -2, or if the running digital sum within a word is smaller than -4, it is also certain that a transmission error has occurred. Additionally, it is known then that a symbol transmitted as +1 has been received as -1. Such a transmission error may be considered a second type of detection error. The maximum probability error symbol is then the minimum reliability symbol having the symbol value -1.
If the running digital sum at a word-boundary is equal to 0 or within a word is equal to +1, it is no longer possible to change a previously received symbol having the value -1 into a symbol having the value +1,because the instruction relating to the running digital sum would then be violated. In a suchlike situation it is no longer use retaining an older unreliable symbol having the value -1. In a suchlike situation the minimum reliability symbol having value -1 becomes the next symbol having that value.
If the running digital sum at a word-boundary is equal to -2 or within a word is equal to -2, it is no longer possible to change a previously received symbol having the value +1 into a symbol having a value -1, because in that case the instruction relating to the running digital value would be violated. In a suchlike situation it is no longer use retaining an older unreliable symbol having the value +1. In a suchlike situation the minimum reliability symbol having the value +1 becomes the next symbol having that value.
In the flow chart shown in FIG. 4 the instructions have the connotations according to the Table below:
______________________________________                                    
Nr. Inscription    Connotation                                            
______________________________________                                    
30  Start          Start of the program and initialization of             
                   variables.                                             
32  I: = 0         The variable I is made equal to 0.                     
34  NEXT r,N       The next sample r of the input signal is               
                   determined and the running index N is                  
                   increased.                                             
36  a.sub.N : = SGN(r)                                                    
                   The next value of a is determined from the             
                   sample r.                                              
38  RDS: = RDS + a.sub.N                                                  
                   The new value of the running digital                   
                   sum is determined.                                     
40  a.sub.N = +1?  A check is made whether a.sub.N is equal to            
                   +1.                                                    
42  UPDATE MN,MNI  The minimum reliability symbol +1                      
                   and the corresponding position are                     
                   updated, as required.                                  
44  UPDATE MX,MXI  The minimum reliability symbol -1 and                  
                   the corresponding position are updated,                
                   as required.                                           
46  (RDS > 1) OR   A check is made whether the running                    
    (I = 0 and RDS > 0)?                                                  
                   digital sum is not too large.                          
48  INVERT a.sub.MNI                                                      
                   The minimum reliability symbol +1 is                   
                   inverted.                                              
50  ADAPT MN,MNI   The reliability level and the position of              
                   the minimum reliability symbol +1 are                  
                   adapted.                                               
52  (RDS < -4) OR  A check is made whether the running                    
    (I = 0 AND RDS < -2)?                                                 
                   digital sum is not too small.                          
54  INVERT a.sub.MXI                                                      
                   The minimum reliability symbol -1 is                   
                   inverted.                                              
56  ADAPT MX,MXI   The reliability level and the position of              
                   the minimum reliability symbol +1 are                  
                   adapted.                                               
58  (RDS = +1) OR  A check is made whether a correction                   
    (I = 0 AND RDS = 0)?                                                  
                   possibility of older symbols having the                
                   value -1 is still possible.                            
60  RESET MX,MXI   The next +1 is considered the                          
                   minimum reliability symbol +1.                         
62  (RDS = -4) OR  A check is made whether a correction                   
    (I = 0 AND RDS = -2)?                                                 
                   possibility of older symbols having the                
                   value +1 is still possible.                            
64  RESET MN,MNI   The next -1 is considered the minimum                  
                   reliability symbol -1.                                 
66  I = 9?         A check is made whether the word-                      
                   boundary has been reached.                             
68  I: = I + 1     The value of I is                                      
                   increased.                                             
______________________________________                                    
The invention may also be implemented by a programmable processor executing the program as shown in the flow chart of FIG. 4. There is assumed that the transmitted symbols can assume only the value +1 or -1. Furthermore, there is assumed that the symbols are coded with an 8-10 block code whose trellis is shown in FIG. 3.
In instruction 30 the variables needed are initialized and word synchronization is waited for. After the last sample of the received signal belonging to a certain word has been received, instruction 32 is proceeded to for which the counter I is set to zero. In instruction 34 the next sample is taken from the received signal and the running index N is increased by 1. In instruction 36 the value of the symbol aN is determined from the sign of the sample r. If the sign of the sample r is positive, the value of the symbol aN is equal to +1. If the sign of the sample r is negative, the value of the symbol aN is equal to -1. In instruction 38 the new value of the running digital sum is computed by adding the value of the symbol aN to the old value of the running digital sum.
In instruction 40 there is checked whether aN is equal to +1. If it is, the minimum reliability symbol +1 is determined in instruction 42. This is effected by comparing the value r with the smallest value of r found during a certain time interval in the past. The smaller the value of r is, the less reliable becomes the decision leading to a value of aN which is equal to +1. The minimum value of r is retained in the variable MN, while the value of N belonging to the corresponding symbol is retained in the variable MNI. If the new value of r is smaller than MN, the new value of MN becomes equal to r and the value MNI becomes equal to the current value of N. Likewise it is imaginable to retain not only the minimum reliability symbols having the value +1, but, for example, the three minimum reliability symbols having the value +1. This may be useful, for example, when so-called burst errors occur in which a plurality of successive symbols are erroneous.
If the value of aN is equal to -1, the minimum reliability symbol -1 is determined in instruction 44. This is effected by comparing the value r with the maximum value of r found during a certain time interval in the past. The greater (less negative) the value of r is, the more unreliable the decision leading to a value of aN which is equal to -1 becomes. The maximum value of r is retained in the variable MX, while the value of N belonging to the corresponding symbol is retained in the variable MXI. If the new value of r exceeds MX, the new value of MX becomes equal to r and the value of MXI becomes equal to the current value of N.
In instruction 46 a check is made whether the running digital sum is not larger than permitted according to the code. If the running digital sum is too large, this means that a symbol having a value -1 has erroneously been detected as a symbol having the value +1. Finding too large a running digital sum is finding a first type of detection error. The maximum probability error symbol is then the previously determined minimum reliability symbol having the value +1. Therefore, in instruction 48 the symbol value of this minimum reliability symbol aMNI is inverted. In instruction 50 the values MN and MNI are adapted. If no more than the minimum reliability symbol having the value +1 is updated, MN may be set to a very large value. This leads to the fact that the next symbol having the value +1 then becomes the minimum reliability symbol having the value +1.
If, for example, the three minimum reliability symbols having the value +1 are updated, the value MN is replaced by the value of r belonging to the minimum reliability symbol but one, after the symbol having the least reliability of the three has been corrected. The value of MNI is then replaced by the value of N belonging to the minimum reliability symbol but one having symbol value +1.
In instruction 52 there is checked whether the running digital sum is not smaller than permitted according to the code. If the running digital sum is too small, this means that a symbol having a value +1 has erroneously been detected as a symbol having the value -1. Finding too small a running digital sum is finding a second type of detection error. The maximum probability error symbol is then the previously determined minimum reliability symbol having a value +1. Therefore, in instruction 54 the symbol value of this minimum reliability symbol aMNI is inverted. In instruction 56 the values MX and MXI are adapted. If no more than the minimum reliability symbol having the value -1 is updated, MX may be set to a very small value. This leads to the fact that the next symbol having the value -1 then becomes the minimum reliability symbol having the value -1.
If, for example, the three minimum reliability symbols having the value -1 are updated, the value MX is replaced by the value of r belonging to the minimum reliability symbol but one having value -1, after the symbol having the least reliability of the three has been corrected. The value of MXI is then replaced by the value of N belonging to the minimum reliability symbol but one having the value -1.
In instruction 58 there is checked whether the running digital sum assumes its maximum value. If it does, a symbol previously detected as -1 can no longer be corrected to a value +1, because otherwise the coding instruction would be violated. In that case, MX is set to a very small value in instruction 60, so that the next symbol having the value -1 becomes the minimum reliability symbol having the value -1. If the three minimum reliability symbols having the value -1 are updated, the corresponding values of r may be given three very small values.
In instruction 62 there is checked whether the running digital sum assumes its minimum value. If it does, a symbol previously detected as +1 can no longer be corrected to a value -1, because otherwise the coding instruction would again be violated. In that case MN is set to assume a very large value in instruction 64, so that the next symbol having the value +1 becomes the minimum reliability symbol having the value +1. If the three minimum reliability symbols having the value +1 are updated, the corresponding values of r may be given three very large values.
In instruction 66 there is checked whether the value of I is equal to 9. If it is, the last symbol of the word has been processed and the next sample is representative of the first symbol of a new word. In that case a jump is made straight to instruction 32. If I is unequal to 9, I is increased by 1 in instruction 68 and instruction 34 is jumped to.
In the code whose trellis is shown in FIG. 5, the running digital sum is bounded by -4 and +5. At the word-boundaries of the code according to FIG. 5 the running digital sum at the beginning of "odd" words (ODD) can assume only of the values -2, 0, +2 or +4. If the running digital sum at the beginning of an "odd" word exceeds +4, at the beginning of an "even" (EVEN) word exceeds +3, or if the running digital sum within a word exceeds +5, a transmission error must have occurred. Furthermore, there is known then that a symbol transmitted as -1 has been received as +1. Such a transmission error may be considered to belong to a first type of detection error. The maximum probability error symbol is then the minimum reliability symbol having the symbol value +1. If the running digital sum at the beginning of an "odd" word is smaller than -2, at the beginning of an "even" word is smaller -3, or if the running digital sum within a word is smaller than -4, a transmission error must have occurred too. Furthermore, it is known then that a symbol transmitted as +1 has been received as -1. Such a transmission error may be considered to belong to a second type of detection errors. The maximum probability error symbol is then the minimum reliability symbol having symbol value -1.
If the running digital sum at the beginning of an "odd" word is equal to +4, at the beginning of an "even" word is equal to +3 or within a word is equal to +5, it is no longer possible to change a previously received symbol having the value -1 into a symbol having the value +1, because in that case the instruction relating to the running digital sum would be violated. In such a case it is no longer use retaining an older unreliable symbol having the value -1. In a situation like that the minimum reliability symbol having the value -1 becomes the next symbol having that value -1.
If the running digital sum at the beginning of an "odd" word is equal to -2, at the beginning of an "even" word is equal to -3 or within a word is equal to -4, it is no longer possible to change a previously received symbol having the value +1 into a symbol having the value -1, because in that case the instruction relating to the running digital sum would be violated. In a situation like that it is no longer use retaining an older unreliable symbol having the value +1. In a situation like that the minimum reliability symbol having the value +1 becomes the next symbol having that value +1.
The program according to the flow chart shown in FIG. 4 may easily be rendered suitable for the code whose trellis is shown in FIG. 5. For this purpose, the instructions 46, 52, 58, 62 and 66 are to be replaced by the following instructions:
______________________________________                                    
46     (RDS > +5) OR (ODD AND I = 0 AND RDS > +4) OR                      
       (EVEN AND I = 0 AND RDS > +3)                                      
52     (RDS < -4) OR (ODD AND I = 0 AND RDS < -2) OR                      
       (EVEN AND I = 0 AND RDS < -3)                                      
58     (RDS = +5) OR (ODD AND I = 0 AND RDS = +4) OR                      
       (EVEN AND I = 0 AND RDS = +3)                                      
62     (RDS = -4) OR (ODD AND I = 0 AND RDS = -2) OR                      
       (EVEN AND I = 0 AND RDS = -3)                                      
66     I = 8?                                                             
______________________________________                                    
The changes in the instructions 46, 52, 58 and 62 are necessary to adapt the running digital sum to the other possible values. The change in the instruction 66 is necessary because of the smaller word length.
In the flow chart shown in FIG. 6 the instructions have the connotations according to the Table below:
__________________________________________________________________________
No. Inscription Connotation                                               
__________________________________________________________________________
70  START       Start of the program and initialization of the            
                variables.                                                
72  NEXT r,N    The next sample of the input signal is determined         
                and the running index N is increased.                     
74  r < NEG     A check is made whether r is smaller than a               
                negative threshold NEG.                                   
76  r > POS     A check is made whether r exceeds a positive              
                threshold POS.                                            
78  a.sub.N : = -1                                                        
                The value of the symbol a.sub.N becomes equal to -1.      
80,85                                                                     
    UPDATE MIN1,IMIN1                                                     
                The minimum reliability symbol having the value -1        
                or 0 with the corresponding position is updated,          
                as required.                                              
82  a.sub.N = +1                                                          
                The value of the symbol a.sub.N becomes equal to +1.      
84  a.sub.N = 0 The value of the symbol a.sub.N becomes equal to 0.       
86,87                                                                     
    UPDATE MIN2,IMIN2                                                     
                The minimum reliability symbol having the value 0         
                or +1 with corresponding position is updated, as          
                required.                                                 
90  PREV = -1?  A check is made whether the previous symbol               
                having the value 0 is equal to -1.                        
92  PREV = +1?  A check is made whether the previous symbol               
                having the value unequal to 0 is equal to +1.             
94  a.sub.IMIN2 : = a.sub.IMIN2 - 1                                       
                The value of the symbol a.sub.MIN2 is reduced by 1.       
96  a.sub.IMIN1 : = a.sub.IMIN1 + 1                                       
                The value of the symbol a.sub.MIN2 is increased by 1.     
98  RESET MIN1,IMIN1                                                      
                The next symbol having the value 0 or +1                  
                becomes the minimum reliability symbol having the         
                value 0 or +1.                                            
100 RESET MIN2,IMIN2                                                      
                The next symbol having the value 0 or -1 becomes          
                the minimum reliability symbol having the value 0         
                or +1.                                                    
102 PREV: = +1  The previous symbol having a non-zero value               
                obtains the value +1.                                     
104 PREV: = -1  The previous symbol having a non-zero value               
                obtains the value -1.                                     
__________________________________________________________________________
In the program shown in FIG. 6 there is assumed that the received signal is a so-called partial response signal of the type 1-D. This means that the channel symbols ak are equal to bk -bk-1, where bk are the source symbols. The channel symbols may assume the values 31 1, 0 and +1. For such a signal it cannot happen that twice in a row the value +1 occurs, with intervening zero symbol values or not. If this occurs none the less, a transmission error must have occurred with the symbol having the value -1 received as a symbol having the value 0 or a symbol having the value 0 received as a symbol having the value +1. By way of correction, the minimum reliability symbol that may lead to that particular (first) type of detection error is reduced by 1.
With respect to the 1-D code, it cannot happen either that twice in a row the value -1 occurs either or not with intervening zero symbol values. If this occurs non the less, a transmission error has occurred for which a symbol having the value +1 has erroneously been received as a symbol having the value 0 or a symbol having the value 0 has erroneously been received as a symbol having the value -1. By way of correction, the minimum reliability symbol that may lead to that particular (second) type of detection error is increased by 1. If a symbol having the value +1 (-1) is preceded by a symbol having the value -1 (+1), with intervening zero symbol values or not, it is no longer possible to correct the symbols received in the past, because otherwise the code instruction would be violated. This means that it is no longer use remembering the corresponding minimum reliability symbols from the past. The minimum reliability symbol then becomes the most recent symbol having that particular value.
In instruction 70 the program is started and the variables obtain a suitable initial value. In instruction 72 the next sample of the received signal is determined and the running index N is increased. In instruction 74 there is checked whether the sample value r is smaller than the negative threshold NEG. If it is, the value of the symbol aN is made equal to -1. In instruction 80 the minimum reliability symbol value is adapted. This is effected by comparing the value of (NEG-r) with MIN1. If (NEG-r) is smaller than MIN1, this means that the symbol aN is the minimum reliability symbol. MIN1 is then made equal to (NEG-r) and IMIN1 is made equal to N.
In instruction 90 there is checked whether the previous non-zero symbol is equal to -1. If it is, a transmission error of the second type of detection errors has occurred and in instruction 96 the symbol value of the minimum reliability symbol aIMIN1 is increased by 1. In instruction 100 the parameter of MIN2 is reset to a large value, and IMIN2 to N+1, so that no symbols from the past can be reduced by 1 any longer, which would otherwise lead to a violation of the coding instruction. In instruction 104 the value of PREV is set to -1, because the most recent non-zero symbol is equal to -1. Subsequently, instruction 72 is returned to.
In instruction 76 there is checked whether the sample value r is smaller than the positive threshold POS. If it is not, the value of the symbol aN is made equal to +1 in instruction 82. Otherwise the symbol aN is made equal to 0 in instruction 84. In instruction 86 the minimum reliability symbol value is updated. This is effected by comparing the value of (r-POS) with MIN1. If (r-POS) is smaller than MIN2, this means that the symbol aN is the minimum reliability symbol. MIN2 is then made equal to (r-POS) and IMIN2 is made equal to N.
In instruction 92 there is checked whether the previous non-zero symbol is equal to +b 1. If it is, a transmission error of the first type of detection errors has occurred and in instruction 94 the symbol value of the minimum reliability symbol aIMIN2 is reduced by 1. In instruction 98 the value of MIN1 is reset to a large value, and IMIN1 to N+1, so that no symbols from the past can be increased by 1, which would otherwise lead to a violation of the coding instruction. In instruction 102 the value of PREV is set to +1, because the most recent non-zero symbol is equal to +1. Thereafter, instruction 72 is returned to.
In instruction 85 the minimum reliability symbol having the value zero or -1 is adapted. This is effected by comparing the value (r-NEG) with MIN1. If (r-NEG) is smaller than MIN1, this means that the symbol aN is the minimum reliability symbol. MIN1 is then made equal to (r-NEG), and IMIN1 is made equal to N. In instruction 87 the minimum reliability symbol having the value 0 or +1 is updated. This is effected by comparing the value (POS-r) with MIN2. If (POS-r) is smaller than MIN2, this means that the symbol aN is the minimum reliability symbol. MIN2 is then made equal to (POS-r) and IMIN2 is made equal to N. Subsequently, instruction 72 is returned to.

Claims (10)

We claim:
1. A digital transmission system, comprising:
transmitter which includes: an encoder with means for converting source symbols into channel symbols; and means for transmitting channel symbols to a transmission medium;
a receiver including:
means for receiving the channel symbols from the transmission medium as a signal;
a detector with means for deriving detected symbols from the signal and means for determining a reliability level of the detected symbols; and
an error detector with means for establishing the occurrence of a type of detection error from at least two possible types of detection errors and establishing an erroneous symbol based upon the occurring type of detection error and the reliability level of previously detected symbols; and
adapting means for adapting the symbol value of the erroneous symbol.
2. The system of claim 1, in which the detector includes means for updating a minimum reliability symbol with the corresponding reliability level for each of the possible types of detection errors.
3. The system of claim 2, in which the detector includes means for replacing the minimum reliability symbol for each of the types of detection errors, by a more recent symbol if a correction possibility for symbols older than the more recent symbol, is lacking.
4. A receiver for receiving a coded digital signal, comprising:
a detector with means for deriving detected symbols from the coded digital signal and means for determining a reliability level of the detected symbols;
an error detector with means for establishing the occurrence of a type of detection error from at least two possible types of detection errors and establishing an erroneous symbol based upon the occurring type of detection error and the reliability level of previously detected symbols; and
means for adapting the symbol value of the erroneous symbol.
5. The receiver of claim 4, in which the detector includes means for updating a minimum reliability symbol with the corresponding reliability level for each of the possible types of detection errors.
6. A digital recording system, comprising:
write means including: an encoder with means for converting source symbols into recording symbols; and means for writing the recording symbols on a recording medium; and
read means for reading a read signal from the recording medium and including:
a detector with means for deriving detected symbols from the read signal and means for determining a reliability level of the detected symbols;
an error detector with means for establishing the occurrence of a type of detection error from at least two possible types of detection errors and establishing an erroneous symbol based upon the occurring type of detection error and the reliability level of previously detected symbols; and
adapting means for adapting the symbol value of the erroneous symbol.
7. The system of claim 6, in which the detector includes means for updating a minimum reliability symbol with the corresponding reliability level for each of the possible types of detection errors.
8. A method of transmitting digital signals, comprising:
converting source signals into channel symbols;
transmitting channel symbols by a transmitter channel;
deriving detected symbols from a signal received from the transmitter channel;
determining a reliability level of the detected symbols;
establishing the occurrence of a type of detection error based upon at least two possible types of detection errors;
establishing an erroneous symbol based upon the occurring type of detection error and the reliability level of previously detected symbols; and
adapting the symbol value of the erroneous symbol.
9. A method of recording digital symbols, comprising:
converting source symbols into recording symbols;
writing the recording symbols on a recording medium;
deriving detected symbols from a signal read from the recording medium;
determining a reliability level of the detected symbols;
establishing the occurrence of a type of detection error based upon at least two possible types of detection errors;
establishing an erroneous symbol based upon the occurring type of detection error and the reliability level of previously detected symbols; and
adapting the symbol value of the erroneous symbol.
10. A method of reading coded digital symbols from a recording medium, comprising:
deriving detected symbols from a signal read from the recording medium and detecting reading errors;
determining a reliability level of the detected symbols;
establishing the occurrence of a type of detection error in response to at least two possible types of detection errors;
establishing an erroneous symbol based upon the occurring type of detection error and the reliability level of previously detected symbols; and
adapting the symbol value of the erroneous symbol.
US08/534,915 1994-10-31 1995-09-28 Digital transmission and recording system with simple error correction Expired - Fee Related US5768293A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP94203160 1994-10-31
EP94203160 1994-10-31

Publications (1)

Publication Number Publication Date
US5768293A true US5768293A (en) 1998-06-16

Family

ID=8217332

Family Applications (1)

Application Number Title Priority Date Filing Date
US08/534,915 Expired - Fee Related US5768293A (en) 1994-10-31 1995-09-28 Digital transmission and recording system with simple error correction

Country Status (10)

Country Link
US (1) US5768293A (en)
EP (1) EP0737384B1 (en)
JP (1) JP3498964B2 (en)
KR (1) KR100389775B1 (en)
CN (1) CN1099768C (en)
AT (1) ATE217461T1 (en)
CZ (1) CZ295867B6 (en)
DE (1) DE69526644T2 (en)
TW (1) TW301828B (en)
WO (1) WO1996013905A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895541B1 (en) * 1998-06-15 2005-05-17 Intel Corporation Method and device for quantizing the input to soft decoders
US20060007024A1 (en) * 2004-07-07 2006-01-12 Seagate Technology Llc High rate running digital sum-restricted code

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998027681A2 (en) * 1996-12-18 1998-06-25 Koninklijke Philips Electronics N.V. Transmission system and recording system having a simplified symbol detector
US5878062A (en) * 1997-01-24 1999-03-02 Nokia Telecommunications Oy Data transfer method and a cellular radio system
AU737227B2 (en) * 1997-06-23 2001-08-16 Siemens Aktiengesellschaft Method and device for source-controlled channel decoding using a kalman filter
JP2001508268A (en) * 1997-09-12 2001-06-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Transmission system with improved reconstruction of missing parts
US7136413B2 (en) * 2002-08-23 2006-11-14 Mediatek, Inc. Method and apparatus for generation of reliability information with diversity
DE102005012069A1 (en) * 2005-03-16 2006-09-21 Robert Bosch Gmbh Method for error handling

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4573034A (en) * 1984-01-20 1986-02-25 U.S. Philips Corporation Method of encoding n-bit information words into m-bit code words, apparatus for carrying out said method, method of decoding m-bit code words into n-bit information words, and apparatus for carrying out said method
US5278846A (en) * 1990-06-11 1994-01-11 Matsushita Electric Industrial Co., Ltd. Digital signal decoder
EP0606724A1 (en) * 1993-01-14 1994-07-20 AT&T Corp. Extended list output and soft symbol output viterbi algorithms
US5332822A (en) * 1992-12-24 1994-07-26 Bristol-Myers Squibb Company Heteroaromatic and thioheteroaromatic substituted sulfonamide thrombin inhibitors
US5463654A (en) * 1992-08-03 1995-10-31 U.S. Philips Corporation Transmission system with increased sampling rate detection
US5530725A (en) * 1990-06-06 1996-06-25 U.S. Philips Corporation Diversity receiver for dispersive channels, combining reliability-weighed signals

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2539353B2 (en) * 1984-10-05 1996-10-02 株式会社日立製作所 Method and apparatus for reproducing PCM signal
US5233629A (en) * 1991-07-26 1993-08-03 General Instrument Corporation Method and apparatus for communicating digital data using trellis coded qam

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4573034A (en) * 1984-01-20 1986-02-25 U.S. Philips Corporation Method of encoding n-bit information words into m-bit code words, apparatus for carrying out said method, method of decoding m-bit code words into n-bit information words, and apparatus for carrying out said method
US5530725A (en) * 1990-06-06 1996-06-25 U.S. Philips Corporation Diversity receiver for dispersive channels, combining reliability-weighed signals
US5278846A (en) * 1990-06-11 1994-01-11 Matsushita Electric Industrial Co., Ltd. Digital signal decoder
US5463654A (en) * 1992-08-03 1995-10-31 U.S. Philips Corporation Transmission system with increased sampling rate detection
US5332822A (en) * 1992-12-24 1994-07-26 Bristol-Myers Squibb Company Heteroaromatic and thioheteroaromatic substituted sulfonamide thrombin inhibitors
EP0606724A1 (en) * 1993-01-14 1994-07-20 AT&T Corp. Extended list output and soft symbol output viterbi algorithms
US5537444A (en) * 1993-01-14 1996-07-16 At&T Corp. Extended list output and soft symbol output viterbi algorithms

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895541B1 (en) * 1998-06-15 2005-05-17 Intel Corporation Method and device for quantizing the input to soft decoders
US20060007024A1 (en) * 2004-07-07 2006-01-12 Seagate Technology Llc High rate running digital sum-restricted code
US7002492B2 (en) 2004-07-07 2006-02-21 Seagate Technology Llc High rate running digital sum-restricted code

Also Published As

Publication number Publication date
TW301828B (en) 1997-04-01
CN1141100A (en) 1997-01-22
ATE217461T1 (en) 2002-05-15
DE69526644T2 (en) 2003-01-30
EP0737384B1 (en) 2002-05-08
WO1996013905A1 (en) 1996-05-09
DE69526644D1 (en) 2002-06-13
JPH09507985A (en) 1997-08-12
KR100389775B1 (en) 2003-10-04
CN1099768C (en) 2003-01-22
JP3498964B2 (en) 2004-02-23
CZ191996A3 (en) 1997-06-11
EP0737384A1 (en) 1996-10-16
CZ295867B6 (en) 2005-11-16

Similar Documents

Publication Publication Date Title
US5938790A (en) Sequence error event detection and correction using fixed block digital sum codes
US5566191A (en) Soft decision maximum likelihood decoding method with adaptive metric
EP0140381A2 (en) Decoding method and system for doubly-encoded reed-solomon codes
US7307556B2 (en) Error correction for RLL channel bits in demodulation rules
US7372652B1 (en) Correcting errors in disk drive read back signals by iterating with the Reed-Solomon decoder
KR19990078237A (en) An add-compare-select circuit and method implementing a viterbi algorithm
US20080263430A1 (en) Data readout device and data readout method
US5768293A (en) Digital transmission and recording system with simple error correction
US6215744B1 (en) Information recording/reproducing method and apparatus using EPRML connection processing system
US5822340A (en) Method for decoding data signals using fixed-length decision window
US6079045A (en) Transmission system and recording system having a simplified symbol detector
US6089749A (en) Byte synchronization system and method using an error correcting code
US4905256A (en) Method and device for multistate modulation and demodulation with adjustable protection level
EP1265241A1 (en) Run length limited coding method
US4862464A (en) Data error detector for digital modems using trellis coding
US7330137B2 (en) Method and apparatus for RLL code encoding and decoding
US6856660B1 (en) Signal processing method and apparatus and disk device using the method and apparatus
JPH1198021A (en) Demodulation device and method and transmission medium
CA2021744C (en) Fast maximum likelihood decoder
CN1307801C (en) Apparatus and method for demodulating signals
EP0655843A1 (en) Digital receiver with minimum cost index register
KR100488136B1 (en) Method for decoding data signals using fixed-length decision window
CN115708353A (en) Signal processing method and signal processor
US20070115155A1 (en) Demodulation table, demodulating device and demodulating method, program, and recording medium
US20030037285A1 (en) Signal processor and apparatus for reproducing information

Legal Events

Date Code Title Description
AS Assignment

Owner name: U.S. PHILIPS CORPORATION, NEW YORK

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:VAN DEN ENDEN, GIJSBERT J.;SCHOUHAMER-IMMINK, KORNELIS A.;REEL/FRAME:007706/0056;SIGNING DATES FROM 19950918 TO 19950919

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20100616