(57)【特許請求の範囲】
【請求項１】
巡回符号を用いて誤り訂正を行なう誤り訂正回路であって、
ｎビット（ｎは、２より大きい自然数）の入力データを受け、第１ビット目から第（ｎ−ｍ）ビット目（ｍは、前記ｎより小さい自然数）までの（ｎ−ｍ）ビットの入力データを２m個出力するとともに、前記ｎビットの入力データのうちの第（ｎ−ｍ）ビット目の入力データを受けた時点で、第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータとして予め規定された互いに異なる２m個のｍビットの規定データを出力する訂正処理回路、
それぞれ、対応する前記（ｎ−ｍ）ビットの入力データと前記ｍビットの規定データとで構成される符号長ｎのデータに対して１ビット単位で１回以上の誤り訂正処理を行なって訂正データを出力する２m個の誤り訂正ブロック、および
前記２m個の誤り訂正ブロックのうちのいずれか１つの誤り訂正ブロックから出力された訂正データを選択する選択回路を備える、誤り訂正回路。
【請求項２】
前記２m個の誤り訂正ブロックの各々は、さらに、前記誤り訂正処理が正常に終了したか否かを示す訂正フラグを出力し、
前記選択回路は、前記訂正フラグに応じて、前記２m個の誤り訂正ブロックのうち前記誤り訂正処理が正常に終了した誤り訂正ブロックから出力された訂正データを選択する、請求項１に記載の誤り訂正回路。
【請求項３】
前記選択回路は、前記ｎビットの入力データのうちの第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータと前記２m個のｍビットの規定データとに基づいて、前記２m個の誤り訂正ブロックのうちのいずれか１つの誤り訂正ブロックから出力された訂正データを選択する、請求項１に記載の誤り訂正回路。
【請求項４】
前記２m個の誤り訂正ブロックの各々は、さらに、前記誤り訂正処理が正常に終了したか否かを示す訂正フラグを出力し、
前記選択回路は、前記誤り訂正処理が正常に終了した誤り訂正ブロックがある場合は、前記訂正フラグに応じて、前記２m個の誤り訂正ブロックのうち前記誤り訂正処理が正常に終了した誤り訂正ブロックから出力された訂正データを選択し、前記２m個の誤り訂正ブロックにおける前記誤り訂正処理がすべて異常に終了した場合は、前記ｎビットの入力データのうちの第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータと前記ｍビットの規定データとに基づいて、前記２m個の誤り訂正ブロックのうちのいずれか１つの誤り訂正ブロックから出力された訂正データを選択する、請求項１に記載の誤り訂正回路。
【請求項５】
巡回符号を用いて誤り訂正を行なう誤り訂正方法であって、
ｎビット（ｎは、２より大きい自然数）の入力データを受け、第１ビット目から第（ｎ−ｍ）ビット目（ｍは、前記ｎより小さい自然数）までの（ｎ−ｍ）ビットの入力データを２m個出力するとともに、前記ｎビットの入力データのうちの第（ｎ−ｍ）ビット目の入力データを受けた時点で、第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータとして予め規定された互いに異なる２m個のｍビットの規定データを出力する処理ステップ、
各々が対応する前記（ｎ−ｍ）ビットの入力データと前記ｍビットの規定データとで構成される２m個の符号長ｎのデータに対して、１ビット単位で１回以上の誤り訂正処理を同時に行なって２m個の訂正データを出力する誤り訂正ステップ、および
前記誤り訂正ステップによって出力された前記２m個の訂正データのうちのいずれか１つの訂正データを選択する選択ステップを備える、誤り訂正方法。
【請求項６】
前記誤り訂正ステップは、さらに、前記２m個の訂正データの各々に対応する前記誤り訂正処理が正常に終了したか否かを示す２m個の訂正フラグを出力し、
前記選択ステップは、前記２m個の訂正フラグに応じて、前記誤り訂正ステップによって出力された前記２m個の訂正データのうち前記誤り訂正処理が正常に終了した訂正データを選択する、請求項５に記載の誤り訂正方法。
【請求項７】
前記選択ステップは、前記ｎビットの入力データのうちの第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータと前記２m個のｍビットの規定データとに基づいて、前記誤り訂正ステップによって出力された前記２m個の訂正データのうちのいずれか１つの訂正データを選択する、請求項５に記載の誤り訂正方法。
【請求項８】
前記誤り訂正ステップは、さらに、前記２m個の訂正データの各々に対応する前記誤り訂正処理が正常に終了したか否かを示す２m個の訂正フラグを出力し、
前記選択ステップは、前記２m個の訂正データのうち前記誤り訂正処理が正常に終了した訂正データがある場合は、前記訂正フラグに応じて、前記誤り訂正ステップによって出力された前記２m個の訂正データのうち前記誤り訂正処理が正常に終了した訂正データを選択し、前記２m個の訂正データにおける前記誤り訂正処理がすべて異常に終了した場合は、前記ｎビットの入力データのうちの第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータと前記２m個のｍビットの規定データとに基づいて、前記誤り訂正ステップによって出力された前記２m個の訂正データのうちのいずれか１つの訂正データを選択する、請求項５に記載の誤り訂正方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、誤り訂正回路および誤り訂正方法に関し、より特定的には、地上デジタル放送などで用いられる巡回符号を用いた１ビット単位で誤り訂正を行なう誤り訂正回路および誤り訂正方法に関する。
【０００２】
【従来の技術】
従来より、符号化されたデータに対して誤り訂正を行なう誤り訂正回路がある。巡回符号を用いた誤り訂正符号では、符号長ｎ、データ長１の場合、符号長ｎのデータが図示しないシフトレジスタに入力されてから、シフトレジスタに貯えられたｎ個のデータを１回以上シフトを行ない誤り訂正結果を得ている。また、差集合巡回符号においては、訂正を複数回数行なった場合、１回の複数倍以上のデータをシフトした後に誤り訂正結果を得ている。
【０００３】
【発明が解決しようとする課題】
しかしながら、このような従来の誤り訂正回路によれば、データが入力されてから誤り訂正データを得るまでに時間を要するという問題があった。
【０００４】
そこで、この発明は係る問題を解決するためになされたものであり、その目的は、高速に誤り訂正結果を出力することができる誤り訂正回路を提供することにある。
【０００５】
この発明のさらなる目的は、データが入力されてから誤り訂正結果を得るまでの時間を短縮することができる誤り訂正方法を提供することにある。
【０００６】
【課題を解決するための手段】
この発明に係る誤り訂正回路は、巡回符号を用いて誤り訂正を行なう誤り訂正回路であって、ｎビット（ｎは、２より大きい自然数）の入力データを受け、第１ビット目から第（ｎ−ｍ）ビット目（ｍは、ｎより小さい自然数）までの（ｎ−ｍ）ビットの入力データを２m個出力するとともに、ｎビットの入力データのうちの第（ｎ−ｍ）ビット目の入力データを受けた時点で、第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータとして予め規定された互いに異なる２m個のｍビットの規定データを出力する訂正処理回路と、それぞれ、対応する（ｎ−ｍ）ビットの入力データとｍビットの規定データとで構成される符号長ｎのデータに対して１ビット単位で１回以上の誤り訂正処理を行なって訂正データを出力する２m個の誤り訂正ブロックと、２m個の誤り訂正ブロックのうちのいずれか１つの誤り訂正ブロックから出力された訂正データを選択する選択回路とを備えたものである。
【０００７】
好ましくは、２m個の誤り訂正ブロックの各々は、さらに、誤り訂正処理が正常に終了したか否かを示す訂正フラグを出力する。選択回路は、訂正フラグに応じて、２m個の誤り訂正ブロックのうち誤り訂正処理が正常に終了した誤り訂正ブロックから出力された訂正データを選択する。
【０００８】
また好ましくは、選択回路は、ｎビットの入力データのうちの第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータと２m個のｍビットの規定データとに基づいて、２m個の誤り訂正ブロックのうちのいずれか１つの誤り訂正ブロックから出力された訂正データを選択する。
【０００９】
また好ましくは、２m個の誤り訂正ブロックの各々は、さらに、誤り訂正処理が正常に終了したか否かを示す訂正フラグを出力する。選択回路は、誤り訂正処理が正常に終了した誤り訂正ブロックがある場合は、訂正フラグに応じて、２m個の誤り訂正ブロックのうち誤り訂正処理が正常に終了した誤り訂正ブロックから出力された訂正データを選択し、２m個の誤り訂正ブロックにおける誤り訂正処理がすべて異常に終了した場合は、ｎビットの入力データのうちの第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータとｍビットの規定データとに基づいて、２m個の誤り訂正ブロックのうちのいずれか１つの誤り訂正ブロックから出力された訂正データを選択する。
【００１０】
また、この発明に係る誤り訂正方法は、巡回符号を用いて誤り訂正を行なう誤り訂正方法であって、ｎビット（ｎは、２より大きい自然数）の入力データを受け、第１ビット目から第（ｎ−ｍ）ビット目（ｍは、ｎより小さい自然数）までの（ｎ−ｍ）ビットの入力データを２m個出力するとともに、ｎビットの入力データのうちの第（ｎ−ｍ）ビット目の入力データを受けた時点で、第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータとして予め規定された互いに異なる２m個のｍビットの規定データを出力する処理ステップと、各々が対応する（ｎ−ｍ）ビットの入力データとｍビットの規定データとで構成される２m個の符号長ｎのデータに対して、１ビット単位で１回以上の誤り訂正処理を同時に行なって２m個の訂正データを出力する誤り訂正ステップと、誤り訂正ステップによって出力された２m個の訂正データのうちのいずれか１つの訂正データを選択する選択ステップとを含む。
【００１１】
好ましくは、誤り訂正ステップは、さらに、２m個の訂正データの各々に対応する誤り訂正処理が正常に終了したか否かを示す２m個の訂正フラグを出力する。選択ステップは、２m個の訂正フラグに応じて、誤り訂正ステップによって出力された２m個の訂正データのうち誤り訂正処理が正常に終了した訂正データを選択する。
【００１２】
また好ましくは、選択ステップは、ｎビットの入力データのうちの第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータと２m個のｍビットの規定データとに基づいて、誤り訂正ステップによって出力された２m個の訂正データのうちのいずれか１つの訂正データを選択する。
【００１３】
また好ましくは、誤り訂正ステップは、さらに、２m個の訂正データの各々に対応する誤り訂正処理が正常に終了したか否かを示す２m個の訂正フラグを出力する。選択ステップは、２m個の訂正データのうち誤り訂正処理が正常に終了した訂正データがある場合は、訂正フラグに応じて、誤り訂正ステップによって出力された２m個の訂正データのうち誤り訂正処理が正常に終了した訂正データを選択し、２m個の訂正データにおける誤り訂正処理がすべて異常に終了した場合は、ｎビットの入力データのうちの第（ｎ−ｍ＋１）ビット目から第ｎビット目までのデータと２m個のｍビットの規定データとに基づいて、誤り訂正ステップによって出力された２m個の訂正データのうちのいずれか１つの訂正データを選択する。
【００１５】
【発明の実施の形態】
以下、本発明に係る誤り訂正回路および誤り訂正方法について図を用いて説明する。なお、同じ構成要素には同じ符号または同じ記号を付し、その説明は省略する。
【００１６】
本発明の実施の形態は、不定期に入力されるデータに対して誤り訂正処理を行う符号長ｎの誤り訂正回路に関し、第１番目のデータが入力されてから誤り訂正の結果が得られるまでの時間を短縮することを可能とするものである。
【００１７】
一例として、地上デジタル放送に使用されるＴＭＣＣ（伝送多重制御信号）に対する誤り訂正について説明する。１９９８年９月に郵政省から発表された地上デジタル放送暫定方式では、変調方式として直交周波数分割多重（ＯＦＤＭ）方式、情報源符号化方式および多重化方式にＭＰＥＧ２（ＭＰＥＧ：Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ  Ｐｈａｓｅ２）を採用している。また、地上デジタル放送暫定方式では、現在伝送されているキャリア変調方式、畳み符号化率、時間インタリーブ長等のパラメータを指定するための信号として、伝送多重制御信号（ＴＭＣＣ）を用いている。誤り訂正方式としては、ＴＭＣＣに対しては、比較的回路規模が小さい差集合巡回符号が用いられている。なお、ＴＭＣＣ以外の信号（以下情報信号と呼ぶ）は、畳み込み符号とリードソロモン符号ＲＳが用いられている。
【００１８】
図１（ａ）、（ｂ）は、地上デジタル放送で受信される信号の配列を説明するための図であり、図１（ａ）は、デジタル放送で受信される信号に対するＦＦＴ（高速フーリエ変換）後に得られる信号を、図１（ｂ）は、シンボルＳＮｉ（ｉ＝１〜２０４）を構成するデータの内容をそれぞれ示している。
【００１９】
図１（ａ）に示されるように、地上デジタル放送暫定方式では、２０４シンボル（ＳＮ１〜ＳＮ２０４）を１フレームとして伝送する。シンボル間に配置されるガードバンドは、マルチパスなど電波の反射等の影響を回避するために設けられる部分であり、ＦＦＴ後のデータとしては無効データとなっている。
【００２０】
図１（ｂ）に示されるように、１シンボルには、複数の情報信号に加え、１ビットのＴＭＣＣデータがｊ（ｊは、自然数）ビット分含まれている（ＴＭＣＣ１〜ＴＭＣＣｊ）。ＴＭＣＣデータは、１シンボルの中に点在して存在する。
【００２１】
同一シンボル中のｊ個のＴＭＣＣデータは、すべて同じ値である。１シンボル中に同じ値を複数多重している理由は、多数決判別して誤り訂正能力を高めるためである。後述する多数決判別により、１のシンボルについて、１のＴＭＣＣデータが決定される。以下、第ｉシンボルのＴＭＣＣデータ（多数決判別後）をＴｉと記す。
【００２２】
２０４シンボルに含まれるＴＭＣＣデータＴ１〜Ｔ２０４により、図２に示されるＴＭＣＣデータ列が構成される。ＴＭＣＣデータ列を構成する第１ビット目〜第２０ビット目のＴＭＣＣデータ（Ｔ１〜Ｔ２０）は、同期信号等を含んだ部分であり、誤り訂正範囲に含まれていない。残り１８４ビットのＴＭＣＣデータ（Ｔ２１〜Ｔ２４０）は、冗長部分を含んだ制御信号で構成されていて、誤り訂正の対象となる。
【００２３】
ＴＭＣＣには、伝送路のパラメータであるキャリア変調方式、畳み符号化率、時間インタリーブ長等が含まれているため、次のフレームが始まる前にデータの復号を行なう必要がある。
【００２４】
このようなＴＭＣＣデータに対応する、本発明の実施の形態による誤り訂正回路１００について、図３を用いて説明する。図３を参照して、誤り訂正回路１００は、多数決判別回路７、訂正前データ入力処理回路８、ならびに誤り訂正ブロック１０♯１および１０♯２を備える。
【００２５】
１シンボル内のＴＭＣＣデータは、まず多数決判別回路７に入力される。多数決判別回路７は、１シンボル毎にＴＭＣＣデータの多数決判別を行なう。１シンボル内のＴＭＣＣデータとして、値“１”の数が多い場合には、“１”を、値“０”の数が多ければ、“０”を出力する。多数決判別により、１シンボルにおける１ビットのＴＭＣＣデータが決定される。これにより、１つのみのデータを用いる場合に比べて、データの精度が向上する。
【００２６】
多数決判別回路７の出力は、訂正前データ入力処理回路８に入力される。訂正前データ入力処理回路８は、誤り訂正に関連する１８４ビットのＴＭＣＣデータを誤り訂正ブロックに出力する。訂正前データ入力処理回路８の出力するデータは、図４（ａ）（ｂ）に示されるように、第１〜第１８３ビット目までは、多数決判別回路７の出力するＴＭＣＣデータＴ２１〜Ｔ２０３である。そして、最終ビットは、誤り訂正ブロック１０♯１に対しては、図４（ａ）に示されるように“１”であり、誤り訂正ブロック１０♯２に対しては、図４（ｂ）に示されるように“０”である。
【００２７】
訂正前データ入力処理回路８は、誤り訂正範囲の１８３ビット目のＴＭＣＣデータを誤り訂正ブロック１０♯１および１０♯２に出力した直後に、誤り訂正範囲の最後ビット（１８４ビット目）のＴＭＣＣデータとして、予め規定した値“１”（図４（ａ）参照）を誤り訂正ブロック１０♯１に、予め規定した値“０”（図４（ｂ）参照）を誤り訂正ブロック１０♯２にそれぞれ出力する。
【００２８】
誤り訂正ブロック１０♯１および１０♯２は、訂正前データ入力処理回路８から１８４ビットのデータを受けて、誤り訂正処理を開始する。
【００２９】
誤り訂正ブロック１０♯１および１０♯２のそれぞれの構成について、図５を用いて説明する。誤り訂正ブロック１０♯１および１０♯２のそれぞれは、図５に示す構成を有する。図５に示される誤り訂正ブロック１０は、差集合巡回符号の復号方式として、誤り訂正能力を向上させるため誤りを判定する閾値を変化させながら複数回誤り訂正を行なう。
【００３０】
誤り訂正ブロック１０は、シフトレジスタ１４、シンドロームレジスタ１５、閾値設定回路１６、多数決判別回路１７、エラー訂正判別回路１８、ならびに演算回路（ＥＸＯＲ回路）１９および２０を含む。
【００３１】
入力される１８４ビットのデータは、まずシフトレジスタ１４およびシンドロームレジスタ１５に入力される。入力が終了すると、シフトレジスタ１４およびシンドロームレジスタ１５を１ビットづつシフトする。そして、閾値設定回路１６で設定された閾値に対して、シンドロームレジスタ１５のデータから得られるシンドローム情報に基づき、多数決判別回路１７でエラーの有無を判別する。多数決判別回路１７は、エラーが検出された場合には“１”を、エラーが検出されない場合には“０”を出力する。
【００３２】
差集合巡回符号はビット誤り訂正符号であるため、演算回路（ＥＸＯＲ回路）の出力が“１”の場合には、シフトレジスタ１４の出力が反転され、データが訂正されることになる。これを１８４ビット繰返し、すべてのデータの訂正処理を行なう。
【００３３】
１回目の訂正処理が終了すると、閾値設定回路１６の設定値を変化させ、再び訂正処理を行なう。このように閾値を変更して複数回誤り訂正を行なうことにより、訂正能力が向上される。たとえば、６回、閾値を変化させて訂正を行なう。
【００３４】
訂正が終了すると、誤り訂正ブロック１０から訂正データが出力される。さらに、エラー訂正判別回路１８からは、シンドロームレジスタ１５の結果から得られる、誤り訂正が正常に終了したか否かを示す誤り訂正フラグＯＫ／ＮＧが出力される。
【００３５】
図３を参照して、誤り訂正回路１００はさらに、誤り訂正ブロック１０♯１または１０♯２のいずれか一方の出力を選択して出力する出力データ選択回路１２、出力データ選択回路１２の選択動作を制御する出力データ制御回路１１、および誤り訂正制御回路１３を備える。誤り訂正制御回路１３は、内部回路の制御を行う。一例として、閾値設定回路１６の閾値の設定を制御する。
【００３６】
誤り訂正処理を終えた誤り訂正ブロック１０♯１および１０♯２のそれぞれの出力は、出力データ選択回路１２に入力される。出力データ選択回路１２は、出力データ制御回路１１の出力に基づき、誤り訂正ブロック１０♯１の訂正データまたは誤り訂正ブロック１０♯２の訂正データのいずれか一方を選択的に出力する。
【００３７】
出力データ制御回路１１は、各誤り訂正ブロックにおける訂正フラグＯＫ／ＮＧと、多数決判別後のＴＭＣＣデータとを受けて、出力データ選択回路１２の選択動作を制御する。より具体的には、出力データ制御回路１１は、誤り訂正に関連する１８４ビット目（最終ビット）のＴＭＣＣデータが入力されるまで、制御動作を停止状態としている。そして、出力データ制御回路１１に、多数決判別回路７から最終ビットのＴＭＣＣデータが入力されると、出力データ選択回路１２を制御するための選択制御動作を実行する。
【００３８】
ここで、出力データ制御回路１１における選択制御動作について、図６を用いて説明する。図６は、出力データ制御回路１１における選択制御動作を説明するためのフローチャートである。まず、ステップＳ１において、出力データ制御回路１１は、最終ビットのＴＭＣＣデータが、“１”であるか否かを判別する。最終ビットのＴＭＣＣデータが“１”の場合には、ステップＳ２に移り、誤り訂正ブロック１０♯１の出力する誤り訂正フラグＯＫ／ＮＧにより、誤り訂正が正常終了したか否かを判断する。ステップＳ２において、誤り訂正ブロック１０♯１での誤り訂正が正常終了した（ＯＫ）と判断された場合には、ステップＳ３に移り、誤り訂正ブロック１０♯１の出力する訂正データを選択する選択信号を出力する。
【００３９】
ステップＳ２において、誤り訂正ブロック１０♯１での誤り訂正が正常に終了しなかった（ＮＧ）と判断された場合には、ステップＳ４に移る。
【００４０】
ステップＳ４では、誤り訂正ブロック１０♯２の出力する誤り訂正フラグＯＫ／ＮＧにより、誤り訂正が正常終了したか否かを判断する。ステップＳ４において、誤り訂正ブロック１０♯２での誤り訂正が正常終了した（ＯＫ）と判断された場合には、ステップＳ６に移り、誤り訂正ブロック１０♯２の出力する訂正データを選択する選択信号を出力する。ステップＳ４において、誤り訂正が正常に終了しなかった（ＮＧ）と判断された場合には、ステップＳ３に移り、誤り訂正ブロック１０♯１の出力する訂正データを選択する選択信号を出力する。
【００４１】
ステップＳ１において、最終ビットのＴＭＣＣデータが“０”である場合には、ステップＳ５に移り、誤り訂正ブロック１０♯２の出力する誤り訂正フラグＯＫ／ＮＧにより、誤り訂正が正常終了しかた否かを判断する。ステップＳ５において、誤り訂正ブロック１０♯２での誤り訂正が正常終了した（ＯＫ）と判断された場合には、ステップＳ６に移り、誤り訂正ブロック１０♯２の出力する訂正データを選択する選択信号を出力する。
【００４２】
ステップＳ５において、誤り訂正ブロック１０♯２での誤り訂正が正常に終了しなかった（ＮＧ）と判断された場合には、ステップＳ７に移る。
【００４３】
ステップＳ７では、誤り訂正ブロック１０♯１の出力する誤り訂正フラグＯＫ／ＮＧにより、誤り訂正が正常終了したか否かを判断する。ステップＳ７において、誤り訂正ブロック１０♯１での誤り訂正が正常終了した（ＯＫ）と判断された場合には、ステップＳ３に移り、誤り訂正ブロック１０♯１の出力する訂正データを選択する選択信号を出力する。ステップＳ７において、誤り訂正が正常に終了しなかった（ＮＧ）と判断された場合には、ステップＳ６に移り、誤り訂正ブロック１０♯２の出力する訂正データを選択する選択信号を出力する。
【００４４】
出力データ選択回路１２は、出力データ制御回路１１から受ける選択信号に応じて、誤り訂正ブロック１０♯１または１０♯２のいずれか一方の訂正データを選択的に出力する。
【００４５】
このような処理によれば、誤り訂正ブロック１０♯１および１０♯２の出力データ選択は、実際に入力されたデータに基づき行なわれる。したがって、誤り訂正が誤り訂正ブロック１０♯１および１０♯２のどちらにおいても正常に行なわれた場合には、誤訂正の少ないデータを選択することが可能である。また、誤り訂正が異常に終了した場合には、より誤りの少ないデータを選択して出力することが可能となる。
【００４６】
ここで、誤り訂正範囲の１８４ビットのＴＭＣＣデータが決定された後に誤り訂正を行う誤り訂正回路９００と本発明の実施の形態による誤り訂正回路１００との処理速度を対比する。図７は、多数決判別により全てのデータが決定された後に誤り訂正を行う誤り訂正回路９００の構成を示す図であり、図８は、誤り訂正回路１００と誤り訂正回路９００との動作タイミングの違いを説明するためのタイミングチャートである。なお、図８において、ＦＦＴ後のシンボル中に示される黒太線は、ＴＭＣＣデータを表している。
【００４７】
図７に示される誤り訂正回路９００は、多数決判別回路７、誤り訂正ブロック１０、および誤り訂正制御回路１３を備える。誤り訂正ブロック１０は、多数決判別回路７から出力される誤り訂正に関連する１８４ビットのＴＭＣＣデータを受けて、誤り訂正処理を実行する。
【００４８】
図８を参照して、時刻ｔ０で、１番目のＴＭＣＣデータが入力され、時刻ｔ１でシンボルＳＮ１のＴＭＣＣデータＴ１が決定される。時刻ｔ２でシンボルＳＮ２０３のＴＭＣＣデータＴ２０３が決定され、時刻ｔ３でシンボルＳＮ２０４のＴＭＣＣデータＴ２０４が決定される。時刻ｔ４以降は、次のフレームのデータが入力される。
【００４９】
フレームの最初のＴＭＣＣデータが入力されてから、最終シンボルＳＮ２０４における最終のＴＭＣＣデータが入力されるまでの期間をデータ入力期間とする。
【００５０】
誤り訂正回路９００では、最終シンボルＳＮ２０４のＴＭＣＣデータＴ２０４が決定される時刻ｔ３の直後に、誤り訂正処理を開始する。訂正回数は、６回とする。
【００５１】
上述したように、ＴＭＣＣデータは、１シンボルの中に点在して存在し、すべてのＴＭＣＣデータが入力されてから次のフレームの先頭までの期間は短い。また、閾値を変化させて複数回誤り訂正を行なう方法では、１回の誤り訂正を行なう場合に比べて処理時間がかかる。したがって、誤り訂正回路９００によると、６回の誤り訂正を終了し、訂正データの出力が開始される時刻ｔ５には、すでに次のフレームのデータが到達している（ｔ５＞ｔ４）。
【００５２】
このように、閾値を変化させて複数回誤り訂正を行なう方法は、処理時間がかかる。このため、通常のシステムクロックでは、次のフレームまでに処理を行なうことは不可能である。また、高速のクロックを用いて処理するならば、かなり高速のクロックスピードが要求される。
【００５３】
一方、誤り訂正回路１００は、ＴＭＣＣデータＴ２０３が決定される時刻ｔ２の直後に、誤り訂正処理を開始する。訂正回数は、６回とする。誤り訂正回路１００は、最終シンボルＳＮ２０４のデータを待たずに誤り訂正を開始する。これにより、誤り訂正範囲の最終ビットのＴＭＣＣデータが決定される前に誤り訂正処理を終了させることができる。誤り訂正回路１００は、最終ビットのＴＭＣＣデータＴ２０４の決定を受けて、訂正データを出力する（時刻ｔ３）。
【００５４】
したがって、誤り訂正回路１００によると、通常のシステムクロックを用いても、最初のデータが入力されてから、訂正データが出力されるまでの時間を短縮することができる。
【００５５】
このように、本発明の実施の形態による誤り訂正回路１００は、不定期に入力されるデータに対して高速に誤り訂正データを出力することができる。なお、最終ビットのデータを１または０と仮定して誤り訂正を行うために誤り訂正ブロックを２つ設けているが、差集合誤り訂正回路の回路規模は比較的小さいため、従来の回路を高速で動作させる方法に比べて有効である。
【００５６】
ここで、本発明の実施の形態による誤り訂正回路の他の一例について、図９を用いて説明する。図９に示される誤り訂正回路２００は、不定期に到来するｎビットのデータのうち、予め用意したｍビットのデータを用いて高速に誤り訂正結果を出力するものである。
【００５７】
図９に示される誤り訂正回路２００は、訂正前データ入力処理回路１、２ｍ個の誤り訂正ブロック１０♯１、１０♯２、…、１０♯２ｍ、出力データ制御回路５、および出力データ選択回路６を備える。簡単のため、誤り訂正回路２００に入力されるデータを、データＤ１〜Ｄｎ（ｎ＞１）と記す。
【００５８】
２ｍ個の誤り訂正ブロック１０♯１、１０♯２、…、１０♯２ｍのそれぞれの構成は、図５で説明したとおりである。訂正前データ入力処理回路１は、ｎビットのデータを誤り訂正ブロックに出力する。訂正前データ入力処理回路１の出力するｎビットのデータは、図１０に示されるように、前半の（ｎ−ｍ）ビットが、実際に入力されるデータＤ１〜Ｄ（ｎ−ｍ）で構成され、残りのｍビットが、誤り訂正ブロックごとに予め規定したデータで構成される。訂正前データ入力処理回路１は、データＤ（ｎ−ｍ）を各誤り訂正ブロックに出力した直後に、誤り訂正範囲の残りの部分を構成するｍビットのデータを各誤り訂正ブロックに出力する。
【００５９】
当該ｍビットのデータは、誤り訂正ブロック１０♯１、１０♯２、…、１０♯２ｍのそれぞれで互いに異なっている。たとえば、誤り訂正ブロック１０♯１には、ｍビットがすべて“１”のデータが、誤り訂正ブロック１０♯２には、ｍビットのうち第１ビットが“１”のデータが、誤り訂正ブロック１０♯２ｍには、ｍビットがすべて“０”のデータが入力される。
【００６０】
誤り訂正ブロックのそれぞれは、ｎビットのデータに対し誤り訂正処理を行なう。この場合、誤り訂正回路２００に第（ｎ−ｍ）ビット目のデータＤ（ｎ−ｍ）が入力された直後に、誤り訂正処理が開始されることになる。
【００６１】
誤り訂正処理を終えた誤り訂正ブロックのそれぞれの出力は、出力データ選択回路６に入力される。出力データ選択回路６は、出力データ制御回路５の制御により、誤り訂正の結果を選択する。
【００６２】
出力データ制御回路５は、各誤り訂正ブロックにおける訂正フラグＯＫ／ＮＧと、入力される訂正前のデータとを受けて、出力データ選択回路６の選択動作を制御する。
【００６３】
一例としては、出力データ制御回路５は、各誤り訂正ブロックから出力される誤り訂正フラグＯＫ／ＮＧに応じて、いずれか１つの誤り訂正ブロックの出力を選択するための選択信号を出力する。または、出力データ制御回路５は、第（ｎ−ｍ＋１）ビット目〜第ｎビット目までのデータＤ（ｎ−ｍ＋１）〜データＤｎに応じて、いずれか１つの誤り訂正ブロックの出力を選択するための選択信号を出力する。または、出力データ制御回路５は、各誤り訂正ブロックから出力される誤り訂正フラグＯＫ／ＮＧと第（ｎ−ｍ＋１）ビット目〜第ｎビット目までのデータＤ（ｎ−ｍ＋１）〜データＤｎとに応じて、いずれか１つの誤り訂正ブロックの出力を選択するための選択信号を出力する
出力データ選択回路６は、出力データ制御回路５の出力する選択信号に基づき、誤り訂正ブロック１０♯１〜誤り訂正ブロック１０♯２ｍのそれぞれが出力する訂正データのうちいずれか一つを選択的に出力する。
【００６４】
この結果、ｎビットのデータが到達してから誤り訂正を行う場合と比べて、高速に誤り訂正結果を出力することが可能となる。
【００６５】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【００６６】
【発明の効果】
本発明に係る誤り訂正回路および誤り訂正方法によれば、誤り訂正対象となるデータが不定期に入力される場合において、すべてのデータが入力される前に誤り訂正を開始することができる。
【００６７】
このため、本発明に係る誤り訂正回路および誤り訂正方法によれば、高速に誤り訂正結果を得ることが可能となる。したがって、データが入力されてから誤り訂正データを得るまでの時間を短縮化することが可能となる。
【００６８】
また、誤り訂正結果の出力においては、実際に入力されたデータに基づき、同時に実行させる複数の誤り訂正処理の結果のうちの一つを選択して出力する。したがって、誤訂正の少ないデータを選択することが可能である。
【００６９】
特に、差集合巡回符号など誤り訂正回路の規模が比較的小さい回路に適している。また、特に、地上デジタル放送のＴＭＣＣの誤り訂正に対し、高速処理が保証される。
【図面の簡単な説明】
【図１】（ａ）、（ｂ）は、地上デジタル放送で受信される信号について説明するための概念図である。
【図２】ＴＭＭＣデータ列のデータ構造について説明するための概念図である。
【図３】本発明の実施の形態による誤り訂正回路１００の構成の概要を示すブロック図である。
【図４】（ａ）、（ｂ）は、図３に示す各誤り訂正ブロックへ入力されるデータの構造について説明するための概念図である。
【図５】誤り訂正ブロックの構成を示すブロック図である。
【図６】出力データ制御回路１１における選択制御動作について説明するためのフローチャートである。
【図７】多数決判別により全てのデータが決定された後に誤り訂正を行う誤り訂正回路９００の構成を示す図である。
【図８】誤り訂正回路１００と誤り訂正回路９００との動作タイミングの違いを説明するためのタイミングチャートである。
【図９】本発明の実施の形態による誤り訂正回路の他の主要部の構成例を示すブロック図である。
【図１０】図９に示す各誤り訂正ブロックへ入力されるデータの構造について説明するための概念図である。
【符号の説明】
１，８  訂正前データ処理回路、７，１７  多数決判別回路、１０，１０♯１〜１０♯２ｍ  誤り訂正ブロック、５，１１  出力データ制御回路、６，１２  出力データ選択回路、１３  誤り訂正制御回路、１４  シフトレジスタ、１５  シンドロームレジスタ、１６  しきい値設定回路、１８  エラー訂正判別回路、１９，２０  演算回路、１００，２００  誤り訂正回路。
【図１】
0003631058.tif 000002
【図２】
0003631058.tif 000003
【図３】
0003631058.tif 000004
【図４】
0003631058.tif 000005
【図５】
0003631058.tif 000006
【図６】
0003631058.tif 000007
【図７】
0003631058.tif 000008
【図８】
0003631058.tif 000009
【図９】
0003631058.tif 000010
【図１０】
0003631058.tif 000011