JP6930090B2 - 復号化装置、プログラム、及び情報伝送システム - Google Patents

復号化装置、プログラム、及び情報伝送システム Download PDF

Info

Publication number
JP6930090B2
JP6930090B2 JP2016221691A JP2016221691A JP6930090B2 JP 6930090 B2 JP6930090 B2 JP 6930090B2 JP 2016221691 A JP2016221691 A JP 2016221691A JP 2016221691 A JP2016221691 A JP 2016221691A JP 6930090 B2 JP6930090 B2 JP 6930090B2
Authority
JP
Japan
Prior art keywords
error
syndrome
data
correction code
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016221691A
Other languages
English (en)
Other versions
JP2017139738A (ja
Inventor
浜田 勉
勉 浜田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Publication of JP2017139738A publication Critical patent/JP2017139738A/ja
Application granted granted Critical
Publication of JP6930090B2 publication Critical patent/JP6930090B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/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
    • H04L1/0047Decoding adapted to other signal detection operation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/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/1575Direct decoding, e.g. by a direct determination of the error locator polynomial from syndromes and subsequent analysis or by matrix operations involving syndromes, e.g. for codes with a small minimum Hamming distance
    • 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/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • HELECTRICITY
    • 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
    • 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/0057Block codes
    • H04L1/0058Block-coded modulation
    • 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
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4906Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
    • H04L25/4908Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using mBnB codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

本発明は、復号化装置、プログラム、及び情報伝送システムに関する。
特許文献1には、パケット・ベースのデジタル通信システムのための前方誤り訂正(FEC)符号を生成する方法であって、(a)既約多項式から生成されるハミング符号H(x)=X10+X+1に基づく第1の符号化アルゴリズムを第1のデータワードに適用し、ビットインターリーブ・パリティ(BIP)符号B(x)=X+1に基づく第2の符号化アルゴリズムを前記第1のデータワードに適用することと、(b)前記第1のデータワードについて第1のチェックビット・シーケンスを生成することと、(c)前記第1のチェックビット・シーケンスを前記データワードに付加することと、(d)ステップ(c)の結果を、ソース・ノードにおいてスクランブル処理を行うことと、(e)ステップ(d)の結果を、データ送信リンク上で前記ソース・ノードから宛先ノードに送信することと、(f)前記宛先ノードにおいて、送信された前記データワードにデスクランブル処理を行い、前記第1のチェックビット・シーケンスを前記送信されたステップ(e)の結果から分離し、前記宛先ノードにおいて記憶することと、(g)送信された前記データワードに基づいて第2のチェックビット・シーケンスを生成することと、(h)シンドロームを作るために前記第1のチェックビット・シーケンスを前記第2のチェックビット・シーケンスとビットごとに比較することであって、前記シンドロームは、第2の符号化アルゴリズム・シンドロームと連結された第1の符号化アルゴリズム・シンドロームの形で存在する、ことと、(i)受信された前記データワードが第1のビット誤りを含むかどうかを判定することと、(j)前記第1の符号化アルゴリズム・シンドロームによって前記第1のビット誤りを訂正し、前記第2の符号化アルゴリズム・シンドロームによって第1及び第2の複製ビット誤りを訂正することと、を含む方法が開示されている。
特許文献2には、自己同期スクランブラ及びデスクランブラを用いて、シリアライザー又はデシリアライザーとして動作する、パケット・ベースのデジタル通信システムのためのフォワードエラー訂正を生成する方法であって、第1のエンコードアルゴリズムを第1の符号語に適用し、第2のエンコードアルゴリズムを第1の符号語に適用し、第1の符号語のための第1のチェックビット・シーケンスを生成し、チェックビット・シーケンスを第1の符号語へ付与し、伝送元において第1の符号語をスクランブルし、伝送元から伝送先への伝送路において第1の符号語を伝送し、伝送先において伝送された第1の符号語をデスクランブリングし、伝送された第1の符号語に基づいて、第2のチェックビット・シーケンスを生成し、第1のチェックビット・シーケンスと第2のチェックビット・シーケンスとを比較し、1ビットエラーが受信した第1の符号語に含まれているか否かを決定し、1ビットエラーを訂正し、第1及び第2の複製されたビットエラーを訂正する方法が開示されている。
特許文献3には、エラー検出又はエラー訂正コードがデータセットに適用された後にデータがスクランブルされる状況において、短縮されたシングルビットエラー訂正又はダブルビット検出コードを用いて、デジタル通信システムにおけるランダムビットエラーを検出及び訂正する方法であって、完全に限定されたデータセット対する乗算エラーの全ての組み合わせについて固有のシンドロームを得て、当該データセットの末端で発生する乗算エラーと次のデータセットとの重複の組み合わせについて固有のシンドローム得て、次のデータセットの訂正を可能にする、末端の固有のシンドロームのタイプを記憶し、末端のタイプ毎に少なくとも固有であるデータセットの先頭において発生する、乗算エラーの全ての組み合わせに対するシンドロームを得る方法が開示されている。
特許文献4には、データパケットの誤りを訂正する方法であって、第1のパケットに第1のエラーが存在するか否かを決定するためのシンドロームを計算し、第1のパケットに第1のエラーが存在する場合に第1のエラーを訂正し、第2のエラーが第1のエラーの乗算エラーである場合において、第2のパケットに第2のエラーが存在するか否かを決定し、第2のエラーを訂正する方法が開示されている。
特許第5106538号公報 米国特許第7996747号明細書 米国特許第7284184号明細書 米国特許第8055984号明細書
本発明の目的は、N+3ビットの誤り訂正符号を用いて、2ビットに対応するビット数の送信データに対するxa+xb+1の多項式で演算されるデスクランブリングにより拡散するビット誤りが訂正される復号化装置、プログラム、及び情報伝送システムを提供することにある。
請求項1に係る発明は、x+x+1の多項式(a,bは整数、a>b、a≠2b)でスクランブリングされた送信データを受信する復号化装置において、2ビット以下に対応するブロックの送信データに対し、前記多項式によるデスクランブリングでブロック内に拡散する3ビット以下のビット誤りの4つの誤りパターンの各々について、前記誤りパターン毎に、2種類以上の連続するビットの誤り位置を表すシンドロームが生成されるように予め設定されたN+3次の巡回符号生成多項式に応じて計算されたN+3ビットの誤り訂正符号が付与された前記送信データに対するスクランブリングにより得られたデータを受信する受信手段と、前記データに対するデスクランブリングにより得られた受信データに付与された前記誤り訂正符号及び前記受信データから演算された誤り訂正符号に応じて計算される2(N+3)−1種類のシンドロームと、シンドロームとビットの誤り位置とが予め対応付けられたテーブルとから、前記シンドロームに対応する前記誤りパターンに応じて前記受信データの誤り位置を算出する誤り検出手段と、前記誤り検出手段によって算出された前記誤り位置の前記受信データを訂正する訂正手段と、を備えた復号化装置である。
請求項2に係る発明は、前記誤り検出手段は、前記シンドロームが前記テーブルにおいて前記4つの誤りパターンに含まれる誤り位置と対応していない場合に、前記データの訂正不能の誤りを検出する請求項1に記載の復号化装置である。
請求項3に係る発明は、前記誤り検出手段は、演算された前記シンドロームがM種類のシンドロームと誤り位置pを対応させた前記テーブルに存在しない場合に、更に、演算された前記シンドロームと予め設定された演算式とに基づいて、シンドロームを演算することを、演算された前記シンドロームが前記テーブルに存在するまで繰り返し、前記シンドロームと前記シンドロームの演算の繰り返し回数kと前記テーブルに対応した誤り位置pとに基づいて、前記受信データの誤り位置を検出する請求項1に記載の復号化装置である。
請求項4に係る発明は、前記誤り検出手段は、前記シンドロームの演算の繰り返し回数が予め定められた値より大きい場合に、前記データの訂正不能の誤りを検出する請求項3に記載の復号化装置である。
請求項5に係る発明は、前記予め設定されたN+3次の巡回符号生成多項式に応じて計算された誤り訂正符号を前記送信データに付与して誤り訂正符号を付与した送信データを生成し、前記誤り訂正符号を付与した送信データに対してスクランブリング化を行うことにより前記データを得る変換手段、及び前記変換手段によって得られた前記データを送信する送信手段を備えた符号化装置と、請求項1〜請求項4の何れか1項に記載の復号化装置と、を備えた情報伝送システムである。
請求項6に係る発明は、コンピュータを、請求項1〜請求項4の何れか1項に記載の復号化装置を構成する各手段として機能させるためのプログラムである。
請求項1に係る発明によれば、N+3ビットの誤り訂正符号を用いて、2ビットに対応するビット数の送信データに対するxa+xb+1の多項式(a,bは整数、a>b、a≠2b)で演算されるデスクランブリングにより拡散するビット誤りが訂正される。
請求項2に係る発明によれば、訂正不能の誤りが検出される。
請求項3に係る発明によれば、ビットの誤り位置とシンドロームとを対応付けるための情報量を低減させて、送信データに対するデスクランブリングにより拡散するビット誤りが訂正される。
請求項4に係る発明によれば、ビットの誤り位置とシンドロームとを対応付けるための情報量を低減させて、送信データに対するデスクランブリングにより拡散する訂正不能の誤りが検出される。
請求項5に係る発明によれば、N+3ビットの誤り訂正符号を用いて、2ビットに対応するビット数の送信データに対するデスクランブリングにより拡散するビット誤りが訂正される。
請求項6に係る発明によれば、N+3ビットの誤り訂正符号を用いて、2ビットに対応するビット数の送信データに対するデスクランブリングにより拡散するビット誤りが訂正される。
本発明の第1の実施の形態に係る情報伝送システムの構成の一例を示す概略図である。 第1の実施の形態に係る符号化装置の構成の一例を示すブロック図である。 FECフレームの一例を説明するための説明図である。 誤り訂正符号とFECフレームとを説明するための説明図である。 第1の実施の形態に係る復号化装置の構成の一例を示すブロック図である。 誤り訂正符号の計算とシンドロームの計算とを説明するための説明図である。 誤りパターンを説明するための説明図である。 誤り位置を説明するための説明図である。 誤り位置を説明するための説明図である。 第1の実施の形態に係る符号化装置によって実行される符号化処理ルーチンの内容を表す図である。 第1の実施の形態に係る復号化装置によって実行される復号化処理ルーチンの内容を表す図である。 第2の実施の形態に係る符号化装置の構成の一例を示すブロック図である。 第2の実施の形態におけるテーブルの一例を示す図である。 第2の実施の形態におけるシンドローム算出を説明するための図である。 第2の実施の形態におけるテーブルの他の例を示す図である。 誤り検出の処理とバッファとの構成例を示す図である。 第2の実施の形態に係る復号化装置によって実行される復号化処理ルーチンの内容を表す図である。 13次の巡回符号生成多項式の他のバリエーションを示す図である。
以下、図面を参照して本発明の実施の形態について説明する。なお、以下では、2つの装置間でシリアル伝送にて情報の送受信を行う情報伝送システムに本発明の実施の形態を適用した場合について説明する。
<第1の実施形態>
<情報伝送システム>
まず、本発明の実施の形態に係る情報伝送システムの概略構成について説明する。図1は本発明の実施の形態に係る情報伝送システムの構成の一例を示す概略図である。図1に示すように、情報伝送システム10は、情報を送信する符号化装置12と情報を受信する復号化装置14とを備えている。
符号化装置12と復号化装置14とは、伝送路16で接続されている。伝送路16は、符号化装置12から復号化装置14へ情報をシリアル伝送するための伝送路である。
(符号化装置)
次に、符号化装置12の構成について説明する。図2は符号化装置の構成の一例を示すブロック図である。図2に示すように、符号化装置12は、データ受付部120、変換部122、及び送信部132を備えている。符号化装置12は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、ゲートアレイなどの回路(IC:Integrated Circuit)により実装される。また、符号化装置12が備える上記各機能部は、CPU(Central Processing Unit)、RAM(Random Access Memory)、及びROM(Read Only Memory)等を備えたコンピュータにより実現し、CPUが、ROMに記憶されているプログラムを実行することにより、各機能部における各機能が実行されるように構成してもよい。
データ受付部120は、パラレル形式の送信データを受け付ける。本実施の形態では、1008ビットのパラレル形式の送信データを用いる場合を例に説明する。
変換部122は、データ受付部120によって受け付けたパラレル形式の送信データを取得する。そして、変換部122は、取得した送信データに誤り訂正符号(ECC:error correcting code)を付与し、符号が付与された送信データを符号化する。図2に示すように、変換部122は、ECC演算部124、スクランブラ部126、64B66B符号化部128、及びパラレルシリアル(P/S)変換部130を備えている。
ECC演算部124は、データ受付部120によって受け付けたパラレル形式の送信データと、予め設定された巡回符号生成多項式とに応じて、送信データに付与する誤り訂正符号を計算する。図3に、本実施の形態における送信データと誤り訂正符号の一例を示す。図3に示すように、後述するスクランブラ部126によって誤り訂正符号が送信データに付与される。
本実施の形態において、巡回符号生成多項式は、2ビットに対応するビット数の送信データに対するビット誤りがxa+xb+1の多項式(a,bは整数、a>b、a≠2b)で演算されるデスクランブラにより拡散する4つの誤りパターンの各々について、当該誤りパターンに対応する、2種類以上のビットの誤り位置を表すシンドロームが生成されるように予め設定される。なお、デスクランブリングにより拡散するビット誤りの4つの誤りパターンについては、復号化装置において後述する。また、本実施の形態における巡回符号生成多項式は、2ビットのデータに対し、N+3次の巡回符号生成多項式として予め設定される。
図4に、誤り訂正符号の生成を説明するための説明図を示す。本実施の形態では、図4(A)に示すように、1008bit(126Byte)の送信データから、誤り訂正符号(13bit)が計算される。3bitはダミービット“000”とし、計1024bit(128Byte)をFECフレームとする。本実施の形態におけるデータのサイズは、210bit(1024bit)であるため、13次の巡回符号生成多項式を用いて、誤り訂正符号が計算される。なお、FECフレームはブロックの一例である。
例えば、ECC演算部124は、図4(B)に示すように、送信データのビット列を、以下の式(1)に示す13次の巡回符号生成多項式G(x)で割った余りを、誤り訂正符号として計算する。
Figure 0006930090
図4(B)では、1008ビットの送信データが16ビットずつECC演算部124に入力されることを表している。具体的には、ECC演算部124は、以下の式(2)に従って63回演算し、最後に入力をオール0にして1回演算することで、誤り訂正符号を計算する。
Figure 0006930090
上記式(2)は16ビット入力の誤り訂正符号の算出式を表し、Bxxが送信データ入力のxx番目のビット、Cxxが誤り訂正符号の出力のxx番目のビット、Axxは前回の誤り訂正符号の出力のxx番目のビットを表す。また、ここで「+」はXOR演算を表す。
スクランブラ部126は、ECC演算部124によって計算された誤り訂正符号を、データ受付部120によって受け付けた送信データに付加し、誤り訂正符号が付加された送信データをスクランブル処理する。
例えば、スクランブラ部126は、以下の式(3)に従って、誤り訂正符号が付加された送信データをスクランブル処理する。
Figure 0006930090
64B66B符号化部128は、スクランブラ部126によってスクランブル処理が行われた送信データを、予め定められた符号化方式に従って符号化し、ビット数を変換する。本実施の形態では、64B66B符号化方式によってビット数変換符号化を行う場合を例に説明する。
パラレルシリアル(P/S)変換部130は、64B66B符号化部128によって変換された66ビットのパラレル形式のデータを、P/S(Parallel to Serial)変換により、シリアルのビット列に変換する。本実施の形態では、送信データ(1008ビット)に、ダミービット(3ビット)、及び誤り訂正符号(13ビット)を付加したFECフレームを順次64B66B変換した後、パラレル-シリアル変換して、後述する送信部132によってデータとして送信する。
送信部132は、パラレルシリアル(P/S)変換部130によって変換されたシリアル形式のデータを伝送路16へ出力する。送信部132に光電変換部(図示せず)を接続し、電気出力を光出力に変換しても良い。この場合、伝送路16は光ファイバ等で構成される。
(復号化装置)
次に、復号化装置14の構成について説明する。図5は復号化装置の構成の一例を示すブロック図である。図5に示すように、復号化装置14は、受信部140、シリアルパラレル(S/P)変換部142、64B66B復号化部144、デスクランブラ部146、エラー訂正部148、エラー出力部160、及びデータ出力部162を備えている。復号化装置14は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、ゲートアレイなどの回路(IC:Integrated Circuit)により実装される。また、復号化装置14が備える上記各機能部は、CPU(Central Processing Unit)、RAM(Random Access Memory)、及びROM(Read Only Memory)等を備えたコンピュータにより実現し、CPUが、ROMに記憶されているプログラムを実行することにより、各機能部における各機能が実行されるように構成してもよい。
受信部140は、符号化装置12によって伝送路16を介して送信されたシリアル形式のデータを受信する。光出力を受信する場合は、光電変換部(図示せず)を接続し、光出力を電気出力に変換したものをシリアル形式のデータとして受信する。
シリアルパラレル(S/P)変換部142は、受信部140によって受信したシリアル形式のデータをパラレル形式のデータに変換する。
64B66B復号化部144は、シリアルパラレル(S/P)変換部142によって得られたパラレル形式のデータを、64B66B符号化方式に従ってビット数変換復号化を行い、受信データ及び誤り訂正符号として出力する。
デスクランブラ部146は、64B66B復号化部144によって復号化された受信データ及び誤り訂正符号を、デスクランブル処理する。なお、デスクランブラ処理は、上記式(3)に示す多項式基づき実行される。また、デスクランブラ部146は、得られた受信データと誤り訂正符号とを、後述するバッファ150に格納する。
エラー訂正部148は、バッファ150と、ECC演算部152と、ECC比較部154と、誤り検出部156と、訂正部158とを備えている。
バッファ150には、デスクランブラ部146によって得られた、受信データ及び誤り訂正符号が格納される。
ECC演算部152は、バッファ150に格納された受信データを取得し、取得した受信データと上記式(1)に示した巡回符号生成多項式G(x)とに基づいて、誤り訂正符号を計算する。具体的には、ECC演算部152は、ECC演算部124と同様に、受信データのビット列を、上記式(1)に示す巡回符号生成多項式G(x)で割った余りを誤り訂正符号として計算する。
ECC比較部154は、バッファ150に格納された誤り訂正符号と、ECC演算部152によって計算された誤り訂正符号とに基づいて、シンドロームを算出する。
図6に、ECC演算部152とECC比較部154との処理内容を説明するための説明図を示す。図6に示すように、ECC比較部154は、ECC演算部152によって計算された誤り訂正符号C[12:0]と、受信データに付与された誤り訂正符号C’[12:0]とから、シンドロームS[12:0]を算出する。シンドロームの算出式は、以下の式(4)によって表される。ここで、
Figure 0006930090
はビット毎のXOR演算を表す。
Figure 0006930090
誤り検出部156は、ECC比較部154によって算出されたシンドロームと、シンドロームとビットの誤り位置とが予め対応付けられたテーブルとから、シンドロームに対応する誤りパターンに応じて、ビットの誤り位置を検出する。
具体的には、誤り検出部156は、ビットの誤り位置に対応するシンドロームの番号と、シンドロームを表すワードアドレスとが予め対応付けられているテーブルに、ECC比較部154によって算出されたシンドロームがすべて0でない場合には、伝送路上でのビット誤りを検出する。そして、誤り検出部156は、誤りパターンを特定する。
図7に、伝送路上で1ビット誤りが発生した場合の誤りパターンの例を示す。図7に示すように、伝送路上での1ビット誤りはデスクランブルにより他のビットに拡散され、1ビット誤りが3ビット以下の誤りとなる。具体的には、1ビット誤りの誤り位置をpとすると、拡散されるビット誤りの誤り位置はp+39及びp+58で表される。
本実施の形態では、テーブルにおいて、シンドロームの番号とシンドロームを表すワードアドレスとが予め対応付けられている。図7に示すように、誤りパターン1は、FECフレーム内での誤りが1ビットである場合を示す。図7に示すように、1ビット誤りはデスクランブルにより他のビットに拡散される。誤りパターン1では、3ビットの誤りのうち、1ビットの誤りが当該FECフレーム内に発生し、2ビットの誤りが前後のFECフレームに発生する。従って、図7の誤りパターン1におけるAに示すように、誤りパターン1において当該FECフレーム内における1ビットの誤り位置をpとした場合、FECフレームの後ろであるp−39の位置とp−58の位置とでビットの誤りが発生する。また、図7の誤りパターン1におけるBに示すように、FECフレーム内における1ビットの誤り位置をpとした場合、FECフレームの前であるp+19の位置とp+58の位置とでビットの誤りが発生する。従って、当該FECフレーム内における1ビットの誤り位置pはp=0〜38と、p=1005〜1023となり、そのままシンドロームの番号Pに対応する。なお、P番目のシンドロームをαと表示しており、シンドロームの番号Pと実際のビットの誤り位置pとは一致する。
一方、誤りパターン2〜4については、シンドロームの番号Pと誤り位置pとが一致していないため、シンドロームの番号Pから、誤り位置pを求める。
例えば、誤りパターン2については、シンドロームの番号Pは1191〜1209の範囲となり、データのビット数1023よりも大きい数となるため、シンドロームの番号Pと、誤り位置pとが一致しない。ここで、誤りパターン2については、図7に示すように、3ビットの誤りのうち、2ビットの誤りが当該FECフレーム内に発生し、1ビットの誤りが当該FECフレーム外に発生する。従って、図7に示すように、シンドロームがαp+1191である場合には、誤り位置がpとp+39となる。
また、誤りパターン3については、シンドロームの番号Pは3256〜3294の範囲となり、当該FECフレーム内に誤りが2ビットある。誤りパターン3については、図7に示すように、3ビットの誤りのうち、2ビットの誤りが当該FECフレーム内に発生し、1ビットの誤りが当該FECフレーム外に発生する。従って、図7に示すように、シンドロームがαp+2271である場合には、誤り位置がpとp+19となる。
また、誤りパターン4については、シンドロームの番号Pは3807〜4772の範囲となり、当該FECフレーム内に誤りが3ビットある。誤りパターン4については、図7に示すように、3ビットの誤りが当該FECフレーム内に発生する。従って、図7に示すように、シンドロームがαp+3807である場合には、誤り位置がpとp+19とp+58となる。
図7に示すように、上記式(1)の巡回符号生成多項式G(x)を用いることで、4つの誤りパターンに対し、それぞれシンドロームが210種類生成される。
図8に、シンドロームの番号Pとシンドロームを表すワードアドレスとが予め対応付けられているテーブルの一例を示す。例えば、図8に示すように、13ビットのシンドロームを0〜8191のワードアドレスで表わし、それぞれのワードアドレスに、シンドロームの番号Pの値を対応付けて入れたメモリ(図示省略)を用意する。図8に示すテーブルのワードアドレスは、2進数のシンドロームの値を10進数で表したものである。
そして、例えば、図9に示すように、算出されたシンドロームが「0100100110010」である場合、シンドローム「0100100110010」は上記図8のワードアドレス「2354」で表わされるため、シンドロームの番号Pは「2281」に対応する。
そして、シンドロームの番号Pに応じて、誤りパターンが特定される。例えば、シンドロームの番号Pが0〜58または1005〜1023と算出された場合、誤りパターンは誤りパターン1に対応する。また、シンドロームの番号Pが1191〜1209と算出された場合、誤りパターンは誤りパターン2に対応する。また、シンドロームの番号Pが3256〜3294と算出された場合、誤りパターンは誤りパターン3に対応する。また、シンドロームの番号Pが3807〜4772と算出された場合、誤りパターンは誤りパターン4に対応する。このように、各誤りパターンに対し、ビットの誤り位置とシンドロームの番号Pとが連続して対応付けられ、各誤りパターンに対し、シンドロームが58、19、39、966種類対応付けられる。
次に、誤り検出部156は、特定された誤りパターンに応じて、実際のビットの誤り位置を特定し、訂正部158へ出力する。
例えば、誤りパターンが誤りパターン1である場合、実際のビットの誤り位置は、算出されたシンドロームの番号Pと、ビットの誤り位置とが同じになる。
また、誤りパターンが誤りパターン2である場合、実際のビットの誤り位置は、算出されたシンドロームの番号Pから「1191」を引き算して得られた値pと、当該値pに「39」を足した値とが、実際の誤り位置となる。
また、誤りパターンが誤りパターン3である場合、実際のビットの誤り位置は、算出されたシンドロームの番号Pから「2271」を引き算して得られた値pと、当該値pに「19」を足した値とが、実際の誤り位置となる。上記図9に示す例では、シンドロームの番号Pが「2281」であるため、シンドロームの番号P「2281」から「2271」を引き算して得られる値「10」と当該値に「19」を足した値「29」とが、実際の誤り位置として特定される。なお、上記図9の右側に示すように、シンドロームの番号P「2281」に対応するシンドローム「0100100110010」は、「10」に対応するシンドローム「0010000000000」と、「29」に対応するシンドローム「0110100110010」の排他的論理和によって表される。
また、誤りパターンが誤りパターン4である場合、実際のビットの誤り位置は、算出されたシンドロームの番号Pから「3807」を引き算して得られた値pと、当該値pに「19」を足した値と、当該値pに「58」を足した値とが、実際の誤り位置となる。
以上をまとめると、各誤りパターンにおけるビットの誤り位置は、以下に示すようになる。
誤りパターン1:誤り位置はp
誤りパターン2:誤り位置はpとp+39
誤りパターン3:誤り位置はpとp+19
誤りパターン4:誤り位置はpとp+19とp+58
また、誤り検出部156は、13ビットで表わされる8191パターンのテーブルのうち、ECC比較部154によって算出されたシンドロームが、誤りパターン1〜4に対応する、58+19+39+966=1082通りのパターンに存在しない場合には、伝送路上での2ビット以上の誤りを検出し、伝送路上での2ビット以上の誤りを表す情報をエラー出力部160へ出力する。
訂正部158は、バッファ150に格納された受信データにおける誤り検出部156によって出力された誤り位置に対応するビットを反転し、受信データのビット誤りを訂正する。
エラー出力部160は、誤り検出部156によって伝送路上での2ビット以上の誤りを表す情報が出力された場合に、伝送路上での2ビット以上の誤りを表す情報を訂正不能エラーとして出力する。
データ出力部162は、エラー無しの場合も含めてエラー訂正終了後に、バッファ150に格納された受信データを順次出力する。なお、本実施の形態におけるレイテンシーは、誤り訂正のためのバッファに必要な64サイクルに加えて、メモリから誤り位置の読み出し処理と、誤り訂正処理との計66サイクル(105.6ns)となる。
<情報伝送システムの動作>
次に、情報伝送システム10の動作について説明する。上記の通り、情報伝送システム10の動作は、符号化装置12側の処理と復号化装置14側の処理とを含む。
<符号化装置側の処理>
まず、符号化装置12側で実行される処理について説明する。
図10は符号化装置12によって実行される符号化処理ルーチンの手順の一例を示すフローチャートである。符号化装置12は、符号化対象のパラレル形式のデータが入力されると、図10に示す符号化処理ルーチンを実行する。
ステップS100において、データ受付部120はパラレル形式の送信データを受け付ける。
ステップS102において、ECC演算部124は、データ受付部120によって受け付けたパラレル形式の送信データと、上記式(1)に示す巡回符号生成多項式とに応じて、送信データに付与する誤り訂正符号を計算する。
ステップS104において、スクランブラ部126は、上記ステップS102で計算された誤り訂正符号を、上記ステップS100で受け付けた送信データに付加し、上記式(3)に従って、誤り訂正符号が付加された送信データをスクランブル処理する。
ステップS106において、64B66B符号化部128は、上記ステップS104でスクランブル処理が行われた送信データを、64B66B符号化方式に従って符号化し、ビット数を変換する。
ステップS108において、パラレルシリアル(P/S)変換部130は、上記ステップS106で変換されたパラレル形式のデータを、シリアルのビット列に変換する。
ステップS110において、送信部132は、上記ステップS108で変換されたシリアル形式のデータを伝送路16へ出力して、符号化処理ルーチンを終了する。
<復号化装置側の処理>
次に、復号化装置14側で実行される処理について説明する。
図11は復号化装置14によって実行される復号化処理ルーチンの手順の一例を示すフローチャートである。復号化装置14は、復号化対象のデータを受信すると、図11に示す復号化処理ルーチンを実行する。
ステップS200において、受信部140は、符号化装置12によって伝送路16を介して送信されたシリアル形式のデータを受信する。
ステップS202において、シリアルパラレル(S/P)変換部142は、上記ステップS200で受信したシリアル形式のデータをパラレル形式のデータに変換する。
ステップS204において、64B66B復号化部144は、上記ステップS202で得られたパラレル形式のデータを、64B66B符号化方式に従ってビット数変換復号化を行い、受信データ及び誤り訂正符号として出力する。
ステップS206において、デスクランブラ部146は、上記ステップS204で復号化された受信データ及び誤り訂正符号を、デスクランブル処理する。また、デスクランブラ部146は、復号された受信データと誤り訂正符号とを、バッファ150に格納する。
ステップS208において、ECC演算部152は、バッファ150に格納された受信データを取得し、取得した受信データと上記式(1)に示した巡回符号生成多項式G(x)とに基づいて、誤り訂正符号を計算する。
ステップS210において、ECC比較部154は、バッファ150に格納された誤り訂正符号と、上記ステップS208で計算された誤り訂正符号とに基づいて、シンドロームを算出する。
ステップS212において、誤り検出部156は、上記ステップS210で算出されたシンドロームと、シンドロームとビットの誤り位置とが予め対応付けられたテーブルとから、上記ステップS210で算出されたシンドロームが予め設定されたワードアドレスに対応しているか否かを判定する。算出されたシンドロームが予め設定されたワードアドレスに対応している場合には、ステップS214へ進む。一方、算出されたシンドロームが予め設定されたワードアドレスに対応していない場合には、ステップS222へ進む。
ステップS214において、誤り検出部156は、シンドロームの番号Pとシンドロームを表すワードアドレスとが予め対応付けられているテーブルと、上記ステップS210で算出されたシンドロームとから、算出されたシンドロームの番号Pに応じて誤りパターンを特定する。
ステップS216において、誤り検出部156は、上記ステップS214で特定された誤りパターンに応じて、実際のビットの誤り位置を特定し、訂正部158へ出力する。
ステップS218において、訂正部158は、バッファ150に格納された受信データにおける上記ステップS216で出力された誤り位置に対応するビットを反転し、受信データのビット誤りを訂正する。
ステップS220において、データ出力部162は、バッファ150に格納された受信データを出力して、復号化処理ルーチンを終了する。
ステップS222において、誤り検出部156は、伝送路上での2ビット以上の誤りを検出し、伝送路上での2ビット以上の誤りを表す情報を出力する。
ステップS224において、エラー出力部160は、上記ステップS222で出力された2ビット以上の誤りを表す情報を訂正不能エラーとして出力して、復号化処理ルーチンを終了する。
このように、2ビットのデータに対してN+3次の巡回符号生成多項式が予め設定され、2−(N+3)ビットのデータに対してN+3ビットの誤り訂正符号が付与され、デスクランブラにより拡散するビット誤りが訂正される。例えば、ダミービット3ビットを含む1011ビットのデータに13ビットの誤り訂正符号が付与され、デスクランブリングにより拡散するビット誤りが訂正される。
また、上記図7に示すように、誤りパターン1では58通りの伝送路上の1ビットの誤りが存在し、誤りパターン2では19通りの伝送路上の1ビットの誤りが存在し、誤りパターン3では39通りの伝送路上の1ビットの誤りが存在し、誤りパターン4では966通りの伝送路上の1ビットの誤りが存在する。従って、伝送路上での2ビット以上の誤りの検出確率は、(8191−58−19−39−966)/8191≒0.868となり、約87%となる。
<第2の実施の形態>
第1の実施の形態では、ビットの誤り位置に対応するシンドロームの番号と、シンドロームを表すワードアドレスとが予め対応付けられているテーブルとから、ビットの誤り位置を検出する場合を例に説明した。これに対し、第2の実施の形態では、演算されたシンドロームが、M種類のシンドロームとビットの誤り位置pとを対応させたテーブルに存在しない場合に、シンドロームを演算することを繰り返し、シンドロームとシンドロームの演算の繰り返し回数kと当該テーブルに対応した誤り位置pとに基づいて、受信データの誤り位置を検出する場合を例に説明する。なお、前述した第1の実施の形態の符号化装置12及び復号化装置14と同様の構成については、第1の実施の形態と同一の符号を付与してその説明を省略する。
(復号化装置214)
図12は第2の実施の形態に係る復号化装置214の構成の一例を示すブロック図である。図12に示すように、復号化装置214は、受信部140、シリアルパラレル(S/P)変換部142、64B66B復号化部144、デスクランブラ部146、エラー訂正部248、エラー出力部160、及びデータ出力部162を備えている。
エラー訂正部248は、第1のバッファ250、第2のバッファ251、第3のバッファ252、第4のバッファ253、第5のバッファ254、ECC演算部152、ECC比較部154、誤り検出部256、及び訂正部158を備えている。
第1のバッファ250には、デスクランブラ部146によって得られた、受信データ及び誤り訂正符号が格納される。第1のバッファ250に格納された受信データ及び誤り訂正符号は、第2のバッファ251、第3のバッファ252、第4のバッファ253、第5のバッファ254へ順次転送される。
本実施の形態では、第1のバッファ250、第2のバッファ251、第3のバッファ252、第4のバッファ253、第5のバッファ254の記憶容量が、128Byteである場合について説明する。
誤り検出部256は、ECC比較部154によって算出されたシンドロームが、予め定められたM種類のシンドロームとビットの誤り位置pとを対応させたテーブルに存在しない場合に、更に、演算されたシンドロームと予め設定された演算式とに基づいて、シンドロームを演算することを繰り返す。そして、誤り検出部256は、シンドロームとシンドロームの演算の繰り返し回数kと当該テーブルに対応した誤り位置pとに基づいて、受信データの誤り位置を検出する。
また、誤り検出部256は、複数の送信データについて、ビットの誤り位置を並列に検出する。
第2の実施の形態では、シンドロームの一部とビットの誤り位置とが予め対応付けられている。図13に、シンドロームの一部とビットの誤り位置との組み合わせについて予め対応付けられているテーブルの一例を示す。
図13は、16パターンのシンドロームとビットの誤り位置とが予め対応付けられているテーブルの例を示す。図13に示すテーブルでは、16パターンのシンドロームと繰り返し回数(Iterations)とに応じて、ビットの誤り位置が決定される。
図14に、誤り検出部256が行う処理を説明するための説明図を示す。図14に示すように、誤り検出部256は、演算されたシンドロームS[12:0]が当該テーブルに存在しない場合に、更に、演算されたシンドロームと、予め設定された以下の演算式(5)とに基づいて、シンドロームを演算することを繰り返す。
Figure 0006930090
上記式は13ビット入力の演算式を表し、Sxxが1クロック前の処理によって演算されたシンドロームのxx番目のビット、SExxが今回の処理によって演算されるシンドロームのxx番目のビットを表す。ここで、「+」はXOR演算を表わす。
具体的には、演算された誤りシンドロームS[12:0]が、上記図13のテーブルのSEの列にある場合、誤り位置は0〜15のいずれかとなる。一方、演算された誤りシンドロームS[12:0]が、上記図13のSEの列以外の場合、上記の演算式(5)に従って、演算(Iterations)が繰り返される。そして、Iterationsの回数と上記図13のテーブルとから誤り位置が特定される。
なお、上記図13に示すテーブルでは、16パターンのシンドロームが予め登録されているが、図15に示すように、32パターンのシンドローム又は64パターンのシンドロームが予め登録されていてもよい。32パターンのシンドローム又は64パターンのシンドロームがテーブルに予め登録されている場合には、16パターンのシンドロームが予め登録されている場合に比べ、シンドロームの演算の繰り返しの回数が減ることになる。
次に、第1のバッファ250〜第5のバッファ254に格納されたデータに対して、誤り検出部256が行う処理について説明する。なお、テーブルには、32パターンのシンドロームが予め登録されている場合を例に説明する。
図16に、誤り検出部256が行う処理と各バッファに格納されるデータとの関係の一例を示す。図16に示す各ブロックは、誤り検出部256又は各バッファにおける処理時間を表している。
本実施の形態では、各バッファの記憶容量が128Byteである場合について説明する。バッファの記憶容量が128Byteである場合、図16に示すように、16bitモードでは64サイクルで処理される。また、32パターンのシンドロームが登録されたテーブルを用いてマッチングを行う場合、誤り検出部256が行う誤り位置の算出は、約150サイクルで処理される。そのため、誤り検出部256は、ビットの誤り位置の算出を3つ並列に処理し、図16に示すようにバッファを5つ設けることでビットの誤り訂正が完了する。
例えば、図16に示すように、データB01が第1のバッファ250に格納されると、64サイクルで処理が実行される。次に、誤り検出部256は、第1のバッファ250からデータB01を読み出す。また、データB01は第2のバッファ251に転送される。そして、第1のバッファ250には、次のデータB02が格納される。
誤り検出部256は、読み出したデータB01に対し、ECC比較部154で得られたシンドロームとテーブルとのマッチングを行う。当該マッチング処理は、約150サイクルで処理される。誤り検出部256によるマッチング処理が終了すると、データB01は第5のバッファ254に格納されているため、誤り検出部256によって得られた結果に応じて、訂正部158がデータB01に対し訂正処理を行う。
従来技術におけるビットの誤り位置の特定には、2048Byteのメモリが必要であるが、本実施の形態における方式では、640Byteのバッファによって、ビットの誤り位置が特定されるため、ビットの誤り訂正に必要なメモリ量が従来の1/3以下に低減される。なお、本実施の形態におけるレイテンシーは、バッファ5個で64×5+2=322サイクルとなる(515.2ns)。
<情報伝送システムの動作>
次に、第2の実施の形態に係る情報伝送システムの動作について説明する。上記の通り、第2の実施の形態に係る情報伝送システムの動作は、符号化装置12側と復号化装置214側とで実行される。
<復号化装置側の処理>
図17は、復号化装置214によって実行される復号化処理ルーチンの手順の一例を示すフローチャートである。復号化装置214は、復号化対象のデータを受信すると、図17に示す復号化処理ルーチンを実行する。
ステップS200において、受信部140は、符号化装置12によって伝送路16を介して送信されたシリアル形式のデータを受信する。
ステップS202において、シリアルパラレル(S/P)変換部142は、上記ステップS200で受信したシリアル形式のデータをパラレル形式のデータに変換する。
ステップS204において、64B66B復号化部144は、上記ステップS202で得られたパラレル形式のデータを、64B66B符号化方式に従ってビット数変換復号化を行い、受信データ及び誤り訂正符号として出力する。
ステップS206において、デスクランブラ部146は、上記ステップS204で復号化された受信データ及び誤り訂正符号を、デスクランブル処理する。また、デスクランブラ部146は、復号された受信データと誤り訂正符号とを、バッファ150に格納する。
ステップS208において、ECC演算部152は、バッファ150に格納された受信データを取得し、取得した受信データと上記式(1)に示した巡回符号生成多項式G(x)とに基づいて、誤り訂正符号を計算する。
ステップS210において、ECC比較部154は、バッファ150に格納された誤り訂正符号と、上記ステップS208で計算された誤り訂正符号とに基づいて、シンドロームを算出する。
ステップS312において、誤り検出部256は、上記ステップS210で算出されたシンドロームが当該テーブルに対応しているか否かを判定する。上記ステップS210で算出されたシンドロームが当該テーブルに存在している場合には、ステップS314へ進む。一方、上記ステップS210で算出されたシンドロームが当該テーブルに存在していない場合には、ステップS313へ進む。
ステップS313において、誤り検出部256は、繰り返し回数kが予め設定された回数以上であるか否かを判定する。繰り返し回数kが予め設定された回数以上である場合には、ステップS220へ進む。一方、繰り返し回数kが予め設定された回数未満である場合には、ステップS314へ進む。
ステップS314では、上記ステップS210又は前回の本ステップS314で演算されたシンドロームと上記演算式(5)とに基づいて、シンドロームを演算する。
このように、バッファを2段以上設け、ビットの誤り位置の特定のための演算を繰り返すことで、レイテンシーは大きくなるが、ビットの誤り位置とシンドロームとを対応付けるための情報のメモリが削減される。
なお、上記の実施の形態で説明した情報伝送システムの構成は一例であり、本発明の主旨を逸脱しない範囲内においてその構成を変更してもよいことは言うまでもない。例えば、符号化装置と復号化装置とを有する情報伝送システムとして説明したが、符号化手段と復号化手段とを兼ね備える装置とし、装置間でシリアル伝送を行う情報伝送システムとしてもよい。また、ビット数変換も64B66Bのみでなく、他のビット数変換も可能である。
また、上記の実施の形態では、2ビットのデータの一例として1024(=210)ビットのデータが用い、N+3次の巡回符号生成多項式の一例として13次の巡回符号生成多項式を用いる場合を例に説明したが、これに限定されるものではない。例えば、データが1024(=210)ビットである場合には、式(3)のスクランブラに対応する13次の生成多項式として、図18に示すような係数を有する13次の巡回符号生成多項式を用いてもよい。なお、図18の各誤りパターンの数字は、シンドロームの番号Pを表す。例えば、巡回符号生成多項式の係数が図18の太枠線で囲われた係数である場合、誤りパターン2に対応するシンドロームの番号Pは1191〜1209であり、誤りパターン3に対応するシンドロームの番号Pは3256〜3294であり、誤りパターン4に対応するシンドロームの番号Pは3807〜4772であることを表す。図18は、式(3)のスクランブラに対応する13次の生成多項式の例であるが、一般的にx+x+1の多項式(a,bは整数、a>b、a≠2b)でスクランブラされた場合でも、aが58以下であれば、13次の巡回符号生成多項式(209種類)のいずれかで対応可能である。
また、上記の実施の形態では、13次の巡回符号生成多項式を用いる場合を例に説明したが、2ビットのデータに対してN+3次の巡回符号生成多項式を用いる場合であれば、どのような次数であってもよい。例えば、211(=2048)ビットのデータに対しては14次の巡回符号生成多項式が用い、212(=4096)ビットのデータに対しては15次の巡回符号生成多項式が用い、213(=8192)ビットのデータに対しては16次の巡回符号生成多項式が用いることが可能である。
例えば、巡回符号生成多項式を16次に拡張すれば、8176(=8192−16)ビットまで対応可能となる。すなわち、16ビットの誤り訂正符号で、8192ビットのFECフレームが構成される。従来の方式では、4つのFECフレームで3968ビットまでしか対応されず、しかも、4つのFECフレームで64ビットの誤り訂正符号が必要となる。
なお、例えば、16次の巡回符号生成多項式を用いて誤り訂正符号を16ビットに拡張させ、4080ビットのデータに対応させてもよい。この場合には、16ビットの誤り訂正符号で、4096ビットのFECフレームが構成される。
本発明を通信手段により提供することはもちろん、CDROM等の記録媒体に格納して提供することも可能である。
10 情報伝送システム
12 符号化装置
14,214 復号化装置
16 伝送路
120 データ受付部
122 変換部
124 ECC演算部
126 スクランブラ部
128 64B66B符号化部
130 P/S変換部
132 送信部
140 受信部
142 S/P変換部
144 64B66B復号化部
146 デスクランブラ部
148,248 エラー訂正部
150 バッファ
152 ECC演算部
154 ECC比較部
156,256 誤り検出部
158 訂正部
160 エラー出力部
162 データ出力部
250 第1のバッファ
251 第2のバッファ
252 第3のバッファ
253 第4のバッファ
254 第5のバッファ

Claims (6)

  1. 符号化装置から送信されたデータを復号化する復号化装置であって、
    前記符号化装置は、
    ビット以下のビット数に対応するブロックの送信データを取得し、
    前記送信データとN+3次の巡回符号生成多項式とに応じて、N+3ビットの誤り訂正符号を計算し、該誤り訂正符号を前記送信データに付加し、
    前記巡回符号生成多項式は、x +x +1の多項式(a,bは整数、a>b、a≠2b)によるデスクランブル処理によって、データのブロック内に拡散する3ビット以下のビット誤りの4つの誤りパターンの各々について、前記誤りパターン毎に、2 種類以上の連続するビットの誤り位置を表すシンドロームを生成するように予め設定されており、
    前記多項式x +x +1に従って、誤り訂正符号が付加された前記送信データをスクランブリング処理することにより、通信対象データを生成し、前記通信対象データを復号化装置へ送信し、
    前記復号化装置は、
    前記符号化装置から送信された前記通信対象データを受信する受信手段と、
    前記受信手段により受信された前記通信対象データを復号化することにより、前記通信対象データに対応する受信データと該受信データに付与されている前記誤り訂正符号を得る復号化手段と、
    前記復号化手段により得られた前記受信データと、前記受信データに付与されている前記誤り訂正符号とに対して、前記多項式x +x +1に従って、デスクランブリング処理を実行することにより、デスクランブル処理済みの受信データを生成するデスクランブラ手段と、
    前記デスクランブラ手段により得られたデスクランブル処理済みの受信データと、前記巡回符号生成多項式とに基づいて、誤り訂正符号を演算する誤り訂正符号演算手段と、
    前記受信データに付与されている前記誤り訂正符号と、前記誤り訂正符号演算手段により演算された誤り訂正符号とに基づいて、シンドロームを計算する誤り訂正符号比較手段と、
    前記誤り訂正符号比較手段により得られた前記シンドロームと、2 (N+3) −1種類のシンドロームとビットの誤り位置とが予め対応付けられたテーブルとから、前記誤り訂正符号比較手段により得られた前記シンドロームに対応する前記誤りパターンに応じて前記受信データの誤り位置を算出する誤り検出手段と、
    前記誤り検出手段によって算出された前記誤り位置の前記受信データを訂正する訂正手段と、
    を備える、復号化装置。
  2. 前記誤り検出手段は、前記シンドロームが前記テーブルにおいて前記4つの誤りパターンに含まれる誤り位置と対応していない場合に、前記受信データの訂正不能の誤りを検出する
    請求項1に記載の復号化装置。
  3. 前記誤り検出手段は、演算された前記シンドロームがM種類のシンドロームと誤り位置pを対応させた前記テーブルに存在しない場合に、更に、演算された前記シンドロームと予め設定された演算式とに基づいて、シンドロームを演算することを、演算された前記シンドロームが前記テーブルに存在するまで繰り返し、前記シンドロームと前記シンドロームの演算の繰り返し回数kと前記テーブルに対応した誤り位置pとに基づいて、前記受信データの誤り位置を検出する
    請求項1に記載の復号化装置。
  4. 前記誤り検出手段は、前記シンドロームの演算の繰り返し回数が予め定められた値より大きい場合に、前記データの訂正不能の誤りを検出する
    請求項3に記載の復号化装置。
  5. 符号化装置と、請求項1〜請求項4の何れか1項に記載の復号化装置と、を備えた情報伝送システムであって、
    前記符号化装置は、
    ビット以下のビット数に対応するブロックの送信データを取得し、
    前記送信データとN+3次の巡回符号生成多項式とに応じて、N+3ビットの誤り訂正符号を計算し、該誤り訂正符号を前記送信データに付加し、
    前記巡回符号生成多項式は、x +x +1の多項式(a,bは整数、a>b、a≠2b)によるデスクランブル処理によって、データのブロック内に拡散する3ビット以下のビット誤りの4つの誤りパターンの各々について、前記誤りパターン毎に、2 種類以上の連続するビットの誤り位置を表すシンドロームを生成するように予め設定されており、
    前記多項式x +x +1に従って、誤り訂正符号が付加された前記送信データをスクランブリング処理することにより、通信対象データを生成し、前記通信対象データを復号化装置へ送信する、
    情報伝送システム。
  6. コンピュータを、請求項1〜請求項4の何れか1項に記載の復号化装置を構成する各手段として機能させるためのプログラム。
JP2016221691A 2016-02-03 2016-11-14 復号化装置、プログラム、及び情報伝送システム Active JP6930090B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016019181 2016-02-03
JP2016019181 2016-02-03

Publications (2)

Publication Number Publication Date
JP2017139738A JP2017139738A (ja) 2017-08-10
JP6930090B2 true JP6930090B2 (ja) 2021-09-01

Family

ID=59387272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016221691A Active JP6930090B2 (ja) 2016-02-03 2016-11-14 復号化装置、プログラム、及び情報伝送システム

Country Status (3)

Country Link
US (1) US20170222752A1 (ja)
JP (1) JP6930090B2 (ja)
CN (1) CN107040333B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017007483A1 (en) * 2015-07-09 2017-01-12 Hewlett-Packard Development Company, L.P. Multi-dimensional cyclic symbols
US11048602B2 (en) * 2017-10-17 2021-06-29 SK Hynix Inc. Electronic devices
CN109687938B (zh) * 2018-11-19 2022-03-25 京信网络系统股份有限公司 应用于直放站中的帧数据处理方法、装置和计算机设备

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6618395B1 (en) * 1999-05-27 2003-09-09 3Com Corporation Physical coding sub-layer for transmission of data over multi-channel media
US7318185B2 (en) * 2001-08-23 2008-01-08 Nortel Networks Limited Method and apparatus for scrambling based peak-to-average power ratio reduction without side information
TW548915B (en) * 2001-09-11 2003-08-21 Macronix Int Co Ltd Transmission convergence layer circuit of receiver for asynchronous transmission and its operation method
US20030217320A1 (en) * 2002-05-20 2003-11-20 Gorshe Steven Scott Cyclic redundancy check circuit for use with self-synchronous scramblers
US7284184B2 (en) * 2003-01-30 2007-10-16 International Business Machines Corporation Forward error correction scheme compatible with the bit error spreading of a scrambler
US7257759B2 (en) * 2004-08-19 2007-08-14 Alcatel Lucent Accounting for error carryover in error correction on M-bit encoded links
JP4612864B2 (ja) * 2005-05-19 2011-01-12 キヤノン株式会社 通信装置、当該装置における受信方法、コーデック、デコーダ、通信モジュール、通信部及びデコード方法
US7676733B2 (en) * 2006-01-04 2010-03-09 Intel Corporation Techniques to perform forward error correction for an electrical backplane
US7913151B1 (en) * 2006-05-26 2011-03-22 Pmc-Sierra, Inc. Forward error correction with self-synchronous scramblers
CN101087180B (zh) * 2006-06-08 2012-05-23 华为技术有限公司 无线信道的译码方法、装置及其应用
CN100546206C (zh) * 2007-02-07 2009-09-30 华为技术有限公司 一种实现解码的电路和方法
CN101252361B (zh) * 2007-10-11 2011-12-21 国民技术股份有限公司 一种支持预搜索的面积紧凑型bch并行译码电路
US8458560B2 (en) * 2008-01-22 2013-06-04 Ciena Corporation Systems and methods for efficient parallel implementation of burst error correction codes
CN100571045C (zh) * 2008-03-03 2009-12-16 炬才微电子(深圳)有限公司 一种解码伴随式的计算方法、电路及解码器
CN101697490B (zh) * 2009-10-16 2013-09-25 苏州国芯科技有限公司 一种应用在基于理德-所罗门码的ecc模块上的解码方法
CN101873143B (zh) * 2010-06-01 2013-03-27 福建新大陆电脑股份有限公司 一种rs纠错码解码器中的伴随式计算电路及其计算方法
CN104301070A (zh) * 2014-10-10 2015-01-21 中国石油天然气集团公司 一种用于随钻测量系统数据检错纠错的方法

Also Published As

Publication number Publication date
CN107040333B (zh) 2021-04-13
CN107040333A (zh) 2017-08-11
JP2017139738A (ja) 2017-08-10
US20170222752A1 (en) 2017-08-03

Similar Documents

Publication Publication Date Title
US7278085B1 (en) Simple error-correction codes for data buffers
US20200195377A1 (en) Forward error correction with compression coding
JP6930090B2 (ja) 復号化装置、プログラム、及び情報伝送システム
KR880014463A (ko) 리드-솔로몬 에러 보정 코드 엔코더
CN107239362B (zh) 一种并行crc校验码的计算方法及系统
JP6657690B2 (ja) 復号化装置、プログラム、及び情報伝送システム
US20130139028A1 (en) Extended Bidirectional Hamming Code for Double-Error Correction and Triple-Error Detection
JP6417937B2 (ja) 復号化装置、プログラム及び情報伝送システム
RU2310273C2 (ru) Способ кодирования-декодирования информации в системах передачи данных
JP7116374B2 (ja) 短縮レイテンシ誤り訂正復号
KR102532623B1 (ko) Raid에 맞춤화된 bch 인코딩 및 디코딩 방법, 및 그 장치
US20170288697A1 (en) Ldpc shuffle decoder with initialization circuit comprising ordered set memory
JP2018074545A (ja) データ処理システム及びデータ処理装置
CN115037415B (zh) 基于crc的纠错编码的方法、装置、终端
US20220345157A1 (en) Multibyte error detection
JP6693187B2 (ja) 復号化装置、プログラム、及び情報伝送システム
JP3248098B2 (ja) シンドローム計算装置
US10193573B2 (en) Method and data processing device for determining an error vector in a data word
EP2285003B1 (en) Correction of errors in a codeword
JP6336547B2 (ja) 訂正信号を決定する回路構成及びその方法
CN115037414B (zh) 基于crc的纠错解码的方法、装置、终端
US20230370092A1 (en) Error Correction With Fast Syndrome Calculation
US20230216525A1 (en) Method for generating burst error correction code, device for generating burst error correction code, and recording medium storing instructions to perform method for generating burst error correction code
JP2005057741A (ja) インラインワイヤ誤り訂正
KR100192802B1 (ko) 리드 솔로몬 디코더의 에러값 계산 및 정정 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191024

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210215

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210713

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210726

R150 Certificate of patent or registration of utility model

Ref document number: 6930090

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150