WO2021199409A1 - 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法 - Google Patents

誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法 Download PDF

Info

Publication number
WO2021199409A1
WO2021199409A1 PCT/JP2020/015223 JP2020015223W WO2021199409A1 WO 2021199409 A1 WO2021199409 A1 WO 2021199409A1 JP 2020015223 W JP2020015223 W JP 2020015223W WO 2021199409 A1 WO2021199409 A1 WO 2021199409A1
Authority
WO
WIPO (PCT)
Prior art keywords
error correction
bit
syndrome
bits
circuit
Prior art date
Application number
PCT/JP2020/015223
Other languages
English (en)
French (fr)
Inventor
吉田 英夫
吉田 剛
小西 良明
石井 健二
Original Assignee
三菱電機株式会社
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 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2020/015223 priority Critical patent/WO2021199409A1/ja
Priority to JP2021537043A priority patent/JP7051018B2/ja
Priority to PCT/JP2021/004798 priority patent/WO2021199690A1/ja
Priority to CN202180024416.5A priority patent/CN115336182A/zh
Priority to EP21779027.8A priority patent/EP4109765A4/en
Publication of WO2021199409A1 publication Critical patent/WO2021199409A1/ja
Priority to US17/899,719 priority patent/US11901913B1/en
Priority to US18/492,547 priority patent/US20240056099A1/en

Links

Images

Classifications

    • 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/11Error 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 using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • 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/65Purpose and implementation aspects
    • H03M13/6561Parallelized implementations
    • 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/152Bose-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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/251Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with block coding
    • 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/611Specific encoding aspects, e.g. encoding by means of 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/618Shortening and extension of 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/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
    • H04L1/0058Block-coded modulation

Definitions

  • the present disclosure relates to an error correction coding device, an error correction decoding device, a control circuit, a storage medium, an error correction coding method, and an error correction decoding method that perform error correction coding processing.
  • Error correction codes are generally applied as an effective method for realizing high transmission capacity and long-distance transmission.
  • Error correction code is a technique used in wired communication systems, wireless communication systems, storage devices, and the like.
  • the error correction code is a technique that allows the receiving device to correct an error even if an error occurs in the received data by adding redundant bits to the digital data sent by the transmitting device.
  • a block code such as a Hamming code, a BCH (Bose-Chaudhuri-Hocquenghem) code, an RS (Reed-Solomon) code, an LDPC (Low Density Parity Check) code, or a combination thereof.
  • Various methods such as a product code and a concatenated code have been proposed.
  • the error correction code By applying the error correction code, it is possible to detect and correct errors that occur in the transmission line. However, there is a limit to the number of error bits that can be error corrected. Further, the number of error bits that can be error-corrected differs depending on the error correction performance of the error correction coding method and the decoding method.
  • the transmission data including the overhead that constitutes the frame is called an information bit.
  • the redundant bit added to the information bit is called a parity bit.
  • the parity bit is calculated from the information bit by a calculation method different from that of the error correction coding method.
  • a bit string in which an information bit and a parity bit are combined is called a code word.
  • the parity bit is calculated from the information bit in the unit of the preset number of bits. That is, the number of information bits and the number of parity bits in one codeword are predetermined and are called the information bit length and the parity bit length, respectively.
  • the code structure in which the bit structure of the error correction code is divided into the information bit and the parity bit is called a tissue code. Further, the number of bits of a code word is called a code length.
  • a plurality of bits of a multi-valued modulation symbol can be input in parallel to perform parallel batch coding processing, but parity by error correction coding is also a multi-bit parallel output of the symbol.
  • the specific bit sequence of the multi-valued modulation symbol is adjusted by PS or the like before the error correction coding, the parity by the error correction coding is assigned to the specific bit sequence without the probability shaping, and the coding process is performed.
  • a memory for frame adjustment is prepared before and after the circuit to be performed, and frame shaping is performed, which increases the circuit scale.
  • the present disclosure has been made in view of the above, and an object of the present invention is to obtain an error correction coding device capable of performing error correction coding processing with low delay while suppressing an increase in circuit scale. ..
  • m and n are positive integers
  • the frame of m bits ⁇ n symbols input in parallel with m bits is used as an error correction code sequence. It is an error correction coding device that performs the conversion.
  • the error correction coding device performs error correction coding using m bits ⁇ n symbols including known bits assigned to the bit series specified in the error correction code sequence as information bits, and generates a parity bit for error correction coding. It is characterized by including an error correction coding circuit for performing error correction and a selector for replacing a known bit of the error correction code sequence with a parity bit.
  • the error correction coding device has the effect of being able to perform error correction coding processing with low delay while suppressing an increase in circuit scale.
  • FIG. 1 A block diagram showing a configuration example of an error correction coding device according to the first embodiment.
  • Block diagram showing a configuration example of the error correction decoding apparatus according to the second embodiment A flowchart showing the operation of the error correction decoding apparatus according to the second embodiment.
  • Block diagram showing a configuration example of the error correction coding apparatus according to the third embodiment. A flowchart showing the operation of the error correction coding apparatus according to the third embodiment.
  • Block diagram showing a configuration example of the error correction decoding device according to the third embodiment A flowchart showing the operation of the error correction decoding apparatus according to the third embodiment.
  • the figure which shows the structural example of the processing circuit when the processing circuit provided in the error correction coding apparatus and the error correction decoding apparatus which concerns on Embodiment 1 to Embodiment 3 is realized by a processor and a memory.
  • FIG. 1 is a diagram showing a configuration example of a frame 1A used in the error correction code according to the first embodiment.
  • the error correction code a tissue code in which the information bit and the parity bit are separated by a block code such as a BCH code, an RS code, or an LDPC code is assumed.
  • the MSB (Most Significant Bit) 1a is provided with an information bit area 1e to which information bits are assigned and a bit area 1d for p bits.
  • the known bits are assigned to the bit region 1d before the error correction coding.
  • the known bits are also treated as information bits of the error correction code series, and error correction coding is performed on the information bits of m bits ⁇ n symbols.
  • a p-bit parity bit is assigned to the bit region 1d.
  • the intermediate bit 1b and the LSB (Least Significant Bit) 1c are composed of, for example, only the information bits converted by PS.
  • the generated parity bit is generated from the known bit of the p-bit bit region 1d in the MSB1a. Replace with.
  • the information bit region 1e of the MSB1a, the intermediate bit 1b, and the information bit of the LSB1c are directly output to the subsequent stage of the error correction coding device. That is, in the present embodiment, the code length of the error correction code is m ⁇ n + p bits.
  • FIG. 2 is a block diagram showing a configuration example of the error correction coding device 100A according to the first embodiment.
  • FIG. 3 is a flowchart showing the operation of the error correction coding device 100A according to the first embodiment.
  • the error correction coding device 100A is a device that performs error correction coding on the frame 1A before the error correction coding shown in FIG. 1A.
  • the error correction coding device 100A may replace the bits assigned to the bit region 1d with known bits when the frame 1A is input.
  • the error correction coding device 100A performs error correction coding using a frame of m bits ⁇ n symbols input in parallel with m bits as an error correction code sequence.
  • the error correction coding device 100A includes an error correction coding circuit 2, a parity memory 3a, delay memories 3b and 3c, and a selector 4.
  • the error correction coding circuit 2 performs organizational block error correction coding.
  • the error correction coding circuit 2 generates a parity bit of the error correction code sequence as information bits including known bits for the input bits (step S101).
  • the error correction coding circuit 2 may perform the parity bit generation process serially, or parallel operations can be easily performed because all m bits are information bits.
  • the error correction coding circuit 2 requires a clock frequency of m times the clock frequency of the m-bit symbol input in serial processing, but performs an m-bit parallel processing operation utilizing the linearity of the error correction code operation. For example, the coding operation can be performed at the clock frequency of the symbol input.
  • the error correction coding circuit 2 outputs the input m-bit information bit as it is to the delay memories 3b and 3c. Specifically, the error correction coding circuit 2 outputs the information bit of the information bit area 1e of the MSB1a to the delay memory 3b, and the information bit of the intermediate bit 1b and the information bit of the LSB1c, that is, the information bit of the m-1 bit. Is output to the delay memory 3c. In this way, the error correction coding circuit 2 performs error correction coding using m bits ⁇ n symbols including known bits assigned to the bit sequences specified in the error correction code sequence as information bits, and performs error correction coding. Generates the parity bit of.
  • the delay memories 3b and 3c delay the m-bit information bit at least until the error correction coding circuit 2 generates the parity bit of the error correction code sequence (step S102).
  • the error correction coding circuit 2 can generate a p-bit parity bit of the error correction code sequence when all the information bits constituting the error correction code sequence are input.
  • the error correction coding circuit 2 stores the generated parity bit in the parity memory 3a.
  • the error correction coding device 100A generates a parity bit in the same error correction coding circuit 2 even if an m-bit information bit sequence to be the next code sequence is input to the error correction coding circuit 2. be able to.
  • the parity memory 3a outputs the parity bits according to the sequence order of the error correction code sequence.
  • the delay memory 3b outputs the first bit of the known bit at the timing when the first bit of the parity bit is output from the parity memory 3a.
  • the delay memory 3c outputs the information bits corresponding to the intermediate bits 1b and LSB1c shown in FIG. 1, which are input at the same time as the first bits of the known bits at the timing when the first bit of the parity bit is output from the parity memory 3a.
  • Selector 4 is a 2-input 1-output selector.
  • the selector 4 selects the parity bit output from the parity memory 3a or the bit of the MSB1a output from the delay memory 3b as the output bit (step S103). Specifically, when the parity bit is output from the parity memory 3a and the known bit is output from the delay memory 3b, the selector 4 selects and outputs the parity bit from the parity memory 3a. In other cases, that is, when the information bit of the information bit area 1e is output from the delay memory 3b, the selector 4 selects and outputs the information bit from the delay memory 3b. In this way, the selector 4 replaces the known bits of the error correction code sequence with the parity bits.
  • the error correction coding apparatus 100A replaces the known bits in the bit region 1d with parity bits for the frame 1A before the error correction coding shown in FIG. 1A, and is an m-bit multi-value modulation symbol. Can be output (step S104).
  • the error correction coding device 100A performs an error correction coding operation with low delay, high speed, and a reduced circuit scale by parallel operation of m bits without breaking the bit configuration of the multi-valued modulation symbol on the input side. It can be done easily.
  • FIG. 4 is a block diagram showing a configuration example of the error correction / decoding device 200A according to the first embodiment.
  • FIG. 5 is a flowchart showing the operation of the error correction / decoding device 200A according to the first embodiment.
  • the error correction / decoding device 200A is a device that performs error correction / decoding for the frame 1A after the error correction coding shown in FIG. 1B, that is, for the multi-valued modulation symbol input in parallel with m bits. ..
  • the error correction / decoding device 200A includes gates 5a and 5b, a parity bit syndrome circuit 6a, an information bit syndrome circuit 6b, a syndrome correction circuit 7, a linear addition circuit 8, and an error correction / decoding circuit 11. ..
  • the gates 5a and 5b perform output control on the bits of the MSB1a provided with the bit region 1d to which the parity bits are assigned, according to the bits of the received multi-value modulation symbol (step S201). Specifically, when the parity bit of the error correction coding assigned to the bit area 1d shown in FIG. 1B is input, the gate 5a passes the parity bit and outputs it to the parity bit syndrome circuit 6a. do. When the parity bit of the error correction coding assigned to the bit area 1d shown in FIG. 1B is input to the gate 5b, the known bit assigned to the bit area 1d shown in FIG. 1A, for example, When all the known bits are 0, 0 is output to the information bit syndrome circuit 6b. When the information bit of the information bit region 1e shown in FIG. 1 is input, the gate 5b passes the information bit and outputs the information bit to the information bit syndrome circuit 6b.
  • the error correction decoding device 200A in parallel with the gate 5b outputting the information bit of the information bit region 1e to the information bit syndrome circuit 6b, the information bit of the m-1 bit corresponding to the intermediate bit 1b and the LSB1c shown in FIG. Is output to the information bit syndrome circuit 6b.
  • the parity bit syndrome circuit 6a calculates the syndrome calculation of the parity bit included in the multi-valued modulation symbol, that is, the syndrome data.
  • the information bit syndrome circuit 6b calculates the syndrome calculation of the information bits included in the multi-value modulation symbol, that is, the syndrome data (step S202). Specifically, the information bit syndrome circuit 6b performs a syndrome operation of the information bit included in the multivalued modulation symbol in which the parity bit included in the multivalued modulation symbol is replaced with the known bit, and the replaced known bit. .. As shown in FIG. 4, the bit widths input in parallel to the parity bit syndrome circuit 6a and the information bit syndrome circuit 6b are different.
  • the syndrome correction circuit 7 is calculated by the information bit syndrome circuit 6b.
  • the syndrome data is corrected by linear arithmetic processing (step S203).
  • the linear addition circuit 8 can obtain the syndrome data 10 as an error correction code sequence by linearly adding the syndrome data calculated by the parity bit syndrome circuit 6a and the syndrome data corrected by the syndrome correction circuit 7. can.
  • the error correction / decoding circuit 11 performs organizational block error correction / decoding (step S204). Specifically, the error correction / decoding circuit 11 uses the syndrome data 10 obtained by the linear addition circuit 8 and the m-bit information bit 9 acquired from the information bit syndrome circuit 6b, and is an error correction coding device. With a decoding method corresponding to the error correction coding method at 100A, the information bit sequence of m bits is decoded with a specified delay, that is, the error is corrected and output. As described above, the error correction / decoding circuit 11 indirectly performs error correction / decoding using the syndrome data calculated by the parity bit syndrome circuit 6a and the information bit syndrome circuit 6b.
  • the error correction decoding circuit 11 outputs the information bit sequence after decoding, and the information bit sequence after decoding also includes the known bits before coding in FIG. 1A. However, since the known bits do not contain errors, they do not affect the error correction capability.
  • the parity bit syndrome circuit 6a outputs the parity bit to the error correction / decoding circuit 11, so that the correction result of the parity bit is also obtained. Can be output.
  • [] indicates rounding up.
  • the error correction / decoding device 200A facilitates the error correction / decoding operation with low delay, high speed, and reduced circuit scale by parallel operation of m bits without breaking the bit configuration of the multi-valued modulation symbol on the input side. It can be carried out.
  • the number of bits m of the multi-valued modulation symbol is set to 3, but m may be other than 3 bits. Further, the same can be performed by setting the input / output in the error correction coding device 100A and the error correction decoding device 200A to Mm bits of M times m.
  • M be a positive integer.
  • the information bit length is an integral multiple of the Mm bit including the known bit.
  • the p-bit of the parity bit length of the error correction coding is also preferably an integral multiple of the M-bit, but if it is not divisible by the M-bit, for example, 0 fill bits may be added so that the p-bit is divisible by the M-bit.
  • the frame 1A shown in FIG. 1 is shown by one error correction code sequence, but it may be composed of a plurality of error correction code sequences.
  • the input / output in the error correction coding device 100A and the error correction decoding device 200A is Mm bits that are M times m, by configuring in parallel with error correction code parameters that divide M, it is possible to use multi-value modulation symbols. Burst error tolerance can be increased.
  • the number of bits input in parallel is m bits or a multiple of m bits, and the information bit length is divisible by m bits or a multiple of m bits.
  • the error correction coding circuit 2 generates parity bits by simultaneous calculation using bits input in parallel.
  • the configuration with a single error correction code has been described.
  • the bit error occurrence rate in the LSB1c in FIG. 1 is high, the information bit of the LSB1c is separately error-corrected as an internal code. It is also possible to apply a code.
  • the parity bit generated by the internal code can also be included in the bit region 1d shown in FIG.
  • the error correction coding device 100A sets the parity bit for error correction coding in the plurality of bits corresponding to the multivalued modulation symbol or the plurality of bits input in multiples thereof.
  • Known bits are assigned to the part to be assigned, and the known bits are also used as information bits, and are encoded by multiple-bit parallel processing in units of multiple bits corresponding to the multi-valued modulation symbol or multiple bits thereof.
  • the error correction coding apparatus 100A outputs the information bits other than the known bits of the portion to which the parity bit of the error correction coding is assigned as it is, and outputs the known bits by replacing the known bits with the parity bits of the error correction coding.
  • the error correction decoding apparatus 200A performs a syndrome operation by replacing the parity bit of the error correction coding with a known bit in the plurality of bits corresponding to the multi-valued modulation symbol or a plurality of bits input in multiples thereof, and also performs the error correction coding. A separate syndrome operation is performed on the parity bit of.
  • the error correction decoding apparatus 200A replaces the known bits, corrects the syndrome data obtained by the syndrome calculation, linearly adds the syndrome data obtained for the parity bit of the error correction coding, and linearly adds the syndrome data of the error correction code sequence. The syndrome data is obtained and the decoding process is performed.
  • the error correction coding device 100A suppresses an increase in circuit scale by parallel processing of a plurality of bits without changing the configuration of a plurality of bits corresponding to the multi-valued modulation symbol or a plurality of bits input in multiples thereof.
  • the coding processing delay time can be shortened, and the error correction coding processing can be performed at high speed with low delay.
  • the error correction / decoding device 200A suppresses an increase in circuit scale by parallel processing of a plurality of bits without changing the configuration of a plurality of bits corresponding to the multivalued modulation symbol or a plurality of bits input in multiples thereof.
  • the coding processing delay time can be shortened, and error correction / decoding processing can be performed at high speed with low delay.
  • the frame configuration is such that the error correction code sequence fits within the multi-value modulation symbol ⁇ n symbol of m bits including the parity bit, but the error correction code sequence may be continuously transmitted.
  • the parity bit generated by inputting the information bits in parallel with m bits including the known bit is changed to the known bit of the next error correction code sequence. replace.
  • the coding process can be performed with low delay, and the parity bit of the error correction coding is assigned to a symbol different from the information bit for the multi-valued modulation symbol error, so that the error is distributed. It can be planned.
  • FIG. 6 is a diagram showing a configuration example of frame 1B used in the error correction code according to the second embodiment.
  • Frame 1B is a frame that replaces the parity bit generated in the previous error correction code sequence with a known bit of the frame of the next error correction code sequence transmitted continuously.
  • the area for forming the frame configuration is the same as the frame configuration of the frame 1A shown in FIG. The difference is that in the MSB1a in which the parity bits of the error correction code sequence are arranged, the order of the bit area 1d and the information bit area 1e to which the known bits are assigned before coding is exchanged.
  • the bit region 1d to which known bits are assigned before coding is arranged toward the beginning of the error correction code sequence.
  • FIG. 7 is a block diagram showing a configuration example of the error correction coding device 100B according to the second embodiment.
  • FIG. 8 is a flowchart showing the operation of the error correction coding device 100B according to the second embodiment.
  • the error correction coding device 100B is obtained by deleting the delay memories 3b and 3c from the error correction coding device 100A shown in FIG.
  • the error correction coding circuit 2 In the error correction coding device 100B, the error correction coding circuit 2 generates a parity bit of the error correction code sequence (step S111) and stores it in the parity memory 3a.
  • the parity memory 3a outputs the parity bits according to the sequence order of the error correction code sequence.
  • the error correction coding circuit 2 inputs the start data of the known bits of the bit area 1d of the MSB1a of the next error correction code series in parallel at the timing when the first bit of the parity bit is output from the parity memory 3a.
  • the information bit of the intermediate bit 1b and the information bit of the LSB1c are output in parallel.
  • the selector 4 selects the parity bit output from the parity memory 3a or the bit of the MSB1a output from the error correction coding circuit 2 as the output bit (step S112). Specifically, when the parity bit is output from the parity memory 3a and the known bit is output from the error correction coding circuit 2, the selector 4 selects and outputs the parity bit from the parity memory 3a. In other cases, that is, when the information bit of the information bit region 1e is output from the error correction coding circuit 2, the selector 4 selects and outputs the information bit from the error correction coding circuit 2. As described above, the selector 4 uses the known bits of the second error correction code sequence after the first error correction code sequence as the parity bits generated from the first error correction code sequence in the error correction coding circuit 2. Replace with.
  • the error correction coding apparatus 100B replaces the known bits in the bit region 1d with the parity bits of the previous error correction code sequence with respect to the frame 1B before the error correction coding shown in FIG. 6A.
  • M-bit multi-valued modulation symbols can be output (step S113).
  • the error correction coding device 100B performs an error correction coding operation with low delay, high speed, and a reduced circuit scale by parallel operation of m bits without breaking the bit configuration of the multi-valued modulation symbol on the input side. It can be done easily.
  • FIG. 9 is a block diagram showing a configuration example of the error correction / decoding device 200B according to the second embodiment.
  • FIG. 10 is a flowchart showing the operation of the error correction / decoding device 200B according to the second embodiment.
  • the error correction / decoding device 200B is obtained by deleting the syndrome correction circuit 7 and the linear addition circuit 8 from the error correction / decoding device 200A shown in FIG. 4 and adding a delay memory 12.
  • the gates 5a and 5b perform output control on the bits of the MSB1a provided with the bit region 1d to which the parity bits are assigned, according to the bits of the received multi-value modulation symbol (step S211).
  • the parity bit syndrome circuit 6a calculates the syndrome calculation for the parity bit, that is, the syndrome data.
  • the information bit syndrome circuit 6b calculates the syndrome calculation for the information bit, that is, the syndrome data (step S212).
  • the input of the information bit is completed when the syndrome data for the information bit is calculated in the information bit syndrome circuit 6b.
  • the information bit syndrome circuit 6b outputs the syndrome data obtained by calculation to the parity bit syndrome circuit 6a.
  • the parity bit syndrome circuit 6a uses the syndrome data for the information bits acquired from the information bit syndrome circuit 6b, and uses the syndrome data of the error correction code sequence without passing through the syndrome correction circuit 7. Performs syndrome calculation.
  • the information bit syndrome circuit 6b performs a syndrome operation on the information bits of the next error correction code sequence. Further, the information bit syndrome circuit 6b outputs the information bit 9 in m bits.
  • the delay memory 12 adjusts the delay until the parity bit is input to the parity bit syndrome circuit 6a and the syndrome calculation of the error correction code sequence is completed.
  • the delay memory 12 may also be used as a memory included in the error correction decoding circuit 11 for adjusting the delay for the decoding process.
  • the error correction / decoding circuit 11 performs tissue type block error correction / decoding (step S213). After that, the operation is the same as that of the error correction / decoding device 200A of the first embodiment.
  • the information bit syndrome circuit 6b outputs the syndrome data obtained by the calculation to the parity bit syndrome circuit 6a.
  • the parity bit syndrome circuit 6a performs a parity bit syndrome calculation using the syndrome data acquired from the information bit syndrome circuit 6b.
  • the information bit syndrome circuit 6b performs a syndrome calculation on the information bits of the next error correction code sequence, that is, on the next multi-value modulation symbol, in parallel with the parity bit syndrome calculation in the parity bit syndrome circuit 6a.
  • the error correction coding apparatus 100B eliminates the need for the delay memories 3b and 3c of the information bits until the parity bits of the error correction code sequence are obtained, and the circuit scale. Can be made smaller. Further, since the error correction / decoding device 200B performs the operations of the syndrome correction circuit 7 and the linear addition circuit 8 included in the error correction / decoding device 200A of the first embodiment by the syndrome circuit 6a for the parity bit, the circuit scale can be reduced. can.
  • Embodiment 3 In the first embodiment and the second embodiment, the known bits are assigned to the bit area 1d before the parity bits of the error correction coding shown in FIG. 1 or 6 are assigned, but in the third embodiment, the known bits are assigned. Instead, make it a secret bit known only to the sender and legitimate recipients. As a result, only the legitimate receiver receives the correct data of the information bit through the communication path where the error occurs, and the unjust receiver can reproduce only a part of the data without the error, which differentiates the reception quality. be able to.
  • the case where it is applied to the first embodiment will be specifically described, but it can also be applied to the second embodiment.
  • FIG. 11 is a diagram showing a configuration example of the frame 1C used in the error correction code according to the third embodiment.
  • a secret bit of 0 of the p bit is assigned to the bit area 1d.
  • the state of FIG. 11B is the same as the state of FIG. 1B described above.
  • the secret bit area is assumed to be all 0 or all 1.
  • T + 1 bits or more of 1 and 0 bit patterns are incorrect and cannot be corrected.
  • the parity bit length required for one bit correction becomes large, and in the case of multiple bit correction, the parity bit length p bit becomes sufficiently larger than 2 ⁇ (t + 1).
  • FIG. 12 is a block diagram showing a configuration example of the error correction coding device 100C according to the third embodiment.
  • FIG. 13 is a flowchart showing the operation of the error correction coding device 100C according to the third embodiment.
  • the error correction coding device 100C is an error correction coding device 100A shown in FIG. 2 with a selector 21 added.
  • the selector 4 may be referred to as a first selector, and the selector 21 may be referred to as a second selector.
  • the selector 21 is a 2-input 1-output selector.
  • the selector 21 selects the secret bit 20 and outputs it to the error correction coding circuit 2 (step S121).
  • the selector 21 selects the information bit and outputs it to the error correction coding circuit 2.
  • the selector 21 replaces the area to which the known bits are assigned in the error correction code sequence, that is, the bit corresponding to the bit area 1d, with the secret bit 20, and outputs the error correction coding circuit 2.
  • steps S122 to S125 are the same as the operations of steps S101 to S104 shown in FIG.
  • FIG. 14 is a block diagram showing a configuration example of the error correction / decoding device 200C according to the third embodiment.
  • FIG. 15 is a flowchart showing the operation of the error correction / decoding device 200C according to the third embodiment.
  • the error correction decoding device 200C the area to which the known bits are assigned before the error correction coding in the error correction coding device 100C, that is, the bit corresponding to the bit area 1d is replaced with the secret bit 20 and the error correction coding is performed. Decrypts the multi-valued modulation symbol.
  • the error correction / decoding device 200C is obtained by deleting the gate 5b from the error correction / decoding device 200A shown in FIG. 4 and adding a selector 22.
  • step S221 for the gate 5a is the same as the operation of step S201 shown in FIG.
  • the selector 22 is a 2-input 1-output selector.
  • the selector 22 selects the secret bit 20 and outputs the secret bit 20 to the information bit syndrome circuit 6b (step S222).
  • the selector 22 selects the information bit and outputs it to the information bit syndrome circuit 6b.
  • Subsequent operations from step S223 to step S225 are the same as the operations from step S202 to step S204 shown in FIG. However, in step S223, the information bit syndrome circuit 6b performs the syndrome calculation using the secret bit 20 instead of the known bit.
  • the error correction coding device 100C and the error correction decoding device 200C can handle the secret bit 20 by a simple modification from the error correction coding device 100A and the error correction decoding device 200A, and can receive legitimate reception. It is possible to differentiate the reception quality between the person and the unjust recipient.
  • Embodiment 4 The hardware configurations of the error correction coding devices 100A, 100B, 100C and the error correction decoding devices 200A, 200B, 200C described in the first to third embodiments will be described.
  • the error correction coding devices 100A, 100B, 100C and the error correction decoding devices 200A, 200B, 200C are realized by a processing circuit.
  • the processing circuit may be a processor and memory for executing a program stored in the memory, or may be dedicated hardware.
  • the processing circuit is also called a control circuit.
  • FIG. 16 shows a processing circuit when the processing circuits included in the error correction coding devices 100A, 100B, 100C and the error correction decoding devices 200A, 200B, 200C according to the first to third embodiments are realized by a processor and a memory. It is a figure which shows the structural example of 90.
  • the processing circuit 90 shown in FIG. 16 is a control circuit and includes a processor 91 and a memory 92.
  • each function of the processing circuit 90 is realized by software, firmware, or a combination of software and firmware.
  • the software or firmware is written as a program and stored in the memory 92.
  • each function is realized by the processor 91 reading and executing the program stored in the memory 92.
  • the processing circuit 90 is a memory 92 for storing a program in which any of the error correction coding devices 100A, 100B, 100C and the error correction decoding device 200A, 200B, 200C is to be executed as a result.
  • this program is a program for executing each function realized by the processing circuit 90 by any of the error correction coding devices 100A, 100B, 100C and the error correction decoding devices 200A, 200B, 200C.
  • This program may be provided by a storage medium in which the program is stored, or may be provided by other means such as a communication medium.
  • the processor 91 is, for example, a CPU (Central Processing Unit), a processing device, an arithmetic unit, a microprocessor, a microcomputer, a DSP (Digital Signal Processor), or the like.
  • the memory 92 is, for example, non-volatile or volatile such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM). This includes semiconductor memory, magnetic disks, flexible disks, optical disks, compact disks, mini disks, DVDs (Digital Versatile Disc), and the like.
  • FIG. 17 shows processing when the processing circuits included in the error correction coding devices 100A, 100B, 100C and the error correction / decoding devices 200A, 200B, 200C according to the first to third embodiments are configured by dedicated hardware. It is a figure which shows the example of the circuit 93.
  • the processing circuit 93 shown in FIG. 17 is, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a combination thereof. The thing is applicable.
  • the processing circuit a part may be realized by dedicated hardware and a part may be realized by software or firmware. As described above, the processing circuit can realize each of the above-mentioned functions by the dedicated hardware, software, firmware, or a combination thereof.
  • the configuration shown in the above embodiments is an example, and can be combined with another known technique, can be combined with each other, and does not deviate from the gist. It is also possible to omit or change a part of the configuration.
  • 1A, 1B, 1C frame 1a MSB, 1b intermediate bit, 1c LSB, 1d bit area, 1e information bit area, 2 error correction coding circuit, 3a parity memory, 3b, 3c, 12 delay memory, 4,21,22 Selector, 5a, 5b gate, 6a parity bit syndrome circuit, 6b information bit syndrome circuit, 7 syndrome correction circuit, 8 linear addition circuit, 9 information bit, 10 syndrome data, 11 error correction decoding circuit, 20 secret bit, 100A , 100B, 100C Error correction coding device.

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)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化を行う誤り訂正符号化装置(100A)であって、誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットを含むmビット×nシンボルを情報ビットとして誤り訂正符号化を行い、誤り訂正符号化のパリティビットを生成する誤り訂正符号化回路(2)と、誤り訂正符号系列の既知ビットをパリティビットに置き換えるセレクタ(4)と、を備える。

Description

誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法
 本開示は、誤り訂正符号化処理を行う誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法に関する。
 光伝送システムなどの高速な伝送装置においては、高い伝送容量および長距離の伝送を実現するための有効な方法として、一般的に、誤り訂正符号が適用されている。誤り訂正符号は、有線通信システム、無線通信システム、記憶装置などで使用される技術である。誤り訂正符号は、送信装置が送り出すデジタルデータに冗長なビットを付加することで、受信装置が、受信したデータに誤りが生じたとしても誤りを訂正可能とする技術である。誤り訂正符号および誤り訂正復号の方式として、ハミング符号、BCH(Bose-Chaudhuri-Hocquenghem)符号、RS(Reed-Solomon)符号、LDPC(Low Density Parity Check)符号などのブロック符号、また、これらを組み合わせた積符号、連接符号など様々な方式が提案されている。
 誤り訂正符号を適用することで、伝送路で生じる誤りの検出および訂正が可能となる。しかしながら、誤り訂正可能な誤りビット数には限界がある。また、誤り訂正符号方式の誤り訂正性能、および復号方式によって、誤り訂正可能な誤りビット数は異なる。誤り訂正符号において、フレームを構成するオーバーヘッドなどを含む送信データを、情報ビットと呼ぶ。また、情報ビットに付加される冗長ビットを、パリティビットと呼ぶ。パリティビットは、誤り訂正の符号方式によって、それぞれ異なる算出方法により、情報ビットから算出される。情報ビットとパリティビットとを合わせたビット列を、符号語と呼ぶ。
 ブロック符号と呼ばれる誤り訂正符号では、あらかじめ設定されたビット数の単位で、情報ビットからパリティビットが算出される。すなわち、1つの符号語内の情報ビット数およびパリティビット数は、あらかじめ決められており、それぞれ、情報ビット長、およびパリティビット長と呼ばれる。誤り訂正符号のビット構成が情報ビットおよびパリティビットに分かれる符号構成を組織符号と呼ぶ。また、符号語のビット数を符号長と呼ぶ。
 海底ケーブルおよび都市間通信に用いられるコアメトロ系光伝送システムにおいて、伝送容量の拡大および伝送距離の拡大の需要が顕著である。この結果、数百Gbpsから1Tbpsなどの高速伝送に対して、強力な誤り訂正符号の適用および提案が行われている。近年、コアメトロ系光伝送システムにおいて、高速伝送に対して64QAM(Quadrature Amplitude Modulation)などの多値変調方式により1変調シンボルに複数ビットを変調して伝送するデジタルコヒーレント光伝送が用いられてきている。
 64QAMなどの多値変調においては、シンボルの各ビットの誤り率が異なっており、それらの特性に応じてシンボルに割り当てられるビット系列ごとに誤り訂正符号化を行う符号化変調方式、マルチレベル符号化方式などが提案されている。特許文献1には、誤り訂正の符号化および復号、特にBCH符号、RS符号、LDPC符号などのブロック符号では高速処理を行うために、複数ビットの入力に対して符号化処理または復号処理の演算を行う技術が開示されている。また、近年、多値変調シンボルのビットの誤り率の大きいビット系列に対して、確率整形(以下、PS(Probabilistic signal Shaping)と称する。)などによりビット操作を行い、シンボル誤り率を小さくする方法が提案されている。確率整形操作は、誤り訂正符号化前に行われ、誤り訂正符号化によって生成されるパリティビットをビット誤り率の小さい多値変調シンボルに割り当てている。
特許第3288883号公報
 近年の光伝送システムでは、伝送容量の拡大に伴って処理能力の高速化が求められている。多値変調シンボルの各ビット系列をそのまま並列入力して符号化処理することで高速化が図れるが、多値変調シンボルの1ビット系列を逐次符号化型のパリティに割り当てるような方式では効率が悪い。多値変調シンボルのビット系列ごとにブロック符号化することで並列処理ができるが、それぞれに符号化回路を要し、回路規模が増大する。
 特許文献1では、多値変調シンボルの複数ビットを並列入力して並列一括符号化処理を行うことができるが、誤り訂正符号化によるパリティもシンボルの複数ビット並列出力となる。しかしながら、PSなどによって誤り訂正符号化前に多値変調シンボルの特定ビット系列を調整している場合、誤り訂正符号化によるパリティは確率整形を行わない特定ビット系列に割り当てることとなり、符号化処理を行う回路の前後にフレーム調整用のメモリを用意してフレーム整形を行うことになり、回路規模が増大する。
 本開示は、上記に鑑みてなされたものであって、回路規模の増大を抑制しつつ、低遅延で誤り訂正符号化処理を行うことが可能な誤り訂正符号化装置を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本開示は、mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化を行う誤り訂正符号化装置である。誤り訂正符号化装置は、誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットを含むmビット×nシンボルを情報ビットとして誤り訂正符号化を行い、誤り訂正符号化のパリティビットを生成する誤り訂正符号化回路と、誤り訂正符号系列の既知ビットをパリティビットに置き換えるセレクタと、を備えることを特徴とする。
 本開示に係る誤り訂正符号化装置は、回路規模の増大を抑制しつつ、低遅延で誤り訂正符号化処理を行うことができる、という効果を奏する。
実施の形態1に係る誤り訂正符号で使用されるフレームの構成例を示す図 実施の形態1に係る誤り訂正符号化装置の構成例を示すブロック図 実施の形態1に係る誤り訂正符号化装置の動作を示すフローチャート 実施の形態1に係る誤り訂正復号装置の構成例を示すブロック図 実施の形態1に係る誤り訂正復号装置の動作を示すフローチャート 実施の形態2に係る誤り訂正符号で使用されるフレームの構成例を示す図 実施の形態2に係る誤り訂正符号化装置の構成例を示すブロック図 実施の形態2に係る誤り訂正符号化装置の動作を示すフローチャート 実施の形態2に係る誤り訂正復号装置の構成例を示すブロック図 実施の形態2に係る誤り訂正復号装置の動作を示すフローチャート 実施の形態3に係る誤り訂正符号で使用されるフレームの構成例を示す図 実施の形態3に係る誤り訂正符号化装置の構成例を示すブロック図 実施の形態3に係る誤り訂正符号化装置の動作を示すフローチャート 実施の形態3に係る誤り訂正復号装置の構成例を示すブロック図 実施の形態3に係る誤り訂正復号装置の動作を示すフローチャート 実施の形態1から実施の形態3に係る誤り訂正符号化装置および誤り訂正復号装置が備える処理回路をプロセッサおよびメモリで実現する場合の処理回路の構成例を示す図 実施の形態1から実施の形態3に係る誤り訂正符号化装置および誤り訂正復号装置が備える処理回路を専用のハードウェアで構成する場合の処理回路の例を示す図
 以下に、本開示の実施の形態に係る誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの開示が限定されるものではない
実施の形態1.
 図1は、実施の形態1に係る誤り訂正符号で使用されるフレーム1Aの構成例を示す図である。ここでは、誤り訂正符号として、BCH符号、RS符号、LDPC符号などのブロック符号で、情報ビットおよびパリティビットが分離されている組織符号を想定している。図1では、mビット×nシンボルのフレーム1A内に誤り訂正符号系列があり、多値変調シンボルのビット数mをm=3としている。なお、mおよびnは正の整数とする。フレーム1Aにおいて、MSB(Most Significant Bit)1aに、情報ビットが割り当てられる情報ビット領域1e、およびpビット分のビット領域1dが設けられている。図1(a)に示すように、誤り訂正符号化前において、ビット領域1dには、例えば、pビットの0の既知ビットが割り当てられる。本実施の形態では、既知ビットも誤り訂正符号系列の情報ビットとして扱い、mビット×nシンボルの情報ビットに対して誤り訂正符号化を行う。また、図1(b)に示すように、誤り訂正符号化後において、ビット領域1dには、pビットのパリティビットが割り当てられる。フレーム1Aにおいて、中間ビット1bおよびLSB(Least Significant Bit)1cは、例えば、PSによって変換された情報ビットのみの構成としている。
 本実施の形態では、後述する誤り訂正符号化装置において、誤り訂正符号化によってpビットのパリティビットが生成されると、MSB1aにあるpビットのビット領域1dの既知ビットを、生成されたパリティビットに置き換える。MSB1aの情報ビット領域1e、中間ビット1b、およびLSB1cの情報ビットは、そのまま誤り訂正符号化装置の後段に出力される。すなわち、本実施の形態において、誤り訂正符号の符号長はm×n+pビットとなる。
 図1(a)に示す誤り訂正符号化前のフレーム1Aに対して誤り訂正符号化を行う誤り訂正符号化装置の構成および動作について説明する。図2は、実施の形態1に係る誤り訂正符号化装置100Aの構成例を示すブロック図である。図3は、実施の形態1に係る誤り訂正符号化装置100Aの動作を示すフローチャートである。誤り訂正符号化装置100Aは、図1(a)に示す誤り訂正符号化前のフレーム1Aに対して、誤り訂正符号化を行う装置である。誤り訂正符号化装置100Aには、多値変調シンボルのビット数m=3に合わせて、情報ビット系列の3ビットが並列入力される。なお、誤り訂正符号化装置100Aに入力されるフレーム1Aのビット領域1dにはあらかじめpビットの既知ビットが割り当てられていることとするが、これに限定されない。誤り訂正符号化装置100Aは、フレーム1Aが入力されたとき、ビット領域1dに割り当てられているビットを既知ビットに置き換えるようにしてもよい。
 誤り訂正符号化装置100Aは、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化を行う。誤り訂正符号化装置100Aは、誤り訂正符号化回路2と、パリティメモリ3aと、遅延メモリ3b,3cと、セレクタ4と、を備える。
 誤り訂正符号化回路2は、組織型ブロック誤り訂正符号化を行う。誤り訂正符号化回路2は、入力されたビットについては既知ビットを含めて情報ビットとして、誤り訂正符号系列のパリティビットを生成する(ステップS101)。誤り訂正符号化回路2は、パリティビットの生成処理について、シリアルで行ってもよいし、mビットが全て情報ビットとなるため並列演算も容易にできる。誤り訂正符号化回路2は、シリアル処理ではmビットのシンボル入力のクロック周波数に対してm倍のクロック周波数が必要であるが、誤り訂正符号演算の線形性を利用したmビット並列処理演算を行えば、シンボル入力のクロック周波数で符号化演算を行うことができる。
 誤り訂正符号化回路2は、入力されたmビットの情報ビットを、そのまま遅延メモリ3b,3cに出力する。具体的には、誤り訂正符号化回路2は、MSB1aの情報ビット領域1eの情報ビットを遅延メモリ3bに出力し、中間ビット1bの情報ビットおよびLSB1cの情報ビット、すなわちm-1ビットの情報ビットを遅延メモリ3cに出力する。このように、誤り訂正符号化回路2は、誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットを含むmビット×nシンボルを情報ビットとして誤り訂正符号化を行い、誤り訂正符号化のパリティビットを生成する。
 遅延メモリ3b,3cは、少なくとも誤り訂正符号化回路2で誤り訂正符号系列のパリティビットが生成されるまでの間、mビットの情報ビットを遅延させる(ステップS102)。
 誤り訂正符号化回路2は、誤り訂正符号系列を構成する情報ビットが全て入力されたところで、誤り訂正符号系列のpビットのパリティビットを生成することができる。誤り訂正符号化回路2は、生成したパリティビットをパリティメモリ3aに記憶させる。これにより、誤り訂正符号化装置100Aは、次の符号系列となるmビットの情報ビット系列が誤り訂正符号化回路2に入力されても、同じ誤り訂正符号化回路2でパリティビットの生成を行うことができる。
 パリティメモリ3aは、パリティビットを誤り訂正符号系列の系列順に従って出力する。このとき、遅延メモリ3bは、パリティメモリ3aからパリティビットの先頭ビットが出力されるタイミングで、既知ビットの先頭ビットを出力する。また、遅延メモリ3cは、パリティメモリ3aからパリティビットの先頭ビットが出力されるタイミングで、既知ビットの先頭ビットと同時に入力された図1に示す中間ビット1bおよびLSB1cにあたる情報ビットを出力する。
 セレクタ4は、2入力1出力のセレクタである。セレクタ4は、出力するビットとして、パリティメモリ3aから出力されるパリティビット、または遅延メモリ3bから出力されるMSB1aのビットを選択する(ステップS103)。具体的には、セレクタ4は、パリティメモリ3aからパリティビットが出力され、遅延メモリ3bから既知ビットが出力されている場合、パリティメモリ3aからのパリティビットを選択して出力する。セレクタ4は、その他の場合、すなわち遅延メモリ3bから情報ビット領域1eの情報ビットが出力されている場合、遅延メモリ3bからの情報ビットを選択して出力する。このように、セレクタ4は、誤り訂正符号系列の既知ビットをパリティビットに置き換える。
 この結果、誤り訂正符号化装置100Aは、図1(a)に示す誤り訂正符号化前のフレーム1Aに対して、ビット領域1dの既知ビットをパリティビットに置き換えて、mビットの多値変調シンボルを出力することができる(ステップS104)。
 これにより、誤り訂正符号化装置100Aは、入力側において多値変調シンボルのビット構成を崩すことなく、mビットの並列演算によって、低遅延で高速、かつ回路規模を抑えて誤り訂正符号化演算を容易に行うことができる。
 つぎに、誤り訂正符号化装置100Aから送信された多値変調シンボルを受信して復号を行う誤り訂正復号装置の構成および動作について説明する。図4は、実施の形態1に係る誤り訂正復号装置200Aの構成例を示すブロック図である。図5は、実施の形態1に係る誤り訂正復号装置200Aの動作を示すフローチャートである。誤り訂正復号装置200Aは、図1(b)に示す誤り訂正符号化後のフレーム1Aに対して、すなわちmビット並列で入力される多値変調シンボルに対して、誤り訂正復号を行う装置である。誤り訂正復号装置200Aには、多値変調シンボルのビット数m=3の3ビットが並列入力される。誤り訂正復号装置200Aは、ゲート5a,5bと、パリティビット用シンドローム回路6aと、情報ビット用シンドローム回路6bと、シンドローム補正回路7と、線形加算回路8と、誤り訂正復号回路11と、を備える。
 ゲート5a,5bは、パリティビットが割り当てられているビット領域1dが設けられたMSB1aのビットに対して、受信された多値変調シンボルのビットに応じて、出力制御を行う(ステップS201)。具体的には、ゲート5aは、図1(b)に示すビット領域1dに割り当てられた誤り訂正符号化のパリティビットが入力された場合、パリティビットを通過させてパリティビット用シンドローム回路6aに出力する。ゲート5bは、図1(b)に示すビット領域1dに割り当てられた誤り訂正符号化のパリティビットが入力された場合、図1(a)に示すビット領域1dに割り当てられていた既知ビット、例えば、既知ビットが全て0の場合は0を情報ビット用シンドローム回路6bに出力する。ゲート5bは、図1に示す情報ビット領域1eの情報ビットが入力された場合、情報ビットを通過させて情報ビット用シンドローム回路6bに出力する。
 誤り訂正復号装置200Aは、ゲート5bが情報ビット領域1eの情報ビットを情報ビット用シンドローム回路6bに出力するのと並行して、図1に示す中間ビット1bおよびLSB1cにあたるm-1ビットの情報ビットを情報ビット用シンドローム回路6bに出力する。
 図1(b)に示す誤り訂正符号化後のフレーム1Aが入力されたところで、パリティビット用シンドローム回路6aは、多値変調シンボルに含まれるパリティビットのシンドローム演算、すなわちシンドロームデータを演算する。同様に、情報ビット用シンドローム回路6bは、多値変調シンボルに含まれる情報ビットのシンドローム演算、すなわちシンドロームデータを演算する(ステップS202)。情報ビット用シンドローム回路6bは、具体的には、多値変調シンボルに含まれるパリティビットが既知ビットに置き換えられた多値変調シンボルに含まれる情報ビット、および置き換えられた既知ビットのシンドローム演算を行う。なお、図4に示すように、パリティビット用シンドローム回路6aおよび情報ビット用シンドローム回路6bに並列入力されるビット幅は、異なることになる。
 ここで、情報ビット用シンドローム回路6bにある既知ビットを含む情報ビットについてのシンドロームデータにパリティビット入力分のシンドローム演算の補正がある場合、シンドローム補正回路7は、情報ビット用シンドローム回路6bで演算されたシンドロームデータを、線形演算処理によって補正する(ステップS203)。線形加算回路8は、パリティビット用シンドローム回路6aで演算されたシンドロームデータとシンドローム補正回路7で補正されたシンドロームデータとを線形加算することで、誤り訂正符号系列としてのシンドロームデータ10を得ることができる。
 誤り訂正復号回路11は、組織型ブロック誤り訂正復号を行う(ステップS204)。具体的には、誤り訂正復号回路11は、線形加算回路8で得られたシンドロームデータ10と、情報ビット用シンドローム回路6bから取得したmビットの情報ビット9とを用いて、誤り訂正符号化装置100Aでの誤り訂正符号化方式に対応した復号方式によって、規定された遅延をもって、mビットの情報ビット系列を復号、すなわち誤りを訂正して出力する。このように、誤り訂正復号回路11は、間接的には、パリティビット用シンドローム回路6aおよび情報ビット用シンドローム回路6bで演算されたシンドロームデータを用いて、誤り訂正復号を行うことになる。
 ここで、誤り訂正復号回路11は、復号後の情報ビット系列を出力しているが、復号後の情報ビット系列には図1(a)における符号化前の既知ビットも含まれる。ただし、既知ビットには誤りが含まれないので、誤り訂正能力には影響しない。
 また、誤り訂正復号回路11は、誤り訂正符号化のパリティビットを出力していないが、パリティビット用シンドローム回路6aが誤り訂正復号回路11にパリティビットを出力することで、パリティビットの訂正結果も出力することができる。このとき、pビットのパリティビットはmビット単位で出力するのが望ましく、少なくとも[p/m]分のクロックアップを行うことで、mビット並列での誤り位置推定探索及び訂正処理を効率よく行うことができる。なお、[ ]は端数の切り上げを示すものとする。
 これにより、誤り訂正復号装置200Aは、入力側において多値変調シンボルのビット構成を崩すことなく、mビットの並列演算によって、低遅延で高速、かつ回路規模を抑えて誤り訂正復号演算を容易に行うことができる。
 なお、本実施の形態では、多値変調シンボルのビット数mを3としたが、mは3ビット以外であってもよい。また、誤り訂正符号化装置100Aおよび誤り訂正復号装置200Aにおける入出力をmのM倍のMmビットとしても同様のことができる。Mは正の整数とする。ただし、情報ビット長は、既知ビットを含めMmビットの整数倍とする。また、誤り訂正符号化のパリティビット長のpビットもMビットの整数倍が望ましいが、Mビットで割り切れない場合、例えば、0フィルビットを足してMビットで割り切れるようにすればよい。
 本実施の形態では、図1に示すフレーム1Aを1つの誤り訂正符号系列で示したが、複数の誤り訂正符号系列から構成してもよい。誤り訂正符号化装置100Aおよび誤り訂正復号装置200Aにおける入出力をmのM倍のMmビットとした場合、Mが割り切れるような誤り訂正符号パラメータで並列に構成することで、多値変調シンボルでのバースト誤り耐性を強くすることができる。例えば、誤り訂正符号化装置100Aでは、並列入力されるビット数はmビットまたはmビットの倍数になり、情報ビット長はmビットまたはmビットの倍数で割り切れることになる。この場合、誤り訂正符号化回路2は、並列入力されるビットを用いて同時演算でパリティビットを生成する。
 また、本実施の形態では、単独の誤り訂正符号での構成について説明したが、例えば、図1におけるLSB1cでのビット誤り発生率が高い場合、LSB1cの情報ビットに対して内符号として別途誤り訂正符号をかけることも可能である。内符号で生成されるパリティビットについても、図1に示すビット領域1dに含めることが可能である。
 以上説明したように、本実施の形態によれば、誤り訂正符号化装置100Aは、多値変調シンボルに対応する複数ビットまたはその倍数で入力される複数ビットにおいて、誤り訂正符号化のパリティビットを割り当てる部分に既知ビットを割り当て、既知ビットも情報ビットとして、多値変調シンボルに対応する複数ビットまたはその倍数で入力される複数ビット単位で、複数ビット並列処理で符号化する。誤り訂正符号化装置100Aは、誤り訂正符号化のパリティビットを割り当てる部分の既知ビット以外の情報ビットはそのまま出力し、既知ビットを誤り訂正符号化のパリティビットに置き換えて出力する。
 誤り訂正復号装置200Aは、多値変調シンボルに対応する複数ビットまたはその倍数で入力される複数ビットにおいて、誤り訂正符号化のパリティビットを既知ビットに置き換えてシンドローム演算を行うとともに、誤り訂正符号化のパリティビットについて別にシンドローム演算を行う。誤り訂正復号装置200Aは、既知ビットに置き換え、シンドローム演算で得られたシンドロームデータに対して補正を行い、誤り訂正符号化のパリティビットについて得たシンドロームデータを線形加算して、誤り訂正符号系列のシンドロームデータを得て復号処理を行う。
 これにより、誤り訂正符号化装置100Aは、多値変調シンボルに対応する複数ビットまたはその倍数で入力される複数ビットの構成を変えることなく、複数ビットの並列処理によって、回路規模の増大を抑制しつつ、符号化の処理遅延時間を短くして、低遅延で高速に誤り訂正符号化処理を行うことができる。同様に、誤り訂正復号装置200Aは、多値変調シンボルに対応する複数ビットまたはその倍数で入力される複数ビットの構成を変えることなく、複数ビットの並列処理によって、回路規模の増大を抑制しつつ、符号化の処理遅延時間を短くして、低遅延で高速に誤り訂正復号処理を行うことができる。
実施の形態2.
 実施の形態1では、誤り訂正符号系列がパリティビットを含めてmビットの多値変調シンボル×nシンボル内に収まるフレーム構成であったが、誤り訂正符号系列が連続して送られる場合もある。実施の形態2では、誤り訂正符号系列が連続して送られる場合において、既知ビットを含むmビット並列の情報ビットが入力されて生成されるパリティビットを、次の誤り訂正符号系列の既知ビットに置き換える。これにより、符号化処理を低遅延で行うことができ、また、多値変調シンボル誤りに対して、誤り訂正符号化のパリティビットが情報ビットと異なるシンボルに割り当てられることから、誤りの分散化が図れる。
 図6は、実施の形態2に係る誤り訂正符号で使用されるフレーム1Bの構成例を示す図である。フレーム1Bは、前の誤り訂正符号系列で生成されたパリティビットを、連続して送られる次の誤り訂正符号系列のフレームの既知ビットに置き換えるフレームである。図6に示すフレーム1Bにおいて、フレーム構成を作る領域は、図1に示すフレーム1Aのフレーム構成と同様である。相違点は、誤り訂正符号系列のパリティビットを配置するMSB1aにおいて、符号化前に既知ビットが割り当てられているビット領域1dおよび情報ビット領域1eの順序が入れ替わっている。図6に示すフレーム1Bでは、符号化前に既知ビットが割り当てられているビット領域1dが誤り訂正符号系列の先頭の方に配置されている。
 図6(a)に示す誤り訂正符号化前のフレーム1Bに対して誤り訂正符号化を行う誤り訂正符号化装置の構成および動作について説明する。図7は、実施の形態2に係る誤り訂正符号化装置100Bの構成例を示すブロック図である。図8は、実施の形態2に係る誤り訂正符号化装置100Bの動作を示すフローチャートである。誤り訂正符号化装置100Bは、図2に示す誤り訂正符号化装置100Aから遅延メモリ3b,3cを削除したものである。
 誤り訂正符号化装置100Bでは、誤り訂正符号化回路2が、誤り訂正符号系列のパリティビットを生成し(ステップS111)、パリティメモリ3aに記憶させる。パリティメモリ3aは、パリティビットを誤り訂正符号系列の系列順に従って出力する。このとき、誤り訂正符号化回路2は、パリティメモリ3aからパリティビットの先頭ビットが出力されるタイミングで、次の誤り訂正符号系列のMSB1aのビット領域1dの既知ビットの先頭データ、並行して入力された中間ビット1bの情報ビット、およびLSB1cの情報ビットを並行して出力する。
 セレクタ4は、出力するビットとして、パリティメモリ3aから出力されるパリティビット、または誤り訂正符号化回路2から出力されるMSB1aのビットを選択する(ステップS112)。具体的には、セレクタ4は、パリティメモリ3aからパリティビットが出力され、誤り訂正符号化回路2から既知ビットが出力されている場合、パリティメモリ3aからのパリティビットを選択して出力する。セレクタ4は、その他の場合、すなわち誤り訂正符号化回路2から情報ビット領域1eの情報ビットが出力されている場合、誤り訂正符号化回路2からの情報ビットを選択して出力する。このように、セレクタ4は、第1の誤り訂正符号系列より後の第2の誤り訂正符号系列の既知ビットを、誤り訂正符号化回路2において第1の誤り訂正符号系列から生成されたパリティビットに置き換える。
 この結果、誤り訂正符号化装置100Bは、図6(a)に示す誤り訂正符号化前のフレーム1Bに対して、ビット領域1dの既知ビットを、前の誤り訂正符号系列のパリティビットに置き換えて、mビットの多値変調シンボルを出力することができる(ステップS113)。
 これにより、誤り訂正符号化装置100Bは、入力側において多値変調シンボルのビット構成を崩すことなく、mビットの並列演算によって、低遅延で高速、かつ回路規模を抑えて誤り訂正符号化演算を容易に行うことができる。
 つぎに、誤り訂正符号化装置100Bから送信された多値変調シンボルを受信して復号を行う誤り訂正復号装置の構成および動作について説明する。図9は、実施の形態2に係る誤り訂正復号装置200Bの構成例を示すブロック図である。図10は、実施の形態2に係る誤り訂正復号装置200Bの動作を示すフローチャートである。誤り訂正復号装置200Bは、図4に示す誤り訂正復号装置200Aからシンドローム補正回路7および線形加算回路8を削除し、遅延メモリ12を追加したものである。
 ゲート5a,5bは、パリティビットが割り当てられているビット領域1dが設けられたMSB1aのビットに対して、受信された多値変調シンボルのビットに応じて、出力制御を行う(ステップS211)。パリティビット用シンドローム回路6aは、パリティビットについてのシンドローム演算、すなわちシンドロームデータを演算する。同様に、情報ビット用シンドローム回路6bは、情報ビットについてのシンドローム演算、すなわちシンドロームデータを演算する(ステップS212)。
 誤り訂正復号装置200Bでは、情報ビット用シンドローム回路6bにおいて情報ビットについてのシンドロームデータが演算された時点で情報ビットの入力は終了している。なお、情報ビット用シンドローム回路6bは、演算により求めたシンドロームデータをパリティビット用シンドローム回路6aに出力する。パリティビット用シンドローム回路6aは、パリティビット系列が入力されると、情報ビット用シンドローム回路6bから取得した情報ビットについてのシンドロームデータを用いて、シンドローム補正回路7を通すことなく、誤り訂正符号系列のシンドローム演算を行う。
 同時に、情報ビット用シンドローム回路6bは、次の誤り訂正符号系列の情報ビットについてのシンドローム演算を行う。また、情報ビット用シンドローム回路6bは、情報ビット9をmビット出力する。遅延メモリ12は、パリティビット用シンドローム回路6aにパリティビットが入力されて誤り訂正符号系列のシンドローム演算が終了するまでの遅延を調整する。なお、遅延メモリ12は、誤り訂正復号回路11に含まれる、復号処理のための遅延を調整するためのメモリと兼用としてもよい。誤り訂正復号回路11は、組織型ブロック誤り訂正復号を行う(ステップS213)。以降は、実施の形態1の誤り訂正復号装置200Aと同様の動作である。このように、実施の形態2では、情報ビット用シンドローム回路6bは、演算により求めたシンドロームデータをパリティビット用シンドローム回路6aに出力する。パリティビット用シンドローム回路6aは、情報ビット用シンドローム回路6bから取得したシンドロームデータを用いてパリティビットのシンドローム演算を行う。情報ビット用シンドローム回路6bは、パリティビット用シンドローム回路6aにおけるパリティビットのシンドローム演算と並行して、次の誤り訂正符号系列の情報ビットについて、すなわち次の多値変調シンボルについてシンドローム演算を行う。
 以上説明したように、実施の形態2のフレーム構成によって、誤り訂正符号化装置100Bは、誤り訂正符号系列のパリティビットが得られるまでの情報ビットの遅延メモリ3b,3cが不要になり、回路規模を小さくすることができる。また、誤り訂正復号装置200Bは、実施の形態1の誤り訂正復号装置200Aが備えるシンドローム補正回路7および線形加算回路8の演算をパリティビット用シンドローム回路6aで行うため、回路規模を小さくすることができる。
 なお、実施の形態2においても、実施の形態1で示した種々の機能の拡張が同様にできることは言うまでもない。
実施の形態3.
 実施の形態1および実施の形態2では、図1または図6に示す誤り訂正符号化のパリティビットを割り当てる前のビット領域1dに既知ビットを割り当てていたが、実施の形態3では、既知ビットに替えて、送信者および正当な受信者だけが知る秘密ビットにする。これにより、正当な受信者だけが誤りの発生する通信路と通した情報ビットの正しいデータを受け取り、不当な受信者は誤りがない一部のデータしか再現できなくなり、受信品質の差別化を行うことができる。以下では、具体的に、実施の形態1に適用する場合について説明するが、実施の形態2にも適用可能である。
 図11は、実施の形態3に係る誤り訂正符号で使用されるフレーム1Cの構成例を示す図である。図11(a)に示すように、誤り訂正符号化前において、ビット領域1dには、例えば、pビットの0の秘密ビットが割り当てられる。なお、図11(b)の状態は、前述の図1(b)の状態と同様である。例えば、BCH符号では、tビット訂正の誤り訂正符号を用いている場合、t+1ビット以上の1および0のビットパターンの秘密ビットにすれば、秘密ビット領域を全0あるいは全1に仮定したとしても、t+1ビット以上の1および0のビットパターンのいずれかが誤りとなって訂正ができない。情報ビット長の大きいBCH符号では、1ビット訂正あたりに要するパリティビット長は大きくなり、複数ビット訂正にすると、パリティビット長pビットは、2×(t+1)より十分大きくなる。
 図11(a)に示す誤り訂正符号化前のフレーム1Cに対して誤り訂正符号化を行う誤り訂正符号化装置の構成および動作について説明する。図12は、実施の形態3に係る誤り訂正符号化装置100Cの構成例を示すブロック図である。図13は、実施の形態3に係る誤り訂正符号化装置100Cの動作を示すフローチャートである。誤り訂正符号化装置100Cは、図2に示す誤り訂正符号化装置100Aに、セレクタ21を追加したものである。以降の説明において、セレクタ4を第1のセレクタと称し、セレクタ21を第2のセレクタと称することがある。
 セレクタ21は、2入力1出力のセレクタである。セレクタ21は、図11(a)に示すビット領域1dに相当するビットが入力された場合、秘密ビット20を選択して誤り訂正符号化回路2に出力する(ステップS121)。セレクタ21は、図11(a)に示す情報ビット領域1eの情報ビットが入力された場合、情報ビットを選択して誤り訂正符号化回路2に出力する。このように、セレクタ21は、誤り訂正符号系列において既知ビットが割り当てられていた領域、すなわちビット領域1dに相当するビットを秘密ビット20に置き換えて、誤り訂正符号化回路2に出力する。以降のステップS122からステップS125の動作は、図3に示す前述のステップS101からステップS104の動作と同様である。
 つぎに、誤り訂正符号化装置100Cから送信された多値変調シンボルを受信して復号を行う誤り訂正復号装置の構成および動作について説明する。図14は、実施の形態3に係る誤り訂正復号装置200Cの構成例を示すブロック図である。図15は、実施の形態3に係る誤り訂正復号装置200Cの動作を示すフローチャートである。誤り訂正復号装置200Cは、誤り訂正符号化装置100Cで誤り訂正符号化前に既知ビットが割り当てられていた領域、すなわちビット領域1dに相当するビットが秘密ビット20に置き換えられて誤り訂正符号化された多値変調シンボルの復号を行う。誤り訂正復号装置200Cは、図4に示す誤り訂正復号装置200Aからゲート5bを削除し、セレクタ22を追加したものである。
 ゲート5aについてのステップS221の動作は、図5に示す前述のステップS201の動作と同様である。セレクタ22は、2入力1出力のセレクタである。セレクタ22は、図11(b)に示すビット領域1dに割り当てられた誤り訂正符号化のパリティビットが入力された場合、秘密ビット20を選択して情報ビット用シンドローム回路6bに出力する(ステップS222)。セレクタ22は、図11に示す情報ビット領域1eの情報ビットが入力された場合、情報ビットを選択して情報ビット用シンドローム回路6bに出力する。以降のステップS223からステップS225の動作は、図5に示す前述のステップS202からステップS204の動作と同様である。ただし、情報ビット用シンドローム回路6bは、ステップS223において、既知ビットに替えて秘密ビット20を用いてシンドローム演算を行うことになる。
 以上説明したように、誤り訂正符号化装置100Cおよび誤り訂正復号装置200Cは、誤り訂正符号化装置100Aおよび誤り訂正復号装置200Aからの簡単な修正によって秘密ビット20を扱うことができ、正当な受信者と不当な受信者とで受信品質の差別化を図ることができる。
 なお、実施の形態3においても、実施の形態1で示した種々の機能の拡張が同様にできることも言うまでもない。
実施の形態4.
 実施の形態1から実施の形態3で説明した誤り訂正符号化装置100A,100B,100Cおよび誤り訂正復号装置200A,200B,200Cのハードウェア構成について説明する。誤り訂正符号化装置100A,100B,100Cおよび誤り訂正復号装置200A,200B,200Cは、処理回路により実現される。処理回路は、メモリに格納されるプログラムを実行するプロセッサおよびメモリであってもよいし、専用のハードウェアであってもよい。処理回路は制御回路とも呼ばれる。
 図16は、実施の形態1から実施の形態3に係る誤り訂正符号化装置100A,100B,100Cおよび誤り訂正復号装置200A,200B,200Cが備える処理回路をプロセッサおよびメモリで実現する場合の処理回路90の構成例を示す図である。図16に示す処理回路90は制御回路であり、プロセッサ91およびメモリ92を備える。処理回路90がプロセッサ91およびメモリ92で構成される場合、処理回路90の各機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ92に格納される。処理回路90では、メモリ92に記憶されたプログラムをプロセッサ91が読み出して実行することにより、各機能を実現する。すなわち、処理回路90は、誤り訂正符号化装置100A,100B,100Cおよび誤り訂正復号装置200A,200B,200Cのいずれかの処理が結果的に実行されることになるプログラムを格納するためのメモリ92を備える。このプログラムは、処理回路90により実現される各機能を誤り訂正符号化装置100A,100B,100Cおよび誤り訂正復号装置200A,200B,200Cのいずれかに実行させるためのプログラムであるともいえる。このプログラムは、プログラムが記憶された記憶媒体により提供されてもよいし、通信媒体など他の手段により提供されてもよい。
 ここで、プロセッサ91は、例えば、CPU(Central Processing Unit)、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、またはDSP(Digital Signal Processor)などである。また、メモリ92は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)などの、不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、またはDVD(Digital Versatile Disc)などが該当する。
 図17は、実施の形態1から実施の形態3に係る誤り訂正符号化装置100A,100B,100Cおよび誤り訂正復号装置200A,200B,200Cが備える処理回路を専用のハードウェアで構成する場合の処理回路93の例を示す図である。図17に示す処理回路93は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせたものが該当する。処理回路については、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。このように、処理回路は、専用のハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
 以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 1A,1B,1C フレーム、1a MSB、1b 中間ビット、1c LSB、1d ビット領域、1e 情報ビット領域、2 誤り訂正符号化回路、3a パリティメモリ、3b,3c,12 遅延メモリ、4,21,22 セレクタ、5a,5b ゲート、6a パリティビット用シンドローム回路、6b 情報ビット用シンドローム回路、7 シンドローム補正回路、8 線形加算回路、9 情報ビット、10 シンドロームデータ、11 誤り訂正復号回路、20 秘密ビット、100A,100B,100C 誤り訂正符号化装置。

Claims (22)

  1.  mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化を行う誤り訂正符号化装置であって、
     前記誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットを含むmビット×nシンボルを情報ビットとして誤り訂正符号化を行い、誤り訂正符号化のパリティビットを生成する誤り訂正符号化回路と、
     前記誤り訂正符号系列の前記既知ビットを前記パリティビットに置き換えるセレクタと、
     を備えることを特徴とする誤り訂正符号化装置。
  2.  前記セレクタは、第1の誤り訂正符号系列より後の第2の誤り訂正符号系列の既知ビットを、前記誤り訂正符号化回路において前記第1の誤り訂正符号系列から生成されたパリティビットに置き換える、
     ことを特徴とする請求項1に記載の誤り訂正符号化装置。
  3.  前記セレクタを第1のセレクタとし、
     さらに、
     前記誤り訂正符号系列において前記既知ビットが割り当てられていた領域に相当するビットを秘密ビットに置き換えて、前記誤り訂正符号化回路に出力する第2のセレクタ、
     を備えることを特徴とする請求項1または2に記載の誤り訂正符号化装置。
  4.  並列入力されるビット数はmビットまたはmビットの倍数であり、情報ビット長はmビットまたはmビットの倍数で割り切れ、
     前記誤り訂正符号化回路は、並列入力されるビットを用いて同時演算で前記パリティビットを生成する、
     ことを特徴とする請求項1から3のいずれか1つに記載の誤り訂正符号化装置。
  5.  誤り訂正復号を行う誤り訂正復号装置であって、
     mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化装置で誤り訂正符号化され、前記誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットが前記誤り訂正符号化装置で誤り訂正符号化のパリティビットに置き換えられた、mビット並列で入力される多値変調シンボルに含まれる前記パリティビットのシンドローム演算を行うパリティビット用シンドローム回路と、
     前記多値変調シンボルに含まれる前記パリティビットが前記既知ビットに置き換えられた前記多値変調シンボルに含まれる情報ビットおよび前記既知ビットのシンドローム演算を行う情報ビット用シンドローム回路と、
     前記パリティビット用シンドローム回路および前記情報ビット用シンドローム回路で演算されたシンドロームデータを用いて誤り訂正復号を行う誤り訂正復号回路と、
     を備えることを特徴とする誤り訂正復号装置。
  6.  さらに、
     前記情報ビット用シンドローム回路で演算されたシンドロームデータを補正するシンドローム補正回路と、
     前記パリティビット用シンドローム回路で演算されたシンドロームデータと、前記シンドローム補正回路で補正されたシンドロームデータとを線形加算する線形加算回路と、
     を備え、
     前記誤り訂正復号回路は、前記線形加算回路で得られたシンドロームデータを用いて誤り訂正復号を行う、
     ことを特徴とする請求項5に記載の誤り訂正復号装置。
  7.  前記情報ビット用シンドローム回路は、演算により求めたシンドロームデータを前記パリティビット用シンドローム回路に出力し、
     前記パリティビット用シンドローム回路は、前記情報ビット用シンドローム回路から取得した前記シンドロームデータを用いて前記パリティビットのシンドローム演算を行い、
     前記情報ビット用シンドローム回路は、前記パリティビット用シンドローム回路における前記パリティビットのシンドローム演算と並行して、次の多値変調シンボルについてシンドローム演算を行う、
     ことを特徴とする請求項5に記載の誤り訂正復号装置。
  8.  前記誤り訂正符号化装置で誤り訂正符号化前に前記既知ビットが割り当てられていた領域に相当するビットが秘密ビットに置き換えられて誤り訂正符号化された多値変調シンボルの復号において、
     前記情報ビット用シンドローム回路は、前記既知ビットに替えて前記秘密ビットを用いてシンドローム演算を行う、
     ことを特徴とする請求項5から7のいずれか1つに記載の誤り訂正復号装置。
  9.  前記パリティビット用シンドローム回路、および前記情報ビット用シンドローム回路に並列入力されるビット幅が異なる、
     ことを特徴とする請求項5から8のいずれか1つに記載の誤り訂正復号装置。
  10.  mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化を行う誤り訂正符号化装置を制御するための制御回路であって、
     前記誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットを含むmビット×nシンボルを情報ビットとして誤り訂正符号化を行い、誤り訂正符号化のパリティビットを生成、
     前記誤り訂正符号系列の前記既知ビットを前記パリティビットに置き換え、
     を誤り訂正符号化装置に実施させることを特徴とする制御回路。
  11.  誤り訂正復号を行う誤り訂正復号装置を制御するための制御回路であって、
     mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化装置で誤り訂正符号化され、前記誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットが前記誤り訂正符号化装置で誤り訂正符号化のパリティビットに置き換えられた、mビット並列で入力される多値変調シンボルに含まれる前記パリティビットのシンドローム演算、
     前記多値変調シンボルに含まれる前記パリティビットが前記既知ビットに置き換えられた前記多値変調シンボルに含まれる情報ビットおよび前記既知ビットのシンドローム演算、
     前記パリティビットのシンドローム演算で演算されたシンドロームデータ、および、前記情報ビットおよび前記既知ビットのシンドローム演算で演算されたシンドロームデータを用いて誤り訂正復号、
     を誤り訂正復号装置に実施させることを特徴とする制御回路。
  12.  mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化を行う誤り訂正符号化装置を制御するためのプログラムを記憶した記憶媒体であって、
     前記プログラムは、
     前記誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットを含むmビット×nシンボルを情報ビットとして誤り訂正符号化を行い、誤り訂正符号化のパリティビットを生成、
     前記誤り訂正符号系列の前記既知ビットを前記パリティビットに置き換え、
     を誤り訂正符号化装置に実施させることを特徴とする記憶媒体。
  13.  誤り訂正復号を行う誤り訂正復号装置を制御するためのプログラムを記憶した記憶媒体であって、
     前記プログラムは、
     mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化装置で誤り訂正符号化され、前記誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットが前記誤り訂正符号化装置で誤り訂正符号化のパリティビットに置き換えられた、mビット並列で入力される多値変調シンボルに含まれる前記パリティビットのシンドローム演算、
     前記多値変調シンボルに含まれる前記パリティビットが前記既知ビットに置き換えられた前記多値変調シンボルに含まれる情報ビットおよび前記既知ビットのシンドローム演算、
     前記パリティビットのシンドローム演算で演算されたシンドロームデータ、および、前記情報ビットおよび前記既知ビットのシンドローム演算で演算されたシンドロームデータを用いて誤り訂正復号、
     を誤り訂正復号装置に実施させることを特徴とする記憶媒体。
  14.  mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化を行う誤り訂正符号化装置の誤り訂正符号化方法であって、
     誤り訂正符号化回路が、前記誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットを含むmビット×nシンボルを情報ビットとして誤り訂正符号化を行い、誤り訂正符号化のパリティビットを生成する第1のステップと、
     セレクタが、前記誤り訂正符号系列の前記既知ビットを前記パリティビットに置き換える第2のステップと、
     を含むことを特徴とする誤り訂正符号化方法。
  15.  前記第2のステップにおいて、前記セレクタは、第1の誤り訂正符号系列より後の第2の誤り訂正符号系列の既知ビットを、前記誤り訂正符号化回路において前記第1の誤り訂正符号系列から生成されたパリティビットに置き換える、
     ことを特徴とする請求項14に記載の誤り訂正符号化方法。
  16.  前記セレクタを第1のセレクタとし、
     さらに、
     第2のセレクタが、前記誤り訂正符号系列において前記既知ビットが割り当てられていた領域に相当するビットを秘密ビットに置き換えて、前記誤り訂正符号化回路に出力する第3のステップ、
     を含むことを特徴とする請求項14または15に記載の誤り訂正符号化方法。
  17.  並列入力されるビット数はmビットまたはmビットの倍数であり、情報ビット長はmビットまたはmビットの倍数で割り切れ、
     前記第1のステップにおいて、前記誤り訂正符号化回路は、並列入力されるビットを用いて同時演算で前記パリティビットを生成する、
     ことを特徴とする請求項14から16のいずれか1つに記載の誤り訂正符号化方法。
  18.  mおよびnを正の整数とし、mビット並列で入力されるmビット×nシンボルのフレームを誤り訂正符号系列として誤り訂正符号化装置で誤り訂正符号化され、前記誤り訂正符号系列において規定されたビット系列に割り当てられた既知ビットが前記誤り訂正符号化装置で誤り訂正符号化のパリティビットに置き換えられた、mビット並列で入力される多値変調シンボルの誤り訂正復号を行う誤り訂正復号装置の誤り訂正復号方法であって、
     パリティビット用シンドローム回路が、前記多値変調シンボルに含まれる前記パリティビットのシンドローム演算を行う第1のステップと、
     情報ビット用シンドローム回路が、前記多値変調シンボルに含まれる前記パリティビットが前記既知ビットに置き換えられた前記多値変調シンボルに含まれる情報ビットおよび前記既知ビットのシンドローム演算を行う第2のステップと、
     誤り訂正復号回路が、前記パリティビット用シンドローム回路および前記情報ビット用シンドローム回路で演算されたシンドロームデータを用いて誤り訂正復号を行う第3のステップと、
     を含むことを特徴とする誤り訂正復号方法。
  19.  さらに、
     シンドローム補正回路が、前記情報ビット用シンドローム回路で演算されたシンドロームデータを補正する第4のステップと、
     線形加算回路が、前記パリティビット用シンドローム回路で演算されたシンドロームデータと、前記シンドローム補正回路で補正されたシンドロームデータとを線形加算する第5のステップと、
     を含み、
     前記第3のステップにおいて、前記誤り訂正復号回路は、前記線形加算回路で得られたシンドロームデータを用いて誤り訂正復号を行う、
     ことを特徴とする請求項18に記載の誤り訂正復号方法。
  20.  前記第2のステップにおいて、前記情報ビット用シンドローム回路は、演算により求めたシンドロームデータを前記パリティビット用シンドローム回路に出力し、
     前記第1のステップにおいて、前記パリティビット用シンドローム回路は、前記情報ビット用シンドローム回路から取得した前記シンドロームデータを用いて前記パリティビットのシンドローム演算を行い、
     前記第2のステップにおいて、前記情報ビット用シンドローム回路は、前記パリティビット用シンドローム回路における前記パリティビットのシンドローム演算と並行して、次の多値変調シンボルについてシンドローム演算を行う、
     ことを特徴とする請求項18に記載の誤り訂正復号方法。
  21.  前記誤り訂正符号化装置で誤り訂正符号化前に前記既知ビットが割り当てられていた領域に相当するビットが秘密ビットに置き換えられて誤り訂正符号化された多値変調シンボルの復号において、
     前記第2のステップにおいて、前記情報ビット用シンドローム回路は、前記既知ビットに替えて前記秘密ビットを用いてシンドローム演算を行う、
     ことを特徴とする請求項18から20のいずれか1つに記載の誤り訂正復号方法。
  22.  前記パリティビット用シンドローム回路、および前記情報ビット用シンドローム回路に並列入力されるビット幅が異なる、
     ことを特徴とする請求項18から21のいずれか1つに記載の誤り訂正復号方法。
PCT/JP2020/015223 2020-04-02 2020-04-02 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法 WO2021199409A1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
PCT/JP2020/015223 WO2021199409A1 (ja) 2020-04-02 2020-04-02 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法
JP2021537043A JP7051018B2 (ja) 2020-04-02 2021-02-09 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法
PCT/JP2021/004798 WO2021199690A1 (ja) 2020-04-02 2021-02-09 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法
CN202180024416.5A CN115336182A (zh) 2020-04-02 2021-02-09 纠错编码装置、纠错解码装置、控制电路、存储介质、纠错编码方法以及纠错解码方法
EP21779027.8A EP4109765A4 (en) 2020-04-02 2021-02-09 ERROR CORRECTION CODING DEVICE, ERROR CORRECTION DECODING DEVICE, CONTROL CIRCUIT, STORAGE MEDIA, ERROR CORRECTION CODING METHOD AND ERROR CORRECTION DECODING METHOD
US17/899,719 US11901913B1 (en) 2020-04-02 2022-08-31 Error correction coding apparatus and error correction decoding apparatus
US18/492,547 US20240056099A1 (en) 2020-04-02 2023-10-23 Error correction coding apparatus and error correction decoding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/015223 WO2021199409A1 (ja) 2020-04-02 2020-04-02 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法

Publications (1)

Publication Number Publication Date
WO2021199409A1 true WO2021199409A1 (ja) 2021-10-07

Family

ID=77928986

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2020/015223 WO2021199409A1 (ja) 2020-04-02 2020-04-02 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法
PCT/JP2021/004798 WO2021199690A1 (ja) 2020-04-02 2021-02-09 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/004798 WO2021199690A1 (ja) 2020-04-02 2021-02-09 誤り訂正符号化装置、誤り訂正復号装置、制御回路、記憶媒体、誤り訂正符号化方法および誤り訂正復号方法

Country Status (5)

Country Link
US (2) US11901913B1 (ja)
EP (1) EP4109765A4 (ja)
JP (1) JP7051018B2 (ja)
CN (1) CN115336182A (ja)
WO (2) WO2021199409A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225202B (zh) * 2022-03-01 2023-10-13 南京大学 一种级联译码方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009089130A (ja) * 2007-10-01 2009-04-23 Nippon Hoso Kyokai <Nhk> 誤り訂正符号化装置及びそのプログラム、並びに、誤り訂正復号化装置及びそのプログラム
JP2016115973A (ja) * 2014-12-11 2016-06-23 Necエンジニアリング株式会社 誤り訂正符号化回路、誤り訂正復号化回路および方法
EP3474470A1 (en) * 2017-10-20 2019-04-24 Nokia Solutions and Networks Oy Probabilistic signal shaping and forward error correction using subcarrier multiplexing

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5699368A (en) 1994-03-25 1997-12-16 Mitsubishi Denki Kabushiki Kaisha Error-correcting encoder, error-correcting decoder, and data transmitting system with error-correcting codes
US5745507A (en) * 1995-03-31 1998-04-28 International Business Machines Corporation Systematic symbol level ECC for use in digital memory systems
WO2002065724A1 (fr) * 2001-02-13 2002-08-22 Mitsubishi Denki Kabushiki Kaisha Procede de modulation de niveaux multiples, procede de demodulation de niveaux multiples, et procede de modulation/demodulation de niveaux multiples
DE60324043D1 (de) * 2002-01-08 2008-11-27 Nec Corp Kommunikationssystem und -verfahren mit Mehrpegelmodulation
WO2006075382A1 (ja) * 2005-01-14 2006-07-20 Fujitsu Limited 符号化方法、復号方法及びそれらの装置
JP4036338B2 (ja) * 2005-03-04 2008-01-23 国立大学法人東京工業大学 誤りバイト数を制限したバイト内複数スポッティバイト誤り訂正・検出方法及び装置
CN101208865B (zh) 2005-08-12 2012-10-03 富士通株式会社 发送装置
WO2011091850A1 (en) * 2010-01-28 2011-08-04 Nokia Corporation Error correction based on replacing padding bits by additional parity check bits
JP6871732B2 (ja) * 2016-12-19 2021-05-12 日本放送協会 送信装置及び受信装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009089130A (ja) * 2007-10-01 2009-04-23 Nippon Hoso Kyokai <Nhk> 誤り訂正符号化装置及びそのプログラム、並びに、誤り訂正復号化装置及びそのプログラム
JP2016115973A (ja) * 2014-12-11 2016-06-23 Necエンジニアリング株式会社 誤り訂正符号化回路、誤り訂正復号化回路および方法
EP3474470A1 (en) * 2017-10-20 2019-04-24 Nokia Solutions and Networks Oy Probabilistic signal shaping and forward error correction using subcarrier multiplexing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KIM DAEHO; HE ZONGLONG; BO TIANWAI; YU YUKUI; KIM HOON: "Transmission of 36-Gbaud PAM-8 Signal in IM/DD System using Pairwise-Distributed Probabilistic Amplitude Shaping", 2020 OPTICAL FIBER COMMUNICATIONS CONFERENCE AND EXHIBITION (OFC), OSA, 8 March 2020 (2020-03-08), pages 1 - 3, XP033767466, DOI: 10.1364/OFC.2020.M3J.3 *

Also Published As

Publication number Publication date
CN115336182A (zh) 2022-11-11
JP7051018B2 (ja) 2022-04-08
US11901913B1 (en) 2024-02-13
US20240056099A1 (en) 2024-02-15
WO2021199690A1 (ja) 2021-10-07
EP4109765A4 (en) 2023-04-19
JPWO2021199690A1 (ja) 2021-10-07
EP4109765A1 (en) 2022-12-28

Similar Documents

Publication Publication Date Title
US7882418B2 (en) LDPC encoder and decoder and LDPC encoding and decoding methods
KR101110586B1 (ko) 연결된 반복 및 대수 코딩
CA3193950C (en) Forward error correction with compression coding
US8880976B2 (en) Method and apparatus for encoding LBA information into the parity of a LDPC system
CA2505057A1 (en) Rate-compatible low-density parity-check (ldpc) codes
WO2006075417A1 (ja) 符号化方法、復号方法及びそれらの装置
WO2017194013A1 (zh) 纠错编码方法及装置
CA3065452C (en) Zero padding apparatus for encoding fixed-length signaling information and zero padding method using same
JP4420924B2 (ja) 情報ビット系列を符号化する方法および符号化器
US7231575B2 (en) Apparatus for iterative hard-decision forward error correction decoding
US20240056099A1 (en) Error correction coding apparatus and error correction decoding apparatus
CN102301603B (zh) 使用ldpc准循环码进行编码和解码
EP3713096B1 (en) Method and device for decoding staircase code, and storage medium
JP6567238B1 (ja) 誤り訂正復号装置および誤り訂正復号方法
JP2009201084A (ja) 符号化器及び送信装置
US7181677B1 (en) System and method for producing data and ECC code words using a high rate restricted-symbol code
KR101636406B1 (ko) 저지연 신드롬 계산을 위한 bch 디코더의 전처리 장치 및 방법
EP1643653A1 (en) Iterative decoding of low-density parity-check (LDPC) codes
JP7483155B2 (ja) 送信装置、受信装置、符号化方法、制御回路および記憶媒体
JP4420925B2 (ja) 情報ビット系列を符号化する方法および符号化器
JP4900168B2 (ja) 無線受信装置
CN118266173A (en) Transmitting device, receiving device, encoding method, control circuit, and storage medium
GB2426671A (en) Error correction decoder using parity check equations and Gaussian reduction
JP2005020501A (ja) 相関行列を利用した通信システム、相関行列学習方法、相関行列学習装置及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20929556

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20929556

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP