(57)【要約】      （修正有）【課題】多重チャンネル直列通信のための巡回冗長検査回路及びこれを備えた通信システムを提供する。【解決手段】多重チャンネル直列通信のための巡回冗長検査回路は、次のような方法によって製作される。第1時間に単一チャンネル直列通信方式の巡回冗長検査多項式を満足する巡回冗長検査ビットを生成する生成式を作成する。第1時間から順次多重チャンネルのチャンネル数だけ延びた時間を生成式に適用して各遅延時間に対する生成式を作成する。作成された生成式のうち、一番延びた時間に対する生成式に対応する回路を実現する。本発明によって巡回冗長検査に対する並列処理が可能である。前記生成式に対応する巡回冗長検査回路は、選択された巡回冗長検査多項式の0ではない係数の数よりさらに多い排他的論理和演算器を含む。【選択図】  図３
2007082215.tif 000002
【特許請求の範囲】
【請求項１】
多重チャンネル通信のための循環重複検査回路において、
第1時間に対して単一チャンネル直列通信システムの循環重複検査多項式を満足する循環重複検査ビットを生成し、
前記第1時間から順次前記多重チャンネルのチャンネル数だけ延びた時間を前記生成式に適用して各時間に対する生成式を作成する段階と、
作成された生成式のうち、一番延びた時間に対する生成式に対応する回路を実現する段階と、を含む方法によって作製されることを特徴とする循環重複検査回路。
【請求項２】
前記回路は、
前記チャンネル数だけのデータが並列に入力され、入力されたデータを並列に処理し、前記入力されたデータに基づいて前記循環重複検査ビットを生成することを特徴とする請求項１に記載の循環重複検査回路。
【請求項３】
前記回路は、
複数の排他的論理和演算手段及び入力されるデータを一周期の間に遅延する複数の遅延手段を含むことを特徴とする請求項１または請求項２に記載の循環重複検査回路。
【請求項４】
並列に入力されるデータを各々貯蔵する複数の貯蔵手段と、
前記貯蔵手段から並列に出力されるデータを入力して循環重複検査ビットを生成する循環重複検査回路と、
前記貯蔵手段から並列に出力されるデータと前記循環重複検査ビットとを前記多重チャンネルを介して伝送する伝送部と、を含むことを特徴とする送信装置。
【請求項５】
前記循環重複検査回路は、
第1時間に対して単一チャンネル直列通信方式の循環重複検査多項式を満足する循環重複検査ビットを生成する生成式を作成する段階と、
前記第1時間から順次前記多重チャンネルのチャンネル数だけ延びた時間を前記生成式に適用して各時間に対する生成式を作成する段階と、
作成された生成式のうち、一番延びた時間に対する生成式に対応する回路を実現する段階と、を含む方法によって製作されることを特徴とする請求項４に記載の送信装置。
【請求項６】
前記循環重複検査回路は、
複数の排他的論理和演算手段及び入力されるデータを一周期の間に遅延する複数の遅延手段を含み、前記排他的論理和演算手段及び遅延手段は、前記一番延びた時間に対する生成式によって連結されることを特徴とする請求項５に記載の送信装置。
【請求項７】
多重チャンネルを介して受信される第1循環重複検査ビットを含む並列データを各々貯蔵する複数の貯蔵手段と、
前記並列データを受信して、前記並列データに基づいて第2循環重複検査ビットを生成する循環重複検査回路と、
前記第1循環重複検査ビットと前記循環重複検査回路から生成された第2循環重複検査ビットとを比べて、エラー発生の有無を判別する判別部と、を含むことを特徴とする受信装置。
【請求項８】
前記循環重複検査回路は、
第1時間に対して単一チャンネル直列通信方式の循環重複検査多項式を満足する循環重複検査ビットを生成する生成式を作成する段階と、
前記第1時間から順次前記多重チャンネルのチャンネル数だけ延びた時間を前記生成式に適用して各時間に対する生成式を作成する段階と、
作成された生成式のうち、一番延びた時間に対する生成式に対応する回路を実現する段階と、を含む方法によって製作されることを特徴とする請求項７に記載の受信装置。
【請求項９】
前記循環重複検査回路は、
複数の排他的論理和演算手段及び入力されるデータを一周期の間に遅延する複数の遅延手段を含み、前記排他的論理和演算手段及び遅延手段は、前記一番延びた時間に対する生成式によって連結されることを特徴とする請求項８に記載の受信装置。
【請求項１０】
前記循環重複検査回路は、
前記循環重複検査ビットを構成する第1ないし第8のタップビットを発生させ、
前記第7及び第8タップビットを各々遅延して第7 ないし第8 の遅延ビットを発生させるフリップフロップと、
前記並列データのうち、第1及び第2チャンネルデータ及び前記第8 遅延ビットを排他的論理和する第1排他的論理和演算器と、
前記第1排他的論理和演算器の出力信号と前記第7遅延ビットとを排他的論理和して前記第1タップビットを発生させる第2排他的論理和演算器と、
前記第1チャンネルデータと前記第8遅延ビットとを排他的論理和して前記第2タップビットを発生させる第3排他的論理和演算器と、
前記第1タップビットを遅延して前記第3タップビットを発生させるフリップフロップと、
前記第2タップビットを遅延して前記第4タップビットを発生させるフリップフロップと、
前記第3タップビットを遅延して前記第5タップビットを発生させるフリップフロップと、
前記第4タップビットを遅延して前記第6タップビットを発生させるフリップフロップと、
前記第5タップビットを遅延して第5遅延ビットを発生させるフリップフロップと、
前記第6タップビットを遅延して第6遅延ビットを発生させるフリップフロップと、
前記第1排他的論理和演算器の出力信号、前記第5遅延ビット及び前記第7遅延ビットを排他的論理和して前記第7タップビットを発生させる第4排他的論理和演算器と、
前記第6遅延ビット、前記第7遅延ビット及び前記第2チャンネルデータを排他的論理和して前記第8タップビットを発生させる第5排他的論理和演算器と、を含むことを特徴とする請求項４または請求項７に記載の装置。
【請求項１１】
並列データを入力され、多重チャンネルを介して伝送される前記並列データに基づいて第1循環重複ビットを生成する第1循環重複の検査回路と、多重チャンネルを介して受信された並列データを受信して、前記受信された並列データに基づいて第2循環重複ビットを生成する第2循環重複検査回路と、の少なくとも一つを含むことを特徴とする通信システム。
【請求項１２】
前記通信システムは、
前記第2循環重複検査回路に連結され、
前記第1循環重複ビットと前記第2循環重複ビットとを比べて、前記受信された並列データのエラー発生の有無を判別する判別部をさらに含むことを特徴とする請求項１１に記載の通信システム。
【請求項１３】
多重チャンネル直列通信システムにおいて、
第1ないし第2チャンネルデータが並列に入力され、所定の生成式によって循環重複検査ビットを生成する循環重複検査回路と、
2個のチャンネルを介して前記第1ないし第2チャンネルデータを並列に伝送すると共に前記循環重複検査ビットを並列に伝送する伝送部と、を含むことを特徴とする多重チャンネル直列通信システム。
【請求項１４】
多重チャンネル直列通信システムにおいて、
第1ないし第2チャンネルデータが並列に入力され、所定の生成式によって第2循環重複検査ビットを生成する循環重複検査回路と、
送信装置から受信される第1循環重複検査ビットと前記循環重複の検査回路から生成された第2循環重複検査ビットとを比べて、エラー発生の有無を判別する判別部と、を備えることを特徴とする多重チャンネル直列通信システム。
【請求項１５】
前記所定の生成式は、
単一チャンネル直列通信方式の循環重複検査多項式を満足する循環重複検査ビットを生成する生成式に(t+1)時間を適用して得られる生成式であることを特徴とする請求項１３または請求項１４に記載の多重チャンネル直列通信システム。
【請求項１６】
前記単一チャンネル直列通信方式の循環重複検査多項式は、
【数１】
2007082215.tif 000009
であることを特徴とする請求項１１または請求項１２に記載の多重チャンネル直列通信システム。
【請求項１７】
前記循環重複検査回路は、前記循環重複検査ビットを構成する第1ないし第8タップビットを発生させ、
前記循環重複検査回路は、
前記第7及び第8タップビットを各々遅延して第7及び第8遅延ビットを発生させるフリップフロップと、
前記第1及び第2チャンネルデータ及び前記第8 遅延ビットを排他的論理和する第1排他的論理和演算器と、
前記第1排他的論理和演算器の出力信号と前記第7 遅延ビットとを排他的論理和して前記第1タップビットを発生させる第2排他的論理和演算器と、
前記第1チャンネルデータと前記第8 遅延ビットとを排他的論理和して前記第2タップビットを発生させる第3排他的論理和演算器と、
前記第1タップビットを遅延して前記第3タップビットを発生させるフリップフロップと、
前記第2タップビットを遅延して前記第4タップビットを発生させるフリップフロップと、
前記第3タップビットを遅延して前記第5タップビットを発生させるフリップフロップと、
前記第4タップビットを遅延して前記第6タップビットを発生させるフリップフロップと、
前記第5タップビットを遅延して第5遅延ビットを発生させるフリップフロップと、
前記第6タップビットを遅延して第6遅延ビットを発生させるフリップフロップと、
前記第1排他的論理和演算器の出力信号、前記第5遅延ビット及び前記第7遅延ビットを排他的論理和して前記第7タップビットを発生させる第4排他的論理和演算器と、
前記第6遅延ビット、前記第7遅延ビット及び前記第2チャンネルデータを排他的論理和して前記第8タップビットを発生させる第5排他的論理和演算器と、を含むことを特徴とする請求項１３に記載の多重チャンネル直列通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、循環重複検査(Cyclic Redundancy Check、CRC)装置及びこれを備えた通信システムに関し、特に高鮮明マルチメディアインターフェース(High Definition Multimedia Interface、HDMI)のような多重チャンネル通信システムでの循環重複検査回路及びこれを備えた通信システムに関する。
【背景技術】
【０００２】
HDMIは、圧縮をしないすべてのデジタルオーディオ/ビデオデータを伝送するためのケーブル及びインターフェースであって、セットトップボックス(set top box)(例えば、‘衛星受信機のケーブルボックス’)、DVDプレーヤなどのオーディオ/ビデオソース及びデジタルTVのようなディスプレイの間のインターフェースを提供する。HDMIは、単一ケーブルと各端子(19-ポールを有するミニプラグ)から単一のコネクタを通じて標準の高鮮明(high-definition)ビデオと多重チャンネル(multi-channel)のオーディオとを支援し、すべてのATSC(Advanced Television Systems Committee)HDTV標準と8チャンネルデジタルオーディオを支援する。HDMIは、最大8チャンネルから最大ワード長さが24ビットであり、最大192kHzの周波数を有するオーディオデータ信号を伝送する。ビデオデータの最大帯域幅は、165MHzである。したがって、品質に何らの損傷を与えず、1080pの最高解像度を有するHDTVを含むホームシネマワールドのすべての映像と音声フォーマットとを伝送しうる。
【０００３】
循環重複検査(Cyclic Redundancy Check)は、元来は伝送線路の誤謬を見つけるために開発され、送信データのブロックから小さな変化を検出するために使われる。CRC(Cyclic Redundancy Check)は、直列データ伝送システムから送受信データの信頼性を検証するためのエラー検出方法である。その動作原理は、次のようである。まず、nビットのデータに対してkビットだけシフトさせてあらかじめ約束したkビットのキー値で割れば、rビットの残りが残る。直列データ伝送システムの送信側では、元来の情報ビットをkビットシフトさせたものにrビットの残りを加えてn+rビットのデータを作って伝送する。直列データ伝送システムの受信側では、受信されたn+rビットのデータをキー値で割って見て残りが0になれば、受信したデータにエラーがないと判断する。
【０００４】
CRCアルゴリズムはブロックまたはフレーム単位(例えば、‘単一の大きい数値’)に実行される。CRCアルゴリズムは、前記単位を所定の数(CRC多項式または生成多項式P)で割って、その残り(rビット)はr-ビットのCRC結果になる。前記CRC結果は、元来データと一緒に送られるか貯蔵されうる。データを受信(または貯蔵所から抽出)する時、CRCアルゴリズムはまた実行されることができ、その結果は元来のCRC結果と比較される。もし、エラーが発生したら、CRC結果は異なる。CRCは、大部分エラーを分類するか捜し出すのに使われるのではなく、単にエラーが検出されないまでデータ受信(または抽出)を繰り返すように決めるのに使われる。
【０００５】
CRCアルゴリズムの実行結果により生成されたr-ビットCRC結果の品質は、主に選択された生成多項式Pによって決まる。生成多項式Pを決めることはCRCアルゴリズムを実行するに際して、一番重要な部分である。生成多項式Pは、エラー検出能力を最大化できるように選択される。新しい多項式を生成する時、自分自身を除いたどんな他の多項式で割っても残りが‘0’にならない多項式、すなわち、これ以上約分できない多項式を使うことが望ましい。特定のCRCが多項式Pによって定義されたと仮定する。前記多項式Pの次数がkなら、前記多項式Pは1+x+…+x^kの形式を有する。したがって、前記多項式Pは、本来k+1ビットの文字列で表現されるが、最高次項(x^k)が暗示しているkビットの文字列で表現される。
【０００６】
HDMI規格から定義されたCRC多項式P(x)は、次の数式１のようである。
【０００７】
【数１】
2007082215.tif 000003
【０００８】
数式１のHDMI CRC多項式によってr-ビットCRC結果が生成される過程を説明すれば、次のようである。
【０００９】
図２は、数式１のCRC多項式によるCRC回路図を示したものである。図示したCRC回路は、一般的な単一チャンネル直列通信システムから送受信された直列データのために構成されたものである。
【００１０】
【数２】
2007082215.tif 000004
は、排他的論理和演算器またはモジュロ(Modulo)-2加算器を表わす。CRC回路は、複数(‘r’、但し、‘r’は、多項式Pの次数kより大きくない数)の排他的論理和演算器４１と入力データを各々一周期の間にディレーする複数(‘k’、例えば、HDMI規格からk=8)のフリップフロップ４２を含む。図２の回路から出力されるr-ビットCRC結果は、rタップであるP[0]、P[5]及びP[6]と対応する。
【００１１】
CRC演算は、定数のモジュロ-2演算に対する多項式の分割に基づく。前記モジュラー演算から多項式の係数は、一つのビットによって表現される。あるビット文字列は、多項式の係数の数列と解釈されうる。CRCアルゴリズムは、すべてのビットストリーム(データ)を2進多項式に扱う。あるビット文字列は、CRCを捜すための多項式の係数として解釈することができ、前記データは他の固定多項式によっても分割できる。前記あらかじめ決まった固定多項式を除数(divisor)またはCRC多項式と言う。前記分けた結果はCRCとし、残り多項式の係数の数列で定義される。
【００１２】
モジュロ-2演算は、割り算形態の効果的な実行を許容する。すなわち、演算実行が早くて易しく、誤謬検出の目的のために充分である。
【００１３】
寄せ算と引き算演算は、モジュロ-2演算からは同等であり、二つともビットの排他的論理和(XOR)演算と等しい。したがって、ハードウェアで実現することがとても易しい。また、ビットの間にキャリ(carry)が発生せず、すべての基本演算を実行するのに一般的な演算より演算費用が少なくてすむ。これがモジュラー演算を使った理由である。
【００１４】
CRC生成の概略的な過程は、次のようである。
1.nビットデータを持って来る。
2.kビットによって、前記nビットデータを左にシフト(shift)して、それを多項式Pで割る。
3.最後の実行の残りrビットがCRCになる。
4.前記データに一番目のrビットCRCを付けて、それらを共にデータフレームとして伝送する。
【００１５】
CRC検査の概略的な過程は、次のようである。
1.前記データフレームを受信する。
2.前記データフレームを多項式Pで割る。
3.二番目のrビットCRCを前記送信された一番目のrビットCRCと比べる。
【００１６】
一般的なハードウェアCRC回路が、図２に示されている。図２を参照すれば、k個のフリップフロップ４２で構成されたシフトレジスタは、数式１の多項式の次数であるkビットを含む。一般的なCRC回路は、排他的論理和(XOR)演算器の数が最大k個である。排他的論理和(XOR)演算器の存在有無は、除数(divisor)多項式Pの項の存否と対応する。
【００１７】
受信側では、送信側CRC回路と同一のCRC回路を備え、受信されたデータに対するCRCビットを生成して、生成されたCRCビットと受信したCRCビットとを比べることによって、エラー有無を判別する。
【００１８】
このようなCRCは、USB(Universal Serial Bus)のような単一チャンネル直列通信方式でリアルタイムで直列データの伝送が完了する時点でCRCビットがすぐに生成される。
【００１９】
しかし、前述したHDMIのような多重チャンネル方式の直列通信では、いくつかの単位データが多重チャンネルを介して並列に同時に伝送されるので、単一チャンネル伝送ではない多重チャンネル伝送に相応しいCRCビットを生成することが必要である。
【発明の開示】
【発明が解決しようとする課題】
【００２０】
本発明が果たしようとする技術的課題は、多重チャンネル直列通信でCRCを並列に処理できるCRC回路及びこれを備えた通信システムを提供することである。
【課題を解決するための手段】
【００２１】
前記技術的課題を果たすための、本発明は、多重チャンネル直列通信のための循環重複の検査回路に関する。前記、複数の段階を含む方法によって製作される。まず、第1時間に単一チャンネル直列通信方式の循環重複検査多項式を満足する循環重複検査ビットを生成する第1生成式を作成する。前記第1時間から順次前記多重チャンネルのチャンネル数だけ延びた時間を前記第1生成式に適用して各時間に対する第2生成式を作成する。作成された生成式のうち、一番延びた時間に対する生成式に対応する回路を実現する。
【００２２】
前記技術的課題を果たすための、本発明は、多重チャンネル直列通信のための送信装置に関する。前記、複数の貯蔵手段、循環重複検査回路及び伝送部を含む。前記貯蔵手段は、並列に入力されるデータを各々貯蔵する。前記循環重複検査回路は、前記貯蔵手段から並列に出力されるデータが入力されて循環重複検査ビットを生成する。前記伝送部は、前記貯蔵手段から並列に出力されるデータ及び前記循環重複検査ビットを前記多重チャンネルを介して伝送する。
【００２３】
前記技術的課題を果たすための、本発明は、多重チャンネル直列通信のための受信装置に関する。前記、複数の貯蔵手段、循環重複検査回路及び判別部を含む。前記複数の貯蔵手段は、多重チャンネルを介して受信される第1循環重複ビットを含む並列データを各々貯蔵する。前記循環重複検査回路は、前記並列データを入力にして第2循環重複検査ビットを生成する。前記判別部は、前記第1循環重複ビットと前記第2循環重複ビットとを比べることによって、循環重複検査回路エラー(例えば、前記マルチチャンネルから発生されたエラー)の発生有無を判別する。前記技術的課題を果たすための、本発明は、多重チャンネル直列通信のための通信システムに関する。前記、送信装置及び受信装置を備える。前記送信装置は、並列に入力されるデータを各々貯蔵する複数の第1貯蔵手段、前記貯蔵手段から並列に出力されるデータが入力されて第1循環重複検査ビットを生成する第1循環重複検査回路及び前記第1貯蔵手段から並列に出力されるデータを多重チャンネルを介して伝送し、前記データが伝送されれば、前記第1循環重複検査ビットを前記多重チャンネルを介して伝送する伝送部を備える。前記受信装置は、前記多重チャンネルを介して受信される並列データを各々貯蔵する第2貯蔵手段、前記並列データが入力されて第2循環重複検査ビットを生成する第2循環重複検査回路及び前記並列データに引き継いで受信される第1循環重複検査ビットと前記第2循環重複検査ビットとを比べて、エラー(例えば、前記多重チャンネルから発生されたエラー)の発生有無を判別する判別部を含む。
【００２４】
一般的なCRC回路は、r個の排他的論理和演算器(rは多項式の次数より大きくないCRCのビット数に対応する)を含む一方、本発明による多様な実施形態によるCRC回路は、 rより多い排他的論理和演算器を含む。
【発明の効果】
【００２５】
多重チャンネル直列通信方式で数学的な計算を先に実行した結果式をCRC回路で実現することによって、CRCの並列処理が可能で並列に入力されるデータに対する貯蔵手段を必要としなくなる。この結果、全体回路の大きさが減って、通信の時発生する時間遅延が除去されうる。
【発明を実施するための最良の形態】
【００２６】
以下、添付された図面を参照して、本発明をより詳しく説明する。
【００２７】
図１は、本発明による循環重複検査回路を含み、多重チャンネルを介して通信する通信システムについてのブロック図を示したものである。図１を参照すれば、通信システムは、送信部１及び受信部３を含む。送信部１は、多重チャンネル２を介して受信部３にデータを伝送する。図示した多重チャンネル２は、説明の便宜のために二つのチャンネルを例示したが、これに限定されず、多数のチャンネルに拡張されうる。
【００２８】
送信部１は、第1レジスタ１１、第2レジスタ１２、CRC部１３、スイッチ１４及びスイッチ部１５を含む。また、送信部１は、入力される直列データを並列データに変換するスイッチ１０をさらに含むことが出来る。説明の便宜上、スイッチ１０を第1スイッチ、スイッチ１４を第2スイッチと言う。
【００２９】
第1レジスタ１１及び第2レジスタ１２は、各々入力されるデータを貯蔵する。第1スイッチ１０は、入力データが直列データの場合、並列伝送が可能になるように入力データの入力順序によってスイッチングすることによって、入力データを第1レジスタ１１または第2レジスタ１２に貯蔵する。この際、第1レジスタ１１及び第2レジスタ１２は、毎周期または毎クロックごとに貯蔵したデータをシフトするシフトレジスタであることが望ましい。第1レジスタ１１または第2レジスタ１２から出力されるデータは、多重チャンネル２を介して並列に受信部３に伝送される。
【００３０】
また、第1レジスタ１１または第2レジスタ１２から出力されるデータは、CRC部１３にも出力される。CRC部１３は、送受信部１、３の間の通信方式に相応したCRCビットを生成する。
【００３１】
生成されたCRCビットは、データと同一の順序で第2スイッチ１４を介して伝送される。
【００３２】
スイッチ部１５は、第1及び第2レジスタ１１を多重チャンネル２に各々連結してデータが並列に伝送されるようにして、CRC部１３からCRCビットが生成されれば、第2スイッチ１４を介して連結されるCRC部１３の出力を多重チャンネル２に連結する。
【００３３】
受信部３は、第1レジスタ３１、第2レジスタ３２、CRC部３３及び判別部３４を含む。また、受信部３は、第1及び第2レジスタ３１、３２から出力される並列データを直列データに変換するスイッチ３０をさらに備えることができる。必要な場合、スイッチ３０は、第1及び第2レジスタ３１、３２から出力される並列データを直列データに変換して出力する。
【００３４】
第1及び第2レジスタ３１、３２は、多重チャンネル２の第1チャンネル及び第2チャンネルから受信されるデータを各々貯蔵する。ここで、第1及び第2レジスタ３１、３２は、入力されるデータを順次シフトして出力するシフトレジスタであることが望ましい。
【００３５】
受信部３のCRC部３３は、送信部１のCRC部１３と等しいことで、多重チャンネル２から受信した(n+r)ビット伝送データからCRCビットを生成する。判別部３４は、多重チャンネル２から受信したrビットのCRCビットとCRC部３３から生成されたrビットのCRCビットとが等しいかを検査して、等しければエラーがないと判別する。
【００３６】
本実施形態で、送信部１のCRC部１３または受信部３のCRC部３３は、HDMIのCRC多項式(数１)によってrビットのCRCビットを生成する。
【００３７】
図２の一般的なCRC回路の一番目のタップで現在出力(current output)(p[0](t))は、現在(t時点)入力(Input(t))と終わり(8番目)タップの以前出力(prior output)電流(p[7](t-1))とを合わせたものと同じである。したがって、
【００３８】
【数３】
2007082215.tif 000005
CRC回路の他のタップの各々の現在(t時点)出力も同様に表現することが出来る。したがって、一般的なCRC回路によるCRCビットの生成式は、t番目の周期で次のようである。
【００３９】
【数４】
2007082215.tif 000006
【００４０】
一般的なCRC回路に最終入力データが入力されれば、数式２によって最終CRCビットが生成され、送信側では生成されたCRCビットをデータパッケージに付け加えて送る。受信側では、送信側CRC回路と同一なCRC回路を備え、受信されたデータに対するCRCビットを生成して、生成されたCRCビットと受信したCRCビットとを比べることによって、エラーの有無を判別する。
【００４１】
本実施形態では、送受信側がHDMI方式で通信するので、図１に示したように二つのチャンネルを用いてデータを並列に伝送する。すなわち、一周期に2ビットのデータが伝送される。したがって、図２に示した単一チャンネル直列通信方式のCRC回路を多重チャンネル直列通信方式に修正する必要がある。
【００４２】
このために、本実施形態では、数式２のCRCビット生成式を次のように変形することが出来る。より詳細に説明すれば、直列データは1ビットずつ入力になるが、HDMIのような並列通信方式の場合には、実際に一周期に2ビットのデータが並列に入力される。並列に入力されるデータは、データ集合のシーケンスで表現することが出来る。例えば、並列に入力されるデータの場合にも、元来のデータ順序があるために、入力データの元来の順序によって入力データを各々serial_in(t)、serial_in(t+1)に代置する、「0110」が入力される一例をよく見ると、一番の周期に'0'は第1チャンネル、'1'は第2チャンネルを介して並列に伝送され、その次の周期に'1'は第1チャンネル、'0'は第2チャンネルを介して並列に伝送される。すなわち、一番の周期に入力されるデータの場合、'0'をserial_in(t)、'1'をserial_in(t+1)に代置する。代置された入力データを数式２に適用すれば、その結果は次のようである。
【００４３】
【数５】
2007082215.tif 000007
【００４４】
数式３に、また数式２を代入すればその結果式は、次のようである。
【００４５】
【数６】
2007082215.tif 000008
【００４６】
図３は、本発明によるCRC回路図を示したものである。示したCRC回路は、数式４による結果を実現したもので、入力される並列データに対して時間的に一番延びた時間(ここでは、t+1)に対するCRCビット生成式をハードウェアで実現したものである。図示したところによれば、CRC回路は、複数の排他的論理和演算手段(51-1〜51-5)とデータディレのための複数のフリップフロップ(52-1〜52-8)を含む。
【００４７】
図３に示したCRC回路をさらに具体的に説明すれば、次のようである。
【００４８】
図３に示したCRC回路は、CRCビットを構成する第1ないし第8タップビット(P[0]〜P[7])を生成する。このために、CRC回路は、第1ないし第5排他的論理和演算器(51-1〜51-5)と第1ないし第8フリップフロップ(52-1〜52-8)とを含む。
【００４９】
第1排他的論理和演算器(51-1)は、第1及び第2チャンネルデータ(serial_in(t)、serial_in(t+1))及び第8遅延ビットを排他的論理和して出力する。ここで、第8遅延ビットは、第8フリップフロップ(52-8)の出力信号であって、第8タップビット(P[7])の遅延信号である。
【００５０】
第2排他的論理和演算器(51-2)は、第1排他的論理和演算器(51-1)の出力信号と第7遅延ビットとを排他的論理和して第1 タップビット(P[0])を発生させる。ここで、第7遅延ビットは、第7フリップフロップ(52-7)の出力信号であって、第7 タップビット(P[6])の遅延信号である。
【００５１】
第3排他的論理和演算器(51-3)は、第1チャンネルデータ(serial_in(t))と第8 遅延ビット、すなわち第8フリップフロップ(52-8)の出力信号を排他的論理和して第2タップビット(P[1])を発生させる。
【００５２】
第1フリップフロップ(52-1)は、第1タップビット(P[0])を遅延して第3タップビット(P[2])を発生させる。第2フリップフロップ(52-2)は、第2タップビット(P[1])を遅延して第4タップビット(P[3])を発生させる。第3フリップフロップ(52-3)は、第3タップビット(P[2])を遅延して第5タップビット(P[4])を発生させる。第4フリップフロップ(52-4)は、第4タップビット(P[3])を遅延して第6タップビット(P[5])を発生させる。第5フリップフロップ(52-5)は、第5タップビット(P[4])を遅延して第5遅延ビットを発生させ、第6フリップフロップ(52-6)は、第6タップビット(P[5])を遅延して第6遅延ビットを発生させる。
【００５３】
第4排他的論理和演算器(51-4)は、第1排他的論理和演算器(51-1)の出力信号、第5遅延ビット及び第7遅延ビットを排他的論理和して第7タップビット(P[6])を発生させ、第5排他的論理和演算器(51-5)は、第6遅延ビット(第6フリップフロップ(52-6)の出力信号)、第7遅延ビット(第7フリップフロップ(52-7)の出力信号)及び第2チャンネルデータ(serial_in(t+1)を排他的論理和して第8タップビット(P[7])を発生させる。
【００５４】
前述した計算は、与えられたCRC多項式とすべての多重チャンネル直列通信方式に適用できるので、並列に入力される個数が増減することによって排他的論理和演算手段によるゲートディレは増加するが、許容範囲内で実用的に使用可能である。
【００５５】
従来の単一チャンネル直列通信方式によるCRCは、入力が1個であるためにいくつかの入力が同時に発生する多重チャンネル通信環境では、先に処理しなければならないデータのみを取って残りデータは貯蔵した後、後でさらに高いクロック周波数で処理する。しかし、各々のクロック周期内でデータが並列に送信されるので、時間が経つにつれて貯蔵されるデータが多くなり、それだけデータ貯蔵手段の貯蔵容量が大きくなければならない。また、多重チャンネル通信に単一チャンネル直列通信環境で使われるクロックと同一のクロックを使う場合、データ処理にかかる時間が多重チャンネルのチャンネル個数だけ大きくなってCRCの処理は、データ伝送が完了する時点よりずっと後になされる。しかし、図３に示した回路によれば、数学的な計算を先に実行した結果式を回路で実現することによって、CRCの並列処理が可能で前述した貯蔵手段が不要となり、全体回路の大きさが減って、通信の時に発生する時間遅延が減少または除去されうる。
【００５６】
本発明について前述の実施形態を参照して説明したが、これは例示的なものに過ぎず、当業者ならばこれより多様な変形及び均等な他の実施形態が可能であるという点を理解できるであろう。したがって、本発明の真の技術的保護範囲は、添付した特許請求範囲の技術的思想によって決まるべきである。
【産業上の利用可能性】
【００５７】
多重チャンネル通信のための循環重複検査回路及びこれを備えた通信システム関連の技術分野に適用されうる。
【図面の簡単な説明】
【００５８】
【図１】本発明による多重チャンネルを介して通信し、循環重複検査回路を備える通信システムについてのブロック図を示したものである。
【図２】高鮮明マルチメディアインターフェースの循環重複検査多項式による一般的な循環重複検査回路図を示したものである。
【図３】本発明による循環重複検査回路図を示したものである。
【符号の説明】
【００５９】
１  ：送信部
２  ：多重チャンネル
３  ：受信部
１０：第１スイッチ
１１：第１レジスタ
１２：第２レジスタ
１３：ＣＲＣ部
１４：第２スイッチ
１５：スイッチ部
３０：スイッチ
３１：第１レジスタ
３２：第２レジスタ
３３：ＣＲＣ部
３４：判別部
【図１】
2007082215.tif 000010
【図２】
2007082215.tif 000011
【図３】
2007082215.tif 000012