(57)【特許請求の範囲】
【請求項１】
デバイスの第１の処理エンティティによって処理するための方法であって、前記方法は、
第２の処理エンティティが、共有のメモリ空間を使用して、前記第１および第２の処理エンティティの間のメッセージ交換を次に処理すべき時を示すタイミング情報を前記第２の処理エンティティに提供することと、ここにおいて、前記第１の処理エンティティはモデムサブシステムを備え、および前記第２の処理エンティティは音声サブシステムを備える、
前記メッセージ交換を処理するための前記共有のメモリ空間にアクセスするために、前記タイミング情報に基づいて、低電力状態を出るための行動を起こすことと、および
前記メッセージ交換を処理した後に、前記低電力状態に入ることとを備え、
前記モデムおよび音声のサブシステム間の複数のパケット交換の異なる複数のレートの間でスイッチングするための前記タイミング情報を調整すること、ここにおいて、前記異なる複数のレートは、ボイス  オーバ  ロングターム  エボリューションまたはビデオ  テレフォニー  オーバ  ロングターム  エボリューションの通信のために使用されるパケット交換に関する複数の持続期間に対応する、
をさらに備えることによって特徴付けられる、方法。
【請求項２】
前記デバイスはワイヤレスデバイスを備え、および
前記第１および第２の処理エンティティは、複数のワイヤレス通信に関連する複数のタスクを処理するように構成される、
請求項１に記載の方法。
【請求項３】
前記第１および第２の処理エンティティは、マルチメディア処理またはセンサデータを処理することに関連する複数のタスクを処理するように構成される、請求項１に記載の方法。
【請求項４】
前記タイミング情報は、前記共有のメモリ空間を介して提供される、請求項１に記載の方法。
【請求項５】
前記共有のメモリ空間は、共有の物理メモリまたは低レイテンシ  インターフェースのうちの少なくとも１つを備える、請求項１に記載の方法。
【請求項６】
低電力状態を出るための行動を起こすことは、前記第１または第２の処理エンティティのうちの少なくとも１つにローカルなタイマをプログラミングすることを備える、請求項１に記載の方法。
【請求項７】
前記タイミング情報は、前記音声サブシステムが、前記モデムサブシステムが前記低電力状態を出るより前に、前記共有のメモリ空間に複数のボコーダ  パケット  サンプルを提供することを確実にするように設計され、および
前記低電力状態を出るための行動を起こすことは、前記モデムサブシステムが、前記複数のボコーダ  パケット  サンプルを処理する時刻内に間に合うように前記低電力状態を出ることを確実にするための行動を起こすことを備える、
請求項１に記載の方法。
【請求項８】
前記低電力状態を出るための行動を起こすことは、前記モデムサブシステムが、複数の受信された信号を復調する時刻内に間に合うように前記低電力状態を出ることを確実にするための行動を起こすことを備え、および
前記タイミング情報は、前記音声サブシステムが前記復調された複数の受信された信号を処理するために低電力状態を出ることを確実にするように設計される、
請求項１に記載の方法。
【請求項９】
第２の処理エンティティが、共有のメモリ空間を使用して第１および前記第２の処理エンティティの間のメッセージ交換を次に処理すべき時を示すタイミング情報を前記第２の処理エンティティに提供することと、ここにおいて、前記第１の処理エンティティはモデムサブシステムを備え、および前記第２の処理エンティティは音声サブシステムを備える、
前記メッセージ交換を処理するための前記共有のメモリ空間にアクセスするために、前記タイミング情報に基づいて、低電力状態を出るための行動を起こすことと、および
前記メッセージ交換を処理した後に低電力状態に入ることと、
ここにおいて、
前記第１の処理エンティティは、前記モデムおよび音声のサブシステム間の複数のパケット交換の異なる複数のレートの間をスイッチングするための前記タイミング情報を調整するようにさらに構成される、および
ここにおいて、前記異なる複数のレートは、ボイス  オーバ  ロングターム  エボリューションまたはビデオ  テレフォニー  オーバ  ロングターム  エボリューションの通信のために使用されるパケット交換に関する複数の持続期間に対応する、
を行うように構成される前記第１の処理エンティティと、
前記第２の処理エンティティと、および
共有のメモリと、
を備える装置。
【請求項１０】
前記装置はワイヤレスデバイスを備え、および
前記第１および第２の処理エンティティは、複数のワイヤレス通信に関連する複数のタスクを処理するように構成される、
請求項９に記載の装置。
【請求項１１】
前記タイミング情報は、前記共有のメモリ空間を介して提供される、請求項９に記載の装置。
【請求項１２】
前記第１の処理エンティティは、前記第１または第２の処理エンティティのうちの少なくとも１つにローカルなタイマをプログラミングすることによって低電力状態を出るための行動を起こすように構成される、請求項９に記載の装置。
【請求項１３】
前記タイミング情報は、前記音声サブシステムが、前記モデムサブシステムが前記低電力状態を出る前に、前記共有のメモリ空間に複数のボコーダ  パケット  サンプルを提供することを確実にするように設計され、および
前記第１の処理エンティティは、前記モデムサブシステムが、前記複数のボコーダ  パケット  サンプルを処理する時刻内に間に合うように前記低電力状態を出ることを確実にするための行動を起こすことによって、前記低電力状態を出るための行動を起こすように構成される、
請求項９に記載の装置。
【請求項１４】
前記第１の処理エンティティは、前記モデムサブシステムが複数の受信された信号を復調する時刻内に間に合うように前記低電力状態を出ることを確実にするための行動を起こすことによって、前記低電力状態を出るための行動を起こすように構成され、
前記タイミング情報は、前記音声サブシステムが前記復調された複数の受信された信号を処理するために、低電力状態を出ることを確実にするように設計される、
請求項９に記載の装置。
【請求項１５】
請求項１〜８のいずれか一項の方法を行うためのコードを備える、デバイスの第１の処理エンティティによって処理するためのコンピュータにより実行可能なコードを記憶するコンピュータ可読媒体。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
[0001]本出願は、「データ交換に関する低電力低潜時(latency)プロトコル」と題され、２０１４年２月２０日に出願された米国仮特許出願シリアル番号第６１／９４２，５１２と２０１５年２月１９日に出願された米国特許出願シリアル番号第１４／６２６，５３９、および「データ交換に関する低電力低潜時(latency)プロトコル」と題され、２０１４年３月５日に出願された米国仮特許出願シリアル番号第６１／９４８，０７４への優先権を主張するものであり、それらは全てこの譲受人に譲渡され、およびそれらは全て参照によりここに組み込まれる。
【分野】
【０００２】
[0002]本開示は一般に、ワイヤレス通信に関し、およびさらに具体的には、周期的なデータ交換中にワイヤレスデバイスに電力節約をもたらす方法に関する。
【背景技術】
【０００３】
[0003]ワイヤレス通信システムは、音声、データなどのような様々なタイプの通信コンテンツを提供するために広く展開されている。これらのシステムは、利用可能なシステムリソース（例えば、帯域幅および送信電力）を共有することによって、複数のユーザとの通信を支援することができる多元接続システムであることができる。こういった多元接続システムの例は、符号分割多元接続（ＣＤＭＡ）システム、時分割多元接続（ＴＤＭＡ）システム、周波数分割多元接続（ＦＤＭＡ）システム、第３世代パートナーシッププロジェクト（３ＧＰＰ（登録商標））ロングターム  エボリューション（ＬＴＥ（登録商標））システムおよび直交周波数分割多元接続（ＯＦＤＭＡ）システムを含む。
【０００４】
[0004]ワイヤレス通信システムに接続されたデバイスは、緊急サービスアクセスを提供するために、利用可能な無線アクセス技術（ＲＡＴ）上で、限られたサービスに関する検索を実行し、および限られたサービスにキャンプオンする(camp on)ように構成されることができる。限られたサービスを検索し、およびキャンプオンすることは、デバイスが音声対応または非音声対応デバイスであるかにかかわらず実行されることができる。
【発明の概要】
【０００５】
[0005]本開示のある特定の態様は、デバイスの処理エンティティ(a processing entity)上でデータを処理するための方法を提供する。その方法は一般に、第２の処理エンティティが、共有のメモリ空間を使用して、第１および第２のエンティティの間のメッセージ交換を次に処理すべき時を示すタイミングを第２の処理エンティティに提供することと、メッセージ交換を処理するための共有のメモリ空間にアクセスするために、タイミング情報に基づいて、低電力状態を出るための行動を起こす(take action)ことと、メッセージ交換を処理した後に、低電力状態に入ることとを含む。
【０００６】
[0006]ある特定の態様はまた、上に記述された動作を実行することができる様々な装置およびコンピュータプログラム製品を提供する。
【図面の簡単な説明】
【０００７】
【図１】[0007]  図１は、ワイヤレス通信ネットワークを示す。
【図２】[0008]  図２は、ユーザ機器（ＵＥ）および他の複数のネットワークエンティティのブロック図である。
【図３】[0009]  図３は、本開示のある特定の態様にしたがった低電力、低潜データ交換を容易にするために、デバイスの処理エンティティによって実行されることができる例としての動作を示す。
【図４】[0010]  図４は、本開示のある特定の態様にしたがった低電力、低潜データ交換に関する例としてのシステムのブロック図を示す。
【図５】[0011]  図５は、本開示のある特定の態様にしたがった、音声データコンテンツ（例えば、ＶｏＬＴＥ）における低電力、低潜データ交換に関する例としてのシステムのブロック図を示す。
【図６】[0012]  図６は、本開示のある特定の態様にしたがって、初期化および定常状態動作中にクライアントおよびサーバサブシステムとの間で交換されるメッセージを示す例としてのメッセージフロー図を示す。
【詳細な説明】
【０００８】
[0013]ここに提供されるある特定の態様にしたがって、共有のメモリとタイマを使用して複数のデータサブシステムの間でデータ交換を実行するための装置および方法が提供される。共有のメモリとタイマを使用して複数のデータサブシステムの間でデータ交換を行うことは、予測可能および／または周期的なデータ交換中にワイヤレスデバイスに電力節約を提供することができる。
【０００９】
[0014]ここに記述される技法は、ＣＤＭＡ、ＴＤＭＡ、ＦＤＭＡ、ＯＦＤＭＡ、ＳＣ−ＦＤＭＡおよび他の複数のネットワークのような様々なワイヤレス通信ネットワークに使用されることができる。「ネットワーク」および「システム」という用語は、しばしば入れ替えて使用されることができる。ＣＤＭＡネットワークは、ユニバーサル地上無線アクセス（ＵＴＲＡ）、ｃｄｍａ２０００などのような無線技術を実装することができる。ＵＴＲＡは、広帯域ＣＤＭＡ（ＷＣＤＭＡ（登録商標））、時分割同期ＣＤＭＡ（ＴＤ−ＳＣＤＭＡ）、およびＣＤＭＡの他の複数の変形を含む。ｃｄｍａ２０００は、ＩＳ−２０００、ＩＳ−９５およびＩＳ−８５６の標準規格をカバーする。ＴＤＭＡネットワークは、モバイル通信のためのグローバルシステム（ＧＳＭ（登録商標））のような無線技術を実装することができる。ＯＦＤＭＡネットワークは、発展型ＵＴＲＡ（Ｅ−ＵＴＲＡ）、ウルトラ  モバイル  ブロードバンド（ＵＭＢ）、ＩＥＥＥ８０２．１１（Ｗｉ−Ｆｉ）、ＩＥＥＥ  ８０２．１６（ＷｉＭＡＸ）、ＩＥＥＥ８０２．２０、Ｆｌａｓｈ−ＯＦＤＭＡなどのような無線技術を実装することができる。ＵＴＲＡおよびＥ−ＵＴＲＡは、ユニバーサル  モバイル電気通信システム（ＵＭＴＳ）の一部である。３ＧＰＰ  ロングターム  エボリューション（ＬＴＤ）およびＬＴＥ−アドバンスト（ＬＴＥ−Ａ）は、周波数分割複信（ＦＤＤ）および時分割複信（ＴＤＤ）の両方において、Ｅ−ＵＴＲＡを使用するＵＭＴＳの新規のリリースであり、それは、ダウンリンク上のＯＦＤＭＡおよびアップリンク上のＳＣ−ＦＤＭＡを用いる。ＵＴＲＡ、Ｅ−ＵＴＲＡ、ＵＭＴＳ、ＬＴＥ、ＬＴＥ−ＡおよびＧＳＭは、「第３世代パートナーシッププロジェクト」（３ＧＰＰ）という名称の組織からの文書に記述されている。ＣＤＭＡ２０００およびＵＭＢは、「第３世代パートナーシッププロジェクト２」（３ＧＰＰ２）という名称の組織からの文書に記述されている。ここに記述された技法は、上述された複数の無線技術および複数のワイヤレスネットワークだけでなく他の複数のワイヤレスネットワークおよび無線技術にも使用されことができる。明瞭さのために、本技法のある特定の態様は、ＬＴＥに関して下記に記述され、およびＬＴＥの専門用語が以下の記述の多くの部分で使用されることができる。記述はまた、異なる複数の専門用語を使用する他の複数の技術にも適用可能であることが留意されるべきである。
【００１０】
[0015]図１は、本開示の態様が実施されることができるワイヤレス通信ネットワーク１００を示す。例えば、複数のユーザ機器（ＵＥｓ）１１０は、予測可能および／または周期的な動作を実行している間に電力を節約するために、ここに記述された技法を使用することができる。
【００１１】
[0016]示されたように、ワイヤレス通信ネットワーク１００は、重複するカバレッジを有する複数のワイヤレスネットワークを含む。発展型ユニバーサル地上無線アクセスネットワーク（Ｅ−ＵＴＲＡＮ）１２０は、ＬＴＥを支援でき、および複数のユーザ機器１１０（ＵＥｓ）へのワイヤレス通信を支援可能な多数の発展型ノードＢｓ（ｅＮＢｓ）１２２および他の複数のネットワークエンティティを含むことができる。各ｅＮＢ１２２は、特定の地理的エリアに通信カバレッジを提供することができる。「セル」という用語は、このカバレッジエリアをサービスするｅＮＢおよび／またはｅＮＢサブシステムのカバレッジエリアを指すことが可能である。サービング  ゲートウェイ（Ｓ−ＧＷ）１２４は、Ｅ−ＵＴＲＡＮ１２０と通信でき、およびパケットルーティングおよびフォワーディング、移動性アンカーリング（mobility anchoring）、パケットバッファリング、ネットワーク−トリガされたサービス(network-triggered services)の開始(initiation)などのような様々な機能を実行することができる。移動性管理エンティティ（ＭＭＥ）１２６は、Ｅ−ＵＴＲＮ１２０およびサービング  ゲートウェイ１２４と通信でき、および移動性管理、ベアラ管理(bearer management)、ページングメッセージの分配、セキュリティコントロール、認証、ゲートウェイ選択などのような様々な機能を実行することができる。ＬＴＥにおける複数のネットワークエンティティは、「発展型地上無線アクセス（Ｅ−ＵＴＲＡ）および発展型地上無線アクセスネットワーク（Ｅ−ＵＴＲＡＮ）；全体の説明」と題された３ＧＰＰ  ＴＳ  ３６．３００に記述され、それは公的に(publicly)利用可能である。
【００１２】
[0017]無線アクセスネットワーク（ＲＡＮ）１３０は、ＧＳＭを支援することができ、およびＵＥｓへのワイヤレス通信を支援可能な多数の基地局１３２および他の複数のネットワークエンティティを含むことができる。移動性スイッチングセンタ（ＭＳＣ）１３４は、ＲＡＮ１３０と通信することができおよび音声サービスを支援することができ、回線交換呼(circuit-switched call)のためのルーティングを提供し、およびＭＳＣ１３４によってサービスされるエリア内に設置されたＵＥｓに関する移動性管理を実行することができる。随意に、インター(inter-)ワーキング機能（ＩＷＦ）１４０は、（例えば、１ｘＣＳＦＢのために）ＭＭＥ１２６およびＭＳＣ１３４との間の通信を容易にすることができる。
【００１３】
[0018]Ｅ−ＵＴＲＡＮ１２０、サービング  ゲートウェイ１２４、およびＭＭＥ１２６は、ＬＴＥ１０２の一部であることができる。ＲＡＮ１３０およびＭＳＣ１３４は、ＧＳＭネットワーク１０４の一部であることができる。簡単のために、図１は、ＬＴＥネットワーク１０２とＧＳＭネットワーク１０４におけるいくつかのネットワークエンティティのみを示す。ＬＴＥおよびＧＳＭネットワークはまた、様々な機能とサービスを支援できる他の複数のネットワークエンティティを含むことができる。
【００１４】
[0019]一般に、いくつかのワイヤレスネットワークは、特定の地理的エリアにおいて展開されることができる。各ワイヤレスネットワークは特定のＲＡＴを支援することができ、および１つまたは複数の周波数上で動作することができる。ＲＡＴはまた、無線技術、エアインターフェースなどと称されることができる。周波数はまた、キャリア、周波数チャネルなどと称されることができる。各周波数は、異なる複数のＲＡＴｓの複数のワイヤレスネットワークの間の干渉を回避するために特定の地理的エリアにおける単一のＲＡＴを支援することができる。
【００１５】
[0020]ＵＥ１１０は、据え置き型または移動型であることができ、およびモバイル局、端末、アクセス端末、加入者ユニット、局などとも称されることができる。ＵＥ１１０は、セルラ電話、パーソナル  ディジタル  アシスタント(a personal digital assistant)（ＰＤＡ）、ワイヤレス  モデム、ワイヤレス通信デバイス、ハンドヘルド  デバイス、ラップトップ  コンピュータ、コードレス電話、ワイヤレス  ローカル  ループ（ＷＬＬ）局などであることができる。
【００１６】
[0021]パワーアップ時に、ＵＥ１１０は、それから複数の通信サービスを受信することができる複数のワイヤレスネットワークを検索することができる。２以上のワイヤレスネットワークが検出される場合、最も高い優先度を持つワイヤレスネットワークが、ＵＥ１１０をサービスするために選択されることができ、およびサービングネットワークと称されることができる。ＵＥ１１０は、必要であれば、サービングネットワークとの登録を行うことができる。ＵＥ１１０は次に、サービングネットワークとアクティブに通信を実行するために接続されたモードにおいて動作することができる。代替として、アクティブな通信がＵＥ１１０によって要求されない場合、ＵＥ１１０は、アイドルモードで動作し、およびサービングネットワークにキャンプオンすることができる。
【００１７】
[0022]ＵＥ１１０は、アイドルモードにある間、複数の周波数および／または複数のＲＡＴｓの複数のセルのカバレッジ内に設置されることができる。ＬＴＥに関して、ＵＥ１１０は、優先リストに基づいてキャンプオンするためにＲＡＴおよび周波数を選択することができる。この優先リストは、複数の周波数のセットと、各周波数と関連付けられるＲＡＴと、各周波数の優先度とを含むことができる。例えば、優先リストは、３つの周波数Ｘ、ＹおよびＺを含むことができる。周波数ＸはＬＴＥのために使用されることができ、最も高い優先度を有することができ、周波数ＹはＧＳＭのために使用されることができおよび最も低い優先度を有することができ、および周波数ＺはまたＧＳＭのために使用されることができおよび中程の優先度を有することができる。一般に、優先リストは、ＲＡＴｓの任意のセットのためにいくつかの周波数を含むことができ、およびＵＥのロケーションに関して特有であることができる。ＵＥ１１０は、例えば、上の例によって与えられたように、最も高い優先度にある複数のＬＴＥ周波数と、より低い優先度にある他の複数のＲＡＴｓのための複数の周波数を有する優先リストを定義することによって、利用可能なときに、ＬＴＥを好むように構成されることができる。
【００１８】
[0023]ＵＥ１１０は、下記のとおりアイドルモードで動作することができる。ＵＥ１１０は、正常なシナリオにおける「適切な」セルまたは緊急のシナリオにおける「許容可能な」セルを発見することができる全ての周波数／ＲＡＴｓを識別することができ、ここで、「適切な」および「許容可能な」は、ＬＴＥの標準規格内に明記されている。ＵＥ１１０は次に、全ての識別された周波数／ＲＡＴｓのうちでもっとも高い優先度を有する周波数／ＲＡＴにキャンプオンすることができる。ＵＥ１１０は、（ｉ）周波数／ＲＡＴが予め決定された閾値においてもはや利用可能でない、または（ｉｉ）より高い優先度を有する別の周波数／ＲＡＴがこの閾値に達する、のいずれかまで、この周波数／ＲＡＴにキャンプオンされたままでいることができる。アイドルモードにおけるＵＥ１１０に関する動作挙動は、「発展型地上無線アクセス（Ｅ−ＵＴＲＡ）；アイドルモードにおけるユーザ機器（ＵＥ）のプロシージャ」と題された３ＧＰＰ  ＴＳ３６．３０４に記述されており、それは公的に入手可能である。
【００１９】
[0024]ＵＥ１１０は、ＬＴＥネットワーク１０２からパケット交換（ＰＳ）データサービスを受信することができ、およびアイドルモードにある間にＬＴＥネットワークにキャンプオンすることができる。ＬＴＥネットワーク１０２は、ボイス  オーバ  インターネット  プロトコル（ＶｏＩＰ）に関するいずれの支援も有さないか、限られた支援を有することができ、それはしばしば、ＬＴＥネットワークの早期の展開に関するケースであることができる。制限されたＶｏＩＰ支援に起因して、ＵＥ１１０は、音声呼のための別のＲＡＴの他のワイヤレスネットワークに転送されることができる。この転送は、回線交換（ＣＳ）フォールバックと称されることができる。ＵＥ１１０は、１ｘＲＴＴ、ＷＣＤＭＡ、ＧＳＭなどのような音声サービスを支援かることができるＲＡＴに転送されることができる。ＣＳフォールバックを用いた発呼に関して、ＵＥ１１０は音声サービスを支援することができないソースＲＡＴ（例えば、ＬＴＥ）のワイヤレスネットワークに最初に接続されることができる。ＵＥは、このワイヤレスネットワークを用いて音声呼を開始することができ、およびその音声呼を支援可能なターゲットＲＡＴの他のワイヤレスネットワークに、より高いレイヤ  シグナリングを経由して転送されることができる。ターゲットＲＡＴにＵＥを転送するためのより高いレイヤ  シグナリングは、様々なプロシージャ、例えば、リダイレクション(redirection)を用いたコネクション  リリース、ＰＳハンドオーバなどのためのものであることができる。
【００２０】
[0025]図２は、図１におけるＵＥ１１０、ｅＮＢ１２２、およびＭＭＥ１２６の設計のブロック図を示す。ＵＥ１１０において、エンコーダ２１２は、アップリンク上で送られるべき複数のシグナリングメッセージとトラフィックデータを受信することができる。エンコーダ２１２は、トラフィックデータと複数のシグナリングメッセージを処理（例えば、フォーマット、符号化、およびインターリーブ）することができる。モジュレータ（Ｍｏｄ）２１４はさらに、符号化されたトラフィックデータと複数のシグナリングメッセージを処理（例えば、シンボルマッピングおよび変調）し、および複数の出力サンプルを提供することができる。送信機（ＴＭＴＲ）２２２は、複数の出力サンプルを調整（例えば、アナログへの変換、フィルタリング、増幅、および周波数アップコンバート）し、およびアップリンク信号を生成することができ、それらは、ｅＮＢ１２２へアンテナ２２４を介して送信されることができる。
【００２１】
[0026]ダウンリンク上で、アンテナ２２４は、ｅＮＢ１２２および／または他の複数のｅＮＢｓ／複数の基地局によって送信された複数のダウンリンク信号を受信することができる。受信機（ＲＣＶＲ）２２６は、アンテナ２２４から受信された信号を調整（例えば、フィルタリング、増幅、周波数ダウンコンバート、およびデジタル化）し、および複数の入力サンプルを提供することができる。デモジュレータ（Ｄｅｍｏｄ）２１６は、複数の入力サンプルを処理（例えば、復調）し、および複数のシンボル推定を提供できる。デコーダ２１８は、複数のシンボル推定を処理（例えば、デインターリーブおよび復号）し、およびＵＥ１１０に送られる複数のシグナリングメッセージと復号されたデータを提供することができる。エンコーダ２１２、モジュレータ２１４、デモジュレータ２１６、およびデコーダ２１８は、モデムプロセッサ２１０によって実装されることができる。これらのユニットは、ＵＥ１１０が通信状態にあるワイヤレスネットワークによって使用されるＲＡＴ（例えば、ＬＴＥ、１ｘＲＴＴなど）にしたがった処理を実行することができる。
【００２２】
[0027]コントローラ／プロセッサ２３０は、ＵＥ１１０での動作を指図することができる。コントローラ／プロセッサ２３０はまた、ここに記述された複数の技法に関する他の複数のプロセスを指図または実行することができる。コントローラ／プロセッサ２３０はまた、図３におけるＵＥ１１０による処理を指図または実行することができる。メモリ２３２は、ＵＥ１１０に関するデータと複数のプログラムコードを記憶することができる。メモリ２３２はまた、優先リストと構成情報を記憶することができる。
【００２３】
[0028]ｅＮＢ１２２において送信機／受信機２３８は、ＵＥ１１０と他の複数のＵＥｓとの無線通信を支援することができる。コントローラ／プロセッサ２４０は、複数のＵＥｓとの通信のための様々な機能を実行することができる。アップリンク上で、ＵＥ１１０からのアップリンク信号はアンテナ２３６を介して受信され、受信機２３８によって調整され、およびＵＥ１１０によって送られた複数のシグナリングメッセージとトラフィックデータを回復するためにコントローラ／プロセッサ２４０によってさらに処理されることができる。ダウンリンク上で、トラフィックデータと複数のシグナリングメッセージは、ダウンリンク信号を生成するために、コントローラ／プロセッサ２４０によって処理され、および送信機２３８によって調整されることができ、それらは、ＵＥ１１０および他の複数のＵＥｓにアンテナ２３６を介して送信されることができる。コントローラ／プロセッサ２４０はまた、ここに記述された技法に関する他の複数のプロセスを指図または実行することができる。コントローラ／プロセッサ２４０はまた、図３におけるｅＮＢ１２２による処理を指図または実行することができる。メモリ２４２は、基地局に関するデータと複数のプログラムコードを記憶することができる。通信（Ｃｏｍｍ）ユニット２４４は、ＭＭＥ１２６および／または他の複数のネットワークエンティティとの通信を支援することができる。
【００２４】
[0029]ＭＭＥ１２６において、コントローラ／プロセッサ２５０は、複数のＵＥｓに関する複数の通信サービスを支援するために、様々な機能を実行することができる。メモリ２５２は、ＭＭＥ１２６に関するデータと複数のプログラムコードを記憶することができる。通信ユニット２５４は、他の複数のネットワークエンティティとの通信を支援することができる。
【００２５】
[0030]図２は、ＵＥ１１０、ｅＮＢ１２２、およびＭＭＥ１２６の簡略化された設計を示す。一般に、各エンティティは、いくつかの送信機、受信機、プロセッサ、コントローラ、メモリ、通信ユニットなどを含むことができる。他の複数のネットワークエンティティもまた、同様の仕方で実装されることができる。
データ交換に関する低電力低パテンシ(PATENCY)プロトコル
[0031]ワイヤレスデバイスは通常、ボイスオーバＬＴＥ（ＶｏＬＴＥ）またはビデオ  テレフォニー  オーバ  ＬＴＥ(Video Telephony over LTE（登録商標）)（ＶＴＬＴＥ）のように、予測可能および／または周期的であることができる複数のデータ動作を実行可能である。ＶｏＬＴＥまたはＶＴＬＴＥのような動作は、ＲＦデバイス（例えば、モデム）がウェイクアップされる回数を減少させるが、ラウンドトリップ遅延を適当な(reasonable)限度内に保持するために使用されることができる予め決められた複数のパケット交換回数を有することができる。予め決められたデータユニット交換回数を有する動作に関して、電力節約は、接続モード不連続受信（ＣＤＲＸ）を使用して実現されることができ、ここにおいて、デバイスは、例えば、トーク、リッスン、およびサイレンス状態に依存して、異なる複数の持続期間の間、無線をオフし、低電力状態（例えば、スリープ状態）にモデムを置く。ＶｏＬＴＥ動作に関して、ＣＤＲＸはまた、ＲＦデバイスがウェイクアップされる回数を減少させ、かつ適当な限度内にラウンドトリップ遅延を保持するために、２０ｍｓのパケット交換から４０ｍｓのパケット交換の周期性にスイッチングすることを伴うことができる。
【００２６】
[0032]ワイヤレスデバイスに電力節約をもたらすために、複数のサブシステム（例えば、ＶｏＬＴＥまたはＶＴＬＴＥにおける複数の音声サブシステムとモデム）の間のデータ交換を同期することは、一方のサブシステムが、もう一方を誤った時刻にウェイクアップさせることなく複数のデータ交換を同期することを伴うことができ、それは、可能な電力節約を無効にできる。さらに、電力節約は、ソフトウェア  レイヤリング遅延（software layering delay）を減少させ、システム  ジッタ  ハンドリング（system jitter handling）を向上させ、割り込み周波数を低減させ、データの同期の正確さを向上させ、および異なる複数のバッファリングサイズの間のシームレスなスイッチングを可能にすることによって実現されることができる。
【００２７】
[0033]いくつかのリアルタイムシステム（例えば、ＣＤＭＡ、ＧＳＭ、ＷＣＤＭＡ、ＴＤＳ−ＣＤＭＡ、およびＬＴＥ）において、クリティカルな動作が開始および完了する必要があり得る間、複数の周期窓が存在することができる。他の複数の周期窓において、複数のサブシステムはパワーダウンされるか、または低電力状態にスイッチングされることができる。複数のプロセスが異なる複数の周期で生じる必要があり得るときに動作がいつ開始および完了するかを決定するのは困難であり得る。さらに、汎用目的入力／出力（ＧＰＩＯ）割り込み処理潜状、プリエンプティブ  スケジューリング、動的なプロセッサとバスクロックのスイッチング、およびソフトウェアレイヤの数が更なる不定の遅延を強いる可能性がある。通常、これらの遅延を補償するために、複数のシステムクロックレートが増大されることができるか、あるいは複数の遅延が、非基準の(non-normative)システム  ジッタに許容できる最悪なケースのヘッドルームに適応するために意図的(artificially)に増大されることができる。これらの補償は、複数のフリンジ  ケース(fringe cases)のためのさらなるリソースの割り当てに起因して電力を浪費することができる。
【００２８】
[0034]いくつかのアプリケーションに関して、データの受信および送信は、予測可能および周期的であることができる。これらのアプリケーションは、例えば、オーディオ／画像送信、複数のセンサ、複数のバスプロトコル（例えば、高速インター−チップ）、または複数のネットワークインターフェース動作（例えば、ポーリングモード）を含む。データは、コントロールまたはイベント情報、ならびにユーザデータを含むことができる。
【００２９】
[0035]例えば、ここに記述された技法は、図２に示された、モデムプロセッサ２１０およびコントローラ／プロセッサ２３０との間のインター−プロセス通信（ＩＰＣ）において使用されることができる。
【００３０】
[0036]本開示の態様は、データが処理されると予期されるときに、複数の処理サブシステムおよび複数の活性化サブシステムとの間のタイミングを同期することによって電力を節約するのを助けることができる。電力節約は、例えば、処理するべきメッセージのための共有のメモリ空間をチェックするために低電力状態からいつ出るかを別個にスケジュールすることを複数の処理サブシステムに可能にすることによって実現されることができる。複数の処理サブシステムは、できるだけ長時間低電力状態にあることができる。
【００３１】
[0037]動的な電圧およびクロックのスイッチングは、完全に可能にされることができる。複数のシステムクロックは、複数のサブシステムの間のＩＰＣを支援するために、名目上の設定で維持される必要は無い。さらに、複数のクロックレートは、例えば、割り込みサービス  ルーチンまたは割り込みサービス  スレッド  コンテンツ(service thread context)において割り込みを処理することによって、複数のクリティカルなタスクのプリエンプションを防ぐために増大される必要は無い。
【００３２】
[0038]本開示の態様は、複数のシステムクロックレートの変更に関わらず、高いＩＰＣのパフォーマンスを可能にすることができる。メッセージ配信および受信は、各処理サブシステムの複数のリソースを別個に使用して処理されることができる。複数のサブシステムは、クリティカル(critical)および非クリティカルな(non-critical)ＩＰＣｓの組み合わせの下であっても、できるだけ低いクロックレートを使用して動作されることができる。処理の優先度は、送り手または受け取り手のスレッドの優先度によって支配されることができる。
【００３３】
[0039]本開示の態様は、複数の処理サブシステムが、データが必要とされる直前にデータを直接読み取ることができるので、最小のレイテンシと複数のレイヤリング  オーバヘッド(layering overhed)を可能にすることができる。例えば、複数のＧＳＭ音声呼に関する複数のラウンドトリップ遅延は、最も近いＴＤＭＡのフレーム処理タイムラインの始まりではなく変調および復調回数にデータの処理を合わせる(align)ことに起因して最大４．６１５ｍｓまで減少されることができる。
【００３４】
[0040]メッセージ配信および受信は、作業の完了が特定の時刻より前に予期され得るので、非常に正確になることができる。メッセージ配信および受信は、処理サブシステムが、全体のシステムがリアルタイムに進行する間に共有の複数のメモリ空間内の複数の終了した(expired)バッファを読み取るように構成されることが可能なため、システム  ジッタに対しても同様に頑健(robust)であることができる。
【００３５】
[0041]いくつかのケースにおいて、複数のポーリング  ベース  アルゴリズムは、複数のタイム  スタンプ  ベース  アルゴリズムと置き換えられることができ、それは浪費される処理サイクルをさらに回避することができる。タイム  スタンプ  ベースのアルゴリズムを用いて、サーバは、データバッファ（または一連のデータバッファ）に、データユニットと、そのデータユニットと関連付けられるタイムスタンプを書き込むことが可能である。実施中に、クライアント側のタイマハンドラは、送信バッファから複数の終了したバッファを読み取るために、クライアントを周期的にウェイクアップさせる。終了したバッファを読み取る際に、クライアントは、実施中に補償されなくてはならないクロック  スキュー(clock skew)の量を決定することが可能である。クロックスキューの量に基づいて、クライアントは、受信機および送信側のためのバッファをより早くまたはより遅く実行させるために、それ自体の時刻をプログラムすることが可能である。サーバ側で、パケットが受信されおよび書き込まれる周期性における複数の変更は、クライアント側に適用された時刻補償の量から取得され、およびパケットの生成は、クライアント側に適用された補償の量に基づいて修正されることが可能である。
【００３６】
[0042]本開示の態様は、複数のＩＰＣｓへの割り込みの使用を減少させることができる。専用の複数の割り込みラインは実装される必要はない。例えば、ネットワークと複数のデバイスクロックを同期させるためのモデムと複数の音声サブシステムとの間の複数のボコーダ  フレーム参照（ＶＦＲ）割り込みは、モデムと複数の音声サブシステムが、パルスコード変調（ＰＣＭ）ドメイン内の時刻に追いつくために、複数のクロックドリフトエラーをコンピュータ計算し、およびクロック修正をリクエストすることが可能なので、必要とされ得ない。ハードウェア設計は、専用の複数のＶＦＲ割り込みを排除し、および複数のより簡単なモデム−音声ハードウェア（例えば、複数のＳＩＭ、複数のアクティブなモデム）設計を可能にすることができる。複数の処理サブシステムの間の高解像度の時刻参照の同期は、定常状態における割り込みを使用することなく実行されることができる。割り込みの使用を減少させることは、カーネル−空間(kernal-space)およびユーザ−空間両方のコンテキストにおけるＩＰＣに支援を提供することができる。
【００３７】
[0043]本開示の態様は、バッファリング粒度に動的な変化を可能にすることができる。例えば、複数のＶｏＬＴＥ動作において、２０ｍｓと４０ｍｓのモード間のスイッチングは、シームレスに実行されることが可能である。音声サブシステムは、再構成のために停止される必要は無く、それは、複数のＶｏＬＴＥ動作中の複数のオーディオギャップの周波数と長さを低減することができる。
【００３８】
[0044]複数のポーリング  ベース  アルゴリズムは、複数のタイムスタンプ  ベース  アルゴリズムと置き換えられることができ、それは浪費される処理サイクルをさらに回避することができる。
【００３９】
[0045]ここに記述された複数の動作は、完全に非同期であることができ、およびアイソクロナス(isochronous-like)のような動作のエミュレーションを可能にすることができる。
【００４０】
[0046]複数の処理サブシステムの間の時刻同期は、正確なオーディオ／画像の同期を提供することができる。
【００４１】
[0047]図３は、予測可能および／または周期的なデータ交換に関する低電力、低レイテンシプロトコルを実装するために、ワイヤレスデバイスの第１の処理エンティティによって実行されることができる例としての動作を示す。示されたように、動作３００は、３０２において開始し、そこで、第１の処理エンティティは、第２の処理エンティティが共有のメモリ空間を使用して、第１および第２の処理エンティティの間のメッセージ交換を次に処理すべき時を示すタイミング情報を第２の処理エンティティに提供する。３０４において、第１の処理エンティティは、メッセージ交換を処理するための共有のメモリ空間にアクセスするために、タイミング情報に基づいて、低電力状態を出るための行動を起こす。３０６において、第１の処理エンティティは、メッセージ交換を処理した後に低電力状態に入る。
【００４２】
[0048]第１の処理エンティティおよび第２の処理エンティティは、複数のメッセージを別個に受信し、処理し、および送るように構成されることができ、および第１および第２の処理エンティティは、低電力モードに別個に入るように構成されることができる。
【００４３】
[0049]いくつかの態様において、タイミング情報は、共有のメモリ空間を介して提供されることができる。共有のメモリ空間は、例えば、共有のメモリ、または共有のメモリのように振る舞うインターフェース（例えば、低レイテンシインターフェース）を伴うことができる。
【００４４】
[0050]低電力状態を出るための行動を起こすことは、１つの処理エンティティにローカルな(a timer local to a processing entity)１つのタイマをプログラミングすることを備えることができる。いくつかの態様において、このタイマは、データが処理されるためにスケジュールされる直前に、１つの処理エンティティを低電力状態から出させるように構成されることができる。１つの処理エンティティにローカルな複数のタイマは、標準のタイマであることかでき、および専用のハードウェアを使用して実装される必要はない。各処理エンティティ（例えば、第１および第２の処理エンティティ）は、それ自体のタイマを有することができ、および各タイマは、複数の処理エンティティを、適切な時刻に独立してウェイクアップさせ、および共有のメモリ空間に複数のメッセージを書き込み、またはからメッセージを読み取るようにプログラムされることができる。
【００４５】
[0051]一態様において、第１の処理エンティティはモデムサブシステムを備えることができ、および第２の処理エンティティは音声サブシステムを備えることができる。モデムと複数の音声サブシステムは、複数のサブシステムの間の複数のパケット交換の異なる複数のレートの間をスイッチングするために、タイミング情報を調整することができる。例えば、異なる複数のレートは、２０ｍｓおよび４０ｍｓのＶｏＬＴＥパケット交換モードに対応することができる。音声データを送信するために、タイミング情報は、音声処理システムが、第１の処理エンティティが低電力状態を出るより前に、共有のメモリ空間に複数のパルスコード変調（ＰＣＭ）サンプルまたは複数のボコーダ  パケットを提供することを確実にするように設計されることができ、および低電力状態を出るための行動を起こすことは、第１の処理エンティティが、送信のための複数のＰＣＭサンプルまたは複数のボコーダ  パケットを処理する時刻内に間に合うように低電力状態を出ることを確実にするための行動を起こすことを備えることができる。音声データを受信するために、低電力状態を出るための行動を起こすことは、第１の処理エンティティが、受信された信号を復調する時刻内に間に合うように低電力状態を出ることを確実にするための行動を起こすことを備えることができ、およびタイミング情報は、音声処理システムが、復調された複数の受信された信号を処理するために低電力状態を出ることを確実にするように設計されることができる。
【００４６】
[0052]第１および第２の処理エンティティは、同じ集積回路か、異なる複数の集積回路上に、または共通のプロセッサの一部として存在することができる。いくつかの観点において、第１および第２の処理エンティティは、シリアルバスのようなバスを介して接続されることができる。
【００４７】
[0053]第１の処理システムは、データを受信または生成し、およびそのデータを第２の処理システムに提供するように構成されることができるので、第１の処理システムはクライアントシステムと考えられることができ、および第２の処理システムはサーバシステムと考えられることができる。第１の処理システムは、例えば、モデムまたはデータプロバイダ（例えば、カメラ、マイクロフォンなど）を備えることができ、および対応する第２の処理システムは、例えば、音声処理システムまたは再生デバイスをそれぞれ備えることができる。第１および第２の処理システムの複数の役割は、例えば、システムが、全体として、データを送信しているか、または受信しているかに依存して逆転されることができる。
【００４８】
[0054]図４は、低電力、低レイテンシデータ交換に関する例としてのシステム４００のブロック図である。システム４００は、図３に記述された動作に従って動作することができる。システム４００は、第１の処理システム４０２と、第２の処理システム４０４と、共有のメモリ空間４０６とを有することができる。図３について、第１の処理システム４０２は、第２の処理システム４０４が、共有のメモリ空間４０６を使用して第１の処理システム４０２および第２の処理システム４０４との間のメッセージ交換を次に処理すべき時を示すタイミング情報を第２の処理システム４０４に提供することができる。タイミング情報に基づいて低電力状態を出る時に、第１の処理システム４０２は、第２の処理システム４０４が共有のメモリ空間４０６からデータを読み取る直前に、共有のメモリ空間４０６にデータを書き込むことができる。共有のメモリ空間４０６にデータを書き込んだ後、第１の処理システム４０２は低電力状態に入ることができる。
【００４９】
[0055]図５は、音声データ（例えば、ＶｏＬＴＥ）コンテンツにおける低電力、低レイテンシデータ交換に関する例としてのシステム５００のブロック図を示す。図４に記述された第１の処理システム４０２は、モデム５０２を備えることができ、および図４に記述された第２の処理システム４０４は、ボコーダ  システム５０４を備えることができる。デバイスが音声データを送信しているときに、モデム５０２は、共有のメモリ空間４０６から複数のボコーダ  パケット、複数のＰＣＭサンプルなどを読み取り、パケットを変調し、および変調されたパケットを別のデバイスに送信することができ、およびボコーダ  システム５０４は、複数のボコーダ  パケットまたは複数のＰＣＭサンプルを共有のメモリ空間４０６に書き込むことができる。デバイスが音声データを受信しているときに、モデム５０２は、複数の受信されたパケットを復調し、および複数の復調されたパケットを共有のメモリ空間４０６に書き込むことができ、およびボコーダ  システム５０４は、共有のメモリ空間４０６からのデータを読み取ることができる。
【００５０】
[0056]本開示の態様はまた、画像またはグラフィックス  コンテンツにおける低電力、低レイテンシデータ交換のために使用されることができる。例えば、ＶＴＬＴＥ通信において、サウンドおよび画像は、複数の取得デバイス（例えば、ウェブカムおよびマイクロフォン）から取得され、および第２の処理システムへの送信のために第１の処理システムにおいて処理されることが可能である。ビデオ  テレフォニー呼が実行されている間、第１の処理システムによるデータの処理および取得は定期的に継続することができる。例えば、データ交換は、画像のｎ個のフレーム毎にスケジュールされることができ、ここで、ｎは正数である。
【００５１】
[0057]（例えば、ビデオゲームまたは画像復号動作からの）グラフィックス  データを交換するために、第１の処理システムは、マルチメディアまたはエンターテーメントコンテンツをユーザに提供する際に使用されるべき複数のパケットを生成することが可能である。ビデオ  テレフォニーアプリケーションと同様に、マルチメディアまたはエンターテーメントコンテンツはフレーム毎の基準で交換されることができる。いくつかのケースにおいて、データ交換の周期性は、グラフィックスおよびサウンドの滑らかな再生を提供するために計算されることができる。いくつかのケースにおいて、データ交換の周期性は、交換されるべきデータのフォーマットに基づいて計算されることができる（例えば、１０８０ｐ／２４ｆｐｓで符号化された画像フレームは、１０８０ｐ／６０ｆｐｓで符号化された画像フレームとは異なる周期性を用いて交換されることができる）。
【００５２】
[0058]図６は、本開示の態様にしたがった低電力、低レイテンシデータ交換に関する第１および第２の処理エンティティの間で交換されることができるメッセージを示すメッセージフロー図６００を示す。いくつかの態様において、第１の処理サブシステムはサーバであることができ、および第２の処理サブシテムはクライアントであることができる。ここに記述された方法を利用する動作は、初期化段階、定常状態動作段階、および終了段階の観点から広く記述されることができる。
【００５３】
[0059]初期化段階において、第１の処理サブシステムおよび第２の処理サブシステムは、複数のクロックを同期し、および送信および受信パス上での使用のためのバッファを提供することができる。クライアントシステムは、随意のセットアップメッセージ６０２をサーバシステムに送信する。クライアントおよびサーバとの間の複数の通信を設定する際に、クライアントと関連付けられるクロックは、サーバと関連付けられるクロックと同期されることができる。クライアントおよびサーバで複数のクロックを同期するために、サーバは、クライアントと関連付けられるクロックをサーバと関連付けられるクロックと同期することをクライアントにリクエストする同期リクエストメッセージ６０４を送信することができる。クライアントは次に、サーバの時刻をリクエストするサーバ時刻リクエストメッセージ６０６を送信し、およびメッセージ６０８を介してサーバの時刻を受信することができる。受信されたサーバ時刻に基づいて、クライアントは、それ自体のクロックおよびタイマをプログラムし、およびサーバのタイマをプログラムするようサーバに指図するメッセージ６１０を送信する。いくつかのケースにおいて、（例えば、サーバが、最大ジッタ耐力を超過するクライアントおよびサーバとの間の修正されていないタイムスキューを検出する場合）、サーバは、（例えば、セットアップメッセージ６０２を待つよりむしろ）サーバと再同期するためのリクエスト６０４をクライアントに自主的に送信することができる。
【００５４】
[0060]いずれかのケースにおいて、クライアントおよび複数のサーバクロックを同期し、およびクライアントおよびサーバと関連付けられる複数のタイマをプログラミングした後に、クライアントは、複数の定常状態動作（例えば、ここで論じられたような、サーバシステムによって共有のメモリに書き込まれたメッセージの生成、およびクライアントシステムによって共有のメモリ内に記憶されたメッセージの読み取り）を開始するためのスタートコマンド６１２を送信可能である。
【００５５】
[0061]クライアントおよびサーバシステムが複数のクロックを同期し、およびそれら各々のタイマをプログラムした後に、クライアントおよびサーバシステムは、低電力（スリープ）状態に入ることが可能である。サーバシステムは、サーバタイマがデータを生成しおよび共有のメモリにアクセスするために終了するときにウェイクアップすることができる。共有のメモリにアクセスする際に、サーバシステムは、生成されたデータを共有のメモリに書き込み、およびクライアントシステムが共有のメモリに予め書き込まれることができた任意のデータを読み取ることができる。共有のメモリにアクセスし、およびサーバシステムの次のウェイクアップ時刻を設定した後に（いくつかのケースにおいて、共有のメモリに記憶された情報に基づいて）、サーバシステムは、サーバタイマが終了する次の時刻まで低電力（スリープ）状態に再度入ることが可能である。一方で、クライアントシステムは、クライアントタイマが、（クライアントシステムが共有のメモリに存在するべきデータを予期できる時刻に）終了するときにウェイクアップし、および共有のメモリの複数のコンテンツを読み取ることができる。いくつかのケースにおいて、クライアントシステムはまた、共有のメモリに書き込まれるべきデータを生成することができる。クライアントシステムは、サーバシステムによって共有のメモリに書き込まれたデータを読み取るために共有のメモリにアクセスし、および適用可能な場合、生成されたデータを共有のメモリに書き込むことができる。共有のメモリにアクセスした後に、クライアントシステムは、次のウェイクアップ時刻を設定し、クライアントシステムの次のウェイクアップ時刻を共有のメモリに書き込み、およびクライアントタイマが次のウェイクアップ時刻に到達するまで低電力（スリープ）状態に入ることが可能である。この仕方において、サーバおよびクライアントデバイスは、データが共有のメモリから読み取られるかまたは書き込まれることになる時にアクティブになりおよび電力を引き出し(draw)、およびサーバおよびクライアントデバイスが共有のメモリから読み取るか、または書き込むのを待機している時に非アクティブになることができ、したがって電力使用量を減少させる。
【００５６】
[0062]初期化段階中に、クライアントおよびサーバシステムは、複数の定常状態動作中に使用されるべきバッファを提供することができる。いくつかのケースにおいて、複数のバッファは、先入れ先出し構造であることができ、ここで、バッファに書き込まれるデータの最も早いパケットが、バッファから除去されおよび読み取られる最初のパケットである。クライアントは、データを記憶するべきサーバのための１つまたは複数の空のバッファを送信側に提供することが可能であり、およびサーバは、クライアントによって処理されるべきデータのための１つまたは複数のバッファを受信側に提供することが可能である。送信側に、複数のバッファは、設定された送信期間を支援するために提供されることができ、および追加の複数のバッファは、サーバからデータを受信するためのバッファを解放する前に、データを処理するための追加の時間をクライアントに提供するように提供されることができる。サーバは、データがいつバッファに提供されるかを示すタイムスタンプを記憶することができる。受信側で、クライアントは、将来に設定されたタムスタンプを用いてデータをマークすることが可能であり、およびサーバが、例えば、エラーの隠匿または沈黙を実行するべきであると知らせるために、複数の空のバッファをマークすることが可能である。クライアントおよびサーバは、他の複数のサブシステムがバッファを読み取ることが必要になる前にちょうど間に合うように(just in time before)ウェイクアップし、およびデータを配信するようにそれら各々のローカルタイマをプログラムすることができる。ちょうど間に合うようにウェイクアップし、およびデータを配信することは、クライアントが各バッファ上の複数のデータ交換タイムスタンプと、クライアントおよびサーバタイマの両方をプログラムするための絶対時間の使用をプログラミングすることに起因して支援されることができ、それは、正確なタイミングと蓄積された時間ドリフトを避けるために各サイクル上で実行されるべき補正を可能にする。
【００５７】
[0063]例えば、複数のＶｏＬＴＥ  ＣＤＲＸ動作において、クライアント（例えば、モデム）は、符号化されたボコーダ  パケットを記憶するために、サーバ（例えば、音声サブシステム）に３つのバッファを供給することができる。２つのバッファ、各２０ｍｓの持続期間は、４０ｍｓのボコーダ  パケット交換期間の間データをバッファするために使用されることができる。随意の追加の２０ｍｓのバッファは、符号化するためにサーバに戻すバッファを解放する前にデータを処理するために、追加の２０ｍｓをクライアントに提供するために使用されることができる。
【００５８】
[0064]複数の定常状態動作中に、クライアントおよびサーバは、それぞれ受信および送信側バッファを継続的に読み取り、およびに書き込むことが可能である。クライアント側のタイマは、終了した複数の送信側バッファを読み取り、およびサーバに複数の空のバッファを供給するために、クライアントを周期的にウェイクアップさせることが可能である。クライアント側のタイマはまた、復号するべきデータをサーバのための複数の受信側バッファに書き込むために、クライアントを周期的にウェイクアップさせることができる。サーバ側のタイマは、複数のバッファが終了する前に、複数の送信バッファ内に符号化されたデータを書き込むために、サーバを周期的にウェイクアップさせることが可能であり、および受信されたデータを復号するために、終了時に、サーバに複数の受信側バッファからのデータを読み取らせることができる。
【００５９】
[0065]クライアントは、ネットワーク時刻とデバイス時刻との間のタイミング  ドリフトを修正するための制御を与えられることができる。ドリフトは、異なる複数のクロッククリスタルから生成されているデバイス時刻とネットワーク時刻とに起因して生じることができ、それは、ネットワーク時刻とデバイス時刻をやがてドリフトさせることができる。クライアントは、クライアントクロックおよびサーバクロックとの間の平均的なクロックドリフトを検出するために、終了した複数の送信側バッファからの取得時刻を読み取ることができる。クライアントは、複数のバッファの終了をより速くまたはより遅くなるようにプログラミングすることによって、オリジナルタイムラインにクライアントおよびサーバとの間のデータ交換を戻すことが可能である。サーバは、タイミング  ドリフトを修正するために必要とされ得る時間補償の量にマッチさせるためにデータレートを変更し、および周期性への変更を検出することが可能である。
【００６０】
[0066]例えば、複数のＶｏＬＴＥ動作において、音声サブシステムは、複数の送信側バッファ内の符号化されたデータをモデムに提供することが可能であり、およびモデムは、受信側バッファにおいて復号するためのデータを複数の音声サブシステムに提供することが可能である。タイミング  ドリフトを修正する際に、音声サブシステムは、ユーザへの時刻修正の影響を隠すまたはマスクするために、時間のより長い持続時間にわたってスタッフィングアルゴリズムとサンプルスリッピングを用いることが可能である。
【００６１】
[0067]マルチメディアの再生および記録動作のために、クライアントおよびサーバとの間で交換されたデータは、様々なコーデックを使用して符号化されたオーディオ、および符号化されてもされなくても良い画像フレームを含むことが可能である。マルチメディアの再生および記録は、オーディオと画像の再生、記録、またはトランスコーディング、ならびにカメラまたはカムコーダの記録を含むことが可能である。再生は、複数の受信側バッファに符号化されたデータを書き込むクライアントサブシステムを備えることができ、それは、符号化されたデータを復号し、およびその復号されたデータを１つまたは複数の出力デバイスに出力することができる。記録することは、複数の送信側バッファ中にデータを書き込むクライアントサブシステムを備えることができる。トランスコーディング動作は、受信側と送信側両方のバッファの使用を伴うことができる。トランスコードされるべきデータは、複数の受信側バッファ内に置かれることができ、およびトランスコードされたデータは複数の送信側バッファから読み取られることができる。
【００６２】
[0068]センサデータの記録のために、電力節約と減少したシステムレイテンシは、いつデータが実際に受信されたかよりも正確なデータ取得タイムスタンプを好むアプリケーションに関する定常状態動作中に、不必要にアプリケーションプロセッサをウェイクアップさせる割り込みの使用を避けることによって実現されることができる。センサデータは、例えば、ジャイロスコープ、グローバルナビゲーション衛星システム（例えば、ＧＰＳ、ＧＬＯＮＡＳＳ、ＧＡＬＩＬＥＯなどの）デバイス、磁気センサなどから記録されることができる。センサデータは、複数の送信側バッファに記録されることが可能であり、およびクライアントは、複数の送信側バッファから記録されたデータを読み取ることが可能である。クライアントは、任意の時刻に記録されたデータを読み取ることができ、および送信側バッファがいっぱいになるときに、記録されたデータを読み取ることを強要されることができる。送信側バッファがいっぱいになるときに、サーバは、クライアントを再同期させるためにクライアントに割り込むことが可能であり；クライアントが再同期した後、割り込みのない複数の定常状態動作が続行できる。増大したメモリの量は、クライアントがいっぱいになったバッファを読み取りおよび空にするために割り込まれる前に、より多くのデータを取得することをサーバに可能にすることができる。センサデータをバッファリングすることは、ある特定の間隔で読み取ることを強要される代わりに、アプリケーションセンサが望むときはいつでもセンサデータを読み取ることを複数のアプリケーションプロセッサに可能にすることができ、それは、システムの複数のクリティカル  タスクの実施を遅らせるかまたは防ぎことができる。
【００６３】
[0069]終了段階中に、クライアントは、送信側および受信側バッファ内に残っているいかなるデータもフラッシュアウト(flush out)することが可能である。クライアントおよびサーバデバイスは引き続き、クライアントおよびサーバデバイスが関係する複数の動作が再び開始される（例えば、デバイスが、新しいＶｏＬＴＥまたはＶＲＬＴＥ呼に使用される）まで、低電力モード（例えば、スリープ状態）に置かれることができる。
【００６４】
[0070]上に記述された方法の様々な動作は、ハードウェアおよび／またはソフトウェアコンポーネント（複数）および／またはモジュール（複数）の任意の適切な組み合わせによって実行されることができる。
【００６５】
[0071]開示されたプロセスにおけるステップの特定の順序または階層は、例示的なアプロ−チの例であることが理解される。設計の好みに基づいて、プロセスにおけるステップの特定の順序または階層は、本開示の範囲内に残っている間に再配列され得ることが理解される。添付の方法の請求項は、サンプルの順序で、様々なステップの要素を提示しており、および提示された特定の順序または階層に限定されることを意味するものではない。
【００６６】
[0072]当業者は、情報および信号が様々な異なる複数の技術と技法のいずれかを用いて表され得ることを理解するだろう。例えば、上記の記述を通じて言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場または磁性粒子、光場または光学粒子またはそれらの任意の組合せによって表されることができる。
【００６７】
[0073]当業者はさらに、ここに開示された実施形態と関連して記述された様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、またはその両方の組み合わせとして実装され得ることを認識するだろう。ハードウェアとソフトウェアのこの互換性を明示的に示すために、様々な例示的なコンポーネント、ブロック、モジュール、回路、およびステップは、それらの機能性の観点から概ね上で記述されてきた。こういった機能性が、ハードウェアまたはソフトウェアとして実装されるかどうかは、特定のアプリケーションおよび全体的なシステムに課せられた設計の制限に依存する。当業者は、各特定のアプリケーションに関する様々な点で、記述された機能性を実施できるが、こういった実施の決定は、本開示の範囲から逸脱を引き起こすものであると解釈されるべきではない。
【００６８】
[0074]ここに開示された実施形態に関連して記述された様々な例示的な論理ブロック、モジュールおよび回路は、汎用目的プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、アプリケ−ション特定用途向け集積回路（ＡＳＩＣ）、フィールド  プログラマブル  ゲート  アレイ（ＦＰＧＡ）または他のプログラム可能な論理デバイス、ディスクリートゲートまたはトランジスタ論理、ディスクリートハードウェアコンポーネント、またはここに記述された機能を実行するために設計されたそれらの任意の組み合わせと共に実装されるか、または実行されることができる。汎用目的プロセッサは、マイクロプロセッサであることができるが、代替において、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシーンであることができる。プロセッサはまた、コンピューティングデバイス、例えば、ＤＳＰとマイクロプロセッサ、複数のマイクロプロセッサ、ＤＳＰコアと連結した１つまた複数のマイクロプロセッサ、または任意の他のこういった組み合わせとして実装されることができる。
【００６９】
[0075]ここに開示された実施形態に関連して記述されたアルゴリズムまたは方法のステップは、直接ハードウェアにおいて、プロセッサによって実施されるソフトウェアモジュールにおいて、またはその２つの組合せにおいて具体化されることができる。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭ（登録商標）メモリ、レジスタ、ハードディスク、リムーバブル  ディスク、ＣＤ−ＲＯＭ、または当技術分野において知られている記憶媒体の任意の他の形式で存在できる。模範的な記憶媒体は、プロセッサが記憶媒体に情報を書き込み、およびから情報を読み取ることができるようにプロセッサに結合される。代替において、記憶媒体はプロセッサに一体化されることができる。プロセッサおよび記憶媒体は、ＡＳＩＣ内に存在できる。ＡＳＩＣはユーザ端末内に存在できる。代替において、プロセッサおよび記憶媒体は、ユーザ端末内にディスクリートコンポーネントとして存在できる。特許請求の範囲を含む本明細書で使用されたように、「のうちの少なくとも１つ」によって始められる項目のリストにおいて使用されるような「または」は、例えば、「Ａ、Ｂ、またはＣのうちの少なくとも１つ」のリストが、Ａ、Ｂ、Ｃ、ＡＢ、ＡＣ、ＢＣまたはＡＢＣ（すなわち、Ａ、Ｂ、およびＣ）、またはいくつかのＡ、Ｂ、またはＣの任意の組み合わせを意味するような択一的なリストを示す。
【００７０】
[0076]本開示の先の記述は、本開示を使用または作成することを当業者に可能にするために提供される。本開示に対する様々な変更は、当業者にとって容易に明らかであり、ここで定義された包括的な原理は、本開示の範囲または精神から逸脱することなく他の複数の変形に適用されることができる。したがって、本開示は、ここに記述された設計および例に限定されことを意図したものではないが、ここに開示された新規の特徴および原理と合致する最も広い範囲が与えられるべきである。
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
デバイスの第１の処理エンティティによって処理するための方法であって、前記方法は、
第２の処理エンティティが、共有のメモリ空間を使用して、第１および第２の処理エンティティの間のメッセージ交換を次に処理すべき時を示すタイミング情報を前記第２の処理エンティティに提供することと、
前記メッセージ交換を処理するための前記共有のメモリ空間にアクセスするために、前記タイミング情報に基づいて、低電力状態を出るための行動を起こすことと、
前記メッセージ交換を処理した後に、前記低電力状態に入ることと、
を備える方法。
［Ｃ２］
前記デバイスはワイヤレスデバイスを備え、および
前記第１および第２の処理エンティティは、複数のワイヤレス通信に関連する複数のタスクを処理するように構成される、
Ｃ１に記載の方法。
［Ｃ３］
前記第１および第２の処理エンティティは、マルチメディア処理に関連する複数のタスクを処理するように構成される、Ｃ１に記載の方法。
［Ｃ４］
前記メッセージ交換は、複数のオーディオコーデック、複数の画像フレーム、またはグラフィックス  データの少なくとも１つに関連する、Ｃ３に記載の方法。
［Ｃ５］
前記第１および第２の処理エンティティは、センサデータを処理することに関連する複数のタスクを処理するように構成される、Ｃ１に記載の方法。
［Ｃ６］
前記タイミング情報は、前記共有のメモリ空間を介して提供される、Ｃ１に記載の方法。
［Ｃ７］
前記共有のメモリ空間は、共有の物理メモリまたは低レイテンシ  インターフェース（ＬＬＩ）のうちの少なくとも１つを備える、Ｃ１に記載の方法。
［Ｃ８］
低電力状態を出るための行動を起こすことは、前記第１または第２の処理エンティティのうちの少なくとも１つにローカルなタイマをプログラミングすることを備える、Ｃ１に記載の方法。
［Ｃ９］
前記第１の処理エンティティはモデムサブシステムを備え、および前記第２の処理エンティティは音声サブシステムを備える、Ｃ１に記載の方法。
［Ｃ１０］
前記モデムと音声の複数のサブシステムの間の複数のパケット交換の異なる複数のレートの間でスイッチングするための前記タイミング情報を調整することをさらに備える、Ｃ９に記載の方法。
［Ｃ１１］
前記異なる複数のレートは、ボイスオーバ  ロングターム  エボリューション（ＶｏＬＴＥ）またはビデオ  テレフォニーオーバ  ロングターム  エボリューション（ＶＴＬＴＥ）の通信のために使用されるパケット交換に関する複数の持続期間に対応する、Ｃ１０に記載の方法。
［Ｃ１２］
前記タイミング情報は、前記音声サブシステムが、前記モデムが前記低電力状態を出るより前に、前記共有のメモリ空間に複数のボコーダ  パケット  サンプルを提供することを確実にするように設計され、および
前記低電力状態を出るための行動を起こすことは、前記モデムが、前記複数のボコーダ  パケット  サンプルを処理するのに間に合うように前記低電力状態を出ることを確実にするための行動を起こすことを備える、
Ｃ９に記載の方法。
［Ｃ１３］
前記低電力状態を出るための行動を起こすことは、前記モデムが、複数の受信された信号を復調する時刻内に間に合うように前記低電力状態を出ることを確実にするための行動を起こすことを備え、および
前記タイミング情報は、前記音声サブシステムが前記復調された複数の受信された信号を処理するために低電力状態を出ることを確実にするように設計される、
Ｃ９に記載の方法。
［Ｃ１４］
前記第１および第２の処理エンティティは、同じ集積回路上に存在する、Ｃ１に記載の方法。
［Ｃ１５］
前記第１および第２の処理エンティティは、共通のプロセッサの一部である、Ｃ１に記載の方法。
［Ｃ１６］
前記第１および第２の処理エンティティは、連続するバスを介して接続される、Ｃ１に記載の方法。
［Ｃ１７］
第２の処理エンティティが、共有のメモリ空間を使用して第１及び前記第２の処理エンティティの間のメッセージ交換を次に処理すべき時示すタイミング情報を前記第２の処理エンティティに提供することと、
前記メッセージ交換を処理するための前記共有のメモリ空間にアクセスするために、前記タイミング情報に基づいて、低電力状態を出るための行動を起こすことと、
前記メッセージ交換を処理した後に低電力状態に入ることと、
を行うように構成される前記第１の処理エンティティと、
前記第２の処理エンティティと、および
共有のメモリと、
を備える装置。
［Ｃ１８］
前記装置はワイヤレスデバイスを備え、および
前記第１および第２の処理エンティティは、複数のワイヤレス通信に関連する複数のタスクを処理するように構成される、
Ｃ１７に記載の装置。
［Ｃ１９］
前記タイミング情報は、前記共有のメモリ空間を介して提供される、Ｃ１７に記載の装置。
［Ｃ２０］
前記第１の処理システムは、前記第１または第２の処理エンティティのうちの少なくとも１つにローカルなタイマをプログラミングすることによって低電力状態を出るための行動を起こすように構成される、Ｃ１７に記載の装置。
［Ｃ２１］
前記第１の処理エンティティはモデムサブシステムを備え、および前記第２の処理エンティティは音声サブシステムを備える、Ｃ１７に記載の装置。
［Ｃ２２］
前記第１の処理エンティティは、前記モデムと複数の音声サブシステムの間の複数のパケット交換の異なる複数のレートの間をスイッチングするための前記タイミング情報を調整するようにさらに構成される、Ｃ２１に記載の装置。
［Ｃ２３］
前記異なる複数のレートは、ボイス  オーバ  ロングターム  エボリューション（ＶｏＬＴＥ）またはビデオ  テレフォニー  オーバ  ロングターム  エボリューション（ＶＴＬＴＥ）通信のために使用されるパケット交換に関する複数の持続期間に対応する、Ｃ２２に記載の装置。
［Ｃ２４］
前記タイミング情報は、前記音声サブシステムが、前記モデムが前記低電力状態を出る前に、前記共有のメモリ空間に複数のボコーダ  パケット  サンプルを提供することを確実にするように設計され、および
前記第１の処理システムは、前記モデムが、前記複数のボコーダ  パケット  サンプルを処理する時刻内に間に合うように前記低電力状態を出ることを確実にするための行動を起こすことによって、前記低電力状態を出るための行動を起こすように構成される、
Ｃ２１に記載の装置。
［Ｃ２５］
前記第１の処理システムは、前記モデムが複数の受信された信号を復調する時刻内に間に合うように前記低電力状態を出ることを確実にするための行動を起こすことによって、前記低電力状態を出るための行動を起こすように構成され、
前記タイミング情報は、前記音声サブシステムが前記復調された複数の受信された信号を処理するために、低電力状態を出ることを確実にするように設計される、
Ｃ２１に記載の装置。
［Ｃ２６］
前記第１および第２の処理エンティティは、同じ集積回路上に存在する、Ｃ１７に記載の装置。
［Ｃ２７］
前記第１および第２の処理エンティティは、共通のプロセッサの一部である、Ｃ１７に記載の装置。
［Ｃ２８］
前記第１および第２の処理エンティティは、連続するバスを介して接続される、Ｃ１７に記載の装置。
［Ｃ２９］
デバイスの第１の処理エンティティによって処理するための装置であって、前記装置は、
第２の処理エンティティが、共有のメモリ空間を使用して前記第１および第２の処理エンティティの間のメッセージ交換を次に処理すべき時を示すタイミング情報を前記第２の処理エンティティに提供するための手段と、
前記メッセージ交換を処理するための前記共有のメモリ空間にアクセスするために、前記タイミング情報に基づいて、低電力状態を出るための行動を起こすための手段と、および
前記メッセージ交換を処理した後に、前記低電力状態に入るための手段と、
を備える装置。
［Ｃ３０］
デバイスの第１の処理エンティティによって処理するためのコンピュータにより実行可能なコードを記憶するコンピュータ可読媒体であって、前記コンピュータ可読媒体は、  第２の処理エンティティが、共有のメモリ空間を使用して前記第１および第２の処理エンティティの間のメッセージ交換を次に処理すべき時を示すタイミング情報を前記第２の処理エンティティに提供するためのコードと、
前記メッセージ交換を処理するための前記共有のメモリ空間にアクセスするために、前記タイミング情報に基づいて、低電力状態を出るための行動を起こすためのコードと、
前記メッセージ交換を処理した後に、前記低電力状態に入るためのコードと、
を備えるコンピュータ可読媒体。
【図１】
0006549139.tif 000002
【図２】
0006549139.tif 000003
【図３】
0006549139.tif 000004
【図４】
0006549139.tif 000005
【図５】
0006549139.tif 000006
【図６】
0006549139.tif 000007