(57)【要約】【課題】同期検出における検出精度を向上させ、通信効率のよい通信システムを提供する。【解決手段】アンテナ１０で受信されたデータは受信ＲＦ回路１１で復号され、シフトレジスタ１２に格納される。レジスタ１３はプリアンブルのビット列を記憶し、レジスタ２３はＳＯＦのビット列を記憶する。プリアンブル検出回路１４は、シフトレジスタ１２に格納されたビット列と、レジスタ１３で記憶されるプリアンブルのビット列又は該ビット列とハミング距離が１のビット列の何れかと一致するかを判定する。ＳＯＦ検出回路２４は、シフトレジスタ１２に格納されたビット列と、レジスタ２３で記憶されるＳＯＦのビット列又は該ビット列とハミング距離が１のビット列の何れかと一致するかを判定する。制御部３０は、プリアンブル検出回路１４及びＳＯＦ検出回路の検出結果に基づいてパケットの同期検出を行う。【選択図】図１
2007267085.tif 000002
【特許請求の範囲】
【請求項１】
プリアンブルと該プリアンブルに後続する通信データとからなるパケットを受信する受信手段と、
前記プリアンブルのビット列を記憶するプリアンブル記憶手段と、
前記プリアンブルのビット列とハミング距離がＮ（Ｎは１以上の整数）以内のビット列を生成する第一のビット列生成手段と、
前記受信手段で受信したビット列が、前記プリアンブル記憶手段で記憶される前記プリアンブルのビット列又は前記第一のビット列生成手段で生成されたビット列の何れかと一致するか否かを判定するプリアンブル一致判定手段と、
前記プリアンブル一致判定手段で一致と判定した場合に前記パケットの同期検出を行うことを特徴とする受信装置。
【請求項２】
前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段と、
前記先頭識別データのビット列とハミング距離がＭ（Ｍは１以上の整数）以内のビット列を生成する第二のビット列生成手段と、
前記受信手段で受信したビット列が、前記先頭識別データ記憶手段で記憶される前記先頭識別データのビット列又は前記第二のビット列生成手段で生成されたビット列の何れかと一致するか否かを判定する先頭識別データ一致判定手段と
をさらに備え、
前記先頭識別データ一致判定手段で一致と判定した場合に前記通信データの先頭を識別することを特徴とする請求項１に記載の受信装置。
【請求項３】
周期構造を持つプリアンブルと該プリアンブルに後続する通信データとからなるパケットを送信する送信装置と、
前記送信装置から送信されたパケットを受信する受信手段を有する受信装置とからなる通信システムであって、
前記受信装置は、
前記プリアンブルを構成する一周期のビット列を記憶するプリアンブル記憶手段と、
前記受信手段で、前記プリアンブルを構成する一周期のビット列を受信したか否かを判定する第一の一致判定手段と
を備え、
前記プリアンブルの周期の連続した二周期以上において、前記第一の一致判定手段で一致と判定された場合にプリアンブル検出として前記パケットの同期検出を行うことを特徴とする通信システム。
【請求項４】
前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段と、
前記受信手段で、前記先頭識別データのビット列を受信したか否かを判定する第二の一致判定手段と
をさらに備え、
前記第一の一致判定手段で一致と判定された後に連続して前記第二の一致判定手段で一致と判定された場合に先頭識別データ検出として前記通信データの先頭を識別することを特徴とする請求項３に記載の通信システム。
【請求項５】
周期構造を持つプリアンブルと該プリアンブルに後続する通信データとからなるパケットを送信する送信装置と、
前記送信装置から送信されたパケットを受信する受信手段を有する受信装置とからなる通信システムであって、
前記受信装置は、
前記プリアンブルを構成する一周期のビット列を記憶するプリアンブル記憶手段と、
前記プリアンブルを構成する一周期のビット列とハミング距離がＮ（Ｎは１以上の整数）以内のビット列を生成する第一のビット列生成手段と、
前記受信手段で受信したビット列が、前記プリアンブル記憶手順で記憶される前記プリアンブルを構成する一周期のビット列又は前記第一のビット列生成手順で生成されたビット列の何れかと一致するか否かを判定する第一の一致判定手段と
を備え、
前記プリアンブルの周期の連続した二周期以上において、前記第一の一致判定手段で一致と判定された場合にプリアンブル検出として前記パケットの同期検出を行うことを特徴とする通信システム。
【請求項６】
前記受信装置は、
前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段と、
前記先頭識別データのビット列とハミング距離がＭ（Ｍは１以上の整数）以内のビット列を生成する第二のビット列生成手段と、
前記受信手段で受信したビット列が、前記先頭識別データ記憶手段で記憶される前記先頭識別データのビット列又は前記第二のビット列生成手段で生成されたビット列の何れかと一致するか否かを判定する第二の一致判定手段と、
をさらに備え、
前記第一の一致判定手段で一致と判定された後に連続して前記第二の一致判定手段で一致と判定された場合に先頭識別データ検出として前記通信データの先頭を識別することを特徴とする請求項５に記載の通信システム。
【請求項７】
プリアンブルと該プリアンブルに後続する通信データとからなるパケットを受信する受信手段と、前記プリアンブルのビット列を記憶するプリアンブル記憶手段とを備えた受信装置に実行させるための同期検出プログラムであって、
前記プリアンブルのビット列とハミング距離がＮ（Ｎは１以上の整数）以内のビット列を生成する第一のビット列生成手順と、
前記受信手段で受信したビット列が、前記プリアンブル記憶手段で記憶される前記プリアンブルのビット列又は前記第一のビット列生成手順で生成されたビット列の何れかと一致するか否かを判定するプリアンブル一致判定手順と、
前記プリアンブル一致判定手順で一致と判定した場合に前記パケットの同期検出を行う同期検出手順と
を実行させるための同期検出プログラム。
【請求項８】
前記受信装置は、前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段をさらに備え、
前記先頭識別データのビット列とハミング距離がＭ（Ｍは１以上の整数）以内のビット列を生成する第二のビット列生成手順と、
前記受信手段で受信したビット列が、前記先頭識別データ記憶手段で記憶される前記先頭識別データのビット列又は前記第二のビット列生成手順で生成されたビット列の何れかと一致するか否かを判定する先頭識別データ一致判定手順と、
前記先頭識別データ一致判定手段で一致と判定した場合に前記通信データの先頭を識別する先頭識別手順と
をさらに実行させるための請求項７に記載の同期検出プログラム。
【請求項９】
周期構造を持つプリアンブルと該プリアンブルに後続する通信データとからなるパケットを受信する受信手段と、前記プリアンブルを構成する一周期のビット列を記憶するプリアンブル記憶手段とを有する受信装置に実行させるための同期検出プログラムであって、
前記受信手段で、前記プリアンブルを構成する一周期のビット列を受信したか否かを判定する第一の一致判定手順と、
前記プリアンブルの周期の連続した二周期以上において、前記第一の一致判定手段で一致と判定された場合にプリアンブル検出として前記パケットの同期検出を行う同期検出手順と
を実行させるための同期検出プログラム。
【請求項１０】
前記受信装置は、前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段をさらに備え、
前記受信手段で、前記先頭識別データのビット列を受信したか否かを判定する第二の一致判定手順と、
前記第一の一致判定手順で一致と判定された後に連続して前記第二の一致判定手順で一致と判定された場合に先頭識別データ検出として前記通信データの先頭を識別する先頭識別手順と
をさらに実行させるための請求項９に記載の同期検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット転送を行う通信システム、受信装置及び転送されたパケットの同期検出を行う同期検出プログラムに関する。
【背景技術】
【０００２】
一般にデータ通信では、符号化された0／１のビット列を変調したデータをパケットと呼ばれる一定量のデータに分割して転送される。パケットは、図１３に示すような構造をしており、プリアンブル及び該プリアンブルに後続する通信データとから構成される。受信装置は、受信したビット列からパケットのプリアンブルと通信データの先頭を示すＳＯＦ(Start of Frame)を認識することで同期検出を行う。
【０００３】
パケット転送においては、外来ノイズや媒体の乱れ等により一定のビット誤りが生じる。従来の通信システムでは、ＢＣＨ(Bose-Chaudhuri-Hocquenghem)符号やリードソロモン符号等に代表される誤り訂正符号を用いることで、図１３のヘッダー及びペイロードにビット誤りが生じた場合においても、そのビット誤りを検出し、正しいデータを復元する方法が採用されている。
【特許文献１】特開平０７−０９５１８９号公報
【特許文献２】特開２００２−２４６９９９号公報
【特許文献３】特開２００３−０６０６３２号公報
【特許文献４】特開平０７−１６９２００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、上記従来の通信システムで用いられる誤り訂正符号は、送信するデータの同期検出を行うことができなければ誤り訂正を行うことはできず、図１３のプリアンブルやＳＯＦにビット誤りが生じた場合、受信装置はそのパケットを認識することができない。このような場合、送信装置からパケットを再送する等の処理が必要となり、通信効率を著しく悪化させるという課題があった。
【０００５】
本発明は上記事情を考慮してなされたもので、その目的は、同期検出における検出精度を向上させ、通信効率のよい通信システムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明は上記の課題を解決するためになされたもので、請求項1に記載の発明は、プリアンブルと該プリアンブルに後続する通信データとからなるパケットを受信する受信手段と、前記プリアンブルのビット列を記憶するプリアンブル記憶手段と、前記プリアンブルのビット列とハミング距離がＮ（Ｎは１以上の整数）以内のビット列を生成する第一のビット列生成手段と、前記受信手段で受信したビット列が、前記プリアンブル記憶手段で記憶される前記プリアンブルのビット列又は前記第一のビット列生成手段で生成されたビット列の何れかと一致するか否かを判定するプリアンブル一致判定手段と、前記プリアンブル一致判定手段で一致と判定した場合に前記パケットの同期検出を行うことを特徴とする受信装置である。
【０００７】
また、請求項２に記載の発明は、請求項１に記載の発明において、前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段と、前記先頭識別データのビット列とハミング距離がＭ（Ｍは１以上の整数）以内のビット列を生成する第二のビット列生成手段と、前記受信手段で受信したビット列が、前記先頭識別データ記憶手段で記憶される前記先頭識別データのビット列又は前記第二のビット列生成手段で生成されたビット列の何れかと一致するか否かを判定する先頭識別データ一致判定手段とをさらに備え、前記先頭識別データ一致判定手段で一致と判定した場合に前記通信データの先頭を識別することを特徴とする。
【０００８】
また、請求項３に記載の発明は、周期構造を持つプリアンブルと該プリアンブルに後続する通信データとからなるパケットを送信する送信装置と、前記送信装置から送信されたパケットを受信する受信手段を有する受信装置とからなる通信システムであって、前記受信装置は、前記プリアンブルを構成する一周期のビット列を記憶するプリアンブル記憶手段と、前記受信手段で、前記プリアンブルを構成する一周期のビット列を受信したか否かを判定する第一の一致判定手段とを備え、前記プリアンブルの周期の連続した二周期以上において、前記第一の一致判定手段で一致と判定された場合にプリアンブル検出として前記パケットの同期検出を行うことを特徴とする。
【０００９】
また、請求項４に記載の発明は、請求項３に記載の発明において、前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段と、前記受信手段で、前記先頭識別データのビット列を受信したか否かを判定する第二の一致判定手段とをさらに備え、前記第一の一致判定手段で一致と判定された後に連続して前記第二の一致判定手段で一致と判定された場合に先頭識別データ検出として前記通信データの先頭を識別することを特徴とする。
【００１０】
また、請求項５に記載の発明は、周期構造を持つプリアンブルと該プリアンブルに後続する通信データとからなるパケットを送信する送信装置と、前記送信装置から送信されたパケットを受信する受信手段を有する受信装置とからなる通信システムであって、前記受信装置は、前記プリアンブルを構成する一周期のビット列を記憶するプリアンブル記憶手段と、前記プリアンブルを構成する一周期のビット列とハミング距離がＮ（Ｎは１以上の整数）以内のビット列を生成する第一のビット列生成手段と、前記受信手段で受信したビット列が、前記プリアンブル記憶手順で記憶される前記プリアンブルを構成する一周期のビット列又は前記第一のビット列生成手順で生成されたビット列の何れかと一致するか否かを判定する第一の一致判定手段とを備え、前記プリアンブルの周期の連続した二周期以上において、前記第一の一致判定手段で一致と判定された場合にプリアンブル検出として前記パケットの同期検出を行うことを特徴とする。
【００１１】
また、請求項６に記載の発明は、請求項５に記載の発明において、前記受信装置は、前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段と、前記先頭識別データのビット列とハミング距離がＭ（Ｍは１以上の整数）以内のビット列を生成する第二のビット列生成手段と、前記受信手段で受信したビット列が、前記先頭識別データ記憶手段で記憶される前記先頭識別データのビット列又は前記第二のビット列生成手段で生成されたビット列の何れかと一致するか否かを判定する第二の一致判定手段とをさらに備え、前記第一の一致判定手段で一致と判定された後に連続して前記第二の一致判定手段で一致と判定された場合に先頭識別データ検出として前記通信データの先頭を識別することを特徴とする。
【００１２】
また、請求項７に記載の発明は、プリアンブルと該プリアンブルに後続する通信データとからなるパケットを受信する受信手段と、前記プリアンブルのビット列を記憶するプリアンブル記憶手段とを備えた受信装置に実行させるための同期検出プログラムであって、前記プリアンブルのビット列とハミング距離がＮ（Ｎは１以上の整数）以内のビット列を生成する第一のビット列生成手順と、前記受信手段で受信したビット列が、前記プリアンブル記憶手段で記憶される前記プリアンブルのビット列又は前記第一のビット列生成手順で生成されたビット列の何れかと一致するか否かを判定するプリアンブル一致判定手順と、前記プリアンブル一致判定手順で一致と判定した場合に前記パケットの同期検出を行う同期検出手順とを実行させることを特徴とする。
【００１３】
また、請求項８に記載の発明は、請求項７に記載の発明において、前記受信装置は、前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段をさらに備え、前記先頭識別データのビット列とハミング距離がＭ（Ｍは１以上の整数）以内のビット列を生成する第二のビット列生成手順と、前記受信手段で受信したビット列が、前記先頭識別データ記憶手段で記憶される前記先頭識別データのビット列又は前記第二のビット列生成手順で生成されたビット列の何れかと一致するか否かを判定する先頭識別データ一致判定手順と、前記先頭識別データ一致判定手段で一致と判定した場合に前記通信データの先頭を識別する先頭識別手順とをさらに実行させることを特徴とする。
【００１４】
また、請求項９に記載の発明は、周期構造を持つプリアンブルと該プリアンブルに後続する通信データとからなるパケットを受信する受信手段と、前記プリアンブルを構成する一周期のビット列を記憶するプリアンブル記憶手段とを有する受信装置に実行させるための同期検出プログラムであって、前記受信手段で、前記プリアンブルを構成する一周期のビット列を受信したか否かを判定する第一の一致判定手順と、前記プリアンブルの周期の連続した二周期以上において、前記第一の一致判定手段で一致と判定された場合にプリアンブル検出として前記パケットの同期検出を行う同期検出手順とを実行させることを特徴とする。
【００１５】
また、請求項１０に記載の発明は、請求項９に記載の発明において、前記受信装置は、前記通信データに格納され、該通信データの先頭識別に用いられる先頭識別データのビット列を記憶する先頭識別データ記憶手段をさらに備え、前記受信手段で、前記先頭識別データのビット列を受信したか否かを判定する第二の一致判定手順と、前記第一の一致判定手順で一致と判定された後に連続して前記第二の一致判定手順で一致と判定された場合に先頭識別データ検出として前記通信データの先頭を識別する先頭識別手順とをさらに実行させることを特徴する。
【発明の効果】
【００１６】
本発明によれば、受信したビット列を、プリアンブルのビット列だけでなく該プリアンブルのビット列とハミング距離がＮのパタンとも比較して一致するかの判定を行うため、プリアンブルにＮ個のビット誤りが生じた場合においても、受信装置でプリアンブルを検出することが可能である。
【００１７】
同様に、受信したビット列を、先頭識別データ（ＳＯＦ）のビット列だけでなく該先頭識別データのビット列とハミング距離がＭのパタンとも比較して一致するかの判定を行うため、先頭識別データにＭ個のビット誤りが生じた場合においても、受信装置で先頭識別データを検出することが可能である。
【００１８】
本発明は、プリアンブルや先頭識別データにビット誤りが生じた場合においても、受信装置でエラーとしてパケット全体を廃棄することなく、正常に検出することが可能であるため、受信エラーとなるパケット数が減少し、通信効率の向上を図ることができる。
【００１９】
また、プリアンブルを所定のビット列の周期構造とし、その二周期以上の検出によりプリアンブル検出と判定することで、一周期のみで検出判定を行っていた従来の受信装置に比べて、プリアンブルの検出精度を高めることができる。
【００２０】
さらに、受信装置がそのプリアンブルの一周期と先頭識別データ（ＳＯＦ）とが連続して検出された場合にのみ先頭識別データ検出と判定することで、先頭識別データを誤検出する可能性を低減することができる。
【発明を実施するための最良の形態】
【００２１】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本発明の第一の実施形態にかかる通信システムの構成を示す構成図である。図１において、受信装置１は電源を内蔵したアクティブ型のＲＦＩＤ(Radio Frequency IDentification)受信機であり、送信装置２と無線通信を行う。送信装置２はパケットに誤り訂正符号を加えた上で、受信装置１に送信する。
【００２２】
受信装置１内のアンテナ１０（受信手段）は、送信装置２から送信された電波を受信し、受信ＲＦ回路１１へと出力するものである。受信ＲＦ回路１１は、アンテナ１０からの信号を入力して復調処理を行い、８ビットのシフトレジスタ１２へと出力する。レジスタ１３（プリアンブル記憶手段）はプリアンブルパタンを記憶し、レジスタ２３（先頭識別データ記憶手段）はＳＯＦパタンを記憶する。
【００２３】
プリアンブル検出回路１４（プリアンブル一致判定手段）は、シフトレジスタ１２に格納された８ビットのビット列とレジスタ１３のプリアンブルパタンとが一致しているかを判定する回路し、プリアンブル検出信号Ｙ１を出力する回路である。ＳＯＦ検出回路２４（先頭識別データ一致判定手段）は、シフトレジスタ１２に格納された８ビットのビット列とレジスタ２３のＳＯＦパタンとが一致しているかを判定し、ＳＯＦ検出信号Ｙ２を出力する回路である。
【００２４】
プリアンブル検出信号Ｙ１及びＳＯＦ検出信号Ｙ２は、検出に成功した時にＨｉｇｈ、検出に失敗した時にＬｏｗの論理となる。制御部３０は、プリアンブル検出信号Ｙ１及びＳＯＦ検出信号Ｙ２を入力し、アンテナ１０で受信したデータの処理を行うものである。
【００２５】
次に、上述した第一の実施形態の動作を、図２及び図３のフローチャートを参照して説明する。
図２において、データの受信が開始されると、制御部３０はプリアンブル検出信号Ｙ１及びＳＯＦ検出信号Ｙ２を入力して同期検出を行う（ステップＳ２０１）。
【００２６】
図３が同期検出の手順を示すフローチャートである。図３において、アンテナ１０で１ビットのデータを受信しシフトレジスタ１２にそのデータが格納されると（ステップＳ３０１）、制御部３０はプリアンブル判定信号Ｙ１の論理を判定する（ステップＳ３０２）。
【００２７】
プリアンブル判定信号Ｙ１の論理がＨｉｇｈである場合には、制御部３０はプリアンブル検出成功と判定する（ステップＳ３０３：Ｙｅｓ）。一方、プリアンブル判定信号Ｙ１の論理がＬｏｗである場合には、制御部３０はプリアンブル検出失敗と判定し（ステップＳ３０３：Ｎｏ）、ステップＳ３０１に戻って次の１ビットを受信する。
【００２８】
続いて、制御部３０はＳＯＦの受信が終了するまで１ビット受信するたびにステップＳ３０１〜ステップＳ３０３と同様の手順を行う（ステップＳ３０４〜ステップＳ３０６）。ＳＯＦの受信が終了してステップＳ３０６の判定でプリアンブルパタンが検出されなくなると（ステップＳ３０６：Ｎｏ）、制御部３０はＳＯＦ検出信号Ｙ２の論理を判定する（ステップＳ３０７）。
【００２９】
ＳＯＦ検出信号Ｙ２の論理がＨｉｇｈである場合には、制御部３０はＳＯＦ検出成功と判定し（ステップＳ３０８：Ｙｅｓ）、同期検出の処理が終了する。一方、ＳＯＦ検出信号Ｙ２の論理がＬｏｗである場合には、制御部３０はＳＯＦ検出失敗と判定し（ステップＳ３０８：Ｎｏ）、ステップＳ３０１に戻って再びデータの受信を行う。
【００３０】
図２に戻って、同期検出が成功すると、制御部３０はヘッダーを受信してパケットの種類を認識する（ステップＳ２０２）。続いて制御部３０はペイロードを受信し（ステップＳ２０３）、さらにエラー検出コードを受信する（ステップＳ２０４）。エラー検出コードは、パケット全体のデータから一意に計算される値であり、例えば、ＣＲＣ（巡回冗長検査）やチェックサム等で計算される値である。
【００３１】
制御部３０は、誤り訂正符号に基づいてエラー訂正処理を行い（ステップＳ２０５）、
エラー訂正後のデータからエラー検出コード（ＣＲＣ値、チェックサム値等）を計算し、受信したパケットに格納されたエラー検出コードと照合する（ステップＳ２０６）。
【００３２】
ステップＳ２０６における照合が一致し、受信したパケットに誤りはないと判定された場合は（ステップＳ２０７：Ｎｏ）、制御部３０は該パケットの受信に成功する（ステップＳ２０８）。この後、制御部３０は該パケットのペイロードに格納されたデータに基づいて所定の処理を行う。
【００３３】
一方、ステップＳ２０６における照合が一致せず、受信したパケットに誤りがあると判定された場合は（ステップＳ２０７：Ｙｅｓ）、制御部３０は該パケットの受信に失敗する（ステップＳ２０９）。
【００３４】
続いて、図１の受信装置１において、受信したデータからプリアンブル検出信号Ｙ１及びＳＯＦ検出信号Ｙ２を出力する動作に関して、図４及び図５を参照して説明する。
【００３５】
図４は、受信装置１のプリアンブル検出回路１４の詳細な構成を示す図である。図４において、符号１５、符号１６ａ〜１６ｋ及び符号１７が図１のプリアンブル検出回路１４に相当する。なお、ＳＯＦ検出回路２４の回路構成はプリアンブル検出回路１４と同様であり、図４においてはＳＯＦ検出に関わるレジスタ２３及びＳＯＦ検出回路２４は省略している。
【００３６】
誤り予測回路１５（第一のビット列生成手段）は、レジスタ１３に記憶されたプリアンブルパタンとのハミング距離が１であるデータを出力する回路である。誤り予測回路１５内のＸＯＲ(Exclusive OR)回路１５ｂは、プリアンブルパタンと「０００００００１」を入力とし、プリアンブルパタンの１ビット目を反転させたパタンを出力する。
【００３７】
同様に、ＸＯＲ回路１５ｃは、プリアンブルパタンと「００００００１０」を入力とし、プリアンブルパタンの２ビット目を反転させたパタンを出力する。ＸＯＲ回路１５ｄは、プリアンブルパタンと「０００００１００」を入力とし、プリアンブルパタンの３ビット目を反転させたパタンを出力する。
【００３８】
ＸＯＲ回路１５ｅは、プリアンブルパタンと「００００１０００」を入力とし、プリアンブルパタンの４ビット目を反転させたパタンを出力する。ＸＯＲ回路１５ｆは、プリアンブルパタンと「０００１００００」を入力とし、プリアンブルパタンの５ビット目を反転させたパタンを出力する。
【００３９】
ＸＯＲ回路１５ｇは、プリアンブルパタンと「００１０００００」を入力とし、プリアンブルパタンの６ビット目を反転させたパタンを出力する。ＸＯＲ回路１５ｈは、プリアンブルパタンと「０１００００００」を入力とし、プリアンブルパタンの７ビット目を反転させたパタンを出力する。ＸＯＲ回路１５ｋは、プリアンブルパタンと「１０００００００」を入力とし、プリアンブルパタンの８ビット目を反転させたパタンを出力する。
【００４０】
パタンマッチング回路１６ａは、シフトレジスタ１２に格納されたビット列とプリアンブルパタンとが一致するかを判定し、一致した場合にＨｉｇｈを出力し、一致しなかった場合にＬｏｗを出力する回路である。同様に、パタンマッチング回路１６ｂは、シフトレジスタ１２に格納されたビット列とＸＯＲ回路１５ｂの出力とが一致するかを判定する回路である。
【００４１】
パタンマッチング回路１６ｃは、シフトレジスタ１２に格納されたビット列とＸＯＲ回路１５ｃの出力とが一致するかを判定する回路である。パタンマッチング回路１６ｄは、シフトレジスタ１２に格納されたビット列とＸＯＲ回路１５ｄの出力とが一致するかを判定する回路である。
【００４２】
パタンマッチング回路１６ｅは、シフトレジスタ１２に格納されたビット列とＸＯＲ回路１５ｅの出力とが一致するかを判定する回路である。パタンマッチング回路１６ｆは、シフトレジスタ１２に格納されたビット列とＸＯＲ回路１５ｆの出力とが一致するかを判定する回路である。
【００４３】
パタンマッチング回路１６ｇは、シフトレジスタ１２に格納されたビット列とＸＯＲ回路１５ｇの出力とが一致するかを判定する回路である。パタンマッチング回路１６ｈは、シフトレジスタ１２に格納されたビット列とＸＯＲ回路１５ｈの出力とが一致するかを判定する回路である。
【００４４】
パタンマッチング回路１６ｋは、シフトレジスタ１２に格納されたビット列とＸＯＲ回路１５ｋの出力とが一致するかを判定する回路である。パタンマッチング回路１６ａ〜１６ｋは図５に示す回路構成であり、入力される２つのビット列ＩＮ１，ＩＮ２のそれぞれのビットをＸＮＯＲ(Exclusive NOR)回路１６０〜１６７の２つの入力端子に入力し、ＸＮＯＲ回路１６０〜１６７の出力を８入力ＡＮＤ回路１６８に入力する。
【００４５】
２つのビット列ＩＮ１，ＩＮ２が完全に一致した場合はＸＮＯＲ回路１６０〜１６７の出力が全てＨｉｇｈとなり、ＡＮＤ回路１６８の出力はＨｉｇｈとなる。２つのビット列ＩＮ１，ＩＮ２が１ビットでも異なる場合は、ＸＮＯＲ回路１６０〜１６７の何れかの出力がＬｏｗとなり、ＡＮＤ回路１６８の出力はＬｏｗとなる。
【００４６】
図４に戻って、８入力ＯＲ回路１７は、パタンマッチング回路１６ａ〜１６ｋの出力を入力とし、プリアンブル検出信号Ｙ１を出力する。プリアンブル検出信号Ｙ１は、パタンマッチング回路１６ａ〜１６ｋの何れか１つの出力がＨｉｇｈである場合にＨｉｇｈとなり、パタンマッチング回路１６ａ〜１６ｋの出力全てがＬｏｗである場合にＬｏｗとなる。
【００４７】
以上述べたように、シフトレジスタ１２に格納されたビット列は、パタンマッチング回路１６ａ〜１６ｋによって、プリアンブルパタン及び該プリアンブルパタンとハミング距離が１の全てのパタンと一致判定がなされ、何れかのパタンと一致するとプリアンブル検出信号Ｙ１はＨｉｇｈとなり、全てのパタンと一致しなかった場合にはプリアンブル検出信号Ｙ１はＬｏｗとなる。
【００４８】
すなわち、アンテナ１０でパケットのプリアンブルを受信した際に１ビットのビット誤りが生じた場合においても、パタンマッチング回路１６ｂ〜１６ｋの何れか１つの回路で一致判定がなされ、プリアンブル検出信号Ｙ１の論理はＨｉｇｈとなる。このため、制御部３０は図３のステップＳ３０３の判定に成功し、プリアンブルを認識することができる。
【００４９】
同様に、アンテナ１０でパケットのＳＯＦを受信した際に１ビットのビット誤りが生じた場合においても、ＳＯＦ検出信号Ｙ２の論理はＨｉｇｈとなる。このため、制御部３０は図３のステップＳ３０８の判定に成功し、ＳＯＦを認識することができる。
【００５０】
このように、第一の実施形態の通信システムでは、パケットのプリアンブル及びＳＯＦに１ビットのビット誤りが生じた場合においても、受信装置１でプリアンブル及びＳＯＦの認識が可能であるため、このようなパケットを破棄して再送を行っていた従来の通信システムと比べて通信効率を高めることができる。
【００５１】
第一の実施形態では、１ビットのビット誤りを許容するために、誤り予測回路１５でプリアンブルパタンとハミング距離が１のデータを出力する構成としたが、一般にＮ（Ｎ＝１，２，…）ビットのビット誤りを許容するために、誤り予測回路１５でプリアンブルパタンとハミング距離がＮ以下のデータを出力する構成としてもよい。
【００５２】
第一の実施形態では、プリアンブル判定（ステップＳ３０２）及びＳＯＦ検出（ステップＳ３０７）をハードウェア（プリアンブル検出回路１４及びＳＯＦ検出回路２４）により行う形態であるが、制御部３０がソフトウェアの処理で行うことも可能である。
【００５３】
制御部３０がプリアンブル検出及びＳＯＦ検出をソフトウェア処理で行う方法に関して、図６及び図７を参照して説明する。
図６は、プリアンブルの検出をソフトウェア処理で行う際の手順を示すフローチャートである。図６において、プリアンブルの判定手順では、制御部３０はまず過去に受信したＭｐビット（Ｍｐビットはプリアンブルのビット数。本実施形態では８ビット。）のビット列とプリアンブルパタンとが一致するかを判定する（ステップＳ６０１）。
【００５４】
ステップＳ６０１の判定で一致した場合には（ステップＳ６０２：Ｙｅｓ）、制御部３０はプリアンブル検出成功と判定し（ステップＳ６０３）、プリアンブル検出の手順を終了する。一方、一致しなかった場合には（ステップＳ６０２：Ｎｏ）、制御部３０は変数Ｎを１にセットする（ステップＳ６０４）。
【００５５】
続いて、制御部３０はプリアンブルパタンのＮビット目を反転させ、この反転させたパタンと上記受信したビット列とが一致するかの判定を行う（ステップＳ６０５）。この判定で一致した場合には（ステップＳ６０６：Ｙｅｓ）、制御部３０はプリアンブル検出成功と判定し（ステップＳ６０３）、プリアンブル検出の手順を終了する。一方、一致しなかった場合には（ステップＳ６０６：Ｎｏ）、制御部３０は変数Ｎのインクリメントを行う（ステップＳ６０７）。
【００５６】
続いて、制御部３０はインクリメント後の変数ＮがＭｐ（本実施形態では８）より大であるか否かを判定する（ステップＳ６０８）。変数ＮがＭｐ以下であれば（ステップＳ６０８：Ｎｏ）、制御部３０はステップＳ６０５に戻って処理を行う。一方、変数ＮがＭｐより大であれば（ステップＳ６０８：Ｙｅｓ）、制御部３０はプリアンブル検出失敗と判定し（ステップＳ６０９）、プリアンブル検出の手順を終了する。
【００５７】
このように、受信したビット列とプリアンブルパタンとが一致しなかった場合には、制御部３０は変数Ｎをインクリメントさせながら、受信したビット列と、プリアンブルパタンとハミング距離が１のパタンとを順次比較することで、受信したビット列に１ビットのビット誤りが生じた場合にもプリアンブルパタンとして認識することができる。
【００５８】
図７は、ＳＯＦの検出をソフトウェア処理で行う際の手順を示すフローチャートである。図７において、ＳＯＦの判定手順では、制御部３０はまず過去に受信したＭｓビット（ＭｓビットはＳＯＦのビット数。本実施形態では８ビット。）のビット列とＳＯＦパタンとが一致するかを判定する（ステップＳ７０１）。
【００５９】
ステップＳ７０１の判定で一致した場合には（ステップＳ７０２：Ｙｅｓ）、制御部３０はＳＯＦ検出成功と判定し（ステップＳ７０３）、ＳＯＦ検出の手順を終了する。一方、一致しなかった場合には（ステップＳ７０２：Ｎｏ）、制御部３０は変数Ｎを１にセットする（ステップＳ７０４）。
【００６０】
以下、図６と同様の手順で、制御部３０は変数Ｎをインクリメントさせながら、受信したビット列と、ＳＯＦパタンとハミング距離が１のパタンとを順次比較し（ステップＳ７０５〜ステップＳ７０８）、受信したビット列が何れかのパタンと一致した場合にはＳＯＦ検出成功と判定し、何れのパタンとも一致しなかった場合にはＳＯＦ検出失敗と判定する。
【００６１】
図６及び図７に示した手順では、１ビットのビット誤りを許容するためにプリアンブルパタン及びＳＯＦパタンとハミング距離が１のパタンと比較するが、２ビット以上のビット誤りを許容するためにハミング距離が２以上のパタンと比較してもよい。
【００６２】
次に、本発明の第二の実施形態について図８から図１０を参照して説明する。
図８は、本発明の第一の実施形態にかかる受信装置の構成を示した構成図である。図８において、図１と同様のものに関しては同じ符号を付与し、その詳細な説明は省略する。
【００６３】
第二の実施形態では、送信装置２から送信するパケットのプリアンブルに周期性を持たせる。受信装置１は、その二周期以上を使用してプリアンブルパタンを検出し、ＳＯＦ検出の判定は、プリアンブルパタンとＳＯＦパタンとを連続して受信したか否かで判定を行う。
【００６４】
図８の受信ＲＦ回路１１から出力されるビット列は、８ビットのシフトレジスタ１２，４０に格納される。シフトレジスタ１２は直前に受信した８ビット分の受信データを格納し、シフトレジスタ４０は更にその前８ビット分の受信データを格納する。
【００６５】
パタンマッチング回路１６ｍ〜１６ｑは図５に示す回路構成である。パタンマッチング回路１６ｍは、シフトレジスタ４０に格納されたビット列と、レジスタ１３に格納されたプリアンブルパタンとが一致するかを判定し、一致する場合にＨｉｇｈを一致しない場合にＬｏｗを出力する。
【００６６】
パタンマッチング回路１６ｎは、シフトレジスタ１２に格納されたビット列と、レジスタ１３に格納されたプリアンブルパタンとが一致するかを判定し、一致する場合にＨｉｇｈを一致しない場合にＬｏｗを出力する。
【００６７】
パタンマッチング回路１６ｐは、シフトレジスタ４０に格納されたビット列と、レジスタ１３に格納されたプリアンブルパタンとが一致するかを判定し、一致する場合にＨｉｇｈを一致しない場合にＬｏｗを出力する。
【００６８】
パタンマッチング回路１６ｑは、シフトレジスタ１２に格納されたビット列と、レジスタ２３に格納されたＳＯＦパタンとが一致するかを判定し、一致する場合にＨｉｇｈを一致しない場合にＬｏｗを出力する。
【００６９】
ＡＮＤ回路４１は、パタンマッチング回路１６ｍ及びパタンマッチング回路１６ｎの出力を入力とし、プリアンブル検出信号Ｙ１を出力する。プリアンブル検出信号Ｙ１の論理は、パタンマッチング回路１６ｍ及びパタンマッチング回路１６ｎの双方の出力がＨｉｇｈである場合にのみＨｉｇｈとなり、パタンマッチング回路１６ｍ及びパタンマッチング回路１６ｎの何れか一方の出力がＬｏｗである場合にはＬｏｗとなる。
【００７０】
同様に、ＡＮＤ回路４２は、パタンマッチング回路１６ｐ及びパタンマッチング回路１６ｑの出力を入力とし、ＳＯＦ検出信号Ｙ２を出力する。ＳＯＦ検出信号Ｙ２の論理は、パタンマッチング回路１６ｐ及びパタンマッチング回路１６ｑの双方の出力がＨｉｇｈである場合にのみＨｉｇｈとなり、パタンマッチング回路１６ｐ及びパタンマッチング回路１６ｑの何れか一方の出力がＬｏｗである場合にはＬｏｗとなる。
【００７１】
続いて、受信したビット列からプリアンブル判定信号Ｙ１及びＳＯＦ判定信号Ｙ２を出力する具体的な動作に関して、図８及び図９を参照して説明する。
【００７２】
図９はパケットのプリアンブル及びＳＯＦのビット列の一例を示す図である。図９において、送信装置２から出力されるパケットのプリアンブルは「０１０１００１１」を一周期とする周期パタンであり、ＳＯＦは「１０１０１１００」のパタンである。すなわち、レジスタ１３には「０１０１００１１」が、レジスタ２３には「１０１０１１００」が格納される。
【００７３】
図９（ａ）に示すように、受信装置１のアンテナ１０で「０１０１００１１」のパタンが二周期分受信されると、シフトレジスタ１２，４０の双方に「０１０１００１１」が格納される。
【００７４】
このとき、パタンマッチング回路１６ｍでは、シフトレジスタ４０の「０１０１００１１」とレジスタ１３の「０１０１００１１」とが一致するため、その出力はＨｉｇｈとなる。パタンマッチング回路１６ｎでは、シフトレジスタ１２の「０１０１００１１」とレジスタ１３の「０１０１００１１」とが一致するため、その出力はＨｉｇｈとなる。よって、ＡＮＤ回路４１の出力であるプリアンブル検出信号Ｙ１の論理はＨｉｇｈとなり、制御部３０はプリアンブル検出成功と判定する。
【００７５】
一方、パタンマッチング回路１６ｐでは、シフトレジスタ４０の「０１０１００１１」とレジスタ１３の「０１０１００１１」とが一致するため、その出力はＨｉｇｈとなる。パタンマッチング回路１６ｑでは、シフトレジスタ１２の「０１０１００１１」とレジスタ４０の「１０１０１１００」とは一致しないため、その出力はＬｏｗとなる。よって、ＡＮＤ回路の４２の出力であるＳＯＦ検出信号Ｙ２の論理はＬｏｗとなる。
【００７６】
この後、アンテナ１０でさらに８ビットを受信すると、ＳＯＦのパタン「１１００１０１０」がシフトレジスタ１２に格納される（図９（ｂ）参照）。このとき、シフトレジスタ４０には「０１０１００１１」が格納される。
【００７７】
パタンマッチング回路１６ｍでは、シフトレジスタ４０の「０１０１００１１」とレジスタ１３の「０１０１００１１」とが一致するため、その出力はＨｉｇｈとなる。パタンマッチング回路１６ｎでは、シフトレジスタ１２の「１０１０１１００」とレジスタ１３の「０１０１００１１」とは一致しないため、その出力はＬｏｗとなる。よって、ＡＮＤ回路の４１の出力であるプリアンブル検出信号Ｙ１の論理はＬｏｗとなる。
【００７８】
一方、パタンマッチング回路１６ｐでは、シフトレジスタ４０の「０１０１００１１」とレジスタ１３の「０１０１００１１」とが一致するため、その出力はＨｉｇｈとなる。パタンマッチング回路１６ｑでは、シフトレジスタ１２の「１０１０１１００」とレジスタ４０の「１０１０１１００」とが一致するため、その出力はＨｉｇｈとなる。よって、ＡＮＤ回路の４２の出力であるＳＯＦ検出信号Ｙ２の論理はＨｉｇｈとなり、制御部３０はＳＯＦ検出成功と判定する。
【００７９】
このように、プリアンブルの周期性を利用し、受信装置１がその周期の二周期以上を利用してプリアンブルの検出を行うことで、プリアンブル全体を一周期として検出する従来の受信装置と比較して、プリアンブルの検出精度を高めることができる。
【００８０】
さらに、受信装置１がそのプリアンブルの一周期とＳＯＦとが連続して検出された場合にのみＳＯＦの検出成功と判定することで、ＳＯＦを誤検出する可能性を低減することができる。
【００８１】
なお、第一の実施形態と同様、同期検出の処理は制御部３０がソフトウェア処理で行うことも可能である。プリアンブル及びＳＯＦの検出をソフトウェア処理で行う際の手順について、図１０を参照して説明する。
【００８２】
図１０において、アンテナ１０で１ビットのデータを受信しシフトレジスタ１２にそのデータが格納されると（ステップＳ１００１）、制御部３０は過去に受信したＭビット（Ｍはプリアンブルを構成する一周期のビット数であり、かつＳＯＦのビット数）とプリアンブルを構成する一周期のパタンとが一致するか否かを判定する。（ステップＳ１００２）。
【００８３】
ステップＳ１００２の判定で一致した場合にはプリアンブル検出と判定し（ステップＳ１００３：Ｙｅｓ）、続いて連続してＭビットを受信する（ステップＳ１００４）。一方、一致しなかった場合には（ステップＳ１００３：Ｎｏ）、ステップＳ１００１に戻って処理を行う。
【００８４】
Ｍビットの受信が終了すると、制御部３０はステップＳ１００２と同様の手順でプリアンブルの一致判定を行う（ステップＳ１００５）。一致した場合には（ステップＳ１００６：Ｙｅｓ）、ステップＳ１００４に戻って次のＭビットを受信する。本実施形態ではプリアンブルは周期構造であるため、制御部３０はその周期の回数だけステップＳ１００４〜Ｓ１００６の処理を行うことになる。
【００８５】
一方、ステップＳ１００５の判定で一致しなかった場合には（ステップＳ１００６：Ｎｏ）、制御部３０はステップＳ１００４で受信したＭビットとＳＯＦパタンとが一致するか否かを判定する（ステップＳ１００７）。一致した場合にはＳＯＦ検出成功と判定し（ステップＳ１００８：Ｙｅｓ）、制御部３０は同期検出の手順を終了する。一方、一致しなかった場合にはＳＯＦ検出失敗と判定し（ステップＳ１００８：Ｎｏ）、ステップＳ１００１に戻って処理を行う。
【００８６】
図１０のフローチャートでは、ステップＳ９０５の一致判定でプリアンブルの一周期のパタンと一致しなくなった受信ビット列に対して、制御部３０がＳＯＦ検出の判定を行うため、周期構造のプリアンブルに後続するＳＯＦパタンのみを検出することができる。このため、ＳＯＦの誤検出する可能性を低減することができる。
【００８７】
最後に、上述した第一の実施形態と第二の実施形態とを組み合わせる例について図１１を参照して説明する。
図１１においては、パタンマッチング回路部５３ａ〜５３ｄはそれぞれ、図４のパタンマッチング回路１６ａ〜１６ｋの８回路及び８入力ＯＲ回路１７で構成される。また、誤り予測回路５１，５２は、図４の符号１５で示した回路構成である。
【００８８】
第一の実施形態と第二の実施形態とを組み合わせてパケットの同期検出を行うことで、誤り予測回路５１，５２によりプリアンブル及びＳＯＦの検出確率を向上させながら、プリアンブルの周期性を利用することで誤検出を防止することが可能であり、より精度の高いパケット検出を可能にする。
【００８９】
以上、本発明の実施形態を詳述してきたが、具体的な構成は本実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。例えば、本発明は、無線通信のシステムに限られることはなく、有線通信にも適用可能である。さらに、図１３に示したのと同様のデータ構造を記録する、磁気テープ等の記憶媒体から情報を読み取る情報読み取り装置にも適用可能である。
【００９０】
図１２が情報読み取り装置の構成を示す構成図であり、磁気ヘッド部６１で磁気テープ６２に記録されたプリアンブル及びＳＯＦを検出する過程において上述した第一及び第二の実施形態を適用できる。
【産業上の利用可能性】
【００９１】
本発明は、無線又は有線で通信を行う通信システムや磁気テープ等の記憶媒体から情報を読み取る情報読み取り装置に用いて好適である。
【図面の簡単な説明】
【００９２】
【図１】本発明の第一の実施形態にかかる通信システムの構成を示した構成図である。
【図２】パケットを受信する際の、図１の制御部３０で行われる処理を示すフローチャートである。
【図３】図２のステップＳ２０１の処理を示すフローチャートである。
【図４】図１の受信装置１において、プリアンブル検出回路１４の詳細な構成を示す図である。
【図５】図４のパタンマッチング回路１６ａ〜１６ｋの詳細な構成を示す図である。
【図６】図１の制御部３０が、プリアンブルの検出をソフトウェア処理で行う場合の手順を示すフローチャートである。
【図７】図１の制御部３０が、ＳＯＦの検出をソフトウェア処理で行う場合の手順を示すフローチャートである。
【図８】本発明の第二の実施形態にかかる受信装置の構成を示した構成図である。
【図９】第二の実施形態における、パケットのプリアンブル及びＳＯＦのビット列の一例を示す図である。
【図１０】図９の制御部３０が、プリアンブル及びＳＯＦの検出をソフトウェア処理で行う場合の手順を示すフローチャートである。
【図１１】第一及び第二の実施形態を組み合わせた通信システムの構成図である。
【図１２】情報読み取り装置の構成を示す構成図である。
【図１３】パケットのデータ構造を示す図である。
【符号の説明】
【００９３】
１            …  受信装置
２            …  送信装置
１０          …  アンテナ（受信手段）
１１          …  受信ＲＦ回路
１２          …  シフトレジスタ
１３          …  レジスタ（プリアンブル記憶手段）
１４          …  プリアンブル検出回路（プリアンブル一致判定手段）
１５          …  誤り予測回路（第一のビット列生成手段）
１６ｍ，ｎ，ｐ  …  パタンマッチング回路（第一の一致判定手段）
１６ｑ          …  パタンマッチング回路（第二の一致判定手段）
２３          …  レジスタ（先頭識別データ記憶手段）
２４          …  ＳＯＦ検出回路（ＳＯＦ一致判定手段）
３０          …  制御部
Ｓ６０５      …  第一のビット列生成手順
Ｓ７０５      …  第二のビット列生成手順
【図１】
2007267085.tif 000003
【図２】
2007267085.tif 000004
【図３】
2007267085.tif 000005
【図４】
2007267085.tif 000006
【図５】
2007267085.tif 000007
【図６】
2007267085.tif 000008
【図７】
2007267085.tif 000009
【図８】
2007267085.tif 000010
【図９】
2007267085.tif 000011
【図１０】
2007267085.tif 000012
【図１１】
2007267085.tif 000013
【図１２】
2007267085.tif 000014
【図１３】
2007267085.tif 000015