WO2007029432A1 - 誤り訂正方法及び装置 - Google Patents

誤り訂正方法及び装置 Download PDF

Info

Publication number
WO2007029432A1
WO2007029432A1 PCT/JP2006/315215 JP2006315215W WO2007029432A1 WO 2007029432 A1 WO2007029432 A1 WO 2007029432A1 JP 2006315215 W JP2006315215 W JP 2006315215W WO 2007029432 A1 WO2007029432 A1 WO 2007029432A1
Authority
WO
WIPO (PCT)
Prior art keywords
error correction
data
packet
code
error
Prior art date
Application number
PCT/JP2006/315215
Other languages
English (en)
French (fr)
Inventor
Koichi Saito
Youichi Fukada
Yoichi Maeda
Kiyomi Kumozaki
Original Assignee
Nippon Telegraph And Telephone Corporation
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 Nippon Telegraph And Telephone Corporation filed Critical Nippon Telegraph And Telephone Corporation
Priority to US11/661,575 priority Critical patent/US7698290B2/en
Priority to JP2006544763A priority patent/JP4503613B2/ja
Priority to EP06782093.6A priority patent/EP1921754B1/en
Priority to CN2006800007292A priority patent/CN101080875B/zh
Publication of WO2007029432A1 publication Critical patent/WO2007029432A1/ja

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/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • H03M13/098Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit using single parity bit
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6356Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
    • 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/0041Arrangements at the transmitter end
    • 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
    • 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/0064Concatenated codes
    • H04L1/0066Parallel concatenated 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
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes

Definitions

  • the present invention relates to an error correction technique for compensating for bit errors and packet loss in packet-type transmission systems such as ATM, IP, and LAN.
  • the FEC method (FEC: Foward Error Correction) is known as a method for compensating for bit errors and loss of digital data.
  • the FEC method is a method in which data is encoded with an error correction code on the transmission side, and an error or erasure is detected on the reception side to perform correction.
  • As the error correction code various codes such as a BCH code, a Reed-Solomon code, and a convolutional code have been proposed (for example, see Non-Patent Document 1).
  • An N + n-bit bit string obtained by adding an n-bit error correction code to an N-bit data is called a code word. Even if an error occurs in a bit in the code word, if the number of errors is less than the error correction capability, the receiving side can detect the error position, and thus the error can be completely corrected.
  • the error correction capability varies depending on the error correction code. For example, a (15, 10) -no code, that is, a Hamming code that adds a 5-bit error correction code to 10-bit data to form a 15-bit codeword. In this case, a burst error of up to 2 bits can be corrected.
  • error detection codes such as parity codes and CRC codes add error detection codes to data, but only detect that there is an error in the code word. The correction is not possible.
  • FEC methods can be broadly classified into three categories. The first is the FEC method used for the stream type transmission method, the second is the FEC method that compensates for packet loss in the packet type transmission method, and the third is the packet loss and packet loss in the packet type transmission method. This is an FEC method that corrects bit errors in packets. Figures 6-9 below The conventional FEC method will be explained using.
  • Fig. 6 is a diagram for explaining the FEC method used for the stream type transmission method.
  • (A) shows a method using a single error correction code, and
  • (b) shows two types of error correction codes. The method used is shown.
  • the transmission data is divided in units of a predetermined number of bits, and the error correction code is calculated for the divided data. Generate a codeword.
  • errors are corrected based on the error correction code.
  • FIG. 6 (b) is a diagram showing a method called a product code combining two types of error correction codes.
  • fixed-length data is arranged in a matrix.For example, first, an error correction code is calculated in the vertical direction or column direction, and an outer code that is an error correction code is assigned to each column. Append to the end of.
  • the outer code is a term indicating a code to be calculated first, out of the two types of codes used.
  • an error correction code is calculated in the horizontal direction or the row direction, and an inner code which is an error correction code is added to the end of each row.
  • the inner code is a term indicating a code to be calculated later among the two types of codes used.
  • FIG. 7 is a diagram for explaining an FEC scheme that compensates for packet loss in a packet-type transmission scheme, and is described in Patent Document 1.
  • a parity cell having data NOR in the payload portion is transmitted following the ATM cell having data A to D in the payload portion.
  • the parity bit for the kth bit of data A to data D is stored in the kth bit of the payload of the NOR cell.
  • ATM cells are assigned consecutive cell numbers in the order of transmission.
  • the receiving side can recognize the loss of the cell based on the cell number and restore the noticell power data B.
  • This method can compensate for packet loss with a simple configuration, but cannot correct bit errors. In other words, even if an error occurs in the first bit of data B, only the fact that an error has occurred in any one or more of the first bits of data A to D can be determined by the NOTICEL. It is.
  • FIG. 8 and FIG. 9 are diagrams for explaining an FEC scheme that performs packet loss and error correction in a packet in a packet-type transmission scheme.
  • Non-Patent Document 4 Patent Document 2, and Patent Document 3 This method is described in!
  • the data string is divided into data A to D of a predetermined length and arranged in rows, and then the outer code is calculated in the row direction.
  • the outer code is calculated in the row direction.
  • the inner code is calculated in the column direction, and the inner code Z is given, that is, the product code is calculated.
  • each row of data is divided into ATM cell sizes, and the cells are transmitted as ATM cells to which cell numbers indicating the cell transmission order are assigned in order from the first row of the matrix.
  • each data is divided into two.
  • the data is arranged in the same matrix as the transmitting side based on the cell number. At this time, dummy data is inserted for the lost cell whose cell number power can be detected. In Fig. 9, because the ATM cell of data B-1 has disappeared, dummy data is inserted at the location of data B-1. In addition, the data in which an error has occurred cannot be detected at this stage, and therefore the data having the error is arranged in a matrix. In Figure 9, there is an error in data D-2.
  • the cause of low efficiency is the presence of a dedicated cell for storing the outer code.
  • ⁇ or (442, 424) BCH code is transmission efficiency
  • (460, 424) BC H code and transmission efficiency is lOZl l.
  • high delay occurs during error correction on the receiving side, and this depends on the time for receiving all codewords, that is, data, inner code, and outer code.
  • codewords that is, data, inner code, and outer code.
  • the code in the horizontal direction data + outer code
  • the word length is 11 cells
  • the codeword length in the vertical direction data + inner code
  • the time for receiving 165 cells determines the delay time.
  • Patent Document 1 Patent No. 2762815
  • Patent Document 2 Japanese Patent Laid-Open No. 03-254240
  • Patent Document 3 Japanese Patent Laid-Open No. 04-207734
  • Patent Document 4 US 2004 -0260996A1
  • Non-Patent Document 1 Supervised by Hideaki Imai, "Electronic Essentials No. 20 Key points of error correction code", Nippon Industrial Center
  • Non-Patent Document 2 Supervised by Satoshi Yamada, "Digital Information Society, edited by the Institute of Image Information and Television Engineers", Ohm, ppl8-19
  • Non-Patent Document 3 ITU—R Recommendation BT. 1306- 1
  • Non-Patent Document 4 Ryoichi Iwase and Hitoshi Ohara, “A Compensation Method for Transmission Code Errors and Cell Discards in ATM Networks”, Japanese Institute of Electronics, Information and Communication Engineers, J75—B1 No.l, ppl—11, 1992 1 Moon
  • Non-Patent Document 5 Supervised by Hiroshi Harashima, "Application Examples of Error Correction Coding Technology ⁇ Digital Recording>", published by Trikesps, pp43-44, pp67-68
  • the present invention is capable of compensating for packet loss and bit error in the packet, and is capable of realizing an error correction method, an error correction code encoder, and an error that can be realized with a simple circuit configuration with high efficiency and low delay.
  • An object of the present invention is to provide a correction decoding apparatus.
  • data to be transmitted in the transmission side apparatus is encoded in units of a predetermined number of bits and transmitted in packets, and the packet bit error in the reception side apparatus.
  • an error correction method for compensating for packet loss, in the transmitting side device, the step of arranging data in a matrix and the error correction code in the column direction of the data arranged in a matrix are the same as the data.
  • Each of which is stored in one packet and at least an error detection code for detecting a bit error with respect to the number information and data stored in the packet or the number information and an error correction code. And storing the packet in the packet and transmitting the packet.
  • the step of restoring the data includes the step of checking the loss of the packet in the step of checking for the loss of the packet. It is also preferable to use it for restoration.
  • error correction code input device of the present invention input data having a predetermined number of bits is arranged in a matrix, an error correction code is calculated for each column, and the calculated error correction code is assigned to each column.
  • Each row has error detection code means for adding an error detection code for detecting a bit error in each row, and packet transmission means for storing and transmitting each row output by the error detection code means in one packet.
  • the error correction decoding apparatus is an error correction decoding apparatus that receives and decodes a packet output from the error correction code apparatus, and is included in each packet.
  • Error detection means that decodes the error detection code and outputs only a set of number information and data in which no error is detected or a combination of number information and error correction code in which no error is detected, and data or data output by the error detection means
  • Error correction means for making an error correction code in a matrix form corresponding to the position of the row number corresponding to the number information to be output together, and performing error correction on each column based on the error correction code included in the same column It is characterized by having.
  • the error correction means preferably uses the number information output together with the data or the error correction code by the error detection means for error correction. .
  • a circuit configuration in which one of the product codes has a smaller number of bits to be added than the error correction code is also a simple error detection code, and the error detection code is transmitted in the same packet as the data or the error correction code.
  • FIG. 1 is a diagram for explaining error correction codes according to the present invention.
  • FIG. 2 shows a transmission packet in the error correction method according to the present invention.
  • FIG. 3 is a diagram for explaining decoding keys of the error correction method according to the present invention.
  • FIG. 4 is a block diagram of an error correction code key device according to the present invention.
  • FIG. 5 is a block diagram of an error correction decoding apparatus according to the present invention.
  • FIG. 6 is a diagram for explaining an FEC method used for a stream type transmission method.
  • FIG. 7 is a diagram for explaining an FEC scheme that compensates for packet loss in a packet-type transmission scheme.
  • FIG. 8 is a diagram for explaining an FEC method for correcting packet loss and bit error in a packet in a packet type transmission method.
  • FIG. 9 is another diagram for explaining the FEC scheme for correcting packet loss and bit error in the packet in the packet type transmission scheme.
  • FIG. 1 is a diagram for explaining the sign of the error correction method according to the present invention.
  • the transmission side device divides the transmission data into N-bit units and arranges M pieces of N-bit data (data # 1 to #M) in a matrix to perform encoding Do.
  • the transmission side apparatus performs the code key process in units of N X M bits.
  • N and M are predetermined natural numbers.
  • the transmission data is shown in a form arranged in ascending order from the first row. However, if it is common on the transmitting and receiving sides, such as a form arranged in ascending order from the first column, the NXM bit is used. There are no restrictions on the order of data arrangement.
  • code correction is performed using an error correction code in the vertical direction or the column direction, and an outer code which is an error correction code is assigned.
  • the outer code generates an m-bit error correction code for M-bit data, and the generated m-bit outer code is the same as the column to be calculated. It is added to the column. Therefore, the outer code is a matrix of m rows and N columns.
  • the k-th row of the outer code is called outer code # M + k (l ⁇ k ⁇ m).
  • each row of Q + N bits is encoded with an error detection code, and an inner code that is an error detection code is assigned.
  • the inner code generates an n-bit error detection code for Q + N bits, and the generated n-bit inner code is defined as the calculation target row. It is given on the same line.
  • the inner code of the k-th row (l ⁇ k ⁇ M + m) is called inner code #k.
  • FIG. 2 is a diagram showing a transmission packet in the error correction method according to the present invention.
  • the transmitting device adds a packet header to each Q + N + n bit line shown in Fig. 1 (b) and transmits it as one packet. That is, the transmission side device transmits N ⁇ M bits of data in M + m packets.
  • the receiving side device first checks whether or not there is an error using the inner code that is an error detection code that is always present in the received packet, and if an error is detected, the packet is discarded. Subsequently, based on the number information of the received packet, the payload portion excluding the number information, that is, the portion including the data or the outer code is arranged in a matrix. At this time, appropriate dummy data may be arranged for a packet discarded due to error detection and a packet not received due to loss in the network.
  • FIG. 3 is a diagram for explaining the decoding method of the error correction method according to the present invention. In FIG. 3, when an error is detected in the packet of data # 4, or the packet of data # 4 is received in the first place. As a result, dummy data is placed at the position of data # 4!
  • the receiving side device performs error correction using correctly received number information and outer code, and performs error correction of dummy data.
  • the transmission device shows an example of transmitting with a packet header attached to each row of Q + N + n bits.
  • One packet stores other bits such as padding for bit adjustment. You can also.
  • other bits may be included in the detection target range of the error detection code. That is, the Q bit number information and the N bit data or outer code are at least the detection target range of the error detection code, and the receiving side device receives the Q bit number information and the N bit data or outer code.
  • the n-bit error detection code can be distinguished from other bits, and the range covered by the n-bit error detection code only needs to be common to the transmission side device and the reception side device.
  • the processing delay by each block is data, clock signal, each control signal This can be compensated by inserting an appropriate delay circuit. In the following description, the delay circuit is omitted.
  • FIG. 4 is a block diagram of an error correction coding apparatus according to the present invention, that is, a transmission side apparatus.
  • the error correction encoding apparatus includes a RAM (Random Access Memory) 2, an error correction encoder 3, an error detection encoder 4, and a packet header adder 5.
  • Reference numeral 1 is a data input port
  • reference numeral 6 is a packet output port.
  • the transmission data input to data input port 1 is processed in units of NXM bits as described in Fig. 1 (b), and is in M rows and N columns in the area separated by the dotted line in Fig. 4 of RAM2. Sequentially written in a certain center upper area.
  • Q bit number information is stored in each row of the left Q column of RAM 2, that is, in the first to M + m rows. This number information may be written together when writing the transmission data to each line, or may be written as a fixed value when the RAM 2 is initialized.
  • error correction encoder 3 After storing the transmission data in the area of M rows and N columns in RAM2, error correction encoder 3 generates an error correction code for each column of transmission data, and the generated error correction code is transmitted to the transmission data to be corrected.
  • the M + 1th row force in the same column is also stored in the M + mth row.
  • the above processing is performed for all the transmission data, that is, the Q + 1 column force of RAM2 is also applied to the Q + N column. Note that multiple columns may be processed in parallel instead of one column at a time.
  • the transmission power of NXM bits is stored in the M rows and N columns of RAM2 and then the error correction code is generated and stored. Therefore, the processing time required for generating and storing the error correction code can be reduced.
  • the error correction code to be used may be a non-binary code.
  • error correction code ⁇ having a plurality of bits as a minimum unit is performed.
  • Reed-Solomon code RS 255, 239
  • 8 bits are calculated as a unit of code key.
  • the error detection encoder 4 generates an error detection code for the data of each row and stores it in the Q + N + 1 1st column to the Q + N + nth column of the error detection target row.
  • the error detection encoder 4 may process a plurality of rows in parallel instead of one row. Also, after the necessary data for all (Q + N) X (M + m) areas of RAM2, that is, number information, transmission data, and error correction code, are stored, error detection code generation and storage processing is performed. If this is done, the processing time required to generate and store error detection codes in the order of power in which all data is stored can be reduced.
  • the packet header assigner 5 inputs data of each row of the RAM 2, that is, data including number information, transmission data or error correction code, and error detection code, and assigns a packet header to this data. , Output to packet output port 6.
  • FIG. 5 is a block diagram of an error correction decoding apparatus according to the present invention, that is, a receiving side apparatus.
  • the error correction decoding apparatus includes a packet header separator 8, an error detector 9, a number information separator 10, a RAM 11, and an error corrector 12.
  • Reference numeral 7 is a packet input port
  • reference numeral 13 is a data output port.
  • the packet header separator 8 terminates the header of the packet input from the packet input port 7, and includes Q + N + n bits including number information, data or error correction code, and error detection code. Is output to the error detector 9.
  • the error detector 9 checks whether or not an error has occurred in the input number information + data or number information + error correction code based on the error detection code.
  • the error detector 9 outputs number information + data or number information + error correction code to the number information separator 10 when it does not detect an error and detects an error. Also does not output.
  • the number information separator 10 terminates the input number information + data or number information + error correction code number information, and corresponds the data or error correction code to the number information in the RAMI 1.
  • the second column force of the row to be stored is also stored in the (N + 1) th column, and the value of the first column of the same row is set to 0.
  • the first column of RAM 11 is a packet discard flag area indicating packet discard, the first row power from the second column to the (N + 1) th column, the Mth row is an area for storing data, and the M + 1th row in the same column
  • the M + m line is an area for storing error correction codes.
  • the packet discard flag indicates whether or not the data in the same row or the error correction code is successfully received. When the value is 0, it is received without error, and when the value is 1. Indicates that it was discarded or an error was detected. Note that all packet discard flags are set to a value of 1 when RAMI 1 is initialized and every time N X M-bit data processing is completed.
  • the error corrector 12 is based on the error correction code and the value of the packet discard flag.
  • RAM The second column force of 11 also performs error correction on the data in the (N + 1) th column.
  • the error correction by the error corrector 12 is sufficient for the error correction encoder to receive M + m packets after receiving M + m packets or to receive M + m packets of the first packet. Start after a long time. Note that the error corrector 12 may process multiple columns in parallel rather than executing error correction processing one column at a time. Thereafter, the data is output to the data output port 13.
  • the error correction code is an even parity.
  • m l
  • the error correction code is generated so that the number of 1's in each column is an even number. If the error correction decoder receives M + 1 packets, and an error is detected in one of them and discarded, only the packet discard flag in the corresponding row has the value 1.
  • a matrix of M + 1 rows and N columns whose signals are from the second column to the (N + 1) th column of RAMI 1 is D, a packet discard flag is a vertical vector F of length M + 1, and (M + 1) rows (M + 1) single column
  • the M + 1 row N column matrix D * with 1 row restored is calculated by the following equation.
  • equation (1) is an operation on modulo 2.
  • Equation (1) indicates an indefinite value due to discard. At this time, each variable on the right side of Equation (1) is
  • a code with a minimum Hamming distance of 3 bits or more In the case of 4-bit data, at least 3 bits are required as an error correction code.
  • a binary (7, 4) BCH code is a code whose error correction code is 3 bits.
  • the error correction code is 1 bit, and it requires less information to be transmitted, so the signal transmission band can be reduced.
  • an error detection code only an error is detected, and a simple code such as a parity bit can be applied.
  • it is applied to a packet that originally has an error detection function, such as an Ethernet (registered trademark) frame it is not necessary to add a new error detection code and an extra band is required. You do n’t have to.
  • one of the product codes is a simple error detection code with a circuit configuration that adds fewer bits than the error correction code, and the error detection code is the same as the data or the error correction code.

Landscapes

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

Abstract

 本発明では、送信側装置において、データを行列状に配置してデータの列方向に誤り訂正符号を計算し、誤り訂正符号をデータと同一列数の行列状に配置し、データ又は誤り訂正符号を有する各行に、行番号に対応する番号情報を付与し、各行を、それぞれ、1つのパケットに格納し、少なくともパケットに格納した番号情報とデータ又は番号情報と誤り訂正符号に対しての誤り検出符号も該パケットに格納して送信する。また、受信側装置において、受信パケットに格納されている誤り検出符号により誤りが検出されたパケットを廃棄し、番号情報に基づきパケットの消失を検査して、誤り訂正符号から消失したデータの復元を行う。これにより、パケット消失及びパケット内のビット誤りの補償が可能で、高効率、低遅延で、簡易な回路構成により実現できる誤り訂正方法を提供することができる。

Description

明 細 書
誤り訂正方法及び装置
技術分野
[0001] 本発明は、例えば、 ATM, IP、 LANといったパケット型伝送方式において、ビット 誤り及びパケット消失を補償する誤り訂正技術に関する。
背景技術
[0002] デジタルデータのビット誤り及び消失を補償する方式として、 FEC方式 (FEC: Fow ard Error Correction)が知られている。 FEC方式は、送信側において、データを 誤り訂正符号により符号化し、受信側において誤り又は消失を検出して、訂正を行う 方式である。誤り訂正符号としては、 BCH符号、リードソロモン符号、畳み込み符号 等の各種符号が提案されている (例えば、非特許文献 1参照)。
[0003] 誤り訂正符号にお!、て、 Nビットのデータに対して、 nビットの誤り訂正符号を付加し た N+nビットのビット列を符号語と呼ぶ。符号語中のビットに誤りが発生した場合でも その誤り数が誤り訂正能力以下である場合は、受信側において誤り位置を検知する ことができ、よって誤りを完全に修正することができる。誤り訂正能力は、誤り訂正符 号により異なり、例えば、(15、 10)ノ、ミング符号、即ち、 10ビットのデータに 5ビットの 誤り訂正符号を付加して 15ビットの符号語とするハミング符号では、 2ビットまでのバ 一スト誤りを訂正することができる。尚、パリティ符号や、 CRC符号に代表される誤り 検出符号も、誤り訂正符号と同様に、データに対して誤り検出符号を付加するが、符 号語内に誤りがあることを検出するのみで、その訂正はできない。
[0004] 誤り訂正符号単体では訂正困難な誤り、例えば、バースト的な誤りに対処するため 、複数の誤り訂正符号を組み合わせて、又は、誤り訂正符号と誤り検出符号を組み 合わせて使用する各種 FEC方式が提案され、使用されている。
従来技術による FEC方式は、大きく 3つに分類することができる。 1番目はストリーム 型伝送方式に用いられる FEC方式であり、 2番目はパケット型伝送方式において、パ ケット消失の補償を行う FEC方式であり、 3番目はパケット型伝送方式において、パ ケットの消失及びパケット内のビット誤りの訂正を行う FEC方式である。以下、図 6〜9 を用いて、従来技術による FEC方式について説明を行う。
[0005] 図 6は、ストリーム型伝送方式に用いられる FEC方式を説明する図であり、 (a)は、 単一の誤り訂正符号を用いる方式を、 (b)は 2種類の誤り訂正符号を用いる方式を示 している。
図 6 (a)に示す単一の誤り訂正符号を用いる方式の送信側においては、送信デー タを、所定のビット数を単位として区切り、区切ったデータに対して誤り訂正符号を計 算して符号語を生成する。受信側においては、誤り訂正符号に基づき誤りの訂正を 行う。
[0006] 図 6 (b)は、 2種類の誤り訂正符号を組み合わせた積符号と呼ぶ方式を示す図であ る。図 6 (b)に示す様に、一定長のデータを行列状に配置し、例えば、まず縦方向又 は列方向において誤り訂正符号を計算して、誤り訂正符号である外符号を、各列の 最後に付加する。尚、外符号とは、使用する 2種類の符号のうち、先に計算する符号 を示す用語である。
[0007] 続いて、横方向又は行方向において誤り訂正符号を計算して、誤り訂正符号であ る内符号を、各行の最後に付加する。尚、内符号とは、使用する 2種類の符号のうち 、後に計算する符号を示す用語である。
積符号では、例えば、バースト誤りにより、 1つの行に内符号の誤り訂正能力以上の 誤りが発生した場合であっても、列方向では、バースト誤りとはならないため、外符号 により総ての誤りが訂正できる等、その誤り訂正能力が向上する。例えば、国内の地 上デジタル放送では、内符号としてパンクチャド畳み込み符号を、外符号として(204 、 188)短縮化リードソロモン符号を用いた積符号による FEC方式を採用している(例 えば、非特許文献 2、 3参照。)。
[0008] 図 7は、パケット型伝送方式において、パケット消失の補償を行う FEC方式を説明 する図であり、特許文献 1に記載されている。特許文献 1によれば、図 7に示す様に、 データ A〜Dをペイロード部分に有する ATMセルに続!、て、ノ リティをペイロード部 分に有するパリティセルが送信される。データ A〜データ Dの第 kビットに対するパリ ティビットは、ノ リティセルのペイロードの第 kビットに格納される。また、 ATMセルに は送信順に連続するセル番号が付与される。 [0009] 例えば、データ Bを有する ATMセルが消失した場合、受信側では、セル番号よりセ ルの消失を認識し、ノ^ティセル力 データ Bを復元することができる。この方式は、 簡単な構成でパケット消失の補償を可能とするが、ビット誤りの訂正はできない。即ち 、データ Bの第 1ビットに誤りが発生したとしても、ノ^ティセルにより判定できるのは、 データ A〜Dの第 1ビットのいずれ力に、又は、複数に誤りが発生していることのみで ある。
[0010] 図 8及び図 9は、パケット型伝送方式において、パケット消失及びパケット内の誤り 訂正を行う FEC方式を説明する図であり、例えば、非特許文献 4、特許文献 2及び特 許文献 3に本方式が記載されて!、る。
本方式では、図 8 (a)に示す様に、データ列を所定長のデータ A〜Dに区切り、行 列状に配置した上で、行方向に外符号を計算し、データ A〜Dそれぞれに外符号 A 〜Dを付与する。続いて、データ及び外符号に対して、列方向に内符号を計算し、 内符号 Zを付与、即ち、積符号を計算する。
[0011] 続!、て、各行のデータを ATMセルサイズに分割し、行列の第 1行から順に、セル の送出順序を示すセル番号を付与した ATMセルとして送信する。図 8 (b)において は、各データは 2分割されている。
受信側においては、図 9に示す様に、セル番号に基づき、送信側と同じ行列状に データを並べる。このとき、セル番号力 検出できる消失セルについては、ダミーデ 一タを揷入しておく。図 9においては、データ B— 1の ATMセルが消失したため、デ ータ B—1の位置にダミーデータを挿入している。また、誤りが発生したデータについ ては、この段階では検出できず、従って誤りを有したままのデータが行列状に配置さ れる。図 9においては、データ D— 2に誤りが発生している。
[0012] 続いて、行列状に配置したデータに対して、内符号及び外符号により誤り訂正を行 い、ダミーデータ及び誤りの訂正処理を行う。本方式は、図 7を用いて説明した特許 文献 1に記載の構成とは異なり、ビットの誤りについても補償可能であるが、低効率、 高遅延及び複雑な回路構成という欠点がある。
低効率となる原因は、外符号を格納する専用セルの存在である。例えば、非特許 文献 4で ίま、(442、 424) BCH符号で伝送効率力 であり、(460、 424) BC H符号で、伝送効率が lOZl lとしている。
[0013] また、高遅延は、受信側での誤り訂正時に発生し、これは、全符号語、即ち、デー タ、内符号及び外符号を受信する時間に依存する。例えば、非特許文献 4に記載の 、外符号に (460、 424) BCH符号を用い、内符号に(15、 14)パリティ符号を用いる 方式であれば、横方向(データ +外符号)の符号語長は 11セル、縦方向(データ + 内符号)の符号語長は 15セルであり、積符号全体の符号語長 11 X 15 = 165セルで ある。つまり、 165セルを受信する時間が、遅延時間を決定することとなる。
[0014] 更に、内符号及び外符号共に誤り訂正符号を用いる場合には、その回路構成は複 雑になる。尚、誤り訂正符号ィ匕を行う誤り訂正符号器、誤り訂正符号に基づき誤り訂 正を行う誤り訂正器、誤り検出符号化を行う誤り検出符号器及び誤り検出符号に基 づき誤り検出を行う誤り検出器については、例えば、非特許文献 5に記載されている また、 Turbo Product Codeを用いて積符号のように二次元に符号ィ匕する方法 も考えられている力 Turbo Product Codeは計算量が多ぐ特に復号時に繰り返 し演算が必要となり処理が複雑になる。 Turbo Product Codeを用いる方法につ いては、例えば、特許文献 4に記載されている。
特許文献 1 :特許第 2762815号明細書
特許文献 2:特開平 03 - 254240号公報
特許文献 3:特開平 04 - 207734号公報
特許文献 4: US 2004 -0260996A1
非特許文献 1 :今井秀榭監修、"エレクトロニクスエッセンシャルズ No. 20 誤り訂正 符号の要点"、日本工業センター
非特許文献 2 :山田宰監修、 "映像情報メディア学会編、デジタル放送ノヽンドブック"、 オーム社、 ppl8- 19
非特許文献 3 :ITU—R勧告 BT. 1306- 1
非特許文献 4:岩瀬亮一、小原仁、 "ATM網における伝送路符号誤りおよびセル廃 棄の補償法"、電子情報通信学会和文論文誌、 J75— B1 No. l、ppl— 11、 1992 年 1月 非特許文献 5:原島博監修、 "誤り訂正符号化技術の応用事例 <デジタル記録編 > " 、トリケップス刊、 pp43— 44、 pp67-68
発明の開示
発明が解決しょうとする課題
[0015] 従って、本発明は、パケット消失及びパケット内のビット誤りの補償が可能であり、高 効率、低遅延で、簡易な回路構成により実現できる誤り訂正方法、誤り訂正符号ィ匕 装置及び誤り訂正復号ィヒ装置を提供することを目的とする。
課題を解決するための手段
[0016] 本発明における誤り訂正方法によれば、送信側装置において送信対象であるデー タを、所定ビット数単位で符号ィ匕してパケットにより送信し、受信側装置においてパケ ットのビット誤り及びパケット消失を補償する誤り訂正方法であって、送信側装置にお いて、データを行列状に配置するステップと、行列状に配置したデータの列方向に 誤り訂正符号を計算し、データと同一列数の行列状に配置するステップと、データ又 は誤り訂正符号を有する各行に、行番号に対応する番号情報を付与するステップと 、番号情報とデータ又は番号情報と誤り訂正符号を有する各行を、それぞれ、 1つの パケットに格納し、少なくともパケットに格納した番号情報とデータ又は番号情報と誤 り訂正符号に対するビット誤りを検出する誤り検出符号も該パケットに格納して送信 するステップとを有し、受信側装置において、受信したパケットに格納されている誤り 検出符号により誤りが検出されたパケットを廃棄するステップと、パケットに含まれる番 号情報に基づきパケットの消失を検査するステップと、誤り訂正符号から消失したデ ータの復元を行うステップとを有することを特徴とする。
[0017] 本発明の誤り訂正方法における他の実施形態によれば、前記データの復元を行う ステップは、前記パケットの消失を検査するステップにおいて、消失を検出しな力つた パケットの番号情報をデータの復元に使用することも好ましい。
本発明における誤り訂正符号ィ匕装置によれば、入力される所定ビット数のデータを 行列状に配置し、各列に対して誤り訂正符号を計算し、計算した誤り訂正符号を、各 列に付加する誤り訂正符号手段と、誤り訂正符号手段が出力する各行に、行番号に 対応する番号情報を付加する番号情報付与手段と、番号情報付与手段が出力する 各行に、各行のビット誤りを検出する誤り検出符号を付加する誤り検出符号手段と、 誤り検出符号手段が出力する各行を、 1つのパケットに格納して送信するパケット送 信手段とを有することを特徴とする。
[0018] 本発明における誤り訂正復号ィ匕装置によれば、前記誤り訂正符号ィ匕装置が出力す るパケットを受信して復号ィ匕する誤り訂正復号ィ匕装置であって、各パケットに含まれる 誤り検出符号を復号して、誤りが検出されない番号情報とデータの組又は誤りが検 出されない番号情報と誤り訂正符号の組のみを出力する誤り検出手段と、誤り検出 手段が出力するデータ又は誤り訂正符号を、共に出力する番号情報に対応する行 番号の位置に対応させて行列状とし、各列に対して、同一列に含まれる誤り訂正符 号に基づき誤り訂正を行う誤り訂正手段とを有することを特徴とする。
[0019] 本発明の誤り訂正復号化装置における他の実施形態によれば、前記誤り訂正手段 は、誤り検出手段が、データ又は誤り訂正符号と共に出力する番号情報を誤り訂正 に使用することも好ましい。
発明の効果
[0020] 積符号の一方の符号を、誤り訂正符号よりも付加するビット数が少なぐ回路構成も 簡易な誤り検出符号とし、誤り検出符号をデータ又は誤り訂正符号と同一のパケット により送信することで、パケット消失とパケット内のビット誤りの双方を補償しつつ、冗 長を削減して低遅延、高効率を実現し、また、符号化装置及び復号化装置の簡易化 を実現している。
[0021] 更に、各パケットには番号情報が付与されているため、番号情報を用いることにより 、受信しな力つたパケットの縦方向の位置を知ることができ、単一誤り訂正符号のよう な簡易な誤り訂正符号が使用可能になるほど訂正性能を向上することができる、とい う効果がある。
図面の簡単な説明
[0022] [図 1]本発明による誤り訂正の符号ィ匕を説明する図である。
[図 2]本発明による誤り訂正方法での送信パケットを示す図である。
[図 3]本発明による誤り訂正方法の復号ィ匕を説明する図である。
[図 4]本発明による誤り訂正符号ィ匕装置のブロック図である。 [図 5]本発明による誤り訂正復号ィ匕装置のブロック図である。
[図 6]ストリーム型伝送方式に用いられる FEC方式を説明する図である。
[図 7]パケット型伝送方式にぉ 、て、パケット消失の補償を行う FEC方式を説明する 図である。
[図 8]パケット型伝送方式において、パケットの消失及びパケット内のビット誤りの訂正 を行う FEC方式を説明する図である。
[図 9]パケット型伝送方式において、パケットの消失及びパケット内のビット誤りの訂正 を行う FEC方式を説明する他の図である。
発明を実施するための最良の形態
[0023] 本発明を実施するための最良の実施形態について、以下では図面を用いて詳細 に説明する。
図 1は、本発明による誤り訂正方法の符号ィ匕を説明する図である。図 1 (a)に示す 様に、送信側装置では、送信データを Nビット単位に区切り、 M個の Nビットデータ( データ # 1〜# M)を、行列状に配置して符号化処理を行う。即ち、送信側装置は、 符号ィ匕処理を、 N X Mビット単位で行う。ここで、 N及び Mは、所定の自然数である。 尚、図 1においては、送信データを、第 1行から行の昇順に配置する形態で示してい るが、第 1列から列の昇順に配置する形態等、送受信側で共通であれば N X Mビット データの配置順には制限はな 、。
[0024] 続いて、縦方向又は列方向に対して誤り訂正符号により符号ィ匕を行い、誤り訂正符 号である外符号を付与する。図 1 (b)に示す様に、本例において、外符号は Mビット のデータに対して mビットの誤り訂正符号を生成するものとし、生成した mビットの外 符号を、計算対象列と同一列に付加している。よって、外符号は、 m行 N列の行列状 となる。以後、図 1 (b)に示す様に、外符号の第 kビットの行を外符号 # M+kと呼ぶ( l≤k≤m)。
[0025] 続いて、データ # 1からデータ # M及び外符号 # M+ 1から外符号 # M+mそれ ぞれの行の先頭に Qビットの番号情報を付与する。番号情報は、行番号を示す情報 である。以後、図 1 (b)に示す様に、第 k行(l≤k≤M+m)の番号情報を番号情報 # kと呼ぶ。 最後に、 Q+Nビットからなる各行に対して、誤り検出符号により符号化を行い、誤り 検出符号である内符号を付与する。図 1 (b)に示す様に、本例において、内符号は Q +Nビットに対して nビットの誤り検出符号を生成するものとし、生成した nビットの内符 号を、計算対象行と同一行に付与している。以後、図 1 (b)に示す様に、第 k行(l≤k ≤ M +m)の内符号を内符号 # kと呼ぶ。
[0026] 図 2は、本発明による誤り訂正方法での送信パケットを示す図である。送信側装置 は、図 1 (b)に示す Q+N+nビットの各行にパケットのヘッダを付与し、 1つのパケット として送信する。即ち、送信側装置は、 N X Mビットのデータを、 M+m個のパケット で送信する。
受信側装置においては、まず受信パケットに必ず存在する、誤り検出符号である内 符号により、誤りが生じている力否かの検査を行い、誤りを検出した場合には、当該 パケットを廃棄する。続いて、受信パケットの番号情報に基づき、番号情報を除いた ペイロード部分、即ちデータ又は外符号を含んでいる部分を、行列状に配置する。こ のとき、誤り検出により廃棄したパケット及びネットワークでの消失により受信しなかつ たパケットについては、適当なダミーデータを配置しても良い。図 3は、本発明による 誤り訂正方法の復号ィ匕を説明する図であり、図 3においては、データ # 4のパケットで 誤りが検出されたことにより、或いは、データ # 4のパケットをそもそも受信しな力つた ことにより、データ # 4の位置にはダミーデータが配置されて!、る。
[0027] 最後に、受信側装置において、正しく受信した番号情報と外符号により誤り訂正を 行い、ダミーデータの誤り訂正を行う。
尚、送信側装置において、 Q+N+nビットからなる各行にパケットヘッダを付与し て送信する例を示した力 1つのパケットには、ビット調整のためのパディング等、他 のビットを格納することもできる。またその場合、誤り検出符号の検出対象範囲に他の ビットを含めてもよい。即ち、 Qビットの番号情報と、 Nビットのデータ又は外符号とが、 少なくとも、誤り検出符号の検出対象範囲であり、受信側装置で、 Qビットの番号情報 と、 Nビットのデータ又は外符号と、 nビットの誤り検出符号と、その他のビットの区別 ができ、 nビットの誤り検出符号が対象とする範囲が送信側装置と受信側装置で共通 であればよい。尚、各ブロックによる処理遅延は、データ、クロック信号、各制御信号 の非同期の原因となるが、適切な遅延回路の挿入によりこれを補償することができる 。以降の説明では、遅延回路は省略する。
[0028] 図 4は、本発明による誤り訂正符号化装置、即ち、送信側装置のブロック図である。
図 4によると、誤り訂正符号化装置は、 RAM (Random Access Memory) 2と、誤 り訂正符号器 3と、誤り検出符号器 4と、パケットヘッダ付与器 5とを備えている。また、 符号 1はデータ入力ポートであり、符号 6はパケット出力ポートである。
データ入力ポート 1に入力される送信データは、図 1 (b)にて説明したように N X M ビットを単位として処理され、 RAM2の図 4の点線で区切られた領域のうち、 M行 N 列である中央上段の領域に順次書き込まれる。
[0029] また、 RAM2の左側 Q列の各行、つまり第 1行から第 M+m行には、 Qビットの番号 情報を格納する。この番号情報は、各行に送信データを書き込む際に、合わせて書 き込んでも、 RAM2を初期化する際に固定値として書き込んでも良い。
RAM2の M行 N列の領域に送信データを格納後、誤り訂正符号器 3は、送信デー タの各列に対する誤り訂正符号を生成し、生成した誤り訂正符号を、訂正対象である 送信データと同一列の第 M+ 1行力も第 M+m行に格納する。以上の処理を送信デ ータ総てに対し、つまり、 RAM2の第 Q+ 1列力も第 Q+N列まで行う。尚、 1列ずつ ではなぐ複数列ずつ並列に処理しても良い。また、 N X Mビットの送信データ力 総 て、 RAM2の M行 N列の領域に格納された後に誤り訂正符号の生成と格納処理を 行うのではなぐ総ての行のデータが格納された列力 順に、誤り訂正符号の生成と 格納処理を行ってもよぐ処理時間を低減することができる。
[0030] 使用する誤り訂正符号は、非 2元符号であっても良い。この場合、複数のビットを最 小単位とする誤り訂正符号ィ匕を行う。例えば、リードソロモン符号 RS (255、 239)を 用いる場合、 8ビットを符号ィ匕の単位として計算する。
続いて、誤り検出符号器 4が、各行のデータに対する誤り検出符号を生成し、誤り 検出の対象行の第 Q +N+ 1列から第 Q +N+ n列に格納する。誤り訂正符号器 3と 同様、誤り検出符号器 4は、 1行ずつではなぐ複数行ずつ並列に処理しても良い。 また、 RAM2の(Q+N) X (M+m)の領域総てに必要なデータ、つまり、番号情報 、送信データ、誤り訂正符号が格納された後に、誤り検出符号の生成と格納処理を 行うのではなぐ総てのデータが格納された行力 順に、誤り検出符号の生成と格納 処理を行ってもよぐ処理時間を低減することができる。
[0031] パケットヘッダ付与器 5は、 RAM2の各行のデータ、つまり、番号情報と、送信デー タ又は誤り訂正符号と、誤り検出符号とを含むデータを入力し、このデータにパケット ヘッダを付与し、パケット出力ポート 6に出力する。
図 5は、本発明による誤り訂正復号化装置、即ち、受信側装置のブロック図である。 図 5によると、誤り訂正復号化装置は、パケットヘッダ分離器 8と、誤り検出器 9と、番 号情報分離器 10と、 RAM11と、誤り訂正器 12とを備えている。また、符号 7はパケ ット入力ポートであり、符号 13はデータ出力ポートである。
[0032] パケットヘッダ分離器 8は、パケット入力ポート 7から入力されるパケットのヘッダを終 端し、番号情報と、データ又は誤り訂正符号と、誤り検出符号とを含む Q+N+nビッ トのペイロードを誤り検出器 9に出力する。
誤り検出器 9は、誤り検出符号に基づき、入力された番号情報 +データ、又は、番 号情報 +誤り訂正符号に誤りが発生している力否かを検査する。誤り検出器 9は、誤 りを検出しな力つた場合には、番号情報 +データ、又は、番号情報 +誤り訂正符号 を番号情報分離器 10に出力し、誤りを検出した場合には、何も出力をしない。
[0033] 番号情報分離器 10は、入力される番号情報 +データ、又は、番号情報 +誤り訂正 符号の番号情報を終端し、そのデータ又は誤り訂正符号を、 RAMI 1のその番号情 報に対応する行の第 2列力も第 N+ 1列に格納し、同一行の第 1列の値を 0にする。
RAM11の第 1列は、パケット廃棄を示すパケット廃棄フラグ領域であり、第 2列から 第 N+ 1列の第 1行力 第 M行は、データを格納する領域であり、同列の第 M+ 1行 力も M+m行は、誤り訂正符号を格納する領域である。パケット廃棄フラグは、同一 行のデータ又は誤り訂正符号が正常に受信されたものである力否かを示し、値が 0で ある場合には誤りなく受信したことを、値が 1である場合には廃棄又は誤り検出された ことを示している。尚、総てのパケット廃棄フラグには、 RAMI 1の初期化時と、 N X Mビットのデータ処理が完了するごとに値 1が設定される。
[0034] 誤り訂正器 12は、パケット廃棄フラグの第 1行力 第 M行までのうち 1つでも値 1とな つているものがある場合には、誤り訂正符号とパケット廃棄フラグの値に基づき RAM 11の第 2列力も第 N+ l列のデータの誤り訂正を行う。尚、誤り訂正器 12による誤り 訂正の開始は、誤り訂正符号化装置が M+m個のパケットを受信した後、或いは、 最初のパケットの受信力 M+m個のパケットを受信するのに十分な時間の経過後 に開始する。尚、誤り訂正器 12は、 1列ずつ誤り訂正処理を実行するのではなぐ複 数列ずつ並列に処理しても良い。その後、データは、データ出力ポート 13に出力さ れる。
[0035] 以下に、誤り訂正に関する具体例を示す。例えば、誤り訂正符号を偶パリティとする 。このとき m= lであり、誤り訂正符号は、どの列も 1の個数が偶数個になるように生成 される。誤り訂正復号ィ匕装置が M+ 1個のパケットを受信し、その中の 1つに誤りが検 出されて廃棄された場合、該当する行のパケット廃棄フラグのみが値 1になる。このと き、 RAMI 1の第 2列から第 N+ 1列までの信号を要素とする M+ 1行 N列の行列を D 、パケット廃棄フラグを長さ M+ 1の縦ベクトル F 、(M+ 1)行(M+ 1)列の単
M+1,N M+1
位行列を I 、総ての要素が 1である長さが M+ 1の横ベクトルを E とすると、廃棄さ
M+1 +1
れた 1行が復元された M+ 1行 N列の行列 D* は、次式によって計算される。
+1,N
D* = [I +F ·Ε ]D (1)
+1,N M+1 M+1 M+1 +1,N
ただし、式(1)はモジュロ 2上での演算である。例えば、 N=8、 M=4とし、送信デー タを、
[0036] [数 1]
Figure imgf000013_0001
[0037] とすると、外符号は、 [0 0 0 0 0 1 0 0]となる。受信側装置で、 2番目のバケツ トを、誤り検出により廃棄したものとすると、 RAM11の(M+ 1)行 (N+ 1)列のメモリ 内容は、
[0038] [数 2] 0 0 0 0 0 0 0 0
1 X X X X X X X X
0 1 1 1 1 0 0 1 1
0 1 1 1 1 0 1 0 0
0 0 0 0 0 0 1 0 0
[0039] となる。ここで、 Xは廃棄による不定値を示している。このとき、式(1)の右辺の各変数 は、
[0040] [数 3]
「1 0 0 0 0、
0 1 0 0 0
I M+ 1 = 0 0 1 0 0
0 0 0 1 0
0 0 0
0
1
F M'+ 1― 0
0
0
E M+ 1 = 1 1 1 1 1'
Figure imgf000015_0001
[0041] である。これらを式(1)に代入して計算すると、
[0042] [数 4]
Figure imgf000016_0001
[0043] となり、第 2行も含めて上側 4行は送信データと一致して 、ることが確認できる。式(1) の計算は、行列の加算と乗算のみであり簡単に実現可能である。
通常、 1ビットの誤り訂正を行うには、最小ハミング距離が 3ビット以上の符号を用い る必要がある。 4ビットのデータの場合には、最低でも誤り訂正符号として 3ビット必要 である。例えば、誤り訂正符号が 3ビットである符号として、 2元(7, 4) BCH符号があ る。本数値例では誤り訂正符号は 1ビットであり、送信すべき情報が少なくてすむの で信号伝送帯域を削減できる。誤り検出符号としては、誤りを検出するのみなのでパ リティビットのような簡易な符号も適用可能である。また、イーサネット (登録商標)フレ ームのような、誤り検出機能をもともと有しているパケットに対して適用すれば、誤り検 出符号を新たに付加する必要は無ぐ帯域を余分に必要とせずに済む。
[0044] 以上説明したように、積符号の一方の符号を、誤り訂正符号よりも付加するビット数 が少なぐ回路構成も簡易な誤り検出符号とし、誤り検出符号をデータ又は誤り訂正 符号と同一のパケットにより送信することで、パケット消失とパケット内のビット誤りの双 方を補償しつつ、冗長を削減して低遅延、高効率を実現し、また、誤り訂正符号化装 置及び復号化装置の簡易化を実現している。更に、誤り訂正復号化装置では、各パ ケットの番号情報に基づき縦方向でのパケット廃棄位置を認識するため、単一誤り訂 正符号の様な簡易な誤り訂正符号が使用可能になるほど訂正性能を向上させること ができる、という効果がある。

Claims

請求の範囲
[1] 送信側装置にぉ ヽて送信対象であるデータを、所定ビット数単位で符号ィ匕してパ ケットにより送信し、受信側装置においてパケットのビット誤り及びパケット消失を補償 する誤り訂正方法であって、
送信側装置において、
データを行列状に配置するステップと、
行列状に配置したデータの列方向に誤り訂正符号を計算し、データと同一列数の行 列状に配置するステップと、
データ又は誤り訂正符号を有する各行に、行番号に対応する番号情報を付与するス テツプと、
番号情報とデータ又は番号情報と誤り訂正符号を有する各行を、それぞれ、 1つの パケットに格納し、少なくともパケットに格納した番号情報とデータ又は番号情報と誤 り訂正符号に対するビット誤りを検出する誤り検出符号も該パケットに格納して送信 するステップと
を有し、
受信側装置において、
受信したパケットに格納されている誤り検出符号により誤りが検出されたパケットを廃 棄するステップと、
パケットに含まれる番号情報に基づきパケットの消失を検査するステップと、 誤り訂正符号から消失したデータの復元を行うステップと
を有することを特徴とする方法。
[2] 前記データの復元を行うステップは、前記パケットの消失を検査するステップにお いて、消失を検出しな力つたパケットの番号情報もデータの復元に使用することを特 徴とする請求項 1に記載の方法。
[3] 入力される所定ビット数のデータを行列状に配置し、各列に対して誤り訂正符号を 計算し、計算した誤り訂正符号を、各列に付加する誤り訂正符号手段と、
誤り訂正符号手段が出力する各行に、行番号に対応する番号情報を付加する番 号情報付与手段と、 番号情報付与手段が出力する各行に、各行のビット誤りを検出する誤り検出符号を 付加する誤り検出符号手段と、
誤り検出符号手段が出力する各行を、 1つのパケットに格納して送信するパケット送 信手段と
を有することを特徴とする誤り訂正符号化装置。
[4] 請求項 3に記載の誤り訂正符号ィ匕装置が出力するパケットを受信して復号ィ匕する 誤り訂正復号化装置であって、
各パケットに含まれる誤り検出符号を復号して、誤りが検出されない番号情報とデ 一タの組又は誤りが検出されない番号情報と誤り訂正符号の組のみを出力する誤り 検出手段と、
誤り検出手段が出力するデータ又は誤り訂正符号を、共に出力する番号情報に対 応する行番号の位置に対応させて行列状とし、各列に対して、同一列に含まれる誤 り訂正符号に基づき誤り訂正を行う誤り訂正手段と
を有することを特徴とする誤り訂正復号化装置。
[5] 前記誤り訂正手段は、誤り検出手段が、データ又は誤り訂正符号と共に出力する 番号情報も誤り訂正に使用することを特徴とする請求項 4に記載の誤り訂正復号ィ匕 装置。
PCT/JP2006/315215 2005-09-01 2006-08-01 誤り訂正方法及び装置 WO2007029432A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US11/661,575 US7698290B2 (en) 2005-09-01 2006-08-01 Error correction method and apparatus
JP2006544763A JP4503613B2 (ja) 2005-09-01 2006-08-01 誤り訂正方法及び装置
EP06782093.6A EP1921754B1 (en) 2005-09-01 2006-08-01 Error correcting method and apparatus
CN2006800007292A CN101080875B (zh) 2005-09-01 2006-08-01 纠错方法以及装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2005253275 2005-09-01
JP2005-253275 2005-09-01
JP2006157186 2006-06-06
JP2006-157186 2006-06-06

Publications (1)

Publication Number Publication Date
WO2007029432A1 true WO2007029432A1 (ja) 2007-03-15

Family

ID=37835558

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/315215 WO2007029432A1 (ja) 2005-09-01 2006-08-01 誤り訂正方法及び装置

Country Status (5)

Country Link
US (1) US7698290B2 (ja)
EP (1) EP1921754B1 (ja)
JP (1) JP4503613B2 (ja)
CN (1) CN101080875B (ja)
WO (1) WO2007029432A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019515588A (ja) * 2016-05-11 2019-06-06 アイディーエーシー ホールディングス インコーポレイテッド 進化型外部符号化のための方法およびシステム

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9141466B2 (en) * 2009-12-31 2015-09-22 Intel Corporation Correcting double-bit burst errors using a low density parity check technique
WO2011082834A1 (en) * 2010-01-11 2011-07-14 Nokia Corporation Error correction
US8479079B2 (en) * 2010-04-09 2013-07-02 International Business Machines Corporation Integrated data and header protection for tape drives
CN102006625B (zh) * 2010-11-10 2013-07-17 清华大学 基于前向纠错的车载自组网可靠广播协议的系统及方法
CN102142928B (zh) * 2010-11-19 2013-11-06 华为技术有限公司 交织、解交织外码编码输出码字的方法和交织、解交织器
US9496982B2 (en) 2011-03-04 2016-11-15 Alcatel Lucent System and method providing resilient data transmission via spectral fragments
US9686062B2 (en) 2011-03-04 2017-06-20 Alcatel Lucent Virtual aggregation of fragmented wireless spectrum
US9030953B2 (en) 2011-03-04 2015-05-12 Alcatel Lucent System and method providing resilient data transmission via spectral fragments
CN103365737B (zh) * 2012-04-06 2016-09-14 国民技术股份有限公司 数据读写方法、读写装置及数据存储系统
US9021330B2 (en) 2012-05-15 2015-04-28 Alcatel Lucent System and method for multi-channel FEC encoding and transmission of data
JP2016062130A (ja) * 2014-09-16 2016-04-25 日本電気株式会社 ネットワーク処理トレース装置、ネットワーク処理トレース方法、および、コンピュータ・プログラム
US10489240B2 (en) * 2015-09-25 2019-11-26 Microsoft Technology Licensing, Llc Efficient detection of corrupt data
CN106598939B (zh) * 2016-10-21 2019-09-17 北京三快在线科技有限公司 一种文本纠错方法及装置、服务器、存储介质
US20190243566A1 (en) * 2018-02-05 2019-08-08 Infineon Technologies Ag Memory controller, memory system, and method of using a memory device
CN110492889B (zh) * 2019-08-16 2023-05-30 西安紫光国芯半导体有限公司 检测纠正两位错误的编码解码方法、编码解码器及处理器
WO2020091879A2 (en) * 2019-08-22 2020-05-07 Futurewei Technologies, Inc. Methods and apparatus for securing communications
CN112054809A (zh) * 2020-08-28 2020-12-08 杭州华澜微电子股份有限公司 改进的tpc纠错算法和装置
CN115080485B (zh) * 2022-06-29 2024-02-09 慕思健康睡眠股份有限公司 一种数据传输方法、装置、设备和存储介质
CN116757158B (zh) * 2023-08-11 2024-01-23 深圳致赢科技有限公司 基于半导体存储的数据管理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07202907A (ja) * 1993-12-29 1995-08-04 Toshiba Corp Atmネットワークにおける誤り制御装置
EP0721267A2 (en) 1994-12-28 1996-07-10 Kabushiki Kaisha Toshiba Schema for error control on ATM adaption layer in ATM networks
EP0928086A1 (en) 1997-05-13 1999-07-07 Matsushita Electric Industrial Co., Ltd. Packet transmitter
US20030031198A1 (en) 2001-06-22 2003-02-13 Broadcom Corporation System , method and computer program product for mitigating burst noise in a communications system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03254240A (ja) 1990-03-02 1991-11-13 Nippon Telegr & Teleph Corp <Ntt> セル送受信装置
JPH04207734A (ja) 1990-11-30 1992-07-29 Nippon Telegr & Teleph Corp <Ntt> セル送受信装置
JP3920558B2 (ja) * 2000-11-08 2007-05-30 株式会社東芝 データ処理方法及び装置及び記録媒体及び再生方法及び装置
JPWO2003085838A1 (ja) * 2002-04-05 2005-08-18 ソニー株式会社 インターリーブ装置及びインターリーブ方法、並びにデインターリーブ装置及びデインターリーブ方法
DE10227165A1 (de) * 2002-06-18 2004-01-29 Siemens Ag Verfahren und Anordnung zur Codierung bzw. Decodierung einer Folge digitaler Daten
US7509558B2 (en) * 2003-07-09 2009-03-24 Thomson Licensing Error correction method for reed-solomon product code
JP5191439B2 (ja) 2009-05-01 2013-05-08 ヤンマー株式会社 作業車両搭載用制御装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07202907A (ja) * 1993-12-29 1995-08-04 Toshiba Corp Atmネットワークにおける誤り制御装置
EP0721267A2 (en) 1994-12-28 1996-07-10 Kabushiki Kaisha Toshiba Schema for error control on ATM adaption layer in ATM networks
EP0928086A1 (en) 1997-05-13 1999-07-07 Matsushita Electric Industrial Co., Ltd. Packet transmitter
US20030031198A1 (en) 2001-06-22 2003-02-13 Broadcom Corporation System , method and computer program product for mitigating burst noise in a communications system

Non-Patent Citations (1)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019515588A (ja) * 2016-05-11 2019-06-06 アイディーエーシー ホールディングス インコーポレイテッド 進化型外部符号化のための方法およびシステム

Also Published As

Publication number Publication date
EP1921754A1 (en) 2008-05-14
JP4503613B2 (ja) 2010-07-14
CN101080875B (zh) 2012-07-04
US7698290B2 (en) 2010-04-13
EP1921754B1 (en) 2014-10-01
EP1921754A4 (en) 2010-06-02
US20090055704A1 (en) 2009-02-26
JPWO2007029432A1 (ja) 2009-03-12
CN101080875A (zh) 2007-11-28

Similar Documents

Publication Publication Date Title
JP4503613B2 (ja) 誤り訂正方法及び装置
JP2576776B2 (ja) パケット伝送方法・パケット伝送装置
US11201695B2 (en) Forward error correction with compression coding
US7246294B2 (en) Method for iterative hard-decision forward error correction decoding
CN107104677B (zh) 多媒体系统中发送/接收前向纠错相关信息的装置和方法
EP1391042B1 (en) Hierarchical block coding for a packet-based communications system
WO2006085488A1 (ja) 誤り訂正符号化装置及び誤り訂正復号装置
KR20130057937A (ko) 통신 시스템에서 패킷 송수신 장치 및 방법
WO1998058468A1 (fr) Systeme de transmission avec multiplexage de donnees d&#39;information, multiplexeur et demultiplexeur utilises a cet effet et codeur et decodeur pour correction d&#39;erreurs
US7289530B1 (en) System and method for coding a digital wrapper frame
US7231575B2 (en) Apparatus for iterative hard-decision forward error correction decoding
Boussard et al. Table-free multiple bit-error correction using the CRC syndrome
JP7199474B2 (ja) 符号化装置、送信機、復号装置および受信機
JPH07245600A (ja) 誤り訂正方式
JPH07202907A (ja) Atmネットワークにおける誤り制御装置
CN115037414B (zh) 基于crc的纠错解码的方法、装置、终端
EP2285003B1 (en) Correction of errors in a codeword
JPH08330978A (ja) 誤り訂正方式
EP0440280A1 (en) Television transmission system of the MAC/packet type
JP2007228174A (ja) 誤り訂正処理方法及び伝送装置
JP2003060632A (ja) Tdma通信装置及びtdma通信方式
Cheng et al. A matrix based error correcting code
JP2001244916A (ja) 伝送方法および伝送装置
JPS63309028A (ja) 符号器

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2006544763

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2006782093

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 11661575

Country of ref document: US

Ref document number: 200680000729.2

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE