JP2007110258A - 誤り検査装置およびそれを用いた再生装置 - Google Patents

誤り検査装置およびそれを用いた再生装置 Download PDF

Info

Publication number
JP2007110258A
JP2007110258A JP2005296936A JP2005296936A JP2007110258A JP 2007110258 A JP2007110258 A JP 2007110258A JP 2005296936 A JP2005296936 A JP 2005296936A JP 2005296936 A JP2005296936 A JP 2005296936A JP 2007110258 A JP2007110258 A JP 2007110258A
Authority
JP
Japan
Prior art keywords
bit
unit
error
registers
code string
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
Application number
JP2005296936A
Other languages
English (en)
Inventor
Baiko Sai
培恒 斉
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.)
Rohm Co Ltd
Original Assignee
Rohm Co Ltd
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 Rohm Co Ltd filed Critical Rohm Co Ltd
Priority to JP2005296936A priority Critical patent/JP2007110258A/ja
Publication of JP2007110258A publication Critical patent/JP2007110258A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

【課題】32ビットのヘッダパケットと64ビットのボディパケットに対する誤り検査を効率よく実行する。
【解決手段】誤り検査装置500において、ヘッダ検査部120およびボディ検査部200は、同じ32クロックにてヘッダパケットおよびボディパケットのシンドロームを求める。ヘッダ訂正部130および偶数ビット訂正部350は、同じ32クロックにてヘッダパケットおよびボディパケットに対して誤り訂正を実行する。すなわち、ヘッダ処理部100およびボディ処理部300は、ヘッダパケットおよびボディパケットの誤り検査を時間を合わせて終了する。
【選択図】図3

Description

本発明は、符号列に対する誤り検査を実行する誤り検査装置およびそれを用いた再生装置に関する。
HDMI(High-Definition Multimedia Interface)は、DVI(Digital Visual Interface)をベースに音声やコンテンツプロテクション機能を追加したデジタル・インターフェース規格である。HDMI規格によれば、ベースバンドの映像データに加えて音声データおよび機器間のコントロール信号を一緒に伝送できる。HDMI規格は、映像信号のデジタル伝送方式として、TMDS(Transition Minimized Differential Signaling)方式を採用する。
TMDS方式は、R(Red)、G(Green)、B(Blue)の3種類の映像信号とクロック信号の伝送にそれぞれ1チャネルずつ、合計4チャネル(以下、「1リンク」という)の伝送路を用いる。HDMI規格は、TMDSのR、G、Bそれぞれのチャネルにおける水平、垂直同期間(以下、「ブランキング区間」という)のデータアイランドに対し、音声符号列を割り当てる。
音声符号列の1パケットは、ヘッダパケットとボディパケットとを含んで構成される。ヘッダパケットは32ビットのBCH符号(Bose Chaudhuri Hocquenghem)であり、Rチャネル(以下、「CH0」という)に割り当てられる。ボディパケットは64ビットのBCH符号であり、その偶数ビットはGチャネル(以下、「CH1」という)に、奇数ビットはBチャネル(以下、「CH2」という)にそれぞれ割り当てられる。ボディパケットは偶数ビットおよび奇数ビットがCH1およびCH2に分割されて並列に伝送されるので、ヘッダパケットが1ビット伝送される間に、ボディパケットは2ビット伝送される。すなわち、互いにビット数の異なるヘッダパケットとボディパケットは、同じ32クロックで伝送される。
BCH符号は、巡回符号の一種であり、所定の割り算処理に対する剰余が0となる。したがって、伝送されたヘッダパケットおよびボディパケットのそれぞれに対して所定の割り算処理を実行した剰余(以下、「シンドローム」という)を求めることにより、ヘッダパケットおよびボディパケットが正しく伝送されたか否かを判断する誤り検査を実行できる。割り算処理を実行する一般的な回路は、たとえば下記特許文献1に記載されている。
特開昭63−19922号公報(第5図)
一般的な回路を用いる場合、32ビットのBCH符号のシンドロームを求めるには32クロックを要し、64ビットのBCH符号のシンドロームを求めるには64クロックを要する。すなわち、ヘッダパケットのシンドロームは32クロックで求められるのに対し、ボディパケットのシンドロームを求めるには64クロックが必要となる。一方、上述のように、HDMI規格ではヘッダパケットとボディパケットはそれぞれ32クロックで伝送される。
パケットが連続して伝送される場合、ヘッダパケットのシンドロームは32クロックで求められるので検査待ちの符号が渋滞することはない。しかし、ボディパケットについては、シンドロームを求めるには64クロックが必要なため、検査待ちの符号が渋滞してしまう。また、ヘッダパケットのシンドロームが求められた後、ボディパケットのシンドロームが求められるまでにはさらに32クロックあるため、この間ヘッダパケットは待機状態となってしまい効率が悪い。
本発明者はこうした状況に鑑みて本発明をなしたものであり、その目的は、符号列をスムーズに検査できる誤り検査装置およびそれを用いた再生装置を提供することにある。
上記課題を解決するために、本発明のある態様の誤り検査装置は、検査ビットを含む符号列を受け、その符号列に含まれる各ビットに対する所定の演算の結果をクロックにより順次シフトする複数のレジスタと、複数のレジスタに保持される値を仮定したうえで、複数クロック後に複数のレジスタが保持すべき値を予め記録した変換テーブルと、を有し、所定クロックにわたる演算の終了時点において、複数のレジスタに符号列のビット誤りに関する情報を残留せしめる。
複数のレジスタは、検査ビットを含み、n列に分割されて並列に入力された符号列に対する所定の変換の結果をクロックにより順次シフトしてもよい。所定の演算の結果は、符号列を生成するもとになった生成多項式による変換の結果であってもよい。変換テーブルは、符号列の入力と、複数のレジスタの少なくとも2つからのフィードバック入力とを受け、複数のレジスタに保持される値を仮定した場合に複数クロック後に複数のレジスタが保持すべき値を出力してもよい。複数のレジスタに実際に保持されている値が上記の仮定と相違する場合、複数のレジスタに保持すべき値を補正する補正回路をさらに備えてもよい。
この態様によると、変換テーブルは、複数のレジスタに保持される値を仮定したうえで、複数クロック後に複数のレジスタが保持すべき値を予め記録しているので、その記録した値を用いることで、符号列のビット誤りに関する情報をスムーズに特定できる。
本発明の別の態様もまた、誤り検査装置である。この装置は、単一の符号列を分解して得られ、それぞれが検査ビットを含む第1符号列および第2符号列に対し、ビット誤りの検査を実行する誤り検査装置であって、第1符号列に含まれる各ビットに対する所定の演算の結果をクロックにより順次シフトする複数のレジスタを有し、それら複数のレジスタに第1符号列のビット誤りに関する情報を残留せしめる第1検査部と、第2符号列に含まれる各ビットに対する所定の演算の結果をクロックにより順次シフトする複数のレジスタと、複数クロック後にそれら複数のレジスタが保持すべき値を予め記録した変換テーブルとを有し、所定クロックにわたる演算の終了時点において、それら複数のレジスタに第2符号列のビット誤りに関する情報を残留せしめる第2検査部と、を備える。
第1符号列のビット数をN1(N1は自然数)、第2符号列のビット数をN2(N2は自然数)としたとき、N1<N2であってもよい。第1検査部による処理の時間をT1、第2検査部による処理の時間をT2とし、R1=N1/T1、R2=N2/T2としたとき、R1<R2であってもよい。複数クロックの数は、第2検査部による1クロックあたりの処理ビット数と等しくてもよい。
この態様によると、変換テーブルは、複数クロック後にそれら複数のレジスタが保持すべき値を予め記録しているので、その記録した値を用いることで、第2符号列のビット誤りに関する情報をスムーズに特定できる。すなわち、第2符号列の検査を高速化しうる。
第1検査部によって検出された、第1符号列におけるビット誤りに関する情報をもとに、そのビット誤りを訂正する第1訂正部と、第2検査部によって検出された、第2符号列におけるビット誤りに関する情報をもとに、そのビット誤りを訂正する第2訂正部と、をさらに備えてもよい。第2訂正部は、複数クロックに対応した数の部分訂正部を備え、それら部分訂正部はクロックごとに処理をインタリーブして受け持ってもよい。この場合、第2符号列のビット誤りの訂正を高速化しうる。
部分訂正部のそれぞれは、ビット誤りを起こした位置に対応するシンドロームを生成する生成部と、第2検査部によって検出された、第2符号列におけるビット誤りに関する情報と、生成部によって生成されたシンドロームとを比較する比較部と、を含み、生成部は、所定の初期値をクロックにより順次シフトする複数のレジスタと、複数のレジスタに保持される値を仮定したうえで、複数クロック後に複数のレジスタが保持すべき値を予め記録した生成テーブルと、を有し、クロックごとに、複数のレジスタにビット誤りを起こした位置に対応するシンドロームを残留せしめてもよい。この場合、部分訂正部のそれぞれにおける生成部は、複数のレジスタに保持される値を仮定したうえで、複数クロック後に複数のレジスタが保持すべき値を予め記録した生成テーブルを有するので、生成テーブルを参照することにより、複数クロックに対応したビット位置に誤りがあった場合に対応するシンドロームを生成できる。
第1検査部と、第2検査部とが、1つの半導体基板上に一体集積化されてもよい。さらに、第1訂正部と第2訂正部も併せて1つの半導体基板上に一体集積化されてもよい。この場合、誤り検査装置を再生装置などに搭載しやすい。
本発明のさらに別の態様は、再生装置である。この装置は、単一の音声符号列を対象とする上記の誤り検査装置と、誤り検査装置にて誤り検査を実行した音声符号列をもとに、音声データを再生する再生部と、を備える。この態様によれば、単一の音声符号列がスムーズに検査されるので、音声データの再生がスムーズに行える。
なお、以上の構成要素の任意の組合せ、本発明の表現を、方法、システムなどの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、符号列をスムーズに検査できる。
実施の形態は、HDMI規格に準拠した受信装置に含まれる再生装置に関する。図1は、実施の形態において再生の対象とするBCH音声符号のストリームの構成を示す。ただし、説明を明確にするために、プリアンブルおよびガードバンドは省略している。横軸tは、時間を示す。CH0、CH1およびCH2は、それぞれTMDSのR、G、Bのチャネルに相当する。音声符号列は、各チャネルにおけるブランキング区間Tのデータアイランドに割り当てられる。HDMI規格では、1つのブランキング区間Tにおいて最大18パケットを伝送できる。図1は1つのブランキング区間Tにおいて18パケットを伝送する場合を示している。
音声符号列は、ヘッダの符号列とボディの符号列を含んで構成される。ヘッダの符号列はCH0に、ボディの符号列の偶数ビットはCH1に、ボディの符号列の奇数ビットはCH2に、それぞれ割り当てられ、タイミングを合わせて伝送される。ヘッダの符号列が1クロックあたり1ビット伝送される。一方、ボディの符号列は偶数ビットおよび奇数ビットに分割されてCH1およびCH2にて並列に伝送されるので、1クロックあたり2ビット伝送される。ヘッダパケットは32ビット、ボディパケットは64ビットであるから、ヘッダパケットおよびボディパケットの伝送は、同時に開始され、32クロックを経て同時に終了される。
図2(a)−(b)は、図1におけるヘッダパケットおよびボディパケットのビット配列を示す。
図2(a)において、ヘッダパケットは、第0ビット〜第31ビットの32ビットで構成される。H1は情報ビットを示し、H2は検査ビットを示す。すなわち、ヘッダパケットのうち、最初の24ビットは情報ビットであり、最後の8ビットは検査ビットである。
図2(b)において、ボディパケットは、第0ビット〜第63ビットの64ビットで構成される。B1は情報ビットを示し、B2は検査ビットを示す。すなわち、ボディパケットのうち、最初の56ビットは情報ビットであり、最後の8ビットは検査ビットである。ヘッダパケットおよびボディパケットは、送信側にてHDMIで規定されたBCH符号器によりBCH検査符号を連結した符号語として生成されるものである。
HDMIのBCH符号は、1ビットの誤りの場合、その誤りの位置により特定の8ビットのシンドロームを示す。誤りがない場合、シンドロームは0である。2ビット以上の誤りの場合、シンドロームは0以外の値を示すが、誤りの位置を特定できない。したがって、所定の割り算処理により得られたシンドロームをもとに、ヘッダパケットおよびボディパケットのそれぞれに対し、1ビットの誤りは訂正でき、2ビット以上の誤りは検出できるが訂正できない。
図3は、実施の形態にかかる再生装置700の構成を示す。
再生装置700は、伝送路CH0〜CH2と、誤り検査装置500と、再生部600とを備える。
誤り検査装置500は、ヘッダ処理部100と、ボディ処理部300とを備える。
ヘッダ処理部100は、ヘッダ遅延部110と、ヘッダ検査部120と、ヘッダ訂正部130とを備える。ヘッダ訂正部130は、第1生成部140と、第1比較部160と、第1加算器180とを含む。
ボディ処理部300は、偶数ビット遅延部320と、奇数ビット遅延部340と、ボディ検査部200と、偶数ビット訂正部350と、奇数ビット訂正部370と、結合部480とを備える。偶数ビット訂正部350は、第2生成部250と、第2比較部360と、第2加算器420とを含む。奇数ビット訂正部370は、第3生成部270と、第3比較部380と、第3加算器440とを含む。
伝送路CH0〜CH2は、図示しないHDMI送信デバイスにて生成した信号から分離した音声符号列を伝送する。CH0はヘッダの符号列を伝送する。CH1はボディの符号列の偶数ビットを伝送し、CH2はボディの符号列の奇数ビットを伝送する。誤り検査装置500は、伝送路CH0〜CH2にて伝送した音声符号列に対して誤り検査を実行する。再生部600は、誤り検査装置500にて誤り検査を実行した音声符号列をもとに、音声データを再生する。
ヘッダ処理部100は、CH0から入力されたヘッダの符号列に所定の演算を施すことによりビット誤りの検査を実行する。誤り検査の結果、ヘッダの符号列の各パケットに1ビットの誤りがあればその誤りを訂正し、2ビット以上の誤りがあった場合は、ECC(Error Cheak and Correct)不可能のエラーとして処理する。
ボディ処理部300は、CH1およびCH2から入力されたボディの符号列に対し、所定の演算を施すことによりビット誤りの検査を実行したうえで、偶数ビットと奇数ビットとを結合する。誤り検査の結果、ボディの符号列の各パケットに1ビットの誤りがあればその誤りを訂正し、2ビット以上の誤りがあった場合は、ECC不可能のエラーとして処理する。
CH0から入力されたヘッダの符号列は、ヘッダ遅延部110とヘッダ検査部120とに分配される。ヘッダ遅延部110は、入力されたヘッダの符号列を所定のクロック遅延させ、第1加算器180に出力する。所定のクロックは、ヘッダ検査部120にてヘッダ符号列の1パケットに対してビット誤りの検査をするのに要するクロックに対応して決まる。この遅延により、CH0から入力されたヘッダパケットの各ビットの値は、第1比較部160がその各ビットの値の正否を第1加算器180に出力するタイミングに合わせて第1加算器180に出力される。ヘッダ検査部120は、CH0から入力されたヘッダの符号列に対し、生成多項式x+x+x+1による割り算処理を実行してヘッダパケットのシンドロームを求め、第1比較部160にパラレル出力する。ただし、ヘッダ検査部120と第1比較部160とを結ぶ経路は1本にまとめて示している。
図4は、図3におけるヘッダ検査部120の構成を示す。ヘッダ検査部120は、HDMIで規定されたBCH符号器と同様の構成であり、その構成は周知であるので、概略のみにとどめる。
ヘッダ検査部120は、レジスタR10〜R17と、排他的論理和回路XOR18〜XOR20とを含む。レジスタR10〜R17の初期値は0である。CH0から32ビットのヘッダパケットが入力され終わった時点で、レジスタR10〜R17にはそのヘッダパケットのシンドロームが保持される。すなわち、32ビットのヘッダパケットのシンドロームは32クロックで求められる。保持されたシンドロームは次のクロックにて第1比較部160にパラレル出力される。図3にもどる。
第1生成部140は、CH0から入力されたヘッダパケットに1ビットの誤りがあった場合における、誤りがあった位置に対応するシンドロームをクロックごとに順次生成し、第1比較部160に順次パラレル出力する。すなわち、第1生成部140は、最初のクロックにてヘッダパケットの第0ビットの位置に誤りが発生した場合に対応するシンドロームを生成し、第1比較部160に出力する。次のクロックにて第1ビットの位置に誤りが発生した場合に対応するシンドロームを生成して出力する。以降のクロックにおいても同様にシンドロームを生成して出力する。したがって、第1生成部140は、32クロックの間にヘッダパケットの第0ビットから第31ビットまでの位置に誤りが発生した場合に対応するシンドロームを順次生成し、第1比較部160に順次パラレル出力する。ただし、第1生成部140と第1比較部160とを結ぶ経路は1本にまとめて示している。
図5は、図3の第1生成部140の構成を示す。
第1生成部140は、レジスタR0〜R7と、排他的論理和回路XOR8〜XOR10とを含む。第1生成部140の構成は、レジスタのデータシフトの方向が逆である点を除き、図4のヘッダ検査部120の構成、すなわち、HDMIで規定されたBCH符号器の構成と同様である。これは、BCH符号語に1ビットの誤りがあった場合のシンドロームが、所定の初期値からBCH符号器による連続的な演算により、誤りがあった位置順に求められるという原理を用いたことによる。ただし、誤りがあった位置順を第0ビットの位置から第31ビットの位置に向かう順にするために、レジスタのデータシフトの方向が逆となっている。
第1生成部140のレジスタR0〜R7には、設定された初期値として[01011101]が保持されている。この初期値は、ヘッダパケットの1ビットの誤りが第0ビットの位置にあった場合に対応するシンドロームである。XOR8の一方の入力端子には、レジスタR7からのフィードバックが入力され他方の入力端子には常に0が入力される。設定された初期値を各クロックにてシフトすることで、レジスタR0〜R7にはヘッダパケットの1ビットの誤りがあった位置に対応したシンドロームがクロックごとに位置順に保持される。レジスタR0〜R7に保持された値は、クロックごとにシフトされるとともに図3の第1比較部160にパラレル出力される。図3にもどる。
第1比較部160は、ヘッダ検査部120からパラレルに出力されたシンドロームを記憶し、記憶したシンドロームと第1生成部140から入力されたシンドロームとをクロックごとに順次パラレルに比較する。第1比較部160は、論理回路を用いるなどして容易に構成できる。比較の結果、記憶したシンドロームと第1生成部140から出力されたシンドロームとが一致した場合は「1」を、一致しなかった場合は「0」を第1加算器180に出力する。
上述のように第1生成部140は、クロックごとにヘッダパケットの第0ビットから第31ビットまでの位置に誤りが発生した場合に対応するシンドロームを順次生成するから、第1比較部160から「1」が出力されたクロックにより、誤りがあった位置が特定できる。たとえば、比較の開始から12番目のクロックで「1」が出力された場合、第11ビットの位置に誤りがあったと特定できる。32個目のクロックで「1」出力された場合、第31ビットの位置に誤りがあったと特定できる。こうして特定された位置におけるヘッダパケットのBCH符号の「0」「1」を反転させれば正しいパケットが得られる。
第1加算器180は、排他的論理和演算により、特定された位置におけるヘッダパケットの「0」「1」を反転させる。ここでは、第11ビットの位置に誤りがあった場合を例に反転処理について説明する。
第11ビットの位置に誤りがあった場合、第1加算器180の一方の入力端子には、第1比較部160から12個目のクロックにおいて「1」が入力される。それ以外のクロックでは「0」が入力される。第1加算器180の他方の入力端子には、ヘッダ遅延部110からヘッダパケットの各ビットが順次入力される。
上述のように、ヘッダ遅延部110は、第1比較部160の出力とタイミングを合わせてヘッダを出力する。したがって、第1加算器180の一方の入力端子に12個目のクロックにおいて「1」が入力される際、第1加算器180の他方の入力端子には第11ビットの位置のヘッダが入力される。よって、第11ビットの位置のヘッダのBCH符号は、第1加算器180により「0」「1」が反転されて出力される。12個目のクロック以外では、第1比較部160からの出力は「0」であるから、ヘッダのBCH符号は「0」「1」が反転されることなくそのまま出力される。
CH1から入力されたボディの偶数ビットは、偶数ビット遅延部320とボディ検査部200とに分配される。CH2から入力されたボディの奇数ビットは、奇数ビット遅延部340とボディ検査部200に分配される。偶数ビット遅延部320および奇数ビット遅延部340は、ヘッダ遅延部110と同様に、入力されたボディの符号列を偶数ビットおよび奇数ビットを所定のクロック遅延させ、第2加算器420および第3加算器440に出力する。
ボディ検査部200は、CH1およびCH2から入力されたボディの符号列に対し、生成多項式x+x+x+1による割り算処理を実行し、シンドロームを第2比較部360および第3比較部380にパラレル出力する。ただし、ボディ検査部200と第2比較部360および第3比較部380とを結ぶ経路は1本にまとめて示している。
ボディは64ビットであるが、ボディ検査部200は、後述する工夫により1クロックあたり2ビットの割り算処理を実行することで、32クロックにてその処理を終了する。
図6は、図3のボディ検査部200の構成を示す。ボディ検査部200は、変換テーブル210と、レジスタR30〜R37と、補正回路212とを備える。補正回路212は、排他的論理和回路XOR38〜XOR43を含む。
レジスタR30〜R37の初期値は0である。変換テーブル210には、CH1およびCH2からボディの符号列の偶数ビットおよび奇数ビットが入力されるとともに、レジスタR31およびR32に保持された値もフィードバック入力される。変換テーブル210はこれら4つの入力値の組み合わせをもとに特定される8ビットの値を予め記憶しており、4つの入力を受けた際、その入力を、対応する8ビットの値に変換して出力する。
図7は、図6の変換テーブル210に対する入力と出力の対応を示す。入力はCH1、CH2、R31、およびR30の4つの値である。出力は、b7〜b0の8つの値である。このb7〜b0の8つの値は、図4のヘッダ検査部120のレジスタR37〜R32に保持された値をすべて「0」と仮定し、その後に入力されるCH1とR30の値およびCH2とR31の値を順次生成多項式x+x+x+1により処理した場合に、レジスタR37〜R30に保持されるべき値である。
以下、変換テーブル210における変換の原理を詳述する。
一般に、入力された符号列のシンドロームを求める回路は、たとえば図4に示したように、生成多項式に応じた数のレジスタを備える。各レジスタは、入力された符号列に対してクロックごとに生成多項式に応じた演算を施した結果を保持する。
図4において、レジスタR17〜R10に保持された値がr17"〜r10"である状態を仮定する。この状態から1クロック後にレジスタR17〜R10に保持された値をr17'〜r10'とする。2クロック後にレジスタR17〜R10に保持された値をr17〜r10とする。また、その2クロックの間にCH0から入力された値をクロック順にI1、I2とする。ただし、r17"〜r10"、r17'〜r10'、r17〜r10、I1、I2は、いずれも「0」または「1」である。
r17〜r10は、以下に示すように、r17'〜r10'に関係なく、r17"〜r10"、I1、I2により表せる。ただし、+は、排他的論理和の演算を示す。
r17=r10'+I2
=I1+r10"+r11"+I2 式(1)
r16=r17'
=r10"+I1 式(2)
r15=r17" 式(3)
r14=r16" 式(4)
r13=r15" 式(5)
r12=r14" 式(6)
r11=r10'+I2+r12'
=r11"+I1+I2+r13" 式(7)
r10=r10'+I2+r11'
=r10"+I1+r11"+I2+I1+r10"+r12"
=r11"+I2+r12" 式(8)
式(1)〜(8)より、レジスタR17〜R10に保持された値を仮定し、その後の2クロックの間に入力された値を決めれば、その2クロックが経過した後にレジスタR17〜R10に保持されるべき値が決まる。たとえば、r17"〜r10"がすべて「0」である状態を仮定する。この状態からI1=「0」、I2=「1」が順番に入力された場合、r17〜r10は、式(1)〜(8)より[10000011]である。同様に、2クロックの間にCH0からたとえばI1=「1」、I2=「1」が順番に入力された場合、r17〜r10は[01000001]である。
仮定した状態が間違っていた場合を考える。
上記のように、r17"〜r10"がすべて「0」である状態を仮定し、I1=「0」、I2=「1」が順番に入力された場合、r17〜r10は[10000011]である。ここで、r17"〜r10"がすべて「0」とした仮定が間違っていて、r17とr15が「1」であったとする。このとき、式(3)および式(5)より、r15およびr13の値を反転させてやればよいとが分かる。すなわち、仮定した状態から求められた、レジスタR17〜R10に保持されるべき値[10000011]を補正して[10101011]とすれば真に保持されるべき値となる。
仮定された状態から求められた、レジスタR17〜R10に保持されるべき値を補正する原理についてさらに説明する。
式(3)〜(8)より、r17"は式(3)、r16"は式(4)、r15"は式(5)、r14"は式(6)、r13"は式(7)、r12"は式(8)にのみ現れることが分かる。これは、仮定した状態から2クロックの間、r17"〜r12"はシフトされるのみでフィードバックされないからである。このことは、割り算する生成多項式によらない。
したがって、r17"〜r12"を仮定した値が間違っていても、式(3)〜式(8)の値、すなわち、r15〜r10の値を反転させる補正をするだけで、レジスタR17〜R10に真に保持されるべき値が求まる。
上記のことを要約すれば、次のことがいえる。
まず、r17"〜r12"を仮定し、その後に入力される2ビットの値と、r11"、r10"を式(1)〜式(8)によりr17〜r10に変換する。仮定したr17"〜r12"が間違っていれば、r15〜r10を反転する補正をする。これにより、レジスタR17〜R10に保持される値を、r17"〜r10"から1クロックにてr17〜r10に変換できる。つまり、1クロックにて2ステップの処理が可能である。
図6のボディ検査部200は、このことを利用して1クロックあたり2ステップの割り算処理を実行する。すなわち、変換テーブル210は、CH1およびCH2から入力される2ビットの値と、レジスタR31、R32に保持された値の入力を受け、それらを式(1)〜式(8)と同様の式によりb7〜b0に変換して出力する。ここで、b7〜b0は、レジスタR37〜R32に保持された値をすべて「0」と仮定し、その後に入力されるCH1、CH2、R31、R30の値を式(1)〜式(8)と同様の式により変換した値であり、CH1、CH2、R31、R30の値の組み合わせごとに変換テーブル210に予め記録されている。
補正回路212は、仮定したレジスタR37〜R32に保持された値が間違っていた場合に変換テーブル210の出力を補正する。たとえば、変換テーブル210は、レジスタR37〜R32に保持された値を「0」と仮定し、CH1、CH2、R31、R30の値を変換したが、R37に実際に保持されていた値が「1」であった場合、補正回路212のXOR43は、変換テーブル210からの出力b5の値を反転してレジスタ34に入力する。なお、仮定が正しかったR36〜R32には「0」が記憶されていたのであるから、補正回路212のXOR42〜38は、変換テーブル210の出力b4〜b0を反転させることなくレジスタR34〜R30に入力する。
これにより、ボディ検査部200のレジスタR37〜R30には、1クロック経過するごとに2ステップの割り算処理を実行した結果が保持される。
上記のように、ボディ検査部200は、1クロックあたり2ビットの入力に対して、1クロックあたり2ステップの割り算処理を実行するから、CH1およびCH2よりボディパケットの偶数ビットおよび奇数ビットが入力され終わった時点で、レジスタR37〜R30内にはボディのシンドロームが保持される。すなわち、64ビットのボディのシンドロームは32クロックで求められる。
保持されたシンドロームは次のクロックで第2比較部360および第3比較部380にそれぞれパラレル出力される。図3にもどる。
第2生成部250は、ボディ検査部200と同様の原理により1クロック2ステップの処理を実行することで、CH1およびCH2から入力されたボディパケットの1ビットの誤りが偶数ビットの位置にあった場合における、誤りがあった位置に対応したシンドロームをクロックごとに順次生成する。生成したシンドロームは第2比較部360に順次パラレル出力される。
すなわち、第2生成部250は、最初のクロックにてボディパケットの第0ビットの位置に誤りが発生した場合に対応するシンドロームを生成し、出力する。次のクロックにて第2ビットの位置に誤りが発生した場合に対応するシンドロームを生成し、出力する。その次のクロックにて第4ビットの位置に誤りが発生した場合に対応するシンドロームを生成し、出力する。以降のクロックにおいても同様にシンドロームを生成し、出力する。
したがって、第2生成部250は、32クロックの間にボディの第0ビットから第63ビットまでのうちの、偶数ビットの位置に誤りが発生した場合に対応するシンドロームを順次生成し、第2比較部360に順次パラレル出力する。ただし、第2生成部250と第2比較部360とを結ぶ経路は1本にまとめて示している。
第3生成部270は、ボディ検査部200と同様の原理により1クロック2ステップの処理を実行することで、CH1およびCH2から入力されたボディパケットの1ビットの誤りが奇数ビットの位置に誤りがあった場合における、誤りがあった位置に対応したシンドロームをクロックごとに順次生成する。生成したシンドロームは第3比較部380に順次パラレル出力される。
すなわち、第3生成部270は、最初のクロックにてボディパケットの第1ビットの位置に誤りが発生した場合に対応するシンドロームを生成し、出力する。次のクロックにて第3ビットの位置に誤りが発生した場合に対応するシンドロームを生成し、出力する。その次のクロックにて第5ビットの位置に誤りが発生した場合に対応するシンドロームを生成し、出力する。以降のクロックにおいても同様にシンドロームを生成し、出力する。
したがって、第3生成部270は、32クロックの間にボディの第0ビットから第63ビットまでのうちの、奇数ビットの位置に誤りが発生した場合に対応するシンドロームを順次生成し、第3比較部380に順次パラレル出力する。ただし、ボディ検査部200と第2比較部360および第3比較部380とを結ぶ経路は1本にまとめて示している。
図8は、図3の第2生成部250の構成を示す。第2生成部250は、生成テーブル260と、レジスタR50〜R57と、補正回路262とを備える。補正回路262は、排他的論理和回路XOR58〜XOR63を含む。
レジスタR50〜R57には、設定された初期値として[10001010]が記憶されている。この初期値は、ボディパケットの1ビットの誤りが第0ビットの位置にあった場合に対応するシンドロームである。生成テーブル260には、レジスタR50、R51の値がフィードバック入力される。生成テーブル260は、これら2つの入力値の組み合わせをもとに特定される8ビットの値を予め記憶しており、2つの入力を受けた際、その入力を、対応する8ビットの値に変換して出力する。
図9は、図8の生成テーブル260に対する入力と出力の対応を示す。入力は、レジスタR50およびR51に記憶された2つの値である。出力は、b10〜b17の8つの値である。b10〜b17は、図5の第1生成部140においてレジスタR7〜R2に保持された値をすべて「0」と仮定した場合に、R0およびR1に保持された値の組み合わせにより定まる8つの値であって2クロック後にレジスタR7〜R0に保持されるべき値に対応する。
たとえば、図9より、R50が「0」、R51が「1」である場合、出力b10〜b17は、[00000111]であるが、これは、図5において、レジスタR0〜R7に[01000000]が保持されていると仮定した場合に2クロック後にレジスタR0〜R7に保持されるべき値である。
つまり、生成テーブル260は、レジスタR57〜R52に保持された値をすべて「0」と仮定し、その後の1クロックで入力されるR51、R50の値をもとに、図5の第1生成部140を2クロック動作させた場合に対応する、レジスタR57〜R50に保持されるべき値を出力する。R50、R51の値の組み合わせごとに定まるb10〜b17の8つの値は、生成テーブル260に予め記録されている。
図8にもどる。生成テーブル260から出力されるb16およびb17はそのままレジスタR56およびR57に記憶される。b10〜b15は、補正回路262を介して、すなわち、XOR58〜XOR63によりレジスタR52〜R57に記憶されていた値と排他的論理和演算され、レジスタR50〜R55に記憶される。この排他的論理和演算により、レジスタR57〜R52に保持された値をすべて「0」とした仮定が間違っていた場合の補正がなされる。これにより、第2生成部250のレジスタR57〜R50には、1クロック経過するごとに2ステップの処理を実行した結果が保持される。
このため、各クロックにてレジスタR50〜R57に記憶された値は、図3のCH1およびCH2から入力されたボディパケットの偶数ビットの位置に誤りがあった場合における、誤りがあった位置に対応したシンドロームを示す。レジスタR50〜R57に記憶された値は、初期値から順にクロックごとに図3の第2比較部360にパラレル出力される。
図10は、図3の第2生成部250の各クロックにおける出力を示す。各クロックの出力は、レジスタR50〜R57に記憶された値である。図10のクロック1における出力は、ボディの第0ビットの位置に誤りがあった場合に得られるシンドロームに対応し、クロック2における出力は、第2ビットの位置に誤りがあった場合に得られるシンドロームに対応する。クロック3からクロック32までにおける出力についても同様である。
図11は、図3の第3生成部270の各クロックにおける出力を示す。なお、第3生成部270は、図8の第2生成部250と同様に構成できるが、レジスタに設定された初期値はボディパケットの1ビットの誤りが第1ビットの位置にあった場合に対応するシンドロームとする。クロック1における出力は、ボディの第1ビットの位置に誤りがあった場合に得られるシンドロームに対応し、クロック2における出力は、第3ビットの位置に誤りがあった場合に得られるシンドロームに対応する。クロック3からクロック32までにおける出力についても同様である。図3にもどる。
第2比較部360は、ボディ検査部200から出力されたシンドロームを記憶し、記憶したシンドロームと第2生成部250から入力されたシンドロームとをクロックごとに順次パラレルに比較する。第2比較部360は、論理回路を用いるなどして容易に構成できる。比較の結果、記憶したシンドロームと第2生成部250から出力されたシンドロームとが一致した場合は「1」を、一致しなかった場合は「0」を第2加算器420に出力する。
上述のように第2生成部250は、ボディパケットの1ビットの誤りが偶数ビットの位置に誤りが発生した場合に対応するシンドロームを、クロックごとに位置順に生成するから、第2比較部360から「1」が出力されたクロックにより、誤りがあった位置が特定できる。たとえば、比較の開始から12個目のクロックで「1」が出力された場合、第22ビットの位置に誤りがあったと特定できる。こうして特定された位置における符号の「0」「1」を反転させれば正しい符号が得られる。
第2加算器420は、排他的論理和演算により、特定された位置におけるボディの「0」「1」を反転させる。ここでは、第22ビットの位置に誤りがあった場合を例に反転処理について説明する。第22ビットの位置に誤りがあった場合、第2加算器420の一方の入力端子には、第2比較部360から12個目のクロックにおいて「1」が入力される。それ以外のクロックでは「0」が入力される。第2加算器420の他方の入力端子には、偶数ビット遅延部320からボディの偶数ビットが順次入力される。
偶数ビット遅延部320は、第2比較部360の出力とタイミングを合わせてボディパケットの偶数ビットを出力するから、第2加算器420の一方の入力端子に12個目のクロックにおいて「1」が入力される際、第2加算器420の他方の入力端子には第22ビットの位置のボディパケットが入力される。よって、第22ビットの位置のボディパケットは、第2加算器420により「0」「1」が反転されて出力される。12個目のクロック以外では、第2比較部360からの出力は「0」であるから、ボディパケットの偶数ビットは「0」「1」が反転されることなくそのまま出力される。
第3比較部380は、ボディ検査部200から出力されたシンドロームを記憶し、記憶したシンドロームと第3生成部270から入力されたシンドロームとをクロックごとに順次パラレルに比較する。第3比較部380は、論理回路を用いるなどして容易に構成できる。比較の結果、記憶したシンドロームと第3生成部270から出力されたシンドロームとが一致した場合は「1」を、一致しなかった場合は「0」を第3加算器440に出力する。
上述のように第3生成部270は、ボディパケットの1ビットの誤りが奇数ビットの位置に誤りが発生した場合に対応するシンドロームを、クロックごとに位置順に生成するから、第3比較部380から「1」が出力されたクロックにより、誤りがあった位置が特定できる。たとえば、比較の開始から14個目のクロックで「1」が出力された場合、第27ビットの位置に誤りがあったと特定できる。こうして特定された位置における符号の「0」「1」を反転させれば正しい符号が得られる。
第3加算器440は、排他的論理和演算により、特定された位置におけるボディの「0」「1」を反転させる。ここでは、第27ビットの位置に誤りがあった場合を例に反転処理について説明する。第27ビットの位置に誤りがあった場合、第3加算器440の一方の入力端子には、第3比較部380から14個目のクロックにおいて「1」が入力される。それ以外のクロックでは「0」が入力される。第3加算器440の他方の入力端子には、奇数ビット遅延部340からボディの偶数ビットが順次入力される。
奇数ビット遅延部340は、第3比較部380の出力とタイミングを合わせてボディパケットの奇数ビットを出力するから、第3加算器440の一方の入力端子に14個目のクロックにおいて「1」が入力される際、第3加算器440の他方の入力端子には第27ビットの位置のボディパケットが入力される。よって、第27ビットの位置のボディパケットは、第3加算器440により「0」「1」が反転されて出力される。14個目のクロック以外では、第2比較部360からの出力は「0」であるから、ボディパケットの奇数ビットは「0」「1」が反転されることなくそのまま出力される。
以上の構成による誤り検査装置500の動作を説明する。
ヘッダ遅延部110およびヘッダ検査部120は、CH0から図2(a)に示されるビット配列のヘッダパケットの入力を受ける。ヘッダ検査部120は、CH1から入力されたヘッダパケットのシンドロームを求め、第1比較部160にパラレル出力する。ここで、シンドロームが0であった場合、入力されたヘッダに誤りがなかったとして処理される。第1生成部140は、1ビットの誤りがあった場合における、誤りがあった位置に対応するシンドロームをクロックごとに順次生成し、第1比較部160に順次出力する。
第1比較部160は、ヘッダ検査部120から入力されたシンドロームを記憶し、記憶したシンドロームと第1生成部140からクロックごとに順次入力されるシンドロームとを比較し、一致した場合は「1」を、不一致の場合は「0」を第1加算器180の一方の入力端子に出力する。
ヘッダ遅延部110は、第1比較部160からの出力とタイミングを合わせて、CH0から入力されたヘッダを第1加算器180の他方の入力端子に出力する。すなわち、ヘッダ遅延部110は、ヘッダの第0ビットの位置に誤りがあったか否かを示す「1」「0」が第1比較部160から第1加算器180の一方の入力端子に出力されるタイミングに合わせて、ヘッダの第0ビットを第1加算器180の他方の入力端子に出力する。
第1加算器180は、第1比較部160からの入力とヘッダ遅延部110からの入力とを排他的論理和演算する。これにより、CH0から入力されたヘッダに1ビットの誤りがあった場合の誤り訂正が実行される。ここで、ヘッダ検査部120にて求めたシンドロームが0以外の値を持つにもかかわらず、そのシンドロームが第1生成部140にて生成したシンドロームのいずれとも一致しない場合、ECC不可能のエラーとして処理される。これは、入力されたヘッダに2ビット以上の誤りがあったことを示す。
偶数ビット遅延部320は、CH1から図2(b)に示されるビット配列のボディパケットの偶数ビットの入力を受ける。奇数ビット遅延部340は、CH2からボディパケットの奇数ビットの入力を受ける。ボディ検査部200は、CH1およびCH2から、ボディの偶数ビットおよび奇数ビットの並列入力を受ける。ボディ検査部200は、図3の変換テーブル210による変換と、レジスタR32〜R37の2ビットシフト操作により1クロックにて2ステップの割り算処理を実行し、64ビットのボディパケットのシンドロームを32クロックにて求める。求めたシンドロームは第2比較部360および第3比較部380にパラレル出力される。
第2生成部250は、CH1およびCH2から入力されたボディに1ビットの誤りがあった場合であってその誤りが偶数ビットの位置にあった場合における、誤りがあった位置に対応するシンドロームをクロックごとに順次生成し、第2比較部360に順次パラレル出力する。第3生成部270は、第2生成部250と同様に、1ビットの誤りが奇数ビットの位置にあった場合における、誤りがあった位置に対応するシンドロームをクロックごとに順次生成し、第3比較部380に順次パラレル出力する。
第2比較部360は、ボディ検査部200から入力されたシンドロームを記憶し、記憶したシンドロームと第2生成部250からクロックごとに順次入力されるシンドロームとを比較し、一致した場合は「1」を、不一致の場合は「0」を第2加算器420の一方の入力端子に出力する。第3比較部380は、第2比較部360と同様に、ボディ検査部200から入力されたシンドロームと第3生成部270から順次入力されるシンドロームとが一致した場合は「1」を、不一致の場合は「0」を第3加算器440の一方の入力端子に出力する。
偶数ビット遅延部320および奇数ビット遅延部340は、ヘッダ遅延部110と同様に、第2比較部360および第3比較部380からの出力とタイミングを合わせて、CH1およびCH2から入力されたボディの偶数ビットおよび奇数ビットを第2加算器420および第3加算器440の他方の入力端子に出力する。
第2加算器420および第3加算器440は、第2比較部360および第3比較部380からの入力と偶数ビット遅延部320および奇数ビット遅延部340からの入力とを排他的論理和演算し、結果を結合部480に出力する。これにより、CH1およびCH2から入力されたボディに1ビットの誤りがあった場合の誤り訂正が実行される。ここで、ボディ検査部200にて求めたシンドロームが0以外の値を持つにもかかわらず、そのシンドロームが第2生成部250および第3生成部270にて生成したシンドロームのいずれとも一致しない場合、ECC不可能のエラーとして処理される。これは、入力されたボディに2ビット以上の誤りがあったことを示す。
結合部480は、第2加算器420および第3加算器440から入力された排他的論理和演算の結果、すなわち誤り訂正がなされたボディの符号列の偶数ビットおよび奇数ビットを結合する。
再生部600は、第1加算器180による排他的論理和演算の結果、すなわち誤り訂正がなされたヘッダの符号列と、結合部480にて結合したボディの符号列とを受け、音声データを再生する。
本実施の形態の受信装置は、以下の効果を奏する。
ヘッダ検査部120とボディ検査部200は、CH0から入力されるヘッダパケットと、CH1およびCH2に分割されて並列に入力されるボディパケットとのそれぞれに対して同じ32クロックにてシンドロームを求めるので、ヘッダパケットのみならずボディパケットも検査待ちの符号を渋滞させることなく処理でき、効率がよい。
すなわち、ボディ検査部200における偶数ビットと奇数ビットの2ビットを単位にした処理により、ヘッダのみならずボディの処理も伝送速度と一致するため、入力信号を検査部に直結でき、回路を単純化できる。また、ボディの処理を伝送速度と一致させるために、処理部を並列化してパイプライン制御回路を導入したり速度調整用の処理待機バッファを入れる場合と比較して回路規模を小さくできる。
また、ヘッダ訂正部130および偶数ビット訂正部350は、ヘッダおよびボディのビット誤りの訂正を同じ32クロックにて実行するので、検査のみならず訂正もスムーズに実行できる。
また、ヘッダ処理部100およびボディ処理部300は、ヘッダパケットおよびボディパケットの誤り検査・訂正を時間を合わせて終了するので、ヘッダパケットおよびボディパケットは互いに待機する必要がなくなるので、スムーズに後段の再生処理などができる。
また、第1生成部140、第2生成部250および第3生成部270のそれぞれにてクロックごとに誤りがあった位置に対応するシンドロームを順次生成するので、シンドロームを記憶したROM(Read Only Memory)テーブルを用いる場合のアドレスカウンタや、ROMアドレスデコーダ回路、多入力ゲートPLA(Programmable Logic Array)などが不要となり、処理速度が速く回路規模も抑えうる。
上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
実施の形態において、HDMI規格に準拠した受信装置に用いられる再生装置700を例に説明したが、本発明はこれに限定されない。ボディ検査部200の構成だけを抜き出したとしても本発明として有効であるし、ヘッダ処理部100およびボディ処理部300を抜き出したとしても本発明として有効である。
実施の形態において、ヘッダおよびボディがBCH符号として構成された場合を例に説明したが、これには限定されない。ヘッダおよびボディはBCH符号以外の巡回符号にて構成されてもよく、要は、誤り検査を実行しうる符号列として構成されていればよい。この場合、再生装置700の適用範囲が広がる。
また、実施の形態において、2ビット以上の誤りを訂正できないBCH符号を例に説明したが、これには限定されない。符号語間距離は任意でよい。符号語間距離を大きくし、2ビット以上の誤りを訂正する場合は、そのために別の回路を設ける必要があり回路規模が大きくなるが、誤り訂正能力が増す。
また、CH1およびCH2にはボディパケットが複数並列に割り当てられてもよい。このとき、CH1およびCH2においてはボディパケットの数に応じた並列伝送がなされる。この場合、ボディ処理部300を構成する各要素は割り当てられたボディパケットの数と同じだけ必要になるが、第2生成部250および第3生成部270は、共用できる。
また、実施の形態において特に説明しなかったが、ヘッダ処理部100およびボディ処理部300は、1つの半導体基板上に一体集積化されてもよい。再生装置700を構成する各要素が1つの半導体基板上に一体集積化されてもよく、その一部または全部がディスクリート部品で構成されてもよい。どの部分を集積化するかは、コストや占有面積などによって決めればよい。
また、実施の形態において、誤り検査装置500は、音声符号列に含まれるヘッダの符号列とボディの符号列に対する誤り検査をしたが、誤り検査の対象がこれに限定されることはない。誤り検査装置500は、単一の符号列を分解して得られる2以上の符号列の検査全般に利用できる。
また、実施の形態において、ヘッダパケットが32ビット、ボディパケットが64ビットである場合を説明したが、誤り検査装置500が検査する符号列の各パケットのビット数がこれに限定されることはない。たとえば、ボディパケットは128ビットであってもよい。この場合、ボディ検査部200にてボディパケットの検査をするのに64クロック要するが、これでも本発明として有効である。
また、実施の形態において、ボディ検査部200は1クロックあたり2ステップの割り算処理を実行したが、ボディ検査部200の処理スピードはこれに限定されない。実施の形態において説明した原理を用いることで、1クロックあたり3ステップ、4ステップあるいはそれより多い数のステップの処理を実行可能である。
また、ヘッダ遅延部110は、1クロックあたり1ステップの割り算処理を実行したが、これに限定されない。ヘッダ遅延部110にボディ検査部200と同様の構成を適用して、1クロックあたり複数ステップの処理を実行してもよい。たとえば、ヘッダパケットが64ビット、ボディパケットが96ビットである場合、ヘッダ遅延部110にて1クロックあたり2ステップの割り算処理を実行し、ボディ検査部200にて1クロックあたり3ステップの割り算処理を実行すれば、ヘッダパケットおよびボディパケットの検査は同じ32クロックにて終了できる。
実施の形態において再生の対象とするBCH音声符号のストリームの構成を示す図である。 図2(a)−(b)は、図1におけるヘッダパケットおよびボディパケットのビット配列を示す図である。 実施の形態にかかる再生装置の構成を示すブロック図である。 図3におけるヘッダ検査部の構成を示す回路図である。 図3の第1生成部の構成を示す回路図である。 図3のボディ検査部の構成を示す回路図である。 図6の変換テーブルに対する入力と出力の対応を示す図である。 図3の第2生成部の構成を示す回路図である。 図8の生成テーブルに対する入力と出力の対応を示す図である。 図3の第2生成部の各クロックにおける出力を示す図である。 図3の第3生成部の各クロックにおける出力を示す図である。
符号の説明
100 ヘッダ処理部、 110 ヘッダ遅延部、 120 ヘッダ検査部、 130 ヘッダ訂正部、 140 第1生成部、 160 第1比較部、 180 第1加算器、 200 ボディ検査部、 250 第2生成部、 270 第3生成部、 300 ボディ処理部、 320 偶数ビット遅延部、 340 奇数ビット遅延部、 350 偶数ビット訂正部、 360 第2比較部、 370 奇数ビット訂正部、 380 第3比較部、 420 第2加算器、 440 第3加算器、 480 結合部、 500 誤り検査装置、 600 再生部、 700 再生装置。

Claims (11)

  1. 検査ビットを含む符号列を受け、その符号列に含まれる各ビットに対する所定の演算の結果をクロックにより順次シフトする複数のレジスタと、
    前記複数のレジスタに保持される値を仮定したうえで、複数クロック後に前記複数のレジスタが保持すべき値を予め記録した変換テーブルと、
    を有し、所定クロックにわたる演算の終了時点において、前記複数のレジスタに前記符号列のビット誤りに関する情報を残留せしめることを特徴とする誤り検査装置。
  2. 前記複数のレジスタに実際に保持されている値が前記の仮定と相違する場合、前記複数のレジスタに保持すべき値を補正する補正回路をさらに備えることを特徴とする請求項1に記載の誤り検査装置。
  3. 単一の符号列を分解して得られ、それぞれが検査ビットを含む第1符号列および第2符号列に対し、ビット誤りの検査を実行する誤り検査装置であって、
    前記第1符号列に含まれる各ビットに対する所定の演算の結果をクロックにより順次シフトする複数のレジスタを有し、それら複数のレジスタに前記第1符号列のビット誤りに関する情報を残留せしめる第1検査部と、
    前記第2符号列に含まれる各ビットに対する所定の演算の結果をクロックにより順次シフトする複数のレジスタと、複数クロック後にそれら複数のレジスタが保持すべき値を予め記録した変換テーブルとを有し、所定クロックにわたる演算の終了時点において、それら複数のレジスタに前記第2符号列のビット誤りに関する情報を残留せしめる第2検査部と、
    を備えることを特徴とする誤り検査装置。
  4. 前記第1符号列のビット数をN1、前記第2符号列のビット数をN2としたとき、N1<N2であることを特徴とする請求項3に記載の誤り検査装置。
  5. 前記第1検査部による処理の時間をT1、前記第2検査部による処理の時間をT2とし、R1=N1/T1、R2=N2/T2としたとき、R1<R2であることを特徴とする請求項4に記載の誤り検査装置。
  6. 前記複数クロックの数は、第2検査部による1クロックあたりの処理ビット数と等しいことを特徴とする請求項3から5のいずれかに記載の誤り検査装置。
  7. 前記第1検査部によって検出された、第1符号列におけるビット誤りに関する情報をもとに、そのビット誤りを訂正する第1訂正部と、
    前記第2検査部によって検出された、第2符号列におけるビット誤りに関する情報をもとに、そのビット誤りを訂正する第2訂正部と、
    をさらに備えることを特徴とする請求項3から6のいずれかに記載の誤り検査装置。
  8. 前記第2訂正部は、前記複数クロックに対応した数の部分訂正部を備え、それら部分訂正部はクロックごとに処理をインタリーブして受け持つことを特徴とする請求項7に記載の誤り検査装置。
  9. 前記部分訂正部のそれぞれは、ビット誤りを起こした位置に対応するシンドロームを生成する生成部と、
    前記第2検査部によって検出された、第2符号列におけるビット誤りに関する情報と、前記生成部によって生成されたシンドロームとを比較する比較部と、
    を含み、前記生成部は、
    所定の初期値をクロックにより順次シフトする複数のレジスタと、
    前記複数のレジスタに保持される値を仮定したうえで、複数クロック後に前記複数のレジスタが保持すべき値を予め記録した生成テーブルと、
    を有し、クロックごとに、前記複数のレジスタにビット誤りを起こした位置に対応するシンドロームを残留せしめることを特徴とする請求項8に記載の誤り検査装置。
  10. 前記第1検査部と、前記第2検査部とが、1つの半導体基板上に一体集積化されたことを特徴とする請求項3から9のいずれかに記載の誤り検査装置。
  11. 単一の音声符号列を対象とする請求項3から10のいずれかに記載の誤り検査装置と、
    前記誤り検査装置にて誤り検査を実行した音声符号列をもとに、音声データを再生する再生部と、
    を備えることを特徴とする再生装置。
JP2005296936A 2005-10-11 2005-10-11 誤り検査装置およびそれを用いた再生装置 Pending JP2007110258A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005296936A JP2007110258A (ja) 2005-10-11 2005-10-11 誤り検査装置およびそれを用いた再生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005296936A JP2007110258A (ja) 2005-10-11 2005-10-11 誤り検査装置およびそれを用いた再生装置

Publications (1)

Publication Number Publication Date
JP2007110258A true JP2007110258A (ja) 2007-04-26

Family

ID=38035775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005296936A Pending JP2007110258A (ja) 2005-10-11 2005-10-11 誤り検査装置およびそれを用いた再生装置

Country Status (1)

Country Link
JP (1) JP2007110258A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009009289A (ja) * 2007-06-27 2009-01-15 Elpida Memory Inc 半導体記憶装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009009289A (ja) * 2007-06-27 2009-01-15 Elpida Memory Inc 半導体記憶装置

Similar Documents

Publication Publication Date Title
JP3549788B2 (ja) 多段符号化方法、多段復号方法、多段符号化装置、多段復号装置およびこれらを用いた情報伝送システム
JP4648255B2 (ja) 情報処理装置および情報処理方法
KR100690274B1 (ko) 다중 채널 직렬 통신을 위한 순환 중복 검사 장치 및 이를구비한 통신 시스템
US8117526B2 (en) Apparatus and method for generating a transmit signal and apparatus and method for extracting an original message from a received signal
KR20090018252A (ko) 처리량을 높이기 위하여 더블 버퍼링 구조와 파이프라이닝기법을 이용하는 디코더 및 그 디코딩 방법
US20110078545A1 (en) Frame Boundary Detection and Synchronization System for Data Stream Received by Ethernet Forward Error Correction Layer
JPS6151814B2 (ja)
US8433974B2 (en) Cyclic redundancy check code generating circuit and cyclic redundancy check code generating method
JPWO2005050909A1 (ja) データ処理装置
JP2005354310A (ja) データ送信装置、データ受信装置、データ送信方法およびデータ受信方法
EP1420517A1 (en) Reed-solomon error-correcting circuit, euclid's algorithm and apparatus
US6999127B2 (en) Apparatus and method for image conversion and automatic error correction for digital television receiver
JP2007110258A (ja) 誤り検査装置およびそれを用いた再生装置
US5408476A (en) One bit error correction method having actual data reproduction function
JP5194747B2 (ja) データ伝送装置、データ送信装置、データ受信装置及びデータ伝送システム
US20090113269A1 (en) Data descrambling apparatus and data descrambling method
JP2015019276A (ja) 記憶装置、crc生成装置およびcrc生成方法
JPH0241032A (ja) 誤り訂正装置
JP4677638B2 (ja) 誤り訂正復号回路
US8943389B2 (en) Signal transmission/reception circuit
JP4829376B2 (ja) 情報処理装置および情報処理方法
CN115567164A (zh) 向量信令码信道的流水线式前向纠错方法和装置
JP6412785B2 (ja) データ送信装置、データ受信装置、およびデータ通信システム
JP2012010108A (ja) データ処理回路及びデータ処理方法
JP4747085B2 (ja) 誤り訂正符号回路