JP2021525976A - 階段符号復号方法及び階段符号復号装置 - Google Patents
階段符号復号方法及び階段符号復号装置 Download PDFInfo
- Publication number
- JP2021525976A JP2021525976A JP2020501303A JP2020501303A JP2021525976A JP 2021525976 A JP2021525976 A JP 2021525976A JP 2020501303 A JP2020501303 A JP 2020501303A JP 2020501303 A JP2020501303 A JP 2020501303A JP 2021525976 A JP2021525976 A JP 2021525976A
- Authority
- JP
- Japan
- Prior art keywords
- decoding
- waiting
- subcode
- block
- subcode block
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/60—Receivers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
- H03M13/2909—Product codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2939—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using convolutional codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
- H04L1/005—Iterative decoding, including iteration between signal detection and decoding operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0052—Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Electromagnetism (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本発明は、階段符号復号方法及び階段符号復号装置を公開し、前記方法は、スライディングウィンドウの長さLを取得し、P番目からL個のサブコードブロックをスライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得するステップ1と、第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、複数の復号待ちグループをそれぞれ復号し、且つ復号結果により複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するステップ2と、スライディングウィンドウを前方へN個のサブコードブロックの長さだけスライドさせるステップ3と、第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、複数の第2の復号待ちグループを復号し、第2の更新サブコードブロックを取得した後、第2の更新サブコードブロックにおける最初のM個のサブコードブロックを出力するステップ4と、スライディングウィンドウを後方へSだけスライドさせ、すべてのサブコードブロックの復号結果を出力するまで、ステップ2に戻り、ただし、SはMとNの和であるステップ5とを含む。【選択図】図1
Description
本発明は、2017年07月10日中国特許庁に出願された、出願番号201710555990.9の中国特許出願の優先権を主張し、当該出願のすべての内容は参照により本発明に組み込まれる。
本発明は、光通信FEC技術分野に関し、例えば階段符号復号方法及び階段符号復号装置に関する。
前方誤り訂正(Forward Error Correction、FEC)技術は、現在、システムの符号誤り率性能を改善してシステム通信の信頼性を向上するように光通信システムに広く適用されている。そのうち、階段符号は、畳み込み符号及び積符号の概念を組み合わせた新しいFEC符号態様であり、階段符号の符号化態様は積符号の符号化態様と類似するとともに、いずれの隣接する2つのサブコードブロックの間に強い相関性を有し、つまり、いずれの隣接する2つの階段符号のサブコードブロックは、1つの完全なBCH(Bose、Ray−Chaudhuri、Hocquenghem)コードブロックユニットとして組み合わせることができ、このように階段符号全体は、長さが無限に向かう1つのチェーン構造と見なされることができる。階段符号の復号態様では、1つの階段符号のサブコードブロックの復号出力を完成するたびに、複数回の復号フローを往復して繰り返す必要があり、さらに、高い復号性能を得るために復号回数を増やす必要があり、ハードウェア回路の実現複雑度が高く、消費電力が大きく、復号遅延が大きいとともに、復号後の性能も悪くなることに繋がる。
以下は、本明細書で詳細に説明される主題の概要である。本概要は特許請求の範囲を限定するためのものではない。
本発明は、関連技術においてFEC符号の復号用のハードウェア回路の実現複雑度が高く、消費電力が大きく、復号遅延が大きく、且つ復号性能が悪いという状況を回避するために用いられる階段符号復号方法及び階段符号復号装置を提供する。
本発明の一態様によれば、ステップ1からステップ5を含む階段符号復号方法を提供する。
ステップ1は、スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数である。
ステップ2は、前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得する。
ステップ3は、前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さい。
ステップ4は、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、複数の第2の復号待ちグループに対して復号を行い、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力する。
ステップ5は、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、ステップ2に戻り、ただし、SはMとNの和である。
本発明に係る実施例は、第1の復号待ちサブコードブロック取得モジュール、第1の復号モジュール、第1のスライディングモジュール、第2の復号モジュール及び第2のスライディングモジュールを含む階段符号復号装置をさらに提供する。
第1の復号待ちサブコードブロック取得モジュールは、スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数であるように構成される。
第1の復号モジュールは、前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するように構成される。
第1のスライディングモジュールは、前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さいように構成される。
第2の復号モジュールは、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分けた後、複数の第2の復号待ちグループに対して復号を行い、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力するように構成される。
第2のスライディングモジュールは、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、第1のスライディングモジュールと第2の復号モジュールをトリガするように戻り、ただし、SはMとNの和であるように構成される。
本発明に係る実施例は、記憶媒体をさらに提供し、当該記憶媒体は記憶されるプログラムを含み、上記プログラムが作動されると、上記いずれか1項に記載の方法を実行する。
本発明に係る実施例は、プロセッサをさらに提供し、当該プロセッサは、プログラムを作動させ、当該プログラムが作動されると、上記いずれか1項に記載の方法を実行するように構成される。
本発明は、ステップ1からステップ5を含む階段符号復号方法をさらに提供する。
ステップ1は、スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数である。
ステップ2は、前記第1の復号待ちサブコードブロックをグループ分けした後にそれぞれ復号し、且つ復号結果により第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得する。
ステップ3は、前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、前記第2の復号待ちサブコードブロックをグループ分けした後に復号し、復号結果により前記第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得する。
ステップ4は、前記スライディングウィンドウを前記受信時間に従って後方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、再びステップ2及びステップ3を実行する。このステップをK回繰り返して実行し、ただし、Kは0以上の整数であり、Kは0であると、このステップを実行しなくてもよく、ステップ5に直接移行することを示す。
ステップ5は、第2の更新サブコードブロックを取得した後、最初のM個の前記第2の更新サブコードブロックを復号結果として出力し、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、ステップ2に戻る。
一実施例において、SはMとNの和である。
一実施例において、Mは1又は2である。
本発明に係る一実施例は、当該装置は第1の復号待ちサブコードブロック取得モジュール、第1の復号モジュール、第1のスライディングモジュール、第2の復号モジュール及び第2のスライディングモジュールを含む階段符号復号装置をさらに提供する。
第1の復号待ちサブコードブロック取得モジュールは、スライディングウィンドウの長さLを取得し、受信時間前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数であるように構成される。
第1の復号モジュールは、前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するように構成される。
第1のスライディングモジュールは、前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、且つ前記複数の第2の復号待ちグループを復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得するように構成される。
第2の復号モジュールは、前記スライディングウィンドウを前記受信時間に従って後方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、第1の復号モジュールと第1のスライディングモジュールをトリガし、第2の復号モジュールをK回実行させるようにトリガし、ただし、Kは0以上の整数であり、Kは0であると、このステップを実行しなくてもよく、ステップ5に直接移行することを示すように構成される。
第2のスライディングモジュールは、第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックの最初のM個のサブコードブロックを復号結果として出力し、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、ステップ2に戻るように構成される。
一実施例において、SはMとNの和である。
一実施例において、Mは1又は2である。
本発明に係る実施例は、記憶媒体をさらに提供し、当該記憶媒体は記憶されるプログラムを含み、上記プログラムが作動されると、上記いずれか1項に記載の方法を実行する。
本発明に係る実施例は、プロセッサをさらに提供し、当該プロセッサは、プログラムを作動させ、当該プログラムが作動されると、上記いずれか1項に記載の方法を実行するように構成される。
図面及び詳細な説明を読んで理解した後に、他の点を明らかにすることができる。
図面は一部の実施形態を示すのみであり、本発明を限定するものではない。そして、図面全体において、同一の参照符号は同一の部品を示す。図面において、
図1は本発明の方法に係る実施例1における階段符号復号方法のフローチャートである。
図2は本発明の方法に係る実施例2における階段符号復号方法のグループ分け復号のフローチャートである。
図3は本発明の方法に係る実施例3における階段符号復号方法のフローチャートである。
図4は本発明の方法に係る実施例4における階段符号硬判定復号の初期化復号方法のフローチャートである。
図5は本発明の方法に係る実施例4における階段符号硬判定復号の復号方法のフローチャートである。
図6は本発明の方法に係る実施例5における階段符号軟判定復号の初期化復号方法のフローチャートである。
図7は本発明の方法に係る実施例5における階段符号軟判定復号の復号方法のフローチャートである。
図8は本発明の方法に係る実施例6における階段符号軟・硬判定組み合わせ復号の初期化復号方法のフローチャートである。
図9は本発明の方法に係る実施例6における階段符号軟・硬判定組み合わせ復号の復号方法のフローチャートである。
図10は本発明の方法に係る実施例7における階段符号復号装置の構造模式図である。
図11は本発明の方法に係る実施例8における階段符号の復号方法のフローチャートである。
図12は本発明の方法に係る実施例9における階段符号の復号方法のフローチャートである。
以下に図面を参照しながら本発明における例示的な実施例を詳細に説明する。図面において本発明の例示的な実施例を示すが、複数の形態で本発明を実現することができ、且つここで説明される実施例に制限されるべきではないことを理解すべきである。これらの実施例を提供することは、本発明をより明確に理解し且つ本発明の保護範囲を完全的に当業者に伝達するためである。
図1は本発明の方法に係る実施例1における階段符号復号方法のフローチャートであり、図1に示すような本発明の方法に係る実施例1における階段符号復号方法は、ステップ1からステップ5を含む。
ステップ1は、スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目のサブコードブロックからL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数である。
一実施例において、前記スライディングウィンドウは、階段符号の復号フローにおいて、復号待ちサブコードブロックにおいて前後にスライドされ、且つ特定の復号方法を補助して復号するように構成される。前記スライディングウィンドウの長さLは必要に応じて予め設定されてもよい。本実施例に係る方法において、受信時間の前後の順に従ってL個の前記サブコードブロックを前記スライディングウィンドウ内の復号待ちサブコードブロックとして連続的に取得する。前記Lは、本実施例に記載の方法を完全的に完成することを保証するように2よりも大きい正整数に設定されることができる。前記P番目のサブコードブロックから連続的に取得することは、後続のスライディングウィンドウを前方へスライドさせることを準備するためである。
一実施例において、Lは偶数である。
ステップ2は、前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得する。
一実施例において、前記スライディングウィンドウ内の前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号し、複数の第1の復号待ちグループをそれぞれ復号するので、前記複数の第1の復号待ちグループのそれぞれのグループ内の復号待ちサブコードブロックを特定の順番に従ってそれぞれ復号してもよいし、複数の第1の復号待ちグループを同時に復号してもよいが、前記複数の第1の復号待ちグループ間は復号フローが関連しない。
ステップ3は、前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さい。一実施例において、Nは1である。
一実施例において、前方へN個のサブコードブロックだけスライドさせた後に、前記スライディングウィンドウ内に、受信時間がより早いN個の前記サブコードブロックが滑り込まれ、受信時間が最も遅いN個の前記第1の更新サブコードブロックが滑り出る。P番目の前記サブコードブロックから取得するので、前方へスライドするNは必ずPよりも小さい。
ステップ4は、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、前記複数の第2の復号待ちグループをそれぞれ復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得した後に、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力する。
一実施例において、前記スライディングウィンドウ内の前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、複数の第2の復号待ちグループをそれぞれ復号し、複数の第2の復号待ちグループをそれぞれ復号するので、前記第2の復号待ちグループのそれぞれのグループ内の復号待ちサブコードブロックを特定の順番に従ってそれぞれ復号してもよいし、複数の第2の復号待ちグループを同時に復号してもよいが、前記複数の第2の復号待ちグループ間は復号フローが関連しない。
出力された前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックは、受信時間の前後の順に従って、前記スライディングウィンドウ内に最初に受信したM個の前記第2の復号待ちサブコードブロックに対応する前記第2の更新サブコードブロックである。本ステップは前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として直接出力するので、復号レートへの要求及び予期される正確性へのニーズを満たす前提で、M値をできるだけ小さく設定すべきである。前記Mは、10よりも小さい正整数に設定されることができ、一実施例において、Mは2である。
ステップ5は、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、ステップ2に戻り、ただし、SはMとNの和である。
一実施例において、N=1、M=2にすると、S=3になる。
一実施例において、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを出力した後、前記スライディングウィンドウを後方へS個の前記サブコードブロックだけスライドさせ、スライドした後に依然として前記スライディングウィンドウ内に位置し残っている第2の更新子モジュールと新たに滑り込んだ前記サブコードブロックを、前記スライディングウィンドウの新しい第1の復号待ちサブコードブロックとし、ステップ2に戻ってグループ分け及び復号を行い、且つ前記サブコードブロックに対応するすべての第2の更新サブコードブロックを復号結果として出力するまで、新しい第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力するか、或いは、必要に応じて、上記反復復号ステップを設定されたサブコードブロックの位置に停止させる。
本実施例に係る階段符号復号方法は、前記スライディングウィンドウ内の復号待ちサブコードブロックを複数のグループに分け、前記複数のグループをそれぞれ復号し、復号結果により前記復号待ちサブコードブロックを更新して第1の更新サブコードブロックを取得した後、スライディングウィンドウを前方へN個のサブコードブロックだけスライドさせた後に、スライドした後ウィンドウ内の第2の復号待ちサブコードブロックを再度グループ分け及び復号を行い、第2の更新サブコードブロックを取得し、第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力した後に、スライディングウィンドウを後方へS個のサブコードブロックだけスライドさせ、ただし、SはMとNの和であり、再び第1の更新サブコードブロックを取得するステップに戻って反復復号を行うことで、更新サブコードブロックを復号結果として出力し、1つの階段符号サブコードブロックの復号出力を完成するたびに、有限回の反復復号フローだけを行う必要があり、ハードウェア回路の実現複雑度を低減し、復号の時間遅延を減少し、且つ復号性能を向上する。
図2は本発明の方法に係る実施例2における階段符号復号方法におけるグループ分け復号のフローチャートであり、図2に示すような本発明の方法に係る実施例2における階段符号復号方法は、前記実施例1における「前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得する」というステップの1つの実現態様であり、ステップ10、ステップ20及びステップ30を含む。
ステップ10は、前記第1の復号待ちサブコードブロックにおける1番目から、1個を間隔として前記第1の復号待ちサブコードブロックを転置し、第1の復号待ち転置サブコードブロックを取得する。
一実施例において、階段符号の特徴により、ペアでグループ化して復号する時に、その中の1つのサブコードブロックを転置する必要があり、本実施例に係る方法は、1つの前記第1の復号待ちサブコードブロックを間隔として、1番目から転置を行い、第1の復号待ち転置サブコードブロックを取得する。
ステップ20は、各前記第1の復号待ち転置サブコードブロックにおける各転置サブコードブロックと、隣接する後に受信した前記第1の復号待ちサブコードブロックを1グループとしてグループ分けし、複数の第1の復号待ちグループを取得する。
一実施例において、取得した各第1の復号待ちグループにおいて、最初に受信した前記第1の復号待ちサブコードブロックが転置され、後に受信した第1の復号待ちサブコードブロックが転置されていない。
ステップ30は、複数の前記第1の復号待ちグループをそれぞれ復号し、復号結果により前記複数の第1の復号待ちサブコードグループにおける前記第1の復号待ちサブコードブロックを更新し、前記複数の第1の更新サブコードブロックを取得する。
一実施例において、複数の前記第1の復号待ちグループをそれぞれ行ごとに復号し、且つ複数の前記第1の復号待ちグループ間は復号が関連せず、必要に応じて復号の順番を任意に設定するか、または同時に復号してもよい。なお、本実施例は主に前記第1の復号待ちサブコードブロックをグループ分け及び復号を完成し、ただし、グループ分けのステップは、前記第1の復号待ちサブコードブロックを前記受信時間に従って、隣接する2つの前記第1の復号待ちサブコードブロックを1グループとしてグループ分けすることを採用してもよく、複数の第1の復号待ちグループを取得し、且つ1つの前記第1の復号待ちサブコードブロックは1つの前記第1の復号待ちグループだけに属し、そして前記第1の復号待ちグループにおける最初に受信した前記第1の復号待ちサブコードブロックを転置した後、さらに後続の復号ステップを行う。
本実施例に係る階段符号復号方法は、前記スライディングウィンドウ内の第1の復号待ちサブコードブロックを受信時間の前後の順に従って、ペアでグループ化してグループ分けし複数の第1の復号待ちグループを取得した後、第1の復号待ちサブコードブロックをそれぞれ復号して更新する。第1の復号待ちサブコードブロックを複数のグループに分けた後に前記複数のグループをそれぞれ復号するので、階段符号の復号レートを大幅に向上する。
一実施例において、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、複数の第2の復号待ちグループを復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得することは、前記第2の復号待ちサブコードブロックにおける1番目のサブコードブロックから、1つのコードブロックを間隔として前記第2の復号待ちサブコードに対応するサブコードブロックを転置し、第2の復号待ち転置サブコードブロックを取得することと、前記第2の復号待ち転置サブコードブロックにおける各転置サブコードブロックと、隣接する後に受信した前記第2の復号待ちサブコードブロックを1グループとしてグループ分けし、複数の第2の復号待ちグループを取得することと、前記複数の第2の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第2の復号待ちグループにおける前記第2の復号待ちサブコードブロックを更新し、第2の更新サブコードブロックを取得することと含む。
一実施例において、本実施例の説明は図2に示す実施例2の説明と同じである。本実施例に係る階段符号復号方法は、前記スライディングウィンドウ内の第2の復号待ちサブコードブロックを受信時間の前後の順に従ってペアでグループ化して複数の第2の復号待ちグループにグループ分けした後に、複数の第2の復号待ちグループをそれぞれ復号し且つ第2の復号待ちサブコードブロックを更新する。第2の復号待ちサブコードブロックを複数のグループに分けた後に複数のグループをそれぞれ復号するので、階段符号の復号レートを大幅に向上する。
一実施例において、前記第1の復号待ちグループをそれぞれ復号することは、前記第1の復号待ちグループにおける前記第1の復号待ちサブコードブロックが硬判定された符号であると、線形ブロック符号を利用して復号することと、前記第1の復号待ちサブコードブロックが硬判定された符号ではないと、軟判定復号アルゴリズムを利用して復号することとを含む。本実施例は、異なる第1の復号待ちサブコードブロックに対して、異なる復号態様をサポートし、本発明に係る階段符号復号の適用範囲を向上する。
なお、前記第2の復号待ちグループをそれぞれ復号することは、前記第1の復号待ちグループをそれぞれ復号することと同じであり、説明を省略する。
一実施例において、L個の前記サブコードブロックを前記スライディングウィンドウにおける復号待ちサブコードブロックとして連続的に取得することは、取得された1番目のサブコードブロックがすべての前記サブコードブロックにおける1番目に受信した前記サブコードブロックであると、全零コードブロックを前記スライディングウィンドウにおける1番目の前記復号待ちサブコードブロックとして補足し、且つ前記スライディングウィンドウにおけるL番目の前記復号待ちサブコードブロックを前記スライディングウィンドウから滑り出せることを含み、復号結果により前記復号待ちサブコードブロックを更新することは、復号結果により前記全零コードブロック以外の前記復号待ちサブコードブロックを更新することを含む。本実施例は、前記スライディングウィンドウにおける1番目に受信した復号待ちサブコードブロックが、すべての前記サブコードブロックにおける1番目に受信したサブコードブロックであると、1番目の前記復号待ちサブコードブロックを復号するように前記スライディングウィンドウにおける1番目の位置に1つの全零コードブロックを補足する必要があることを示す。本実施例は、1番目のサブコードブロック前に全零コードブロックを補足する態様により、1番目のサブコードブロックがグループ分けされた後の復号状況を回避し、本発明に係る階段符号の適用範囲を向上する。
図3は本発明の方法に係る実施例3における階段符号復号方法のフローチャートであり、図3に示すような本発明の方法に係る実施例3における階段符号復号方法は、本発明に係る実施例1におけるステップ1の前のステップに対する1つの実現態様であり、ステップ100及びステップ200を含む。
ステップ100は、1番目の前記サブコードブロックを受信してから、順番に従って隣接する2つの前記サブコードブロックを1グループとしてグループ分けし、複数の復号待ち初期グループを取得し、1つの前記サブコードブロックは1つの前記復号待ち初期グループだけに属し、ただし、受信したサブコードブロックの数量は奇数であると、全零コードブロックを補足して前記サブコードブロックと共にグループ分けを行い、複数の復号待ち初期グループを得る。
一実施例において、実施例1におけるステップ1が開始する前に、受信したサブコードブロックの数量がL個未満であるに、階段符号の復号正確度を向上するために、本実施例は受信したサブコードブロックをグループ分けし、1番目のサブコードブロックを受信すると、全零コードブロックを補足して、ペアでグループ化して1グループを構成し、2番目のサブコードブロックを受信すると、さらに1番目と2番目のサブコードブロックをペアでグループ化して1グループとして構成し、3番目のサブコードブロックを受信すると、全零コードブロックと1番目のサブコードブロックを1グループとして構成し、且つ2番目のサブコードブロックと3番目のサブコードブロックを1グループとして構成し、このように類推する。
ただし、各復号待ち初期グループにおいて、最初に受信した前記サブコードブロックは転置する必要がある。
ステップ200は、前記複数の復号待ち初期グループを復号し、且つ復号結果により前記サブコードブロックを更新した後に、L番目の前記サブコードブロックを受信するまで、ステップ100に戻る。
一実施例において、受信した1番目のサブコードブロックから、1番目のサブコードブロックと全零コードブロックとで1番目の復号待ち初期グループを構成した後に、前記1番目の復号待ち初期グループを復号し、且つ復号結果により前記1番目のサブコードブロックを更新することができ、全零コードブロックが更新されていない。2番目のサブコードブロックを受信した後に、更新された1番目のサブコードブロックと受信した2番目のサブコードブロックとで2番目の復号待ち初期グループを構成した後に復号し、且つ1番目と2番目のサブコードブロックを更新し、受信するL番目の前記サブコードブロックまで、このように類推する。
本実施例に係る階段符号復号方法は、予め設定されたスライディングウィンドウの長さL個のサブコードブロックを受信する前に、ペアでグループ化する態様を利用して、受信したサブコードブロックを初期化の復号フローを行い、前記初期化の復号フローにより、後続の復号フローが開始する前に、既に受信したサブコードブロックを完全的な反復復号を行うことで、本発明に係る階段符号の復号符号誤り率を低下する。
以下に、本発明における硬判定復号、軟判定復号、軟・硬判定組み合わせ復号の初期化復号、及び本発明の硬判定復号、軟判定復号、軟・硬判定組み合わせ復号の正常的な復号フローを例示にして説明する。
図4は本発明の方法に係る実施例4における階段符号硬判定復号の初期化復号方法のフローチャートであり、L=6を例とし、受信した階段符号は硬判定された符号であると、復号フローは線形ブロック符号硬判定復号を直接行い、最初に受信したサブコードブロックの数量が6未満であると、受信したデータも復号することが推奨であり、このように後続に受信したサブコードブロックの数量が6に達する時の復号出力は完全な3回の反復復号を済んだ(1回の反復復号は1回の横方向及び1回の縦方向復号を含む)。
図4に示すような本発明の方法に係る実施例4における階段符号硬判定復号の初期化復号方法は以下の通りである。
1番目のサブコードブロックB1を受信すると、[BT 0、B1]を復号し(図4の左図で実線矢印1に示す)、且つB1コードブロックでの情報だけを更新し、ただし、Tは転置を意味し、BT 0は全零サブコードブロックの転置を示す。
2番目のサブコードブロックB2を受信すると、[BT 1、B2]を復号しながら(図4の左図で実線矢印2に示す)、B1及びB2コードブロックでの情報を更新し、ただし、BT 1は更新したサブコードブロックB1の転置を示す。3番目のサブコードブロックB3を受信すると、[BT 0、B1]及び[BT 2、B3]を復号しながら(図4の左図で実線矢印3、4に示す)、B1、B2及びB3コードブロックでの情報を更新し、ただし、BT 2は更新したサブコードブロックB2の転置を示す。
4番目のサブコードブロックB4を受信すると、[BT 1、B2]及び[BT 3、B4]を復号しながら(図4の左図で実線矢印5、6に示す)、B1、B2、B3及びB4コードブロックでの情報を更新する。
5番目のサブコードブロックB5を受信すると、[BT 0、B1]、[BT 2、B3]及び[BT 4、B5]を復号しながら(図4の左図で実線矢印7、8、9に示す)、B1、B2、B3、B4及びB5コードブロックでの情報を更新し、ただし、BT 2は更新したサブコードブロックB2の転置を示す。
サブコードブロックB0も含めば、スライディングウィンドウ内で既に6個のサブコードブロックを有するが(図4の左図で斜線部分に示す)、サブコードブロックB0は階段符号の約束した全零サブコードブロックであり、真の受信するコードブロックではないので、初期化復号が完成した後、復号出力がない。その後に受信した新しいコードブロックはB6、B7サブコードブロックであり、この時にスライディングウィンドウは後方へ2個のコードブロックの長さだけスライドした(図4の右図で斜線部分に示す)。この時にスライディングウィンドウの新しい位置内に含まれる6個のサブコードブロックはそれぞれ、B2、B3、B4、B5、B6及びB7である。実際に実現する時に、スライディングウィンドウは回路におけるキャッシュ装置に対応する。
図5は本発明の方法に係る実施例4における階段符号硬判定復号の復号方法のフローチャートであり、L=6を例とし、受信した階段符号は硬判定された符号であると、復号フローは線形ブロック符号硬判定復号を直接行い、図5に示すような本発明の方法に係る実施例4における階段符号硬判定復号の復号方法は、ステップ1からステップ6を含む。
ステップ1は、このスライディングウィンドウにおける6個のサブコードブロック(図5の左図で斜線部分に示す)は隣接する2個を単位として[BT 2、B3]、[BT 4、B5]及び[BT 6、B7]という3グループに分け(ただし、Tは転置を意味する)、後続の表現を容易にするために、これらのグループをそれぞれB(1)=[BT 2、B3]、B(2)=[BT 4、B5]、B(3)=[BT 6、B7]に記す。
ステップ2は、B(1)、B(2)及びB(3)符号グループユニットをそれぞれ行ごとに復号しながら(図5の左図で破線矢印1、2、3に示す)、B(1)、B(2)及びB(3)コードブロックにおける2つのサブコードブロックの情報を更新する。
なお、受信した階段符号は硬判定された符号であれば、復号フローはBCH硬判定復号を直接行わればよく、受信した階段符号は硬判定されていない軟判定情報であれば、復号方法はTurBo軟判定復号アルゴリズムである。同時に、以上の方法から、B1、B2、B3、B4及びB5は初期化復号のフローを済んだ後に既に何回目の復号を済み、このように出力されたB1は3回の反復デコード(1回の完全的な反復デコードは1回の横方向及び1回の縦方向デコードを含む)を済んだことが分かった。
ステップ3は、スライディングウィンドウを前方へ1個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる6個の階段符号サブコードブロックはそれぞれ、B1、B2、B3、B4、B5及びB6であり(図5の中図で斜線部分に示す)、この6個のサブコードブロックを、隣接する2個を単位として、B(1)=[BT 1、B2]、B(2)=[BT 3、B4]、B(3)=[BT 5、B6]という3グループに分ける。
ステップ4は、B(1)、B(2)及びB(3)符号グループユニットをそれぞれ復号しながら(図5の中図で破線矢印4、5、6に示す)、B(1)、B(2)及びB(3)コードブロックにおける情報を更新し、且つB(1)におけるB1、B2を出力し、このように出力されたB1、B2は同様に3回の反復デコードを済んだ。
ステップ5は、スライディングウィンドウを後方へ3個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる6個の階段符号サブコードブロックはそれぞれ、B4、B5、B6、B7、B8、B9であり(図5の右図で斜線部分に示すように、ただし、i≧0)、そしてステップS11からステップS14までの操作を繰り返し、B(1)に対応するB3、B4を出力する。
ステップ6は、ステップS15の操作を繰り返し、さらにB5、B6……のすべての階段符号サブコードブロックの復号出力を完成する。
本実施例において、1つの階段符号サブコードブロックの復号出力を完成するたびに、3回のコードブロック反復復号フローだけを行う必要がある。したがって、ハードウェア回路実現複雑度を大幅に低減しながら、復号の時間遅延も大幅に低減し、ネットワークのメトロ(MeTro)応用に有利であり、また、性能を大きく向上する。
図6は本発明の方法に係る実施例5における階段符号軟判定復号の初期化復号方法のフローチャートであり、L=4とし、受信した階段符号は硬判定されていない軟判定情報であれば、復号方法は多様な軟判定復号アルゴリズムを選択することができる。
最初にサブコードブロックを受信する数量は4未満であると、受信したデータも軟判定復号することが推奨であり、このように後続にサブコードブロックを受信する数量は4に達する時、復号出力は完全的な2回の反復復号(1回の反復復号は1回の横方向及び1回の縦方向復号を含む)を済んだ。図6は本発明の方法に係る実施例5における階段符号軟判定復号の初期化復号方法を示す。
1番目のサブコードブロックB1を受信すると、[BT 0、B1]を軟判定復号し(図6の左図で実線矢印1に示す)、且つB1コードブロックにおける軟判定情報だけを更新し、ただし、Tは転置を意味し、BT 0は全零サブコードブロックの転置を示す。
2番目のサブコードブロックB2を受信すると、[BT 1、B2]を軟判定復号しながら(図6の左図で実線矢印2に示す)、B1及びB2コードブロックにおける軟判定情報を更新し、ただし、BT 1は更新したサブコードブロックB1の転置を示す。
3番目のサブコードブロックB3を受信すると、[BT 0、B1]及び[BT 2、B3]を軟判定復号しながら(図6の左図で実線矢印3、4に示す)、B1、B2及びB3コードブロックにおける軟判定情報を更新し、ただし、BT 2は更新したサブコードブロックB2の転置を示す。
サブコードブロックB0も含めば、スライディングウィンドウ内で既に4個のサブコードブロックを有するが(図6の左図で斜線部分に示す)、サブコードブロックB0は階段符号の約束した全零サブコードブロックであり、真の受信するコードブロックではないので、初期化復号が完成した後、復号出力がない。次に受信した新しいコードブロックはB4サブコードブロックであり、この時にスライディングウィンドウは右へ1個のコードブロックの長さだけスライドした(図6の右図で斜線部分に示す)。この時、スライディングウィンドウの新しい位置内に含まれる4個のサブコードブロックはそれぞれB1、B2、B3及びB4である。実際に実現する時、スライディングウィンドウは回路におけるキャッシュ装置に対応する。
図7は本発明の方法に係る実施例5における階段符号軟判定復号の復号方法のフローチャートであり、受信した階段符号は硬判定されていない軟判定情報であれば、復号方法は多様な軟判定復号アルゴリズムを選択することができる。図7に示すような本発明の方法に係る実施例5における階段符号軟判定復号の復号方法は、ステップS21からステップS26を含む。
ステップS21は、このスライディングウィンドウにおける4個のサブコードブロック(図7の左図で斜線部分に示す)は隣接する2個を単位として、[BT 2、B3]、[BT 4、B5]という2グループに分け(ただし、Tは転置を意味する)、後続の表現を容易にするために、これらのグループをそれぞれB(1)=[BT 2、B3]、B(2)=[BT 4、B5]に記す。
ステップS22は、B(1)、B(2)符号グループユニットをそれぞれ行ごとに軟判定復号しながら(図7の左図で破線矢印1、2に示す)、B(1)、B(2)コードブロックにおける2つのサブコードブロックの情報を更新する。
ステップS23は、スライディングウィンドウを前方へ1個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる4個の階段符号サブコードブロックはそれぞれ、B1、B2、B3、B4(図7の中図で斜線部分に示す)であり、これらの4個のサブコードブロックを隣接する2個を単位として、B(1)=[BT 1、B2]、B(2)=[BT 3、B4]という2グループに分ける。
ステップS24は、B(1)、B(2)符号グループユニットをそれぞれ軟判定復号しながら(図7の中図で破線矢印3、4に示す)、B(1)、B(2)コードブロックにおける軟判定情報を更新し、且つB(1)におけるB1、B2軟判定情報を硬判定した後に出力し、このように出力されたB1、B2は同様に2回の反復デコードを済んだ。
ステップS25は、スライディングウィンドウを後方へ3個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる4個の階段符号サブコードブロックはそれぞれ、B4、B5、B6、B7であり(図7の右図で斜線部分に示す)、そしてステップS21からステップS24までの操作を繰り返し、B(1)に対応するB3、B4の硬判定情報を出力する。
ステップS26は、ステップS25の操作を繰り返し、さらにB5、B6……のすべての階段符号サブコードブロックの復号出力を完成する。
図8は本発明の方法に係る実施例6における階段符号軟・硬判定組み合わせ復号の初期化復号方法のフローチャートであり、L=6とし、本実施例に受信した階段符号は硬判定されていない軟判定情報であれば、復号方法は硬判定復号アルゴリズムと軟判定復号アルゴリズムを組み合わせた混合復号であり、最初に受信するサブコードブロックの数量は6未満であると、受信したデータも軟判定復号することが推奨であり、このように後続にサブコードブロックを受信する数量は6に達する時、復号出力は完全的な3回の反復復号(1回の反復復号は1回の横方向及び1回の縦方向復号を含む)を済んだ。
図8は本発明の方法に係る実施例6における階段符号軟・硬判定組み合わせ復号の初期化復号方法を示す。
1番目のサブコードブロックB1を受信すると、[BT 0、B1]を軟判定復号し(図8の左図で実線矢印1に示す)、且つB1コードブロックにおける軟判定情報だけを更新し、ただし、Tは転置を意味し、BT 0は全零サブコードブロックの転置を示す。
2番目のサブコードブロックB2を受信すると、[BT 1、B2]を軟判定復号しながら(図8の左図で実線矢印2に示す)、B1及びB2コードブロックにおける軟判定情報を更新し、ただし、BT 1は更新したサブコードブロックB1の転置を示す。
3番目のサブコードブロックB3を受信すると、[BT 0、B1]及び[BT 2、B3]を軟判定復号しながら(図8の左図で実線矢印3、4に示す)、B1、B2及びB3コードブロックにおける軟判定情報を更新し、ただし、BT 2は更新したサブコードブロックB2の転置を示す。
4番目のサブコードブロックB4を受信すると、[BT 1、B2]及び[BT 3、B4]を軟判定復号しながら(図8の左図で実線矢印5、6に示す)、B1、B2、B3及びB4コードブロックにおける軟判定情報を更新し、ただし、BT 3は更新したサブコードブロックB3の転置を示す。
5番目のサブコードブロックB5を受信すると、[BT 0、B1]、[BT 2、B3]及び[BT 4、B5]を軟判定復号しながら(図8の左図で実線矢印7、8、9に示す)、B1、B2、B3、B4及びB5コードブロックにおける軟判定情報を更新し、ただし、BT 4は更新したサブコードブロックB4の転置を示す。
サブコードブロックB0も含めば、スライディングウィンドウ内で既に6個のサブコードブロックを有するが(図8の左図で斜線部分に示す)、サブコードブロックB0は階段符号の約束した全零サブコードブロックであり、真の受信するコードブロックではないので、初期化復号が完成した後、復号出力がない。次に受信した新しいコードブロックはB6サブコードブロックであり、この時にスライディングウィンドウは右へ1個のコードブロックの長さだけスライドした(図8の右図で斜線部分に示す)。この時、スライディングウィンドウの新しい位置内に含まれる6個のサブコードブロックはそれぞれB1、B2、B3、B4、B5及びB6である。実際に実現する時、スライディングウィンドウは回路におけるキャッシュ装置に対応する。
図9は本発明の方法に係る実施例6における階段符号軟・硬判定組み合わせ復号の復号方法のフローチャートであり、L=6とし、本実施例に受信した階段符号は硬判定されていない軟判定情報であれば、復号方法は硬判定復号アルゴリズムと軟判定復号アルゴリズムを組み合わせた混合復号であり、図9に示すような本発明の方法に係る実施例6における階段符号軟・硬判定組み合わせ復号の復号方法は、ステップS31からステップS36を含む。
ステップS31は、このスライディングウィンドウにおける6個のサブコードブロックを(図9の左図で斜線部分に示す)隣接する2個を単位として、[BT 2、B3]、[BT 4、B5]及び[BT 6、B7]という3グループに分け(ただし、Tは転置を意味する)、後続の表現を容易にするために、これらのグループをそれぞれB(1)=[BT 2、B3]、B(2)=[BT 4、B5]、B(3)=[BT 6、B7]に記す。
ステップS32は、B(1)=[BT 2、B3]における軟判定情報を硬判定し、硬判定復号しながら(図9の左図で太い破線矢印1に示す)、B(1)コードブロックにおける硬情報を更新し、そしてB(2)及びB(3)符号グループユニットをそれぞれ行ごとに軟判定復号しながら(図9の左図で破線矢印2、3に示す)、B(2)、B(3)コードブロックにおける2つのサブコードブロックの軟判定情報を更新する。
ステップS33は、スライディングウィンドウを前方へ1個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる6個の階段符号サブコードブロックはそれぞれB1、B2、B3、B4、B5及びB6であり(図9の中図で斜線部分に示す)、この6個のサブコードブロックを隣接する2個を単位として、B(1)=[BT 1、B2]、B(2)=[BT 3、B4]、B(3)=[BT 5、B6]という3グループに分ける。
ステップS34は、B(1)=[BT 1、B2]における軟判定情報を硬判定し、硬判定復号しながら(図9の中図で太い破線矢印4に示す)、B(1)コードブロックにおける硬情報を更新し、そしてB(2)及びB(3)符号グループユニットをそれぞれ行ごとに軟判定復号しながら(図9の中図で破線矢印2、3に示す)、B(2)、B(3)コードブロックにおける2つのサブコードブロックの軟判定情報を更新する。
ステップS35は、スライディングウィンドウを後方へ3個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる6個の階段符号サブコードブロックはそれぞれB4、B5、B6、B7、B8、B9であり(図9の右図で斜線部分に示す)、そしてステップS31からステップS34までの操作を繰り返し、B(1)に対応する硬判定情報B3、B4を出力する。
ステップS36は、ステップS35の操作を繰り返し、さらにB5、B6……のすべての階段符号サブコードブロックの復号出力を完成する。
図10は本発明の方法に係る実施例7における階段符号復号装置の構造模式図であり、図10に示すような本発明の方法に係る実施例7における階段符号復号装置は、復号待ち初期グループ取得モジュール80、復号待ち初期グループ復号モジュール90、第1の復号待ちサブコードブロック取得モジュール100、第1の復号モジュール200、第1のスライディングモジュール300、第2の復号モジュール400、及び第2のスライディングモジュール500を含む。
復号待ち初期グループ取得モジュール80は、1番目の前記サブコードブロックを受信してから、順番に従って隣接する2つの前記サブコードブロックを1グループとしてグループ分けし、複数の復号待ち初期グループを取得し、前記1つのサブコードブロックは1つの復号待ち初期グループだけに属し、ただし、受信したサブコードブロックの数量は奇数であると、前記全零コードブロックを補足して前記サブコードブロックと共にグループ分けを行うように構成される。
Lは偶数である。
復号待ち初期グループ復号モジュール90は、前記複数の復号待ち初期グループを復号し、且つ復号結果により前記L個のサブコードブロックを更新した後に、L番目の前記サブコードブロックを受信するまで、復号待ち初期グループ取得モジュールに戻るように構成される。
第1の復号待ちサブコードブロック取得モジュール100は、スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数であり、一実施例において、Lは偶数であるように構成される。第1の復号待ちサブコードブロック取得モジュール100は、さらに、取得した1番目のサブコードブロックはすべての前記サブコードブロックにおける1番目に受信した前記サブコードブロックであると、全零コードブロックを前記スライディングウィンドウにおける1番目の前記復号待ちサブコードブロックとして補足し、且つ前記スライディングウィンドウにおけるL番目の前記復号待ちサブコードブロックを前記スライディングウィンドウから滑り出るように構成される。
第1の復号モジュール200は、前記第1の復号待ちサブコードブロックを複数の第1の復号グループに分け、それぞれ複数の第1の復号グループを復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するように構成される。前記第1の復号ブロック200は、第1の転置ユニット、第1の復号待ちグループ取得ユニット、第1の復号ユニットを含む。前記第1の転置ユニットは、前記第1の復号待ちサブコードブロックにおける1番目のサブコードブロックから、1個を間隔として前記第1の復号待ちサブコードブロックを転置し、第1の復号待ち転置サブコードブロックを取得するように構成される。前記第1の復号待ちグループ取得ユニットは、各前記第1の復号待ち転置サブコードブロックにおける各転置サブコードブロックと、隣接する後に受信した前記第1の復号待ちサブコードブロックを1グループとしてグループ分けし、複数の第1の復号待ちグループを取得するように構成される。前記第1の復号ユニットは、前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループにおける前記第1の復号待ちサブコードブロックを更新し、第1の更新サブコードブロックを取得するように構成される。前記第1の復号ユニットは、さらに、前記第1の復号待ちサブコードブロックが硬判定された符号であると、線形ブロック符号を利用して復号し、前記第1の復号待ちサブコードブロックが硬判定された符号ではないと、軟判定復号アルゴリズムを利用して復号するように構成される。前記第1の復号ユニットは、さらに、復号結果により前記全零コードブロック以外の前記第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するように構成される。
第1のスライディングモジュール300は、前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、一実施例において、Nは1であるように構成される。
第2の復号モジュール400は、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、複数の第2の復号待ちグループを復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力するように構成される。第2の復号モジュール400は、第2の転置ユニット、第2の復号待ちグループ取得ユニット及び第2の復号ユニットを含む。前記第2の転置ユニットは、前記第2の復号待ちサブコードブロックにおける1番目のサブコードブロックから、1個を間隔として前記第2の復号待ちサブコードブロックを転置し、第2の復号待ち転置サブコードブロックを取得するように構成される。前記第2の復号待ちグループ取得ユニットは、各前記第2の復号待ち転置サブコードブロックにおける各転置サブコードブロックと、隣接する後に受信した前記第2の復号待ちサブコードブロックを1グループとしてグループ分けし、複数の第2の復号待ちグループを取得するように構成される。第2の復号ユニットは、前記複数の第2の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第2の復号待ちグループにおける前記第2の復号待ちサブコードブロックを更新し、第2の更新サブコードブロックを取得するように構成される。一実施例において、Mは2である。
第2のスライディングモジュール500は、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、第1のスライディングモジュールと第2の復号モジュールをトリガするように戻り、ただし、SはMとNの和である。
本実施例に係る階段符号復号装置は、前記スライディングウィンドウ内の復号待ちサブコードブロックを複数のグループに分けて複数のグループをそれぞれ復号し、復号結果により前記復号待ちサブコードブロックを更新して第1の更新サブコードブロックを取得した後、スライディングウィンドウを前方へN個のサブコードブロックだけスライドさせた後、再度グループ分け及び復号を行い、第2の更新サブコードブロックを取得し、第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力した後、スライディングウィンドウを後方へS個のサブコードブロックだけスライドさせ、ただし、SはMとNの和であり、再び第1の更新サブコードブロックを取得するステップに戻って反復復号を行うことで、更新サブコードブロックを復号結果として出力し、1つの階段符号サブコードブロックの復号出力を完成するたびに、有限回の反復復号フローだけを行う必要があり、ハードウェア回路の実現複雑度を低減し、復号の時間遅延を減少し、且つ復号性能を向上する。
本発明に係る階段符号復号装置は、前記スライディングウィンドウ内の復号待ちサブコードブロックを複数のグループに分けて複数のグループをそれぞれ復号し、復号結果により前記復号待ちサブコードブロックを更新して更新サブコードブロックを取得した後、更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力し、且つ前記スライディングウィンドウを後方へS個のサブコードブロックだけスライドさせた後に上記ステップを繰り返す。グループ分けした後に更新サブコードブロックをそれぞれ復号出力し、さらに前記スライディングウィンドウをスライドした後にフループカ及び復号ステップを繰り返し、更新サブコードブロックを復号結果として順次に出力し、1つの階段符号サブコードブロックの復号出力を完成するたびに、有限回の反復復号フローだけを行う必要があり、ハードウェア回路の実現複雑度を低減し、復号の時間遅延を減少し、且つ復号性能を向上する。
上記実施例方法におけるすべてまたは一部のステップは、プログラムで関連するハードウェアを指令することにより実現することができ、当該プログラムはコンピュータ読み取り可能な記録媒体に記録されることができ、記憶媒体は、ROM、RAM、磁気ディスクまたは光ディスクなどであってもよいことを、当業者が理解すべきである。
本発明の一実施例は、ステップ1からステップ5を含む階段符号復号方法を提供する。
ステップ1は、スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目のサブコードブロックからL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数である。
ステップ2は、前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得する。
ステップ3は、前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、前記複数の第2の復号待ちグループをそれぞれ復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得する。
ステップ4は、前記スライディングウィンドウを前記受信時間に従って後方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、再びステップ2及びステップ3を実行し、このステップをK回繰り返して実行し、ただし、Kは0以上の整数であり、Kは0であると、このステップを実行しなくてもよく、ステップ5に直接移行することを示す。
ステップ5は、第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力し、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、ステップ2に戻る。
一実施例において、SはMとNの和である。
一実施例において、N=1、M=1又は2。M=1にすると、S=2になり、M=2にすると、S=3になる。
図11は本発明の方法に係る実施例8における階段符号の復号方法のフローチャートであり、受信した階段符号は軟判定情報または硬判定情報のいずれかであればよい。図11に示すような本発明の方法に係る実施例8における階段符号復号の復号方法は、ステップS81からステップS86を含む。本実施例は実施例5に類似な態様により初期化を完成したことを想定する。
ステップS81は、このスライディングウィンドウにおける4個のサブコードブロックを(図11の左図で斜線部分に示す)隣接する2個を単位として、[BT 2、B3]、[BT 4、B5]という2グループに分け(ただし、Tは転置を意味する)、後続の表現を容易にするために、これらのグループをB(1)=[BT 2、B3]、B(2)=[BT 4、B5]に記す。
ステップS82は、B(1)、B(2)符号グループユニットをそれぞれ行ごとに復号しながら(図11の左図で破線矢印1、2に示す)、B(1)、B(2)コードブロックにおける2つのサブコードブロックの情報を更新する。
ステップS83は、スライディングウィンドウを前方へ1個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる4個の階段符号サブコードブロックはそれぞれB1、B2、B3、B4であり(図11の中図で斜線部分に示す)、この4個のサブコードブロックを隣接する2個を単位として、B(1)=[BT 1、B2]、B(2)=[BT 3、B4]という2グループに分ける。B(1)、B(2)符号グループユニットをそれぞれ復号しながら(図11の中図で破線矢印3、4に示す)、B(1)、B(2)コードブロックにおける情報を更新する。
ステップS84は、更新したB(1)、B(2)コードブロックを取得した後、前記スライディングウィンドウを前記受信時間に従って後方へ1個の前記サブコードブロックの長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる4個の階段符号サブコードブロックはそれぞれB2、B3、B4、B5であり、ただし、B(1)=[BT 2、B3]、B(2)=[BT 4、B5](図11の左図で斜線部分に示す)、再びステップS82及びステップS83を実行し、このステップS84をさらに2回繰り返して実行し、B(1)に対応するB1、B2の情報を出力する。
ステップS85は、スライディングウィンドウを後方へ3個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる4個の階段符号サブコードブロックはそれぞれB4、B5、B6、B7であり(図11の右図で斜線部分に示す)、そしてステップS81からステップS84までの操作を繰り返し、B(1)に対応するB3、B4の情報を出力する。
ステップS86は、ステップS85の操作を繰り返し、さらにB5、B6……のすべての階段符号サブコードブロックの復号出力を完成する。
図12は本発明の方法に係る実施例9における階段符号の復号方法のフローチャートであり、受信した階段符号は軟判定情報又は硬判定情報のいずれかであればよい。図12に示すような本発明の方法に係る実施例9における階段符号復号の復号方法は、ステップS91からステップS96を含む。
ステップS91は、このスライディングウィンドウにおける4個のサブコードブロックを(図12の左図で斜線部分に示す)隣接する2個を単位として、[BT 2、B3]、[BT 4、B5]という2グループに分け(ただし、Tは転置を意味する)、後続の表現を容易にするために、これらのグループをB(1)=[BT 2、B3]、B(2)=[BT 4、B5]に記す。
ステップS92は、B(1)、B(2)符号グループユニットをそれぞれ行ごとに復号しながら(図12の左図で破線矢印1、2に示す)、B(1)、B(2)コードブロックにおける2つのサブコードブロックの情報を更新する。
ステップS93は、スライディングウィンドウを前方へ1個のコードブロック長さだけスライドさせれば、スライディングウィンドウの新しい位置内に含まれる4個の階段符号サブコードブロックはそれぞれB1、B2、B3、B4であり(図12の中図で斜線部分に示す)、この4個のサブコードブロックを隣接する2個を単位として、B(1)=[BT 1、B2]、B(2)=[BT 3、B4]という2グループに分ける。B(1)、B(2)符号グループユニットをそれぞれ復号しながら(図12の中図で破線矢印3、4に示す)、B(1)、B(2)コードブロックにおける情報を更新する。
ステップS94は、更新したB(1)、B(2)コードブロックを取得した後、前記スライディングウィンドウを前記受信時間に従って後方へ1個の前記サブコードブロックの長さだけスライドさせ、スライディングウィンドウの新しい位置内に含まれる4個の階段符号サブコードブロックはそれぞれB2、B3、B4、B5であり、ただし、B(1)=[BT 2、B3]、B(2)=[BT 4、B5](図12の左図で斜線部分に示す)、再びステップS92及びステップS93を実行し、このステップS94をさらに1回繰り返して実行し、B(1)に対応するB1の情報を出力する。
ステップS95は、スライディングウィンドウを後方へ2個のコードブロック長さだけスライドさせ、スライディングウィンドウの新しい位置内に含まれる4個の階段符号サブコードブロックはそれぞれB3、B4、B5、B6であり(図12の右図で斜線部分に示す)、そしてステップS91からステップS94までの操作を繰り返し、B(1)に対応するB2の情報を出力する。
ステップS96は、ステップS95における操作を繰り返し、さらにB3、B4……のすべての階段符号サブコードブロックの復号出力を完成する。
本実施例における階段符号復号方法をさらに限定する内容について、前記実施例における階段符号復号方法の内容を参照すればよく、ここで説明を省略する。
本発明の一実施例は、第1の復号待ちサブコードブロック取得モジュール、第1の復号モジュール、第1のスライディングモジュール、第2の復号モジュール及び第2のスライディングモジュールを含む階段符号復号装置をさらに提供する。
第1の復号待ちサブコードブロック取得モジュールは、スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数であるように構成される。
第1の復号モジュールは、前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するように構成される。
第1のスライディングモジュールは、前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、且つ前記複数の第2の復号待ちグループを復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得するように構成される。
第2の復号モジュールは、前記スライディングウィンドウを前記受信時間に従って後方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、第1の復号モジュールと第1のスライディングモジュールをトリガし、第2の復号モジュールをK回実行させるようにトリガし、ただし、Kは0以上の整数であり、Kは0であると、このステップを実行しなくてもよく、ステップ5に直接移行することを示すように構成される。
第2のスライディングモジュールは、第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックの最初のM個のサブコードブロックを復号結果として出力し、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、第1の復号モジュールと第2の復号モジュールをトリガするように構成される。
一実施例において、SはMとNの和である。
一実施例において、Mは1又は2である。
本実施例における階段符号復号装置をさらに限定する内容について、前記実施例における階段符号復号装置の内容を参照すればよく、ここで説明を省略する。
本発明に係る実施例はさらに記憶媒体を提供し、当該記憶媒体は、記憶されたプログラムを含み、上記プログラムが作動されると、上記いずれか1項に記載の方法を実行する。
本発明に係る実施例はさらにプロセッサを提供し、当該プロセッサは、プログラムを作動させ、当該プログラムが作動されると、上記いずれか1項に記載の方法を実行するように構成される。
Claims (28)
- スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数であるステップ1と、
前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するステップ2と、
前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さいステップ3と、
前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、複数の第2の復号待ちグループを復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力するステップ4と、
前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、ステップ2に戻り、ただし、SはMとNの和であるステップ5とを含む、階段符号復号方法。 - Lは偶数である、請求項1に記載の階段符号復号方法。
- Nは1である、請求項1に記載の階段符号復号方法。
- Mは2である、請求項1に記載の階段符号復号方法。
- 前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得することは、
前記第1の復号待ちサブコードブロックにおける1番目から、1個を間隔として前記第1の復号待ちサブコードブロックを転置し、第1の復号待ち転置サブコードブロックを取得することと、
前記第1の復号待ち転置サブコードブロックにおける各転置サブコードブロックと、隣接する後に受信した前記第1の復号待ちサブコードブロックを1グループとしてグループ分けし、前記複数の第1の復号待ちグループを取得することと、
前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループにおける前記第1の復号待ちサブコードブロックを更新し、前記第1の更新サブコードブロックを取得することとを含む、請求項1に記載の階段符号復号方法。 - 前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、前記複数の第2の復号待ちグループを復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得することは、
前記第2の復号待ちサブコードブロックにおける1番目のサブコードブロックから、1個を間隔として前記第2の復号待ちサブコードブロックを転置し、第2の復号待ち転置サブコードブロックを取得することと、
前記第2の復号待ち転置サブコードブロックにおける各転置サブコードブロックと、隣接する後に受信した前記第2の復号待ちサブコードブロックを1グループとしてグループ分けし、前記複数の第2の復号待ちグループを取得することと、
前記複数の第2の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第2の復号待ちグループにおける前記第2の復号待ちサブコードブロックを更新し、前記第2の更新サブコードブロックを取得することとを含む、請求項1に記載の階段符号復号方法。 - 前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号することは、
前記第1の復号待ちサブコードブロックは硬判定された符号であると、線形ブロック符号を利用して復号することと、
前記第1の復号待ちサブコードブロックは硬判定された符号ではないと、軟判定復号アルゴリズムを利用して復号することとを含む、請求項1に記載の階段符号復号方法。 - L個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得することは、
取得された1番目のサブコードブロックがすべての前記サブコードブロックにおける1番目に受信した前記サブコードブロックであると、全零コードブロックを前記スライディングウィンドウにおける1番目の前記復号待ちサブコードブロックとして補足し、且つ前記スライディングウィンドウにおけるL番目の前記復号待ちサブコードブロックを前記スライディングウィンドウから滑り出せることを含み、
復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得することは、
復号結果により前記複数の第1の復号待ちグループにおいて前記全零コードブロック以外の前記第1の復号待ちサブコードブロックを更新し、第1の更新サブコードブロックを取得することを含む、請求項1に記載の階段符号復号方法。 - 前記ステップ1の前に、前記方法は、
1番目の前記サブコードブロックを受信してから、順番に従って隣接する2つの前記サブコードブロックを1グループとしてグループ分けし、複数の復号待ち初期グループを取得し、1つの前記サブコードブロックは1つの前記復号待ち初期グループだけに属し、ただし、受信したサブコードブロックの数量は奇数であると、全零コードブロックを補足して前記サブコードブロックと共にグループ分けを行うステップ100と、
前記複数の復号待ち初期グループを復号し、且つ復号結果により前記サブコードブロックを更新した後に、L番目の前記サブコードブロックを受信するまで、ステップ100に戻るステップ200とをさらに含む、請求項8に記載の階段符号復号方法。 - スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数であるように構成される第1の復号待ちサブコードブロック取得モジュールと、
前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するように構成される第1の復号モジュールと、
前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さいように構成される第1のスライディングモジュールと、
前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、複数の第2の復号待ちグループを復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力するように構成される第2の復号モジュールと、
前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、第1のスライディングモジュールと第2の復号モジュールをトリガするように戻り、ただし、SはMとNの和であるように構成される第2のスライディングモジュールとを含む、階段符号復号装置。 - Lは偶数である、請求項10に記載の階段符号復号装置。
- Nは1である、請求項10に記載の階段符号復号装置。
- Mは2である、請求項10に記載の階段符号復号装置。
- 前記第1の復号モジュールは、
前記第1の復号待ちサブコードブロックにおける1番目から、1個を間隔として前記第1の復号待ちサブコードブロックを転置し、第1の復号待ち転置サブコードブロックを取得するように構成される第1の転置ユニットと、
前記第1の復号待ち転置サブコードブロックにおける各転置サブコードブロックと、隣接する後に受信した前記第1の復号待ちサブコードブロックを1グループとしてグループ分けし、前記複数の第1の復号待ちグループを取得するように構成される第1の復号待ちグループ取得ユニットと、
前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループにおける前記第1の復号待ちサブコードブロックを更新し、第1の更新サブコードブロックを取得するように構成される第1の復号ユニットとを含む、請求項10に記載の階段符号復号装置。 - 前記第2の復号モジュールは、
前記第2の復号待ちサブコードブロックにおける1番目から、1個を間隔として前記第2の復号待ちサブコードブロックを転置し、第2の復号待ち転置サブコードブロックを取得するように構成される第2の転置ユニットと、
前記第2の復号待ち転置サブコードブロックにおける各転置サブコードブロックと、隣接する後に受信した前記第2の復号待ちサブコードブロックを1グループとしてグループ分けし、前記複数の第2の復号待ちグループを取得するように構成される第2の復号待ちグループ取得ユニットと、
前記複数の第2の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第2の復号待ちグループにおける前記第2の復号待ちサブコードブロックを更新し、第2の更新サブコードブロックを取得するように構成される第2の復号ユニットとを含む、請求項10に記載の階段符号復号装置。 - 前記第1の復号モジュールは、前記第1の復号待ちサブコードブロックが硬判定された符号であると、線形ブロック符号を利用して復号し、前記第1の復号待ちサブコードブロックが硬判定された符号ではないと、軟判定復号アルゴリズムを利用して復号するように構成される、請求項10に記載の階段符号復号装置。
- 前記第1の復号待ちサブコードブロック取得モジュールは、
取得された1番目のサブコードブロックはすべての前記サブコードブロックにおける1番目に受信した前記サブコードブロックであると、全零コードブロックを前記スライディングウィンドウにおける1番目の前記復号待ちサブコードブロックとして補足し、且つ前記スライディングウィンドウにおけるL番目の前記復号待ちサブコードブロックを前記スライディングウィンドウから滑り出せるように構成され、
前記第1の復号モジュールは、復号結果により前記複数の第1の復号待ちグループにおける前記全零コードブロック以外の前記第1の復号待ちサブコードブロックを更新し、前記第1の更新サブコードブロックを取得するように構成される、請求項10に記載の階段符号復号装置。 - 受信された1番目の前記サブコードブロックから、順番に従って隣接する2つの前記サブコードブロックを1グループとしてグループ分けし、複数の復号待ち初期グループを取得し、1つの前記サブコードブロックは1つの前記復号待ち初期グループだけに属し、ただし、受信したサブコードブロックの数量は奇数であると、前記全零コードブロックを補足して前記サブコードブロックと共にグループ分けを行うように構成される復号待ち初期グループ取得モジュールと、
前記複数の復号待ち初期グループを復号し、且つ復号結果により前記サブコードブロックを更新した後に、L番目の前記サブコードブロックを受信するまで、復号待ち初期グループ取得モジュールをトリガすることに戻るように構成される復号待ち初期グループ復号モジュールとをさらに含む、請求項17に記載の階段符号復号装置。 - 記憶媒体であって、前記記憶媒体は、記憶されたプログラムを含み、前記プログラムが作動されると、請求項1〜9のいずれか1項に記載の階段符号復号方法を実行する、記憶媒体。
- プロセッサであって、前記プロセッサは、プログラムを作動させ、前記プログラムが作動されると、請求項1〜9のいずれか1項に記載の階段符号復号方法を実行するように構成される、プロセッサ。
- スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目のサブコードブロックからL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数であるステップ1と、
前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するステップ2と、
前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、前記複数の第2の復号待ちグループをそれぞれ復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得するステップ3と、
前記スライディングウィンドウを前記受信時間に従って後方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、再びステップ2及びステップ3を実行し、このステップをK回繰り返し実行し、ただし、Kは0以上の整数であり、Kは0であると、このステップを実行しなくてもよく、ステップ5に直接移行することを示すステップ4と、
第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックにおける最初のM個のサブコードブロックを復号結果として出力し、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、ステップ2に戻るステップ5とを含む、階段符号復号方法。 - SはMとNの和である、請求項21に記載の階段符号復号方法。
- Mは1又は2である、請求項21に記載の階段符号復号方法。
- スライディングウィンドウの長さLを取得し、受信時間の前後の順に従って、受信したサブコードブロックにおいて、P番目からL個の前記サブコードブロックを前記スライディングウィンドウにおける第1の復号待ちサブコードブロックとして連続的に取得し、ただし、Pは1以上の正整数であり、Lは正整数であるように構成される第1の復号待ちサブコードブロック取得モジュールと、
前記第1の復号待ちサブコードブロックを複数の第1の復号待ちグループに分け、前記複数の第1の復号待ちグループをそれぞれ復号し、且つ復号結果により前記複数の第1の復号待ちグループを更新し、第1の更新サブコードブロックを取得するように構成される第1の復号モジュールと、
前記スライディングウィンドウを前記受信時間に従って前方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第1の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを第2の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、前記第2の復号待ちサブコードブロックを複数の第2の復号待ちグループに分け、且つ前記複数の第2の復号待ちグループを復号し、復号結果により前記複数の第2の復号待ちグループを更新し、第2の更新サブコードブロックを取得するように構成される第1のスライディングモジュールと、
前記スライディングウィンドウを前記受信時間に従って後方へN個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだN個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、ただし、NはPよりも小さく、第1の復号モジュールと第1のスライディングモジュールをトリガし、第2の復号モジュールをK回実行させるようにトリガし、ただし、Kは0以上の整数であり、Kは0であると、このステップを実行しなくてもよく、ステップ5に直接移行することを示すように構成される第2の復号モジュールと、
第2の更新サブコードブロックを取得した後、前記第2の更新サブコードブロックの最初のM個のサブコードブロックを復号結果として出力し、前記スライディングウィンドウを前記受信時間に従って後方へS個の前記サブコードブロックの長さだけスライドさせ、且つ前記スライディングウィンドウ内に残っている前記第2の更新サブコードブロックと前記スライディングウィンドウに滑り込んだS個の前記サブコードブロックを前記第1の復号待ちサブコードブロックとし、すべての前記サブコードブロックの復号結果を出力するまで、第1の復号モジュールと第2の復号モジュールをトリガするように構成される第2のスライディングモジュールとを含む、階段符号復号装置。 - SはMとNの和である、請求項24に記載の階段符号復号装置。
- Mは1又は2である、請求項24に記載の階段符号復号装置。
- 記憶媒体であって、前記記憶媒体は、記憶されたプログラムを含み、前記プログラムが作動されると、請求項21〜23のいずれか1項に記載の階段符号復号方法を実行する、記憶媒体。
- プロセッサであって、前記プロセッサは、プログラムを作動させ、前記プログラムが作動されると、請求項21〜23のいずれか1項に記載の階段符号復号方法を実行するように構成される、プロセッサ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710555990.9A CN109245846B (zh) | 2017-07-10 | 2017-07-10 | 一种阶梯码解码方法和阶梯码解码装置 |
PCT/CN2018/104874 WO2019011352A1 (zh) | 2017-07-10 | 2018-09-10 | 一种阶梯码解码方法和阶梯码解码装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021525976A true JP2021525976A (ja) | 2021-09-27 |
Family
ID=65001497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020501303A Pending JP2021525976A (ja) | 2017-07-10 | 2018-09-10 | 階段符号復号方法及び階段符号復号装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11070313B2 (ja) |
JP (1) | JP2021525976A (ja) |
CN (1) | CN109245846B (ja) |
WO (1) | WO2019011352A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109787641B (zh) * | 2017-11-15 | 2024-02-06 | 中兴通讯股份有限公司 | staircase码的解码方法、装置及存储介质 |
US11709734B2 (en) | 2021-04-30 | 2023-07-25 | Micron Technology, Inc. | Error correction with syndrome computation in a memory device |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI497920B (zh) * | 2007-11-26 | 2015-08-21 | Sony Corp | Data processing device and data processing method |
JP5508549B2 (ja) * | 2010-01-27 | 2014-06-04 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 繰り返し復号されるfec符号におけるエラーフロアの低減 |
US8656244B1 (en) * | 2010-10-29 | 2014-02-18 | Massachusetts Institute Of Technology | Rate adaptive nonbinary LDPC codes with low encoding complexity |
US8751910B2 (en) * | 2011-04-13 | 2014-06-10 | Cortina Systems, Inc. | Staircase forward error correction coding |
CN105429646B (zh) * | 2015-06-30 | 2019-03-22 | 南京大学 | 一种咬尾阶梯码的编码及解码方法 |
CN106059596B (zh) * | 2016-06-24 | 2019-05-14 | 中山大学 | 以二元bch码为成份码的分组马尔可夫叠加编码方法及其译码方法 |
US10110256B2 (en) * | 2016-09-16 | 2018-10-23 | Micron Technology, Inc. | Apparatuses and methods for staircase code encoding and decoding for storage devices |
-
2017
- 2017-07-10 CN CN201710555990.9A patent/CN109245846B/zh active Active
-
2018
- 2018-09-10 US US16/630,314 patent/US11070313B2/en active Active
- 2018-09-10 WO PCT/CN2018/104874 patent/WO2019011352A1/zh active Application Filing
- 2018-09-10 JP JP2020501303A patent/JP2021525976A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2019011352A1 (zh) | 2019-01-17 |
CN109245846B (zh) | 2022-07-05 |
US20200220653A1 (en) | 2020-07-09 |
US11070313B2 (en) | 2021-07-20 |
CN109245846A (zh) | 2019-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6858882B2 (ja) | 符号化されたコードワードを送信する送信機、方法及び非一時的コンピューター可読記憶媒体 | |
CN111162797B (zh) | 一种速率兼容的5g ldpc码的编码装置及编码方法 | |
CN109194337A (zh) | 一种Polar码编码方法、装置 | |
JP7047092B2 (ja) | 階段コードの復号化方法、装置および記憶媒体 | |
CN108712232A (zh) | 一种用于连续变量量子密钥分发系统中的多码字并行译码方法 | |
JP2021525976A (ja) | 階段符号復号方法及び階段符号復号装置 | |
JP4554366B2 (ja) | データウィンドウを使用してデータを復号化するための方法 | |
CN110022158B (zh) | 一种译码方法及装置 | |
WO2012109872A1 (zh) | 通信系统中的循环冗余校验处理方法、装置和lte终端 | |
KR20060121312A (ko) | 컨볼루션 터보 부호 인터리버 | |
CN109245775B (zh) | 一种译码器及其实现译码的方法 | |
US9048866B2 (en) | Apparatus and method for checking decoded data, apparatus and method for decoding, and receiving terminal | |
CN1574652A (zh) | Turbo解码装置 | |
GB2563418A (en) | Polar encoder, communication unit, integrated circuit and method therefor | |
US9325351B2 (en) | Adaptive multi-core, multi-direction turbo decoder and related decoding method thereof | |
Li et al. | Reconfigurable forward error correction decoder for beyond 100 Gbps high speed optical links | |
KR102324655B1 (ko) | 계단 코드의 디코딩 방법, 계단 코드 디코딩 장치, 및 저장매체 | |
CN109245777B (zh) | 一种阶梯码解码方法和阶梯码解码装置 | |
CN105871508B (zh) | 一种网络编解码方法及系统 | |
CN112534724A (zh) | 用于解码极化码和乘积码的解码器和方法 | |
EP3493435A1 (en) | Encoding method and apparatus | |
CN109245848B (zh) | 一种阶梯码解码方法和阶梯码解码装置 | |
RU2791016C1 (ru) | Способ и устройство для кодирования кода с низкой плотностью проверок на чётность (ldpc), базовая станция и машиночитаемый носитель данных | |
CN113014267B (zh) | 译码方法、设备、可读存储介质、芯片及计算机程序产品 | |
WO2011144170A1 (zh) | 一种低密度奇偶校验码的译码方法和装置 |