図2は、本発明を適用した信号処理装置の一実施の形態の構成例を示す斜視図である。
図2において、信号処理装置31は、筐体32、電源モジュール33、基板(プラットフォーム基板)34、基板(入力基板)35、基板(信号処理基板)361ないし363、及び基板(出力基板)37から構成される。
筐体32は、直方体形状の金属製の筐体であり、その内部には、電源モジュール33、プラットフォーム基板34、入力基板35、信号処理基板361ないし363、及び出力基板37が収納されている。
電源モジュール33は、プラットフォーム基板34、入力基板35、信号処理基板361ないし363、及び出力基板37に、駆動に必要な電力を供給する。
プラットフォーム基板34には、信号処理基板361ないし363が装着されている。なお、信号処理基板361ないし363には、プラットフォーム基板34を介して、電源モジュール33から電力が供給される。
入力基板35は、筐体32の外部に設けられているコネクタ131ないし134(図3)に接続されており、入力基板35には、コネクタ13iを介して接続される外部機器(図示せず)から、例えば、画像の信号が供給される。また、入力基板35は、電波を用いた無線通信を行うためのアンテナ35aを備えており、外部機器から供給された画像の信号を、アンテナ35aを介して、信号処理基板361ないし363に送信(伝送)する。
信号処理基板361ないし363は、電波を用いた無線通信を行うためのアンテナ36a1ないし36a3をそれぞれ備えている。信号処理基板36iには、アンテナ36aiを介して、入力基板35から送信されてくる画像の信号が供給される。信号処理基板36iは、入力基板35からの画像の信号に対し、ノイズ除去処理、画像変換処理、又は画像調整処理などの信号処理を施し、信号処理を施した画像の信号を、アンテナ36aiを介して、出力基板37に送信する。
出力基板37は、電波を用いた無線通信を行うためのアンテナ37aを備えるとともに、筐体32に設けられているコネクタ19(図3)に接続されている。出力基板37は、アンテナ37aを介して、信号処理基板361ないし363から送信されてくる画像の信号を受信し、コネクタ19に接続されている表示装置(図示せず)に供給する。
次に、図3は、図2の信号処理装置31の電気的な構成例を示すブロック図である。
なお、図中、図1の信号処理装置11と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
図3において、信号処理装置31は、コネクタ131ないし134、コネクタ19、リモートコマンダ20、操作部21、筐体32、入力セレクタ44、信号ルータ45、機能ブロック461ないし463、及びシステム制御ブロック50から構成される。
信号処理装置31では、コネクタ131ないし134が、信号ケーブルを介して入力セレクタ44に接続されており、入力セレクタ44が、信号ケーブルを介して信号ルータ45に接続されており、信号ルータ45が、信号ケーブルを介してコネクタ19に接続されている。
筐体32の内部には、入力セレクタ44、信号ルータ45、機能ブロック461ないし463、及びシステム制御ブロック50が収納されている。
入力セレクタ44は、例えば、図2の入力基板35に設けられており、その入力基板35に設けられているアンテナ35aを介して無線通信を行うことが可能となっている。
また、入力セレクタ44には、コネクタ131ないし134を介して、図示せぬ外部機器から画像の信号が供給される。入力セレクタ44は、システム制御ブロック50の制御に従って、コネクタ131ないし134に接続された外部機器から供給される画像の信号を選択し、信号ルータ45に供給する。
信号ルータ45は、例えば、図2の出力基板37に設けられており、その出力基板37に設けられているアンテナ37aを介して無線通信を行うことが可能となっている。
信号ルータ45は、システム制御ブロック50の制御に従い、入力セレクタ44から供給される画像の信号を、アンテナ37aを介して、電波を用いた無線通信により、機能ブロック461ないし463に送信する。
また、信号ルータ45は、アンテナ37aを介して、電波を用いた無線通信により、機能ブロック461ないし463から送信されてくる画像の信号を受信し、機能ブロック461ないし463からの画像の信号を、コネクタ19を介して、コネクタ19に接続されている表示装置(図示せず)に供給する。
機能ブロック461ないし463は、例えば、図2の信号処理基板361ないし363にそれぞれ設けられており、信号処理基板361ないし363に設けられているアンテナ36a1ないし36a3を介して無線通信を行うことが、それぞれ可能となっている。
機能ブロック46iは、アンテナ36aiを介して、電波を用いた無線通信により、信号ルータ45から送信されてくる画像の信号を受信し、その画像の信号に対し、ノイズ除去処理、画像変換処理、又は画像調整処理などの信号処理を施す。そして、機能ブロック46iは、信号処理を施した画像の信号を、アンテナ36aiを介して、電波を用いた無線通信により、信号ルータ45に送信する。また、機能ブロック46iと46i'どうしも、アンテナ36aiと36ai'を介して、無線通信による信号の送受信を、必要に応じて行う。
なお、機能ブロック461ないし463のそれぞれを個々に区別する必要がない場合、以下、適宜、機能ブロック461ないし463を機能ブロック46と称する。同様に、アンテナ36a1ないし36a3も、アンテナ36aと称する。
システム制御ブロック50は、例えば、図2のプラットフォーム基板34に設けられており、そのプラットフォーム基板34に設けられている、図2には図示していないアンテナ50aを介して無線通信を行うことが可能となっている。
また、システム制御ブロック50には、リモートコマンダ20及び操作部21から、操作信号が供給される。
システム制御ブロック50は、ユーザの操作に応じた操作信号が、リモートコマンダ20や操作部21から供給されると、その操作信号に応じた処理が行われるように、アンテナ50aを介して、電波を用いた無線通信により、入力セレクタ44、信号ルータ45、及び機能ブロック46を制御する。
以上のように構成される信号処理装置31の筐体32の内部では、必要に応じて、入力セレクタ44、信号ルータ45、機能ブロック46、及びシステム制御ブロック50のうちの、任意の1つのブロックが送信装置となるとともに、他の1以上のブロックが受信装置となって、送信装置が、電波を用いた無線通信により、例えば、画像の信号や制御信号その他の信号を送信する。そして、受信装置が、送信装置からの信号を受信する。
ここで、以下では、説明を簡単にするため、信号ルータ45及び機能ブロック46に注目し、その信号ルータ45及び機能ブロック46が、筐体32内で行う無線通信について説明する。
図4は、筐体32内の信号ルータ45及び機能ブロック46によって構成される通信システム(システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない)の構成例を示すブロック図である。
信号ルータ45は、送信処理部101、受信処理部102、信号処理部103、及び制御部104から構成される。
送信処理部101は、信号処理部103から供給されるデータ(例えば、画像の信号)や、制御部104から供給されるコマンド等の制御信号等を、アンテナ37aから電波で送信する送信処理を行う。
受信処理部102は、アンテナ37aが電波を受信することにより、そのアンテナ37aから供給される信号を受信する受信処理を行い、その結果得られるデータ(制御信号を含む)を、必要に応じて、信号処理部103や制御部104に供給する。
信号処理部103は、受信処理部102から供給されるデータに対して、信号ルータ45としての所定の信号処理を施し、その結果得られるデータを、送信処理部101に供給する。
制御部104は、例えば、受信処理部102から供給される制御信号等に従い、送信処理部101、受信処理部102、及び信号処理部103を制御する。
なお、図4では、送信処理部101、受信処理部102、及び信号処理部103のそれぞれと、制御部104とを接続する接続線については、図が煩雑になるのを避けるため、図示を省略してある。機能ブロック46の送信処理部111、受信処理部112、及び信号処理部113のそれぞれと、制御部114とを接続する接続線についても、同様である。
機能ブロック46は、送信処理部111、受信処理部112、信号処理部113、及び制御部114から構成される。なお、送信処理部111、受信処理部112、信号処理部113、及び制御部114は、信号ルータ45の送信処理部101、受信処理部102、信号処理部103、及び制御部114とそれぞれ同様に構成されるため、その説明は省略する。
以上のように構成される通信システムにおいて、例えば、信号ルータ45から機能ブロック46に対して、データを送信する場合には、信号ルータ45において、送信処理部101が、信号処理部103から供給されるデータ等を、アンテナ37aから電波で送信する。アンテナ37aから送信された電波は、アンテナ36aで受信され、その電波に対応する信号が、機能ブロック46の受信処理部112に供給される。
受信処理部112は、アンテナ36aからの信号を受信し、その結果得られるデータを、信号処理部113に供給する。信号処理部113では、受信処理部102から供給されるデータに、機能ブロック46としての所定の信号処理が施される。
同様にして、機能ブロック46から信号ルータ45にも、データを送信することができる。
なお、以下では、信号ルータ45を、データを送信する送信装置とし、機能ブロック46を、データを受信する受信装置として説明を行う。
信号ルータ45及び機能ブロック46が、筐体32内で無線通信を行う場合、電波が筐体32内部で反射することにより、マルチパスが生じる。
マルチパスが生じると、送信装置としての信号ルータ45において、後に送信されたビットの信号が、先に(過去に)送信されたビットの信号の影響を受け(干渉が生じ)、その結果、後に送信されたビットの信号の波形が歪み(フェージングが生じ)、受信装置としての機能ブロック46において受信されるビットに誤りが生じることがある。
あるビットの信号の波形に生じる歪みは、そのビットの周辺のビット(そのビットの前後に送信されるビット)によって異なる。
そのため、例えば、いま、複数ビットであるNビットのビット列を、単位ビット列ということとすると、単位ビット列を、送信装置としての信号ルータ45から受信装置としての機能ブロック46に送信したときに、単位ビット列の特定の1ビットが誤る誤り率の特性は、送信装置としての信号ルータ45と、受信装置としての機能ブロック46との間の通信路における平均的な誤り率の特性とは異なる。
しかしながら、信号処理装置31(図2)の筐体32の内部では、電源モジュール33、プラットフォーム基板34、入力基板35、信号処理基板361ないし363、及び出力基板37は、それぞれ固定されている。このため、筐体32の壁面や各基板などでは、常に、電波が同様に反射し、筐体32の壁面や、基板35,361ないし363、及び35などで反射した電波の干渉は、定常的なものとなり、その結果、単位ビット列の特定の1ビットの信号の波形の歪み方も定常的になる。
すなわち、例えば、携帯電話等に代表される移動体無線通信では、マルチパスに起因する干渉の仕方は、無線局の移動とともに変化するため,その変化に応じて、干渉を除去する処理を、リアルタイムで行う必要がある。
一方、筐体32の内部で行われる無線通信(以下、筐体内無線通信ともいう)では、送信装置としての信号ルータ45、及び、受信装置としての機能ブロック46は、移動しない。さらに、筐体内無線通信では、筐体32の内部では、電源モジュール33、プラットフォーム基板34、入力基板35、信号処理基板361ないし363、及び出力基板37が固定されているため、基板等の追加や、削除(取り外し)、変更が行われない限り、通信環境は変化しない。
したがって、筐体内無線通信では、干渉の仕方は、時間によって変化せず、定常的になり、その干渉に起因する信号の波形の歪み方も定常的になる。
以上のように、筐体内無線通信では、マルチパスに起因する信号の波形の歪み方は定常的になるが、あるビットの信号の波形に生じる歪みは、そのビットの周辺のビット(そのビットの前後に送信されるビット)によって異なる。
すなわち、図5は、単位ビット列を、有線通信で送信した場合と、筐体内無線通信で送信した場合の受信側で受信される受信信号の波形を示している。
なお、図5の受信信号の波形において、横軸は、時間を表し、縦軸は、受信信号の振幅を表す。また、ビットを送信するときの信号の振幅は、ビット"0"については、例えば、-0.3V(volt)に、ビット"1"については、例えば、+0.3Vに、それぞれなっている。
ここで、以下、適宜、単位ビット列であるNビットの各ビットを、送信がされる順(受信がされる順でもある)に、b1,b2,・・・,bNと記載する。また、単位ビット列のうちのn番目のビット(n番目に送信がされるビット)bn("0"又は"1")を、第nビットともいう。
図5Aは、6ビット"010111"を単位ビット列として、その単位ビット列を、複数回、有線通信で送信した場合の、第5ビットの"1"の受信信号の波形を示している。
なお、図5Aにおいて、黒い線は、複数回送信された単位ビット列に対応する複数の受信信号を表しており、白抜きの部分は、その複数の受信信号の平均値を表している。
有線通信では、単位ビット列の信号には、マルチパスの影響がなく、送信側、及び受信側の回路等の影響(回路系の影響)があるだけなので、第5ビットの受信信号の振幅は、ほぼ一定になっており、分散も小さくなっている。
図5Bは、6ビット"010111"を単位ビット列として、その単位ビット列を、複数回、筐体内無線通信で送信した場合の、第5ビットの"1"の受信信号の波形を示している。
なお、図5Bでも、図5Aと同様に、黒い線は、複数回送信された単位ビット列に対応する複数の受信信号を表しており、白抜きの部分は、その複数の受信信号の平均値を表している。
筐体内無線通信では、単位ビット列の信号は、回路系の影響の他、マルチパスの影響(マルチパスに起因する干渉の影響)を受け、その結果、第5ビットの受信信号が、図5Aの場合よりも大きく歪んでいる。
例えば、いま、0.0Vを閾値として、閾値以上(又は、より大)の受信信号を、ビット"1"に再生(判定)し、閾値未満(又は、以下)の受信信号を、ビット"0"に再生(硬判定)することとすると、図5Bの、"1"である第5ビットの受信信号については、振幅が閾値未満になっている部分があり、この場合、第5ビットは、誤って、"0"に再生されることがある。
ここで、回路系の影響としては、信号が通過する経路中のコネクタ端での反射や、回路中のフィルタ効果が挙げられる。フィルタ効果とは、回路中のフィルタそのものや、回路中の部品が有するフィルタ特性、つまり、回路が通過させる信号の周波数成分の上限及び下限により、回路を通過する信号の一部の周波数成分がカットされること、又は、回路を通過する信号の周波数成分が、信号の一部の周波数成分となることをいう。
単位ビット列のあるビットを、注目ビットとして注目すると、フィルタ効果により通過する信号の周波数成分は、例えば、注目ビットの信号と、その前後のビットの信号との畳み込みに依存するため、注目ビットの受信信号の波形は、その前後のビットに依存した形となる。
例えば、図5に示した単位ビット列"010111"において、第5ビットの"1"を注目ビットとした場合、その注目ビットの前の第4ビットと、後の第6ビットとが、いずれも、注目ビットと同一の"1"であるため、第4ビットと第5ビットとの間、及び、第5ビットと第6ビットとの間には、信号に急峻な変化(立ち上がり、又は、立ち下がり)が存在せず、つまり、フィルタ効果でカットされる高周波成分が存在せず、その結果、回路系の影響だけを考慮した場合には、注目ビットである第5ビットの受信信号の波形は、ほぼ直線状になる。
一方、マルチパスの影響は、直接波、反射波、回折波等の複数の波(マルチパス)が干渉することによって、マルチパスフェージングとして現れる。
特に、筐体内無線通信のような、いわば、閉じた空間内での無線通信では、電波の発散が少ないために、反射波の減衰が小さく、反射波の影響が数ビットに渡って続く。その結果、受信信号の歪みが大きくなり、例えば、図5Bに示したように、"1"である注目ビット(第5ビット)の受信信号の振幅が、閾値未満になって、注目ビットが、誤って、"0"に再生されることがある。
但し、図5Bにおいて、受信信号の分散は、ある一定の範囲に収まっている。さらに、受信信号の波形は、一定ではなく、歪んでいるものの、その歪み方には、一定の傾向(定常性)がある。
筐体内無線通信において、受信側で受信される受信信号は、送信側から送信される送信信号が、回路系の影響と、マルチパスの影響とを受けた信号となる。
送信信号が受ける回路系の影響、及びマルチパスの影響には、定常性があり、注目ビットの送信信号が受ける影響は、注目ビットよりも過去及び未来のビット(列)(注目ビットよりも先に送信されたビット(列)、及び、注目ビットよりも後に送信されたビット(列))に依存する。
図6ないし図8は、筐体内無線通信において、7ビットのビット列を、単位ビット列として複数回送信し、その単位ビット列の第6ビットを注目ビットとした場合の、その複数回分の、注目ビットの受信信号の波形を示している。
すなわち、図6は、単位ビット列"0000101"(ビットパターンが"0000101"の単位ビット列)の注目ビットとしての第6ビット"0"の受信信号の波形を示している。
また、図7は、単位ビット列"0011101"の注目ビットとしての第6ビット"0"の受信信号の波形を示しており、図8は、単位ビット列"0000000"の注目ビットとしての第6ビット"0"の受信信号の波形を示している。
図6ないし図8の受信信号の波形は、いずれも、ビット"0"の受信信号の波形ではあるが、単位ビット列のビットパターンごとに異なる歪み方をしており、そのため、閾値である0.0Vまでの距離が、単位ビット列のビットパターンごとに異なる。
但し、受信信号の波形の歪み方には、ビットパターンごとに、一定の傾向がある。
このため、単位ビット列の注目ビットが誤る誤り率は、単位ビット列のビットパターンごとに異なり、そのビットパターンに依存する。
図9は、8ビットのビット列を単位ビット列とし、その単位ビット列の第7ビットを注目ビットした場合の、注目ビットの誤り率を示している。
ここで、図9において、横軸は、単位ビット列のビットパターンを表し、縦軸は、誤り率(Ber)を表す。
なお、8ビットの単位ビット列のビットパターン"b1,b2,b3,b4,b5,b6,b7,b8"としては、"00000000"ないし"11111111"の256パターンがあるが、図9では、ビットパターン"b1,b2,b3,b4,b5,b6,b7,b8"を2進数として、その2進数を10進数で表した値(0ないし255)を、横軸に示してある。
図9によれば、注目ビットである第7ビットが誤りやすいビットパターンと、誤りにくいビットパターンとが存在することが分かる。
以上のように、筐体内無線通信では、受信信号の波形の歪み方に、ビットパターンごとに、一定の傾向があり、その結果、注目ビットが誤りやすいビットパターンと、誤りにくいビットパターンとが存在するという特性がある。
送信装置としての信号ルータ45と、受信装置としての機能ブロック46とでは、上述の筐体内無線通信の特性を利用して、マルチパスに起因するデータの誤りの発生を、容易に防止する。
すなわち、図10は、送信装置としての信号ルータ45の送信処理部101(図4)と、受信装置としての機能ブロック46の受信処理部112(図4)との構成例を示している。
送信処理部101は、シフトレジスタ151、変換テーブル記憶部152、変換部153、テストパターン発生部154、及び送信部155から構成され、単位ビット列の並びである送信ビット列を送信する送信装置として機能する。
すなわち、シフトレジスタ151には、例えば、画像の画素値を表す単位ビット列の並びである送信ビット列が、信号処理部103(図4)から供給される。シフトレジスタ151は、そこに供給される送信ビット列を、1ビットずつ順次ラッチ(記憶)し、Nビット、つまり、単位ビット列をラッチすると、その単位ビット列を、変換部153に供給する。
変換テーブル記憶部152は、単位ビット列(の各ビットパターン)と、後述する変換ビット列とを対応付けた変換テーブルを記憶する。
変換部153は、変換テーブル記憶部152に記憶された変換テーブルに従い、シフトレジスタ151からの単位ビット列を、変換ビット列に変換し、送信部155に供給する。
テストパターン発生部154は、単位ビット列となり得るNビットのビットパターンであるテストパターンを発生し、送信部155に供給する。
送信部155は、変換部153からの変換ビット列、又は、テストパターン発生部154からのテストパターンを変調し、その変調によって得られる変調信号を、アンテナ37aから送信する。
受信処理部112は、受信部161、及び、作成部162から構成される。
受信部161は、送信処理部101から送信されてくる変調信号を、アンテナ36aを介して受信し、ベースバンドの信号(受信信号)に復調する。さらに、受信部161は、受信信号と、所定の閾値とを比較することにより、変換ビット列、又は、テストパターンとしてのビット列を再生し、作成部162、及び、信号処理部113(図4)に供給する。
作成部162は、テストパターン発生部163、誤り率算出部164、誤り期待値算出部165、及び、変換テーブル作成部166から構成され、単位ビット列を、変換ビット列に変換するのに用いる変換テーブルを作成する情報処理装置として機能する。
すなわち、テストパターン発生部163は、単位ビット列となり得るNビットのビットパターンであるテストパターンを発生し、誤り率算出部164に供給する。なお、テストパターン発生部163は、送信処理部101のテストパターン発生部154と同一のテストパターンを同一の順番で発生する。
誤り率算出部164には、テストパターン発生部163が発生したテストパターン(以下、適宜、発生テストパターンともいう)が供給される他、受信部161が再生したテストパターン、つまり、送信処理部101が送信したテストパターンを受信部161が受信して再生することで得られたテストパターン(以下、適宜、受信テストパターンともいう)が供給される。
誤り率算出部164は、テストパターン発生部163からの発生テストパターンと、受信部161からの受信テストパターンとを比較することにより、テストパターンが、送信処理部101から受信処理部112に送信されたときに、そのテストパターンの、ある1ビットである第kビットが誤る誤り率を求め、各テストパターンの誤り率を、誤り期待値算出部165に供給する。
すなわち、テストパターン発生部163が発生する、ある発生テストパターンを、注目テストパターンとして注目すると、誤り率算出部164は、テストパターン発生部163が注目テストパターンを発生した回数である発生頻度をカウントする。
さらに、誤り率算出部164は、注目テストパターンと、注目テストパターンに対応する受信テストパターンとを比較し、受信テストパターンの第kビットが、注目テストパターンの第kビットに一致していない回数、すなわち、第kビットが誤っている回数である誤り回数をカウントする。
そして、誤り率算出部164は、注目テストパターンの誤り回数を、注目テストパターンの発生頻度で除算することにより、その除算値(商)を、注目テストパターンの誤り率として求める。
誤り期待値算出部165は、単位ビット列のNビットのうちの、重要でないビットである非重要ビットが取り得る複数のビットパターン(以下、適宜、変更ビットパターンという)それぞれについて、単位ビット列のNビットのうちの、重要なビットである重要ビットが誤る期待値である誤り期待値を、誤り率算出部164から供給される誤り率(後述するように、単位ビット列のNビットのうちの重要ビットを第kビットとするテストパターンの誤り率)を用いて求め、変換テーブル作成部166に供給する。
ここで、例えば、画像の画素値については、上位ビット、特に、MSB(Most Significant Bit)に誤りが生じた場合、画質が大きく劣化するが、LSB(Least Significant Bit)等の下位ビットに誤りが生じても、画質の劣化は、視覚的には目立たない。したがって、画素値の下位ビットが犠牲になったとしても、上位ビットには、誤りを生じさせるべきではない。この点、音声等も同様である。
したがって、単位ビット列が、例えば、画素値である場合には、上位ビットは、重要ビットであり、下位ビットは、非重要ビットであるということができる。
変換テーブル作成部166は、単位ビット列と、その単位ビット列のうちの非重要ビットを、複数の変更ビットパターンのうちの、誤り期待値算出部165からの誤り期待値を最小にするビットパターンである最小誤り期待値ビットパターンに変換して得られる変換ビット列とを対応付けた変換テーブルを作成する。
この変換テーブル作成部166で作成された変換テーブルが、送信処理部101の変換テーブル記憶部152に記憶される。
次に、図10の送信処理部101と、受信処理部112との間で行われる無線通信(筐体内無線通信)の概要について説明する。
通信によってやりとりするデータの各ビットは、"0"、又は"1"のうちのいずれかではあるが、各種の情報を表す。すなわち、ビットは、例えば、画像の画素値や、音声の各周波数成分、通信の同期に用いる部分、誤り訂正部(誤り訂正符号)等の各種の情報を表す。そして、ビットの重要性は、そのビットが表す情報によって異なる。
すなわち、ビットが、例えば、画像の画素値を表す場合には、そのビットが、画素値の上位ビットであるのか、又は、下位ビットであるのかによって、ビットの重要性は異なる。
具体的には、例えば、リアルタイム性が要求され、再送を行うことができない画像の通信においては、画像を構成する画素値の送信中に、誤りが生じても、受信側では、誤りが生じた画素値を用いて、画像が表示される。
上述したように、画像の画素値については、上位ビットに誤りが生じた場合には、画質が大きく劣化するが、下位ビットに誤りが生じても、画質の劣化は、視覚的には目立たない。
すなわち、画素値については、誤りが生じたビットの数が同一であっても、誤りが生じたビットが、上位ビットである場合には、画質への影響は大きく、誤りが生じたビットが、下位ビットである場合には、画質への影響が小さい。
したがって、単位ビット列が、例えば、画素値である場合には、上位ビットは、重要ビットであり、下位ビットは、非重要ビットであるということができる。
そこで、図10の送信処理部101、及び、受信処理部112では、マルチパスに起因して生じるビットの誤りが生じやすいビットパターンと、生じにくいビットパターンとがあることを利用し、非重要ビットの犠牲を許容することによって、重要ビットの誤りの発生を防止する。
具体的には、例えば、いま、4ビットのビット列を、単位ビット列"b1,b2,b3,b4"として、単位ビット列"b1,b2,b3,b4"を送信したときの、例えば、最後の第4ビットb4に誤りが生じる誤り率を、C4(b1,b2,b3,b4)と表す。
また、単位ビット列"b1,b2,b3,b4"において、例えば、第1ビットb1、及び、第2ビットb2が、非重要ビットであり、第3ビットb3、及び、第4ビットb4が重要ビットであることとする。
いま、単位ビット列"b1,b2,b3,b4"を送信したときに、その単位ビット列"b1,b2,b3,b4"のうちの、重要ビットである第3ビットb3、及び、第4ビットb4のうちの少なくとも一方が誤る期待値である誤り期待値を、E3,4(b1,b2,b3,b4)と表すこととし、その誤り期待値E3,4(b1,b2,b3,b4)を、4ビット"b'1,b'2,b'3,b'4"を送信したときに最後の第4ビットb'4が誤る誤り率C4(b'1,b'2,b'3,b'4)を用いて求めることとすると、誤り期待値E3,4(b1,b2,b3,b4)は、式(1)で求められる。
E3,4(b1,b2,b3,b4)=C4(b1,b2,b3,b4)+(C4(0,b1,b2,b3)+C4(1,b1,b2,b3))/2
・・・(1)
ここで、式(1)において、右辺の第1項C4(b1,b2,b3,b4)は、ビット列"b1,b2,b3,b4"を送信したときに、第4ビットb4が誤る誤り期待値を表し、誤り率に等しい。
また、式(1)において、右辺の第2項(C4(0,b1,b2,b3)+C4(1,b1,b2,b3))/2は、xが、"0"又は"1"のうちのいずれかである不定値(ビット)を表すこととして、4ビット"x,b1,b2,b3"を送信したときに、その第4ビットb3が誤る誤り期待値を表す。
式(1)では、不定値xが、"0"である確率と"1"である確率、つまり、単位ビット列"b1,b2,b3,b4"の1ビット前のビットxとして、"0"が発生する発生確率と"1"が発生する発生確率が、いずれも1/2で、等しいこととして、4ビット"x,b1,b2,b3"を送信したときに、その第4ビットb3が誤る誤り期待値が求められている。
一方、単位ビット列"b1,b2,b3,b4"の非重要ビットである第1ビットb1、及び、第2ビットb2が取り得る複数のビットパターン(変更ビットパターン)"b1,b2"としては、"0,0","0,1","1,0"、及び"1,1"の4パターンが存在する。
非重要ビットである第1ビットb1、及び第2ビットb2の誤りを許容する前提の下で、重要ビットである第3ビットb3、及び、第4ビットb4のいずれにも、なるべく、誤りを生じさせないようにするには、変更ビットパターン"0,0","0,1","1,0"、及び"1,1"それぞれについて、単位ビット列"b1,b2,b3,b4"の重要ビットb3及びb4のうちのいずれかが誤る誤り期待値E3,4(b1,b2,b3,b4)、つまり、誤り期待値E3,4(0,0,b3,b4),E3,4(0,1,b3,b4),E3,4(1,0,b3,b4)、及びE3,4(1,1,b3,b4)を求め、単位ビット列"b1,b2,b3,b4"の非重要ビットb1及びb2を、変更ビットパターン"0,0","0,1","1,0"、及び"1,1"のうちの、誤り期待値E3,4(b1,b2,b3,b4)を最小にする変更パターン(以下、最小誤り期待値ビットパターンともいう)に変換して送信すればよい。
ここで、単位ビット列の非重要ビットを、最小誤り期待値ビットパターンに変換して得られるビット列を、変換ビット列ともいう。
図10において、受信処理部112の作成部162では、単位ビット列と、その単位ビット列の非重要ビットを、最小誤り期待値ビットパターンに変換して得られる変換ビット列とを対応付けた変換テーブルが作成される。
そして、送信処理部101では、変換部153において、変換テーブルに従い、単位ビット列が変換ビット列に変換され、送信部155において、その変換ビット列が送信される。
なお、上述の場合には、単位ビット列"b1,b2,b3,b4"の1ビット前のビットを、不定値xとしたが、送信処理部101において、変換部153で変換ビット列に変換される単位ビット列の1ビット前に送信されたビットb0を記憶しておくことにより、式(1)の誤り期待値E3,4(b1,b2,b3,b4)は、4ビット"x,b1,b2,b3"を送信したときに、その第4ビットb3が誤る誤り期待値(C4(0,b1,b2,b3)+C4(1,b1,b2,b3))/2として、4ビット"b0,b1,b2,b3"を送信したときに、その第4ビットb3が誤る誤り率C4(b0,b1,b2,b3)を用いて求めることができる。
次に、図11を参照して、図10の作成部162による変換テーブルの作成について説明する。
図11Aは、送信ビット列中の、ある単位ビット列を示している。
図11Aにおいて、単位ビット列は、8(=N)ビットのビット列"b1,b2,b3,b4,b5,b6,b7,b8"であり、第4ビットb4、及び、第5ビットb5が、非重要ビットに、第6ビットb6、及び、第7ビットb7が、重要ビットに、それぞれなっている。
図11Aでは、8ビットの単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"(のビットパターン)が、"0,1,1,0,0,1,0,1"になっている。
また、図11Aでは、単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"の1ビット前のビットb0(及び、それよりも前のビット)は、不定値xになっている。
ここで、図11Aでは、非重要ビットと重要ビットのビット数が同一であるが、非重要ビットと重要ビットのビット数は、同一である必要はない。
例えば、いま、作成部162(図10)の誤り率算出部164において、ビット列"b1,b2,b3,b4,b5,b6,b7,b8"となり得る8ビットのテストパターンについて、その8ビットのうちの、例えば、第7ビットが誤る誤り率C7(b1,b2,b3,b4,b5,b6,b7,b8)が求められ、誤り期待値算出部165に供給されていることとする。
ここで、誤り率算出部164において、誤り率が求められるビットを、誤り検出対象ビットともいう。いまの場合、第7ビットが誤り検出対象ビットである。
図11Aの単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"において、非重要ビットは、第4ビットb4、及び、第5ビットb5の2ビットであるから、その非重要ビット"b4,b5"が取り得る変更ビットパターンとしては、"0,0","0,1","1,0"、及び"1,1"の4パターンが存在する。
そこで、誤り期待値算出部165では、まず、4つの変更ビットパターン"0,0","0,1","1,0"、及び"1,1"のうちの1つ、すなわち、例えば、1番目の変更ビットパターン"0,0"を注目ビットパターンとして、その注目ビットパターン"0,0"について、単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"の重要ビットb6及びb7のうちのいずれかが誤る誤り期待値(以下、注目ビットパターン"0,0"についての誤り期待値ともいう)が、図11Bに示すように求められる。
ここで、注目ビットパターン"0,0"についての誤り期待値とは、単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"の非重要ビットb4及びb5を、注目ビットパターン"0,0"に置換して得られるビット列"0,1,1,0,0,1,0,1"の重要ビットb6及びb7のうちのいずれかが誤る誤り期待値EE(0,1,1,0,0,1,0,1)を意味する。
いま、8ビットの単位ビット列になり得る8ビットのビットパターン"b'1,b'2,b'3,b'4,b'5,b'6,b'7,b'8"を送信したときに、誤り検出対象ビットである第7ビットb'7が誤る誤り率を、C7(b'1,b'2,b'3,b'4,b'5,b'6,b'7,b'8)と表すと、注目ビットパターン"0,0"についての誤り期待値EE(0,1,1,0,0,1,0,1)は、式(1)の場合と同様にして、誤り率算出部164で求められる誤り率C7(b'1,b'2,b'3,b'4,b'5,b'6,b'7,b'8)を用いて求めることができる。
すなわち、誤り期待値算出部165では、単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"の重要ビットb6及びb7のうちの1つ、すなわち、例えば、重要ビットb7を、注目重要ビットとして、送信ビット列において、注目重要ビットb7を誤り検出対象ビットである第7ビットとする、単位ビット列と同一の8(=N)ビットのビット列が、非重要ビットの置換を行う対象の置換対象ビット列とされる。
図11Aの単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"については、送信ビット列において、注目重要ビットb7を、誤り検出対象ビットである第7ビットとする8ビットのビット列は、単位ビット列であり、したがって、単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"が、置換対象ビット列とされる。
さらに、誤り期待値算出部165では、置換対象ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"の中の非重要ビットb4及びb5を、注目ビットパターン"0,0"に置換して得られるビット列"0,1,1,0,0,1,0,1"が、置換ビット列として求められ、その置換ビット列の、注目重要ビットb7、つまり、誤り検出対象ビットである第7ビットが誤る誤り期待値が求められる。
いまの場合、置換ビット列は、"0,1,1,0,0,1,0,1"であり、すべてのビットが分かっているので、置換ビット列の注目重要ビットb7が誤る誤り期待値は、誤り率算出部164で求められるビット列"0,1,1,0,0,1,0,1"の誤り率C7(0,1,1,0,0,1,0,1)となる。
誤り期待値算出部165では、重要ビットのすべてを注目重要ビットとして、注目重要ビットが誤る誤り期待値が求められ、重要ビットすべてについての誤り期待値の積算値が、注目ビットパターン"0,0"についての誤り期待値として求められる。
すなわち、誤り期待値算出部165では、重要ビットb6及びb7のうちの、重要ビットb7を、注目重要ビットとして、その注目重要ビットb7についての誤り期待値が求められると、重要ビットb6及びb7のうちの、まだ、注目重要ビットとされていない重要ビットb6を、新たに、注目重要ビットとして、その注目重要ビットb6についての誤り期待値が、上述の場合と同様にして求められる。
具体的には、誤り期待値算出部165では、送信ビット列において、注目重要ビットb6を誤り検出対象ビットである第7ビットとする、単位ビット列と同一の8(=N)ビットのビット列が、非重要ビットの置換を行う対象の置換対象ビット列とされる。
図11Aの単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"については、送信ビット列において、注目重要ビットb6を、誤り検出対象ビットである第7ビットとする8ビットのビット列は、単位ビット列から、1ビットだけ過去にずれたビット列"b0,b1,b2,b3,b4,b5,b6,b7"="x,0,1,1,0,0,1,0"であり、したがって、ビット列"b0,b1,b2,b3,b4,b5,b6,b7"="x,0,1,1,0,0,1,0"が、置換対象ビット列とされる。
さらに、誤り期待値算出部165では、置換対象ビット列"b0,b1,b2,b3,b4,b5,b6,b7"="x,0,1,1,0,0,1,0"の中の非重要ビットb4及びb5を、注目ビットパターン"0,0"に置換して得られるビット列"x,0,1,1,0,0,1,0"が、置換ビット列として求められ、その置換ビット列の注目重要ビットb6、つまり、誤り検出対象ビットである第7ビットが誤る誤り期待値が求められる。
いまの場合、置換ビット列は、"x,0,1,1,0,0,1,0"であり、1つの不定値xを含んでいる。式(1)の場合と同様に、不定値xとして、"0"が発生する発生確率と"1"が発生する発生確率が等しいこととすると、注目重要ビットb6についての誤り期待値は、不定値xが"0"である場合の置換ビット列"0,0,1,1,0,0,1,0"の誤り率C7(0,0,1,1,0,0,1,0)と、不定値xが"1"である場合の置換ビット列"1,0,1,1,0,0,1,0"の誤り率C7(1,0,1,1,0,0,1,0)との平均値((C7(0,0,1,1,0,0,1,0)+C7(1,0,1,1,0,0,1,0))/2)となる。
以上のように、誤り期待値算出部165では、重要ビットb6及びb7のすべてを、注目重要ビットとして、注目重要ビットの誤り期待値が求められ、重要ビットb6及びb7すべてについての誤り期待値の積算値が、注目ビットパターン"0,0"についての誤り期待値、つまり、"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"の非重要ビットb4及びb5を、注目ビットパターン"0,0"に置換して得られるビット列"0,1,1,0,0,1,0,1"を送信したときに、重要ビットb6及びb7のうちのいずれかが誤る期待値として求められる。
ここで、図11Bは、注目ビットパターン"0,0"についての誤り期待値の求め方を示している。
上述したように、注目ビットパターン"0,0"については、重要ビットb6及びb7のうちの、重要ビットb7が注目重要ビットである場合には、その注目重要ビットb7についての誤り期待値は、置換ビット列"0,1,1,0,0,1,0,1"の誤り率C7(0,1,1,0,0,1,0,1)となる。
さらに、注目ビットパターン"0,0"については、重要ビットb6及びb7のうちの、重要ビットb6が注目重要ビットである場合には、その注目重要ビットb6についての誤り期待値は、置換ビット列"0,0,1,1,0,0,1,0"の誤り率C7(0,0,1,1,0,0,1,0)と、置換ビット列"1,0,1,1,0,0,1,0"の誤り率C7(1,0,1,1,0,0,1,0)との平均値((C7(0,0,1,1,0,0,1,0)+C7(1,0,1,1,0,0,1,0))/2)となる。
図11Bでは、置換ビット列"0,1,1,0,0,1,0,1"の誤り率C7(0,1,1,0,0,1,0,1)は、0.01883に、置換ビット列"0,0,1,1,0,0,1,0"の誤り率C7(0,0,1,1,0,0,1,0)は、0.00886に、置換ビット列"1,0,1,1,0,0,1,0"の誤り率C7(1,0,1,1,0,0,1,0)は、0.03407に、それぞれなっている。
したがって、重要ビットb7についての誤り期待値は、置換ビット列"0,1,1,0,0,1,0,1"の誤り率C7(0,1,1,0,0,1,0,1)である0.01883となる。
また、重要ビットb6についての誤り期待値は、置換ビット列"0,0,1,1,0,0,1,0"の誤り率C7(0,0,1,1,0,0,1,0)である0.00886と、置換ビット列"1,0,1,1,0,0,1,0"の誤り率C7(1,0,1,1,0,0,1,0)である0.03407との平均値(0.00886+0.03407)/2となる。
よって、注目ビットパターン"0,0"についての誤り期待値は、重要ビットb7についての誤り期待値0.01883と、重要ビットb6についての誤り期待値(0.00886+0.03407)/2とを積算した値である0.023348となる。
誤り期待値算出部165は、4つの変更ビットパターン"0,0","0,1","1,0"、及び"1,1"のすべてを、注目ビットパターンとして、4つの変更ビットパターン"0,0","0,1","1,0"、及び"1,1"それぞれについての誤り期待値を求める。
ここで、図11Cは、変更ビットパターン"0,1"についての誤り期待値の求め方を、図11Dは、変更ビットパターン"1,0"についての誤り期待値の求め方を、図11Eは、変更ビットパターン"1,1"についての誤り期待値の求め方を、それぞれ示している。
図11Cでは、変更ビットパターン"0,1"についての誤り期待値として、0.04244が、図11Dでは、変更ビットパターン"1,0"についての誤り期待値として、0.01761が、図11Eでは、変更ビットパターン"1,1"についての誤り期待値として、0.0137が、それぞれ求められている。
以上のようにして、誤り期待値算出部165において、変更ビットパターン"0,0","0,1","1,0"、及び"1,1"のすべてについて、誤り期待値が求められると、その変更ビットパターン"0,0","0,1","1,0"、及び"1,1"それぞれについての誤り期待値は、変換テーブル作成部166に供給される。
変換テーブル作成部166は、変更ビットパターン"0,0","0,1","1,0"、及び"1,1"のうちの、誤り期待値算出部165からの誤り期待値を最小にするビットパターンである最小誤り期待値ビットパターンを求める。
ここで、図11Fは、単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"="0,1,1,0,0,1,0,1"に対して求められた、変更ビットパターン"0,0","0,1","1,0"、及び"1,1"それぞれについての誤り期待値と、その誤り期待値の小さい順の順位を示している。
図11Fでは、変更ビットパターン"0,0","0,1","1,0"、及び"1,1"のうちの、変更ビットパターン"1,1"についての誤り期待値が0.0137で、最も小さく、したがって、変更ビットパターン"1,1"が、最小誤り期待値ビットパターンとして求められる。
変換テーブル作成部166は、"0,1,1,0,0,1,0,1"以外のビットパターンの単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"についても、同様にして、最小誤り期待値ビットパターンを求め、各ビットパターンの単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"と、その単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"のうちの非重要ビットb4及びb5を、最小誤り期待値ビットパターンに変換して得られる変換ビット列とを対応付けた変換テーブルを作成する。
図12は、変換テーブルの例を示している。
図12では、単位ビット列の各ビットパターン(Bit Pattern)と、最小誤り期待値ビットパターンとが対応付けられている。
ここで、図12において、Xは、いわゆるドントケア(don't care)を表している。
図12の変換テーブルにおいて、例えば、単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"のビットパターン"0,0,0,X,X,0,0,0"と、最小誤り期待値ビットパターン"1,1"とが対応付けられているエントリ(レコード)は、ビットパターン"0,0,0,X,X,0,0,0"の単位ビット列"b1,b2,b3,b4,b5,b6,b7,b8"と、その非重要ビットb4及びb5を、最小誤り期待値ビットパターン"1,1"に変換して得られる変換ビット列"0,0,0,1,1,0,0,0"とが対応付けられていることを表している。
したがって、ビットパターン"0,0,0,X,X,0,0,0"の単位ビット列、つまり、ビットパターン"0,0,0,0,0,0,0,0","0,0,0,0,1,0,0,0","0,0,0,1,0,0,0,0"、及び"0,0,0,1,1,0,0,0"の単位ビット列は、いずれも、変換ビット列"0,0,0,1,1,0,0,0"に変換される。
次に、図13は、図10の送信処理部101が、通信モードが通常モードの通信を行う場合の処理(送信処理)を説明するフローチャートである。
ここで、図10の送信処理部101、及び受信処理部112が行う通信の通信モードには、通常モードと学習モードとがある。学習モードでは、上述した変換テーブルが作成され、通常モードでは、その変換テーブルを用いて通信が行われる。
通常モードの送信処理では、シフトレジスタ151は、例えば、画像の画素値等を表す単位ビット列の並びである送信ビット列の1ビットが、信号処理部103(図4)から供給されるのを待って、ステップS11において、その送信ビット列の1ビットを記憶し、処理は、ステップS12に進む。
ステップS12では、変換部153が、シフトレジスタ151に、Nビット、すなわち、単位ビット列が記憶されたかどうかを判定する。
ステップS12において、シフトレジスタ151に、単位ビット列が、まだ、記憶されていないと判定された場合、すなわち、シフトレジスタ151に、Nビット未満のビットしか記憶されていない場合、信号処理部103(図3)からシフトレジスタ151に対して、送信ビット列の次の1ビットが供給されるのを待って、処理は、ステップS11に戻り、以下、同様の処理が繰り返される。
また、ステップS12において、シフトレジスタ151に、単位ビット列が記憶されたと判定された場合、処理は、ステップS13に進み、変換部153は、シフトレジスタ151に記憶された単位ビット列が、重要ビット及び非重要ビットを含むかどうかを判定する。
ここで、変換部153には、例えば、制御部104(図4)から、シフトレジスタ151に記憶された単位ビット列が、重要ビット及び非重要ビットを含むかどうかの情報が供給されるようになっており、変換部153は、その情報に基づいて、シフトレジスタ151に記憶された単位ビット列が、重要ビット及び非重要ビットを含むかどうかを判定する。
ステップS13において、シフトレジスタ151に記憶された単位ビット列が、重要ビット及び非重要ビットを含むと判定された場合、処理は、ステップS14に進み、変換部153は、変換テーブル記憶部152に記憶された変換テーブルに従い、シフトレジスタ151に記憶された単位ビット列を、変換ビット列に変換して、送信部155に供給し、処理は、ステップS15に進む。
一方、ステップS13において、シフトレジスタ151に記憶された単位ビット列が、重要ビット又は非重要ビットを含まないと判定された場合、変換部153は、シフトレジスタ151に記憶された単位ビット列を、そのまま、変換ビット列として、送信部155に供給し、処理は、ステップS14をスキップして、ステップS15に進む。
ステップS15では、送信部155は、変換部153からの変換ビット列を変調し、その変調によって得られる変調信号を、アンテナ37aから送信して、処理は、ステップS16に進む。
ステップS16では、変換部153は、シフトレジスタ151の記憶内容を初期化(クリア)して、処理は、ステップS17に進む。
ステップS17では、シフトレジスタ151が、まだ、送信していない送信ビット列があるかどうかを判定する。
ステップS17において、まだ、送信していない送信ビット列があると判定された場合、すなわち、信号処理部103(図3)からシフトレジスタ151に対して、送信ビット列の新たな1ビットが供給された場合、処理は、ステップS11に戻り、以下、同様の処理が繰り返される。
また、ステップS17において、まだ、送信していない送信ビット列がないと判定された場合、送信処理部101は、通常モードの送信処理を終了する。
次に、図14は、図10の受信処理部112が、通信モードが通常モードの通信を行う場合の処理(受信処理)を説明するフローチャートである。
通常モードの受信処理では、受信部161が、ステップS21において、送信処理部101から送信されてくる変調信号を、アンテナ36aを介して受信し、ベースバンドの受信信号に復調する。さらに、受信部161は、受信信号と、所定の閾値とを比較することにより、変換ビット列を再生し、信号処理部113(図4)に供給して、通常モードの受信処理を終了する。
次に、図15は、図10の送信処理部101が、通信モードが学習モードの通信を行う場合の処理(送信処理)を説明するフローチャートである。
ここで、上述したように、学習モードの通信では、変換テーブルが作成される。学習モードの通信は、例えば、信号処理装置31(図2)の電源がオンにされたときや、筐体32(図2)内において、基板34ないし37が外される、新たな基板が装着される、基板34ないし37の配置が変更される、等といった、筐体32内の通信環境の変化が生じたとき、通常モードでの通信において、受信処理部112で受信されるデータの誤り率が所定の閾値を越えたとき、ユーザからの指令があったとき、その他の必要なタイミングで行われる。
学習モードの送信処理では、送信部155は、ステップS41において、テストパターンの発生を要求するテストパターン発生コマンドを、受信処理部112に対して、アンテナ37aから送信して、処理は、ステップS42に進む。
ステップS42では、テストパターン発生部154は、例えば、所定の値をシード(seed)として、単位ビット列と同一のNビットの乱数を発生し、テストパターンとして、送信部155に供給して、処理は、ステップS43に進む。
ここで、テストパターン発生部154がシードとして用いる値は、上述のステップS41において、テストパターン発生コマンドに含めて、受信処理部112に送信される。受信処理部112(図10)では、テストパターン発生部163において、テストパターン発生コマンドに含まれている値をシードとして、テストパターンとしての乱数が発生され、これにより、送信処理部101のテストパターン発生部154が発生するテストパターンとの同期をとること、つまり、送信処理部101のテストパターン発生部154が発生するのと同一のテストパターンを、同一の順番で得ることができる。
ステップS43では、送信部155は、テストパターン発生部154からのテストパターンを変調し、その変調によって得られる変調信号を、アンテナ37aから送信して、処理は、ステップS44に進む。
ステップS44では、テストパターン発生部154は、テストパターンの発生を終了するかどうかを判定する。
ステップS44において、テストパターンの発生を終了しないと判定された場合、処理は、ステップS42に戻り、以下、同様の処理が繰り返される。
また、ステップS44において、テストパターンの発生を終了すると判定された場合、すなわち、例えば、変換テーブルの作成に十分な回数、又は時間だけ、テストパターンを発生した場合、処理は、ステップS45に進み、送信部155は、テストパターンの発生の終了を要求するテストパターン終了コマンドを、受信処理部112に対して、アンテナ37aから送信し、送信処理部101は、学習モードの送信処理を終了する。
次に、図16は、図10の受信処理部112が、通信モードが学習モードの通信を行う場合の処理(受信処理)を説明するフローチャートである。
学習モードの受信処理では、ステップS51において、作成部162が、受信部161がテストパターン発生コマンドを受信したかどうかを判定し、受信していないと判定した場合、処理は、ステップS51に戻る。
また、ステップS51において、受信部161がテストパターン発生コマンドを受信したと判定された場合、すなわち、受信部161から出力されたビット列、つまり、受信部161が、送信処理部101から送信されてくる変調信号を受信し、ベースバンドの受信信号に復調し、さらに、受信信号と、所定の閾値とを比較することにより再生したビット列が、テストパターン発生コマンドである場合、処理は、ステップS52に進み、テストパターン発生部163は、テストパターン発生コマンドに含まれる値をシードとして乱数を発生することにより、図15のステップS42で、送信処理部101のテストパターン発生部154が発生するのと同一のテストパターンを発生し、発生テストパターンとして、誤り率算出部164に供給する。
その後、送信処理部101からテストパターン(の変調信号)が送信されてくるのを待って、処理は、ステップS52からステップS53に進み、受信部161は、送信処理部101からのテストパターンを受信して、受信テストパターンとして、誤り率算出部164に供給し、処理は、ステップS54に進む。
ステップS54では、誤り率算出部164は、テストパターン発生部163からの発生テストパターンと、受信部161からの受信テストパターンとを比較することにより、テストパターン(受信テストパターン)の、誤り検出対象ビットである第kビット(1≦k≦N)が誤っているかどうかの誤り判定を行い、処理は、ステップS55に進む。
ステップS55では、誤り率算出部164は、テストパターン発生部163からの発生テストパターンについて、発生頻度、及び誤り回数を更新して、処理は、ステップS56に進む。
すなわち、ステップS55では、誤り率算出部164は、テストパターン発生部163からの発生テストパターンについて、その発生頻度を表す変数を1だけインクリメントする。さらに、ステップS55では、誤り率算出部164は、直前のステップS54での誤り判定の結果が、第kビットが誤っていることを表している場合、テストパターン発生部163からの発生テストパターンについて、その誤り回数を表す変数を1だけインクリメントする。
なお、発生頻度を表す変数、及び、誤り回数を表す変数は、学習モードの受信処理が開始されるときに初期化される(0にされる)。
ステップS56では、作成部162が、受信部161がテストパターン終了コマンドを受信したかどうかを判定し、受信していないと判定した場合、処理は、ステップS52に戻る。
また、ステップS56において、受信部161がテストパターン終了コマンドを受信したと判定された場合、すなわち、受信部161から出力されたビット列、つまり、受信部161が、送信処理部101から送信されてくる変調信号を受信し、ベースバンドの受信信号に復調し、さらに、受信信号と、所定の閾値とを比較することにより再生したビット列が、テストパターン終了コマンドである場合、処理は、ステップS57に進み、作成部162が、変換テーブルを作成する変換テーブル作成処理を行って、受信処理部112は、学習モードの受信処理を終了する。
なお、学習モードにおいて、機能ブロック46の受信処理部112で作成された変換テーブルは、例えば、低速な無線通信によって、又は、有線通信で、機能ブロック46から、信号ルータ45に送信され、信号ルータ45の送信処理部101において、変換テーブル記憶部152に記憶される。そして、送信処理部101では、変換テーブル記憶部152に記憶された変換テーブルが、機能ブロック46の受信処理部112との間の通常モードの通信に使用される。
また、学習モードの通信は、信号ルータ45(図4)の送信処理部101、及び機能ブロック46の受信処理部112の他、機能ブロック46の送信処理部111、及び信号ルータ45の受信処理部102の間でも行われ、受信処理部102において、変換テーブルが作成される。信号ルータ45の受信処理部102において作成された変換テーブルは、機能ブロック46に送信され、機能ブロック46の送信処理部111において、信号ルータ45の受信処理部102との間の通常モードの通信に使用される。
次に、図17を参照して、図16のステップS57で行われる変換テーブル作成処理について説明する。
変換テーブル作成処理では、ステップS71において、誤り率算出部164(図4)が、各ビットパターンの単位ビット列について、そのビットパターンに一致するテストパターンの誤り回数を、発生頻度で除算することにより、その除算値を、第kビットの誤り率として求め、誤り期待値算出部165に供給して、処理は、ステップS72に進む。
ステップS72では、誤り期待値算出部165は、Nビットの単位ビット列になり得るビットパターンの中から、また、注目ビット列としていないビットパターンの1つを、注目ビット列として選択して、処理は、ステップS73に進む。
ステップS73では、誤り期待値算出部165は、注目ビット列の非重要ビットが取り得る複数の変更ビットパターンのうちの、まだ、注目ビットパターンとしていないものの1つを、注目ビットパターンとして選択し、注目ビットパターンについての誤り期待値(を表す変数)、すなわち、注目ビット列の非重要ビットを注目ビットパターンに置換したビット列の重要ビットが誤る期待値を初期化して、処理は、ステップS74に進む。
ステップS74では、誤り期待値算出部165は、注目ビット列の重要ビットの中から、まだ、注目重要ビットとしていないものの1つを、注目重要ビットとして選択して、処理は、ステップS75に進む。
ステップS75では、誤り期待値算出部165は、図11で説明したように、送信ビット列において、注目重要ビットを誤り検出対象ビットである第kビットとするNビットを、非重要ビットの置換を行う対象の置換対象ビット列として、その置換対象ビット列のうちの、非重要ビットを注目ビットパターンに置換して得られる置換ビット列の誤り検出対象ビットである第kビットが誤る誤り期待値を、誤り率算出部164からの誤り率のうちの、注目重要ビットを第kビットとする単位ビット列の誤り率を用いて求めて、処理は、ステップS76に進む。
ステップS76では、誤り期待値算出部165は、図11で説明したように、注目ビットパターンについての誤り期待値に、直前のステップS75で求められた、置換ビット列の第kビットが誤る誤り期待値を積算することで、注目ビットパターンについての誤り期待値を更新し(新たな誤り期待値を求め)、処理は、ステップS77に進む。
ステップS77では、誤り期待値算出部165は、注目ビット列の重要ビットすべてを、注目重要ビットとしたかどうかを判定する。
ステップS77において、注目ビット列の重要ビットの中に、まだ、注目重要ビットとしていないものがあると判定された場合、処理は、ステップS74に戻り、注目ビット列の重要ビットの中から、まだ、注目重要ビットとしていないものの1つが、注目重要ビットとして新たに選択され、以下、同様の処理が繰り返される。
また、ステップS77において、注目ビット列の重要ビットすべてを、注目重要ビットとしたと判定された場合、すなわち、注目ビット列の重要ビットすべてを、注目重要ビットとして、各重要ビットが誤る誤り期待値が求められ、さらに、それらの誤り期待値の積算値、つまり、注目ビットパターンについての誤り期待値が求められた場合、処理は、ステップS78に進み、誤り期待値算出部165は、注目ビット列の非重要ビットが取り得る複数の変更ビットパターンのすべてを、注目ビットパターンとしたかどうかを判定する。
ステップS78において、複数の変更ビットパターンの中に、まだ、注目ビットパターンとしていないものがあると判定された場合、処理は、ステップS73に戻り、複数の変更ビットパターンのうちの、まだ、注目ビットパターンとしていないものの1つが、注目ビットパターンとして新たに選択され、以下、同様の処理が繰り返される。
また、ステップS78において、注目ビット列の非重要ビットが取り得る複数の変更ビットパターンのすべてを、注目ビットパターンとしたと判定された場合、すなわち、注目ビット列の非重要ビットが取り得る複数の変更ビットパターンそれぞれについての誤り期待値が求められた場合、誤り期待値算出部165は、その複数の変更ビットパターンそれぞれについての誤り期待値を、変換テーブル作成部166に供給して、処理は、ステップS79に進む。
ステップS79では、変換テーブル作成部166は、誤り期待値算出部165からの、注目ビット列に対して求められた、複数の変更ビットパターンそれぞれについての誤り期待値に基づき、最小誤り期待値ビットパターンを求め、処理は、ステップS80に進む。
すなわち、変換テーブル作成部166は、注目ビット列の非重要ビットが取り得る複数の変更ビットパターンから、誤り期待値算出部165からの誤り期待値が最小の変更ビットパターンを、最小誤り期待値ビットパターンとして選択する。
ステップS80では、変換テーブル作成部166は、注目ビット列の非重要ビットを、最小誤り期待値ビットパターンに変換して得られる変換ビット列を求め、その変換ビット列を、注目ビット列と対応付けて、変換テーブルに登録(記述)し、処理は、ステップS81に進む。
ステップS81では、誤り期待値算出部165は、Nビットの単位ビット列になり得るビットパターンのすべてを、注目ビット列としたかどうかを判定する。
ステップS81において、Nビットの単位ビット列になり得るビットパターンの中に、まだ、注目ビット列としていないものがあると判定された場合、処理は、ステップS72に戻り、Nビットの単位ビット列になり得るビットパターンの中から、また、注目ビット列としていないビットパターンの1つが、注目ビット列として新たに選択され、以下、同様の処理が繰り返される。
また、ステップS81において、Nビットの単位ビット列になり得るビットパターンのすべてを、注目ビット列としたと判定された場合、処理はリターンする。
以上のように、作成部162(図10)では、単位ビット列となり得るNビットのビットパターンであるテストパターンについて、第kビットが誤る誤り率を求め、単位ビット列のNビットのうちの、非重要ビットが取り得る複数の変更ビットパターンそれぞれについて、単位ビット列のNビットのうちの、重要ビットの誤り期待値を、単位ビット列のNビットのうちの重要ビットを第kビットとするテストパターンの誤り率を用いて求める。さらに、作成部162では、単位ビット列と、その単位ビット列のうちの非重要ビットを、複数の変更ビットパターンのうちの、最小誤り期待値ビットパターンに変換して得られる変換ビット列とを対応付けた変換テーブルを作成する。
そして、送信処理部101では、作成部162で作成された変換テーブルに従い、単位ビット列を、変換ビット列に変換して送信する。
したがって、非重要ビットを犠牲にはするが、単位ビット列が、マルチパスの環境下で、重要ビットに誤りが生じにくい変換ビット列に変換されて送信されるので、マルチパスに起因する重要ビットの誤りの発生を、容易に防止することができる。
すなわち、単位ビット列において、非重要ビットは変換されてしまうが、重要ビットをより確実に送信することが可能となる。これは、再送が出来ない環境における同期ビット列部分や画像の画素値のMSB部分などの、他のビットと比較して間違えたときの影響が大きいビットを、通信品質が悪い場合においても確実に送信したいときに、特に有用である。
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
そこで、図18は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク305やROM303に予め記録しておくことができる。
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(CompactDiscReadOnlyMemory),MO(MagnetoOptical)ディスク,DVD(DigitalVersatileDisc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体311に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体311は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体311からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(LocalAreaNetwork)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部308で受信し、内蔵するハードディスク305にインストールすることができる。
コンピュータは、CPU(CentralProcessingUnit)302を内蔵している。CPU302には、バス301を介して、入出力インタフェース310が接続されており、CPU302は、入出力インタフェース310を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部307が操作等されることにより指令が入力されると、それに従って、ROM(ReadOnlyMemory)303に格納されているプログラムを実行する。あるいは、また、CPU302は、ハードディスク305に格納されているプログラム、衛星若しくはネットワークから転送され、通信部308で受信されてハードディスク305にインストールされたプログラム、またはドライブ309に装着されたリムーバブル記録媒体311から読み出されてハードディスク305にインストールされたプログラムを、RAM(RandomAccessMemory)304にロードして実行する。これにより、CPU302は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU302は、その処理結果を、必要に応じて、例えば、入出力インタフェース310を介して、LCD(LiquidCrystalDisplay)やスピーカ等で構成される出力部306から出力、あるいは、通信部308から送信、さらには、ハードディスク305に記録等させる。
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
以上、本発明を、筐体32内で行われる通信に適用した場合について説明したが、本発明は、その他、例えば、マンションや一戸建て等で行われる無線LAN、電波の反射の仕方が時間によって変化しない電子機器内における基板間ハーネスやケーブルを介した通信、電信電話で用いられる通信ケーブルを介した通信、無線局が固定であるためにマルチパスが大きな変化をしないビル間無線通信などに代表される固定無線通信、その他の、通信環境がある程度の時間の間、一定であり、定常的な誤りが生じる通信に適用可能である。そして、本発明を、かかる通信に適用することにより、送信側が送信した信号の反射や回折などによって生じるマルチパス干渉や、ケーブルにおける反射による干渉のある通信路において、重要ビットに誤りが生じることを容易に防止することができ、これにより、重要ビットについての通信品質を向上させることができる。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
すなわち、本実施の形態では、画像(画素値)を送信の対象としたが、送信の対象とするビット列としては、画像の他、下位ビットに多少の犠牲を許容することができる、例えば、音声データ等を採用することができる。
また、本発明は、基板間の他、例えば、LSI間で行われる通信にも適用可能である。
さらに、本実施の形態では、変換テーブルを、受信処理部112で作成するようにしたが、変換テーブルは、送信処理部101で作成することが可能である。すなわち、例えば、受信処理部112から、誤り率算出部164が算出した誤り率、又は、誤り期待値算出部165が算出した誤り期待値を、送信処理部101に送信し、送信処理部101において、その誤り率、又は、誤り期待値を用いて、変換テーブルを作成することが可能である。