(57)【特許請求の範囲】
【請求項１】
下記工程を具備する、所定のデータプロトコルに関連して使用される、無線ボイス−オーバ−データ通信システムを通してタイム−センシティブ情報を送信するための方法：
送信される情報について最小セグメントサイズを定義する；
送信される情報について最大セグメントサイズを定義する；
もし十分な量の前記タイム−センシティブ情報が送信のために使用可能ならば前記タイム−センシティブ情報から第１のセグメントを形成する、前記第１のセグメントは前記最小セグメントサイズと前記最大セグメントサイズとの間のセグメントサイズを有する；及び
所定の事象の発生時に、前記最大セグメントサイズより小さいかまたは等しいセグメントサイズを有する第２のセグメントを形成する。
【請求項２】
前記所定の事象が受信通知メッセージの受信を具備する請求項１の方法。
【請求項３】
前記最大セグメントサイズが送信器と受信器との間で協定される請求項１の方法。
【請求項４】
下記を具備する、所定のデータプロトコルに関連して使用される、無線ボイス−オーバ−データ通信システムを通してタイム−センシティブ情報を送信するための装置：
最大セグメントサイズを受信器と取り決めるための手段；
最小セグメントサイズを蓄積するためのメモリ；
データフレームを蓄積するためのキュー、前記データフレームはタイム−センシティブ情報を表す；及び
前記最小セグメントサイズより大きいかまたは等しいセグメントサイズが前記データフレームから形成可能な時に、前記キュー内に蓄積された前記データフレームから少なくとも１つのセグメントを形成するための第１のプロセッサ。
【請求項５】
前記タイム−センシティブ情報からデータフレームを形成するためのボコーダをさらに具備する、請求項４の装置。
【請求項６】
下記工程を具備する、所定のデータプロトコルに関連して使用される、無線ボイス−オーバ−データ通信システムを通してタイム−センシティブ情報を送信するための方法：
キュー内にタイム−センシティブデータを蓄積する、前記タイム−センシティブデータはデータフレームを具備する；
前記タイム−センシティブ情報から少なくとも１つのセグメントを形成する、前記少なくとも１つのセグメントは所定数のデータフレームを具備する。
【請求項７】
ボコーダを使用して前記タイム−センシティブ情報から前記データフレームを形成する工程をさらに具備する請求項６の方法。
【請求項８】
下記を具備する、所定のデータプロトコルに関連して使用される、無線ボイス−オーバ−データ通信システムを通してタイム−センシティブ情報を送信するための装置：
データフレームを蓄積するためのキュー、前記データフレームはタイムセンシティブ情報を表す；及び
所定数の前記データフレームが前記キュー内で使用可能な時に、前記データフレームから少なくとも１つのセグメントを形成するためのプロセッサ。
【請求項９】
前記タイム−センシティブ情報を受信するための及び前記データフレームを形成するためのボコーダをさらに具備する請求項８の装置。
【請求項１０】
下記工程を具備する、所定のデータプロトコルに関連して使用される、無線ボイス−オーバ−データ通信システムを通してタイム−センシティブ情報を送信するための方法：
送信される情報について最小セグメントサイズを定義する；
送信される情報について最大セグメントサイズを定義する；
キュー内にボコーダフレームを蓄積する、前記ボコーダフレームはタイムセンシティブ情報を表す；
前記各ボコーダフレーム内に含まれるビット数を決定する；
少なくとも所定数のビットを含まない、いずれかの前記ボコーダフレームにビットを加える；
もし十分な量の前記タイム−センシティブ情報が送信のために使用可能ならば前記タイム−センシティブ情報から第１のセグメントを形成する、前記第１のセグメントは前記最小セグメントサイズと前記最大セグメントサイズとの間のセグメントサイズを有する。
【請求項１１】
下記を具備する、所定のデータプロトコルに関連して使用される、無線ボイス−オーバ−データ通信システムを通してタイム−センシティブ情報を送信するための装置：
最大セグメントサイズを受信器と取り決めるための手段；
最小セグメントサイズを蓄積するためのメモリ；
ボコーダフレームを蓄積するためのキュー、前記データフレームはタイム−センシティブ情報を表す；及び
少なくとも所定数のビットを含まないいずれかの前記データフレームにランダムビットを加え、前記最小セグメントサイズより大きいかまたは等しいセグメントサイズが前記データフレームから形成可能な時に、前記キュー内に蓄積された前記データフレームから少なくとも１つのセグメントを形成するためのプロセッサ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は一般に無線通信分野に関し、そしてさらに明確には無線ボイスーオーバーデータ(voice-over-data)通信システム（データと音声を通信するシステム）においてタイムセンシティブ(time-sensitive)情報を送信するための効率的な方法と装置とに関する。
【０００２】
【従来の技術】
無線通信分野は、コードレス電話，ページング，無線ローカルループ，及び衛星通信システムを含む多くのアプリケーション(application)を有する。特に重要なアプリケーションは移動体加入者用のセルラ電話システムである。（この中で使用されるように、術語“セルラ”システムはセルラとＰＣＳ周波数との両者を包含する）。種々の大気中送信インターフェイスは周波数分割多重アクセス（ＦＤＭＡ），時分割多重アクセス（ＴＤＭＡ），及び符号分割多重アクセス（ＣＤＭＡ）を含むようなセルラ電話システムのために開発された。これと関連して、種々の国内及び国際標準が、進歩した移動電話サービス（ＡＭＰＳ），移動体用グローバルシステム（ＧＳＭ），及び臨時標準９５（ＩＳ−９５）を含めて制定された。特に、ＩＳ−９５と、それから派生したＩＳ−９５Ａ，ＩＳ−９５Ｂ（しばしば集合的にＩＳ−９５と呼ばれる），ＡＮＳＩ  Ｊ−ＳＴＤ−００８，ＩＳ−９９，ＩＳ−６５７，ＩＳ−７０７、及びその他が電気通信工業協会（ＴＩＡ）及び他の周知の標準団体により公布されている。
【０００３】
ＩＳ−９５標準の使用に従って構成されるセルラ電話システムは、ＣＤＭＡ信号処理技術を使用し、高度に効率的で強いセルラ電話サービスを提供する。実質的にＩＳ−９５標準の使用に従って構成される例示的なセルラ電話システムは、米国特許番号、第５，１０３，４５９号、タイトル“ＣＤＭＡセルラ電話システムにおける信号波形を発生するためのシステム及び方法（Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｇｅｎｅｒａｔｉｎｇ  Ｓｉｇｎａｌ  Ｗａｖｅｆｏｒｍｓ  ｉｎ  ａ  ＣＤＭＡ  Ｃｅｌｌｕｌａｒ  Ｔｅｌｅｐｈｏｎｅ  Ｓｙｓｔｅｍ）”に記述されており、これは本発明の譲受人に譲渡され、そして引用されてここに組み込まれる。前述の特許は、ＣＤＭＡ基地局における送信、即ち順方向リンク、信号処理を例示する。ＣＤＭＡ基地局における例示的な受信、即ち逆方向リンク、信号処理は、米国特許出願番号、第０８／９８７，１７２号、１９９７年１２月９日出願、タイトル“マルチチャネル復調器（ＭＵＬＴＩＣＨＡＮＮＥＬ  ＤＥＭＯＤＵＬＡＴＯＲ）”に記述されており、これは本発明の譲受人に譲渡され、そして引用されてここに組み込まれる。ＣＤＭＡシステムでは、大気中送信パワー制御は極めて重大な問題(vital issue)である。ＣＤＭＡシステムにおけるパワー制御の例示的な方法は米国特許番号、第５，０５６，１０９号、タイトル“ＣＤＭＡセルラ移動電話システムにおける送信パワーを制御するための方法及び装置（Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｃｏｎｔｒｏｌｌｉｎｇ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｐｏｗｅｒ  ｉｎ  Ａ  ＣＤＭＡ  Ｃｅｌｌｕｌａｒ  Ｍｏｂｉｌｅ  Ｔｅｌｅｐｈｏｎｅ  Ｓｙｓｔｅｍ）”に記述されており、これは本発明の譲受人に譲渡され、そして引用されてここに組み込まれる。
【０００４】
暫定標準ＩＳ−９９及びＩＳ−６５７（ここでは集合的にＩＳ−７０７と呼ばれる）の下では、ＩＳ−９５追従の通信システムは音声とデータとの両通信サービスを提供できる。データ通信サービスはディジタルデータが無線インターフェイスを通して１つの送信器と１つまたはそれ以上の受信器との間で交換できるようにする。典型的にＩＳ−７０７標準を使用して送信されるディジタルデータタイプの例はコンピュータファイルと電子メールとを含む。より最近は、ＩＳ−７０７により指定されたようなデータプロトコルは、オーディオまたはビデオ情報のような、タイムセンシティブ情報を送信するために使用されていた。データプロトコルを使用してタイムセンシティブ情報を送信することは、暗号化及びインターネットのような大コンピュータネットワーク経由で多数のコンピュータにオーディオ情報を分配するような適用において有利である。
【０００５】
非同期データサービス用のＩＳ−７０７．４とパケットデータサービス用のＩＳ−７０７．５とを含むＩＳ−７０７標準に従って送信器と受信器との間で交換されるデータは、データパケットまたはデータフレーム、あるいは単にフレームとして知られるディスクリートな(discrete)パケット内で処理される。データ送信中にフレームが成功裡に送信される可能性(likelihood)を増加するために、成功裡に送信されたフレームを追跡するための、及びフレームが成功裡に送信されなかった時にフレーム再送信を行うための、無線リンクプロトコル（ＲＬＰ）をＩＳ−７０７は使用する。ＲＬＰに加えて、より上層のデータプロトコルもまたフレームが成功裡に受信されることを保証するために使用される。例えば、周知のＴＣＰプロトコルは（ＩＳ−７０７．４で説明されるように）非同期データサービス環境において使用され、そしてＵＤＰプロトコルはＲＬＰプロトコルに加えて（ＩＳ−７０７．５で説明されるように）パケットデータサービス環境において使用される。
【０００６】
データプロトコルを使用してタイム−センシティブ情報を送信することに関する基本的な問題の１つは、データ通信の非連続性により引き起こされる遅延、即ち潜伏期(latency) である。２〜３百ミリ秒以上の遅延は、送信されているタイム−センシティブ情報の中断(disruptions) という結果になり得る。コンピュータファイルのようなデータを送信している時には、時間遅延はデータの非実時間性のため容易に黙認(tolerated) される。しかしながら、タイムセンシティブ情報は、正確に再現されるために連続的に受信される必要がある。
【０００７】
送信器では、上述のＴＣＰ及びＵＤＰプロトコルは、しばしば最小セグメントサイズと呼ばれる選択されたビット数でＴＣＰまたはＵＤＰセグメントを満たし、それから、そのセグメントを送信する(rely on) 。もし大量のデータがボイス−オーバ−データシステムにおける送信のために使用可能であれば、遅延が使用可能なタイムセンシティブ情報を多数のＴＣＰまたはＵＤＰセグメントに変換することにおいて導入され(introduced)てもよい。これに反して、もし少量のタイムセンシティブ情報が送信されるべく使用可能であれば、もし使用可能なタイムセンシティブ情報の量がセグメントを満たすのに十分でなければ、ＴＣＰまたはＵＤＰセグメントは直ちに形成されないであろう。これはまた時間遅延を送信処理に導入する。
【０００８】
もしＴＣＰまたはＵＤＰ最小セグメントサイズが比較的大きく選択されるならば、もしも最小セグメントサイズが満たされると１セグメントのみが送信されるであろうという事実により、潜伏期は増加するであろう。これに反して、もし最小セグメントサイズが比較的小さく選択されるならば、まさに少量の情報の送信のため必要とされる多数のセグメントを処理するために、処理資源上の重要な流出(significant drain) が送信器内で生起するであろう。
【０００９】
必要とされるものは、タイムセンシティブ情報を既存のデータプロトコルへの変更無しに円滑に送信するように、セグメントサイズを最適化するための方法及び装置である。
【００１０】
【課題を解決するための手段】
本発明は、無線ボイスオーバデータ通信システムにおける効率的なデータ送信のための方法及び装置であって、それによってそのような通信システムと関連する潜伏期を減ずる。明確には、これは最小セグメントサイズと最大セグメントサイズとを定義することにより達成され、それによってデータとして送信されるべきより大きい及びより小さいセグメントの両者が送信のため使用できるようになることを可能とする。
【００１１】
例示的な実施例では、ＴＣＰセグメントはＩＳ−７０７．４に従う非同期データフォーマットを使用しているタイムセンシティブ情報，通常オーディオ情報を送信するために使用され、そしてＵＤＰセグメントはＩＳ−７０７．５に従うパケットデータフォーマットを使用しているオーディオ情報を送信するために使用される。本発明の第１の実施例では、第１のセグメントサイズと第２のセグメントサイズとが選択される。第１のセグメントサイズは送信可能な最小セグメントサイズを表す。第２のセグメントサイズは送信可能な最大セグメントサイズを表す。送信のために使用可能な量のタイム−センシティブ情報が最小セグメントサイズと最大セグメントサイズとの間のセグメントサイズを有して構成されることを可能とする時はいつでも、セグメントが発生されて送信される。いずれかのタイム−センシティブ情報が送信のために使用可能であり、そして受信通知メッセージが送信器により受信される時はいつでも、最大セグメントサイズまでのいずれのサイズのセグメントも作成され、送信される。
【００１２】
本発明の第２の実施例では、セグメントは、一般に送信のために使用可能な多数のボコーダフレームに関して、所定の時間間隔で作成されて送信される。この実施例は、送信が起こり得る前にそのセグメントを最小数のバイトで満たすことによるよりもむしろ、セグメントが規則的な時間間隔で送信される従来の技術のデータプロトコルと対立(inopposite to)しない。
【００１３】
第３の実施例では、可変レートボコーダを使用する送信器において、最大ボコーダフレームサイズ対最小ボコーダフレームサイズの比率を減らすために、複数のビットが低レートボコーダフレームに加えられる。この比率が減少する時には、文章の出発点での音節脱落(syllable dropouts) のような、ある種のオーディオ歪みが縮小または除去されることを、試験が示した。
【００１４】
【発明の実施の形態】
この中に記述された実施例はＩＳ−９５及びＩＳ−７０７臨時標準のＣＤＭＡ信号処理技術の使用に従って動作する無線通信システムに関して記述される。本発明は特にそのような通信システム内での使用に適している一方で、本発明が、無線と有線との両通信システム，コンピュータネットワーク，及び衛星ベースの通信システムを含み、その他ではセグメント，データパケット，データフレーム，または単にフレームとして知られる離散パケット内で情報を送信する、種々の他のタイプの通信システムにおいて使用されてもよいことは、理解されねばならない。さらに、記述の全体を通して、種々の周知のシステムがブロック形式で示される。これは明確にするため行われている。
【００１５】
今日用いられている(in use)種々の無線通信システムは、大気中送信インターフェイスまたは無線通信チャネルを使用して移動体ユニットと通信する固定基地局を使用する。そのような無線通信システムはＡＭＰＳ（アナログ），ＩＳ−５４（北米ＴＤＭＡ），ＧＳＭ（移動通信ＴＤＭＡ用のグローバルシステム），及びＩＳ−９５（ＣＤＭＡ）を含む。好ましい実施例では、本発明はＣＤＭＡシステムにおいて実施される。
【００１６】
図１はボイスオーバデータ通信システム内で使用される、送信器１００のブロック図を図示する。ここに記述されるように、ボイスオーバデータ通信システムは、タイム−センシティブ情報がデータプロトコルを使用してデータセグメント，セグメント，データパケットまたはフレーム内に送信されるところのいかなる通信システムをも指している。タイム−センシティブ情報の例は、人間の言葉のようなオーディオ情報，テレビ信号や映画のようなビデオ情報を含んでいる。術語“ボイスオーバデータ”は、一般に、周知のＴＣＰまたはＵＤＰデータプロトコルのような、所定のデータプロトコルを使用している人間の言葉、または音声を送信する通信システムに当てはまる。
【００１７】
本発明の例示的な実施例において使用するために構成された送信器１００が示される。無線通信システムで使用されるような送信器１００は基地局内または移動電話機内に配置される。図１が完全な送信器の簡略化されたブロック図であること、そして他の機能ブロックは明らかなので省略されたことが理解されねばならない。図１に示されたような送信器１００は、何か１つの特定のタイプの送信変調，プロトコル，または標準に限定されることを意図しない。さらに、各ブロックの機能は事前にプログラムされた(preprogrammed) 命令セットを実行するシングルまたはマルチプロセッサ内に存してもよく、１つまたはそれ以上のＡＳＩＣ内に存してもよく、あるいは離散処理要素内に存してもよく、それらはすべて当分野において周知である。
【００１８】
図１に示されるように、一般にアナログフォーマット内のタイム−センシティブ情報は、アナログ−ディジタル（Ａ／Ｄ）変換器１０２に供給される。Ａ／Ｄ１０２は、周知の技術を使用し、タイム−センシティブ情報をディジタル化した信号に変換する。Ａ／Ｄ１０２は、当分野で周知であるように、タイム−センシティブ情報をローパスフィルタリングに通し，抽出し，量子化し、，２元符号化してディジタル化された信号を生成する。
【００１９】
ディジタル化された信号はその後ボコーダ１０４に供給される。ボコーダ１０４は送信のために必要な帯域幅を最小化するためにディジタル化された音声信号を圧縮するための周知の装置である。ボコーダ１０４は、他方でデータフレームとして知られる連続的なボコーダフレームを、典型的な実施例では２０ミリ秒ごとのような、変わりに他の時間間隔を使えるにも関わらず、通常規則的な時間間隔で発生する、しかし他の時間間隔が替わって使用されることができる。各データフレームの長さはしたがって２０ミリ秒である。
【００２０】
多くのボコーダが信号圧縮を最大化する１つの方法は、ボイス信号における無音の期間を検出することによっている。例えば、人の話の中にある文章単語，及び音節の間の途切れは、多くのボコーダがその中にほとんどまたは全く情報を含まないデータフレームを生成することによりボイス信号の帯域幅を圧縮する機会を与える。
【００２１】
ボコーダは可変データレートでデータフレームを符号化することによりさらに能力を高められることができる。そのような可変データレートボコーダの１例は米国特許番号、第５，４１４，７９６号（’７９６特許）、タイトル“可変レートボコーダ（ＶＡＲＩＡＢＬＥ  ＲＡＴＥ  ＶＯＣＯＤＥＲ）”内に見つけ出され、これは本発明の譲受人に譲渡され、そして引用されてこの中に組み込まれる。ほとんどの情報またはすべての情報が送信に使用できない場合、可変レートボコーダは減少されたデータレートでデータフレームを生成し、無線通信システムの送信容量を増加する。’７９６特許により記述された可変レートボコーダでは、データフレームは最高のボコーダ符号化レートのフル，１／２，１／４，または１／８のいずれかのデータレートのデータを包含する。
【００２２】
ボコーダ１０４により発生されたデータフレームは、キュー(queue)１０６または逐次(sequential)メモリに蓄積された後、ディジタル的に変調されそしてその後無線送信のためにアップコンバートされる。キュー１０６はボコーダ１０４からの連続的ボコーダフレームを蓄積するためのメモリであり、ボコーダフレームをＴＣＰプロセッサ１０８にファーストイン・ファーストアウトベースで供給する。本発明では、ボコーダフレームは送信に先立ってＴＣＰプロセッサ１０８によりデータパケットに符号化される。なぜならばデータパケットは、例えば公開キー(public key)暗号化技術を使用するボイス暗号化のような適用によって容易に処理されるためである。データパケットはまた、インターネットのような、コンピュータネットワークの大きな相互接続間で容易に送信されることができる。
【００２３】
キュー１０６内に蓄積されたボコーダフレームはＴＣＰプロセッサ１０８に供給され、そこでデータパケットに変換されるか、さもなければインターネットのようなコンピュータネットワークにおいて使用される特定のタイプのデータプロトコルに適する周知のデータセグメント，ＴＣＰセグメント，または単なるセグメントに変換される。例えば、例示的な実施例では、キュー１０６からのフレームはＴＣＰセグメントにフォーマットされる。ＴＣＰはインターネットのような大きい公共コンピュータネットワークを通してデータを送信するために使用される周知のデータプロトコルである。ＵＤＰデータプロトコルのような、他の周知のデータプロトコルは代案において使用されてもよい。ＴＣＰプロセッサ１０８は、ディスクリートなまたは集積されたいずれかのハードウェア装置であってもよく、あるいはそれは近い将来に(at hand) ボコーダフレームを特定のデータプロトコルに適するデータセグメントに変換するために特に設計されたソフトウェアプログラムが動作するマイクロプロセッサを具備してもよい。
【００２４】
図２はキュー１０６内に蓄積された可変レートボコーダフレームがＴＣＰプロセッサ１０８によりどのようにＴＣＰセグメントに変換されるかを図示する。データストリーム２００は、各ボコーダフレームが２０ミリ秒のフレーム長を有し、一連の連続的ボコーダフレームとして示されるキュー１０６の内容を表す。他のボコーダがより長期またはより短期のフレーム長を有するボコーダフレームを発生できることは理解されねばならない。
【００２５】
図２に示されるように、各ボコーダフレームは特定のフレームについてデータレートに依存する情報ビット数を含む。図２の本例では、ボコーダフレームは、フルレートフレームとして１９２ビット、１／２レートフレームは９６ビット、１／４レートフレームは４８ビット、そして１／８レートフレームは２４ビットに等しいデータビットを含む。上に説明したように、高データレートを有する複数フレームはボイス活動の期間(periods) を表し、一方低データレートを有するフレームはより少ないボイス活動または無音の期間の見本である。
【００２６】
ＴＣＰプロセッサ１０８はＴＣＰフレームをキュー１０６からの各ボコーダフレームに含まれるビットで順次満たす。例えば、図２では、ボコーダフレーム２０２内に含まれる１９２ビットがまずＴＣＰセグメント２１８内に配置され(placed)、その後ボコーダフレーム２０４からの９６ビットが配置され、５３６ビットがＴＣＰセグメント２１８内に配置され終わるまで、同様に行われる。ＴＣＰセグメント２１８を５３６ビットで満たすのに必要なので、ボコーダフレーム２１２はＴＣＰセグメント２１８とＴＣＰセグメント２２０との間で分割されることに注意されたい。
【００２７】
可変レートボコーダフレームの性質により、そしてプロセッサ１１０の処理能力により、ＴＣＰセグメントがＴＣＰプロセッサ１０８により連続ベースで発生されないことは理解されなければならない。第１の場合には、もしどの情報もキュー１０６における送信のために使用できないならば、長い一連の低レートボコーダフレームがボコーダ１０４により生成されるであろう。したがって、ＴＣＰセグメントにとって必要な５３６ビットを満たすのに多くの低レートボコーダフレームが必要になるであろうし、そして、このようにして、ＴＣＰセグメントはよりゆっくり生成されるであろう。逆に、もし高いボイス活動があれば、一連の高レートボコーダフレームがボコーダ１０４により生成されるであろう。したがって、ＴＣＰセグメントにとって必要な５３６ビットを満たすのに比較的少ないボコーダフレームが必要となるであろうし、このようにして、ＴＣＰセグメントはより迅速に生成されるであろう。
【００２８】
第２の場合には、ＴＣＰセグメントを発生する処理は送信器１００内で生起する幾つかの同時処理の１つである。一般に、プロセッサ１１０は送信器１００内で逐次ベースで生起する種々の活動を調整する(coordinates) 。即ち、送信器１００内で生起する各処理はあらかじめ定義されたシーケンスで実行され、割込み(interrupts)と呼ばれる緊急処理が起こることを可能とする。その結果、ＴＣＰセグメントは、実行される必要のある他の処理の逐次リストをプロセッサ１１０が実行した時にのみ発生する。したがって、ＴＣＰセグメントは、プロセッサ１１０によりそうするように命令されたところのディスクリートな時間間隔でのみＴＣＰプロセッサによって発生される。
【００２９】
ＴＣＰセグメントは、各セグメント内に含まれるビット数によって計測される期間を有することで特徴付けられる。他のＴＣＰセグメントはより大きいかまたはより小さいビット数を有する可能性があるが、図２に示されるように、典型的なＴＣＰセグメント長は５３６ビットであり得る。ＴＣＰセグメントの長さは一般に通信の開始に先立って送信器と受信器との間で取り決められる(negotiated)。そのような取り決め(negotiation) は当分野で周知である。例えば、ＩＳ−７０７．４とインターネット技術調査委員会(Internet Engineering Task Force) ＲＦＣ７９３とは、どのようにＴＣＰセグメントサイズが取り決められるかについて詳細を記述している。従来技術の通信システムでは、セグメント長はデータフレームを送信器から受信器に効率的に送信する必要に基づいて選択される。
【００３０】
本発明では、２つのセグメントサイズが定義される。第１のセグメントサイズは送信可能な最小セグメントサイズを表す。第２のセグメントサイズは送信可能な最大セグメントサイズを表す。第２のセグメントサイズは従来技術のセグメントサイズと等価であり、そして通信の開始に先立って送信器と受信器との間で取り決めされる。第１のセグメントサイズはあらかじめ定義されそして送信器１００内のメモリ１１２に蓄積される。
【００３１】
キュー１０６内の使用可能なタイム−センシティブ情報の量がセグメントを最小セグメントサイズと最大セグメントサイズとの間のセグメントサイズを有して構成され得るようにする時はいつでも、ＴＣＰセグメントは生成されて送信される。いずれかのタイム−センシティブ情報が送信のために使用可能であり、そして受信通知メッセージが送信器１００により受信される時はいつでも、最大セグメントサイズまでのいずれかのサイズのセグメントもまた作成され、送信される。これは、以下に、より詳細に説明される。
【００３２】
上記でに注意したように、ＴＣＰセグメントは一般に連続ベースでは生成されない。セグメント発生処理は送信器１００内で進行中の多くの平行処理の１つとして生起する。一般に、送信器１００はプロセッサ１１０を具備し、送信器１００内で生起する種々の活動を調整する。その結果、セグメントの発生は、プロセッサ１１０がそのセグメント発生処理よりも高い優先度を有する他の機能を実行した時、あるいはそのセグメント発生処理がプロセッサ１１０により実行される必要がある機能のリスト内で連続して生起する時にのみ、生起する。
【００３３】
プロセッサ１１０は、セグメント発生処理が実行されるべきであると決定すると、それは、以前に決定されてメモリ１１２内に蓄積された最小セグメントサイズより大きいかまたは等しいセグメントサイズを有するＴＣＰセグメントを作成するために、十分なデータがキュー１０６内に蓄積されたボコーダフレームにおいて使用可能かを決定するようにＴＣＰプロセッサに命令する。もしそうなら、最小セグメントサイズと等しい最小ビット数を有し、そして送信器１００と受信器との間で取り決められたような最大セグメントサイズと等しい最大サイズを有するＴＣＰセグメントが作成される。超過データがキュー１０６内に送信されるべく最大セグメントサイズ以上のままである場合、少なくとも最小セグメントサイズを有するセグメントがその超過データから作成されることができるなら、第２のＴＣＰセグメントが作成される。もしそうなら、第２のＴＣＰセグメントが作成される。もしそうでなければ、プロセッサ１１０がＴＣＰプロセッサにキュー１０６内に蓄積されたデータの量をもう１度決定するように命令するまで、超過データはキュー１０６内に蓄積されたままとなる。追加のボコーダフレームはプロセッサ１１０が送信器１００内で他の必要な機能を実行する間、キュー１０６内で作成され、蓄積され得る。  本発明はキュー１０６内で送信されることを待っているデータの非連続送信により引き起こされる潜伏期の問題を最少化する。従来技術のシステムでは、所定のキューサイズが満足されるまでデータは送信されなかった。所定の最小セグメントサイズを満足するのに十分なデータでもってキュー１０６を満たすまでに、比較的大量の時間が発生する(transpire) であろう。したがって、比較的大きい遅延がタイム−センシティブデータの送信に取り入れられねばならない。本発明は２サイズのセグメントアプローチを使用することによりこの潜伏期を最小化する。最小セグメントサイズは、ＴＣＰセグメントがより迅速に、従ってより正常なレートで発生されることを可能にする。キュー１０６内で送信を待機しているボコーダフレームは、セグメントを作成するのに必要なデータがより少量であるために、より迅速に送信される。２つのセグメントサイズ・アプローチの第２の利点は、より大きいセグメントは大量のデータが発生されてキュー１０６内に蓄積される時に送信されることが可能なことである。この場合には、セグメントは最大セグメントサイズと等しいセグメントサイズを有して作成される。これはより効率的な処理を可能として、多くのＴＣＰセグメントを発生することに関連するオーバヘッドを減少させる。
【００３４】
上述されたようなセグメントを発生して送信することに加えて、受信通知メッセージが送信器１００により受信される時はいつでもセグメントが発生されてもよい。セグメントまたはセグメントのバッチがエラー無しに受信された時に送信器に通知する(notify)ために、受信通知メッセージは、ＴＣＰのような、あるデータプロトコル内で使用される。そのようなシステムでは、送信器内に配置されたタイマーはセグメントまたはセグメントのバッチが送信される時はいつでも起動される。受信器がセグメントまたはセグメントのバッチをエラー無しに受信すると、受信通知メッセージが受信器により発生され、そしてセグメントまたはセグメントのバッチを正確に(properly)受信したことを送信器に通知するために、その送信器に送られる。もし受信通知メッセージが所定の時間値以内に送信器により受信されないならば、セグメントまたはセグメントのバッチは再送信される。
【００３５】
受信通知メッセージが送信器により受信されると、それは送信器と受信器との間の送信チャネル品質が良好であること及び送信におけるエラーについての機会が低いことを示す。本発明では、受信通知メッセージが送信器１００により受信されると、たとえいかに多くのデータがキュー１０６内に蓄積されるとしても、プロセッサ１１０はＴＣＰプロセッサにＴＣＰセグメントを発生することを命令する。したがって、ＴＣＰセグメントは最小セグメントサイズよりも小さいセグメントサイズで、最大セグメントサイズの最大サイズまでのセグメントサイズを有して作成されることができる。
【００３６】
本発明の第２の実施例では、ＴＣＰセグメントは、通常送信のために使用できるボコーダフレームの数に関して、所定の時間間隔で作成されて送信される。この実施例は送信が起こり得る前に、そのセグメントを最小数のバイトで満たすことによるよりもむしろ、セグメントが規則的な時間間隔で送信される従来の技術のデータプロトコルと対立しない。
【００３７】
上述されたように、プロセッサ１１０は送信器１００内のいくつかの処理を逐次ベースで実行する。もし十分なデータがキュー１０６内にあれば、シーケンスの期間の所定の点で、プロセッサ１１０はＴＣＰプロセッサに１つまたはそれ以上のＴＣＰセグメントを作成することを命令する。この実施例では、もし所定数のボコーダフレームがキュー１０６内に蓄積されたならば、ＴＣＰセグメントはＴＣＰプロセッサ１０８により発生される。例示的な実施例では、所定数のボコーダフレームは１０フレームである。この実施例はＴＣＰセグメントを発生することに先立ってキュー１０６において使用できる所定数のビットについての待合わせに関連する送信遅延を除く。したがって、ＴＣＰセグメントはより規則的なベースで発生され、それにより従来技術の不規則なデータ送信に関連する潜伏期及び他の問題を減少させる。
【００３８】
本発明の第３の実施例では、可変レートボコーダを使用する送信器において、最大ボコーダフレームサイズ対最小ボコーダフレームサイズの比率を減らすために、複数のビットが低レートボコーダフレームに加えられる。この比率が下げられるとき、文章の出発点での音節脱落のようなある種のオーディオ歪みが縮小または除去されることを、試験が示した。
【００３９】
第３の実施例では、ボコーダフレームがボコーダ１０４により形成される時、プロセッサ１１０は所定数のビットを含まないいずれかのボコーダフレーム、即ち、低レートの符号化されたボコーダフレームにランダムビットを加える。ビットはそのボコーダフレーム内に含まれるビット数が所定のビット数に等しくなるまで加えられる。低レートの符号化されたボコーダフレームに複数ビットを加えることは、キュー１０６内に蓄積された各ボコーダフレーム内の平均ビット数における、より多くの均一性を可能とし、そしてこのように、そのレートでＴＣＰセグメントが形成される。
【００４０】
図３は本発明の第１の実施例の方法を詳述するフロー図である。ステップ３００では、通信が送信器と受信器との間で開始される。開始処理の部分として、ＴＣＰまたはＵＤＰのような、データプロトコルが送信器と受信器との間で取り決められる。ＴＣＰのような、あるプロトコルでは、最大セグメントサイズが同様に送信器と受信器との間で取り決められる。取り決め処理は当分野で周知である。最大セグメントサイズは受信器に送信されるであろう最も大きなセグメントサイズを定義する。多くのデータプロトコルでは、より小さいセグメントサイズを有するセグメントは、なお送信されることが許される。最大セグメントサイズに加えて、最小セグメントサイズがあらかじめ定義され、そして同様に送信器のメモリ内に蓄積される。最小セグメントサイズは通常、送信器と受信器との間では取り決めされない。
【００４１】
一度通信が開始されると、人間の言葉のような、タイム−センシティブ情報が送信器と受信器との間で送信される。ステップ３０２では、ＴＣＰプロセッサ１０８はセグメントを発生するためにキュー１０６内に十分なデータがあるかどうかを決定すべくＴＣＰプロセッサ１０８に対するプロセッサ１１０からの命令を待つ。プロセッサ１１０がＴＣＰプロセッサにセグメントを発生することを命令すると、処理はステップ３０４に続く。
【００４２】
ステップ３０４では、ＴＣＰプロセッサ１０８は受信通知メッセージが所定の時間周期内に受信されたかどうかを決定する。受信器からの受信通知メッセージの受信は、通信チャネル品質が容認できること、及び後続の送信が成功裡に受信されるであろう高い可能性があることの表示である。すべてのデータプロトコルが受信通知ベースのシステムを使用するとは限らない。例えば、ＵＤＰプロトコルは通信チャネル品質が良好である送信器に警報を出すために受信通知メッセージを使用しない。これらの種類のプロトコルでは、ステップ３０４はバイパスされる。
【００４３】
もし受信通知メッセージが所定の時間周期内に受信されると、ステップ３０６に示されるように、セグメントがキュー１０６内のいずれかの使用可能なデータから発生される。結果としてのセグメントは最小セグメントサイズよりも小さいか、あるいは最小セグメントサイズよりも大きく、最大セグメントサイズまでのセグメントサイズを有してもよい。もしより多くのデータが最大サイズのセグメントを発生した後にキュー１０６内で使用可能であれば、そのデータは第２のセグメントに、そして必要ならば、次のセグメントに送られる。処理はその後ステップ３０２に逆戻りし、そこでＴＣＰプロセッサ１０８はキュー１０６を再チェックするためにプロセッサ１１０からの次の命令を待つ。
【００４４】
もし受信通知メッセージが所定の時間周期以内に受信されなかったならば、あるいはもし受信通知ベースのデータプロトコルが使用されないならば、処理はステップ３０８に続く。ステップ３０８では、ＴＣＰプロセッサ１０８は、最小セグメントサイズと等しいかまたはより大きいセグメントサイズを有するセグメントを発生するのに十分なデータがキュー１０６内に蓄積されているかどうかを決定するために、キュー１０６をチェックする。もしそうなら、ステップ３１０が実行され、そこではＴＣＰプロセッサが最小セグメントサイズと最大セグメントサイズとの間のセグメントサイズを有するセグメントを発生する。もしより多くのデータが最大サイズのセグメントを発生した後にキュー１０６内で使用可能であれば、そのデータは第２のセグメントに送られ、そしてもし必要なら、次のセグメントに送られる。処理はその後ステップ３０２に逆戻りし、そこではＴＣＰプロセッサ１０８がキュー１０６を再チェックするためにプロセッサ１１０からの次の命令を待つ。
【００４５】
もしキュー１０６内に蓄積されたデータが最小セグメントサイズより大きいかまたは等しいセグメントサイズを有するセグメントを形成するのに十分でなければ、ＴＣＰプロセッサ１０８はセグメントを発生せず、そして処理はステップ３０２に戻り続け、そこではＴＣＰプロセッサはキュー１０６を再チェックするためにプロセッサ１１０からの次の命令を待つ。
【００４６】
本発明の好ましい実施例がこのように示されて記述された。しかしながら、この発明の精神または範囲から逸脱すること無しに、多数の変更がこの中に開示された実施例に行われてもよいことは、この分野における通常の技術者には明白であるだろう。したがって、本発明はそのクレームに従う以外に制限されるべきではない。
【図面の簡単な説明】
【図１】  ボイスオーバデータ通信システムにおいて使用される送信器内で使用されるような本発明の第１の実施例を図示する。
【図２】  図１の送信器において使用されるＴＣＰプロセッサによって可変レートボコーダフレームがＴＣＰセグメントにどのように変換されるかを図示する。
【図３】  本発明の第１の実施例の方法を詳述するフロー図である。
【符号の説明】
１００‥送信器，２００‥データストリウム，２２０‥ＴＣＰセグメント，２１８‥ＴＣＰセグメント，
【図１】
0004541624.tif 000002
【図２】
0004541624.tif 000003
【図３】
0004541624.tif 000004