(57)【要約】【課題】  相互間での通信時のフレームの衝突を回避できる通信方法、送受信回路、携帯電話を提供する。【解決手段】  ステートマシン701および送信フレーム生成部702により、自局のターンアラウンド時間を計測するタイマ709および送信権を委譲するフラグを用いてフレーム送信を送信機703を介して行う。自局がＵＩフレームフォーマットに従って、送信を行っている間に、自局の最大ターンアラウンド時間に達すると判断される場合、送信権を委譲する意味の値を前記送信権を委譲するフラグに設定して送信を行う。【選択図】  図１
2006211425.tif 000002
【特許請求の範囲】
【請求項１】
自局のターンアラウンド時間を計測するタイマおよび送信権を委譲するフラグを用いてフレーム送信を行う通信方法において、
自局が第１のフレームフォーマットに従って、送信を行っている間に、自局の最大ターンアラウンド時間に達すると判断される場合、送信権を委譲する意味の値を前記送信権を委譲するフラグに設定して、送信を行うことを特徴とする通信方法。
【請求項２】
自局のターンアラウンド時間を計測するタイマおよび送信権を委譲するフラグを用いてフレーム転送を行う通信方法において、
前記ターンアラウンド時間を計測するタイマの値が、自局の最大ターンアラウンド時間よりも短いあらかじめ定められた値に達していれば、第２のフレームフォーマットに従って送信権を委譲するフラグに送信権を委譲する意味の値を設定して、フレーム送信を行うことを特徴とする通信方法。
【請求項３】
自局のターンアラウンド時間を計測するタイマおよび送信権を委譲するフラグを用いてデータ送信を行う通信方法において、
自局が第３のフレームフォーマットに従って、送信を行っている間に、自局の最大ターンアラウンド時間に達した場合は、直ちに送信フレームを終了し、
その直後に第４のフレームフォーマットに従って、送信権を委譲するフラグを送信権を委譲する意味に設定したフレームを送信し、
相手局から第３のフレームフォーマットもしくは第４のフレームフォーマットに従い、送信権を委譲する意味のフレームを受信した後、
前回の送信データの続きから、第３のフレームフォーマットに従ったフレームの送信を行うことを特徴とする通信方法。
【請求項４】
請求項１ないし３の何れか１項に記載の通信方法であって、特に通信媒体として赤外線を用いることを特徴とする通信方法。
【請求項５】
請求項１に記載の通信方法であって、前記第１のフレームフォーマットとは、ＩｒＤＡのＵＩフレームフォーマットであることを特徴とする通信方法。
【請求項６】
請求項１に記載の通信方法であって、前記自局の最大ターンアラウンド時間に達すると判断される時間とは、フレーム送信開始時間に、接続時に決定されるデータ転送速度および最大フレーム長から求められる最大フレーム転送時間を足した値が、自局の最大ターンアラウンド時間を超える場合であることを特徴とする通信方法。
【請求項７】
請求項１に記載の通信方法であって、前記自局の最大ターンアラウンド時間に達すると判断される時間とは、フレーム送信開始時間に、接続時に決定されるデータ転送速度および送信しようとしているフレームのフレーム長から求められるフレーム転送時間を足した値が、自局の最大ターンアラウンド時間を超える場合であることを特徴とする通信方法。
【請求項８】
請求項２に記載の通信方法であって、前記第２のフレームフォーマットとは、ＩｒＤＡのＲＲフレームフォーマットであることを特徴とする通信方法。
【請求項９】
請求項２に記載の通信方法であって、前記あらかじめ定められた値とは、自局の最大ターンアラウンド時間から、接続時に決定されるデータ転送速度および最大フレーム長から得られる最大フレーム転送時間を引いた値であることを特徴とする通信方法。
【請求項１０】
請求項３に記載の通信方法であって、前記第３のフレームフォーマットとは、ＩｒＤＡのＵＩフレームフォーマットであり、第４のフレームフォーマットとは、ＩｒＤＡのＲＲフレームフォーマットであることを特徴とする通信方法。
【請求項１１】
請求項１ないし１０の何れか１項に記載の通信方法を実現するための送受信回路。
【請求項１２】
請求項１ないし１０の何れか１項に記載の通信方法を実現するための携帯電話。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ通信方法、データ通信装置、およびデータ通信プログラム記録媒体に関し、特に不平衡半二重ＨＤＬＣ通信方式によりフレーム単位で送受信を行うデータ通信、さらには赤外線により、一次局と二次局とで通信をおこなうＩｒＤＡ(Infrared Data Association)通信システムにおけるデータ通信方法、データ通信装置、及びデータ通信プログラム記録媒体に関するものである。
【背景技術】
【０００２】
赤外線通信は、携帯電話、ノート型パーソナルコンピュータや電子手帳等携帯個人用端末を中心に、これら携帯に適した電子機器相互間の、あるいはこれらと、デスクトップ型パーソナルコンピュータや赤外線対応プリンタ等とのデータ交換に、近年普及している。赤外線通信における通信方式としては、ＩｒＤＡ方式やＡＳＫ方式などがあるが、ＩｒＤＡ方式は、コンピュータ間を主体とする高速・高効率な伝送のための通信方式であるＨＤＬＣ通信方式を元に、赤外線通信のために規定された通信プロトコルであって、一般的なものとしてよく普及している。
【０００３】
また、コンピュータ等におけるデータ伝送にあたっては、ある大きさのデータと、その前後に付与された通し番号、アドレス等を示す情報とからなるパケットを送受信するパケット交換によることが一般的であるが、ＨＤＬＣ通信方式やＩｒＤＡ通信方式において用いられるパケットはフレームと呼ばれ、ＩｒＬＡＰ層にて管理される。
【０００４】
フレームは、アドレス（Ａ）、制御（Ｃ）、情報（Ｉ）、及びＦＣＳの各フィールドと、前後に付与されるフラグから構成されるものであって、情報（データ）転送用に用いられるＩ(Information )フレーム、通信の監視制御のためのＳ(Supervisory)フレーム、及び通信における接続や切断、再送のないデータ通信等のために用いるＵ(Unnumbered)フレームがある。
【０００５】
通常、伝送されるべきデータは１フレームで送信できない場合が多いため、複数のフレーム（ＩフレームもしくはＵＩフレーム）に分割して送信される。Ｉフレームは伝送するデータをＩフィールドに持ち、データ抜けのチェックに用いる通し番号を有することで信頼性の高い通信の実現を図ることができるものである。ＵＩフレームは、伝送するデータをＩフィールドに持つが、データ抜けのチェックに用いる通し番号を持たないものである。Ｓフレームはデータを保持するＩフィールドを有しない構成となっていて、受信準備完了、ビジー状態、再送要求等を伝送するのに用いられる。Ｕフレームは、Ｉフレームのような番号を有しないので、非番号フレームと呼ばれ、通信モードの設定、応答や異常状態の報告、データリンクの確立や切断に用いられる。
【０００６】
前述のようにＩｒＤＡ通信方式は、ＨＤＬＣ通信方式に基づくものであるが、一般に通信方式としては、送信と受信とを同時に行い得る全二重通信方式と、同時に行わない半二重通信方式とがあり、半二重通信方式の場合には、送信と受信とを切り換える信号を規定しておく必要がある。
【０００７】
ＨＤＬＣ方式では全二重方式の採用も可能であるが、ＩｒＤＡ通信方式の場合、データの伝送に自由空間上を伝搬するベースバンド変調の赤外線を使用しており、通信圏内で２つ以上の局が同時に送信すると赤外線の干渉が発生して正常な通信を行えない。このため、ＩｒＤＡ通信方式は通信リンクを確立する前は通信圏内に赤外線が存在しない場合にのみ送信を行い、通信リンク確立後は通信を行っている２局の間で送信権の交換を定期的に行う半二重方式を用いている。
【０００８】
図６は、かかる通信方式の応用を説明するための図である。ＨＤＬＣ通信方式やＩｒＤＡ通信方式では、送信又は受信を行うものを「局」と呼び、一般には、通信をコントロールするデータリンク制御を行う一次局と、一次局の制御に従う二次局とが、上記のフレームをコマンド（一次局→二次局）とレスポンス（二次局→一次局）として送受信することで通信を行う。かかる方式は不平衡通信方式といわれる。図示するようにコンピュータ、携帯電話、電子手帳等、ＴＶ等は通信においては局として機能し、赤外線を伝送媒体として、データ交換を行うことが可能となっている。
【０００９】
図７は、これら通信における接続時のフレーム交換を示した図である。Ａ局は、接続要求を表すSNRM(Set Normal Response Packet)フレームを送信する。このとき、データ転送時の最大転送可能速度、最大フレーム長、自局の最大ターンアラウンド時間、などのパラメータも合わせて送信する。Ｂ局は、これに対応して、ＵＡ（Unnumbered Acknowledgement）フレームを送信する。
【００１０】
このとき、同様に、自局のデータ転送時の最大転送可能速度、最大フレーム長、自局の最大ターンアラウンド時間などのパラメータも合わせて送信する。こうすることで、相手局の最大転送可能速度を知ることが可能であり、自局の最大転送可能速度と相手局の最大転送可能速度から、通信時の最大転送速度を決定し、データ転送時には、決定した転送速度により、転送が行われる。
【００１１】
最大フレーム長の交換により、相手局の受信バッファの容量を知ることができ、相手局の最大フレーム長以下のフレーム長でフレーム送信を行う必要がある。最大ターンアラウンド時間は、相手局が送信権を維持できる時間の最大値であり、相手局に送信権を委譲した後、相手局からの返信を待つ必要がある時間の最大値となる。フレーム送信時には、自局の最大ターンアラウンド時間を超えてフレーム送信を行うのは、フレームの衝突につながる可能性があり、好ましくない。
【００１２】
図８は、これら通信方式におけるＩフレームを用いた一般的な手順を説明するためのシーケンス図である。ここでは、Ａ局からＢ局に複数のＩフレームに分割されたデータを送信する場合を示している。なお、このときのウィンドウサイズは３とする。先ず、１次局であるＡ局はデータフレームをＩフレームとして番号「０」「１」「２」を付与してそれぞれ送信する。通し番号が「０」「１」のフレームを送信する際には、送信権を２次局であるＢ局に委譲しないために、Ｐ／Ｆ（Pole/Final）ビットを０にして送信する一方、通し番号が「２」のフレームを送信する際には、送信権を２次局に委譲するために、Ｐ／Ｆビットを１にして送信する。
【００１３】
通し番号が「０」「１」「２」のフレームをそれぞれ受信したＢ局は、それぞれのフレームを正常受信できた場合、Ｐ／Ｆビットが１の通し番号「２」のフレームを受信後、「２」の次の「３」の番号を付与したフレームを返信し、「３番目のデータを送信せよ」の意を伝達する。この応答フレームはＲＲフレームというＳフレームである。２次局がＲＲフレームを送信する際には、やはり１次局に送信権を委譲するためにＰ／Ｆビットを１にする。
【００１４】
Ａ局はＢ局の応答を確認して３番目のデータから再び「３」「４」「５」の通し番号を付与して送信する。この手順を必要なだけ繰り返すことによって、複数フレーム通信の精度の向上を図ることができる。
【００１５】
Ｂ局において、エラーやデータ抜けを検知した場合は、再送して欲しいデータ番号をいれてＲＲフレームを送信し、Ａ局が、前記再送して欲しいデータ番号から再送することで、再送を行うことが可能となる。Ｉフレームを用いたデータ転送では、１次局が一度に送信できるフレーム数は、ウィンドウサイズによって制限されており、ＩｒＤＡのＩｒＬＡＰ(Infrared Link Access Protocol)(Ver1.1)においては、最大７となっている。このため、大量のデータ転送を行う場合には、ウィンドウサイズごとに２次局からのレスポンスフレームが送信されるため、エラーがないような通信状況においては、通信効率の悪化の要因となる。
【００１６】
図９は、これら通信方式におけるＵＩフレームを用いた一般的な手順を説明するための信号シーケンス図である。ここでは、Ａ局からＢ局に複数のＵＩフレームに分割されたデータを送信する場合を示している。ＵＩフレームを用いたデータ転送の場合は、ウィンドウサイズの制限を受けないため、Ａ局は、最大ターンアラウンド時間の間、連続してフレームを送信することが可能となる。
【００１７】
Ａ局は、Ａ局の最大ターンアラウンド時間が経過すると、２次局であるＢ局に送信権を委譲するためのＲＲフレームを送信する。最大ターンアラウンド時間とは、ある局が送信権を維持できる時間であり、送信権を相手局に委譲してから、相手局の最大ターンアラウンド時間を経過しても相手局からレスポンスがない場合は、送信権委譲フレームを送信した局は、相手局に送信権委譲のためのフレームが届いていないことを知ることが可能となる。相手局の最大ターンアラウンド時間は、接続確率時にパラメータ交換することにより、知ることが可能である。ＩｒＬＡＰにおいては、最大５００ｍｓの最大ターンアラウンド時間が規定されている。
【００１８】
ＲＲフレームにより、送信権を委譲されたＢ局は、自局内で送信データ転送要求がない場合は、Ｐ／Ｆビットを１にして、ＲＲフレームを送信することにより、１次局であるＡ局に送信権を委譲する。
【００１９】
ＵＩフレームを用いたデータ転送では、Ｉフレームを用いた場合の再送を行わないが、通信路の品質がよくエラーが発生しないような状況においては、前述のように最大５００ｍｓの時間、Ａ局は連続フレーム送信を行うことが可能であり、通信効率の向上へとつながる。
【００２０】
（フレームフォーマット）
図１０に前述のＩフレーム、ＲＲフレーム、ＵＩフレームの各フレームフォーマットをそれぞれ示す。Ｉフレームは、２バイト目のControlフィールドの最下位ビットを０に設定される。また、送信フレームの通し番号がＮｓフィールドに設定される。送信権を委譲する場合は、Ｐ／Ｆビットを１に、また送信権を委譲しない場合は、Ｐ／Ｆビットを０に設定する。Ｎｒフィールドは、連続で正常受信したＩフレームの通し番号に１を足した値が設定される。Informationフィールドには送信データが設定される。
【００２１】
ＵＩフレームは、２バイト目のControlフィールドの下位４ビットが"００１１"に設定される。Ｉフレームと同様、送信権を委譲する場合はＰ／Ｆビットを１に、また委譲しない場合は、０にそれぞれ設定される。通し番号を表すＮｓフィールドを持たない。Informationフィールドには送信データが設定される。
【００２２】
ＲＲフレームは、２バイト目のControlフィールドの下位４ビットが"０００１"に設定される。Ｉフレームと同様、送信権を委譲する場合はＰ／Ｆビットを１に、また委譲しない場合は、０にそれぞれ設定される。Ｎｒフィールドには、連続で正常受信したＩフレームの通し番号に１を足した値が設定される。仮にＩフレームのＮｓフィールドが２まで正常受信で、Ｎｓが３のＩフレームを受信失敗した場合は、次に自局に送信権が委譲された場合に、Ｎｒに３の値を設定して送信する。Ａ局は、Ｎｒが３のＲＲフレームを受信すると、Ｎｓが３のフレームの受信に失敗したことを認識することが可能であり、Ｎｓが３のフレームから、Ｉフレームの再送を行うことが可能となる。Informationフィールドは持たない。
【００２３】
（画像転送アプリケーション）
近年、ＩｒＤＡを用いて、携帯電話などの送信側端末内の画像データをＴＶなどの受信側端末に転送し、表示するといったアプリケーションが提案されている。前記アプリケーションにおいて、画像データは数１００ｋＢから１ＭＢを超えるようなデータサイズであり、転送時間が大きくかかってしまう。このようなアプリケーションにおいては、通信路に品質が良いことが条件となるが、Ｉフレームを用いたデータ転送よりもＵＩフレームを用いたデータ転送のほうが２次局からのレスポンスが少なく、転送効率が良い。
【特許文献１】特開平11-154908号公報（公開日：1999年6月8日）
【発明の開示】
【発明が解決しようとする課題】
【００２４】
しかしながら、上記従来の構成では、転送効率が良いＵＩフレームを用いたデータ転送を用いると、１次局と２次局との間にて、本来であれば交互に、互いに重ならないようにフレームを交換するところにおいて、一方がフレームを送信しているときに、他方が誤認によりフレームを送信するという、フレームの衝突と呼ばれる問題を生じる。
【００２５】
すなわち、図１１にＵＩフレームを用いてデータ転送を行う場合を示す。T601、T603、T605は、それぞれ１つ目、２つ目、３つ目のＵＩフレームの送信開始時間である、T602、T604、T606は、それぞれ１つ目、２つ目、３つ目のＵＩフレームの送信終了時間である。タイミングT609に、Ａ局の最大ターンアラウンド時間に達したとする。３つ目のＵＩフレーム送信開始時には、タイマの値がＡ局の最大ターンアラウンド時間に達していないため、Ａ局は、Ｐ／Ｆビットを０にして送信を開始している。T609のタイミングでＡ局の最大ターンアラウンド時間に達しているが、まだフレーム送信を完了していないため、フレーム送信を続けている。T606にて３つ目のフレーム送信を完了後、自局の最大ターンアラウンド時間を超えていることを認識し、T607にて、Ｐ／Ｆビットを１にして、ＲＲコマンドを送信することにより、送信権をＢ局に委譲している。
【００２６】
このように現在のＩｒＤＡの規格においては、フレーム送信中に自局の最大ターンアラウンド時間を超えてしまうことがあり、通信路の品質によっては、Ａ局の送信フレームがＢ局に届いていない場合などは、Ｂ局は、Ａ局に送信権が委譲した後、最大ターンアラウンド時間以降は、自局に送信権があると判断してフレームを送信するため、フレームの衝突の原因となる可能性がある。
【００２７】
特許文献１においては、ＥＯＦ監視タイマを、フレーム終端を示す識別子が受信できない場合や他の赤外線の影響を受けた場合に、フレーム終端を示す識別子を検出するために設け、ＥＯＦ監視タイマは、フレーム先頭を示す識別子の受信後に起動され、フレーム終端を示す識別子の受信を待って終了する間、ＥＯＦタイマのタイムアウトの監視と従局からの受信処理とが行われることにより、最大ターンアラウンド時間を超えた場合に切断しないための方法が記述されている。
【００２８】
しかしながら、特許文献１では、最大ターンアラウンド時間を超えないようにするための方法については記述されていない。
【００２９】
本発明は、その目的が、上述のように、自局の最大ターンアラウンド時間を超えてしまうようなフレームを送信する場合に、できるだけ早く相手局に送信権を委譲して、フレームの衝突を回避できる通信方法、送受信回路、携帯電話を提供することである。
【課題を解決するための手段】
【００３０】
上述の目的を達成する本発明にかかる第１の通信方法は、自局のターンアラウンド時間を計測するタイマおよび送信権を委譲するフラグを用いてフレーム送信を行う通信方法において、自局が第１のフレームフォーマットに従って、送信を行っている間に、自局の最大ターンアラウンド時間に達すると判断される場合、送信権を委譲する意味の値を前記送信権を委譲するフラグに設定して、送信を行うことを特徴とする。
【００３１】
これにより、上記方法は、自局の最大ターンアラウンド時間を超えるフレームを自局の最終送信フレームとすることが可能となり、送信権を委譲するタイミングが早くなり、フレームの衝突の可能性を低減できる。
【００３２】
上述の目的を達成する本発明にかかる第２の通信方法は、自局のターンアラウンド時間を計測するタイマおよび送信権を委譲するフラグを用いてフレーム転送を行う通信方法において、前記ターンアラウンド時間を計測するタイマの値が、自局の最大ターンアラウンド時間よりも短いあらかじめ定められた値に達していれば、第２のフレームフォーマットに従って送信権を委譲するフラグに送信権を委譲する意味の値を設定して、フレーム送信を行うことを特徴とする。
【００３３】
これにより、上記方法は、自局の最大ターンアラウンド時間を超える前に、相手局に送信権を委譲することが可能となり、フレームの衝突を抑制できる。
【００３４】
上述の目的を達成するための本発明にかかる第３の通信方法は、自局のターンアラウンド時間を計測するタイマおよび送信権を委譲するフラグを用いてデータ送信を行う通信方法において、自局が第３のフレームフォーマットに従って、送信を行っている間に、自局の最大ターンアラウンド時間に達した場合は、直ちに送信フレームを終了し、その直後に第４のフレームフォーマットに従って、送信権を委譲するフラグを送信権を委譲する意味に設定したフレームを送信し、相手局から第３のフレームフォーマットもしくは第４のフレームフォーマットに従い、送信権を委譲する意味のフレームを受信した後、前回の送信データの続きから、第３のフレームフォーマットに従ったフレームの送信を行うことを特徴とする。
【００３５】
これにより、上記方法は、自局の最大ターンアラウンド時間を超えたら、直ちにフレーム送信を終了し、相手局に送信権を委譲することが可能となるため、フレームの衝突の可能性が減ることとなる。
【００３６】
上述の目的を達成する本発明にかかる第４の通信方法は、前述の第１から第３のいずれかに記載の通信方法であって、特に通信媒体として赤外線を用いることを特徴とする。
【００３７】
これにより、上記方法は、コネクタ等の物理的な接触がなくなり、接続部の劣化がなくなるとともに、利便性の向上へとつながる。
【００３８】
上述の目的を達成する本発明にかかる第５の通信方法は、前述の第１の通信方法であって、前記第１のフレームフォーマットとは、ＩｒＤＡのＵＩフレームフォーマットであることを特徴とする。これにより、上記方法は、ＩｒＤＡに準拠したデータ転送が可能となる。
【００３９】
上述の目的を達成するための本発明にかかる第６の通信方法は、前述の第１の通信方法であって、前記自局の最大ターンアラウンド時間に達すると判断される時間とは、フレーム送信開始時間に、接続時に決定されるデータ転送速度および最大フレーム長から求められる最大フレーム転送時間を足した値が、自局の最大ターンアラウンド時間を超える場合であることを特徴とする。
【００４０】
これにより、上記方法は、送信するフレームごとにＰ／Ｆビットを１にする時間を計算する必要がなくなり、処理が簡単になる。
【００４１】
上述の目的を達成するための本発明にかかる第７の通信方法は、前述の第１の通信方法であって、前記自局の最大ターンアラウンド時間に達すると判断される時間とは、フレーム送信開始時間に、接続時に決定されるデータ転送速度および送信しようとしているフレームのフレーム長から求められるフレーム転送時間を足した値が、自局の最大ターンアラウンド時間を超える場合であることを特徴とする。
【００４２】
これにより、上記方法は、最大フレーム長より短いフレームで、フレームを送信中に自局の最大フレーム長を超えない場合は、Ｐ／Ｆビットを０とし、最大フレーム長と同じ長さのフレームで送信中に最大ターンアラウンド時間を超えると判断される場合のみ、Ｐ／Ｆビットを１とすることが可能となり、効率がよくなる。
【００４３】
上述の目的を達成するための本発明にかかる第８の通信方法は、前述の第２の通信方法であって、前記第２のフレームフォーマットとは、ＩｒＤＡのＲＲフレームフォーマットであることを特徴とする。これにより、上記方法は、ＩｒＤＡに準拠したデータ転送が可能となる。
【００４４】
上述の目的を達成するための本発明にかかる第９の通信方法は、前述の第２の通信方法であって、前記あらかじめ定められた値とは、自局の最大ターンアラウンド時間から、接続時に決定されるデータ転送速度および最大フレーム長から得られる最大フレーム転送時間を引いた値であることを特徴とする。
【００４５】
これにより、上記方法は、最大ターンアラウンド時間を超えて、フレームを送信することがなくなるため、フレームの衝突を抑制できる。
【００４６】
上述の目的を達成するための本発明にかかる第１０の通信方法は、前述の第３の通信方法であって、前記第３のフレームフォーマットとは、ＩｒＤＡのＵＩフレームフォーマットであり、第４のフレームフォーマットとは、ＩｒＤＡのＲＲフレームフォーマットであることを特徴とする。これにより、上記方法は、ＩｒＤＡに準拠したデータ転送が可能となる。
【発明の効果】
【００４７】
本発明の通信方法は、以上のように、ＵＩフレーム送信時に最大ターンアラウンド時間を超えると判断される場合は、そのフレームのＰ／Ｆビットを１にして、送信権を相手局に委譲できるため、フレームの衝突の抑制につながる。
【００４８】
また、本発明の通信方法は、自局内でデータ送信要求が発生した場合に、タイマの値に最大フレーム転送時間を足した値が、最大ターンアラウンド時間以上である場合は、ＵＩフレームを送信せずに、ＲＲフレームを送信することで、送信権を相手局に委譲することが可能となり、フレーム衝突の抑制につながる。
【００４９】
また、本発明の通信方法は、ＵＩフレーム送信中に最大ターンアラウンド時間に達した場合に、一旦ＵＩフレーム送信を終了し、Ｐ／Ｆビットを１にしてＲＲフレームを送信し、送信権を相手局に委譲した後、再び自局の送信権となったときに、残りのデータをＵＩフレームで送信することで、フレームの衝突の抑制につながる。
【発明を実施するための最良の形態】
【００５０】
本発明に係る通信方法、それを用いた送受信回路の実施の各形態について図１ないし図５に基づいて説明すると以下の通りである。すなわち、本発明の第１の実施の形態を示すブロック図を図１に示す。本実施の形態においては、ＩｒＤＡの通信方式を例にあげて説明を行うがこの限りでない。また、ブロック図の各構成要素は、ハードウェアで構成されていても、ソフトウェアで構成されていても問題ない。また、ブロック図の各機能は、例えば携帯電話やノート型パーソナルコンピュータ内に存在しているが、本発明の送信機能を持った他の端末でも問題ない。
【００５１】
以下に各構成要素の機能について説明する。図１に示すように、ステートマシン701は、通信を管理する部分であり、相手局との接続時には、SNRMコマンドを送信するように送信フレーム生成部702に通知し、接続時のパラメータ（自局の最大転送可能速度、最大フレーム長、自局の最大ターンアラウンド時間等）をあわせて渡す。
【００５２】
送信フレーム生成部702は、ステートマシン701から接続要求があった場合は、SNRMコマンドに前記接続パラメータの値を入れて、送信フレームを生成し、送信機703に渡す。送信機703は、SNRMコマンドのフォーマットとなった電気信号を赤外線に変換して送信する部分である。この場合は、LED（発光ダイオード）、LD（レーザーダイオード）となる。まだ、他の赤外線以外の通信媒体を用いる場合は、送信機もその通信媒体に適したものとなる。
【００５３】
本発明の第１の実施の形態においては、受信機704が、通信媒体として赤外線を用いているため、例えばPD（フォトダイオード）を備え、受信赤外線から電気信号へと変換するように設けられている。他の赤外線以外の通信媒体を用いる場合は、受信機もその通信媒体に適したものとなる。
【００５４】
受信フレーム解析部705は、受信機704により受信したフレームを解析する部分である。例えば受信したフレームがＵＡレスポンスであった場合、その旨をステートマシン701に通知するとともに、ＵＡレスポンス内の接続パラメータ（相手機器の最大転送可能速度、最大フレーム長、最大ターンアラウンド時間等）が合わせて通知される。
【００５５】
ステートマシン701は、自局の最大転送可能速度と相手機器の最大転送可能速度から、データ転送時の転送速度を決定し、転送速度格納部706に記録する。また、相手局の最大フレーム長を最大フレーム長格納部707に格納する。データ転送時には、この値よりも大きなフレーム長を送信できないようになっている。
【００５６】
相手局との接続が完了し、自局内でデータ転送要求が発生すると、ステートマシン701は、送信フレーム生成部702に送信データを渡し、Ｉフレームでの送信か、ＵＩフレームでの送信かも合わせて通知する。本発明の第１の実施の形態においては、ＵＩフレームでの送信について記述する。
【００５７】
本発明の通信方法では、ステートマシン701は、送信権が自局に移った時点で、タイマ709をリセット後、通信をスタートする。続いて、ステートマシン701は、送信フレーム生成部702にデータ転送要求を通知した時点で、タイマ709の値に、転送速度格納部706と最大フレーム長格納部707に格納されている値により計算される最大フレーム転送時間を足した値が、最大ターンアラウンド時間よりも大きければ、送信権を委譲する旨を、また、小さければ送信権を委譲しない旨をそれぞれ送信フレーム生成部702に通知する。
【００５８】
また、ステートマシン701内で発生したデータ転送要求時に、送信すべきデータ長を送信フレーム長格納部708に格納し、送信フレーム生成部にデータ転送要求を通知した時点で、タイマ709の値に、転送速度格納部706と送信フレーム長格納部708に格納されている値により計算される最大フレーム転送時間を足した値が、最大ターンアラウンド時間よりも大きければ、送信権を委譲する旨を、また、小さければ送信権を委譲しない旨をそれぞれ送信フレーム生成部702に通知してもよい。
【００５９】
送信フレーム生成部702は、ステートマシンからのデータ転送要求を受けて、送信権の委譲を行う場合は、Ｐ／Ｆビットを１に、また送信権の委譲を行わない場合は、Ｐ／Ｆビットを０にして、ＵＩフレームに送信データを入れて送信する。
【００６０】
上記の構成で、最大ターンアラウンド時間以内、もしくは最大ターンアラウンドを超えるＵＩフレーム送信時に、Ｐ／Ｆビットを１にして、相手局に送信権を委譲することが可能となる。
【００６１】
図２に本発明の第１の実施の形態におけるデータ転送時のステートマシン701の動作を示すフローチャートを示す。以下に本フローチャートについて説明する。ステップS801は、送信権が自局に委譲されたことを示している。まず、ステップS801に遷移する。続いて、ステップS802は、タイマをリセットして、スタートするステップである。完了後、ステップS803へと遷移する。
【００６２】
ステップS803は、自局内で、データ転送要求が発生しているかどうかを判別するステップである。発生している場合は、ステップS804へ、発生していない場合は、ステップS808へとそれぞれ遷移する。ステップS804は、転送速度と最大フレーム長との積から得られる最大フレーム転送時間とタイマの値との和が最大ターンアラウンド時間以下であるかどうかを判別するステップである。上記和が、最大ターンアラウンド時間以下の場合は、ステップS805へ、最大ターンアラウンド時間を超える場合は、ステップS806へそれぞれ遷移する。
【００６３】
ステップS805は、送信権委譲フラグを０に設定して、送信フレーム生成部702にＵＩフレームの送信開始を要求するステップである。送信開始要求後、ステップS803へと遷移する。ステップS806は、送信権委譲フラグを１に設定して、送信フレーム生成部702にＵＩフレームの送信開始を要求するステップである。送信開始要求後、ステップS809へと遷移する。
【００６４】
ステップS807は、送信権委譲フラグを１に設定して、送信フレーム生成部にＲＲフレームの送信開始を要求するステップである。送信開始要求後、ステップS809へと遷移する。
ステップS808は、タイマの値が最大ターンアラウンド時間に達しているかどうかを判別するステップである。達している場合は、ステップS807へ、達していない場合はステップS803へそれぞれ遷移する。
【００６５】
ステップS809は、自局に送信権が委譲されたかどうかを判別するステップである。委譲された場合は、ステップS801へ、委譲されていない場合はステップS809へとそれぞれ遷移する。
【００６６】
上述のフローチャートを実現することで、最大ターンアラウンド時間以内、もしくは最大ターンアラウンドを超えるＵＩフレーム送信時に、Ｐ／Ｆビットを１にして、相手局に送信権を委譲することが可能となる。
【００６７】
図３に本発明の第１の実施の形態におけるデータ転送時のステートマシン701の他の動作を示すフローチャートを示す。以下に本フローチャートについて説明する。ステップS901は、送信権が自局に委譲されたことを示している。ステップS901に遷移する。ステップS902は、タイマをリセットして、スタートするステップである。完了後、ステップS903へと遷移する。
【００６８】
ステップS903は、自局内で、データ転送要求が発生しているかどうかを判別するステップである。発生している場合は、ステップS904へ、発生していない場合は、ステップS908へとそれぞれ遷移する。ステップS904は、転送速度と送信フレーム長との積から得られるフレーム転送時間とタイマの値との和が最大ターンアラウンド時間以下であるかどうかを判別するステップである。上記和が、最大ターンアラウンド時間以下である場合は、ステップS905へ、最大ターンアラウンド時間を超える場合は、ステップS906へそれぞれ遷移する。
【００６９】
ステップS905は、送信権委譲フラグを０に設定して、送信フレーム生成部702にＵＩフレームの送信開始を要求するステップである。送信開始要求後、ステップS903へと遷移する。ステップS906は、送信権委譲フラグを１に設定して、送信フレーム生成部702にＵＩフレームの送信開始を要求するステップである。送信開始要求後、ステップS909へと遷移する。
【００７０】
ステップS907は、送信権委譲フラグを１に設定して、送信フレーム生成部702にＲＲフレームの送信開始を要求するステップである。送信開始要求後、ステップS909へと遷移する。ステップS908は、タイマの値が最大ターンアラウンド時間に達しているかどうかを判別するステップである。達している場合は、ステップS907へ、達していない場合はステップS903へそれぞれ遷移する。
【００７１】
ステップS909は、自局に送信権が委譲されたかどうかを判別するステップである。委譲された場合は、ステップS901へ、委譲されていない場合はステップS909へとそれぞれ遷移する。
【００７２】
上述のフローチャートを実現することで、最大ターンアラウンド時間以内、もしくは最大ターンアラウンドを超えるＵＩフレーム送信時に、Ｐ／Ｆビットを１にして、相手局に送信権を委譲することが可能となる。
【００７３】
本発明の第２の実施の形態を示すブロック図を図１に示す。本実施の形態においては、ＩｒＤＡの通信方式を例にあげて説明を行うがこの限りでない。また、ブロック図の各構成要素は、ハードウェアで構成されていても、ソフトウェアで構成されていても問題ない。ブロック図の各機能は、例えば携帯電話やノート型パーソナルコンピュータ内に存在しているが、本発明の送信機能を持った他の端末でも問題ない。ステートマシン701以外の各構成要素の機能は、本発明の第１の実施の形態における機能と同一の機能を持つため、それらの説明は省略する。
【００７４】
ステートマシン701は、自局内でデータ転送要求が発生すると、送信フレーム生成部702に送信データを渡し、Ｉフレームでの送信か、ＵＩフレームでの送信かも合わせて通知する。本発明の第２の実施の形態においては、ＵＩフレームでの送信について記述する。
【００７５】
本実施の形態に係る通信方法では、ステートマシン701は、送信権が自局に移った時点で、タイマ709をリセット後、スタートする。次に、ステートマシン701は、送信フレーム生成部702にデータ転送要求を通知した時点で、タイマ709の値に、転送速度格納部706と最大フレーム長格納部707に格納されている値により計算される最大フレーム転送時間を足した値が、最大ターンアラウンド時間よりも大きければ、データの送信は行わず、送信権のみを委譲する旨を、また、以下であればデータを送信し、送信権を委譲しない旨をそれぞれ送信フレーム生成部702に通知する。
【００７６】
送信フレーム生成部702は、ステートマシン701からのフレーム転送要求を受けて、データ転送を行わず、送信権の委譲のみを行う場合は、Ｐ／Ｆビットを１にしてＲＲフレームを送信し、またデータの送信を行うが送信権の委譲を行わない場合は、Ｐ／Ｆビットを０にして、ＵＩフレームに送信データを入れて送信する。
【００７７】
上記の構成によれば、最大ターンアラウンド時間を超えるＵＩフレーム送信を行わないことが可能となる。
【００７８】
図４に本発明の第２の実施の形態におけるデータ転送時のステートマシン701の動作を示すフローチャートを示す。以下に本フローチャートについて説明する。ステップS1001は、送信権が自局に委譲されたことを示している。まず、ステップS1001に遷移する。ステップS1002は、タイマをリセットして、スタートするステップである。完了後、ステップS1003へと遷移する。
【００７９】
ステップS1003は、自局内で、データ転送要求が発生しているかどうかを判別するステップである。発生している場合は、ステップS1004へ、発生していない場合は、ステップS1008へとそれぞれ遷移する。ステップS1004は、転送速度と最大フレーム長から得られる最大フレーム転送時間とタイマの値との和が最大ターンアラウンド時間以下であるかどうかを判別するステップである。
【００８０】
最大ターンアラウンド時間以下である場合は、ステップS1005へ、最大ターンアラウンド時間を超える場合は、ステップS1007へそれぞれ遷移する。ステップS1005は、送信権委譲フラグを０に設定して、送信フレーム生成部702にＵＩフレームの送信開始を要求するステップである。送信開始要求後、ステップS1003へと遷移する。
【００８１】
ステップS1007は、送信権委譲フラグを１に設定して、送信フレーム生成部702にＲＲフレームの送信開始を要求するステップである。送信開始要求後、ステップS1009へと遷移する。
【００８２】
ステップS1008は、タイマが最大ターンアラウンド時間に達しているかどうかを判別するステップである。達している場合は、ステップS1007へ、達していない場合はステップS1003へそれぞれ遷移する。
【００８３】
ステップS1009は、自局に送信権が委譲されたかどうかを判別するステップである。委譲された場合は、ステップS1001へ、委譲されていない場合はステップS1009へとそれぞれ遷移する。
【００８４】
上述のフローチャートを実現することで、最大ターンアラウンドを超えるＵＩフレーム送信を行わないことが可能となる。
【００８５】
本発明の第３の実施の形態を示すブロック図を図１に示す。本実施の形態においては、ＩｒＤＡの通信方式を例にあげて説明を行うがこの限りでない。また、ブロック図の各構成要素は、ハードウェアで構成されていても、ソフトウェアで構成されていても問題ない。ブロック図の各機能は、例えば携帯電話やノート型パーソナルコンピュータ内に存在しているが、本発明の送信機能を持った他の端末でも問題ない。ステートマシン701以外の各構成要素の機能は、本発明の第１の実施の形態における機能と同一の機能を持つため、説明は省略する。
【００８６】
自局内でデータ転送要求が発生すると、送信フレーム生成部702に送信データを渡し、Iフレームでの送信か、ＵＩフレームでの送信かも合わせて通知する。本発明の第３の実施の形態においては、ＵＩフレームでの送信について記述する。
【００８７】
送信権が自局に移った時点で、ステートマシン701は、タイマ709をリセット後、スタートする。送信フレーム生成部702にデータ転送要求を通知した時点で、タイマ709の値が最大ターンアラウンド時間に達していれば、データの送信は行わず、送信権のみを委譲する旨を、また、小さければデータを送信し、送信権を委譲しない旨をそれぞれ送信フレーム生成部702に通知する。
【００８８】
送信フレーム生成部702は、ステートマシン701からのフレーム転送要求を受けて、データ転送を行わず、送信権の委譲のみを行う場合は、Ｐ／Ｆビットを１にしてＲＲフレームを送信し、またデータの送信を行うが送信権の委譲を行わない場合は、Ｐ／Ｆビットを０にして、ＵＩフレームに送信データを入れて送信する。
【００８９】
また、ステートマシン701は、送信フレーム生成部702に送信開始を通知した後、タイマ709の値を監視する。タイマ709の値が最大ターンアラウンド時間に達した場合は、送信フレーム生成部702にその旨を通知し、それを受けた送信フレーム生成部702は、この時点でＵＩフレーム送信を一旦終了し、直ちにＰ／Ｆビットを１にして、ＲＲフレームを送信する。
【００９０】
その後、受信機704によって受信したフレームを受信フレーム解析部705にて解析した結果、Ｐ／Ｆビットが１で、自局に送信権が委譲されたことを、ステートマシン701が認識すると、送信フレーム生成部702に前回の続きのデータを送信することを通知し、これを受けて、送信フレーム生成部702はＰ／Ｆビットを０にして、前回のデータの続きから、ＵＩフレームを送信する。
【００９１】
上記の構成では、ＵＩフレーム送信中にターンアラウンド時間に達した時点で、Ｐ／Ｆビットを１にしたＲＲフレームを送信することが可能となり、フレームの衝突の抑制が可能となる。
【００９２】
図５に本発明の第３の実施の形態におけるデータ転送時のステートマシン701の動作を示すフローチャートを示す。以下に本フローチャートについて説明する。ステップS1101は、送信権が自局に委譲されたことを示している。まず、ステップS1101に遷移する。ステップS1102は、タイマをリセットして、スタートするステップである。完了後、ステップS1103へと遷移する。
【００９３】
ステップS1103は、自局内で、データ転送要求が発生しているかどうかを判別するステップである。発生している場合は、ステップS1104へ、発生していない場合は、ステップS1108へとそれぞれ遷移する。ステップS1104は、タイマの値が最大ターンアラウンド時間に達しているかどうかを判別するステップである。達していない場合は、ステップS1105へ、達している場合は、ステップS1107へそれぞれ遷移する。
【００９４】
ステップS1105は、送信権委譲フラグを０に設定して、送信フレーム生成部にＵＩフレームの送信開始を要求するステップである。送信開始要求後、ステップS1110へと遷移する。ステップS1107は、送信権委譲フラグを１に設定して、送信フレーム生成部にＲＲフレームの送信開始を要求するステップである。送信開始要求後、ステップS1109へと遷移する。
【００９５】
ステップS1108は、タイマの値が最大ターンアラウンド時間に達しているかどうかを判別するステップである。達している場合は、ステップS1107へ、達していない場合はステップS1103へそれぞれ遷移する。ステップS1109は、自局に送信権が委譲されたかどうかを判別するステップである。委譲された場合は、ステップS1101へ、委譲されていない場合はステップS1109へとそれぞれ遷移する。
【００９６】
ステップS1110は、フレーム送信中にタイマの値が最大ターンアラウンド時間に達しているかどうかを判別するステップである。達している場合は、ステップS1111へ、達する前に送信終了した場合は、ステップS1103へそれぞれ遷移する。
【００９７】
ステップS1111は、送信フレーム生成部702に送信終了要求を行い、一旦ＵＩフレームの送信が終了した後、送信フレーム生成部702に送信権委譲フラグを１に設定して、ＲＲフレーム送信要求を行うステップである。完了後、ステップS1112へと遷移する。
【００９８】
ステップS1112は、自局に送信権が委譲されたかどうかを判別するステップである。委譲された場合は、ステップS1113へ、委譲されていない場合は、ステップS1112へそれぞれ遷移する。
【００９９】
ステップS1113は、タイマリセット後、送信フレーム生成部に、送信権委譲フラグを０に設定して、前回のＵＩフレームの残りのデータを送信するように要求するステップである。完了後、ステップS1103へと遷移する。
【０１００】
上述のフローチャートを実現することで、ＵＩフレーム送信中に最大ターンアラウンド時間に達した時点で、Ｐ／Ｆビットを１にしたＲＲフレームを送信することが可能となり、フレームの衝突の抑制が可能となる。
【０１０１】
また、上記の実施の各形態に示した各通信方法は、コンピュータにて実行可能に記載されたプログラムとそれぞれすることができ、また、上記プログラムをコンピュータにて読み取り可能に記憶した、ＣＤ−Ｒなどの記録媒体として市場に流通させることも可能である。
【産業上の利用可能性】
【０１０２】
本発明の通信方法、送受信回路、携帯電話は、相互間での通信時のフレームの衝突を抑制できて、上記通信を円滑化できるので、通信分野、特に携帯電話などの小型通信分野に好適に利用できる。
【図面の簡単な説明】
【０１０３】
【図１】本発明の第１の実施の形態、第２の実施の形態、第３の実施の形態を示すブロック図である。
【図２】本発明に係る通信方法の第１の実施の形態における一例を示すフローチャートである。
【図３】上記第１の実施の形態における他の例を示すフローチャートである。
【図４】本発明に係る通信方法の第２の実施の形態を示すフローチャートである。
【図５】本発明に係る通信方法の第３の実施の形態を示すフローチャートである。
【図６】従来の技術によるデータ通信における局間の通信を説明するためのブロック図である。
【図７】従来の技術によるデータ通信における局間の接続を説明するための信号シークエンス図である。
【図８】従来の技術によるＩフレームを用いたデータ転送を示す信号シークエンス図である。
【図９】従来の技術によるＵＩフレームを用いたデータ転送を示す信号シークエンス図である。
【図１０】従来の技術によるIフレーム、ＵＩフレーム、ＲＲフレームの各フレームフォーマット図である。
【図１１】従来の技術によるＵＩフレームを用いたデータ転送時に、最大ターンアラウンド時間を超えてしまう場合を示す信号シークエンス図である。
【符号の説明】
【０１０４】
T601  一つ目のＵＩフレームの送信開始時間
T602  一つ目のＵＩフレームの送信終了時間
T603  ニつ目のＵＩフレームの送信開始時間
T604  ニつ目のＵＩフレームの送信終了時間
T605  三つ目のＵＩフレームの送信開始時間
T606  三つ目のＵＩフレームの送信終了時間
T607  ＲＲフレームの送信開始時間
T608  ＲＲフレームの送信終了時間
T609  最大ターンアラウンド時間
701  ステートマシン
702  送信フレーム生成部
703  送信機
704  受信機
705  受信フレーム解析部
706  転送速度格納部
707  最大フレーム長格納部
708  送信フレーム長格納部
709  タイマ
【図１】
2006211425.tif 000003
【図２】
2006211425.tif 000004
【図３】
2006211425.tif 000005
【図４】
2006211425.tif 000006
【図５】
2006211425.tif 000007
【図６】
2006211425.tif 000008
【図７】
2006211425.tif 000009
【図８】
2006211425.tif 000010
【図９】
2006211425.tif 000011
【図１０】
2006211425.tif 000012
【図１１】
2006211425.tif 000013