EP1668812A1 - Verfahren und vorrichtung zum dekodieren von mittels paketorientierten datenübertragungsnetzen übertragenen kodierten datenpaketen und verfahren und vorrichtung zum kodieren und dekodieren von über paketorientierte datenübertragungsnetze zu übertragende datenpaketen - Google Patents

Verfahren und vorrichtung zum dekodieren von mittels paketorientierten datenübertragungsnetzen übertragenen kodierten datenpaketen und verfahren und vorrichtung zum kodieren und dekodieren von über paketorientierte datenübertragungsnetze zu übertragende datenpaketen

Info

Publication number
EP1668812A1
EP1668812A1 EP04787236A EP04787236A EP1668812A1 EP 1668812 A1 EP1668812 A1 EP 1668812A1 EP 04787236 A EP04787236 A EP 04787236A EP 04787236 A EP04787236 A EP 04787236A EP 1668812 A1 EP1668812 A1 EP 1668812A1
Authority
EP
European Patent Office
Prior art keywords
data
data packets
error correction
decoding
carried out
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.)
Ceased
Application number
EP04787236A
Other languages
English (en)
French (fr)
Inventor
Robert Kutka
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.)
Nokia Solutions and Networks GmbH and Co KG
Original Assignee
Siemens AG
Nokia Siemens Networks GmbH and Co KG
Siemens 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 Siemens AG, Nokia Siemens Networks GmbH and Co KG, Siemens Corp filed Critical Siemens AG
Publication of EP1668812A1 publication Critical patent/EP1668812A1/de
Ceased legal-status Critical Current

Links

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/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2909Product codes
    • H03M13/2915Product codes with an error detection code in one dimension
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2927Decoding strategies
    • H03M13/293Decoding strategies with erasure setting
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2948Iterative decoding
    • 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/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/356Unequal error protection [UEP]
    • 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/0057Block 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/0056Systems characterized by the type of code used
    • H04L1/0061Error detection 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/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • 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/0072Error control for data other than payload data, e.g. control data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0098Unequal error protection

Definitions

  • the invention relates to a method and a device for decoding coded data packets transmitted by means of packet-oriented data transmission networks, and a method and a device for coding and decoding data packets to be transmitted via packet-oriented data transmission networks.
  • the so-called packet-oriented data transmission is often used.
  • the data to be sent in the network are divided into small units, so-called packets.
  • these packages also contain information in order to convey them correctly to the corresponding recipient. If a large file is now to be sent via a packet-oriented network, it must first be divided into small packets in order to then be reassembled by the recipient.
  • Precautions must therefore be taken to prevent a signal from being corrupted, ie the occurrence of errors. defective data packets, to make them as unlikely as possible and to detect errors that have occurred with the highest possible probability and to be able to initiate corrective measures if necessary. This can only be done by including the sender and receiver and requires appropriate protective measures. However, these protective measures, which are generally referred to as error protection, require expensive transmission capacities.
  • the first and most important problem in the context of error protection is the problem of the reliable detection of errors. Appropriate measures to correct the error that has already occurred can only be taken if errors are identified with a high probability. A detection of transmission errors is only possible if the transmission errors
  • Data has some redundancy, i.e. if additional information is also transmitted which is "superfluous" information in the sense of data transmission, but which provides information as to whether the message has been falsified, i.e. by means of which a faulty transmission can be recognized.
  • a well known method of providing such redundancy in the transmission of data is to provide a so-called parity bit, which is used to secure ASCII or EBCDIC characters. In principle, it is not possible to detect errors without redundancy.
  • parity bits Each character to be transmitted is provided with a check bit which indicates the parity, i.e. indicates the number of 0 or 1 bits.
  • a so-called longitudinal parity can also be checked in addition to the cross.
  • n m + k bits are transmitted over the line. It can be shown mathematically that the parity bits do not offer high protection, i.e. that the security with which errors that occur are also recognized in the
  • Comparison z u other method is relatively low.
  • Methods which provide improved error detection are, for example, the so-called cyclical redundancy check (CRC), which essentially correspond to a division by a polynomial with residual value formation.
  • CRC cyclical redundancy check
  • the advantage of forward correction is that it can also be carried out on simplex channels and that time-consuming retransmission of data packets is avoided. For this, it has the disadvantage that transmission always has to be carried out with a high level of redundancy and not just a repetition in the event of an error.
  • the invention is based on the problem of increasing the transmission security in packet-oriented networks without the need for an increased transmission capacity due to additional correction bytes or correction bits.
  • the coded data packets are subjected to an error detection. Furthermore, an error correction is carried out for the data packets identified as defective, and the data elements of the data packets identified as incorrectly transmitted, which are recognized as being correctly transmitted, are used for error correction.
  • a device for decoding coded data packets transmitted by means of packet-oriented data transmission networks with a plurality of data elements has a decoder, which is set up in such a way that it subjects the coded data packets to an error detection, for which data packets identified as faulty carry out an error correction and for correcting the errors as correctly transmitted data elements of the data packets recognized as incorrect are used.
  • a plurality of data elements are encoded before transmission by means of an encoder to form data packets, which 200303865
  • the coded data packets are subjected to an error detection with a plurality of data elements; an error correction is carried out for the data packets identified as defective, the data elements of the data packets recognized as incorrect being recognized as being correct being used for the error correction.
  • a device for encoding, transmitting and decoding data packets to be transmitted via packet-oriented data transmission networks has an encoder and a decoder.
  • the encoder is set up in such a way that it encodes a plurality of data elements before transmission to data packets.
  • the decoder is set up in such a way that it subjects the coded data packets with a plurality of data elements to error detection, performs an error correction for the data packets identified as defective, and uses the data elements of the data packets recognized as defective to be corrected for error correction.
  • the method for decoding according to the invention is based on the fact that even in the case of a defective data packet, only a small number of data elements, which can be data bytes or data bits, for example, of the defective data packet are defective, whereas the majority of data elements are also correctly transmitted in incorrectly transmitted data packets.
  • Using a simple algorithm it is possible to evaluate the correct data elements of a faulty data packet.
  • By evaluating and using the correct data elements of an incorrectly transmitted data packet it is possible to increase the error protection without increasing the number of correction elements transmitted, ie redundancy bytes or redundancy bits.
  • the "method can defective packets and forward error protection ;, in both error correction scenarios, ie return requirement are used. In the process of requesting defective packets, the number of newly requested packets can be reduced using the method according to the invention. In the process of forward error correction, the number of correctable data packets can be increased using the method according to the invention.
  • the error detection is preferably carried out in a unit of a communication transport layer.
  • the error correction can be carried out in a unit of a session layer or a presentation layer or a processing layer.
  • the layers here are to be understood as computer network layers which are based on layers in a transmission reference, e.g. the OSI reference model or the TCP / IP reference model.
  • a lower layer than the transport layer corresponds, for example, to the physical layer, the security layer or the network layer in the OSI reference model or in the TCP / IP reference model.
  • a layer higher than the transport layer is the session layer, the presentation layer and the processing layer in the OSI reference model and the processing layer in the TCP / IP reference model.
  • the data elements can be data bytes or data bits.
  • the decoder particularly preferably writes the data elements of each data packet in columns into a matrix and reads them line by line from the matrix for decoding.
  • the decoder can write the data elements of each data packet line by line into a matrix and read them out column by column for decoding. This clearly means that the entire matrix is tilted, i.e. the columns and rows are interchanged.
  • packet errors are converted into data element errors, which can subsequently be corrected more easily.
  • data element errors are understood to mean, for example, byte errors or bit errors.
  • the error correction of individual data packets is carried out if redundancy by means of redundancy elements is not sufficient to carry out an erasure correction of the individual data packets.
  • the erasure correction is carried out first before an error correction according to the invention is carried out. This leads to improved error protection and correction of the fetals.
  • the number of redundancy elements can differ per row or per column.
  • an additional deletion correction can be carried out.
  • additional error corrections and erasure corrections are preferably carried out recursively.
  • the method for decoding is particularly preferably combined with a soft decoding method.
  • the error correction capability of the method is additionally increased. Especially when selecting the potentially erroneous data elements to be corrected, those data elements that have the lowest reliability or, in other words, the highest probability of being erroneous can be selected first. This enables a gain of 1 dB to 3 dB to be achieved in the transmission [1].
  • the encoder writes the data elements to be transmitted line by line into a matrix and reads them column by column from the matrix for transmission as data packets
  • the decoder writes the data elements of each data packet column by column to a matrix and reads them line by line from the matrix for decoding out
  • the encoder can write the data elements to be transmitted in columns in a matrix and read them line by line from the matrix for transmission as data packets
  • the decoder can write the data elements of each data packet line by line in a matrix and read them out in columns for decoding.
  • the encoder writes and reads the data to be transmitted in a different order in a matrix, i.e. either writing row by row and reading column by column or vice versa
  • packet errors are converted into data element errors, which can subsequently be corrected more easily.
  • the decoder does this in exactly the opposite order, i.e. if the encoder writes line by line into the matrix and reads from the matrix column by column, the decoder writes column by column to the matrix and reads line by line and vice versa.
  • the encoder preferably provides a different number of redundancy elements per line or per column.
  • redundancy elements are understood to mean, for example, redundancy bytes or redundancy bits, depending on whether data bytes or data bits are assumed.
  • the redundancy elements are preferably provided per line when the encoder writes line by line into the matrix, whereas the redundancy elements are preferably provided per column when the encoder writes column by column into the matrix.
  • redundancy elements make it possible for the decoder to correct incorrectly transmitted data elements of a data packet. This leads to an increase in transmission security.
  • the redundancy elements are added to the end of each line and can also be added to the end A check information is added to each column, by means of which each column can be examined for errors in the receiver.
  • the redundancy elements are added to the end of each column and, in addition, one is added to the end of each row
  • the number of redundancy elements can be defined individually for each row or column. This makes it possible to achieve uniform or non-uniform error protection.
  • the invention can be seen in the fact that when data is transmitted in packet-oriented networks, the transmission security is increased and the susceptibility to errors is reduced by using a new method for error correction.
  • data packets identified as faulty are not discarded, but instead are forwarded to an FEC decoder (forward error correction decoder, forward error correction decoder).
  • FEC decoder forward error correction decoder
  • data packets with the correct IP header checksum but incorrect UDP checksum are passed on to the FEC decoder, which is implemented, for example, in the Network Adaptation Layer (NAL).
  • NAL Network Adaptation Layer
  • the FEC decoder evaluates the correct bytes of a data packet identified as defective by means of an algorithm described in more detail in the detailed description of an exemplary embodiment.
  • the method according to the invention can be used for a scenario with an available return channel.
  • the use of the method according to the invention results in a lower number of data packets requested again, since some of the data packets identified as incorrect can be corrected.
  • the method according to the invention can also be used for a scenario without an available return channel, for example in the case of television broadcasts. The number of errors is reduced by the method for error correction according to the invention.
  • a preferred implementation of the error correction method according to the invention is that for each row of data bytes three different types of methods for correcting errors in succession in a block interleaver, i.e. a decoder.
  • the conventional erasure correction is used as a first step. However, this can only be used as long as the number of defective bytes in a packet does not exceed the erasure correction capability of the code, ie the transmitted data packets. If the number of defective bytes exceeds the erasure correction capability, but is less than the error correction capability of the code, the method according to the invention is used for error correction.
  • the number of potentially defective bytes is reduced to the maximum number that can be erased by erasure by selecting a subset from the potentially faulty bytes.
  • the erasure correction is then carried out and then the resulting bytes are verified by means of checksums. If the checksums indicate that the erasure correction has not corrected the errors within the data packet, a different subset is selected from the potentially faulty bytes and then the erasure correction is carried out again with subsequent verification of the checksums.
  • the selection of different subsets of potentially faulty bytes can be carried out until all the information contained in the redundancy of the code has been used to correct as many faulty bytes as possible.
  • a so-called Reed-Solomon decoder which uses a so-called Reed-Solomon code, can be used for the erasure correction and the error correction according to the invention.
  • the Reed-Solomon code is an error correction procedure that is used in mobile communication with CDPD, in wired communication with ADSL and ATM, but also in data storage on CDs and DVDs.
  • the Reed-Solomon code is a method with forward error correction (FEC) that enables the correction of incorrectly transmitted data blocks.
  • the FEC data are attached to the useful data in a code location in a data block and transmitted together with them.
  • the code word consists of the user data and a number of Reed-Solomon test bytes as well as one or more DMT symbols.
  • the mathematical Spelling is similar to that of the CRC method, whereby a previously formed Reed-Solomon check digit is used for the polynomial division.
  • bit-wise decoding i.e. Error correction
  • the method for error correction can be accelerated in a simple manner.
  • the elaborate part i.e. the computationally expensive part is the erasure correction with a reduced number of bytes.
  • This part can be accelerated by not selecting all combinations of subsets from potentially defective bytes, but rather canceling the selection of changed subsets after a predetermined period of time. This limits the time used for erasure correction and speeds up the error correction process. However, this also limits the ability to correct.
  • FIG. 1 shows a schematic matrix for explaining an exemplary embodiment of the invention, in which matrix an encoder can write data packets to be transmitted;
  • FIG. 2 shows a schematic frequency distribution from a simulation, which indicates the frequency distribution of byte errors per packet length;
  • FIG. 3 shows a histogram in which frequency distributions of incorrect bytes per packet are entered;
  • FIG. 4 histograms in which the frequency distribution of faulty bytes per packet is entered for four different transmission conditions
  • FIG. 5 shows how many additional lines of data bytes can be corrected if an error correction method according to the invention is used
  • FIG. 6 shows a schematic representation of a simplified layer reference model with an explanation of the inventive idea
  • Figure 7 is a schematic representation of a message transmission system.
  • Introductory is a schematic with reference to FIG. 7
  • Communication system i.e. a system for transmitting data, explained, which has an encoder and a decoder and on which the inventive method for coding and decoding can be carried out.
  • source information 702 is supplied from a source 701, for example a computer, a video camera, a landline telephone or cell phone (not shown), a source encoder 703. From this, the source encoder 703 generates a data stream 704 which has a large number of useful data bits or useful data bytes.
  • Source coding is generally understood to be a coding in which the data to be transmitted are compressed, ie. redundant redundancy in the data to be transferred is eliminated.
  • the generated data stream 704 is fed to an encoder 705, also referred to as a channel encoder, coded by it, and the encoded data stream 706 is fed to a modulator 707, in which the encoded data stream 706 is modulated onto a carrier signal of a predeterminable frequency and is transmitted as a modulated signal 708 a physical channel 709, for example via a radio link or via a telephone line, to a receiver having a demodulator 710.
  • encoding or channel encoding is to be understood as a method or a method with which a data stream is encoded by adding redundancy data, also referred to in the application as redundancy elements, so that from source 701 to a sink 718 the can be transmitted with as few errors as possible.
  • redundancy is thus added to the actual user data in a controlled manner on the transmission side, so that errors which occur during transmission via: physical channel 709 can be detected and corrected on the reception side.
  • the operation of the encoder will be described in more detail below.
  • the modulated signal 708 is subject to interference 711 in the physical channel 709, as a result of which a disturbed modulated signal 712 is generated which is fed to the demodulator 710.
  • the demodulator 710 generates a demodulated data stream 713, which is fed to a decoder 714, also called a channel decoder.
  • the decoder 714 generates from the demodulated data stream 713 a decoded data stream 715 which is fed to a source decoder 716.
  • the source decoder 716 generates a result data stream 717 from the decoded data stream, which is fed to a sink. 6, a layer reference model 600, in the case shown a TCP / IP reference model, is shown schematically.
  • IP Internet Protocol
  • UDP User Datagram Protocol
  • Transport protocol 605 (RTP) is used.
  • 6 shows a fifth layer 606, which represents the application layer, which is the seventh layer in the OSI reference model.
  • the various applications or applications can be executed within the application layer 606, for example the application H.323.
  • the inventive idea is also outlined.
  • the arrow in Fig. 6 indicates that IP packets (data packets) with correct IP header checksum but with incorrect ÜDP checksum are transmitted to the layer of the "Network Adaptation Layer (NAL)", i.e. the fifth layer (application layer), even if the ÜDP checksum indicates that the relevant IP packet is faulty.
  • NAL Network Adaptation Layer
  • the error correction method according to the invention is then carried out layer by layer, which will be described in more detail below.
  • FIG. 1 illustrates a schematic matrix 100 in which an encoder can write data packets.
  • the matrix 100 shown consists of eleven rows 101, 102, 103, 104, 105, 106, 107, 108, 109, 110 and 111 and 20 columns 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130 and 131.
  • An encoder or interleaver writes the data bytes to be transmitted into this matrix. Here he writes the data bytes line by line into the matrix. At the end of each line, the encoder has the option of inserting redundancy elements, ie redundancy bytes.
  • the different number of redundancy bytes per line means that the individual lines have different redundancies and are therefore provided with different error protection. In this way, important data bytes can be reconstructed better, more accurately and more easily in the event of a faulty transmission than less important data bytes which are entered in one of the last lines in the example and which have a lower number of redundancy bytes. Uneven error protection is thus implemented.
  • the sixth data packet which is formed by the sixth column 117, the ninth data packet which is formed by the ninth column 120, the tenth data packet which is formed by the tenth column 121, the eleventh data packet which is formed by the eleventh column 122 and the 14th data packet which is formed by the 14th column 125 is formed, transmitted incorrectly and thus each have at least one faulty byte.
  • the faulty data packets ie the columns, are identified in FIG. 1.
  • the individual faulty bytes within the faulty data packets are also marked with a cross in FIG. 1.
  • a faulty data packet represents only a single data byte within each line.
  • the FEC decoder (t - l) / 2 bytes can be corrected.
  • the algorithm is based on the data elements of an interleaver block, i.e. a matrix as shown in Fig. 1, used several times. The application continues until no further correction of data errors is possible, i.e. normally until all redundancy in the data is used for error correction.
  • the algorithm has a line loop, i.e. a command sequence which is processed for all lines of the interleaver block.
  • Each line is first examined for potentially defective bytes, i.e. an error detection is carried out. A decision is also made as to whether the total number of potentially defective bytes exceeds the erasure correction capability.
  • error decoding ie the decoding according to the invention or error correction according to the invention.
  • the checksums are used to check whether the error correction for the line just corrected was correct. This checks whether the CRC is correct, ie whether there are potentially defective bytes in the line.
  • the line is corrected.
  • the CRC checks are carried out again, i.e. the line is checked for potentially defective bytes and the columns of the interleaver block, which deliver a correct CRC check, are marked as correct.
  • the system then jumps back into the line loop and processes the next line of the interleaver block, i.e. it jumps back to b).
  • erasure decoding is carried out with a reduced number of bytes. This clearly means that the erasures, i.e. the deletion of potentially faulty bytes is arbitrarily reduced to the maximum number that can be corrected. That Randomly selected potentially erroneous bytes are deleted until only as many bytes remain as can be corrected using erasure decoding, whereby the corresponding number depends on the redundancy that is available in the line. It is then decoded and all CRC checksums checked again.
  • Loop over interleaver block e.g. a matrix as shown in FIG. 1:
  • the pseudo code makes it easy to see how the algorithm for correcting transmission errors according to an embodiment of the invention is implemented.
  • the algorithm shown for the reconstruction of incorrectly transmitted data packets is based on the correct bytes of the respective incorrect data packets. It should also be noted that it is also possible to swap columns and rows in the algorithm. This is necessary if the interleaver writes the data bytes into the matrix in columns and reads them out line by line for transmission.
  • FIGS. 2 to 5 which were obtained using simulations, describe how an error correction method according to the invention affects the transmission quality, ie the number of errors present after the error correction.
  • the simulations were based on a packet length of 20 bytes.
  • Fig. 2 the results of a simulation are shown schematically, which indicates the frequency distribution of byte errors per packet length.
  • the frequency with which a certain number of byte errors / packet length occurs is plotted. It can be seen that 0.05 byte errors / packet length, i.e. an error rate of one wrong byte per 20 byte packet length, approximately in 5V »of all cases occurs.
  • the frequency of occurrence of a certain ratio of byte error / packet length increases up to the ratio of 0.25 byte error / packet length, where it reaches a frequency of about 2.6%. After that, the frequency of the occurrence of a certain ratio of byte error / packet length drops to the ratio of 0.45 byte error / packet length, where it reaches a frequency of about 3%.
  • the simulation shown in Fig. 2 was used for the case of a mobile radio transmission, e.g. Cell phone calls, and shows that, on average, about 11% of the data packets contain faulty data bytes, i.e. that only every ninth data packet is transmitted incorrectly.
  • the 11% result from the sum of all frequencies shown in FIG. 2.
  • the maximum frequency is at a ratio of byte error / packet length of 0.25, i.e. one bad byte every four bytes of packet length, which means that every fourth byte is bad.
  • the frequency is only around 2.6%. It is thus easy to see that most data packets are transmitted without errors and that the majority of the bytes in the faulty data packets are transmitted correctly.
  • FIG. 3 shows a histogram in which the frequency distribution of defective bytes per packet is entered.
  • the absolute number of bad bytes on the X axis is arbitrary, since the number of bad bytes depends on the packet length used.
  • the frequency distribution for faulty bytes is entered, which could not be corrected despite the correction of errors.
  • To obtain the data points of the upper curve 340 a correction of the transmission errors has been carried out in accordance with the prior art, in which the correct bytes of the faulty data packets not be used to correct the errors.
  • an error correction has been carried out in accordance with the method according to the invention, in which the correct bytes of the incorrect data packets are used for the error correction.
  • the histogram clearly shows that the error correction method according to the invention results in a significantly reduced number of incorrect bytes per data packet than the method according to the prior art.
  • Curve 341 is clearly shifted to the left, which means that a larger number of initial errors can be corrected if the error correction method according to the invention is used.
  • FIG. 4 shows four histograms ad, in which, as in FIG. 3, frequency distributions of defective bytes per packet are entered.
  • the absolute number of incorrect bytes on the X axis is again arbitrary, since the number of incorrect bytes depends on the packet length used.
  • the frequency distribution for faulty bytes is entered, which could not be corrected despite the correction of errors.
  • 4a and 4b transmission conditions are selected which correspond to transmission within a building, ie if, for example, a cell phone is operated within a building.
  • a correction of the transmission errors according to the prior art has been carried out, in which the correct bytes of the incorrect data packets are not used for the correction of the errors.
  • Figs. 4c and 4d correspond to a transmission situation within a vehicle, i.e. if, for example, a cell phone is operated inside a vehicle.
  • the upper curves 444 and 446 correspond to a correction of the transmission errors according to the prior art, in which the correct bytes of the incorrect data packets are not used for the correction of the errors.
  • an error correction was carried out in accordance with the method according to the invention, in which the correct bytes of the incorrect data packets are used for the error correction.
  • FIG. 5 shows how many additional lines of data bytes can be corrected if an error correction method according to the invention is used. More precisely, it shows how many consecutive correct ones Lines within an interleaver block, i. H . of a block as schematically shown as a matrix in Fig. 1, can be expected if an error correction method according to the invention is used.
  • the probability of a certain number of consecutive error-free lines can be easily calculated as follows:
  • n is the number of consecutive error-free lines
  • p is the probability of error of a single line
  • P (n) is the probability of n consecutive error-free lines.
  • the probabilities shown in FIG. 5 are based on the results shown in FIG. 3.
  • the lower curve 550 in FIG. 5 shows the probability of the occurrence of consecutive error-free lines. If the error correction method according to the invention is used without providing redundancy bytes, approximately three additional error-free lines which follow one another are expected. The number of three results from the probability value of 50%, i.e. there is more than 50% improvement by three additional consecutive error-free lines. It can thus be seen that by means of the error correction method according to the invention, which uses the correct bytes of error-containing data packets, by also using the error-containing data packets for error correction, the error correction can be improved. This achieves greater error protection and greater transmission security.
  • the upper curve 551 in FIG. 3 shows how the probabilities for successive error-free lines change. hold if one error per line can be corrected by using redundancy bytes. In this case, about 20 consecutive error-free lines are expected. The number of 20 in turn results from the probability value of 50%, ie more than 50% results in 20 successive error-free lines.
  • the error correction method according to the invention leads to a strong improvement in the correction capability and thus an improvement in error protection and an improvement in the transmission reliability.
  • the method for decoding according to the invention is based on the fact that even in the case of a defective data packet, only a small number of data elements, which can be data bytes or data bits, for example, of the defective data packet are faulty, whereas the predominant number "of data elements" is also in faulty data packets Using a simple algorithm, it is possible to evaluate the correct data elements of an incorrect data packet. By evaluating and using the correct data elements of an incorrectly transmitted data packet, it is possible to increase error protection without the number of correction elements transmitted, ie redundancy bytes or redundancy bits
  • the method according to the invention can be used in both error correction scenarios, ie reordering defective packets and forward error protection.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Bei einem Verfahren zum Dekodieren von über paketorientierte Datenübertragungsnetze übertragenen kodierten Datenpaketen werden Datenpakete aus einer Mehrzahl von Datenelementen einer Fehlererkennung unterworfen. Ferner wird an den als fehlerhaft erkannten Datenpaketen eine Fehlerkorrektur durchgeführt und es werden zur Fehlerkorrektur auch die korrekt übertragenen Datenelemente der als fehlerhaft erkannten Datenpakete verwendet.

Description

Beschreibung
Verfahren und Vorrichtung zum Dekodieren von mittels paketorientierten Datenübertragungsnetzen übertragenen kodierten Datenpaketen und Verfahren und Vorrichtung zum Kodieren und Dekodieren von über paketorientierte Datenubertragungsnetze zu übertragende Datenpaketen
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Dekodieren von mittels paketorientierten Datenübertragungsnetzen übertragenen kodierten Datenpaketen und ein Verfahren und eine Vorrichtung zum Kodieren und Dekodieren von über paketorientierte Datenubertragungsnetze zu übertragende Datenpaketen.
Bei Übertragungen von Daten über ein Netz, z.B. über ein Computernetz oder ein Telefonnetz, wird häufig die so genannte paketorientierte Datenübertragung angewendet. Dazu werden die im Netz zu versendenden Daten in kleine Einheiten, so genann- te Pakete, aufgeteilt. Diese Pakete enthalten neben dem eigentlichen Dateninhalt auch Informationen, um sie korrekt zum entsprechenden Empfänger zu vermitteln. Soll nun eine große Datei über ein paketorientiertes Netz gesendet werden, so muss sie erst in kleine Pakete aufgeteilt werden, um an- schließend beim Empfänger wieder zusammengesetzt zu werden.
Bei der Übertragung von Datenpaketen innerhalb von Datennetzen zwischen Sender und Empfänger kommt es zu Übertragungsfehlern, was zu Problemen bei der Sicherstellung einer ge- wünschten Übertragungsqualität der Daten führt. Anders ausgedrückt führen fehlerhafte Übertragungskanäle, insbesondere bei mobilen Funkkanälen wie sie zum Beispiel bei Handys verwendet werden, zu einer Verschlechterung der Übertragungsqualität.
Daher müssen Vorkehrungen getroffen werden, um beim Auftreten von Fehlern die Verfälschung eines Signals, d.h. das Auftre- ten fehlerhafter Datenpakete, möglichst unwahrscheinlich zu machen und um Fehler, die aufgetreten sind, mit möglichst hoher Wahrscheinlichkeit zu entdecken und gegebenen alls Korrekturmaßnahmen einleiten zu können . Dies kann nur durch die Einbeziehung von Sender und Empfänger geschehen und erfordert entsprechende Schutzmaßnahmen. Diese Schutzmaßnahmen, welche im Allcjemeinen als Fehlerschutz bezeichnet werden, erfordern jedoch teure Übertragungskapazitäten.
Das erste und wichtigste Problem im Rahmen des Fehlerschutzes ist das Problem der zuverlässigen Erkennung von Fehlern. Nur wenn Fehler mit hoher Wahrscheinlichkeit erkannt werden, können auch geeignete Maßnahmen zur Korrektur des bereits aufgetretenen Fehlers vorgenommen werden. Eine Erkennung von Über- tragungsfehlern ist nur dann möglich, wenn die übertragenen
Daten eine gewisse Redundanz aufweisen, d.h. wenn zusätzliche Information mitübertragen wird, die im Sinne der Datenübertragung "überflüssige" Information ist, die aber darüber Auskunft gibt, ob eine Verfälschung der Nachricht vorliegt, d.h. mittels derer eine fehlerhafte Übertragung erkannt werden kann. Ein weit bekanntes Verfahren solch eine Redundanz bei der Übertragung von Daten bereitzustellen ist das Bereitstellen eines sog. Paritätsbit, das zur Sicherung von ASCII oder EBCDIC Zeichen verwendet wird. Ohne Redundanz ist eine Erken- nung von Fehlern prinzipiell nicht möglich.
Es existieren verschiedene Verfahren für die Erkennung von Fehlern. Sie unterscheiden sich im wesentlichen nur in der Anzahl der hinzukommenden "Schutzbits" und der Sicherheit, mit der: einfache und komplexe Störungen der ursprünglichen
Nachricht und der Schutzbits erkannt werden. Eine 100% Garantie für das Erkennen von Fehlern kann jedoch nie gegeben werden. Sicherheit ist immer relativ. Ferner kann mit Sicherheit immer nur das Vorliegen eines Fehlers angegeben werden. Umge- kehrt kann nur mit einer gewissen, durch das Verfahren bestimmten Wahrscheinlichkeit, behauptet werden, dass kein Fehler vorliegt.
Zu den einfachsten Verfahren zur Fehlererkennung zählt, wie bereits erwähnt, die Einführung von Paritätsbits. Hierbei wird jedes zu übertragende Zeichen mit einem Prüfbit versehen, das die Parität, d.h. die Anzahl der 0- bzw. 1-Bits angibt . Bei einer blockweiser Übertragung kann neben der Quer auch eine sog. Längsparität geprüft werden.
Für jeweils m Nutzbits werden dabei k Schutzbits übertragen, sodass insgesamt n = m + k Bits über die Leitung übertragen werden gehen. Es lässt sich mathematisch zeigen, dass die Paritätsbits keinen hohen Schutz bieten, d.h. dass die Sicher- heit, mit der aufgetretene Fehler auch erkannt werden, im
Vergleich z:u anderen Verfahren relativ gering ist. Verfahren, welche eine verbesserte Fehlererkennung bereitstellen sind zum Beispiel die so genannten zyklischen Redundanzcodes (cyc- lical redundancy check = CRC) , die im wesentlichen einer Di- vision durch ein Polynom mit Restwertbildung entsprechen.
Für die zuverlässige Datenübertragung reicht es häufig nicht aus, dass Übertragungsfehler festgestellt werden können, oftmals muss man die Datenbytes, welche Übertragungsfehler auf- weisen, auch korrigieren können. Für die Korrektur von Über- tragungsfehlern sind grundsätzlich zwei verschiedene Prozesse bekannt.
1. Rückanforderung defekter, d.h. fehlerhaft übertragener, Pakete. Dies wird auch als "Äcknowledge Mode" (ACK) bezeichnet. Dieser Prozess ist nur in Szenarien mit Rückkanal möglich, d.h. wenn zwischen einem Sender und einem Empfänger eine Zweiweg"—Verbindung (Duplex-Verbindung) besteht. Bei Verwendung dieses Prozesses werden mittels eines Fehlererken- nungsalgorrithmus fehlerhafte übertragene Pakete erkannt. Die Fehlererkennung wird hierbei üblicherweise mittels eines zyklischen Redundanzcodes (CRC) durchgeführt. Die als fehlerhaft erkannten Pakete werden verworfen und der Empfänger fordert die fehlerhaft übertragenen Pakete erneut an. Nachteil bei diesem Verfahren ist jedoch, dass das erneute Versenden von angeforderten Paketen erhebliche Übertragungskapazität benö- tigt . Zusätzlich, wenn auch im geringen Masse, führt die erneute Übertragung einzelner Pakete zu einer Verzögerung der Übertragung der gewünschten Information, d.h. der gewünschten Daten.
2. Vorwärtsfehlerschütz, welcher auch als "Unacknowledge Mode" (UCK) bezeichnet wird. Beim Verwenden dieser Art von Fehlerschutz ist kein Rückkanal erforderlich. Damit ist dieser Prozess auch in Szenarien möglich, in denen kein Rückkanal vorhanden ist. Beim Vorwärtsfehlerschutz wird versucht, fehlerhafte Datenpakete mittels zusätzlich übertragener Korrekturinformationen, welche auch als Korrekturbytes bezeichnet werden, zu rekonstruieren. Hierbei ist zu beachten, dass jeder verwendete Vorwärtsfehlerschutz nur eine gewisse Korrekturfähigkeit aufweist, welche primär durch die Anzahl der mit übertragenen Korrekturbytes bestimmt wird. Bei der Vorwärtskorrektur verteilt ein so genannter "Interleaver" aufgetretene Paketverluste, d.h. fehlerhaft übertragene Datenpakete, auf einzelne Byte-Auslöschungen, die so genannten "Byte Erasures" , welche korrigiert werden, wenn die Korrekturfähig- keit nicht überschritten wird. Bei der Auslöschungskorrektur werden somit Fehler eines als fehlerhaft erkannten Datenpakets auf einzelne Bytes verteilt, diese einzelnen Bytes werden dann ausgelöscht, wodurch die fehlerhaften Datenpakete korrigiert werden, wenn die Anzahl der Byte-Auslöschungen die Korrektur ähigkeit des verwendeten Codes nicht überschreitet.
Die Vorwärtskorrektur hat den Vorteil, dass sie auch auf Simplexkanälen durchgeführt werden kann und dass eine zeitaufwändige erneute Übertragung von Datenpaketen vermieden wird. Dafür hat sie den Nachteil, dass immer mit hoher Redundanz gesendet werden muss und nicht nur im Fehlerfall eine Wiederholung stattfindet. Der Erfindung liegt das Problem zugrunde, die Übertragungssi- cherhei-t in paketorientierten Netzen zu erhöhen, ohne dass hierfür eine erhöhte Übertragungskapazität durch zusätzliche Korrekturbytes bzw. Korrekturbits nötig ist.
Das Problem wird durch das Verfahren und die Vorrichtung zum Dekodieren von über paketorientierte Datenubertragungsnetze übertragenen kodierten Datenpaketen und durch das Verfahren und die Vorrichtung zum Kodieren und Dekodieren von über paketorientierte Datenubertragungsnetze zu übertragende Datenpakete mit den Merkmalen gemäß den unabhängigen Patentansprüchen gelöst.
Bei einem Verfahren zum Dekodieren von über paketorientierte Datenubertragungsnetze übertragenen kodierten Datenpaketen mit einer Mehrzahl von Datenelementen werden die kodierten Datenpakete einer Fehlererkennung unterzogen. Ferner wird für die als fehlerhaft erkannten Datenpakete eine Fehlerkorrektur durchgeführt und es werden zur Fehlerkorrektur die als korrekt übertragen erkannten Datenelemente der als fehlerhaft erkannten Datenpakete verwendet.
Eine Vorrichtung zum Dekodieren von mittels paketorientierten Datenübertragungsnetzen übertragenen kodierten Datenpaketen mit einer Mehrzahl von Datenelemente, weist einen Dekodierer auf, der derart eingerichtet ist, dass er die kodierten Datenpakete einer Fehlererkennung unterzieht, für die als fehlerhaft erkannten Datenpakete eine Fehlerkorrektur durchführt und zur Fehlerkorrektur die als korrekt übertragen erkannten Datenelemente der als fehlerhaft erkannten Datenpakete verwendet .
Bei einem Verfahren zum Kodieren und Dekodieren von über pa- ketorientierte Datenubertragungsnetze zu übertragenden Datenpaketen wird eine Mehrzahl von Datenelementen vor dem Übertragen mittels eines Kodierers zu Datenpaketen kodiert, wel- 200303865
6 ehe Datenpakete über ein paketorientiertes Datennetz übertragen werden. Ferner werden die kodierten Datenpakete mit einer Mehrzahl von Datenelementen einer Fehlererkennung unterzogen, für die als fehlerhaft erkannten Datenpakete wird eine Feh- lerkorrektur durchgeführt, wobei zur Fehlerkorrektur die als korrekt übertragen erkannten Datenelemente der als fehlerhaft erkannten Datenpakete verwendet werden.
Eine Vorrichtung zum Kodieren, Übertragen und Dekodieren von über paketorientierte Datenubertragungsnetze zu übertragenden Datenpaketen weist einen Kodierer und einen Dekodierer auf. Der Kodierer ist derart eingerichtet, dass er eine Mehrzahl von Datenelementen vor dem Übertragen zu Datenpaketen kodiert. Der Dekodierer ist derart eingerichtet, dass er die kodierten Datenpakete mit einer Mehrzahl von Datenelementen einer Fehlererkennung unterzieht, für die als fehlerhaft erkannten Datenpaketen eine Fehlerkorrektur durchführt und zur Fehlerkorrektur die als korrekt übertragen erkannten Datenelemente der als fehlerhaft erkannten Datenpakete verwendet.
Das erfindungsgemäße Verfahren zum Dekodieren basiert darauf, dass auch bei einem fehlerhaften Datenpaket nur eine geringe Anzahl von Datenelementen, welche beispielsweise Datenbytes oder Datenbits sein können, des fehlerbehafteten Datenpakets fehlerhaft sind, wohingegen die überwiegende Anzahl von Datenelementen auch in fehlerhaft übertragenen Datenpaketen korrekt übertragen werden. Mittels eines einfachen Algorithmus ist es möglich die korrekten Datenelemente eines fehlerhaften Datenpakets auszuwerten. Durch das Auswerten und Ver- wenden der korrekten Datenelemente eines fehlerhaft übertragenen Datenpakets ist es möglich den Fehlerschutz zu erhöhen, ohne dabei die Anzahl mitübertragener Korrekturelemente, d.h. Redundanzbytes oder Redundanzbits, zu erhöhen. Das erfindungsgemäße "Verfahren kann in beiden Fehlerkorrektur- Szenarien, d.h. Rückanforderung defekter Pakete und Vorwärtsfehlerschutz;, verwendet werden. Im Prozess der Rückanforderung defekter Pakete kann mittels des er indungsgemäßen Verfahrens die Anzahl der neuangeforderten Pakete gesenkt werden. Im Prozess der Vorwärtsfehler- korrektur kann mittels des erfindungsgemäßen Verfahrens die Anzahl der korrigierbaren Datenpakete erhöht werden.
Bevorzugte Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen. Die weiteren Ausgestaltungen der Erfindung, welche anhand des Verfahrens zum Dekodieren von mit- tels paketorientierten Datenübertragungsnetzen übertragenen kodierten Datenpakete beschrieben werden, gelten auch für die Vorrichtung zum Dekodieren von mittels paketorientierten Datenübertragungsnetzen übertragenen kodierten Datenpaketen und für das Verfahren und die Vorrichtung zum Kodieren und Deko- dieren von über paketorientierte Datenubertragungsnetze zu übertragende Datenpakete .
Vorzugsweise wird die Fehlererkennung in einer Einheit einer Kommunikations-Transportschicht durchgeführt .
Die Fehlerkorrektur kann in einer Einheit einer Sitzungsschicht oder einer Darstellungsschicht oder einer Verarbeitungsschicht durchgeführt werden.
Unter den Schichten sind hier Computernetzwerkschichten zu verstehen, welche sich auf Schichten in einem Übertragungs- Referenz odell, z.B. dem OSI-Referenzmodell oder dem TCP/IP- Referenzmodell, beziehen. Eine niedrigere Schicht als die Transportschicht entspricht zum Beispiel der Bitübertragungs- schicht, der Sicherungsschiσht oder der Vermittlungsschicht im OSI-Referenzmodel oder im TCP/IP-Referenzmodell. Eine Schicht höher als die Transportschicht ist im OSI- Referenzmodell die Sitzungsschicht, die Darstellungsschiσht und die Verarbeitungsschicht und im TCP/IP-Referenzmodell die Verarbeitungsschicht.
Die Datenelemente können Datenbytes oder Datenbits sein. Besonders vorzugsweise schreibt der Dekodierer die Datenelemente jedes Datenpaketes spaltenweise in eine Matrix und liest sie zeilenweise zum Dekodieren aus der Matrix aus.
Alternativ kann der Dekodierer die Datenelemente jedes Datenpaketes zeilenweise in eine Matrix schreiben und spaltenweise zum Dekodieren auslesen. Anschaulich bedeutet das, dass die ganze Matrix gekippt wird, d.h. die Spalten und Zeilen sind vertauscht.
Dadurch dass der Dekodierer die zu übertragenden Daten in unterschiedlicher Ordnung in eine Matrix schreibt und ausliest, d.h. entweder zeilenweise schreibt und spaltenweise ausliest oder umgekehrt, werden Paketfehler in Datenelementfehler umgewandelt, welche nachfolgend einfacher korrigiert werden können. In der Anmeldung werden unter Datenelementfehler beispielsweise Bytefehler oder Bitfehler verstanden.
In einer Weiterbildung wird die Fehlerkorrektur einzelner Datenpakete durchgeführt, falls eine Redundanz durch Redundanzelemente zum Durchführen einer Auslöschungskorrektur der einzelnen Datenpakete nicht ausreicht.
Hierdurch ist es möglich, dass, solange eine Auslöschungskorrektur (Erasure Correction) durchführbar ist, weil eine ausreichende Redundanz vorhanden ist, zuerst die Auslö- schungskorrektur durchgeführt wird, bevor eine erfindungsgemäße Fehler orrektur durchgeführt wird. Dies führt zu einem verbesserten Fehlerschutz bzw. zu einer verbesserten Korrektur der Fetaler. Die Anzahl der Redundanzelemente kann je Zeile bzw. je Spalte unterschiedlich sein.
Nachfolgend nach der erfindungsgemäßen Fehlerkorrektur ein- zelner Datenpakete kann eine zusätzliche Auslöschungskorrektur vorgenommen werden. Vorzugsweise werden nach erfolgter Auslöschungskorrektur rekursiv zusätzliche Fehlerkorrekturen und Auslöschungskorrekturen vorgenommen.
D.h. es wird eine rekursive Fehlerkorrektur durchgeführt. Durch erfolgreiche Fehlerkorrektur einzelner Datenelemente ist es möglich mittels der PrüfInformation jeder Spalte/Zeile ganze Spalten/Zeilen als fehlerfrei zu markieren. Bei einem nachfolgenden Rekursionsschritt, d.h. nochmaligem Durchlaufen der Fehlerkorrektur, fallen diese als fehlerfrei Spalten/Zeilen weg. Hierdurch kann für einige Zeilen/Spalten vom Korrekturmodus, d.h. der erfindungsgemäßen Fehlerkorrektur, in den zuverlässigeren Erasure odus, d.h. der Auslöschungskorrektur, übergegangen werden. D.h. es können zusätzliche Fehler korrigiert werden.
Besonders bevorzugt wird das Verfahren zum Dekodieren mit einem Sof dekodierverfahren kombiniert.
Wird das erfindungsgemäße Verfahren zum Dekodieren noch mit einem Softdekodierverfahren kombiniert, so wird die Fehlerkorrekturfähigkeit des Verfahrens zusätzlich gesteigert. Speziell bei der Auswahl der zu korrigierenden potentiell fehlerhaften Datenelemente können hierbei diejenigen Datenele- mente zuerst ausgewählt werden, welche die geringste Zuverlässigkeit aufweisen oder anders ausgedrückt die höchste Wahrscheinlichkeit aufweisen fehlerhaft zu sein. Hierdurch lässt sich bei der Übertragung etwa ein Gewinn von 1 dB- bis 3 dB erziehlen [1] .
In einer Weiterbildung schreibt der Kodierer die zu übertragenden Datenelemente zeilenweise in eine Matrix und liest sie zum Übertragen als Datenpakete spaltenweise aus der Matrix aus, und der Dekodierer schreibt die Datenelemente jedes Da- tenpaketes spaltenweise in eine Matrix und liest sie zeilenweise zum Dekodieren aus der Matrix aus . Alternativ kann der Kodierer die zu übertragenden Datenelemente spaltenweise in eine Matrix schreiben und zum Übertragen als Datenpakete zeilenweise aus der Matrix auslesen und der Dekodierer die Datenelemente jedes Datenpaketes zeilen- weise in eine Matrix schreiben und spaltenweise zum Dekodieren auslesen.
Dadurch dass der Kodierer die zu übertragenen Daten in unterschiedlicher Ordnung in eine Matrix schreibt und ausliest, d.h. entweder zeilenweise schreibt und spaltenweise ausliest oder umgekehrt, werden Paketfehler in Datenelementfehler umgewandelt, welche nachfolgend einfacher korrigiert werden können. Dies ist insbesondere dann der Fall, wenn der Dekodierer dies in genau umgekehrter Reihenfolge durchführt, d.h. falls der Kodierer zeilenweise in die Matrix schreibt und spaltenweise aus der Matrix ausliest, schreibt der Dekodierer spaltenweise in die Matrix ein und liest zeilenweise aus und umgekehr .
Vorzugsweise stellt der Kodierer je Zeile bzw. je Spalte eine unterschiedliche Anzahl von Redundanzelementen bereit.
Unter Redundanzelementen werden in der Anmeldung beispielsweise Redundanzbytes oder Redundanzbits verstanden, je nach- dem ob von Datenbytes oder von Datenbits ausgegangen wird. Die Redundanzelemente werden, wenn der Kodierer zeilenweise in die Matrix schreibt vorzugsweise je Zeile vorgesehen, wohingegen die Redundanzelemente, wenn der Kodierer spaltenweise in die Matrix schreibt vorzugsweise je Spalte vorgesehen werden.
Mittels der Kodierung von Redundanzelemente ist es möglich, dass der Dekodierer fehlerhaft übertragene Datenelemente eines Datenpaketes korrigiert. Dies führt zu einer Erhöhung der Übertragungssicherheit. Die Redundanzelemente werden bei einem zeilenweisen Schreiben des Interleavers in die Matrix an das Ende jeder Zeile angefügt und zusätzlich kann an das Ende jeder Spalte eine Prüfinformation angefügt werden, mittels welcher dann, beim Empfänger jede Spalte auf ihre Fehlerhaftigkeit untersucht werden kann. Bei dem spaltenweisen Schreiben werden die Redundanzelemente an das Ende jeder Spalte an- gefügt und zusätzlich werden an das Ende jeder Zeile eine
PrüfInformation angefügt, mittels welcher dann beim Empfänger jede Zeile auf ihre Fehlerhaftigkeit untersucht werden kann.
Die Anzahl der Redundanzelemente kann je Zeile bzw. je Spalte individuell festgelegt werden. Hierdurch ist es möglich einen gleichmäßigen oder ungleichmäßigen Fehlerschutz zu erzielen. Bei dem Verwenden einer unterschiedlichen Anzahl von Redundanzelemente ist es möglich die Redundanz für besonders sensible Datenelemente innerhalb des Datenpakets zu erhöhen und so die ÜbertragungsSicherheit zu erhöhen, während es gleichzeitig möglich ist, die Anzahl von Redundanzelemente für weniger sensible Datenelemente innerhalb des Datenpakets zu senken, ohne dass hierdurch die Übertragungssicherheit stark beeinträchtigt wird. Somit ist ein ungleichmäßiger Fehler- schütz möglich.
Zusammenfassend kann die Erfindung darin gesehen werden, dass bei der Übertragung von Daten in paketorientierten Netzen die ÜbertragungsSicherheit erhöht und die Fehleranfälligkeit ver- ringert wird, indem ein neues Verfahren zur Fehlerkorrektur verwendet wird. In diesem Verfahren werden als fehlerhaft erkannte Datenpakete nicht verworfen, sondern an einen FEC- Dekodierer <Vorwärtsfehlerkorrektur-Dekodierer, Forward- Error-Correction-Decoder) weitergeleitet. Hierbei ist zu be- achten, dass Datenpakete mit korrekter IP-Header Checksumme aber fehlerhafter UDP Checksumme an den FEC-Dekodierer weitergegeben werden, welcher beispielsweise im Network Adaptation Layer <NAL) implementiert ist. Mittels eines nachfolgend in der ausführlichen Beschreibung eines Ausführungsbeispiels genauer beschriebenen Algorithmus wertet der FEC-Dekodierer die korrekten Bytes eines als fehlerhaft erkannten Datenpakets aus. Hierdurch wird ein höherer Fehlerschutz erreicht. D.h., dass fehlerhafte Datenpakete nicht gelöscht werden, sondern in eine höhere Schicht als die Transportschicht übermittelt werden, auf welcher dann das erfindungsgemäße Verfah- ren zur Korrektur von Übertragungsfehlern angewendet wird. Dies kann zum Beispiel die AnwendungsSchicht sein. Hierbei wird die CRC-Überprüfung dann nicht mehr wie im Stand der Technik in den Transportschichten durchgeführt, sondern erst auf einer höheren Schicht, vorzugsweise der Anwendungs- Schicht. Hierdurch ist es möglich die korrekt übertragenen
Datenelemente eines fehlerhaften Datenpakets für eine Fehlerkorrektur zu verwenden.
Das er indungsgemäße Verfahren kann für ein Szenario mit ei- nem zur Verfügung stehenden Rückkanal angewendet werden. Bei diesem Szenario kommt es durch die Anwendung des erfindungsgemäßen Verfahrens zu einer geringeren Anzahl von erneut angeforderten Datenpaketen, da ein Teil der als fehlerhaft erkannten Datenpakete korrigiert werden kann. Auch für ein Sze- nario ohne einem zur Verfügung stehenden Rückkanal, zum Beispiel bei Fernsehausstrahlungen, kann das erfindungsgemäße Verfahren verwendet werden . Hierbei wird durch das er indungsgemäße Verfahren zur Fehlerkorrektur die Fehleranzahl reduzier .
Eine bevorzugte Implementierung des er indungsgemäßen Verfahrens zur Fehlerkorrektur ist, dass für jede Zeile von Datenbytes drei verschiedene Arten von Verfahren zum Korrigieren von Fehlern nacheinander in einem Blockinterleaver, d.h. ei- nem Dekodierer, angewendet werden.
Als erster Schritt wird die herkömmliche Auslöschungskorrektur verwendet. Diese ist jedoch nur anwendbar, solange die Anzahl der defekten Bytes eines Paketes nicht die Auslö- schungskorrekturfähigkeit des Codes, d.h. der übertragenen Datenpakete, übersteigt. Übersteigt die Anzahl der defekten Bytes die Auslöschungs- korrekturfähigkeit, ist aber geringer als die Fehlerkorrekturfähigkeit des Codes, so wird das erfindungsgemäße Verfahren zur Fehlerkorrektur verwendet .
Übersteigt die Anzahl der fehlerhaften Bytes die Fehlerkorrekturfähigkeit des Codes so wird die Anzahl der potentiell defekten Bytes auf die maximal auslöschungskorrigierbare Anzahl reduziert, indem eine Teilmenge aus den potentiell feh- lerhaften Bytes ausgewählt wird. Nachfolgend wird die Auslö- schungskorrrektur durchgeführt und dann die sich ergebenen Bytes mittels Checksummen verifiziert. Falls die Checksummen anzeigen, dass die Auslöschungskorrektur die Fehler innerhalb des Datenpakets nicht bereinigt hat, wird eine andere Teil- menge aus den potentiell fehlerhaften Bytes ausgewählt und nachfolgend wiederum die Auslöschungskorrektur mit anschließender Verifizierung der Checksummen durchgeführt. Das Auswählen von verschiedenen Teilmengen von potentiell fehlerhaften Bytes kann solange durchgeführt werden, bis die gesamte Information, welche in der Redundanz des Codes beinhaltet ist, verwendet wurde, um möglichst viele fehlerhafte Bytes zu korrigieren .
Für die Auslöschungskorrektur und die erfindungsgemäße Feh- lerkorrektur kann ein so genannter Reed-Solomon-Dekodierer verwendet werden, welcher einen so genannten Reed-Solomon- Code verwendet. Der Reed-Solomon-Code ist ein Fehlerkorrektur-Verfahrren, das in der Mobilkommunikation bei CDPD, in der drahtgebundenen Kommunikation bei ADSL und ATM, aber auch bei der Datenspeicherung auf CDs und DVDs eingesetzt wird. Beim Reed-Solomon-Code handelt es sich um ein Verfahren mit Vor- wärtsfehlerrkorrektur (FEC) , das die Korrektur fehlerhaft ü- bertragener Datenblöcke ermöglicht. Die FEC-Daten werden in einem Code— ort in einem Datenblock den Nutzdaten angehängt und mit diesen zusammen übertragen. Das Codewort besteht aus den Nutzdaten und einer Anzahl an Reed-Solomon-Prüfbytes sowie einem oder mehreren DMT-Symbolen. Die mathematische Be- Schreibung ähnelt der des CRC-Verfahrens, wobei eine vorher gebildete Reed-Solomon-Prüfziffer für die Polynomdivision genutzt wird.
Anstelle einer byteweisen Dekodierung ist es erfindungsgemäß auch möglich eine bitweise Dekodierung, d.h. Fehlerkorrektur, vorzunehmen .
Das Verfahren zur Fehlerkorrektur kann auf einfache Weise be- schleunigt werden. Der aufwändige Teil, d.h. der rechenauf- wändige Teil, ist die Auslöschungskorrektur mit reduzierter Bytezahl . Dieser Teil kann beschleunigt werden, indem nicht alle Kombinationen von Teilmengen aus potentiell defekten Bytes ausgewählt werden, sondern die Auswahl geänderter Teil- mengen nach einer vorgegebenen Zeitspanne abgebrochen wird. Dadurch wird die Zeit, welche für die Auslöschungskorrektur verwendet wird, begrenzt, und das Verfahren zur Fehlerkorrektur beschleunigt. Hierbei wird jedoch auch die Korrekturfähigkeit eingeschränkt.
Im erfindungsgemäßen Verfahren ist es auch möglich, so genannte Softbytes, d.h. Bytes welche ein leicht abgeschwächtes Niveau aufweisen, zu verwerten. Dies erhöht nochmals die Fähigkeit des Verfahrens Fehler zu korrigieren.
Ein Aus ührungsbeispiel der Erfindung ist in den Figuren dargestellt und wird im Weiteren näher erläutert.
Es zeigen:
Figur 1 eine schematische Matrix zum Erläutern eines Ausführungsheispiels der Erfindung, in welche Matrix ein Kodierer zu übertragende Datenpakete schreiben kann;
Figur 2 eine schematische Häufigkeitsverteilung aus einer Simulation, welche die Häufigkeitsverteilung von Bytefehlern je Pake länge angibt; Figur 3 ein Histogramm, in welchen Häufigkeitsverteilungen von fehlerhaften Bytes je Paket eingetragen sind;
Figur 4 Histogramme, in welchen die Häufigkeitsverteilung von fehlerhaften Bytes je Paket für vier verschiedene Übertragungsbedingungen eingetragen sind;
Figur 5 wie viele zusätzliche Zeilen von Datenbytes korri- giert werden können, wenn ein erfindungsgemäßes Fehlerkorrekturverfahren verwendet wird;
Figur 6 eine schematische Darstellung eines vereinfachten Schichten-Referenzmodells mit einer Verdeutlichung der erfin- derischen Idee; und
Figur 7 eine schematische Darstellung eines Nachrichtenübertragungsystems .
Einleitend wird unter Bezug auf Fig. 7 ein Schematisches
Nachrichtenübertragungssystem, d.h. ein System zum Übertragen von Daten, erläutert, welches einen Kodierer und einem Dekodierer aufweist und auf welchem das erfindungsgemäße Verfahren zum Kodieren und Dekodieren durchgeführt werden kann .
In einem Nachrichtenübertragungssystem 700 wird von einer Quelle 701, beispielsweise einem Computer, einer Videokamera, einem Festnetztelefon oder Handy (nicht dargestellt) , einem Quellenkodierer 703, Quelleninformation 702 zugeführt. Der Quellenkodierer 703 erzeugt hieraus einen Datenstrom 704, welcher eine Vielzahl von Nutz-Datenbites bzw. Nutz- Datenbytes aufweist.
Unter einer Quellenkodierung ist allgemein eine Kodierung zu verstehen, in der die zu übertragenden Daten komprimiert werden, d.h.. überflüssige Redundanz in den zu übertragenden Daten eliminiert wird. Der erzeugte Datenstrom 704 wird einem Kodierer 705, auch als Kanalkodierer bezeichnet, zugeführt, von diesem kodiert und der kodierte Datenstrom 706 wird einem Modulator 707 zuge- führt, in welchem der kodierte Datenstrom 706 einem Trägersignal vorgebbarer Frequenz aufmoduliert wird und als moduliertes Signal 708 über einen physikalischen Kanal 709, beispielsweise über eine Funkverbindung oder über eine Telefonleitung, einem Empfänger, der einen Demodulator 710 aufweist, zugeführt.
Im Rahmen dieser Erfindung ist unter Kodierung oder Kanalkodierung eine Methode bzw. ein Verfahren zu verstehen, mit dem ein Datenstrrom durch hinzufügen von Redundanzdaten, in der Anmeldung auch als Redundanzelemente bezeichnet, kodiert wird, so dass von der Quelle 701 zu einer Senke 718 der zu übertragende Datenstrom mit einer möglichst geringen Anzahl von Fehlern übertragen werden kann. Somit wird im Rahmen der Kodierung des Kodierers den eigentlichen Nutzdaten sendesei- tig kontrolliert Redundanz hinzugefügt, so dass bei der Übertragung über: den physikalischen Kanal 709 entstandene Fehler empfangsseitig erkannt und korrigiert werden können. Die Funktionsweise des Kodierers wird nachfolgend noch detaillierter beschrieben werden.
In dem physikalischen Kanal 709 unterliegt das modulieret Signal 708 Störungen 711, wodurch ein gestörtes moduliertes Signal 712 erzeugt wird, welches dem Demodulator 710 zugeführt wird. Der Demodulator 710 erzeugt hieraus einen demodu- lierten Datenstrom 713, welcher einem Dekodierer 714, auch Kanaldekodierer genannt, zugeführt wird. Der Dekodierer 714 erzeugt aus dem demodulierten Datenstrom 713 einen dekodierten Datenstrom 715, welcher einem Quellendekodierer 716 zugeführt wird. Der Quellendekodierer 716 erzeugt aus dem deko- dierten Datenstrom einen Ergebnisdatenstrom 717, welcher einer Senke zugeführt wird. Anhand der Fig. 6 ist schematisch ein Schichten- Referenzmodell 600, im dargestellten Fall ein TCP/IP- Referenzmodell, dargestellt. In Fig. 6 ist die dritte Schicht 601, d.h. die Vermittlungsschicht des Referenzmodells dar- stellt. In dieser dritten Schicht findet das Internet Protokoll (IP) Anwendung. Ferner ist die vierte Schicht 602 dargestellt, welche die Transportschicht des Referenzmodels darstellt. Innerhalb der vierten Schicht können sowohl das Transmission Control Protokoll 603 (TCP) Anwendung als auch das User Datagram Protokoll 604 (UDP) und das Real-Time
Transport Protokoll 605 (RTP) Anwendung finden. Ferner ist in der Fig. 6 noch eine fünfte Schicht 606 dargestellt, welche die AnwendungsSchicht repräsentiert, welche im OSI- Referenzmodell der siebte Schicht ist. Innerhalb der Anwen- dungssσhicht 606 können die verschiedene Anwendungen oder Applikationen ausgeführt werden wie zum Beispiel die Applikation H.323.
Anhand der Fig. 6 ist auch die erfinderische Idee skizziert. Mit dem Pfeil in Fig. 6 wird angedeutet, dass IP-Pakete (Datenpakete) mit korrekter IP-Header Checksumme aber mit fehlerhafter ÜDP Checksumme an die Schicht des "Network Adaptation Layer (NAL) " übertragen, d.h. der fünften Schicht (Anwendungsschicht) , auch wenn die ÜDP Checksumme anzeigt, dass das betreffende IP-Paket fehlerhaft ist. Innerhalb der NAL-
Schicht wird dann das erfindungsgemäße Fehlerkorrekturverfahren durchgeführt, welches nachfolgend genauer beschreiben wird.
In Fig. 1 eine schematischen Matrix 100 erläutert, in welche ein Kodierer Datenpakete schreiben kann.
Die dargestellte Matrix 100 besteht aus elf Zeilen 101, 102, 103, 104, 105, 106, 107, 108, 109, 110 und 111 und 20 Spalten 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130 und 131. Die Zahl der Zeilen und Spalten ist jedoch nicht auf diese Anzahlen be- schränkt. Ein Kodierer oder Interleaver schreibt die zu übertragenden Datenbytes in diese Matrix ein. Hierbei schreibt er die Datenbytes zeilenweise in die Matrix. Am Ende jeder Zeile besteht für den Kodierer die Möglichkeit Redundanzelemente, d.h. Redundanzbytes, einzufügen. In den ersten drei Zeilen 101, 102 und 103 werden in der Matrix der Fig. 1 jeweils 12 Datenbytes und acht Redundanzbytes eingetragen. In der vierten und fünften Zeile 104, 105 werden 14 Datenbytes und sechs Redundanzbytes eingetragen. In der sechsten Zeile 106 werden 15 Datenbytes und fünf Redundanzbytes eingetragen. In der siebten Zeile 107 werden 16 Datenbytes und vier Redundanzbytes eingetragen. In der achten Zeile 108 werden 17 Datenbytes und drrei Redundanzbytes eingetragen. In der neunten Zeile 109 werden 18 Datenbytes und zwei Redundanzbytes einge- tragen. In der zehnten Zeile 110 werden 19 Datenbytes und ein Redundanzbytes eingetragen. In der elften Zeile 111 werden 20 Datenbytes und kein Redundanzbytes eingetragen. Die unterschiedliche Anzahl der Redundanzbytes je Zeile bewirkt, dass die einzelnen Zeilen eine unterschiedliche Redundanz aufwei- sen und somit mit einem unterschiedlichen Fehlerschutz versehen sind. Somit lassen sich wichtige Datenbytes bei einer e- ventuellen fehlerhaften Übertragung besser, genauer und leichter rekonstruieren, als weniger wichtige Datenbytes, welche im Beispiel in eine der letzten Zeilen eingetragen werden, welche eine niedrigere Anzahl von Redundanzbytes aufweisen. Es ist somit ein ungleichmäßiger Fehlerschutz realisiert.
Zum Übertragen der Datenbytes werden diese nach dem zeilen- weisen Schreiben zu Datenpaketen zusammengestellt. Zum Zusammenstellen der Datenpakete werden die Datenbytes spaltenweise ausgelesen. Zusätzlich wird zum Übertragen noch an jedes Paket Prüfinformation angefügt, welche dazu dient auf Empfängerseite ein fehlerhaftes Datenpaket zu erkennen.
In dem in Fig. 1 dargestellten Beispiel sind das sechste Datenpaket, welches durch die sechste Spalte 117 gebildet wird, das neunte Datenpaket, welches durch die neunte Spalte 120 gebildet wird, das zehnte Datenpaket, welches durch die zehnte Spalte 121 gebildet wird, das elfte Datenpaket, welches durch die elfte Spalte 122 gebildet wird und das 14te Daten- paket, welches durch die 14te Spalte 125 gebildet wird, fehlerhaft übertragen worden und weisen somit jeweils zumindest ein fehlerhaftes Byte auf. Die fehlerhaften Datenpakete, d.h. die Spalten, sind in der Fig. 1 gekennzeichnet. Zusätzlich sind in der Fig. 1 auch noch die einzelnen fehlerhaften Bytes innerhalb der fehlerhaften Datenpakete mit einem Kreuz markiert.
Anhand der Fig. 1 lässt sich auf einfache Weise erkennen, dass durch die unterschiedliche Reihenfolge des Schreibens in die Matrix (zeilenweise) und des Lesens aus der Matrix (spaltenweise) aus einem Paketfehler, d.h. einem Datenpaket, welches fehlerhaft übertragen wurde, ein Bytefehler erzeugt wird. Die PrüfInformation eines Datenpakets kennzeichnet in der Fig. 1 eine gesamte Spalte, d.h. ein gesamtes Datenpaket, als fehlerhaft. Da die Datenbytes aber zeilenweise in die
Matrix eingeschrieben wurden und auch die Redundanzbytes zeilenweise hinzugefügt wurden, stellt ein fehlerhaftes Datenpaket nur ein einzelnes Datenbyte innerhalb jeder Zeile dar.
Allgemein ergibt sich für eine Korrektur von Übertragungsfehlern folgendes:
Für d ≤ t können alle Fehler einer Zeile mittels einer Auslöschungskorrektur (Erasure Dekodierung) korrigiert werden.
Für d > t können mittels des FEC-Dekodierers (t - l)/2 Bytes korrigiert werden.
Oder allgemeiner: Für d > t können mittels des FEC-Dekodierers (8t - 1) /2 Bits korrigiert werden. Hierbei ist: d = die Anzahl der fehlerhaften Pakete und t = die Anzahl der Redundanzbytes.
Nachfolgend wird ein Algorithmus für eine Korrektur von Feh- lern, wie er in einem FEC-Dekodierer implementiert sein kann, erläutert .
Der Algorithmus wird auf die Datenelemente eines Interleaver Blocks, d.h. eine Matrix wie sie in Fig. 1 dargestellt ist, mehrfach angewendet. Die Anwendung erfolgt so lange bis keine weitere Korrektur von Datenfehlern mehr möglich ist, d.h. im Normalfall bis alle in den Daten vorhandene Redundanz zur Fehlerkorrektur verwendet ist.
a) Der Algorithmus weist eine Zeilenschleife auf, d.h. eine Befehlsfolge, welche für alle Zeilen des Interleaver Blocks abgearbeitet wird.
b) Jede Zeile wird zuerst auf potentiell defekte Bytes unter- sucht, d.h. es wird eine Fehlererkennung durchgeführt. Ferner wird entschieden, ob die Gesamtzahl der potentiell defekten Bytes die Erasure-Korrekturfahigkeit übersteigt.
c) Wenn die Gesamtanzahl der potentiell defekten Bytes die Erasure-Korrekturfahigkeit nicht übersteigt wird eine Erasure Dekodierung, d.h. eine Auslöschungskorrektur durchgeführt. Nachdem eine Zeile korrigiert wurde, werden nochmals die CRC- Checks durchgeführt, d.h. die Zeile nach potentiell defekten Bytes untersucht und die Spalten des Interleaver Blocks, wel- ehe einen korrekten CRC-Check liefern als korrekt markiert. Nachfolgend wird zurück in die Zeilenschleife gesprungen und die nächste Zeile des Interleaver Blocks abgearbeitet, d.h. es wird zu b) zurückgesprungen.
d) Wenn die Gesamtanzahl der potentiell defekten Bytes die Erasure-Korrekturfähigkeit übersteigt wird die Fehler- Dekodierung, d.h. die erfindungsgemäße Dekodierung oder er- findungsgemä-ße Fehlerkorrektur, durchgeführt. Nach dieser Fehler-Dekodierung wird mittels der Checksummen überprüft ob die Fehlerkorrektur für die soeben korrigierte Zeile korrekt war. Hierbei wird überprüft ob die CRC korrekt sind, d.h. ob potentiell defekte Bytes in der Zeile vorhanden sind.
e) Sind keine potentiell defekten Bytes in der Zeile vorhanden, so ist die Korrektur der Zeile abgeschlossen. Es werden nochmals die CRC-Checks durchgeführt, d.h. die Zeile nach po- tentiell defekten Bytes untersucht und die Spalten des Interleaver Blocks, welche einen korrekten CRC-Check liefern als korrekt markiert. Nachfolgend wird zurück in die Zeilenschleife gesprungen und die nächste Zeile des Interleaver Blocks abgearbeitet, d.h. es wird zu b) zurückgesprungen.
f) Sind weiterhin potentiell defekten Bytes in der Zeile vorhanden, so wird eine Erasure Dekodierung mit reduzierter Bytezahl durchgeführt. Anschaulich bedeutet das, dass die Erasures, d.h. der Auslöschungen von potentiell fehlerbehaf- teten Bytes, willkürlich auf die maximal korrigierbare Anzahl reduziert wird. D.h. es werden willkürlich ausgewählte potentiell fehlerbehaftete Bytes ausgelöscht bis nur noch so viele Bytes übrigbleiben, wie maximal mittels der Erasure Dekodierung korrigiert werden können, wobei die entsprechende Anzahl von der Redundanz abhängt, welche in der Zeile vorhanden ist. Nachfolgend wird dekodiert und alle CRC Checksummen nochmals geprüft .
g) Ergibt sich nun, dass die CRC Checksummen korrekt sind, d.h. keine potentiell defekten Bytes in der Zeile vorhanden sind, so ist die Korrektur der Zeile abgeschlossen. Es werden nochmals die CRC-Checks durchgeführt und die Spalten des Interleaver Blocks, welche einen korrekten CRC-Check liefern als korrekt markiert. Nachfolgend wird zurück in die Zeilen- schleife gesprungen und die nächste Zeile des Interleaver Blocks abgearbeitet, d.h. es wird zu b) zurückgesprungen. h) Ergibt sich hingegen, dass die CRC Checksummen nicht korrekt sind, d.h. weiterhin potentiell defekte Bytes in der Zeile vorhanden sind, so wird praktisch zu Schritt ) zurückgesprungen, indem eine andere Teilmenge aus potentiell defekten Bytes ausgewählt und erneut eine Erasure Dekodierung versucht wird.
Nachfolgend wird der oben beschriebene Algorithmus in einem Pseudocode angegeben:
Schleife über Interleaver Block, z.B. einer Matrix wie in Fig. 1 dargestellt:
Abarbeiten des Interleaver Blocks mehrfach so lange bis keine weitere Korrektur mehr möglich ist
( Zeilenschleife : für j ede Zeile gilt : ( Übersteigt die Gesamtzahl der potentiell defekten Bytes die Erasure-Korrekturfähigkeit?
NEIN: ( Erasure Decodierung Nach Korrektur einer Zeile werden die CRC- Checks noch einmal durchgeführt und Spalten mit korrekten CRC-Check als korrekt markiert. ) JA: ( Fehler-Dekodierung Test der Korrektur mittels der Checksummen. CRC korrekt? JA: Korrektur der Zeile abgeschlossen. Die CRC-Checks werden noch einmal durchge- führt und Spalten mit korrektem CRC-Check als korrekt markiert. NEIN: Erasure Dekodierung mit reduzierter Byte- zahl Die Anzahl der Erasures wird willkürlich auf die maximal korrigierbare reduziert . Dann wird dekodiert. Dann werden alle CRC Summen noch einmal geprüft. CRC korrekt? JA: Fertig. Spalten mit korrektem CRC-Check wer- den als korrekt markiert. NEIN: Man wählt eine andere Teilmenge aus den potentiell defekten Bytes und versucht eine erneute Erasure Deko- dierung.
)
Anhand des Pseudocodes ist auf einfache Weise erkennbar, wie der Algorithmus der Korrektur von Übertragungsfehlern gemäß einem Ausfürirungsbeispiel der Erfindung implementiert wird. Der gezeigte Algorithmus zur Rekonstruktion fehlerhaft übertragener Datenpakete baut auf den korrekten Bytes der jewei- ligen fehlerhaften Datenpakete auf. Anzumerken ist ferner, dass es auch, möglich ist Spalten und Zeilen in dem Algorithmus zu vertauschen . Dies ist dann nötig, wenn der Interleaver die Datenbytes spaltenweise in die Matrix einschreibt und zum Übertragen zeilenweise ausliest.
Im Folgenden wird anhand der Figuren 2 bis 5, welche mittels Simulationen erhalten wurden, beschrieben, wie sich ein er- findungsgemäßes Fehlerkorrekturverfahren auf die Übertragungsqualität, d.h. auf die Anzahl der nach der Fehlerkorrektur, vorhandenen Fehler auswirkt. Den Simulationen wurde eine Paketlänge von 20 Bytes zugrundegelegt.
In Fig. 2 sind schematisch die Ergebnisse einer Simulation dargestellt, welche die Häufigkeitsverteilung von Bytefehlern je Paketlänge angibt. Aufgetragen ist die Häufigkeit mit der eine gewissen Anzahl von Bytefehlern/Paketlänge auftritt. Man erkennt, dass 0,05 Bytefehler/Paketlänge, d.h. eine Fehlerrate von einem falschen Byte je 20 Byte Paketlänge, etwa in 5V» aller Fälle auftritt. Die Häufigkeit des Auftretens eines bestimmten Verhältnisses von Bytefehler/Paketlänge steigt bis zum Verhältnis von 0,25 Bytefehler/Paketlänge an und erreicht dort eine Häufigkeit von etwa 2,6%. Danach fällt die Häufigkeit des Auftretens eines bestimmten Verhältnisses von Bytefehler/Paketlänge bis zum Verhältnis von 0,45 Bytefehler/- Paketlänge ab und erreicht dort eine Häufigkeit von etwa 3Vo.
Die in Fig. 2 dargestellte Simulation wurden für den Fall einer Mobilfunkübertragung, z.B. Handygespräche, durchgeführt, und zeigt, dass durchschnittlich etwa 11% der Datenpakete fehlerhafte Datenbytes aufweisen, d.h. das etwa nur jedes neunte Datenpaket fehlerhaft übertragen wird. Die 11% ergeben sich als Summe über alle in der Fig. 2 dargestellten Häufigkeiten. Das Maximum der Häufigkeit liegt bei einem Verhältnis Bytefehler/Paketlänge von 0,25, d.h. einem fehlerhaften Byte je vier Byte Paketlänge, was bedeutet, dass jedes vierte Byte fehlerhaft ist. Jedoch ergibt sich auch hier nur eine Häufig- keit von etwa 2,6%. Somit ist leicht zu erkennen, dass die meisten Datenpakete fehlerfrei übertragen werden und auch dass in den fehlerbehafteten Datenpakete die überwiegende Anzahl von Bytes korrekt übertragen werden.
Fig. 3 zeigt ein Histogramm, in welchem die Häufigkeitsverteilung von fehlerhaften Bytes je Paket eingetragen ist. Die absolute Anzahl an fehlerhaften Bytes auf der X-Achse ist hierbei willkürlich, da die Anzahl von fehlerhaften Bytes von der verwendeten Paketlänge abhängt. Eingetragen ist die Häufigkeitsverteilung für fehlerhafte Bytes, welche trotz durchgeführter Korrektur von Fehlern nicht korrigiert werden konn- ten. Zum Erhalten der Datenpunkte der oberen Kurve 340 ist eine Korrektur der Übertragungsfehler gemäß dem Stand der Technik durchgeführt worden, bei dem die korrekten Bytes der fehlerhaften Datenpakete nicht für die Korrektur der Fehler verwendet werden. Zum Erhalten der Datenpunkte der unteren Kurve 241 ist eine Fehlerkorrektur gemäß dem erfindungsgemäßen Verfahren durchgeführt worden, bei dem die korrekten Bytes der fehlerhaften Datenpakete für die Fehlerkorrektur verwendet werden. In dem Histogramm ist deutlich zu erkennen, dass das erfindungsgemäße Fehlerkorrekturverfahren eine deut- lieh verringerte Anzahl von fehlerhaften Bytes je Datenpaket ergibt als das Verfahren gemäß dem Stand der Technik. Die Kurve 341 ist deutlich nach links verschoben, was bedeutet, dass eine größere Anzahl von anfänglichen Fehlern korrigiert werden kann, wenn das erfindungsgemäße Fehlerkorrekturverfah- ren verwendet wird.
Fig. 4 zeigt vier Histogramme a-d, in welchen, wie in Fig. 3, Häu igkeitsverteilungen von fehlerhaften Bytes je Paket eingetragen ist. Die absolute Anzahl an fehlerhaften Bytes auf der X-Achse ist wiederum willkürlich, da die Anzahl von fehlerhaften Bytes von der verwendeten Paketlänge abhängt. Eingetragen ist die Häufigkeitsverteilung für fehlerhafte Bytes, welche trotz durchgeführter Korrektur von Fehlern nicht korrigiert werden konnten. In den Fig. 4a und 4b sind Übertra- gungsbedingungen gewählt, welche einer Übertragung innerhalb eines Gebäudes entsprechen, d.h. wenn zum Beispiel ein Handy innerhalb eines Gebäudes betrieben wird. Zum Bestimmen der Punkte der oberen Kurven 440 und 442 ist eine Korrektur der Übertragungsfehler gemäß dem Stand der Technik durchgeführt worden, bei welcher die korrekten Bytes der fehlerhaften Datenpakete nicht für die Korrektur der Fehler verwendet werden. Zum Bestimmen der Punkte der unteren Kurven 441 und 443 ist eine Fehlerkorrektur gemäß dem erfindungsgemäßen Verfahren durchgeführt worden, bei welcher die korrekten Bytes der fehlerhaften Datenpakete für die Fehlerkorrektur verwendet werden. In den Histogrammen ist deutlich zu erkennen, dass das erfindungsgemäße Korrekturverfahren eine deutlich verringerte Anzahl von fehlerhaften Bytes je Datenpaket ergibt als das Verfahren gemäß dem Stand der Technik. Die Kurven 441 und 443 sind deutlich nach links verschoben, was bedeutet, dass eine größere Anzahl von anfänglichen Fehlern korrigiert wer- den kann, wenn das erfindungsgemäße Fehlerkorrekturverfahren verwendet wird.
Gleiches gilt für die in den Fig. 4c und 4d gezeigten Beispiele, welche einer ÜbertragungsSituation innerhalb eines Fahrzeuges entsprechen, d.h. wenn zum Beispiel ein Handy innerhalb eines Fahrzeuges betrieben wird. Auch hier entsprechen die oberen Kurven 444 und 446 einer Korrektur der Über- tragungsfehler gemäß dem Stand der Technik, bei welcher die korrekten Bytes der fehlerhaften Datenpakete nicht für die Korrektur der Fehler verwendet werden. Wohingegen zum Bestimmen der Punkte der unteren Kurven 445 und 447 eine Fehlerkorrektur gemäß dem erfindungsgemäßen Verfahren durchgeführt wurde, bei welcher die korrekten Bytes der fehlerhaften Datenpakete für die Fehlerkorrektur verwendet werden. In den Histogrammen der Fig. 4c und 4d ist deutlich zu erkennen, dass das er indungsgemäße Korrekturverfahren eine deutlich verringerte Anzahl von fehlerhaften Bytes je Datenpaket ergibt als das Verfahren gemäß dem Stand der Technik. Die Kurven 445 und 447 sind deutlich nach links verschoben, was be- deutet, dass eine größere Anzahl von anfänglichen Fehlern korrigiert werden kann, wenn das erfindungsgemäße Fehlerkorrekturverf hren verwendet wird.
In Fig. 5 ist dargestellt wie viele zusätzliche Zeilen von Datenbytes korrigiert werden können, wenn ein erfindungsgemäßes Fehlerkorrekturverfahren verwendet wird. Genauer gesagt ist dargestellt, wie viele aneinander anschließende korrekte Zeilen innerhalb eines Interleaver-Blocks , d . h . eines Blockes , wie er schematisch als Matrix in Fig . 1 dargestellt ist, erwartet werden können, wenn ein erfindungsgemäßes Fehlerkorrekturverfahren verwendet wird . Die Wahrscheinlichkeit für eine bestimmte Anzahl von aneinander anschließenden fehlerfreien Zeilen lässt sich auf einfache Weise wie folgt berechnen :
P(n) = (l-py
wobei: n die Anzahl der aneinander anschließenden fehlerfreien Zeilen ist; p die Fehlerwahrscheinlichkeit einer einzelnen Zeile ist; und P (n) die Wahrscheinlichkeit für n aneinander anschließende fehlerfreie Zeilen ist.
Die in Fig. 5 dargestellten Wahrscheinlichkeiten basieren auf den in Fig. 3 dargestellten Ergebnissen. Die in Fig. 5 untere Kurve 550 zeigt die Wahrscheinlichkeit des Auftretens von aneinander anschließenden fehlerfreien Zeilen. Wenn das erfindungsgemäße Fehlerkorrekturverfahren angewendet wird, ohne Redundanzbytes vorzusehen, werden etwa drei zusätzliche aneinander anschließende fehlerfreie Zeilen erwartet. Die Zahl von drei ergibt sich aus dem Wahrscheinlichkeitswert von 50%, d.h. es ergibt sich zu mehr als 50% eine Verbesserung um drei zusätzliche aufeinander folgende fehlerfreie Zeilen. Somit kann man erkennen, dass mittels des erfindungsgemäßen Fehlerkorrekturverfahren, welches die korrekten Bytes von fehlerbe- hafteten Datenpaketen verwendet, indem es auch die fehlerbehafteten Datenpakete für eine Fehlerkorrektur heranzieht, die Fehlerkorrektur verbessert werden kann. Dadurch wird ein größerer Fehlerschutz und eine größere Übertragungssicherheit erreicht .
Die obere Kurve 551 in Fig. 3 zeigt wie sich die Wahrscheinlichkeiten für aufeinander folgende fehlerfreie Zeilen ver- halten, wenn durch Verwendung von Redundanzbytes ein Fehler je Zeile korrigiert werden kann. In diesem Fall werden etwa 20 aufeinander folgende fehlerfreie Zeilen erwartet. Die Zahl von 20 ergibt sich wiederum aus dem Wahrscheinlichkeitswert von 50%, d.h. es ergibt sich zu mehr als 50% 20 aufeinander folgende fehlerfreie Zeilen. Anhand dieser Kurven kann man leicht erkennen, dass das erfindungsgemäße Fehlerkorrekturverfahren zu einer starken Verbesserung der Korrekturfahigkeit und damit einer Verbesserung des Fehlerschutzes und ei- ner Verbesserung der Übertragungssicherheit führt.
Zusammenfassen basiert das erfindungsgemäße Verfahren zum Dekodieren darauf, dass auch bei einem fehlerhaften Datenpaket nur eine geringe Anzahl von Datenelementen, welche beispiels- weise Datenbytes oder Datenbits sein können, des fehlerbehafteten Datenpakets fehlerhaft sind, wohingegen die überwiegende Anzahl "von Datenelementen auch in fehlerhaft übertragenen Datenpaketen korrekt übertragen werden. Mittels eines einfachen Algorithmus ist es möglich die korrekten Datenelemente eines fehlerhaften Datenpakets auszuwerten. Durch das Auswerten und Verwenden der korrekten Datenelemente eines fehlerhaft übertragenen Datenpakets ist es möglich den Fehlerschutz zu erhöhen, ohne dabei die Anzahl mitübertragener Korrekturelemente, d.h. Redundanzbytes oder Redundanzbits, zu erhöhen. Das erfindungsgemäße Verfahren kann in beiden Fehlerkorrekturszenarien, d.h. Rückan orderung defekter Pakete und Vorwärtsfehlerschutz, verwendet werden.
In diesem Dokument ist folgendes Dokument zitiert: [1] Performance of Soft Decision Digital Matched Filter in Direct-Sequence Spread-Spectrum Communication Systems, N. Kataoka, T. Kojima, M. Miyake and T. Fujino, IEICE Transactions Vol. E 74, Nr. 5, (1991) 1115-1122

Claims

Patentansprüche
1. Verfahren zum Dekodieren von über paketorientierte Datenubertragungsnetze übertragenen kodierten Datenpaketen mit einer Mehrzahl von Datenelementen, bei dem die kodierten Datenpakete einer Fehlererkennung unterzogen werden, bei dem für die als fehlerhaft erkannten Datenpakete eine Fehlerkorrektur durchgeführt wird, und bei dem zur Fehlerkorrektur die als korrekt übertragen erkannten Datenelemente der als fehlerhaft erkannten Datenpakete verwendet werden .
2. Verfahren gemäß Anspruch 1, bei dem die Fehlererkennung in einer Einheit einer Kommunikations-Transportschicht durchgeführt wird.
3. Verfahren gemäß Anspruch 1 oder 2, bei dem die Fehlerkorrektur in einer Einheit, einer Sitzungsschicht oder einer Darstellungsschicht oder einer Anwendungsschicht durchgeführt wird.
4. Verfahren gemäß einem der Ansprüche 1 bis 3, bei dem die Datenelemente Datenbytes sind.
5. Verfahren gemäß einem der Ansprüche 1 bis 3, bei dem die Datenelemente Datenbits sind.
6. Verfahren gemäß einem der Ansprüche 1 bis 5, bei dem der Dekodierer die Datenelemente jedes Datenpaketes spaltenweise in eine Matrix schreibt und zeilenweise zum Dekodieren aus der Matrix ausliest, oder der Dekodierer die Datenelemente jedes Datenpaketes zeilenweise in eine Matrix schreibt und spaltenweise zum Dekodieren ausliest.
7. Verfahren gemäß einem der Ansprüche 1 bis 6, bei dem die Fehlerkorrektur einzelner Datenpakete durchgeführt wird, falls eine Redundanz durch Redundanzelemente zum Durchführen einer Auslöschungskorrektur der einzelnen Datenpakete nicht ausreicht .
8. Verfahren gemäß Anspruch 7, bei dem nach der Fehlerkorrektur einzelner Datenpakete eine Auslöschungskorrektur vorgenommen wird.
9. Verfahren gemäß Anspruch 8, bei dem nach erfolgter Aus- löschungskorrektur rekursiv zusätzliche Fehlerkorrekturen und
Auslöschungskorrekturen vorgenommen werden.
10. Verfahren gemäß einem der Ansprüche 1 bis 9, bei dem zusätzlich ein Softdekodierverfahren vorgesehen ist.
11. Verfahren gemäß einem der Ansprüche 1 bis 10, bei dem die Fehlerkorrektur des Dekodierers in dem Network Adaptation Layer stattfindet.
12. Verfahren zum Kodieren und Dekodieren von über paketorientierte Datenubertragungsnetze zu übertragende Datenpaketen, bei dem eine Mehrzahl von Datenelementen vor dem Übertragen mittels eines Kodierers zu Datenpaketen kodiert werden, bei dem die kodierten Datenpakete über ein paketorientiertes Datennetz übertragen werden, bei dem die kodierten Datenpaketen mit einer Mehrzahl von Datenelementen einer Fehlererkennung unterzogen werden, bei dem für die als fehlerhaft erkannten Datenpakete ei- ne Fehlerkorrektur durchgeführt wird, und bei dem zur Fehlerkorrektur die als korrekt übertragen erkannten Datenelemente der als fehlerhaft erkannten Datenpakete verwendet werden.
13. Verfahren gemäß Anspruch 12, bei dem die Fehlererkennung einer Einheit einer Kommunikations-Transportschicht durchgeführt wird.
14. Verfahren gemäß Anspruch 12 oder 13, bei dem die Fehlerkorrektur in einer Einheit, einer Sitzungsschicht oder einer Darstellungsschicht oder einer Anwendungsschicht durchge- führt wird.
15. Verfahren gemäß einem der Ansprüche 12 bis 14, bei dem die Datenelemente Datenbytes sind.
16. Verfahren gemäß einem der Ansprüche 12 bis 14, bei dem die Datenelemente Datenbits sind.
17. Verfahren gemäß einem der Ansprüche 12 bis 16, bei dem der Kodierer die zu übertragenden Datenelemente zeilenweise in eine Matrix schreibt und zum Übertragen als Datenpakete spaltenweise aus der Matrix ausliest und der Dekodierer die Datenelemente jedes Datenpaketes spaltenweise in eine Matrix schreibt und zeilenweise zum Dekodieren aus der Matrix ausliest, oder der Kodierer die zu übertragenden Datenelemente spaltenweise in eine Matrix schreibt und zum Übertragen als
Datenpakete zeilenweise aus der Matrix ausliest und der Dekodierer die Datenelemente jedes Datenpaketes zeilenweise in eine Matrix schreibt und spaltenweise zum Dekodieren ausliest.
18. Verfahren gemäß einem der Ansprüche 12 bis 17, bei dem die durch den Kodierer je Zeile bzw. je Spalte bereitgestellte Anzahl von Redundanzelementen unterschiedlich ist.
19. Verfahren gemäß einem der Ansprüche 12 bis 18, bei dem die Fehlerkorrektur einzelner Datenpakete durchgeführt wird, falls eine Redundanz durch Redundanzelemente zum Durchführen einer Auslöschungskorrektur der einzelnen Datenpakete nicht ausreicht .
20. Verfahren gemäß Anspruch 19, bei dem nach der Fehlerkorrektur einzelner Datenpakete eine Auslöschungskorrektur vorgenommen wird.
21. Verfahren gemäß Anspruch 20, bei dem nach erfolgter Auslöschungskorrektur rekursiv zusätzliche Fehlerkorrekturen und Auslöschungskorrekturen vorgenommen werden.
22. Verfahren gemäß einem der Ansprüche 12 bis 21, bei dem zusätzlich ein Softdekodierverfahren vorgesehen ist.
23. Verfahren gemäß einem der Ansprüche 12 bis 22, bei dem die Fehlerkorrektur des Dekodierers in dem Network Adaptation Layer stattfindet.
24. Vorrichtung zum Dekodieren von mittels paketorientierten Datenübertragungsnetzen übertragenen kodierten Datenpaketen mit einer Mehrzahl von Datenelementen, mit einem Dekodierer, der derart eingerichtet ist, dass fol- gende Verfahrensschritte durchführbar sind: kodierte Datenpakete werden einer Fehlererkennung unterzogen, für die als fehlerhaft erkannten Datenpakete wird eine Fehlerkorrektur durchgeführt, und zur Fehlerkorrektur werden die als korrekt übertragen erkannten Datenelemente der als fehlerhaft erkannten Datenpakete verwendet.
25. Vorrichtung zum Kodieren, Übertragen und Dekodieren von über paketorientierte Datenubertragungsnetze zu übertragenden
Datenpaketen mit einem Kodierer und einen Dekodierer, bei dem der Kodierer derart eingerichtet, dass er eine Mehrzahl von Datenelementen vor dem Übertragen zu Datenpaketen kodiert und bei dem der Dekodierer derart eingerichtet ist, dass er die kodierten Datenpakete mit einer Mehrzahl von Datenelementen einer Fehlererkennung unterzieht, für die als fehlerhaft erkannten Datenpakete eine Fehle korrektur durchführt, und zur Fehlerkorrektur die als korrekt übertragen erkannten Datenelemente der als fehlerhaft erkannten Datenpakete verwendet .
EP04787236A 2003-09-30 2004-09-28 Verfahren und vorrichtung zum dekodieren von mittels paketorientierten datenübertragungsnetzen übertragenen kodierten datenpaketen und verfahren und vorrichtung zum kodieren und dekodieren von über paketorientierte datenübertragungsnetze zu übertragende datenpaketen Ceased EP1668812A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE2003145438 DE10345438B4 (de) 2003-09-30 2003-09-30 Verfahren und Vorrichtung zum Dekodieren von mittels paketorientierten Datenübertragungsnetzen übertragenen kodierten Datenpaketen und Verfahren und Vorrichtung zum Kodieren und Dekodieren von über paketorientierte Datenübertragungsnetze zu übertragende Datenpaketen
PCT/EP2004/052340 WO2005034413A1 (de) 2003-09-30 2004-09-28 Verfahren und vorrichtung zum dekodieren von mittels paketorientierten datenübertragungsnetzen übertragenen kodierten datenpaketen und verfahren und vorrichtung zum kodieren und dekodieren von über paketorientierte datenübertragungsnetze zu übertragende datenpaketen

Publications (1)

Publication Number Publication Date
EP1668812A1 true EP1668812A1 (de) 2006-06-14

Family

ID=34399084

Family Applications (1)

Application Number Title Priority Date Filing Date
EP04787236A Ceased EP1668812A1 (de) 2003-09-30 2004-09-28 Verfahren und vorrichtung zum dekodieren von mittels paketorientierten datenübertragungsnetzen übertragenen kodierten datenpaketen und verfahren und vorrichtung zum kodieren und dekodieren von über paketorientierte datenübertragungsnetze zu übertragende datenpaketen

Country Status (3)

Country Link
EP (1) EP1668812A1 (de)
DE (1) DE10345438B4 (de)
WO (1) WO2005034413A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7447980B2 (en) * 2005-10-17 2008-11-04 Newport Media, Inc. Error detection and correction in data transmission packets
US8917673B2 (en) 2006-07-14 2014-12-23 Qualcomm Incorporation Configurable downlink and uplink channels for improving transmission of data by switching duplex nominal frequency spacing according to conditions
FR2953345B1 (fr) 2009-12-01 2015-12-11 Canon Kk Procede de determination d'une copie a decoder et d'un vecteur d'effacements associe, produit programme d'ordinateur, moyen de stockage et dispositif recepteur correspondants.

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4025621A1 (de) * 1990-08-13 1992-03-05 Siemens Ag Verfahren und anordnung zur gesicherten uebertragung von digitalen signalwerten eines videosignals ueber atm-netze
DE4027496A1 (de) * 1990-08-30 1992-03-12 Deutsche Forsch Luft Raumfahrt Spreizverfahren zur uebertragung codierter, digitaler nachrichten
JP3190853B2 (ja) * 1997-05-23 2001-07-23 エヌイーシーマイクロシステム株式会社 誤り訂正処理方法及びその装置
ATE218778T1 (de) * 1997-12-12 2002-06-15 3Com Corp Ein vorwärtsfehlerkorrektionssystem für packetbasierte echtzeitmedien
US6367047B1 (en) * 1998-10-20 2002-04-02 Ecrix Multi-level error detection and correction technique for data storage recording device
FI110831B (fi) * 1999-12-31 2003-03-31 Nokia Corp Menetelmä tiedonsiirron tehostamiseksi ja tiedonsiirtoprotokolla
DE10034977A1 (de) * 2000-07-13 2002-01-24 Ihp Gmbh Verfahren und Vorrichtungssystem zur Datenübertragung
FI112995B (fi) * 2001-01-16 2004-02-13 Nokia Corp Virheellisen datan käsittely pakettivälitteistä tiedonsiirtoa tarjoavassa tietoliikennejärjestelmässä
JP2003069535A (ja) * 2001-06-15 2003-03-07 Mitsubishi Electric Corp 誤り訂正多重化装置、誤り訂正多重分離装置、これらを用いた光伝送システムおよび誤り訂正多重化伝送方法
JP6783479B1 (ja) 2019-08-29 2020-11-11 株式会社鈴康 動画生成プログラム、動画生成装置及び動画生成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2005034413A1 *

Also Published As

Publication number Publication date
WO2005034413A1 (de) 2005-04-14
DE10345438B4 (de) 2005-09-15
DE10345438A1 (de) 2005-05-12

Similar Documents

Publication Publication Date Title
DE69717472T2 (de) Verfahren zur fehlererkennung für system mit automatischer wiederholungsaufforderung
DE69609342T2 (de) System und verfahren zur kodierung mit ungleichem fehlerschutz, wobei weniger signifikante signale punktiert werden
DE102009017540B4 (de) Verfahren zum Wiederherstellen verlorener und/oder beschädigter Daten
DE60029601T2 (de) Gruppenkettenreaktionskodierer mit variabler anzahl zugeordneter eingabedaten für jeden ausgaben gruppenkode
EP1232596A2 (de) Verfahren zur anpassung der datenrate in einer kommunikationsvorrichtung und entsprechende kommunikationsvorrichtung
EP2315382B1 (de) Verfahren zur Konfliktauflösung im Time-Hopping- oder Frequency-Hopping-Verfahren
DE60307165T2 (de) Verfahren zur Kodierung eines Benutzeridentifikator in einem Kommunikationssystem
DE102010035210B4 (de) Verfahren zur Rückgewinnung verlorener Daten und zur Korrektur korrumpierter Daten
DE102015110602A1 (de) Verfahren und Vorrichtung zum iterativen Decodieren einer Datentransferstruktur
DE102018218729B3 (de) Interleaving mit zirkularer Zeilen-Rotation für die Übertragung bei Telegramm-Splitting
DE10345438B4 (de) Verfahren und Vorrichtung zum Dekodieren von mittels paketorientierten Datenübertragungsnetzen übertragenen kodierten Datenpaketen und Verfahren und Vorrichtung zum Kodieren und Dekodieren von über paketorientierte Datenübertragungsnetze zu übertragende Datenpaketen
DE102004045000A1 (de) Sender zum Senden von Informationsdaten und Empfänger zum Empfangen von Informationsdaten
DE102013201422B3 (de) Verfahren zum Wiederherstellen verlorengegangener und/ oder beschädigter Daten
EP1609266B1 (de) Verfahren und messgerät zum ermitteln einer fehlerrate ohne inkrementale redundanz
EP1252716A1 (de) Verfahren und anordnung zur decodierung von informationen
EP1016236B1 (de) Schnelle decodierung von partiell empfangenen faltungscodierten daten
DE102011103564B3 (de) Verfahren zur Wiederherstellung verlorener und/oder beschädigter Daten
DE102014114728B4 (de) Mehrschichtige fehlerkorrekturcodierung
DE102011111835B4 (de) Verfahren zum Wiederherstellen verlorener und/oder beschädigter Daten
DE102015205290B4 (de) Verfahren zur Übertragung von binären Daten über einen Kanal, insbesondere über einen optischen Freiraum-Datenübertragungskanal
DE102017213711B4 (de) Verfahren zum Übertragen von Daten
DE102011115100B3 (de) Verfahren zum Wiederherstellen von verloren gegangenen und/oder beschädigten Daten
WO1998052362A2 (de) Kanalcodierungsverfahren
DE102005003914B3 (de) Fehlerschutzverfahren und Fehlerkorrekturverfahren, sowie Fehlerschutzvorrichtung und Fehlerkorrekturvorrichtung
WO2000035138A1 (de) Adaptives verkettetes kanalcodierverfahren

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20060306

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PL PT RO SE SI SK TR

17Q First examination report despatched

Effective date: 20060704

DAX Request for extension of the european patent (deleted)
RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: NOKIA SIEMENS NETWORKS GMBH & CO. KG

RAP3 Party data changed (applicant data changed or rights of an application transferred)

Owner name: NOKIA SIEMENS NETWORKS S.P.A.

RAP3 Party data changed (applicant data changed or rights of an application transferred)

Owner name: NOKIA SIEMENS NETWORKS GMBH & CO. KG

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20071015