(57)【要約】【課題】変調された信号の復調処理における演算量を削減する復調装置、復調方法及びプログラムを提供すること【解決手段】本発明にかかる復調装置は、第１の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一又は反転したデータである第２の部分符号を含む第２の拡散符号とを有する複数の拡散符号を用いて変調された受信信号を復調する復調装置である。復調装置は、前記受信信号の一部と、前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出する第１の部分相関値算出部と、前記第１の部分相関値を用いて、前記受信信号の一部と前記第２の部分符号との相関値である第２の部分相関値を算出する第２の部分相関値算出部と、を備える。【選択図】図１
2014057157.tif 000002
【特許請求の範囲】
【請求項１】
複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調装置であって、
（ａ）前記複数の拡散符号は、
第１の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一又は反転したデータである第２の部分符号を含む第２の拡散符号とを有し、
（ｂ）前記復調装置は、
前記受信信号の一部と前記第１の拡散符号に含まれる前記第１の部分符号との相関値である第１の部分相関値を算出する第１の部分相関値算出部と、
前記第１の部分相関値を用いて、前記受信信号の一部と、前記第２の拡散符号に含まれる第２の部分符号との相関値である第２の部分相関値を算出する第２の部分相関値算出部と、
を備える復調装置。
【請求項２】
前記相関値の計算では、相関が基準と同じ又は前記基準よりも高い場合には第１の符号を、相関が前記基準よりも低い場合には第２の符号を付与し、
前記第２の部分符号は前記第１の部分符号が反転したデータであって、前記第１の部分相関値は前記第１の符号又は前記第２の符号が付与された数値を有する相関値であり、前記第２の部分相関値は前記第１の部分相関値とは異なる符号が付与された前記数値を有する相関値であって、
前記第２の部分相関値算出部は、前記第１の部分相関値に付与された符号を変更することにより前記第２の部分相関値を算出する、
請求項１に記載の復調装置。
【請求項３】
前記第１の符号及び前記第２の符号は、一方が正の符号、他方が負の符号である、
請求項２に記載の復調装置。
【請求項４】
前記第２の部分符号は前記第１の部分符号が反転したデータであり、
前記第２の部分相関値算出部は、前記受信信号の一部と前記第１の部分符号とが半分一致している場合の部分相関値及び前記第１の部分相関値を用いて、前記第２の部分相関値を算出する、
請求項１に記載の復調装置。
【請求項５】
複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調装置であって、
（ａ）前記複数の拡散符号は、
第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有し、
（ｂ）前記相関値の計算では、
相関が基準と同じ又は前記基準よりも高い場合には第１の符号を、相関が前記基準よりも低い場合には第２の符号を付与し、
（ｃ）前記復調装置は、
前記受信信号の一部と前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出する第１の部分相関値算出部と、
前記受信信号の一部と前記第１の拡散符号における前記第２の部分符号との相関値である第２の部分相関値を算出する第２の部分相関値算出部と、
前記受信信号の一部と前記第２の拡散符号における前記第３の部分符号との相関値である第３の部分相関値を算出する第３の部分相関値算出部と、
前記受信信号の一部と前記第２の拡散符号における前記第４の部分符号との相関値である第４の部分相関値を算出する第４の部分相関値算出部と、
前記第２の部分相関値に前記第１の符号が付与されている場合には、前記第１の拡散符号の方が前記第２の拡散符号よりも前記受信信号と高い相関を示し、前記第２の部分相関値に前記第２の符号が付与されている場合には、前記第２の拡散符号の方が前記第１の拡散符号よりも前記受信信号と高い相関を示すと判定する第１の判定部と、
を備える復調装置。
【請求項６】
少なくとも前記第３の部分相関値算出部が、前記第１の部分相関値を用いて前記第３の部分相関値を算出するか、又は前記第４の部分相関値算出部が、前記第２の部分相関値を用いて前記第４の部分相関値を算出する、
請求項５に記載の復調装置。
【請求項７】
前記第２の部分相関値は前記第１の符号又は前記第２の符号が付与された数値を有する相関値であり、前記第４の部分相関値は前記第１の部分相関値とは異なる符号が付与された前記数値を有する相関値であって、
前記第４の部分相関値算出部は、前記第２の部分相関値に付与された符号を変更することにより前記第４の部分相関値を算出する、
請求項５に記載の復調装置。
【請求項８】
前記第１の判定部は、
前記第２の部分相関値に前記第１の符号又は前記第２の符号のいずれが付与されているかを判定する符号判定部と、
前記符号判定部の判定結果に応じて、前記第２の部分相関値又は前記第４の部分相関値のうち、前記第１の拡散符号又は前記第２の拡散符号のうちで前記受信信号と高い相関を示す拡散符号と前記受信信号との相関値を構成する部分相関値を選択する選択部と、
前記選択部が選択した部分相関値に前記第１の部分相関値又は前記第３の部分相関値を加算することにより、前記第１の拡散符号又は前記第２の拡散符号のうちで前記受信信号と高い相関を示す拡散符号と前記受信信号との相関値を生成する加算部と、
を有する請求項５ないし７のいずれか一項に記載の復調装置。
【請求項９】
前記基準は、前記受信信号の一部と、前記第１の拡散符号に含まれる第１の部分符号とが半分一致している場合の前記第１の部分相関値である、
請求項５ないし８のいずれか一項に記載の復調装置。
【請求項１０】
前記第１の符号及び前記第２の符号は、一方が正の符号、他方が負の符号である、
請求項５ないし９のいずれか一項に記載の復調装置。
【請求項１１】
前記受信信号を送信する送信装置は、前記受信信号を第１の成分及び第２の成分に分割して送信し、
前記第１の部分相関値算出部は、前記第１の成分と前記第１の部分符号との相関値である前記第１の部分相関値を算出し、
前記第２の部分相関値算出部は、前記第２の成分と前記第２の部分符号との相関値である前記第２の部分相関値を算出し、
前記第３の部分相関値算出部は、前記第１の成分と前記第３の部分符号との相関値である前記第３の部分相関値を算出し、
前記第４の部分相関値算出部は、前記第２の成分と前記第４の部分符号との相関値である前記第４の部分相関値を算出する、
請求項５ないし１０のいずれか一項に記載の復調装置。
【請求項１２】
前記復調装置は、前記送信装置から前記受信信号をＺｉｇＢｅｅ（登録商標）の方式によって受信する、
請求項１１に記載の復調装置。
【請求項１３】
前記第１の判定部は、前記第１の拡散符号又は前記第２の拡散符号のうち前記受信信号と高い相関を示す拡散符号と前記受信信号との相関値を出力するとともに、前記第２の部分相関値に前記第１の符号又は前記第２の符号のいずれが付与されているかを判定した判定結果を第１の判定結果として出力し、
前記複数の拡散符号は、第５の部分符号と第６の部分符号を含む第３の拡散符号と、少なくとも前記第５の部分符号と同一のデータである第７の部分符号と前記第６の部分符号を反転したデータである第８の部分符号を含む第４の拡散符号とをさらに有し、
前記復調装置は、
前記受信信号の一部と前記第３の拡散符号における前記第５の部分符号との相関値である第５の部分相関値を算出する第５の部分相関値算出部と、
前記受信信号の一部と前記第３の拡散符号における前記第６の部分符号との相関値である第６の部分相関値を算出する第６の部分相関値算出部と、
前記受信信号の一部と前記第４の拡散符号における前記第７の部分符号との相関値である第７の部分相関値を算出する第７の部分相関値算出部と、
前記受信信号の一部と前記第４の拡散符号における前記第８の部分符号との相関値である第８の部分相関値を算出する第８の部分相関値算出部と、
前記第３の拡散符号又は前記第４の拡散符号のうち前記受信信号と高い相関を示す拡散符号と前記受信信号との相関値を出力するとともに、前記第６の部分相関値に前記第１の符号又は前記第２の符号のいずれが付与されているかを判定した判定結果を第２の判定結果として出力する第２の判定部と、
前記第１の判定部から出力された相関値及び前記第２の判定部から出力された相関値を比較していずれの相関度が高いかを判定し、相関度が高い相関値を識別する識別情報を生成する比較部と、
前記識別情報に基づき、前記第１の判定結果及び前記第２の判定結果のうち前記比較部において相関度が高いと判定された相関値に関する判定結果を選択する判定結果選択部と、
前記識別情報と、前記判定結果選択部が選択した前記判定結果とに基づいて、前記受信信号との相関が最も高い拡散符号を選択することにより前記受信信号を復調する復調部と、
をさらに備える請求項５ないし１０のいずれか一項に記載の復調装置。
【請求項１４】
前記受信信号を送信する送信装置は、前記受信信号を第１の成分及び第２の成分に分割して送信し、
前記第１の部分相関値算出部は、前記第１の成分と前記第１の部分符号との相関値である前記第１の部分相関値を算出し、
前記第２の部分相関値算出部は、前記第２の成分と前記第２の部分符号との相関値である前記第２の部分相関値を算出し、
前記第３の部分相関値算出部は、前記第１の成分と前記第３の部分符号との相関値である前記第３の部分相関値を算出し、
前記第４の部分相関値算出部は、前記第２の成分と前記第４の部分符号との相関値である前記第４の部分相関値を算出し、
前記第５の部分相関値算出部は、前記第１の成分及び前記第２の成分のうちいずれかの成分と前記第５の部分符号との相関値である前記第５の部分相関値を算出し、
前記第６の部分相関値算出部は、前記第１の成分及び前記第２の成分のうち前記第５の部分相関値を生成しない方の成分と前記第６の部分符号との相関値である前記第６の部分相関値を算出し、
前記第７の部分相関値算出部は、前記第１の成分及び前記第２の成分のうち前記第５の部分相関値を生成する方の成分と前記第７の部分符号との相関値である前記第７の部分相関値を算出し、
前記第８の部分相関値算出部は、前記第１の成分及び前記第２の成分のうち前記第７の部分相関値を生成しない方の成分と前記第８の部分符号との相関値である前記第８の部分相関値を算出する、
請求項１３に記載の復調装置。
【請求項１５】
前記復調装置は、前記送信装置から前記受信信号をＺｉｇＢｅｅの方式によって受信する、
請求項１４に記載の復調装置。
【請求項１６】
前記比較部は、前記識別情報として、相関度が高いと判定された前記相関値を生成する拡散符号に対応する送信データの下位ビット３桁のデータを出力し、
前記判定結果選択部は、前記判定結果として、前記比較部において相関度が高いと判定された前記相関値を生成する拡散符号に対応する送信データの上位ビット１桁のデータを出力し、
前記復調部は、前記上位ビット１桁のデータと前記下位ビット３桁のデータとを合成することにより、前記受信信号との相関が最も高い拡散符号に対応するビット４桁の送信データを生成し、前記受信信号を復調する、
請求項１５に記載の復調装置。
【請求項１７】
複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調装置であって、
（ａ）前記複数の拡散符号は、
第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有し、
（ｂ）前記復調装置は、
前記受信信号の一部と、前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出する第１の部分相関値算出部と、
前記受信信号の一部と、前記第１の拡散符号における前記第２の部分符号との相関値である第２の部分相関値を算出する第２の部分相関値算出部と、
前記受信信号の一部と前記第２の拡散符号における前記第３の部分符号との相関値である第３の部分相関値を算出する第３の部分相関値算出部と、
前記受信信号の一部と前記第２の拡散符号における前記第４の部分符号との相関値である第４の部分相関値を算出する第４の部分相関値算出部と、
前記第２の部分相関値の方が前記第４の部分相関値よりも相関が高い場合には、前記第１の拡散符号の方が前記第２の拡散符号よりも前記受信信号と高い相関を示し、前記第４の部分相関値の方が前記第２の部分相関値よりも相関が高い場合には、前記第２の拡散符号の方が前記第１の拡散符号よりも前記受信信号と高い相関を示すと判定する判定部と、
を備える復調装置。
【請求項１８】
第１の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一又は反転したデータである第２の部分符号を含む第２の拡散符号とを有する複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調方法であって、
前記受信信号の一部と、前記第１の拡散符号に含まれる前記第１の部分符号との相関値である第１の部分相関値を算出するステップと、
前記第１の部分相関値を用いて、前記受信信号の一部と、前記第２の拡散符号に含まれる前記第２の部分符号との相関値である第２の部分相関値を算出するステップと、
を備える復調方法。
【請求項１９】
第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有する複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調方法であって、
前記受信信号の一部と、前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出するステップと、
前記受信信号の一部と、前記第１の拡散符号における前記第２の部分符号との相関値である第２の部分相関値を算出し、相関が基準と同じ又は前記基準よりも高い場合には第１の符号を、相関が前記基準よりも低い場合には第２の符号を付与するステップと、
前記受信信号の一部と前記第２の拡散符号における前記第３の部分符号との相関値である第３の部分相関値を算出するステップと、
前記受信信号の一部と前記第２の拡散符号における前記第４の部分符号との相関値である第４の部分相関値を算出するステップと、
前記第２の部分相関値に前記第１の符号が付与されている場合には、前記第１の拡散符号の方が前記第２の拡散符号よりも前記受信信号と高い相関度を示し、前記第２の部分相関値に前記第２の符号が付与されている場合には、前記第２の拡散符号の方が前記第１の拡散符号よりも前記受信信号と高い相関度を示すと判定するステップと、
を備える復調方法。
【請求項２０】
第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有する複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調方法であって、
前記受信信号の一部と、前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出するステップと、
前記受信信号の一部と、前記第１の拡散符号における前記第２の部分符号との相関値である第２の部分相関値を算出するステップと、
前記受信信号の一部と前記第２の拡散符号における前記第３の部分符号との相関値である第３の部分相関値を算出するステップと、
前記受信信号の一部と前記第２の拡散符号における前記第４の部分符号との相関値である第４の部分相関値を算出するステップと、
前記第２の部分相関値の方が前記第４の部分相関値よりも相関が高い場合には、前記第１の拡散符号の方が前記第２の拡散符号よりも前記受信信号と高い相関を示し、前記第４の部分相関値の方が前記第２の部分相関値よりも相関が高い場合には、前記第２の拡散符号の方が前記第１の拡散符号よりも前記受信信号と高い相関を示すと判定するステップと、
を備える復調方法。
【請求項２１】
請求項１８に記載の復調方法を復調装置に実行させるためのプログラム。
【請求項２２】
請求項１９に記載の復調方法を復調装置に実行させるためのプログラム。
【請求項２３】
請求項２０に記載の復調方法を復調装置に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、変調信号を復調する復調装置、復調方法及びプログラムに関する。
【背景技術】
【０００２】
ＺｉｇＢｅｅ（登録商標）は、低電力で動作する近距離無線通信システムであり、通信プロトコルの物理層にはＩＥＥＥ８０２．１５．４規格の通信変調方式を用いている。ＩＥＥＥ８０２．１５．４規格では、直接スペクトラム拡散(ＤＳＳＳ;Direct Sequence Spectrum Spreading)による変調が行われる。
【０００３】
以下、図９Ａ、図９Ｂを用いて、ＺｉｇＢｅｅにおいて使用される変調装置及び復調装置の構成について説明する。
【０００４】
図９Ａは、送信側における変調装置の構成を示す図である。変調装置６３は、拡散部６０、シリアル／パラレル変換部６１（図９ＡではＳ／Ｐと表記）及びＯＱＰＳＫ（Offset Quadrature Phase Shift Keying）変調部６２を備える。
【０００５】
拡散部６０は、長さ４ビットの送信データ６００（＝｛ｂ０，ｂ１，ｂ２，ｂ３｝）を、長さ３２チップの拡散符号６０１（＝｛ｃ０，ｃ１，・・・，ｃ３１｝）に変換して出力する。
【０００６】
図７は、送信データ｛ｂ０，ｂ１，ｂ２，ｂ３｝と拡散符号｛ｃ０，ｃ１，・・・，ｃ３１｝の対応関係を示す表である。図６において、ｎ（＝０，１，・・・，１５）は符号番号であり、４ビットの送信データ｛ｂ３，ｂ２，ｂ１，ｂ０｝を２進数の正の整数とみなした値を１０進数で表した値に相当する。Ｃｎは符号番号ｎに対応する拡散符号を表す。
【０００７】
図９Ａに戻り、変調装置６３の説明を続ける。拡散部６０から出力された拡散符号６０１は、シリアル／パラレル変換部６１に入力される。シリアル／パラレル変換部６１は、拡散符号６０１を、奇数番目のチップ６０２と偶数番目のチップ６０３に分割して出力する。ＯＱＰＳＫ変調部６２は、入力された奇数番目のチップ６０２をＩ成分、偶数番目のチップ６０３をＱ成分としてＯＱＰＳＫ変調し、送信信号６０４として送信する。
【０００８】
なお、ＱＰＳＫ変調は、２ビットの２進数の信号において「０」を「＋１」に、「１」を「−１」に置き換える変調方法である。そして、ＯＱＰＳＫ変調は、ＱＰＳＫ変調の同相成分（Ｉ成分）と直交成分（Ｑ成分）のタイミングを１／２シンボルずらした変調方式である。
【０００９】
図９Ｂは、受信側における復調装置の構成を示す図である。復調装置７４は、ＯＱＰＳＫ復調部７０、パラレル／シリアル変換部７１（図９ＢではＰ／Ｓと表記）、相関部７２−１〜７２−１６及び比較部７３を備える。
【００１０】
ＯＱＰＳＫ復調部７０は、受信信号７００をＯＱＰＳＫ復調し、Ｉ成分の受信信号７０１とＱ成分の受信信号７０２を出力する。パラレル／シリアル変換部７１は、Ｉ成分の受信信号７０１が奇数番目に、Ｑ成分の受信信号７０２が偶数番目になるように並び替えて、３２チップの受信符号７０３（＝｛ｒ０，ｒ１，・・・，ｒ３１｝）として出力する。
【００１１】
相関部７２−１は受信符号７０３を第１の拡散符号Ｃ０で逆拡散し、第１の相関値７０４−１を出力する。相関部７２−２は受信符号７０３を第２の拡散符号Ｃ１で逆拡散し、第２の相関値７０４−２を出力する。同様に相関部７２−３〜７２−１６は受信符号７０３を第３の拡散符号Ｃ２〜第１６の拡散符号Ｃ１５で逆拡散し、それぞれ第３の相関値７０４−２〜第１６の相関値７０４−１６を出力する。
【００１２】
比較部７３は相関値７０４−１〜７０４−１６のうち、最大の振幅を有する相関値を検出し、その相関値に対応する符号番号を２進数データ化した値を復調データ７０５として出力する。
【００１３】
関連する技術として、特許文献１では、直接スペクトラム拡散方式のスペクトラム信号の同期捕捉方法と回路が開示されている。特許文献１の復調装置においては、長さ３２チップの８種類の拡散符号に対応して８個の相関器を設け、各相関器においてチップに応じた回数（３２回）の演算を実行している。
【００１４】
特許文献２では、関連技術として、ＺｉｇＢｅｅ受信機に適用されるＯＱＰＳＫ復調器のタイミング推定器が開示されている。特許文献２においては、受信信号のＩ成分の信号（受信信号の虚数部）と拡散符号の奇数番目のチップ（基準シンボルの虚数部）との相関値と、受信信号のＱ成分の信号（受信信号の実数部）と拡散符号の偶数番目のチップ（基準シンボルの実数部）との相関値とを加算することにより、拡散符号の相関値を求める方法が示されている。
【００１５】
特許文献３では、受信信号と拡散符号との相関度を求め、相関度に対する閾値を用いてシンボルを判定する技術が開示されている。特許文献３の復調装置においては、長さ３２チップの１６種類の拡散符号に対応して１６個の相関器を設け、各相関器において３２回の演算を実行している。
【００１６】
特許文献４では、相関演算を完全に実現できる相関器が開示されている。この相関器には、位相の回転処理をすることで成分別に受信信号の復調処理を実行する位相回転器が設けられている。そのため、マッチドフィルタ中の加算器の数を削減することができる。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特許第４３１５８８６号公報
【特許文献２】特許第４４８６９５０号公報
【特許文献３】特開２００９−１５２９７９号公報
【特許文献４】特開２００２−１１８４９５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１８】
ＺｉｇＢｅｅによる復調においては、必要な演算量が大きいという課題があった。図９Ｂに示された復調装置は、長さ３２チップの１６種類の拡散符号全てを用いて受信信号を逆拡散しているため、相関値を生成するために必要な演算数は５１２回となる。さらに、その演算結果である１６個の相関値の振幅を比較するため、１６回の振幅算出演算と１５回の比較演算が必要となった。
【００１９】
特許文献１の手法においても、長さ３２チップの８種類の拡散符号全てを用いて受信信号を逆拡散しているため、２５６回の相関演算が必要となってしまい、相関演算の削減が図れない。
【００２０】
特許文献２の方法では、拡散符号をＩ成分とＱ成分に分割して、長さが１／２の拡散符号で相関値を求めている。そのため、それぞれの拡散符号に関しては、チップの長さが１／２になるので、相関値を生成するために必要な演算量が１／２になる。しかしながら、ＩとＱとで拡散符号の数が２倍必要となるため、相関値を生成するために必要な演算量の合計値は変わらない。また、生成される相関値も１６個であり、比較演算に必要な計算量も削減されてはいなかった。
【００２１】
特許文献３においても、特許文献１の手法と同様、受信信号と拡散符号との相関度を求めるための相関演算は５１２回必要となる。
【００２２】
特許文献４においては、比較演算を実行する処理については何ら記載されていない。従って、特許文献４に開示された技術によって比較演算における演算量の回数を削減することはできない。
【００２３】
本発明は、このような問題点を解決するためになされたものであり、変調された信号の復調処理における演算量を削減する復調装置、復調方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２４】
本発明の第１の態様は、復調装置を含む。この復調装置は、複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する。ここで、
（ａ）前記複数の拡散符号は、第１の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一又は反転したデータである第２の部分符号を含む第２の拡散符号とを有する。
そして、
（ｂ）前記復調装置は、第１の部分相関値算出部及び第２の部分相関値算出部を備える。前記第１の部分相関値算出部は、前記受信信号の一部と、前記第１の拡散符号に含まれる第１の部分符号との相関値である第１の部分相関値を算出する。前記第２の部分相関値算出部は、前記第１の部分相関値を用いて、前記受信信号の一部と、前記第２の拡散符号に含まれる第２の部分符号との相関値である第２の部分相関値を算出する。
【００２５】
本発明の第２の態様は、復調装置を含む。この復調装置は、複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調装置である。ここで、
（ａ）前記複数の拡散符号は、
第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有する。さらに、
（ｂ）前記復調装置は、前記相関値の計算では、相関が基準と同じ又は前記基準よりも高い場合には第１の符号を、相関が前記基準よりも低い場合には第２の符号を付与する。
（ｃ）前記復調装置は、第１の部分相関値算出部、第２の部分相関値算出部、第３の部分相関値算出部、第４の部分相関値算出部及び判定部を備える。前記第１の部分相関値算出部は、前記受信信号の一部と、前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出する。前記第２の部分相関値算出部は、前記受信信号の一部と、前記第１の拡散符号における前記第２の部分符号との相関値である第２の部分相関値を算出する。前記第３の部分相関値算出部は、前記受信信号の一部と前記第２の拡散符号における前記第３の部分符号との相関値である第３の部分相関値を算出する。前記第４の部分相関値算出部は、前記受信信号の一部と前記第２の拡散符号における前記第４の部分符号との相関値である第４の部分相関値を算出する。前記判定部は、前記第２の部分相関値に前記第１の符号が付与されている場合には、前記第１の拡散符号の方が前記第２の拡散符号よりも前記受信信号と高い相関を示し、前記第２の部分相関値に前記第２の符号が付与されている場合には、前記第２の拡散符号の方が前記第１の拡散符号よりも前記受信信号と高い相関を示すと判定する。
【００２６】
本発明の第３の態様は、復調装置を含む。この復調装置は、複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調装置である。ここで、
（ａ）前記複数の拡散符号は、
第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有する。そして、
（ｂ）前記復調装置は、第１の部分相関値算出部、第２の部分相関値算出部、第３の部分相関値算出部、第４の部分相関値算出部及び判定部を備える。前記第１の部分相関値算出部は、前記受信信号の一部と、前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出する。前記第２の部分相関値算出部は、前記受信信号の一部と、前記第１の拡散符号における前記第２の部分符号との相関値である第２の部分相関値を算出する。前記第３の部分相関値算出部は、前記受信信号の一部と前記第２の拡散符号における前記第３の部分符号との相関値である第３の部分相関値を算出する。前記第４の部分相関値算出部は、前記受信信号の一部と前記第２の拡散符号における前記第４の部分符号との相関値である第４の部分相関値を算出する。前記判定部は、前記第２の部分相関値の方が前記第４の部分相関値よりも相関が高い場合には、前記第１の拡散符号の方が前記第２の拡散符号よりも前記受信信号と高い相関を示し、前記第４の部分相関値の方が前記第２の部分相関値よりも相関が高い場合には、前記第２の拡散符号の方が前記第１の拡散符号よりも前記受信信号と高い相関を示すと判定する。
【００２７】
本発明の第４の態様は、復調方法を含む。この復調方法は、複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関の最も大きい拡散符号を選択することにより復調する復調方法である。なお、前記複数の拡散符号は、第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有する。ここで、復調方法は、以下のステップ（ａ）及び（ｂ）を含む。
（ａ）前記受信信号の一部と、前記第１の拡散符号に含まれる第１の部分符号との相関値である第１の部分相関値を算出すること、及び
（ｂ）前記第１の部分相関値を用いて、前記受信信号の一部と、前記第２の拡散符号に含まれる第２の部分符号との相関値である第２の部分相関値を算出すること。
【００２８】
本発明の第５の態様は、復調方法を含む。この復調方法は、複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調方法である。ここで、前記複数の拡散符号は、第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有する。ここで、復調方法は、以下のステップ（ａ）〜（ｅ）を含む。
（ａ）前記受信信号の一部と、前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出すること、
（ｂ）前記受信信号の一部と、前記第１の拡散符号における前記第２の部分符号との相関値である第２の部分相関値を算出し、相関が基準と同じ又は前記基準よりも高い場合には第１の符号を、相関が前記基準よりも低い場合には第２の符号を付与すること、
（ｃ）前記受信信号の一部と前記第２の拡散符号における前記第３の部分符号との相関値である第３の部分相関値を算出すること、
（ｄ）前記受信信号の一部と前記第２の拡散符号における前記第４の部分符号との相関値である第４の部分相関値を算出すること、及び
（ｅ）前記第２の部分相関値に前記第１の符号が付与されている場合には、前記第１の拡散符号の方が前記第２の拡散符号よりも前記受信信号と高い相関度を示し、前記第２の部分相関値に前記第２の符号が付与されている場合には、前記第２の拡散符号の方が前記第１の拡散符号よりも前記受信信号と高い相関度を示すと判定すること。
【００２９】
本発明の第６の態様は、復調方法を含む。この復調方法は、複数の拡散符号を用いて変調された受信信号を、当該拡散符号が分割された部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより復調する復調方法である。ここで、前記複数の拡散符号は、第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号を含む第２の拡散符号とを有する。ここで、復調方法は、以下のステップ（ａ）〜（ｅ）を含む。
（ａ）前記受信信号の一部と、前記第１の拡散符号における前記第１の部分符号との相関値である第１の部分相関値を算出すること、
（ｂ）前記受信信号の一部と、前記第１の拡散符号における前記第２の部分符号との相関値である第２の部分相関値を算出すること、
（ｃ）前記受信信号の一部と前記第２の拡散符号における前記第３の部分符号との相関値である第３の部分相関値を算出すること、
（ｄ）前記受信信号の一部と前記第２の拡散符号における前記第４の部分符号との相関値である第４の部分相関値を算出すること、及び
（ｅ）前記第２の部分相関値の方が前記第４の部分相関値よりも相関が高い場合には、前記第１の拡散符号の方が前記第２の拡散符号よりも前記受信信号と高い相関を示し、前記第４の部分相関値の方が前記第２の部分相関値よりも相関が高い場合には、前記第２の拡散符号の方が前記第１の拡散符号よりも前記受信信号と高い相関を示すと判定すること。
【００３０】
本発明の第７の態様は、コンピュータプログラムを含む。当該プログラムは、上述した本発明の第４の態様に係る方法を復調装置に行わせるためのプログラムである。
【００３１】
本発明の第８の態様は、コンピュータプログラムを含む。当該プログラムは、上述した本発明の第５の態様に係る方法を復調装置に行わせるためのプログラムである。
【００３２】
本発明の第９の態様は、コンピュータプログラムを含む。当該プログラムは、上述した本発明の第６の態様に係る方法を復調装置に行わせるためのプログラムである。
【発明の効果】
【００３３】
本発明により、変調された信号の復調処理における演算量を削減する復調装置、復調方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００３４】
【図１】実施の形態１にかかる復調装置の構成例を示すブロック図である。
【図２】実施の形態２にかかる復調装置の構成例を示すブロック図である。
【図３】実施の形態３にかかる復調装置の構成例を示すブロック図である。
【図４】実施の形態４にかかる復調装置の構成例を示すブロック図である。
【図５】実施の形態４にかかる加減算部の構成例を示すブロック図である。
【図６】実施の形態５にかかる復調装置の構成例を示すブロック図である。
【図７】ＺｉｇＢｅｅにおける送信データと拡散符号の対応関係を示す表である。
【図８】ＺｉｇＢｅｅにおける送信データと拡散符号のＩ成分及びＱ成分の対応関係を示す表である。
【図９Ａ】関連技術にかかる変調装置の構成を示すブロック図である。
【図９Ｂ】関連技術にかかる復調装置の構成を示すブロック図である。
【発明を実施するための形態】
【００３５】
以下、本願発明に係る実施の形態を、図面を参照して説明する。なお、各図面において、説明の明確化のため、適宜、省略及び簡略化がなされている。また、各図面において同一要素には同一の符号が付されており、重複説明は適宜省略される。
【００３６】
様々な処理を行う機能ブロックとして以下の図面に記載される復調装置の各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００３７】
実施の形態１
図１は、実施の形態１にかかる復調装置の一例を示す構成図である。復調装置３２は、部分相関値算出部３０（第１の部分相関値算出部）及び部分相関値算出部３１（第２の部分相関値算出部）を備える。
【００３８】
復調装置３２は、受信信号３００の復調処理をする装置である。ここで受信信号３００は、複数の拡散符号を用いて変調されている。複数の拡散符号は、第１の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一又は反転したデータである第２の部分符号を含む第２の拡散符号とを有する。各拡散符号は、複数の部分符号に分割することができる。復調装置３２は、部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより、受信信号３００を復調する。
【００３９】
図１では、第１の部分符号はＡ、第２の部分符号はＡと同一、又はＡを反転したデータ（以降、明細書ではＡ'として表記）として表されている。
【００４０】
部分相関値算出部３０は、受信信号３００の一部と、第１の拡散符号に含まれる第１の部分符号との相関値である第１の部分相関値３０１（ＦＡ）を算出する。
【００４１】
部分相関値算出部３１は、第１の部分相関値３０１を用いて、前記受信信号の一部と、前記第２の拡散符号に含まれる第２の部分符号との相関値である第２の部分相関値３０２（ＦＡ又はＦＡ'）を算出する。
【００４２】
以上の処理を実行することにより、復調装置３２は、算出した第１の部分相関値を用いて、受信信号３００と第１の拡散符号との相関値を求めることができる。そして、復調装置３２は、算出した第２の部分相関値を用いて、受信信号３００と第２の拡散符号との相関値を求めることができる。
【００４３】
ここで、復調装置３２は、第２の部分相関値を、算出した第１の部分相関値を用いて求めている。従って、復調装置３２が、第１の部分相関値を用いずに第２の部分相関値を直接算出する場合に比較して、相関値計算に必要な演算量を削減することができる。
【００４４】
実施の形態２
図２は、実施の形態２にかかる復調装置の一例を示す構成図である。復調装置４５は、部分相関値算出部４０（第１の部分相関値算出部）、部分相関値算出部４１（第２の部分相関値算出部）、部分相関値算出部４２（第３の部分相関値算出部）、部分相関値算出部４３（第４の部分相関値算出部）及び判定部４４を備える。
【００４５】
復調装置４５は、受信信号４００の復調処理をする装置である。ここで受信信号４００は、複数の拡散符号を用いて変調されている。複数の拡散符号は、第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号とを有する。各拡散符号は、複数の部分符号に分割することができる。復調装置４５は、部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関が最も高い拡散符号を選択することにより、受信信号４００を復調する。
【００４６】
図２では、第１の部分符号はＡ、第２の部分符号はＢ、第３の部分符号はＡ、第４の部分符号はＢを反転したデータ（以降、明細書ではＢ'として表記）として表されている。
【００４７】
復調装置４５は、前記相関値の計算において、相関が基準と同じ又は前記基準よりも高い場合には第１の符号を、相関が前記基準よりも低い場合には第２の符号を付与する。第１の符号、第２の符号は、例えば一方が正（プラス）の符号であり、他方が負（マイナス）の符号である。
【００４８】
部分相関値算出部４０は、受信信号４００の一部と、第１の拡散符号における第１の部分符号との相関値である部分相関値４０１（ＦＡ；第１の部分相関値）を算出する。
【００４９】
部分相関値算出部４１は、受信信号４００の一部と、第１の拡散符号における第２の部分符号との相関値である部分相関値４０２（ＦＢ；第２の部分相関値）を算出する。
【００５０】
部分相関値算出部４２は、受信信号４００の一部と、第２の拡散符号における第３の部分符号との相関値である部分相関値（ＦＡ；第３の部分相関値）を算出する。
【００５１】
部分相関値算出部４３は、受信信号４００の一部と、第２の拡散符号における第４の部分符号との相関値である部分相関値（ＦＢ'；第４の部分相関値）を算出する。
【００５２】
ここで、部分相関値算出部４２は、部分相関値算出部４０が算出したＦＡを用いて、部分相関値（ＦＡ）を算出している。例えば、部分相関値算出部４２は、部分相関値算出部４０が出力したＦＡをそのまま出力してもよい。同様に、部分相関値算出部４３は、部分相関値算出部４１が算出したＦＢを用いて、部分相関値（ＦＢ'）を算出している。
【００５３】
部分相関値算出部４１は、データ４０３（ＦＡのデータ及びＦＢのデータ）を判定部４４に出力する。なお、部分相関値算出部４１は、ＦＡ、ＦＢについて加算等を実行せず、それぞれ単独で（別々に）判定部４４に出力する。
【００５４】
部分相関値算出部４３は、データ４０４（ＦＡのデータ及びＦＢ'のデータ）を判定部４４に出力する。なお、部分相関値算出部４３は、ＦＡ、ＦＢ'について加算等を実行せず、それぞれ単独で（別々に）判定部４４に出力する。
【００５５】
なお、データ４０３におけるＦＡのデータは部分相関値算出部４１ではなく、部分相関値算出部４０から出力されてもよい。これはデータ４０４についても同様である。
【００５６】
判定部４４は、ＦＢに第１の符号が付与されているか、第２の符号が付与されているかを判定する。判定部４４は、ＦＢに第１の符号が付与されている場合には、第１の拡散符号の方が第２の拡散符号よりも受信信号４００と高い相関を示すと判定する。判定部４４は、ＦＢに第２の符号が付与されている場合には、第２の拡散符号の方が第１の拡散符号よりも受信信号４００と高い相関を示すと判定する。
【００５７】
この理由は、以下の通りである。受信信号４００と第１の拡散符号との相関値は、ＦＡとＦＢとを加算することにより求められる。受信信号４００と第２の拡散符号との相関値は、ＦＡとＦＢ'とを加算することにより求められる。
【００５８】
以上から、ＦＡとＦＢとが同じ符号である場合には、ＦＡにＦＢを加算した値の方が、ＦＡにＦＢ'を加算した値よりも高い相関を示す。つまり、受信信号４００と第１の拡散符号との相関値の方が、受信信号４００と第２の拡散符号との相関値よりも高い相関を示すと判定できる。
【００５９】
逆に、ＦＡとＦＢとが異なる符号である場合には、ＦＡにＦＢ'を加算した値の方が、ＦＡにＦＢを加算した値よりも高い相関を示す。つまり、受信信号４００と第２の拡散符号との相関値の方が、受信信号４００と第１の拡散符号との相関値よりも高い相関を示すと判定できる。
【００６０】
受信信号４００と第１の拡散符号との相関値と、受信信号４００と第２の拡散符号との相関値については、以上の関係がある。そのため、復調装置は、ＦＢの符号について判定することにより、受信信号４００と第１の拡散符号との相関値及び受信信号４００と第２の拡散符号との相関値を直接計算することなく、第１の拡散符号と第２の拡散符号の中で受信信号４００と高い相関を示す拡散符号を選択することができる。従って、相関値の比較計算に必要な演算量を削減することができる。この場合、判定部４４は、第１の拡散符号及び第２の拡散符号のうち、受信信号と相関が高いと判定した拡散符号を２進数データ化した値をデータ４０５として出力する。
【００６１】
部分相関値算出部４２は、部分相関値算出部４０が算出した第１の部分相関値（ＦＡ）を用いて、第３の部分相関値を算出している。この処理を実行することにより、部分相関値算出部４２が直接第４の部分相関値を算出する場合に比較して、相関値計算に必要な演算量を削減することができる。部分相関値算出部４３についても、部分相関値算出部４１が算出した第２の部分相関値（ＦＢ）を用いて、第４の部分相関値を算出していることにより、同様の効果を奏する。
【００６２】
なお、部分相関値算出部４２又は部分相関値算出部４３の一方の算出部が上述の処理を実行してもよい。ここで他方の算出部は、受信信号４００の一部と部分符号との相関値に基づいて、部分相関値算出部４０又は部分相関値算出部４１が算出した部分相関値を用いずに、部分相関値を直接計算する。あるいは、部分相関値算出部４２及び部分相関値算出部４３の両方とも、部分相関値を直接計算してもよい。このようにしても、受信信号４００と第１の拡散符号との相関値及び受信信号４００と第２の拡散符号との相関値を直接計算することなく、第１の拡散符号と第２の拡散符号の中で受信信号４００と高い相関を示す拡散符号を選択することができる。ただし、第１の部分相関値を用いて第３の部分相関値を算出するか、又は第２の部分相関値を用いて第４の部分相関値を算出することにより、演算量をさらに削減することができる。
【００６３】
なお、部分相関値算出部４１は、ＦＡのデータ、ＦＢのデータだけでなく、ＦＡにＦＢを加算した値（ＦＡ＋ＦＢ）のデータを算出し、判定部４４に出力してもよい。このとき、部分相関値算出部４３は、ＦＡのデータ、ＦＢ'のデータだけでなく、ＦＡにＦＢ'を加算した値（ＦＡ＋ＦＢ'）のデータを算出し、判定部４４に出力する。
【００６４】
判定部４４では、前述の通り、ＦＢに第１の符号が付与されているか、第２の符号が付与されているかを判定する。そして、判定部４４は、ＦＢに第１の符号が付与されている場合には、ＦＡ＋ＦＢ'に比較してＦＡ＋ＦＢの相関が高いと判定し（即ち、第１の拡散符号の方が第２の拡散符号よりも受信信号４００と高い相関を示すと判定し）、第１の拡散符号を２進数データ化した値を出力する。判定部４４は、ＦＢに第２の符号が付与されている場合には、ＦＡ＋ＦＢに比較してＦＡ＋ＦＢ'の相関が高いと判定し（即ち、第２の拡散符号の方が第１の拡散符号よりも受信信号４００と高い相関を示すと判定し）、第２の拡散符号を２進数データ化した値を出力する。復調装置４５は、以上の処理を実行することにより、ＦＡ＋ＦＢ及びＦＡ＋ＦＢ'の値を直接計算することなく、受信信号と高い相関を示す拡散符号を選択することができる。
【００６５】
なお、部分相関値算出部４１ではなく、部分相関値算出部４０がＦＡ＋ＦＢを計算して判定部４４に出力してもよい。同様に、部分相関値算出部４３ではなく部分相関値算出部４２が、ＦＡ＋ＦＢ'を計算して判定部４４に出力してもよい。
【００６６】
実施の形態３
図３は、実施の形態３にかかる復調装置の一例を示す構成図である。復調装置５５は、部分相関値算出部５０（第１の部分相関値算出部）、部分相関値算出部５１（第２の部分相関値算出部）、部分相関値算出部５２（第３の部分相関値算出部）、部分相関値算出部５３（第４の部分相関値算出部）及び判定部５４を備える。
【００６７】
復調装置５５は、受信信号５００の復調処理をする装置である。ここで受信信号５００は、複数の拡散符号を用いて変調されている。複数の拡散符号は、第１の部分符号と第２の部分符号を含む第１の拡散符号と、少なくとも前記第１の部分符号と同一のデータである第３の部分符号と前記第２の部分符号を反転したデータである第４の部分符号とを有する。復調装置５５は、部分符号のそれぞれとの相関を算出した結果に基づいて各拡散符号との相関値を求め、相関度が最も高い拡散符号を選択することにより、受信信号５００を復調する。
【００６８】
部分相関値算出部５０〜部分相関値算出部５３の実行する処理は、部分相関値算出部４０〜部分相関値算出部４３の実行する処理と同様であるため、説明を省略する。
【００６９】
判定部５４は、ＦＢとＦＢ'のいずれの相関が高いかを判定する。判定部５４は、ＦＢの方が相関が高いと判定する場合には、第１の拡散符号の方が第２の拡散符号よりも受信信号５００と高い相関度を示すと判定する。判定部５４は、ＦＢ'の方が相関が高いと判定する場合には、第２の拡散符号の方が第１の拡散符号よりも受信信号５００と高い相関度を示すと判定する。
【００７０】
この理由は、以下の通りである。受信信号５００と第１の拡散符号との相関値は、ＦＡとＦＢとを加算することにより求められる。受信信号５００と第２の拡散符号との相関値は、ＦＡとＦＢ'とを加算することにより求められる。ここで、両方の相関値において、ＦＡは共通である。
【００７１】
以上から、ＦＢとＦＢ'とのうちで相関の高いものを選択することにより、第１の拡散符号と第２の拡散符号の中で、より受信信号５００と相関の高い拡散符号を判定することができる。復調装置５５は、受信信号５００と第１の拡散符号との相関値及び受信信号５００と第２の拡散符号との相関値を直接計算することなく、第１の拡散符号と第２の拡散符号の中で受信信号５００と高い相関を示す拡散符号を選択することができる。従って、相関値の比較計算に必要な演算量を削減することができる。この場合、判定部５５は、第１の拡散符号か、又は第２の拡散符号のうち、受信信号と相関が高いと判定した拡散符号を２進数データ化した値をデータ５０５として出力する。
【００７２】
例えば、ＦＢとＦＢ'とが、符号を反転した部分相関値同士である場合には、ＦＢとＦＢ'との符号を比較すればよい。相関が高いことを示す符号を有する部分相関値をＦＡに加算することにより、より相関の高い値を算出することができる。
【００７３】
あるいは、ＦＢが所定の基準値以上である場合にＦＢ'が所定の基準値未満であり、ＦＢが所定の基準値未満である場合にＦＢ'が所定の基準値以上である場合も考えられる。ここで、所定の基準値は、例えば受信信号５００の一部と、第１の拡散符号における第２の部分符号との相関値が半分一致している場合の相関値である。この場合、判定部５４において、ＦＢが所定の基準値以上であるか否かを判定することにより、ＦＢとＦＢ'とでいずれの相関度が高いかを判定することができる。このようにしても、受信信号５００と第１の拡散符号との相関値及び受信信号５００と第２の拡散符号との相関値を直接計算することなく、第１の拡散符号と第２の拡散符号の中で受信信号５００と高い相関度を示す拡散符号を選択することができる。
【００７４】
部分相関値算出部５２は、部分相関値算出部５０が算出した第１の部分相関値（ＦＡ）を用いて、第３の部分相関値を算出している。この処理を実行することにより、部分相関値算出部５２が直接第４の部分相関値を算出する場合に比較して、相関値計算に必要な演算量を削減することができる。部分相関値算出部５３についても同様の効果を奏する。
【００７５】
なお、復調装置５５においては、実施の形態２に記載した復調装置４５と同様なバリエーションの変更をすることができる。
【００７６】
［実施の形態４、５にかかる原理の説明］
以下、実施の形態４、５を説明する前に、実施の形態４、５にかかる復調装置が実行する復調方法の原理について説明する。本実施の形態にかかる無線方式の復調処理では、送信側の装置でＮ種類（Ｎは任意の数）の拡散符号のいずれか１つを用いて信号が拡散され、送信される。受信側の装置では、受信した信号をＮ種類全ての拡散符号で逆拡散する。そして受信側の装置では、逆拡散した結果に基づいて、送信側で用いられた拡散符号を特定する。
【００７７】
この復調処理において、演算量削減が可能な拡散符号の条件について説明する。まず、Ｎ種類の拡散符号Ｃｎ（ｎ＝０，１，・・・Ｎ−１）の集合を、以下の（式１）の通りΩと定義する。ここで、Ｎは偶数である。
【数１】
2014057157.tif 000003
【００７８】
集合Ωに含まれる拡散符号Ｃｎのうち、２つの拡散符号を取り出した部分集合をδｋと定義し、部分集合δｋに含まれる拡散符号をＣ（ｋ，ｌ）と定義する。ここでｋ＝０，１，・・・Ｎ／２−１であり、l＝０，１である。そして、拡散符号Ｃ（ｋ，ｌ）はそれぞれ重複しない。すなわち、部分集合δｋの和集合はΩである。以上の定義は、以下の（式２）で表される。
【数２】
2014057157.tif 000004
【００７９】
各拡散符号の長さ（チップ長）をＭとし、チップ番号ｍが取りうる値の集合をφと設定する。さらに、集合φを２つに分割した部分集合をψi、ψｑとする。以上の定義は、以下の（式３）で表される。
【数３】
2014057157.tif 000005
【００８０】
部分集合δｋにおける拡散符号Ｃ（ｋ，ｌ）に対し、チップ番号ｍが集合ψiに含まれるチップを抽出した拡散符号（部分符号）をＣｉ（ｋ，ｌ）とし、チップ番号ｍが集合ψqに含まれるチップを抽出した拡散符号（部分符号）をＣｑ（ｋ，ｌ）とする（ｌ＝０，１）。ここで、すべてのｋ（＝０，１・・・，Ｎ／２）に対して、（式４）、（式５）が成り立つとき、演算量の削減が可能である。
【数４】
2014057157.tif 000006
【数５】
2014057157.tif 000007
（式５）の右辺は、部分符号Ｃｑ（ｋ，０）の各チップの値をビット反転させた部分符号を表している。
【００８１】
以下、（式４）及び（式５）の条件を満たす拡散符号を用いた無線方式において、演算量を削減する方法を説明する。前述の無線方式において、受信側では受信信号ＲとＮ種類の拡散符号との相関値を比較する処理が行われる。
【００８２】
まず、受信信号Ｒと拡散符号Ｃ（ｋ，ｌ）との相関値Ｆ（ｋ，ｌ）は、次式で求められる。なお、Ｒｉは受信信号ＲのＩ成分であり、Ｒｑは受信信号ＲのＱ成分である。
【数６】
2014057157.tif 000008
部分相関値Ｆｉ（ｋ，ｌ）はＲｉとＣｉ（ｋ，ｌ）との相関値であり、部分相関値Ｆｑ（ｋ，ｌ）はＲｑとＣｑ（ｋ，ｌ）との相関値である。ここで、Ｃ（ｋ，０）とＣ（ｋ，１）が（式４）及び（式５）を満たす場合に、次式が成り立つ。
【数７】
2014057157.tif 000009
ここでは、乗算する拡散符号が反転する場合に、相関値の符号が反転するように相関値が計算される。拡散符号の１チップのデータと、そのデータと乗算される受信信号Ｒの１チップのデータとが同じ値である場合には、その１チップのデータ同士の相関値として「１」が計算される。具体的には、拡散符号の１チップのデータが「１」であり、そのデータと乗算される受信信号Ｒの１チップのデータが「１」であれば、乗算結果は「１」となる。拡散符号の１チップのデータが「−１」であり、そのデータと乗算される受信信号Ｒの１チップのデータが「−１」であっても、その１チップのデータ同士の相関値として「１」が計算される。
【００８３】
逆に、拡散符号の１チップのデータと、そのデータと乗算される受信信号Ｒの１チップのデータとが異なる値である場合には、その１チップのデータ同士の相関値として「１」が計算される。具体的には、拡散符号の１チップのデータが「１」であり、そのデータと乗算される受信信号Ｒの１チップのデータが「−１」であれば、乗算結果は「−１」となる。拡散符号の１チップのデータが「−１」であり、そのデータと乗算される受信信号Ｒの１チップのデータが「１」であっても、その１チップのデータ同士の相関値として「−１」が計算される。
【００８４】
１チップのデータ同士の相関値は、以上のように計算される。なお、１チップのデータ同士の乗算は、乗算器等を用いることにより実行される。この計算された相関値を合計することにより、部分相関値Ｆｉと部分相関値Ｆｑが求められる。
【００８５】
以上では、１チップのデータ同士が一致していれば「１」の相関値が生成され、１チップのデータ同士が異なっていれば「−１」の相関値が生成される。そのため、受信信号と拡散符号との相関値が大きくなるほど、受信信号と拡散符号との相関が高くなることを意味する。
【００８６】
（式６）及び（式７）から、受信信号Ｒと拡散符号Ｃ（ｋ，０）との相関値Ｆ（ｋ，０）と、受信信号Ｒと拡散符号Ｃ（ｋ，１）との相関値Ｆ（ｋ，１）は次式で求められる。
【数８】
2014057157.tif 000010
【００８７】
以上のように相関値を求めることにより、相関値を計算するのに必要な演算量及び相関値比較に必要な演算量を削減することができる。これは以下の理由による。
【００８８】
（式８）においては、部分相関値Ｆｉ（ｋ，０）、Ｆｑ（ｋ，０）がそれぞれ２度現れる。そのため、部分相関値Ｆｉ（ｋ，０）、Ｆｑ（ｋ，０）を求めた結果を加算または減算して相関値Ｆ（ｋ，０）、Ｆ（ｋ，１）を求めるという方法を取ることにより、相関値を計算するための演算量を１／２に削減することができる。これは、相関値を計算するためにＦｉ（ｋ，０）とＦｑ（ｋ，０）を演算で求めた後、その演算結果を利用して他の相関値を計算することができるためである。
【００８９】
そして、相関値Ｆ（ｋ，０）は部分相関値Ｆｉ（ｋ，０）と部分相関値Ｆｑ（ｋ，０）とを加算した値であり、相関値Ｆ（ｋ，１）は部分相関値Ｆｉ（ｋ，０）から部分相関値Ｆｑ（ｋ，１）を減算した値である。従って、部分相関値Ｆｑ（ｋ，０）の符号が正である場合、相関値Ｆ（ｋ，０）は相関値Ｆ（ｋ，１）よりも大きくなる。すなわち、相関値Ｆ（ｋ，０）の相関度は相関値Ｆ（ｋ，１）の相関度よりも高くなる。部分相関値Ｆｑ（ｋ，０）の符号が負である場合、相関値Ｆ（ｋ，１）は相関値Ｆ（ｋ，０）よりも大きくなる。すなわち、相関値Ｆ（ｋ，０）の相関度は相関値Ｆ（ｋ，１）の相関度よりも高くなる。
【００９０】
従って、相関値Ｆ（ｋ，０）と相関値Ｆ（ｋ，１）を比較する処理においては、以下のように相関値が大きい方を選択して求めることができる。部分相関値Ｆｑ（ｋ，０）の符号が正である場合は、部分相関値Ｆｉ（ｋ，０）と部分相関値Ｆｑ（ｋ，０）を加算して相関値Ｆ（ｋ，０）を求め、部分相関値Ｆｑ（ｋ，０）の符号が負である場合は部分相関値Ｆｉ（ｋ，０）から部分相関値Ｆｑ（ｋ，０）を減算して相関値Ｆ（ｋ，１）を求めるようにする。これにより、相関値Ｆ（ｋ，０）と相関値Ｆ（ｋ，１）のうち、相関値が大きい方（すなわち相関度が高い方）を選択して求めることができる。
【００９１】
この方法を取ることにより、相関値Ｆ（ｋ，０）と相関値Ｆ（ｋ，１）の大小を直接比較することなく、相関値Ｆ（ｋ，０）と相関値Ｆ（ｋ，１）のうち相関値の高い方を求めることができるため、相関値比較の演算量を１／２に削減することができる。
【００９２】
以上により求めた部分相関値Ｆｑ（ｋ，１）の符号が正であるか負であるかの符号判定結果をＸｋと定義する。そして、相関値Ｆ（ｋ，０）と相関値Ｆ（ｋ，１）のうち、振幅が大きい相関値をＧｋと定義する。受信側の装置では、全てのｋ（＝０，１，・・・，Ｎ／２−１）について、相関値Ｇｋの比較をすることにより最大の相関値を検出し、その符号番号ｋを選択する。さらに受信側の装置は、選択した符号番号ｋと、その符号判定結果Ｘｋに基づいて、最大の相関値である相関値Ｆｎの符号番号ｎをデコードし、復調データとして得る。以上の方法を用いることにより、無線方式における復調処理の演算量削減を実現することができる。
【００９３】
特許文献１〜３においては、拡散符号全てを用いて受信信号を逆拡散しているため、相関値を全て計算して求めていた。そのため、相関値を計算するための演算量を削減することができなかった。しかし、本例では、相関値の演算量を１／２に削減することができる。
【００９４】
特許文献４においては、相関値を比較するための演算量を削減することができなかった。しかし、本例では、相関値を比較するための演算量を１／２に削減することができる。
【００９５】
なお、以上に記載された処理は一例であり、様々な変更が可能である。例えば、上述の例では、受信側の装置は、相関値を計算するのに必要な演算量及び相関値比較に必要な演算量の両方を削減した。しかし、受信側の装置は相関値を計算するのに必要な演算量のみを削減してもよいし、相関値比較に必要な演算量のみを削減するようにしてもよい。
【００９６】
つまり、受信側の装置は、部分相関値Ｆｉ（ｋ，０）、Ｆｑ（ｋ，０）を求めた結果を加算または減算して相関値Ｆ（ｋ，０）、Ｆ（ｋ，１）を求めた後、Ｆ（ｋ，０）、Ｆ（ｋ，１）の相関値の大小を比較することにより、相関値を計算するのに必要な演算量のみを削減してもよい。
【００９７】
あるいは、受信側の装置は、部分相関値Ｆｉ（ｋ，０）、Ｆｑ（ｋ，０）、Ｆｉ（ｋ，１）及びＦｑ（ｋ，１）を個別に求めることにより部分相関値Ｆｉ（ｋ，０）及びＦｑ（ｋ，０）を求めた後、Ｆｑ（ｋ，０）の符号が正であるか負であるかに応じて、部分相関値Ｆｉ（ｋ，０）とＦｑ（ｋ，０）のいずれかを選択してもよい。この選択の方法は上述の通りである。このようにして、相関値比較に必要な演算量のみを削減してもよい。
【００９８】
上述の例では、拡散符号Ｃｎの１チップのデータと、そのデータと乗算される受信信号Ｒの１チップのデータとが異なる値である場合には、その１チップのデータ同士の相関値として「−１」が計算された。しかし、その場合の相関値として「−１」ではなく、「０」が計算されてもよい。
【００９９】
この計算は、１チップのデータ同士の相関値の計算を、乗算器ではなくＸＮＯＲ回路を用いることによって実行される。
【０１００】
この場合、（式７）は以下の（式９）の通り書き直される。
【数９】
2014057157.tif 000011
（式９）における部分相関値Ｆ'ｉ（ｋ，０）、Ｆ'ｉ（ｋ，１）、Ｆ'ｑ（ｋ，０）、Ｆ'ｑ（ｋ，１）は、（式７）における部分相関値Ｆｉ（ｋ，０）、Ｆｉ（ｋ，１）、Ｆｑ（ｋ，０）、Ｆｑ（ｋ，１）に対応する。そしてＨは、部分符号Ｃｑ（ｋ，ｌ）と受信信号Ｒｑとが半分ずつ一致している（対応するチップが半分一致している）場合の部分相関値Ｆｉ（ｋ，ｌ）の値である。
【０１０１】
なお、上述の例では、１チップのデータ同士が異なっていれば「−１」の相関値が生成されたため、部分符号Ｃｑ（ｋ，ｌ）と受信信号Ｒｑとが半分ずつ一致しているときに部分相関値Ｆｉ（ｋ，ｌ）は０である。そのため、（式９）のＨは０となり、（式７）の通り、Ｆｑ（ｋ，０）とＦｑ（ｋ，１）とは符号が反転した値になった。
【０１０２】
本例では、１チップのデータ同士が一致していれば「１」の相関値が生成され、１チップのデータ同士が異なっていれば「０」の相関値が生成される。そのため、受信信号と拡散符号との相関値が大きくなるほど、受信信号と拡散符号との相関度が高いことになる。
【０１０３】
（式６）及び（式９）から、相関値Ｆ'（ｋ，０）と、相関値Ｆ'（ｋ，１）は次式で求められる。
【数１０】
2014057157.tif 000012
この場合、受信側の装置でＨの値を予め記憶しておくことにより、相関値を計算するための演算量を削減することができる。これは、相関値を計算するためにＦ'ｉ（ｋ，０）とＦ'ｑ（ｋ，０）を演算で求めた後、その演算結果を利用して他の相関値を計算することができるためである。
【０１０４】
そして、Ｆ'ｑ（ｋ，０）とＦ'ｑ（ｋ，１）（＝２Ｈ−Ｆ'ｑ（ｋ，０））との大小を比較することにより、Ｆ'（ｋ，０）とＦ'（ｋ，１）との大小を比較することができる。具体的にいえば、Ｆ'ｑ（ｋ，０）がＦ'ｑ（ｋ，１）より大きい場合には、Ｆ'（ｋ，０）がＦ'（ｋ，１）よりも大きいことになる。逆に、Ｆ'ｑ（ｋ，１）がＦ'ｑ（ｋ，０）より大きい場合には、Ｆ'（ｋ，１）がＦ'（ｋ，０）よりも大きいことになる。
【０１０５】
あるいは、Ｆ'ｑ（ｋ，０）とＨとの大小を比較することにより、Ｆ'（ｋ，０）とＦ'（ｋ，１）との大小を比較してもよい。これは、Ｆ'ｑ（ｋ，０）がＨよりも大きい値であれば、Ｆ'ｑ（ｋ，１）はＨよりも必ず小さくなり、Ｆ'ｑ（ｋ，０）がＨよりも小さい値であれば、Ｆ'ｑ（ｋ，１）はＨよりも必ず大きくなることを利用している。以上の比較を実行することにより、Ｆ'（ｋ，０）とＦ'（ｋ，１）との大小を比較することができる。
【０１０６】
この比較結果により、Ｆ'（ｋ，０）とＦ'（ｋ，１）のうちで相関値の大きい方を選ぶことにより、Ｆ'（ｋ，０）とＦ'（ｋ，１）の中で相関度の高い方を選択することができる。なお、既に算出したＦ'ｑ（ｋ，０）とＦ'ｑ（ｋ，１）との大小を比較した後に、Ｆ'（ｋ，０）とＦ'（ｋ，１）とで相関値の大きい方のみを算出する（相関度の高い方を算出する）ようにすると、Ｆ'（ｋ，０）とＦ'（ｋ，１）のうち相関値の小さい方を算出する必要がなくなる。そのため、演算量を削減することができる。
【０１０７】
なお、上述の処理において、１チップのデータ同士の相関値の計算を、ＸＮＯＲ回路ではなくＸＯＲ回路を用いることによって実行してもよい。この場合には、拡散符号の１チップのデータと、そのデータと乗算される受信信号Ｒの１チップのデータとが同じ値である場合には、その１チップのデータ同士の相関値として「０」が計算される。逆に、拡散符号の１チップのデータと、そのデータと乗算される受信信号Ｒの１チップのデータとが異なる値である場合には、その１チップのデータ同士の相関値として「１」が計算される。つまり、相関度が高いほど、相関値は低い値をとることになる。
【０１０８】
この場合でも、（式９）、（式１０）の通り、相関値が求められる。そして、Ｆ'ｑ（ｋ，０）とＦ'ｑ（ｋ，１）（＝２Ｈ−Ｆ'ｑ（ｋ，０））との大小を比較することにより、Ｆ'（ｋ，０）とＦ'（ｋ，１）との大小を比較することができる。具体的にいえば、Ｆ'ｑ（ｋ，０）がＦ'ｑ（ｋ，１）より小さい場合には、Ｆ'（ｋ，０）がＦ'（ｋ，１）よりも小さいことになる。逆に、Ｆ'ｑ（ｋ，１）がＦ'ｑ（ｋ，０）より小さい場合には、Ｆ'（ｋ，１）がＦ'（ｋ，０）よりも小さいことになる。あるいは、Ｆ'ｑ（ｋ，０）とＨとの大小を比較することにより、Ｆ'（ｋ，０）とＦ'（ｋ，１）との大小を比較してもよい。
【０１０９】
この比較結果により、Ｆ'（ｋ，０）とＦ'（ｋ，１）のうちで相関値の小さい方を選ぶことにより、Ｆ'（ｋ，０）とＦ'（ｋ，１）の中で相関度の高い方を選択することができる。なお、既に算出したＦ'ｑ（ｋ，０）とＦ'ｑ（ｋ，１）との大小を比較した後に、Ｆ'（ｋ，０）とＦ'（ｋ，１）とで相関値の小さい方のみを算出する（相関度の高い方を算出する）ようにすると、Ｆ'（ｋ，０）とＦ'（ｋ，１）のうち相関値の大きい方を算出する必要がなくなる。そのため、演算量を削減することができる。
【０１１０】
以上のように、ＸＮＯＲ回路又はＸＯＲ回路のいずれを相関値の計算に用いても、演算量を削減することができる。ただし、ＸＮＯＲ回路に比較してＸＯＲ回路の方が回路面積が少なくなるため、復調装置の小型化を図るには、ＸＯＲ回路を用いて相関値を計算する方がより望ましい。例えば、ＺｉｇＢｅｅでは、復調装置の小型化が特に要請される。
【０１１１】
以上に記載した原理の説明において、Ｃｉ（ｋ，ｌ）とＣｑ（ｋ，１）は同じチップ数を有していてもよいし、異なるチップ数を有していてもよい。
【０１１２】
上述の例においては、集合Ωに含まれる拡散符号Ｃｎのうち、２つの拡散符号を取り出して部分集合δｋを構成していた。しかし、部分集合を構成するのは３つ以上の拡散符号の組であってもよい。この場合においても、（式４）、（式５）と同様の関係が成り立つことにより、演算量の削減が可能となる。
【０１１３】
拡散符号Ｃｎが表す情報は何ビットでもよい。例えば、「０」又は「１」の情報を示すために２種類（Ｎ＝２）の拡散符号Ｃ０、Ｃ１が設定されていてもよいし、「００」、「０１」、「１０」、「１１」の情報を示すために４種類（Ｎ＝４）の拡散符号Ｃ０、Ｃ１、Ｃ２、Ｃ３が設定されていてもよい。
【０１１４】
実施の形態４
以下、図面を参照して本発明の実施の形態３について説明する。実施の形態４では、実施の形態１、２及び３の構成を組み合せた復調装置の具体例について説明する。
【０１１５】
図７は、前述の通り、ＺｉｇＢｅｅで用いられる１６種類の長さ３２チップの拡散符号｛ｃ０，ｃ１，・・・，ｃ３１｝と、４ビットの送信データ｛ｂ３，ｂ２，ｂ１，ｂ０｝との対応表である。ここで、拡散符号Ｃ（ｋ＋８）の奇数番目のチップ｛ｃ０，ｃ２，・・・，ｃ３０｝の値は、対応する拡散符号Ｃｋの奇数番目のチップ｛ｃ０，ｃ２，・・・，ｃ３０｝の値と等しい。さらに、拡散符号Ｃ（ｋ＋８）の偶数番目のチップ｛ｃ１，ｃ３，・・・，ｃ３１｝の値は、対応する拡散符号Ｃｋの偶数番目のチップ｛ｃ１，ｃ３，・・・，ｃ３１｝の値をビット反転させた値であるという特徴がある。なお、ｋは０〜７までの任意の整数である。
【０１１６】
例えば、拡散符号Ｃ０と拡散符号Ｃ８の組み合わせや、拡散符号Ｃ１と拡散符号Ｃ９の組み合わせが上述の条件を満たす。実施の形態４では、このような拡散符号の特徴を利用して演算量の削減を実現する。
【０１１７】
ここで、簡単化のためにＺｉｇＢｅｅの４ビットの送信データ｛ｂ３，ｂ２，ｂ１，ｂ０｝が"００００"，"０００１"，"１０００"，"１００１"の４種類に限定された場合を仮定して、実施の形態４の演算量削減の原理について述べる。
【０１１８】
送信側の装置は、４ビットの送信データ｛ｂ３，ｂ２，ｂ１，ｂ０｝を符号番号ｎ（＝０，１，８，９）の拡散符号Ｃｎに拡散して送信する。拡散符号Ｃｎについては図７に示した通りである。
【０１１９】
受信側の装置は、受信信号Ｒと４つの拡散符号Ｃ０，Ｃ１，Ｃ８，Ｃ９との相関値を比較し、相関値が最大である符号番号ｎを選択し、４ビットの復調データ｛ｂ３，ｂ２，ｂ１，ｂ０｝を得る。
【０１２０】
まず、相関値を求める逆拡散演算について説明する。受信信号Ｒと拡散符号Ｃｎとの相関値Ｆｎは、受信信号Ｒのチップと拡散符号Ｃｎのチップとの積和演算によって求められる。積和演算は、加算の順番を並び替えても同じ結果が得られるので、受信信号Ｒと４つの拡散符号Ｃ０，Ｃ１，Ｃ８，Ｃ９との相関値Ｆ０，Ｆ１，Ｆ８，Ｆ９は、以下の（式１１）のように求めることができる。
【数１１】
2014057157.tif 000013
（式１１）において、Ｃｉｎは拡散符号Ｃｎの奇数番目（Ｉ成分）のチップだけを取り出した拡散符号（部分符号）、Ｃｑｎは拡散符号Ｃｎの偶数番目（Ｑ成分）のチップだけを取り出した拡散符号（部分符号）を表す。Ｒｉは受信信号ＲのＩ成分であり、Ｒｑは受信信号ＲのＱ成分である。Ｆｉｎは信号Ｒｉと拡散符号Ｃｉｎとの部分相関値、Ｆｑｎは信号Ｒｑと拡散符号Ｃｑｎとの部分相関値を表す。
【０１２１】
前述の通り、拡散符号Ｃ０と拡散符号Ｃ８は奇数番目のチップが等しく、偶数番目のチップがビット反転している関係である。そして、拡散符号Ｃ１と拡散符号Ｃ９は奇数番目のチップが等しく、偶数番目のチップがビット反転している関係である。換言すれば、拡散符号Ｃ０と拡散符号Ｃ８の奇数番目のチップは第１の部分符号を有し、拡散符号Ｃ０の偶数番目のチップは第２の部分符号を有し、拡散符号Ｃ８の偶数番目のチップは反転した第２の部分符号を有する。拡散符号Ｃ１と拡散符号Ｃ９の奇数番目のチップは第３の部分符号を有し、拡散符号Ｃ９の偶数番目のチップは第４の部分符号を有し、拡散符号Ｃ８の偶数番目のチップは反転した第４の部分符号を有する。
【０１２２】
以上から、（式１１）において、以下の（式１２）の関係が成り立つ。
【数１２】
2014057157.tif 000014
実施の形態３では［原理の説明］で述べた通り、乗算器を用いて相関値を求める。この場合には、（式１２）の通り、入力信号に乗算される拡散符号が反転する場合に、相関値の符号が反転するように相関値が計算される。（式１２）を用いて、（式１１）を変形すると以下の（式１３）が得られる。
【数１３】
2014057157.tif 000015
（式１３）において、部分相関値Ｆｉ０，Ｆｉ１，Ｆｑ０，Ｆｑ１がそれぞれ２度ずつ現れる。そのため、部分相関値Ｆｉ０，Ｆｉ１，Ｆｑ０，Ｆｑ１をそれぞれ求めた結果を加算または減算することにより、相関値Ｆ０，Ｆ１，Ｆ８，Ｆ９を全て求めることができる。すなわち、相関値Ｆ０，Ｆ１を求めるために部分相関値Ｆｉ０，Ｆｉ１，Ｆｑ０，Ｆｑ１を計算した場合、その部分相関値Ｆｉ０，Ｆｉ１，Ｆｑ０，Ｆｑ１の値を利用してＦ８，Ｆ９を求めることができるため、相関値を求めるのに必要な演算量を１／２に削減することができる。
【０１２３】
続いて、相関値Ｆ０，Ｆ１，Ｆ８，Ｆ９を比較し、大きさが最大である相関値を選択する処理を説明する。従来では、４つの相関値Ｆ０，Ｆ１，Ｆ８，Ｆ９同士の大小を全て比較している。そのため、少なくとも相関値を求める演算が４回、相関値の大きさを比較する演算が３回必要であった。
【０１２４】
実施の形態４では、相関値Ｆｋは部分相関値Ｆｉｋと部分相関値Ｆｑｋを加算した値であり、相関値Ｆ（ｋ＋８）は部分相関値Ｆｉｋから部分相関値Ｆｑｋを減算した値であることに着目し、最大の相関値を選択する演算量を削減する。
【０１２５】
以下、部分相関値Ｆｑｋの符号が正（第１の符号）である場合と、部分相関値Ｆｑｋの符号が負（第２の符号）である場合とで場合分けをして、相関値Ｆｋの振幅と相関値Ｆ（ｋ＋８）の振幅との大小の比較を考える。
【０１２６】
部分相関値Ｆｑｋの符号が正である場合、部分相関値Ｆｉｋと部分相関値Ｆｑｋを加算した値である相関値Ｆｋの大きさは、部分相関値Ｆｉｋから部分相関値Ｆｑｋを減算した値である相関値Ｆ（ｋ＋８）の大きさよりも、必ず大きくなる。
【０１２７】
部分相関値Ｆｑｋの符号が負である場合、部分相関値Ｆｉｋと部分相関値Ｆｑｋを減算した値である相関値Ｆ（ｋ＋８）の大きさは、部分相関値Ｆｉｋから部分相関値Ｆｑｋを加算した値である相関値Ｆｋの大きさよりも、必ず大きくなる。
【０１２８】
従って、以下の処理を実行することにより、相関値Ｆｋと相関値Ｆ（ｋ＋８）のうち、相関値が大きい方を選択して求めることができる。つまり、部分相関値Ｆｑｋの符号が正である場合は部分相関値Ｆｉｋと部分相関値Ｆｑｋを加算して相関値Ｆｋを求め、部分相関値Ｆｑｋの符号が負である場合は部分相関値Ｆｉｋから部分相関値Ｆｑｋを減算して相関値Ｆ（ｋ＋８）を求めるようにすればよい。
【０１２９】
なお、部分相関値Ｆｑｋの符号が正であるか負であるかを判定する処理は、例えば部分相関値Ｆｑｋの符号ビットと正の符号ビットとのＸＯＲ（排他的論理和）演算を実行することにより簡単に実現できる。そのため、当該処理は、相関値の大きさを比較する処理と比べて十分に演算量は小さい。部分相関値Ｆｑｋの符号ビットと正の符号ビットとのＸＯＲを取った値を符号判定結果Ｘｋとすると、Ｘｋ＝０のとき相関値Ｆｋを、Ｘｋ＝１のとき相関値Ｆ（ｋ＋８）を求めることにより、相関値が大きい相関値を選択して求めることができる。
【０１３０】
以上の処理を実行することにより、相関値Ｆ０と相関値Ｆ８との大小比較計算を直接実行することなく、部分相関値Ｆｉ０と部分相関値Ｆｑ０を求めた結果に基づいて、相関値Ｆ０と相関値Ｆ８のうち相関値が大きい方を求めることができる。同様に、相関値Ｆ１と相関値Ｆ９との大小比較計算を直接実行することなく、部分相関値Ｆｉ１と部分相関値Ｆｑ１を求めた結果に基づいて、相関値Ｆ１と相関値Ｆ９のうち相関値が大きい方を求めることができる。そのため、相関値比較の演算量を削減することができる。
【０１３１】
ここで、相関値Ｆ０と相関値Ｆ８のうち、相関値が大きい方をＧ０と定義し、相関値Ｆ１と相関値Ｆ９のうち、相関値が大きい方をＧ１と定義する。さらに、相関値Ｇ０の振幅と相関値Ｇ１の大小を比較して、最も大きい相関値の符号番号をｋ（＝０，１）と定義する。つまり、相関値Ｇ０と相関値Ｇ１のうち、最も大きい相関値をＧｋと定義する。
【０１３２】
ｋが０のとき、相関値Ｆ０か相関値Ｆ８のどちらかが最大の相関値である。このとき、符号判定結果Ｘ０が０ならば相関値Ｆ０が最大の相関値であり、符号判定結果Ｘ０が１ならば相関値Ｆ８が最大の相関値である。よって、符号番号ｋが０、符号判定結果Ｘ０が０であるならば、送信に用いられた拡散符号はＣ０であり、復調データは０である。符号番号ｋが０、符号判定結果Ｘ０が１であるならば、送信に用いられた拡散符号はＣ８であり、復調データは８である。
【０１３３】
同様に、符号番号ｋが１、符号判定結果Ｘ１が０ならば、送信に用いられた拡散符号はＣ１であり、復調データは１である。符号番号ｋが１、符号判定結果Ｘ１＝１ならば、送信に用いられた拡散符号はＣ９であり、復調データは９である。
【０１３４】
まとめると、以下のような処理を実行することにより、比較の演算量を削減したＺｉｇＢｅｅの復調方法を実現することができる。
１．  相関値Ｇ０と相関値Ｇ１の大小を比較し、最も大きい相関値の符号番号ｋ（＝０，１）を求める。
２．  １．で求めた符号番号ｋにおける符号判定結果Ｘｋを選択し、符号番号ｋと符号判定結果Ｘｋに基づいて、ＺｉｇＢｅｅの復調データ｛ｂ３，ｂ２，ｂ１，ｂ０｝をデコードする。
【０１３５】
図４により、実施の形態４にかかる復調装置の構成を示す。図４は、実施の形態４にかかる復調装置の構成例を示すブロック図である。復調装置１５は、相関部１０−１〜１０−４（部分相関値算出部）、加減算部１１−１〜１１−２、比較部１２（図２にかかる判定部４４に対応）、選択部１３及び整列部１４（復調部）を備える。復調装置１５には、第１の入力信号１００−１及び第２の入力信号１００−２が入力される。復調装置１５は、これらの入力信号に基づいて、復調結果１０７を生成し、出力する。
【０１３６】
第１の入力信号１００−１及び第２の入力信号１００−２は、復調装置１５が受信した信号のＩ成分（Ｒｉ）及びＱ成分（Ｒｑ）である。復調装置は、送信装置が無線で出力した送信信号を受信し、それを図示せぬＯＱＰＳＫ復調部によって、Ｉ成分（第１の入力信号１００−１）及びＱ成分（第２の入力信号１００−２）に分けて出力する。ここで復調装置１５は、図９Ｂにおいて示すようなパラレル／シリアル変換部を備えていない。
【０１３７】
相関部１０−１は、第１の入力信号１００−１（Ｒｉ）と第１の部分符号（Ｃｉ０）との部分相関値１０１−１（第１の部分相関値）を演算し、そのデータを出力する（以降、同様の処理を単に「相関値を出力する」と記載する）。相関部１０−２は、第２の入力信号１００−２（Ｒｑ）と第２の部分符号（Ｃｑ０）との部分相関値１０２−１（第２の部分相関値）を演算し、出力する。なお、相関部１０−１、１０−２は、図２にかかる部分相関値算出部４０及び４２（第１の部分相関値算出部及び第３の部分相関値算出部）、部分相関値算出部４１（第２の部分相関値算出部）にそれぞれ対応する。
【０１３８】
相関部１０−３（第５の部分相関値算出部及び第７の部分相関値算出部）は、第１の入力信号１００−１（Ｒｉ）と第３の部分符号（Ｃｉ１）との部分相関値１０１−２（第３の部分相関値）を演算し、出力する。相関部１０−４（第６の部分相関値算出部）は、第２の入力信号１００−２（Ｒｑ）と第４の拡散符号（Ｃｑ１）との部分相関値１０２−２（第４の部分相関値）を演算し、出力する。ここで第２の入力信号１００−２（Ｒｑ）は、Ｒｉ、Ｒｑのうちで部分相関値１０１−２を生成しない方の成分である。
【０１３９】
換言すれば、相関部１０−１は入力信号１００−１と第１の部分符号との逆拡散を実行し、部分相関値１０１−１を出力する。相関部１０−２は入力信号１００−２と第２の部分符号との逆拡散を実行し、部分相関値１０２−１を出力する。相関部１０−３は入力信号１００−１と第３の部分符号との逆拡散を実行し、部分相関値１０１−２を出力する。相関部１０−４は入力信号１００−２と第４の部分符号との逆拡散を行い、部分相関値１０２−２を出力する。
【０１４０】
加減算部１１−１には、部分相関値１０１−１及び部分相関値１０２−１のデータが入力される（以降、同様の処理を単に「相関値が入力される」と記載する）。加減算部１１−１は、部分相関値１０２−１の符号に応じて、以下の加算処理又は減算処理を実行する。
【０１４１】
部分相関値１０２−１の符号が正である場合には、加減算部１１−１は部分相関値１０１−１と部分相関値１０２−１との加算処理を実行し、入力信号１００（Ｒ）と拡散符号Ｃ０との相関値（第１の相関値）を求める。部分相関値１０２−１の符号が負である場合には、加減算部１１−１は部分相関値１０１−１から部分相関値１０２−１を減算する処理を実行して、入力信号１００（Ｒ）と拡散符号Ｃ８との相関値（第２の相関値）を求める。
【０１４２】
換言すれば、加減算部１１−１は、部分相関値１０２−１が、第２の入力信号１００−２（Ｒｑ）と第２の拡散符号（Ｃｑ０）とが半分一致していることを示す相関値の閾値（０）よりも大きいか小さいかを判定している。
【０１４３】
加減算部１１−１は、加算または減算の結果を組み合わせ相関値１０３−１として出力する。さらに加減算部１１−１は、部分相関値１０２−１の符号が正であるか負であるかを示す符号判定結果１０４−１（第１の判定結果）を出力する。なお加減算部１１−１は、図２にかかる部分相関値算出部４３（第４の部分相関値算出部）及び判定部４４に対応する。
【０１４４】
加減算部１１−２には、部分相関値１０１−２及び部分相関値１０２−２が入力される。加減算部１１−２は、部分相関値１０２−２の符号が正である場合には、部分相関値１０１−２と部分相関値１０２−２との加算処理を実行する。加減算部１１−２は、部分相関値１０２−２の符号が負である場合には、部分相関値１０１−２から部分相関値１０２−２を減算する処理を実行する。
【０１４５】
加減算部１１−２は、加算または減算の結果を組み合わせ相関値１０３−２として出力する。さらに加減算部１１−２は、部分相関値１０２−２の符号が正であるか負であるかを示す符号判定結果１０４−２（第２の判定結果）を出力する。このように、加減算部１１−２は、加減算部１１−１と同様の処理を実行する。なお加減算部１１−２は、図２にかかる部分相関値算出部４３（第８の部分相関値算出部）及び判定部４４に対応する。加減算部１１−１及び１１−２の構成については後述する。
【０１４６】
比較部１２は、組み合わせ相関値１０３−１の振幅と組み合わせ相関値１０３−２の大小を比較し、最も大きい相関値（相関度が高い相関値）を識別する符号番号１０５（識別情報）を出力する。例えば、比較部１２は組み合わせ相関値１０３−１を識別する場合には「０００」を、組み合わせ相関値１０３−２を識別する場合には「００１」を、符号番号１０５として出力する。換言すれば、比較部１２は、符号番号１０５として、相関度が高いと判定された組み合わせ相関値相関値を生成する拡散符号に対応する送信データの下位ビット３桁のデータを出力する。
【０１４７】
選択部１３は、符号番号１０５を用いて、符号判定結果１０４−１と符号判定結果１０４−２から１つの符号判定結果を選択し、符号判定選択結果１０６として出力する。例えば、比較部１２は組み合わせ相関値１０３−１を識別する符号番号１０５として「０」を出力した場合に、選択部１３は、組み合わせ相関値１０３−１に対応する符号判定結果１０４−１を選択し、出力する。比較部１２が組み合わせ相関値１０３−２を識別する符号番号１０５として「１」を出力した場合に、選択部１３は、組み合わせ相関値１０３−２に対応する符号判定結果１０４−２を選択し、出力する。換言すれば、選択部１３は、符号番号１０５に基づき、符号判定結果１０４−１と符号判定結果１０４−２のうち、比較部１２において相関度が高いと判定された組み合わせ相関値に関する符号判定結果を選択し、出力する。例えば、選択部１３は、符号判定選択結果１０６として、比較部１２において相関度が高いと判定された相関値を生成する拡散符号に対応する、送信データの上位ビット１桁のデータを出力する。
【０１４８】
整列部１４は、符号番号１０５と符号判定選択結果１０６から、復調結果１０７を生成し、出力する。例えば、比較部１２が組み合わせ相関値１０３−１を識別する符号番号１０５として「０００」を出力し、符号判定結果１０４−１が「０」を出力した状態を仮定する。符号判定結果１０４−１は、部分相関値１０２−１の符号ビットと正の符号ビットとのＸＯＲを取った値である。ここで整列部１４は、符号番号１０５、符号判定結果１０４−１を並び替えることによって、符号番号１０５「０００」を下位ビットに、符号判定結果１０４−１「０」を上位ビットにした送信データ「００００」を復調結果１０７として出力する。この送信データ「００００」は、受信信号との相関が最も高い拡散符号（すなわち送信に用いられた拡散符号）であるＣ０に対応する送信データである。換言すれば、整列部１４は、選択部１３が出力した上位ビット１桁のデータと、比較部１２が出力した下位ビット３桁のデータとを合成することにより、受信信号との相関が最も高い拡散符号に対応するビット４桁の送信データを生成する。これにより、整列部１４は受信信号を復調する。
【０１４９】
上述の例において、選択部１３が符号判定結果１０４−１として「１」を出力した場合には、整列部１４は、受信信号との相関が最も高い拡散符号Ｃ８に対応する送信データ「１０００」を復調結果１０７として出力する。
【０１５０】
比較部１２が組み合わせ相関値１０３−２を識別する符号番号１０５として「００１」を出力した場合に、整列部１４は、拡散符号Ｃ１と受信信号Ｒとの相関値Ｆ１か、拡散符号Ｃ９と受信信号Ｒとの相関値Ｆ９のどちらかが最大の相関値であると判定する。ここで、整列部１４が選択した符号判定結果は符号判定結果１０４−２である。部分相関値１０２−２の符号ビットと正の符号ビットとのＸＯＲを取った値である符号判定結果１０４−２が「０」であれば、整列部１４は、相関値Ｆ１が最大の相関値であると判定する。その場合、整列部１４は、送信に用いられた拡散符号がＣ１と判定し、その符号番号１を２進数化した値「０００１」を復調結果１０７として出力する。選択部１３が符号判定結果１０４−２として「０」ではなく「１」を出力した場合には、整列部１４は、相関値Ｆ９が最大の相関値であると判定する。このため、整列部１４は、送信に用いられた拡散符号がＣ９と判定し、その符号番号８を２進数化した値「１００１」を復調結果１０７として出力する。
【０１５１】
換言すれば、整列部１４は、符号番号１０５と、選択部１３が選択した符号判定選択結果１０６とに基づいて、受信信号との相関が最も高い拡散符号を選択することにより受信信号を復調する。
【０１５２】
加減算部１１の構成について、図５を参照して説明する（以降、加減算部１１−１及び１１−２を総称して加減算部１１と記載する）。図５は、加減算部１１の構成例を示すブロック図である。加減算部１１は、符号判定部２０、符号逆転部２１、正負選択部２２及び加算部２３を備える。
【０１５３】
加減算部１１には、部分相関値１０１と部分相関値１０８とが入力される。例えば加減算部１１−１の場合には、部分相関値１０１は部分相関値１０１−１、部分相関値１０８は部分相関値１０２−１となる。加減算部１１−２の場合には、部分相関値１０１は部分相関値１０１−２、部分相関値１０８は部分相関値１０２−２となる。
【０１５４】
符号判定部２０には、部分相関値１０８の符号２００が入力される。符号２００は、２進数において表した部分相関値１０８の最上位ビットにおける符号ビット（サインビット）により表される。つまり、符号判定部２０は、部分相関値１０８の最上位ビットのみを取得すればよい。
【０１５５】
符号判定部２０は、符号２００と正の符号とが同じか否かを判定する。符号判定部２０は、符号２００と正の符号が同じときは正の符号判定結果１０４を出力し、符号２００と正の符号が異なるときは負の符号判定結果１０４を出力する。換言すれば、符号判定部２０は、部分相関値１０８に正の符号又は負の符号のいずれが付与されているかを判定する。
【０１５６】
ここで、部分相関値１０８が「０」の値である場合には、符号判定部２０において符号２００を正と判定する。上述の通り、部分相関値１０８を２進数において表した場合に、その正負は、最上位ビットにおける符号ビットにより表される。実施の形態４では、部分相関値１０８が正の値又は「０」である場合にはその符号ビットは「０」となり、部分相関値１０８が負の値である場合にはその符号ビットは「１」となる。そのため、部分相関値１０８が「０」である場合には、部分相関値１０８は正と判定される。
【０１５７】
符号逆転部２１は、入力された部分相関値１０８の正負を逆転した逆転相関値２０１を出力する。換言すれば、第２の入力信号１０２−１（Ｒｑ）と第２の拡散符号（Ｃｑ０）とが半分一致していることを示す相関値の閾値（０）と、部分相関値１０８との差分を２倍した値を部分相関値１０８に加算した相関値を出力する。符号判定部２０には、０が閾値として設定される。なお符号逆転部２１は、図２にかかる部分相関値算出部４３（第４の部分相関値算出部又は第８の部分相関値算出部）に対応する。
【０１５８】
なお、部分相関値１０８が０の場合には、符号逆転部２１は０を出力する。
【０１５９】
正負選択部２２には、部分相関値１０８、逆転相関値２０１及び符号判定結果１０４が入力される。正負選択部２２は、符号判定結果１０４が正ならば部分相関値１０８を部分相関値２０２として出力し、負ならば逆転相関値２０１を部分相関値２０２として出力する。つまり、正負選択部２２は、符号判定結果１０４が負の場合には、符号判定結果１０４が正の場合に出力する相関値と正負を逆転した相関値を選択して出力する。
【０１６０】
換言すれば、正負選択部２２は、符号判定部２０の判定結果に応じて、部分相関値１０１又は部分相関値１０８のうち、拡散符号Ｃ０（Ｃ８）又は拡散符号Ｃ１（Ｃ９）のうちで受信信号と高い相関を示す拡散符号と受信信号との相関値を構成する部分相関値を選択する。
【０１６１】
加算部２３には、部分相関値１０１と部分相関値２０２とが入力される。加算部２３は、部分相関値１０１と部分相関値２０２との加算を実行し、加算結果を組み合わせ相関値１０３として出力する。加算部２３は加算器により構成されている。加算部２３は、正負選択部２２が選択した部分相関値に部分相関値１０１を加算することにより、拡散符号Ｃ０（Ｃ８）又は拡散符号Ｃ１（Ｃ９）のうちで受信信号と高い相関を示す拡散符号と前記受信信号との相関値を生成する。
【０１６２】
なお、符号判定部２０、正負選択部２２及び加算部２３は、図２にかかる判定部４４に対応する。つまり、符号判定部２０、正負選択部２２及び加算部２３は、部分相関値１０８に正の符号が付与されている場合には、拡散符号Ｃ０（Ｃ８）の方が拡散符号Ｃ１（Ｃ９）よりも前記受信信号と高い相関を示すと判定し、部分相関値１０８に負の符号が付与されている場合には、拡散符号Ｃ１（Ｃ９）の方が拡散符号Ｃ０（Ｃ８）よりも前記受信信号と高い相関を示すと判定している。
【０１６３】
以上の加減算部１１の処理の説明を換言すると、部分相関値１０８が「０」という基準と同じ又はそれ以上に相関度が大きい（相関が基準より高い）場合には、加減算部１１は、部分相関値１０１と部分相関値１０８とを加算した相関値が高い相関を示すと判定し、その相関値を生成して出力する。
【０１６４】
同様に、部分相関値１０８が「０」という基準より低い（相関が基準より低い）場合には、加減算部１１は、部分相関値１０１と部分相関値１０８を反転した値とを加算した相関値が高い相関を示すと判定し、その相関値を生成して出力する。
【０１６５】
以上に示した復調装置は、以下の効果を奏する。
【０１６６】
まず、相関値生成の演算量を削減できることが効果として言える。これは、拡散符号Ｃｋと拡散符号Ｃ（ｋ＋８）は奇数番目のチップが等しいため、拡散符号Ｃｋの相関値Ｆｋ、拡散符号Ｃ（ｋ＋８）の相関値Ｆ（ｋ＋８）のいずれを計算するにしても、第１の拡散符号Ｃｉｋの部分相関値Ｆｉｋを計算に共通して使用できるためである。
【０１６７】
さらに、拡散符号Ｃｋと拡散符号Ｃ（ｋ＋８）の偶数番目のチップはビット反転している。そのため、相関値Ｆｋ、相関値Ｆ（ｋ＋８）のいずれを計算するにしても、拡散符号Ｃｑｋにかかる部分相関値Ｆｑｋの計算結果を共通して使用することができる。つまり、部分相関値Ｆｉｋの計算結果と部分相関値Ｆｑｋの計算結果とを、相関値Ｆｋの計算と相関値Ｆ（ｋ＋８）の計算に共通して使用できる（相関演算の共有化ができる）。これにより、相関値生成の演算量をさらに削減できる。
【０１６８】
具体的には、拡散符号Ｃｋの相関値Ｆｋは、拡散符号Ｃｉｋの部分相関値Ｆｉｋと、拡散符号Ｃｑｋの部分相関値Ｆｑｋとを加算することにより生成することができる。拡散符号Ｃ（ｋ＋８）の相関値Ｆ（ｋ＋８）は、部分相関値Ｆｉｋから部分相関値Ｆｑｋを減算することにより生成することができる。このようにして、相関値生成の演算量を１／２に削減することができる。
【０１６９】
さらに、相関値比較の演算量を削減できることが効果として言える。これは、相関値Ｆｋと相関値Ｆ（ｋ＋８）のうち、大きい相関値だけを選択して生成することができるからである。
【０１７０】
部分相関値Ｆｑ（ｋ＋８）は、部分相関値Ｆｑｋの数値と同じ数値であって、異なる符号が付与された相関値である。そのため、加減算部１１において、部分相関値１０８（部分相関値Ｆｑｋ）の符号を逆転（変更）させた逆転相関値２０１を生成することにより、容易にＦｑ（Ｋ＋８）を生成することができる。従って、加減算部１１（第４の部分相関値算出部）の構成をより簡易にすることができる。
【０１７１】
上述の通り、相関値Ｆｋは、部分相関値Ｆｉｋと部分相関値Ｆｑｋとを加算した値であり、相関値Ｆ（ｋ＋８）は、部分相関値Ｆｉｋから部分相関値Ｆｑｋを減算した値である。そのため、部分相関値Ｆｑｋの符号が正であるか負であるかを判定することにより、相関値Ｆｋと相関値Ｆ（ｋ＋８）の大小を判定することが可能となる。この符号判定の結果から、大きい相関値だけを選択して生成することができる。このようにして、生成される相関値の数を１／２に削減することによって、相関値比較の回数が削減され、演算量を削減することができる。
【０１７２】
加減算部１１は、符号判定部２０、正負選択部２２及び加算部２３を備えることにより、簡易な構成で相関値Ｆｋと相関値Ｆ（ｋ＋８）のうち大きい相関値だけを選択して生成することができる。
【０１７３】
さらに実施の形態４では、第２の入力信号１０２−１（Ｒｑ）と第２の拡散符号（Ｃｑ０）とが半分一致している場合の両者の相関値の閾値は０である。このように設定することにより、拡散符号が反転した場合に、両者の相関値は数値が同じで符号が反転した（符号が異なる）ものにすることができる。さらに、相関値における相関の高さをより正確に表すことができる。ここで、符号を正の符号と負の符号に設定することにより、復調装置上において、２進数の正負表現をそのまま用いて符号を表すことができる。別の観点からいえば、符号判定部２０は、部分相関値１０８の一部を取得することにより、部分相関値１０８の符号を判定することができる。
【０１７４】
さらに、復調装置１５は、相関部１０−３、１０−４、加減算部１１−２、比較部１２、選択部１３及び整列部１４を備える。相関部１０−３、１０−４、加減算部１１−２は相関部１０−１、１０−２、加減算部１１−１と同様の処理を実行する。比較部１２は、加減算部１１−１、１１−２が出力した相関値のうちで最も大きい相関値を識別する符号番号１０５を出力する。選択部１３は、符号番号１０５に基づいて符号判定選択結果１０６を出力する。整列部１４は、符号番号１０５と符号判定選択結果１０６に基づいて、復調結果１０７を生成し、出力する。このようにして、拡散符号が２種類より多くある場合（例えば４種類）でも、復調装置１５は簡易な構成によって入力信号を復調することができる。
【０１７５】
実施の形態４において受信信号を送信する送信装置は、受信信号をＩ成分（同相成分）とＱ成分（直交成分）に分割して送信しており、復調装置１５の各部分相関値算出部は、送信された受信信号のＩ成分とＱ成分についての部分相関値を算出している。そのため、復調装置１５は、図９Ｂにおいて示すようなパラレル／シリアル変換部７１を備えずに、受信信号の復調を実行することができる。従って、復調装置１５に備える回路の大きさを小さくすることができる。なお、受信信号を分割した成分については、Ｉ成分とＱ成分に限られない。
【０１７６】
復調装置１５は特に、受信信号を送信する送信装置との通信方式においてＺｉｇＢｅｅが用いられる場合について、信号の復調が可能である。
【０１７７】
なお、ＺｉｇＢｅｅは、小型の機器に備えられることが多い。その場合、復調装置１５の大きさをできるだけ小型にすることが要求される。実施の形態４に記載した復調装置１５は、演算量の削減を実行することにより、相関部１０及び加減算部１１の大きさを小型にすることができる。従って、復調装置１５の大きさをできるだけ小型にすることに寄与することができる。
【０１７８】
さらに、比較部１２は、復調対象の送信データの下位ビット３桁のデータを出力し、選択部１３は、その送信データの上位ビット１桁のデータを出力している。そして、整列部１４は、それらのデータを合成することにより、受信信号との相関が最も高い拡散符号に対応するビット４桁の送信データを生成する。つまり、整列部１４はデータの並び替えのみを実行すればよい。そのため、整列部１４の構成を簡易なものとできる。従って、復調装置１５の小型化という効果を奏する。なお、図７に示す通り、拡散符号Ｃ０〜Ｃ７に対応する送信データの上位１ビット１桁は「０」、拡散符号Ｃ８〜Ｃ１６に対応する送信データの上位１ビット１桁は「１」である。ここで、符号２００が「０」であれば、加減算部１１は拡散符号Ｃ０〜Ｃ７のいずれかと受信信号との相関値を出力し、符号２００が「１」であれば、加減算部１１は拡散符号Ｃ８〜Ｃ１６のいずれかと受信信号との相関値を出力する。この通り、符号２００は、加減算部１１が出力する相関値を生成する拡散符号に対応する送信データの上位１ビット１桁と同じである。このため、加減算部１１は簡易な構成で、加減算部１１が出力する相関値を生成する拡散符号に対応する送信データの上位１ビット１桁を出力することができる。
【０１７９】
なお、実施の形態４では、部分相関値１０８が「０」の値である場合に、符号判定部２０が符号２００を正と判定した。しかし、符号判定部２０は符号２００を負と判定してもよい。この場合において、正負選択部２２は、符号逆転部２１から出力された逆転相関値２０１を出力する。しかし、逆転相関値２０１の値は「０」であるため、正負選択部２２が部分相関値１０８を出力したときと、正負選択部２２が出力する値は変わらない。よって、実際には、符号判定部２０は符号２００を負と判定しても、加減算部１１は上述と同様の処理を実行することができる。
【０１８０】
第２の入力信号１０２−１（Ｒｑ）と第２の拡散符号（Ｃｑ０）とが半分一致している場合の両者の相関値の閾値は０としなくともよく、他の値（例えば［原理の説明］におけるＨ）でもよい。この場合、部分相関値は上述の（式１０）の通り求められる。そして、加減算部１１では、符号逆転部２１に代えて、部分相関値１０８及びＨの値に基づいて部分相関値を生成する部分相関値算出部を設ければよい。
【０１８１】
ただし、このような部分相関値算出部よりも符号逆転部２１を設ける方が、加減算部１１の構成が容易なものになる。そのため、図４の通り、符号を逆転させることによって部分相関値を生成するようにした方が、実施上はより望ましい。
【０１８２】
信号の送受信に用いる拡散符号は４種類に限られない。例えば、図７における拡散符号Ｃ０とＣ８の２種類でもよい。その場合、復調装置１５における相関部１０−３、１０−４は不要である。そして、加減算部１１−１は、部分相関値１０８の符号が正である場合には、拡散符号Ｃ０がＣ８よりも相関が高いと判定し、部分相関値１０８の符号が負である場合には、拡散符号Ｃ８がＣ０よりも相関が高いと判定する。そのため、比較部１２、選択部１３、整列部１４は復調装置１５において設けなくてもよい。
【０１８３】
比較部１２が出力する符号番号１０５、加減算部１１が出力する符号判定結果１０４についても、上述の例に限られない。その場合、整列部１４は、符号番号１０５及び符号判定選択結果１０６に基づいて、受信信号との相関が最も高い拡散符号（送信に用いられた拡散符号）を特定し、その拡散符号にかかる送信データを出力すればよい。符号番号１０５及び符号判定選択結果１０６に基づいて送信に用いられた拡散符号を特定可能な理由については上述の通りである。このようにしても、復調装置１５は受信信号を復調することができる。しかしながら、整列部１４の構成を簡易なものとするためには、上述の例に記載した方法で処理を実行するのが望ましい。
【０１８４】
その他、実施の形態４に係る復調装置においては、上述の［原理の説明］において説明した処理内容の変更をすることが可能である。
【０１８５】
実施の形態５
以下、図面を参照して本発明の実施の形態５について説明する。実施の形態５では、実施の形態４に記載した方法を適用したＺｉｇＢｅｅの復調方法例を説明する。
【０１８６】
実施の形態５における、送信データ｛ｂ０，ｂ１，ｂ２，ｂ３｝と拡散符号｛ｃ０，ｃ１，・・・，ｃ３１｝の対応は図７に示す通りである。図７に示す通り、ＺｉｇＢｅｅの拡散符号については、符号の長さＭはＭ＝３２、符号の種類ｎはｎ＝１６となる。前述の通り、拡散符号Ｃｋと拡散符号Ｃ（ｋ＋８）は、奇数番目のチップ（ｃ０，ｃ２，ｃ４，・・・，ｃ３０）が等しく、偶数番目のチップ（ｃ１，ｃ３，ｃ５，・・・，ｃ３１）は値をビット反転した関係になっている。
【０１８７】
ＺｉｇＢｅｅの拡散符号は奇数番目のチップがＩ成分に、偶数番目のチップがＱ成分にマッピングされるため、拡散符号Ｃｎの奇数番目のチップを集めた符号（部分符号）をＣｉｎ、偶数番目のチップを集めた符号（部分符号）をＣｑｎと定義する。
【０１８８】
図８において、ＺｉｇＢｅｅにおける送信データと拡散符号のＩ成分（Ｃｉｎ）及びＱ成分（Ｃｑｎ）の対応関係を示す。拡散符号Ｃｉｋと拡散符号Ｃｉ（ｋ＋８）とは等しく、拡散符号Ｃｑｋと拡散符号Ｃｑ（ｋ＋８）とは値をビット反転した関係になっている。
【０１８９】
従って、受信信号ＲのＩ成分の信号Ｒｉと拡散符号Ｃｉ０〜Ｃｉ７との部分相関値Ｆｉ０〜Ｆｉ７と、受信信号ＲのＱ成分の信号Ｒｑと拡散符号Ｃｑ０〜Ｃｑ７との部分相関値Ｆｑ０〜Ｆｑ７を求めればよい。これにより、前述の原理から、受信信号Ｒと拡散符号Ｃ０〜Ｃ１５との相関値Ｆ０〜Ｆ１５を求める演算量を１／２に削減することができる。
【０１９０】
さらに、相関値Ｆｋと相関値Ｆ（ｋ＋８）のうち、大きな値を有する相関値だけを求めることができる。これは、部分相関値Ｆｑ（ｋ＋８）の符号が正であれば、部分相関値Ｆｉｋと部分相関値Ｆｑ（ｋ＋８）を加算して相関値Ｆｋを求め、部分相関値Ｆｑ（ｋ＋８）の符号が負であれば、部分相関値Ｆｉｋから部分相関値Ｆｑ（ｋ＋８）を減算して相関値Ｆ（ｋ＋８）を求められるためである。これにより、比較の演算量を１／２に削減することができる。
【０１９１】
図６に、実施の形態５におけるＺｉｇＢｅｅの復調装置を示す。ＺｉｇＢｅｅの復調装置１６は、相関部１０−１〜１０−１６、加減算部１１−１〜１１−８、比較部１２、選択部１３及び整列部１４を備える。ＺｉｇＢｅｅの復調装置１０８には、第１の入力信号１００−１と第２の入力信号１００−２が入力される。なお、図４記載の復調装置１５と同一の構成要素については同一の符号が付されており、実施の形態４にて記載した説明は適宜省略する。
【０１９２】
第１の入力信号１００−１及び第２の入力信号１００−２は、復調装置１６が受信した信号のＩ成分（Ｒｉ）及びＱ成分（Ｒｑ）である。復調装置は、送信装置が無線で出力した送信信号を受信し、それを図示せぬＯＱＰＳＫ復調部によって、Ｉ成分（第１の入力信号１００−１）及びＱ成分（第２の入力信号１００−２）に分けて出力する。ここで復調装置１６は、図９Ｂにおいて示すようなパラレル／シリアル変換部７１を備えていない。
【０１９３】
相関部１０−１は、第１の入力信号１００−１と拡散符号Ｃｉ０との部分相関値１０１−１を演算する。相関部１０−２は、第２の入力信号１００−２と拡散符号Ｃｑ０との部分相関値１０２−１を演算する。相関部１０−３は、第１の入力信号１００−１と拡散符号Ｃｉ１との部分相関値１０１−２を演算する。相関部１０−４は、第２の入力信号１００−２と拡散符号Ｃｑ１との部分相関値１０２−２を演算する。相関部１０−５は、第１の入力信号１００−１と拡散符号Ｃｉ２との部分相関値１０１−３を演算する。相関部１０−６は、第２の入力信号１００−２と拡散符号Ｃｑ２との部分相関値１０２−３を演算する。相関部１０−７は、第１の入力信号１００−１と拡散符号Ｃｉ３との部分相関値１０１−４を演算する。相関部１０−８は、第２の入力信号１００−２と拡散符号Ｃｑ３との部分相関値１０２−４を演算する。相関部１０−９は、第１の入力信号１００−１と拡散符号Ｃｉ４との部分相関値１０１−５を演算する。相関部１０−１０は、第２の入力信号１００−２と拡散符号Ｃｑ４との部分相関値１０２−５を演算する。相関部１０−１１は、第１の入力信号１００−１と拡散符号Ｃｉ５との部分相関値１０１−６を演算する。相関部１０−１２は、第２の入力信号１００−２と拡散符号Ｃｑ５との部分相関値１０２−６を演算する。相関部１０−１３は、第１の入力信号１００−１と拡散符号Ｃｉ６との部分相関値１０１−７を演算する。相関部１０−１４は、第２の入力信号１００−２と拡散符号Ｃｑ６との部分相関値１０２−７を演算する。相関部１０−１５は、第１の入力信号１００−１と拡散符号Ｃｉ７との部分相関値１０１−８を演算する。相関部１０−１６は、第２の入力信号１００−２と拡散符号Ｃｑ７との部分相関値１０２−８を演算する。実施の形態５では実施の形態４と同様、各相関部において、入力信号に乗算される拡散符号が反転する場合に、相関値の符号が反転するように相関値が計算される。
【０１９４】
加減算部１１−１は、部分相関値１０２−１の符号が正の符号と同じ場合には部分相関値１０１−１と部分相関値１０２−１との加算を、相関値１０２−１の符号が正の符号と異なる場合には部分相関値１０１−１から部分相関値１０２−１の減算を実行する。加減算部１１−１は、部分相関値１０２−１の符号が正の符号と同じか否かを示す符号判定結果１０４を出力するほか、加算または減算の結果を組み合わせ相関値１０３として出力する。加減算部１１−２〜１１−８も同様の処理を実行する。なお、加減算部１１−１〜１１−８の具体的な構成については図５に示した通りである。
【０１９５】
比較部１２は、組み合わせ相関値１０３−１〜１０３−８の大きさを比較し、最も大きい相関値を識別する符号番号１０５を出力する。
【０１９６】
選択部１３は、符号番号１０５を用いて符号判定結果１０４−１〜１０４−８の中から１つの符号判定結果を選択し、符号判定選択結果１０６として出力する。
【０１９７】
整列部１４は、符号番号１０５と符号判定選択結果１０６に基づいて、復調結果１０７として出力する。
【０１９８】
以下、復調装置１０８の処理について説明する。入力信号１００−１には、受信信号ＲのＩ成分の信号Ｒｉが入力され、入力信号１００−２には、受信信号ＲのＱ成分の信号Ｒｑが入力される。
【０１９９】
相関部１０−１はＲｉとＣｉ０との逆拡散を行い、部分相関値１０１−１を出力する。相関部１０−２はＲｑとＣｑ０との逆拡散を行い、部分相関値１０２−１を出力する。
【０２００】
相関部１０−３はＲｉとＣｉ１との逆拡散を行い、部分相関値１０１−２を出力する。相関部１０−４はＲｑとＣｑ１との逆拡散を行い、部分相関値１０２−２を出力する。
【０２０１】
相関部１０−５はＲｉとＣｉ２との逆拡散を行い、部分相関値１０１−３を出力する。相関部１０−６はＲｑとＣｑ２との逆拡散を行い、部分相関値１０２−３を出力する。
【０２０２】
相関部１０−７はＲｉとＣｉ３との逆拡散を行い、部分相関値１０１−４を出力する。相関部１０−８はＲｑとＣｑ３との逆拡散を行い、部分相関値１０２−４を出力する。
【０２０３】
相関部１０−９はＲｉとＣｉ４との逆拡散を行い、部分相関値１０１−５を出力する。相関部１０−１０はＲｑとＣｑ４との逆拡散を行い、部分相関値１０２−５を出力する。
【０２０４】
相関部１０−１１はＲｉとＣｉ５との逆拡散を行い、部分相関値１０１−６を出力する。相関部１０−１２はＲｑとＣｑ５との逆拡散を行い、部分相関値１０２−６を出力する。
【０２０５】
相関部１０−１３はＲｉとＣｉ６との逆拡散を行い、部分相関値１０１−７を出力する。相関部１０−１４はＲｑとＣｑ６との逆拡散を行い、部分相関値１０２−７を出力する。
【０２０６】
相関部１０−１５はＲｉとＣｉ７との逆拡散を行い、部分相関値１０１−８を出力する。相関部１０−１６はＲｑとＣｑ７との逆拡散を行い、部分相関値１０２−８を出力する。
【０２０７】
加減算部１１−１は、ＲｑとＣｑ０との部分相関値１０２−１の符号と正の符号とを比較する。加減算部１１−１は、両者の符号が同じ場合には部分相関値１０１−１と部分相関値１０２−１とを加算することによって受信信号Ｒと拡散符号Ｃ０との相関値を生成する。両者の符号が異なる場合（部分相関値１０２−１の符号が負である場合）には、加減算部１１−１は部分相関値１０１−１から部分相関値１０２−１を減算することによって受信信号Ｒと拡散符号Ｃ８との相関値を生成する。加減算部１１−１は、生成した相関値を組み合わせ相関値１０３−１として出力する。
【０２０８】
また、加減算部１１−１は、部分相関値１０２−１の符号と正の符号とが同じ場合、符号判定結果１０４−１として「０」を、符号が異なる場合、「１」を出力する。
【０２０９】
組み合わせ相関値１０３−１は、受信信号Ｒと拡散符号Ｃ０との相関値と、受信信号Ｒと拡散符号Ｃ８との相関値のうち、大きい方の相関値が選択されて出力されている。また、符号判定結果１０４−１は、図７の表のｂ３のビットの値を表している。
【０２１０】
加減算部１１−２は、ＲｑとＣｑ１との部分相関値１０２−２の符号と正の符号とを比較する。加減算部１１−２は、両者の符号が同じ場合には部分相関値１０１−２と部分相関値１０２−２とを加算することによって受信信号Ｒと拡散符号Ｃ１との相関値を生成する。両者の符号が異なる場合には、加減算部１１−２は部分相関値１０１−２から部分相関値１０２−２を減算することによって受信信号Ｒと拡散符号Ｃ９との相関値を生成する。加減算部１１−２は、生成した相関値を組み合わせ相関値１０３−２として出力する。
【０２１１】
また、加減算部１１−２は、部分相関値１０２−２の符号と正の符号とが同じ場合、符号判定結果１０４−２として「０」を、符号が異なる場合、「１」を出力する。
【０２１２】
組み合わせ相関値１０３−２は、受信信号Ｒと拡散符号Ｃ１との相関値と、受信信号Ｒと拡散符号Ｃ９との相関値のうち、大きい方の相関値が選択されて出力されている。また、符号判定結果１０４−２は、図７の表のｂ３のビットの値を表している。
【０２１３】
加減算部１１−３は、ＲｑとＣｑ２との部分相関値１０２−３の符号と正の符号とを比較する。加減算部１１−２は、両者の符号が同じ場合には部分相関値１０１−３と部分相関値１０２−３とを加算することによって受信信号Ｒと拡散符号Ｃ２との相関値を生成する。両者の符号が異なる場合には、加減算部１１−３は部分相関値１０１−３から部分相関値１０２−３を減算することによって受信信号Ｒと拡散符号Ｃ１０との相関値を生成する。加減算部１１−３は、生成した相関値を組み合わせ相関値１０３−３として出力する。
【０２１４】
また、加減算部１１−３は、部分相関値１０２−３の符号と正の符号とが同じ場合、符号判定結果１０４−３として「０」を、符号が異なる場合、「１」を出力する。
【０２１５】
組み合わせ相関値１０３−３は、受信信号Ｒと拡散符号Ｃ２との相関値と、受信信号Ｒと拡散符号Ｃ１０との相関値のうち、大きい方の相関値が選択されて出力されている。また、符号判定結果１０４−３は、図７の表のｂ３のビットの値を表している。
【０２１６】
加減算部１１−４は、ＲｑとＣｑ３との部分相関値１０２−４の符号と正の符号とを比較する。加減算部１１−４は、両者の符号が同じ場合には部分相関値１０１−４と部分相関値１０２−４とを加算することによって受信信号Ｒと拡散符号Ｃ３との相関値を生成する。両者の符号が異なる場合には、加減算部１１−４は部分相関値１０１−４から部分相関値１０２−４を減算することによって受信信号Ｒと拡散符号Ｃ１１との相関値を生成する。加減算部１１−４は、生成した相関値を組み合わせ相関値１０３−４として出力する。
【０２１７】
また、加減算部１１−４は、部分相関値１０２−４の符号と正の符号とが同じ場合、符号判定結果１０４−４として「０」を、符号が異なる場合、「１」を出力する。
【０２１８】
組み合わせ相関値１０３−４は、受信信号Ｒと拡散符号Ｃ３との相関値と、受信信号Ｒと拡散符号Ｃ１１との相関値のうち、大きい方の相関値が選択されて出力されている。また、符号判定結果１０４−４は、図７の表のｂ３のビットの値を表している。
【０２１９】
加減算部１１−５は、ＲｑとＣｑ４との部分相関値１０２−５の符号と正の符号とを比較する。加減算部１１−５は、両者の符号が同じ場合には部分相関値１０１−５と部分相関値１０２−５とを加算することによって受信信号Ｒと拡散符号Ｃ４との相関値を生成する。両者の符号が異なる場合には、加減算部１１−５は部分相関値１０１−５から部分相関値１０２−５を減算することによって受信信号Ｒと拡散符号Ｃ１２との相関値を生成する。加減算部１１−５は、生成した相関値を組み合わせ相関値１０３−５として出力する。
【０２２０】
また、加減算部１１−５は、部分相関値１０２−５の符号と正の符号とが同じ場合、符号判定結果１０４−５として「０」を、符号が異なる場合、「１」を出力する。
【０２２１】
組み合わせ相関値１０３−５は、受信信号Ｒと拡散符号Ｃ４との相関値と、受信信号Ｒと拡散符号Ｃ１２との相関値のうち、大きい方の相関値が選択されて出力されている。また、符号判定結果１０４−５は、図７の表のｂ３のビットの値を表している。
【０２２２】
加減算部１１−６は、ＲｑとＣｑ５との部分相関値１０２−６の符号と正の符号とを比較する。加減算部１１−６は、両者の符号が同じ場合には部分相関値１０１−６と部分相関値１０２−６とを加算することによって受信信号Ｒと拡散符号Ｃ５との相関値を生成する。両者の符号が異なる場合には、加減算部１１−６は部分相関値１０１−６から部分相関値１０２−６を減算することによって受信信号Ｒと拡散符号Ｃ１３との相関値を生成する。加減算部１１−６は、生成した相関値を組み合わせ相関値１０３−６として出力する。
【０２２３】
また、加減算部１１−６は、部分相関値１０２−６の符号と正の符号とが同じ場合、符号判定結果１０４−６として「０」を、符号が異なる場合、「１」を出力する。
【０２２４】
組み合わせ相関値１０３−６は、受信信号Ｒと拡散符号Ｃ５との相関値と、受信信号Ｒと拡散符号Ｃ１３との相関値のうち、大きい方の相関値が選択されて出力されている。また、符号判定結果１０４−６は、図７の表のｂ３のビットの値を表している。
【０２２５】
加減算部１１−７は、ＲｑとＣｑ６との部分相関値１０２−７の符号と正の符号とを比較する。加減算部１１−７は、両者の符号が同じ場合には部分相関値１０１−７と部分相関値１０２−７とを加算することによって受信信号Ｒと拡散符号Ｃ６との相関値を生成する。両者の符号が異なる場合には、加減算部１１−７は部分相関値１０１−７から部分相関値１０２−７を減算することによって受信信号Ｒと拡散符号Ｃ１４との相関値を生成する。加減算部１１−７は、生成した相関値を組み合わせ相関値１０３−７として出力する。
【０２２６】
また、加減算部１１−７は、部分相関値１０２−７の符号と正の符号とが同じ場合、符号判定結果１０４−７として「０」を、符号が異なる場合、「１」を出力する。
【０２２７】
組み合わせ相関値１０３−７は、受信信号Ｒと拡散符号Ｃ６との相関値と、受信信号Ｒと拡散符号Ｃ１４との相関値のうち、大きい方の相関値が選択されて出力されている。また、符号判定結果１０４−７は、図７の表のｂ３のビットの値を表している。
【０２２８】
加減算部１１−８は、ＲｑとＣｑ７との部分相関値１０２−８の符号と正の符号とを比較する。加減算部１１−８は、両者の符号が同じ場合には部分相関値１０１−８と部分相関値１０２−８とを加算することによって受信信号Ｒと拡散符号Ｃ７との相関値を生成する。両者の符号が異なる場合には、加減算部１１−８は部分相関値１０１−８から部分相関値１０２−８を減算することによって受信信号Ｒと拡散符号Ｃ１５との相関値を生成する。加減算部１１−８は、生成した相関値を組み合わせ相関値１０３−８として出力する。
【０２２９】
また、加減算部１１−８は、部分相関値１０２−８の符号と正の符号とが同じ場合、符号判定結果１０４−８として「０」を、符号が異なる場合、「１」を出力する。
【０２３０】
組み合わせ相関値１０３−８は、受信信号Ｒと拡散符号Ｃ７との相関値と、受信信号Ｒと拡散符号Ｃ１５との相関値のうち、大きい方の相関値が選択されて出力されている。また、符号判定結果１０４−８は、図７の表のｂ３のビットの値を表している。
【０２３１】
比較部１２は、組み合わせ相関値１０３−１〜１０３−８のうち、最大の組み合わせ相関値を選択し、その符号番号１０５を出力する。この符号番号１０５は、最大の組み合わせ相関値を出力した加減算部を識別する信号である。この加減算部を識別する信号は、加減算部ごとに異なる値を有する。符号番号１０５は、例えば０〜７の８種類の値であり、図７の表の｛ｂ２，ｂ１，ｂ０｝に対応する３ビットの信号である。例えば、比較部１２は、加減算部１１−１が出力した組み合わせ相関値１０３−１を選択する場合には符号番号１０５として「０００」を出力し、加減算部１１−２が出力した組み合わせ相関値１０３−１を選択する場合には符号番号１０５として「００１」を出力する。換言すれば、比較部１２は、符号番号１０５として、相関度が高いと判定された組み合わせ相関値相関値を生成する拡散符号に対応する送信データの下位ビット３桁のデータを出力する。
【０２３２】
選択部１３は、符号判定結果１０４−１〜１０４−８のうち、符号番号１０５が示す、最大の相関値を出力した加減算部から出力された符号判定結果を１つ選択し、符号判定選択結果１０６として出力する。例えば、符号番号１０５が「０００」のときは加減算部１１−１が出力した符号判定結果１０４−１を、符号番号１０５が「００１」のときは加減算部１１−２が出力した符号判定結果１０４−２を、というようにそれぞれ符号番号の値に対応する符号判定結果が選択される。換言すれば、選択部１３は、符号判定選択結果１０６として、比較部１２において相関度が高いと判定された相関値を生成する拡散符号に対応する、送信データの上位ビット１桁のデータを出力する。
【０２３３】
整列部１４は、符号判定選択結果１０６と符号番号１０５を復調し、復調結果（復調データ）１０８として出力する。例えば符号判定選択結果１０６が図７の表のｂ３の１ビットを表し、符号番号１０５が図７の表の｛ｂ２，ｂ１，ｂ０｝の３ビットを表している場合、｛ｂ３，ｂ２，ｂ１，ｂ０｝の順に並び替えることで、復調を実現できる。換言すれば、整列部１４は、選択部１３が出力した上位ビット１桁のデータと、比較部１２が出力した下位ビット３桁のデータとを合成することにより、受信信号との相関が最も高い拡散符号に対応するビット４桁の送信データを生成する。これにより、整列部１４は受信信号を復調する。
【０２３４】
復調装置１０８が以上の構成を有することにより、相関値を生成するための演算量と振幅比較のための演算量を削減することが可能となる。具体的には、受信信号Ｒと拡散符号Ｃｎの相関値を生成するための演算量は、従来では長さ３２の拡散符号が１６種類あったために５１２回の積和演算が必要だった。しかし、本例にかかる復調装置では長さ１６の拡散符号が１６種類あるため、相関値を生成するための演算量は２５６回の積和演算で可能となった。つまり、相関値を生成するための演算量を１／２に削減することができる。
【０２３５】
また、加減算部１１は、符号判定によって加算か減算かによって得られる相関値の一方のみを出力する。そのため、相関値の大きさの比較のために必要な演算回数は、従来では１５回だったところ、７回ですむ。そのため、比較のための演算量を１／２に削減することができる。以上のようにして、ＺｉｇＢｅｅにおいてスペクトラム拡散された受信信号を復調することができる。
【０２３６】
その他、復調装置１６は、実施の形態４にかかる復調装置１５と同様の効果を奏する。
【０２３７】
本発明は、拡散符号を用いて受信信号を復調する装置に適用することができる。具体例として、ＺｉｇＢｅｅの復調処理において、復調の精度をできるだけ劣化させずに、相関値の生成及び相関値の比較における演算量を削減する装置を提供することができる。
【０２３８】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【０２３９】
実施の形態１で記載した復調装置は、ＺｉｇＢｅｅだけでなく、ＣＣＫ（Complementary Code Keying）の通信方式においても適用することができる。
【０２４０】
実施の形態４、５に記載した処理内容については、実施の形態１、２、３に適用することができる。
【０２４１】
例えば、実施の形態１における部分相関値算出部３０及び３１の相関値の計算では、相関が基準と同じ又は前記基準よりも高い場合には第１の符号を、相関が前記基準よりも低い場合には第２の符号を付与してもよい。ここで、第２の部分符号は第１の部分符号が反転したデータである。第１の部分相関値３０１は、第１の符号又は第２の符号が付与された何らかの数値を有する相関値である。第２の部分相関値３０２は、第１の部分相関値とは異なる符号が付与されているが、第１の部分相関値３０１と同じ数値を有する相関値である。そして、部分相関値算出部３１は、第１の部分相関値３０１に付与された符号を変更することにより第２の部分相関値３０２を算出する。このとき、部分相関値算出部３１は符号を変更することにより、容易に第２の部分相関値３０２を算出することができる。
【０２４２】
上述の相関値の計算における第１の符号及び第２の符号は、一方が正の符号、他方が負の符号としてもよい。これにより、２進数における第１の符号及び第２の符号の表現を容易にすることができる。
【０２４３】
第２の部分符号は第１の部分符号が反転したデータである場合に、部分相関値算出部３１は、受信信号の一部と第１の拡散符号に含まれる第１の部分符号とが半分一致している場合の基準相関値及び第１の部分相関値３０１を用いて、第２の部分相関値３０２を算出してもよい。このようにしても、第２の部分相関値３０２を直接算出せずに、第１の部分相関値３０１を用いて算出することができる。
【０２４４】
実施の形態２において、復調装置５５は、受信信号を送信する送信装置から、受信信号を第１の成分及び第２の成分に分割するように受信してもよい。ここで第１の成分、第２の成分は、例えば信号のＩ成分、Ｑ成分である。部分相関値算出部４０は、受信信号４００の第１の成分と、第１の部分符号との相関値である部分相関値４０１を算出する。部分相関値算出部４１は、受信信号４００の第２の成分と、第２の部分符号との相関値である部分相関値４０２を算出する。
【０２４５】
部分相関値算出部４２は、受信信号４００の第１の成分と、第３の部分符号との相関値である部分相関値を算出する。部分相関値算出部４３は、受信信号４００の第２の成分と、第４の部分符号との相関値である部分相関値を算出する。このようにすることにより、復調装置１５は、第１の成分と第２の成分とを混合して出力するパラレル／シリアル変換部を備えずにすむ。実施の形態３においても、同様のことがいえる。実施の形態２、３は、ＺｉｇＢｅｅによる信号の送受信に適用することができる。
【０２４６】
実施の形態４、５では相関値の計算において乗算器を用いたが、［原理の説明］に記載した通り、ＸＯＲ回路又はＸＮＯＲ回路を用いることにより相関値を計算することもできる。
【０２４７】
実施の形態４において、加減算部１１−１、１１−２のうち少なくともいずれかは、図５に示した加減算部の構成を有さなくてもよい。拡散符号Ｃｋと拡散符号Ｃ（ｋ＋８）の中で受信信号と高い相関を示す拡散符号と受信信号との相関値を出力するとともに、その相関値を識別する符号番号１０５を出力する処理部が、加減算部の代わりに設けられていてもよい。これは実施の形態５においても同様である。
【符号の説明】
【０２４８】
１０、７２  相関部
１１  加減算部
１２、７３  比較部
１３  選択部
１４  整列部
１５、１６、３２、４５、５５  復調装置
２０  符号判定部
２１  符号逆転部
２２  正負選択部
２３  加算部
３０、３１、４０、４１、４２、４３、５０、５１、５２、５３  部分相関値算出部
４４、５４  判定部
【図１】
2014057157.tif 000016
【図２】
2014057157.tif 000017
【図３】
2014057157.tif 000018
【図４】
2014057157.tif 000019
【図５】
2014057157.tif 000020
【図６】
2014057157.tif 000021
【図７】
2014057157.tif 000022
【図８】
2014057157.tif 000023
【図９Ａ】
2014057157.tif 000024
【図９Ｂ】
2014057157.tif 000025