(57)【要約】【課題】再送制御を改良して、より確実にデータを伝送する。【解決手段】データ伝送システム１に適用される本発明にかかる再送制御は、受信局３において誤りが検出されたデータブロックを、送信局２が、１つのデータフレーム内に、再送回数に応じた個数ずつ収容させて送信する。また、この再送制御は、送信局２において、再送の度に異なるスクランブル用データを用いてデータをスクランブル処理し、受信局３において、送信局２と共通に設定されたスクランブル用データを用いてスクランブル処理を解く（デスクランブル処理する）。さらに、この再生制御は、送信局２が、同じデータフレームに同一のデータブロックを複数、含めるときには、この複数のデータフレーム中の一部のデータ本体に対してのみスクランブル処理を行い、受信局３が、スクランブル処理されたデータブロックのみに対して、デスクランブル処理を行う。【選択図】図１
2009017186.tif 000002
【特許請求の範囲】
【請求項１】
複数の種類のデータブロックが含まれるデータフレームを送信局から受信局に送信し、前記受信局で、前記送信局から送信されたデータフレームに含まれる複数の種類のデータブロックそれぞれの誤りを検出して、誤りが検出された１種類以上のデータブロックの再送を、前記送信局に要求するデータ伝送システムであって、
前記送信局は、
再送が要求された前記１種類以上のデータブロックを、前記１種類につき複数ずつ含む送信用データフレームを、前記受信局に送信する再送手段
を備え、
前記受信局は、
前記送信局から送信された再送用フレームに、１種類につき複数ずつ含まれるデータブロックのいずれかから誤りが検出されなかったときに、誤りが検出されなかった種類のデータブロックが正常に受信されたと判定する判定手段
を備える
ことを特徴とするデータ伝送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、伝送信号に対して誤りを生じさせ得る伝送路を介して、ＡＲＱ(Auto Repeat rQuest)による再送制御を行ってデータを伝送するデータ送信システムに関する。
【背景技術】
【０００２】
例えば、特許文献１は、再送制御によりデータを伝送するための装置を開示する。
【特許文献１】特開２００５−１９２１７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、上述した背景からなされたものであって、伝送信号に対して誤りを生じさせ得る伝送路を介して、再送制御を行って、データをさらに確実に伝送できるように改良されたデータ送信システムを提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記目的のために、本発明にかかるデータ伝送システムは、複数の種類のデータブロックが含まれるデータフレームを送信局から受信局に送信し、前記受信局で、前記送信局から送信されたデータフレームに含まれる複数の種類のデータブロックそれぞれの誤りを検出して、誤りが検出された１種類以上のデータブロックの再送を、前記送信局に要求するデータ伝送システムであって、前記送信局は、再送が要求された前記１種類以上のデータブロックを、前記１種類につき複数ずつ含む送信用データフレームを、前記受信局に送信する再送手段を備え、前記受信局は、前記送信局から送信された再送用フレームに、１種類につき複数ずつ含まれるデータブロックのいずれかから誤りが検出されなかったときに、誤りが検出されなかった種類のデータブロックが正常に受信されたと判定する判定手段を備えることを特徴とする。
【０００５】
好適には、上記データ伝送システムにおいて、前記送信局は、前記再送の回数に応じて予め決められたスクランブルデータを用いて、前記再送が要求されたデータブロックをスクランブル処理するスクランブル処理装置をさらに備え、前記受信局は、前記送信局から送信された再送用フレームに含まれるデータブロックをデスクランブル処理するデスクランブル処理手段をさらに備え、前記受信局の判定手段は、前記デスクランブル処理されたデータブロックの誤りを検出することを特徴とする。
【０００６】
好適には、上記データ伝送システムにおいて、前記送信局は、前記再送が要求されたデータブロックにスクランブル処理するスクランブル処理手段をさらに備え、前記送信局の再送手段は、前記再送が要求されたデータブロックと、スクランブル処理された前記データブロックとを含む再送用データフレームを、前記受信局に送信し、前記受信局は、前記送信局から送信された再送用データフレームに含まれるデータブロックの内、スクランブル処理されたデータブロックをデスクランブル処理するデスクランブル処理手段をさらに備え、前記受信局の判定手段は、前記再送用フレームに含まれたデータブロックの内、前記デスクランブル処理されたデータブロックと、前記デスクランブル処理されたデータブロック以外のデータブロックとの誤りを検出することを特徴とする。
【発明の効果】
【０００７】
本発明にかかるデータ伝送システムによれば、伝送信号に対して誤りを生じさせ得る伝送路を介して、再送制御を行って、データを確実に伝送できる。
【発明を実施するための最良の形態】
【０００８】
［本発明がなされるに到った経過］
図１は、本発明にかかるデータ伝送システム１の構成を示す図である。
図２は、図１に示した送信局２から受信局３に対する無線通信回線１００を介したデータ伝送に用いられるデータフレーム２８の構成を示す図であって、（Ａ）は、データフレーム２８の構成を示し、（Ｂ）は、データフレーム２８に含まれるデータブロックの構成を示す。
図１に示すように、データ伝送システム１において、送信局２と受信局３とは、無線通信回線１００を介して、ＱＡＭ、ＦＳＫあるいはＰＳＫ方式によるデータ伝送が可能に接続される。
【０００９】
また、図２（Ａ）に示すように、送信局２から受信局３に伝送されるデータフレームは、予め決められたデータパターンが収容された同期スロット、再送の回数（Ｍ）を示すデータが収容された再送回数、データブロック数Ｎ（Ｎ≧１）を示すデータが収容されたデータブロック数、および、それぞれＬビット長（Ｌ≧１）のＮ個のデータブロックを含む。
また、図２（Ｂ）に示すように、図２（Ａ）に示したデータブロックは、データブロックの番号ｉ（Ｎ≧ｉ≧１）を示すデータを収容するデータブロック番号、送信局２から受信局３への伝送の対象となるデータ本体、および、データ本体の誤り検出のために用いられる誤り検出符号（ＣＲＣ符号など）を含む。
【００１０】
本願発明にかかるデータ伝送システム１の説明に先立ち、データ伝送システム１の理解を助けるために、まず、本発明がなされるに至った経緯を説明する。
なお、以下、実質的に同一な構成部分には、各図において同一の符号が付される。
ここでは、無線通信回線１００が、例えば、伝送されるデータに対して、１×１０−３のビットエラーを与え、データフレームに含まれるデータブロック（以下、図において「ＤＢ」と略記されることがある）それぞれのデータ長が５００ビットである場合を具体例を考察する。
この具体例においては、データフレームに含まれるデータブロックに、平均して１／２の確率でビットエラー（誤り）が生じ、誤りが生じたデータブロックに含まれるデータ本体は、受信局３側で正常に受信されない。
【００１１】
このような条件において、さらに、最初のデータフレームが、データブロックを１６個、含み、データ伝送システム１において、再送回数が予め３回（最初のデータ伝送を含まない回数）と定めたＡＲＱ(Auto Repeat rQuest)による再送制御が行われる具体例を考察する。
この場合においては、送信側から、１６個のデータブロックを含む最初のデータフレームが受信側に送信されると、受信側では、平均して、８個のデータブロックから誤りが検出されると予想される。
次に、第１回目の再送において、送信側から、誤りが生じた８個のデータブロックを含むデータフレームが受信側に送信されると、受信側では、平均して、４個のデータブロックから誤りが検出されると予想される。
【００１２】
次に、第２回目の再送において、送信側から、誤りが生じた４個のデータブロックを含むデータフレームが受信側に送信されると、受信側では、平均して、２個のデータブロックから誤りが検出されると予想される。
最後に、第３回目の再送において、送信側から、誤りが生じた２個のデータブロックを含むデータフレームが受信側に送信されると、受信側では、平均して、１個のデータブロックから誤りが検出されると予想される。
つまり、予め回数を決めて再送制御を行うと、予定された回数、再送が行われたとしても、全てのデータブロックに含まれるデータ本体が、受信局３側で正常に受信されない可能性がある。
【００１３】
また、送信局２の送信回路（図３を参照して後述）において、伝送データを含む伝送信号の電力増幅に用いられる電力増幅器（図示せず）の増幅特性の非線形性、無線通信回線１００の伝送特性、および、受信局３において、伝送信号を受信する受信回路（図３を参照して後述）の受信帯域幅などの受信特性などに起因して、受信局３側で、特定のビットパターンに、高い確率で誤りが検出される現象が起きることが知られている。
データ伝送システム１において、このような現象が生じると、同じビットパターンが、何度、送信局２から受信局３に送られても、受信局３において、このビットパターンを含むデータブロックから誤りが検出される可能性がある。
データ伝送システム１に適用される本発明にかかる再送制御は、上述の２点に着目し、これらを解消して、より確実に、送信局２から受信局３にデータを伝送できるように改良されている。
【００１４】
上述の予め回数を決めて再送制御を行ったときに生じうる不具合を解消するために、データ伝送システム１に適用される再送制御は、受信局３において誤りが検出されたデータブロックを、送信局２が、１つのデータフレーム内に、複数個（例えば２個ずつ）、あるいは、再送回数に応じた個数ずつ（例えば、第１回目の再送時には１個ずつ、第２回目の再送時には２個ずつなど）収容させて送信（再送）するようにして、データが確実に送信局２から受信局３に伝送されるように工夫されている。
また、上述の特定のビットパターンに生じる誤りに起因する不具合を解消するために、データ伝送システム１に適用される再送制御は、送信局２において、再送の度に異なるスクランブル用データを用いてデータブロック内のデータ本体をスクランブル処理し、受信局３において、再送の度に異なるが、送信局２と共通に設定されたスクランブル用データを用いて、データ本体に行われたスクランブル処理を解く（デスクランブル処理する）ように工夫されている。
さらに、この不具合を解消するために、データ伝送システム１に適用される再送制御は、送信局２が、同じデータフレームに同一のデータブロックを複数、含めるときには、この複数のデータフレーム中の一部のデータ本体に対してのみスクランブル処理を行い、受信局３が、送信局２においてスクランブル処理されたデータブロックのみに対して、デスクランブル処理を行うように工夫されている。
【００１５】
［データ伝送システム１］
以下、図１に示した本発明にかかる再送処理が適応されるデータ伝送システム１を説明する。
図３は、図１に示した送信局２および受信局３のハードウエア構成を例示する図である。
図３に示すように、送信局２および受信局３は、それぞれ、アンテナ１２０、共用器１２２、受信回路１３０、アナログ／ディジタル変換器（Ａ／Ｄ）１３２、ディジタル／アナログ変換器（Ｄ／Ａ）１４０、送信回路１４２、ＤＳＰ(Digital Signal Processor)１５０、ＤＳＰ１５０用のメモリ１５２（ＲＯＭおよびＲＡＭなどを含む）、ＣＰＵ１６０、ＣＰＵ１６０用のメモリ１６２（ＲＯＭおよびＲＡＭなどを含む）、および、インターフェース回路（ＩＦ）１７０から構成される。
【００１６】
アンテナ１２０は、送信局２と受信局３との間で、伝送信号を、無線通信回線１００（図１）を介して送受信する。
共用器１２２は、アンテナ１２０を、受信回路１３０と送信回路１４２とで共用させる。
受信回路１３０は、アンテナ１２０から共用器１２２を介して入力される無線通信回線１００を介した伝送のために適した周波数の受信信号（伝送信号）を増幅し、ベースバンドの受信信号に変換して、Ａ／Ｄ１３２に対して出力する。
Ａ／Ｄ１３２は、受信回路１３０から入力されたアナログ形式のベースバンド受信信号を、ディジタル形式の受信信号に変換して、ＤＳＰ１５０に対して出力する。
【００１７】
Ｄ／Ａ１４０は、ＤＳＰ１５０から入力されるディジタル形式のベースバンド送信信号を、アナログ形式の送信信号（伝送信号）に変換して、送信回路１４２に対して出力する。
送信回路１４２は、ベースバンドの送信信号を、無線通信回線１００を介した伝送のために適した周波数の送信信号に変換し、さらに電力増幅して、共用器１２２およびアンテナ１２０を介して、無線通信回線１００に対して送信する。
【００１８】
ＤＳＰ１５０は、メモリ１５２に記憶された信号処理用のプログラムを実行し、主に、受信信号の復調、および、送信信号の変調のための処理を行う。
ＣＰＵ１６０は、メモリ１６２に記憶された伝送制御用のプログラムを実行し、主に、再送制御のための処理を行う。
ＩＦ１７０は、送信局２および受信局３に接続されるホストコンピュータなど（図示せず）との間でデータを受け渡しするための処理を行う。
【００１９】
［ソフトウエア］
以下、データ伝送システム１の送信局２および受信局３において実行されるソフトウエアを説明する。
なお、送信局２および受信局３の機能は、ソフトウエア的にもハードウエア的にも実現されうるが、以下、これらの機能が、ＤＳＰ１５０およびＣＰＵ１６０により実行されるソフトウエア（プログラム）により実現される場合を具体例とする。
【００２０】
［送信局２のソフトウエア］
図４は、図１に示したデータ伝送システム１の送信局２のソフトウエア構成を示す図である。
図５は、図４に示した再送制御部２６の構成を示す図である。
【００２１】
図４に示すように、送信局２は、主にＤＳＰ１５０により実行される復調部２２０および変調部２１０と、主にＣＰＵ１６０により実行される再送制御部２６、送信バッファ部２００、誤り検出符号生成部２０２、スクランブル処理部２０４、フレーム組立部２０６、同期スロット検出部２３０、フレーム分離部２３２およびスクランブル制御部２３４とから構成される。
図５に示すように、図４に示した再送制御部２６は、再送回数管理部２６０、再送データブロック選択部２６２、データブロック数管理部２６４、データブロック番号管理部２６６、データブロック繰り返し数管理部２６８、スクランブルデータ管理部２７０、スクランブル位置管理部２７２および送信制御部２７４から構成される。
【００２２】
図４に示した送信局２の各ソフトウエア構成部分は、メモリ１５２，１６２（図３）に記憶されて送信局２に供給され、必要に応じて、送信局２にインストールされたＯＳ上で、送信局２のハードウエア資源を具体的に利用して実行される（以下の各ソフトウエア構成部分に同じ）。
送信局２のソフトウエアは、これらの構成部分により、受信局３との間で再送制御によるデータ伝送を行う。
【００２３】
図６は、図１に示した受信局３から送信局２に返される応答フレーム３８の構成を示す図である。
図６に示すように、受信局３から送信局２に返される応答フレーム３８には、図２に示したデータフレームにおいてと同様な同期フレーム、送信局２におけるデータブロックそれぞれの誤り検出結果を、１ビットのデータとして示すデータを収容する受信結果＃１〜＃Ｎ（０で誤りなし、１で誤り発生を示す）、および、受信結果＃１〜＃Ｎの数を示すデータを収容する受信結果数（対応するデータフレームに含まれるデータブロックの数と同じ）が含まれる。
復調部２２０（図４）は、Ａ／Ｄ１３２から入力されたベースバンドの受信信号を、無線通信回線１００を介した伝送に用いられる変調方式（ＱＡＭ、ＦＳＫあるいはＰＳＫなど）に応じて復調し、図６に示す応答フレームを含む受信データを、同期スロット検出部２３０およびフレーム分離部２３２に対して出力する。
【００２４】
同期スロット検出部２３０は、復調部２２０から入力された受信データに含まれる同期スロット（図６）を検出し、検出結果をフレーム分離部２３２に対して出力する。
フレーム分離部２３２は、復調部２２０から入力された受信データにおいて、検出された同期スロットに続く所定数のビットを、受信結果数として分離し、さらに、受信結果数に続く、受信結果数が示す数（Ｎ）ビットを、受信結果＃１〜＃Ｎとして分離する。
フレーム分離部２３２は、分離した受信結果数（Ｎ）および受信結果＃１〜＃Ｎを、再送制御部２６に対して出力する。
【００２５】
再送制御部２６は、送信局２と受信局３との間の再送制御を行う。
送信制御部２７４は、あるデータフレームを最初に送信局２から受信局３に送った後、応答フレームに含まれる全ての受信結果の内容が、誤りなしを示す０の値となるまで、または、再送回数が設定値に達するまで、送信局２の各構成部分を制御して、再送を繰り返させる。
再送制御部２６において、再送回数管理部２６０（図５）は、受信局３に対するデータフレームの再送回数を管理する。
つまり、再送回数管理部２６０は、図２（Ａ）に示したように、あるデータフレームを最初に送信するときに、再送回数（Ｍ）を０とし、応答フレーム（図６）を用いた受信局３からの誤り発生の通知に応じて、データフレームを再送するたびに、この再送回数を示す再送回数データ１ずつ増やして記憶し、管理して、再送制御部２６の他の構成部分およびフレーム組立部２０６に対して出力する。
【００２６】
再送データブロック選択部２６２は、受信局３から返された応答フレームの受信結果に応じて、受信局３において誤りが検出され、再送を要するデータブロックを選択する。
なお、再送データブロック選択部２６２は、応答フレームが、同一種類・複数のデータブロックのいずれかからも誤りが検出されなかったことを示しているときには、この種類のデータブロックの伝送は正常に行われたとして選択しない。
つまり、データブロック選択部２６２は、応答フレームが、同一種類・複数のデータブロックの全てから誤りが検出されたことを示しているときにのみ、この種類のデータブロックの伝送に異常が生じ、再送を要するとして選択する。
再送データブロック選択部２６２は、送信バッファ部２００を制御して、再送を要するデータブロックを、誤り検出符号生成部２０２およびフレーム組立部２０６に対して出力させる。
【００２７】
データブロック数管理部２６４は、図２（Ａ）に示したように、送信局２から受信局３に対して送信されるデータフレームに含まれるデータブロック数（Ｎ）を管理する。
データブロック数管理部２６４は、例えば、あるデータフレームを最初に送信するときに、このデータフレームに、１６個のデータブロックが含まれるときには（Ｎ＝１６）、データブロック数を１６として記憶し、管理する。
あるいは、データブロック数管理部２６４は、例えば、何回目かに再送されるデータフレームに、４種類の内容のデータブロックが、３個ずつ含まれるときには（Ｎ＝４×３）、データブロック数を１２として記憶し、管理する。
データブロック数管理部２６４は、記憶・管理したデータブロック数を示すデータブロック数データを、再送制御部２６の他の構成部分およびフレーム組立部２０６に対して出力する。
【００２８】
データブロック番号管理部２６６は、図２（Ｂ）に示したように、データフレームに含まれるデータブロックそれぞれのデータブロック番号を記憶し、管理する。
データブロック番号管理部２６６は、記憶・管理したデータブロック番号を示すデータブロック番号データを、再送制御部２６の他の構成部分およびフレーム組立部２０６に対して出力する。
【００２９】
データブロック繰り返し数管理部２６８は、再送回数管理部２６０から入力される再送回数に応じて、送信局２から受信局３に対して、１つのデータフレーム内に、同一内容のデータブロックを、何個、繰り返して収容させるかを示すデータブロック繰り返し数データを、受信局３側と共通に記憶し、管理する。
例えば、データブロック繰り返し数管理部２６８は、最初にデータフレームを送信するときに、データフレームに、Ｎ種類の内容のデータブロックが、それぞれ１つずつ含まれることを示すデータブロック繰り返し数データ（１）を、記憶し、管理する。
あるいは、データブロック繰り返し数管理部２６８は、例えば、第１回目の再送時のデータフレームを送信するときに、データフレームに、再送を要するＮ種類の内容のデータブロックが、それぞれ２個ずつ含まれることを示すデータブロック繰り返し数データ（１）を、記憶し、管理する。
【００３０】
あるいは、データブロック繰り返し数管理部２６８は、例えば、第２回目の再送時のデータフレームを送信するときに、データフレームに、再送を要するＮ種類の内容のデータブロックが、それぞれ３個ずつ含まれることを示すデータブロック繰り返し数データ（２）を、記憶し、管理する。
データブロック繰り返し数管理部２６８は、記憶・管理したデータブロック数データを、再送制御部２６の他の構成部分に対して出力する。
また、データブロック繰り返し数管理部２６８は、同一種類のデータブロックそれぞれを、記憶・管理しているデータブロック数データが示す数ずつ含むデータフレームを組み立てるように、フレーム組立部２０６を制御する。
【００３１】
図７は、図１に示した送信局２におけるスクランブル処理、および、受信局３におけるデスクランブル処理を例示する図であって、（Ａ）は、送信局２におけるスクランブル処理を示し、（Ｂ）は、受信局３におけるデスクランブル処理を示す。
スクランブルデータ管理部２７０（図５）は、図７（Ａ）に示すように、再送回数管理部２６０から入力される再送回数に応じて、送信局２から受信局３に対して送信されるデータフレームに含まれるデータブロック中のデータ本体（図２（Ｂ））のスクランブル処理のために用いられるスクランブルデータを、受信局３側と共通に記憶し、管理する。
スクランブル位置管理部２７２は、送信局２から受信局３に送信されるデータフレームに、同一種類のデータブロックが複数、含まれるときに、同一種類のいずれのデータブロックに対してスクランブル処理を行うかを示すスクランブル位置データを、受信局３側と共通に記憶し、管理する。
【００３２】
スクランブルデータ管理部２７０は、例えば、図７（Ａ）に示すように、１回目の再送時に、値が「１０１０１０１０」をとるスクランブルデータを記憶し、管理する。
あるいは、スクランブルデータ管理部２７０は、例えば、２回目の再送時に、値が「１１００１１００」をとるスクランブルデータを記憶し、管理する。
スクランブル位置管理部２７２は、例えば、第２回目の再送時のデータフレームを送信するときに、データフレームに、再送を要するＮ種類の内容のデータブロックが、それぞれ２つずつ含まれるときに、２つの内の同期スロットに近い一方にのみスクランブル処理がなされることを示すスクランブル位置データを、記憶し、管理する。
あるいは、スクランブル位置管理部２７２は、例えば、第２回目の再送時のデータフレームを送信するときに、データフレームに、再送を要するＮ種類の内容のデータブロックが、それぞれ２つずつ含まれるときに、これらの両方にスクランブル処理がなされることを示すスクランブル位置データを、記憶し、管理する。
スクランブルデータ管理部２７０およびスクランブル位置管理部２７２は、記憶・管理したスクランブルデータおよびスクランブル位置データを、スクランブル制御部２３４に対して出力する。
【００３３】
送信バッファ部２００（図４）は、ホストコンピュータから、伝送の対象とされるデータ本体（図２（Ｂ））を受け入れ、記憶し、再送制御部２６の制御に応じて、図６を参照して後述するように、記憶したデータ本体を、誤り検出符号生成部２０２およびフレーム組立部２０６に対して、８ビットずつ出力する。
誤り検出符号生成部２０２は、送信バッファ部２００から入力されたデータ本体の誤りを検出するために用いられる誤り検出符号を生成し、スクランブル処理部２０４に対して出力する。
【００３４】
スクランブル制御部２３４は、再送制御部２６のスクランブルデータ管理部２７０およびスクランブル位置管理部２７２（図５）から入力されるスクランブルデータおよびスクランブル位置データに従って、図７（Ａ）に示したように、データフレームの特定のデータブロックそれぞれに含まれるデータ本体（図２（Ｂ））に対して、スクランブル処理を行うように、スクランブル処理部２０４を制御する。
スクランブル処理部２０４は、スクランブル制御部２３４の制御に従って、誤り検出符号生成部２０２から入力されたデータ本体をスクランブル処理する。
つまり、スクランブル処理部２０４は、図７（Ａ）に示したように、送信バッファ部２００から８ビットずつ入力されるデータ本体の内、スクランブル位置データに従ってスクランブル制御部２３４により選択されたデータ本体と、スクランブル制御部２３４から入力される８ビットのスクランブルデータとに対して排他的論理和（ＸＯＲ）演算を行い、このＸＯＲ演算結果を、スクランブル処理済みのデータ本体として、フレーム組立部２０６に対して出力する。
また、スクランブル処理部２０４は、送信バッファ部２００から８ビットずつ入力されるデータ本体の内、スクランブル位置データに従ってスクランブル制御部２３４により選択されないデータ本体の内容を変更せずに通過させて、スクランブル処理済みのデータ本体として、フレーム組立部２０６に対して出力する。
【００３５】
フレーム組立部２０６は、同期スロットと、誤り検出符号生成部２０２から入力される誤り検出符号と、スクランブル処理部２０４によりスクランブル処理されたデータ本体と、再送制御部２６の再送回数管理部２６０、データブロック数管理部２６４およびデータブロック番号管理部２６６から入力される再送回数、データブロック数およびデータブロック番号とを組み立てて、図２（Ａ），（Ｂ）に示したデータフレームを生成し、変調部２１０に対して出力する。
変調部２１０は、フレーム組立部２０６から入力されたデータフレームを含む送信データから、無線通信回線１００を介した伝送に用いられる変調方式のベースバンドの送信信号を生成し、Ｄ／Ａ１４０（図３）に対して出力する。
【００３６】
［送信局２の処理］
ここで、送信局２の処理をまとめて説明する。
図８は、図４に示した送信局２の処理（Ｓ２０）を示すフローチャートである。
図８に示すように、ステップ２００（Ｓ２００）において、再送制御部２６の送信制御部２７４（図５）は、データフレーム（図２（Ａ），（Ｂ））の作成に用いるパラメータ（再送回数、データブロック数、スクランブルデータおよびスクランブル位置データ）の値を初期化する、
ステップ２０２（Ｓ２０２）において、送信制御部２７４は、ホストコンピュータより、データ送信要求があったか否かを判断する。
送信局２は、データ送信要求があったときには、Ｓ２０４の処理に進み、これ以外のときにはＳ２０２の処理に留まる。
【００３７】
ステップ２０４（Ｓ２０４）において、送信局２は、受信局３に対して、最初のデータフレームを送信する。
ステップ２０６（Ｓ２０６）において、送信局２は、受信局３からの応答フレーム（図６）を受信する。
ステップ２０８（Ｓ２０８）において、再送制御部２６の送信制御部２７４（図５）は、Ｓ２０６の処理において、受信局３からの応答フレームを受信したか否かを判断する。
送信局２は、受信局３からの応答フレームを受信したときにはＳ２１０の処理に進み、これ以外のときにはＳ２０６の処理に戻る。
【００３８】
ステップ２１０（Ｓ２１０）において、同期スロット検出部２３０は、応答フレーム（図６）から同期スロットを検出し、フレーム分離部２３２は、同期スロットの検出に応じて、応答フレームから、受信結果数（Ｎ）および受信結果＃１〜＃Ｎを分離する。
ステップ２１２（Ｓ２１２）において、送信制御部２７４は、分離された受信結果に誤りを示す値（１）が含まれているか否かを判断する。
送信局２は、分離された受信結果に誤りを示す値（１）が含まれているときにはＳ２１４の処理に進み、これ以外のときには再送処理を終了する。
【００３９】
ステップ２１４（Ｓ２１４）において、再送制御部２６の再送回数管理部２６０（図５）は、再送回数の設定を行う。
ステップ２１６（Ｓ２１６）において、再送制御部２６の再送データブロック選択部２６２は、再送するデータブロックを選択する。
ステップ２１８（Ｓ２１８）において、再送制御部２６のデータブロック繰り返し数管理部２６８は、再送するデータブロックの繰り返し数を設定する。
ステップ２２０（Ｓ２２０）において、再送制御部２６のスクランブルデータ管理部２７０は、スクランブルデータを設定する。
ステップ２２２（Ｓ２２２）において、再送制御部２６のスクランブル位置管理部２７２は、スクランブル位置データを設定する。
【００４０】
ステップ２２４（Ｓ２２４）において、誤り検出符号生成部２０２（図４）は、送信バッファ部２００から入力されたデータ本体の誤り検出符号を生成する。
ステップ２２６（Ｓ２２６）において、スクランブル処理部２０４は、スクランブル制御部２３４の制御に従って、送信バッファ部２００から入力されたデータ本体に対して、スクランブル処理を行う。
ステップ２２８（Ｓ２２８）において、フレーム組立部２０６は、データフレーム（図２（Ａ），（Ｂ））を生成し、生成したデータフレームを、変調部２１０などを介して、受信局３に対して送信する。
【００４１】
［受信局３のソフトウエア］
図９は、図１に示したデータ伝送システム１の受信局３のソフトウエア構成を示す図である。
図１０は、図９に示した応答制御部３２の構成を示す図である。
図９に示すように、受信局３は、復調部２２０、変調部２１０、同期スロット検出部２３０、フレーム分離部３００、誤り検出部３０２、デスクランブル処理部３０６、応答フレーム生成部３１０および応答制御部３２から構成される。
図１０に示すように、応答制御部３２は、スクランブルデータ管理部２７０、スクランブル位置管理部２７２（図５）、受信結果数管理部３２０、受信結果管理部３２２および送信制御部３２４から構成される。
受信局３のソフトウエアは、これらの構成部分により、受信局３から受信されたデータフレーム（図２（Ａ），（Ｂ））のデータブロックそれぞれに含まれるデータ本体に対するスクランブル処理を解き、誤りを検出し、誤り検出結果を示す応答フレーム（図６）を生成し、送信局２に対して送信する。
【００４２】
受信局３において、フレーム分離部３００は、同期スロット検出部２３０による同期スロットの検出に応じて、送信局２から受信されたデータフレーム（図２（Ａ），（Ｂ））に含まれる再送回数（Ｍ）およびデータブロック数（Ｎ）と、データブロックそれぞれに含まれるデータブロック番号（ｉ）、データ本体および誤り検出符号とを分離する。
フレーム分離部３００は、分離したデータ本体を、デスクランブル処理部３０６に対して出力し、データブロック番号（ｉ）および誤り検出符号を、誤り検出部３０２に対して出力し、再送回数（Ｍ）およびデータブロック数（Ｎ）を、応答制御部３２に対して出力する。
【００４３】
応答制御部３２において、スクランブルデータ管理部２７０およびスクランブル位置管理部２７２は、再送回数（Ｍ）の値に応じて、スクランブルデータおよびスクランブル位置データ（図７（Ａ），（Ｂ））をデスクランブル処理部３０６に対して出力する。
デスクランブル処理部３０６は、図７（Ｂ）に示すように、分離されたデータブロックに含まれるデータ本体の内、スクランブル位置管理部２７２から入力されたスクランブル位置データが示すデータブロックのデータ本体と、スクランブルデータ管理部２７０から入力されたスクランブルデータとをＸＯＲ演算し、ＸＯＲ演算結果を、スクランブル処理が解かれた（デスクランブルされた）データ本体として、誤り検出部３０２に対して出力する。
誤り検出部３０２は、フレーム分離部３００から入力された誤り検出符号を用いて、デスクランブル処理部３０６から入力されたデータブロックのデータ本体それぞれに対して誤り検出を行い、誤りが検出されたデータブロック番号に対応する受信結果ビットの値を１とし、誤りが検出されなかったデータブロック番号に対応する受信結果ビットの値を０として、応答制御部３２に対して出力する。
【００４４】
応答制御部３２の受信結果数管理部３２０は、フレーム分離部３００から入力されたデータブロック数（Ｎ）を、応答フレーム（図６）に含まれる受信結果数を示す受信結果数データとして記憶し、管理する。
受信結果数管理部３２０は、記憶・管理した受信結果数データを、応答フレーム生成部３１０に対して出力する。
受信結果管理部３２２は、誤り検出部３０２から入力された受信結果ビットを、送信局２から受信されたデータフレーム（図２（Ａ），（Ｂ））のデータブロックそれぞれに含まれるデータ本体の誤り検出結果（受信結果）＃１〜＃Ｎ（図６）として記憶し、管理する。
【００４５】
受信結果管理部３２２は、記憶・管理した受信結果を、応答フレーム生成部３１０に対して出力する。
応答制御部３２の送信制御部３２４は、誤り検出部３０２から入力される受信結果ビットの全てが、データブロックに誤りが生じていない値（０）であるときに、デスクランブル処理部３０６を制御して、受信したデータ本体を、順次、ホストコンピュータ（図示せず）に対して出力させる。
送信制御部３２４は、応答フレーム生成部３１０を制御して、受信結果数管理部３２０から入力される受信結果数データが示す受信結果数（Ｎ）、および、受信結果管理部３２２から入力された受信結果＃１〜＃Ｎを含む応答データ（図６）を生成させ、変調部２１０に対して出力させる。
【００４６】
［受信局３の処理］
ここで、受信局３の処理をまとめて説明する。
図１１は、図９に示した受信局３の処理（Ｓ３０）を示すフローチャートである。
図１１に示すように、ステップ３００（Ｓ３００）において、受信局３は、送信局２からのデータフレーム（図２（Ａ），（Ｂ））を受信する。
ステップ３０２（Ｓ３０２）において、送信制御部３２４は、Ｓ３００の処理において、送信局２からのデータフレームを受信したか否かを判断する。
受信局３は、送信局２からのデータフレームを受信したときにはＳ３０４の処理に進み、これ以外のときにはＳ３００の処理に戻る。
【００４７】
ステップ３０４（Ｓ３０４）において、フレーム分離部３００は、同期スロット検出部２３０による同期スロットの検出に応じて、受信されたデータフレーム（図２（Ａ），（Ｂ））から、再送回数（Ｍ）、データブロック数（Ｎ）、データフレームのデータブロック＃１〜＃Ｎそれぞれに含まれるデータブロック番号（ｉ）、データ本体および誤り検出符号を分離する。
フレーム分離部３００は、分離したこれらのデータを、誤り検出部３０２、デスクランブル処理部３０６および応答制御部３２に対して出力する。
【００４８】
ステップ３０６（Ｓ３０６）において、応答制御部３２のスクランブルデータ管理部２７０およびスクランブル位置管理部２７２は、フレーム分離部３００から入力された再送回数に応じて、スクランブルデータおよびスクランブル位置データを、デスクランブル処理部３０６に対して出力する。
デスクランブル処理部３０６は、図７（Ｂ）に示したように、応答制御部３２から入力されたスクランブルデータおよびスクランブル位置データを用いて、データフレームのデータブロック＃１〜＃Ｎそれぞれに含まれるデータ本体に対してデスクランブル処理を行い、誤り検出部３０２に対して出力する。
【００４９】
ステップ３０８（Ｓ３０８）において、誤り検出部３０２は、フレーム分離部３００から入力された誤り検出符号を用いて、データ本体の誤り検出を行い、誤り検出結果を示す受信結果＃１〜＃Ｎ（図６）を、応答制御部３２の受信結果管理部３２２に対して出力する。
ステップ３１０（Ｓ３１０）において、送信制御部３２４は、Ｓ３０８の処理において、受信結果＃１〜＃Ｎに、誤りを検出したことを示す値（１）が含まれているか否かを判断する。
受信局３は、受信結果＃１〜＃Ｎに、誤りを検出したことを示す値（１）が含まれているときにはＳ３１４の処理に進み、これ以外のときにはＳ３１２の処理に進む。
【００５０】
ステップ３１２（Ｓ３１２）において、送信制御部３２４は、デスクランブル処理部３０６を制御して、デスクランブルされたデータ本体を、ホストコンピュータに対して出力させ、さらに、デスクランブル処理部３０６によるデスクランブル処理に用いられるパラメータ（スクランブルデータおよびスクランブル位置データ）を初期化する。
ステップ３１４（Ｓ３１４）において、応答制御部３２の受信結果数管理部３２０（図１０）は、分離されたデータブロック数（Ｎ）を、応答フレームの受信結果数に設定する。
【００５１】
ステップ３１６（Ｓ３１６）において、応答制御部３２の受信結果管理部３２２は、誤り検出部３０２から出力された受信結果＃１〜＃Ｎを、応答フレーム（図６）の受信結果に設定する。
ステップ３１８（Ｓ３１８）において、応答制御部３２の送信制御部３２４は、応答フレーム生成部３１０を制御して、応答フレームを組立させ、変調部２１０などを介して送信させる。
【００５２】
［データ伝送システム１の全体動作］
以下、データ伝送システム１の第１の全体的な動作を、具体例を示して説明する。
図１２は、図１に示したデータ伝送システム１の第１の全体的な動作（Ｓ４０）を例示する通信シーケンス図である。
図１２に示すように、ステップ４００（Ｓ４００）において、送信局２から受信局３に対して最初のデータフレーム（図２（Ａ），（Ｂ））が送信される。
このデータフレームにおいては、再送回数は０に設定され、データブロック数は８に設定され、このデータフレームには、８個のデータブロック（ＤＢ）＃１〜＃８が含まれる。
【００５３】
ステップ４０２（Ｓ４０２）において、受信局３は、データフレームを受信し、例えば、このデータフレームのデータブロック＃１，＃３，＃５，＃７のデータ本体の誤りを検出する。
ステップ４０４（Ｓ４０４）において、受信局３は、送信局２に対して、応答フレーム（図６）を送信する。
この応答フレームにおいて、受信結果数は８に設定され、データブロック＃１，＃３，＃５，＃７に対応する受信結果＃１，＃３，＃５，＃７が、誤りが検出されたことを示す値（１）に設定され、他の受信結果は、誤りが検出されなかったことを示す値（０）に設定される。
【００５４】
ステップ４０６（Ｓ４０６）において、送信局２は、第１回目のデータフレームの再送を行う。
このデータフレームにおいては、再送回数は１に設定され、データブロック数は８に設定され、このデータフレームには、データブロック＃１，＃３，＃５，＃７が、例えば２個ずつ含まれ、それぞれ２つのデータブロック＃１，＃３，＃５，＃７の内、同期スロットに近い１つだけがスクランブル処理される。
ステップ４０８（Ｓ４０８）において、受信局３は、第１回目の再送のデータフレームを受信し、例えば、このデータフレームに含まれるデータブロックの内、データブロック＃１，＃３のデータ本体の誤りを検出する。
ステップ４１０（Ｓ４１０）において、受信局３は、送信局２に対して、応答フレーム（図６）を送信する。
この応答フレームにおいて、受信結果数は６に設定され、データブロック＃１，＃３に対応する受信結果＃１，＃３が、誤りが検出されたことを示す値（１）に設定され、他の受信結果は、誤りが検出されなかったことを示す値（０）に設定される。
【００５５】
ステップ４１２（Ｓ４１２）において、送信局２は、第２回目のデータフレームの再送を行う。
このデータフレームにおいては、再送回数は２に設定され、このデータフレームには、データブロック＃１，＃３が、例えば３個ずつ含まれ、それぞれ３つのデータブロック＃１，＃３の内、同期スロットに近い１つだけがスクランブル処理される。
【００５６】
ステップ４１４（Ｓ４１４）において、例えば、受信局３は、第２回目の再送のデータフレームのデータブロックに含まれる同一種類（＃１あるいは＃３）のデータブロックの少なくともいずれかののデータ本体の誤りを検出しなかった（正常に受信した）。
ステップ４１６（Ｓ４１６）において、受信局３は、送信局２に対して、応答フレーム（図６）を送信する。
この応答フレームにおいて、受信結果数は６に設定され、データブロック＃１〜＃６の受信結果の全てが、誤りが検出されなかったことを示す値（０）に設定される。
送信局２が、この応答フレームを受信すると、送信局２による再送処理が終了する。
【００５７】
以下、データ伝送システム１の第２の全体的な動作を、具体例を示して説明する。
図１３は、図１に示したデータ伝送システム１の第２の全体的な動作（Ｓ４２）を例示する通信シーケンス図である。
図１３に示すように、ステップ４２０（Ｓ４２０）において、送信局２から受信局３に対して最初のデータフレーム（図２（Ａ），（Ｂ））が送信される。
このデータフレームにおいては、再送回数は０に設定され、データブロック数は８に設定され、このデータフレームには、８個のデータブロック（ＤＢ）＃１〜＃８が含まれる。
【００５８】
ステップ４２２（Ｓ４２２）において、受信局３は、データフレームを受信し、例えば、このデータフレームのデータブロック＃１，＃３，＃５，＃７のデータ本体の誤りを検出する。
ステップ４２４（Ｓ４２４）において、受信局３は、送信局２に対して、応答フレーム（図６）を送信する。
この応答フレームにおいて、受信結果数は８に設定され、データブロック＃１，＃３，＃５，＃７に対応する受信結果＃１，＃３，＃５，＃７が、誤りが検出されたことを示す値（１）に設定され、他の受信結果は、誤りが検出されなかったことを示す値（０）に設定される。
【００５９】
ステップ４２６（Ｓ４２６）において、送信局２は、第１回目のデータフレームの再送を行う。
このデータフレームにおいては、再送回数は１に設定され、データブロック数は８に設定され、このデータフレームには、データブロック＃１，＃３，＃５，＃７が、例えば２個ずつ含まれ、それぞれ２つのデータブロック＃１，＃３，＃５，＃７の全てがスクランブル処理される。
ステップ４２８（Ｓ４２８）において、受信局３は、第１回目の再送のデータフレームを受信し、例えば、このデータフレームのデータブロック＃１，＃３のデータ本体の誤りを検出する。
ステップ４３０（Ｓ４３０）において、受信局３は、送信局２に対して、応答フレーム（図６）を送信する。
この応答フレームにおいて、受信結果数は６に設定され、データブロック＃１，＃３に対応する受信結果＃１，＃３が、誤りが検出されたことを示す値（１）に設定され、他の受信結果は、誤りが検出されなかったことを示す値（０）に設定される。
【００６０】
ステップ４３２（Ｓ４３２）において、送信局２は、第２回目のデータフレームの再送を行う。
このデータフレームにおいては、再送回数は２に設定され、このデータフレームには、データブロック＃１，＃３が、例えば３個ずつ含まれ、それぞれ３つのデータブロック＃１，＃３の全てがスクランブル処理される。
【００６１】
ステップ４３４（Ｓ４３４）において、例えば、受信局３は、第２回目の再送のデータフレームのデータブロックに含まれる同一種類（＃１あるいは＃３）のデータブロックの少なくともいずれかのデータ本体の誤りを検出しなかった（正常に受信した）。
ステップ４３６（Ｓ４３６）において、受信局３は、送信局２に対して、応答フレーム（図６）を送信する。
この応答フレームにおいて、受信結果数は６に設定され、データブロック＃１〜＃６の受信結果の全てが、誤りが検出されなかったことを示す値（０）に設定される。
送信局２が、この応答フレームを受信すると、送信局２による再送処理が終了する。
【００６２】
以上説明したように、本発明にかかるデータ伝送システムは、再送が要求された１種類以上のデータブロックを、１種類につき複数ずつ含む送信用データフレームを、送信局から受信局に送信するとともに、受信局において、送信局から送信された再送用フレームに、１種類につき複数ずつ含まれるデータブロックのいずれかから誤りが検出されなかったときに、誤りが検出されなかった種類のデータブロックが正常に受信されたと判定するように構成されているので、１回のフレーム伝送でデータブロックが正常に伝送される確率を向上させることができる。
つまり、本発明にかかるデータ伝送システムによれば、データ伝送の確達性能を向上させることができる。
【００６３】
また、本発明にかかるデータ伝送システムは、再送の回数に応じて予め決められたスクランブルデータを用いて、再送が要求されたデータブロックをスクランブル処理し、このようにスクランブル処理されたデータブロックが、１種類につき複数ずつ含まれる再送用データフレームを、送信局から受信局に送信するとともに、受信局において、再送用フレームに含まれるデータブロックをデスクランブル処理し、デスクランブル処理されたデータブロックの誤りを検出するように構成されているので、データブロックを示すビット列が、再送ごとに変化する。
つまり、本発明にかかるデータ伝送システムは、このようなスクランブル処理およびデスクランブル処理を行うことにより、上述のデータ伝送の確達性能を向上させるという効果に加え、無線機の特性により特定のビット列に誤りが生じやすいときにも、データ伝送の確達性能を向上させることができる。
【００６４】
また、本発明にかかるデータ伝送システムは、再送が要求されたがスクランブル処理されてないデータブロックと、スクランブル処理されたデータブロックとの両方を含む再送用データフレームを、前記受信局に送信するとともに、受信局において、スクランブル処理されたデータブロックのみをデスクランブル処理し、再送が要求されたがスクランブル処理されてないデータブロックと、デスクランブル処理されたデータブロックの両方の誤りを検出するように構成されている。
つまり、１つの再送用フレーム内において、１つの種類のデータブロックが、複数の種類のビット列で表され、伝送されるので、無線機の特性により特定のビット列に誤りが生じやすいときにも、データ伝送の確達性能を、一層、向上させることができることができる。
【産業上の利用可能性】
【００６５】
本発明は、再送制御を行うデータ伝送に利用可能である。
【図面の簡単な説明】
【００６６】
【図１】本発明にかかるデータ伝送システムの構成を示す図である。
【図２】図１に示した送信局２ら受信局に対する無線通信回線を介したデータ伝送に用いられるデータフレームの構成を示す図であって、（Ａ）は、データフレームの構成を示し、（Ｂ）は、データフレームに含まれるデータブロックの構成を示す。
【図３】図１に示した送信局および受信局のハードウエア構成を例示する図である。
【図４】図１に示したデータ伝送システムの送信局のソフトウエア構成を示す図である。
【図５】図４に示した再送制御部の構成を示す図である。
【図６】図１に示した受信局から送信局に返される応答フレームの構成を示す図である。
【図７】図１に示した送信局２におけるスクランブル処理、および、受信局におけるデスクランブル処理を例示する図であって、（Ａ）は、送信局におけるスクランブル処理を示し、（Ｂ）は、受信局におけるデスクランブル処理を示す。
【図８】図４に示した送信局の処理（Ｓ２０）を示すフローチャートである。
【図９】図１に示したデータ伝送システムの受信局のソフトウエア構成を示す図である。
【図１０】図９に示した応答制御部の構成を示す図である。
【図１１】図９に示した受信局の処理（Ｓ３０）を示すフローチャートである。
【図１２】図１に示したデータ伝送システムの第１の全体的な動作（Ｓ４０）を例示する通信シーケンス図である。
【図１３】図１に示したデータ伝送システムの第２の全体的な動作（Ｓ４２）を例示する通信シーケンス図である。
【符号の説明】
【００６７】
１・・・データ伝送システム，
２・・・送信局，
１２０・・・アンテナ，
１２２・・共用器，
１３０・・・受信回路，
１３２・・・Ａ／Ｄ，
１４０・・・Ｄ／Ａ，
１４２・・・送信回路，
１５０・・・ＤＳＰ，
１５２，１６２・・・メモリ，
１６０・・・ＣＰＵ，
２００・・・送信バッファ部，
２０２・・・誤り検出符号生成部，
２０４・・・スクランブル処理部，
２０６・・・フレーム組立部，
２１０・・・変調部，
２２０・・・復調部，
２３０・・・同期スロット検出部，
２３２，３００・・・フレーム分離部，
２３４・・・スクランブル制御部，
２６・・・再送制御部，
２６０・・・再送回数管理部，
２６２・・・再送データブロック選択部，
２６４・・・データブロック数管理部，
２６６・・・データブロック番号管理部，
２６８・・・データブロック繰り返し数管理部，
２７０・・・スクランブルデータ管理部，
２７２・・・スクランブル位置管理部，
２７４，３２４・・・送信制御部，
２８・・・データフレーム，
３・・・受信局，
３０２・・・誤り検出部，
３０６・・・デスクランブル処理部，
３１０・・・応答フレーム生成部，
３２・・・応答制御部，
３２０・・・受信結果数管理部，
３２２・・・受信結果管理部，
３８・・・応答フレーム，
【図１】
2009017186.tif 000003
【図２】
2009017186.tif 000004
【図３】
2009017186.tif 000005
【図４】
2009017186.tif 000006
【図５】
2009017186.tif 000007
【図６】
2009017186.tif 000008
【図７】
2009017186.tif 000009
【図８】
2009017186.tif 000010
【図９】
2009017186.tif 000011
【図１０】
2009017186.tif 000012
【図１１】
2009017186.tif 000013
【図１２】
2009017186.tif 000014
【図１３】
2009017186.tif 000015