(57)【要約】プロセッサはリアルタイム・イベントのリアルタイム・イベント処理を実行することができ、これは、コンピュータ・システムに装備された無線モジュールがワイヤレス通信プロトコルに従って、ホスト・プロセッサ・ベースバンド処理を使用して動作できるようにする方法による。一実施形態によれば、プロセッサはリアルタイム・イベント処理を、リアルタイム・イベントの受信に応答してプロセスを停止し、イベントをハンドリングし、次いでプロセスに戻ることによって実行することができる。もう１つの実施形態によれば、プロセッサはリアルタイム・イベント処理を、同じＬ２キャッシュを共有するプライマリ・ホスト・プロセッサ・コアと共に統合された非対称処理コア上で実行することができる。
2005505153.tif 000002
【特許請求の範囲】
【請求項１】
無線モジュールをワイヤレス通信プロトコルに従って動作させるための高レベル・ベースバンド・コントローラと、
高レベル・ベースバンド・コントローラに結合されたプライマリ・ホスト・プロセッサとを含み、前記プロセッサは、コントローラから受信され、ワイヤレス通信プロトコルに関連付けられたリアルタイム・イベントを処理するための第１の部分を有し、非リアルタイム・イベントを処理するための第２の部分を有する移動ユニプロセッサ・コンピュータ・コンピュータ・システム。
【請求項２】
プロセッサの第１の部分は、第１のオペレーティング・システムを実行するための非対称処理コア、第２のオペレーティング・システムを実行するためのプロセッサの第２の部分、およびレベル２キャッシュを共有するためのプロセッサの第１および第２の部分を含む請求項１に記載のコンピュータ・システム。
【請求項３】
プロセッサの第１の部分は、非リアルタイム・プロセスを停止するため、かつリアルタイム・イベント・ハンドラの実行を開始するためのリアルタイム・イベント回路を含む請求項１に記載のコンピュータ・システム。
【請求項４】
プロセッサの第１の部分は、リアルタイム・イベント回路をトリガしてリアルタイム・イベント・ハンドラの実行を開始するためのタイマをさらに含む請求項３に記載のコンピュータ・システム。
【請求項５】
プロセッサは、リアルタイム・イベント回路をトリガしてリアルタイム・イベント・ハンドラの実行を開始するための外部アクセス可能なイベント・ピンを含む請求項３に記載のコンピュータ・システム。
【請求項６】
非リアルタイム・イベントがＷｉｎｄｏｗｓオペレーティング・システムの実行に関連付けられる請求項１に記載のコンピュータ・システム。
【請求項７】
高レベル・ベースバンド・コントローラに結合されたバッファ付き入出力ポート、低レベル・ベースバンド・コントローラ、およびワイヤレス通信をワイヤレス通信プロトコルに従って可能にするためのトランシーバを含む無線モジュールであって、連邦通信委員会によるＬｉｍｉｔｅｄ  Ｍｏｄｕｌａｒ  Ａｐｐｒｏｖａｌを満たす無線モジュールをさらに含む請求項１に記載のコンピュータ・システム。
【請求項８】
低レベル・ベースバンド・コントローラは、リンク・マネジメント・プロトコルに関連付けられたベースバンド部分を含む請求項７に記載のコンピュータ・システム。
【請求項９】
第１の端で高レベル・ベースバンド・コントローラに結合され、第２の端で無線モジュールの部分に結合されたフレキシブル・ケーブルをさらに含む請求項７に記載のコンピュータ・システム。
【請求項１０】
それに無線モジュールが添付されるヒンジ付き蓋をさらに含み、フレキシブル・ケーブルは、無線モジュールと高レベル・ベースバンド・コントローラの間のヒンジを通じて伸びる請求項９に記載のコンピュータ・システム。
【請求項１１】
チップセットをさらに含み、高レベル・ベースバンド・コントローラがチップセットに組み込まれる請求項１に記載のコンピュータ・システム。
【請求項１２】
キーボード・コントローラをさらに含み、高レベル・ベースバンド・コントローラがキーボード・コントローラに組み込まれる請求項１に記載のコンピュータ・システム。
【請求項１３】
ワイヤレス通信プロトコルが、ブルートゥース、ＳＷＡＰおよびＩＥＥＥ  ８０２．１１からなるグループから選択される請求項１に記載のコンピュータ・システム。
【請求項１４】
非リアルタイム・オペレーティング・システムに関連付けられるプロセスをコンピュータ・システムのプライマリ・ホスト・プロセッサ上で実行するステップと、
ワイヤレス通信プロトコルに関連付けられるリアルタイム・イベントを、コンピュータ・システムのトランシーバによって外部デバイスから受信するステップと、
イベントをプロセッサに転送するステップと、
イベントをリアルタイムで処理し、ワイヤレス通信プロトコルが維持され、ワイヤレス通信プロトコルに関連付けられたベースバンド処理の高レベル部分が、オペレーティング・システムから独立したプロセッサによって行われるようにするステップとを含む方法。
【請求項１５】
ワイヤレス通信プロトコルに関連付けられたベースバンド処理の低レベル部分が、プロセッサから独立した無線モジュールによって行われる請求項１４に記載の方法。
【請求項１６】
ワイヤレス通信プロトコルはブルートゥース・プロトコルであり、ベースバンド処理の低レベル部分はブルートゥース・リンク・マネジメント・プロトコルに従う請求項１５に記載の方法。
【請求項１７】
イベントをリアルタイムで処理するステップは、プロセスを停止するステップ、プロセッサ状態を予約済メモリ空間に保存するステップ、リアルタイム・イベント・ハンドラを実行するステップ、プロセッサ状態を戻すステップ、およびプロセスの実行を継続するステップを含む請求項１４に記載の方法。
【請求項１８】
イベントをリアルタイムで処理するステップは、イベントを第１のオペレーティング・システムの下でプロセッサの第１の部分において処理すると同時に、プロセスの実行を第２のオペレーティング・システムの下でプロセッサの第２の部分において継続するステップを含む請求項１４に記載の方法。
【請求項１９】
請求項１４に記載の方法を実施するようにプログラムされた、移動ユニプロセッサ・コンピュータ・システム。
【請求項２０】
コンピュータ・システムによって実行されたとき、コンピュータ・システムに請求項１４に記載の方法を実行させるマシン・アクセス可能な命令を含むマシン・アクセス可能な媒体。
【請求項２１】
コンピュータ・システムによって実行されたとき、コンピュータ・システムに請求項１６に記載の方法をさらに実行させるマシン・アクセス可能な命令をさらに含む請求項２０に記載の媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータ・システムに関し、より詳細には、システムがワイヤレス通信プロトコルに従って機能を実現させるために使用することができるものなど、リアルタイム・イベント処理をサポートするプロセッサを含むシステムに関する。
【背景技術】
【０００２】
移動コンピュータ・システムは、小型のハンドヘルド電子デバイスから、セットトップ・ボックスなどの特定用途向け電子コンポーネント、中型ノートブックおよびラップトップ・システムへと社会においてますます普及しつつある。これらに対応する対照的な多重処理型のもの、たとえばサーバ、ワークステーションおよびハイエンド・デスクトップ・システムとは異なり、移動コンピュータ・システムは通常、さまざまな周辺デバイスに結合された単一のプライマリ・ホスト・プロセッサを含む。コンピュータ・システム設計者は継続的に、システムのコストを著しく増大することなく、より多くの機能をユーザに提供するように努めている。残念ながら、各追加機能は通常、コンピュータ・システムに追加される追加のコンポーネントに対応しており、サイズおよび費用が増す結果となる。
【発明を実施するための最良の形態】
【０００３】
本発明を例として、また同様の参照が類似の要素を示す添付の図面に限定されないものとして例示する。
【０００４】
本発明の一実施形態によれば、ホスト・コンピュータ・システムからワイヤレス無線モジュールへのスケーラブルなインターフェイス（本明細書では「ハーモナイズド・インターフェイス」と称する）が提供される。このモジュールは、インテンショナル・ラジエータ(intentional radiator)についての法的要件を満たすが、いかなる所与のワイヤレス通信プロトコルにも特有でない可能性がある。ハーモナイズド・インターフェイスの反対側で、所与のワイヤレス通信プロトコルを満たすようにワイヤレス・モジュールを操作できる汎用プロトコル・エンジンが存在する。プロトコル・エンジンの上には、通常のオペレーティング・システム（ＯＳ）ドライバ・スタックが存在し、これは次いで、ホスト・コンピュータ・システムの異なるネットワーキングおよび周辺ドライバに接続される。
【０００５】
このタイプのパーティショニングにより、無線モジュールを多数のワイヤレス通信プロトコルに従って動作するように設計することができる。ハーモナイズド・インターフェイスはこの無線モジュールをホスト・コンピュータ・システムに接続することができ、これは次いで高レベル・ベースバンド処理をこのモジュールのために実行する。ホスト・システムにおけるソース・コードを動的に変更することによって、異なるワイヤレス通信プロトコルをエミュレートすることができる。
【０００６】
たとえば、ブルートゥース（たとえば、「Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｏｆ  ｔｈｅ  Ｂｌｕｅｔｏｏｔｈ  Ｓｙｓｔｅｍ」、ｖ１．０ｂ、１９９９年１２月１日に記載）、ＨｏｍｅＲＦ＊  Ｓｈａｒｅｄ  Ｗｉｒｅｌｅｓｓ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＷＡＰ）（たとえば、「Ｓｈａｒｅｄ  Ｗｉｒｅｌｅｓｓ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＷＡＰ）  Ｓｐｅｃｉｆｉｃａｔｉｏｎ」ｖ．１．０、１９９９年１月５日に記載）、およびＩＥＥＥ  ８０２．１１（たとえば、「ＩＥＥＥ  Ｓｔｄ  ８０２．１１」１９９９  Ｅｄｉｔｉｏｎに記載）プロトコルに従って動作するモジュールを作成することができる。プロトコルをユーザの環境（たとえば、路上、オフィス内または在宅）に応じて動的に変更することができる。これらの短距離ワイヤレス通信プロトコルに加えて、適切なモジュールがハーモナイズド・インターフェイスに接続されると、Ｔｈｉｒｄ  Ｇｅｎｅｒａｔｉｏｎ（３Ｇ）セルラー通信プロトコルなど、長距離ワイヤレス通信プロトコルもエミュレートすることができる。（＊商標およびブランドはそれらの各所有者の所有物である。）
【０００７】
ベースバンドを正しくパーティショニングすることによって、このようなデザインにより、ホスト・コンピュータ・システムのホスト・プロセッサがより高いレベルのベースバンド処理のいくつかを実行できるようにすることもできる。ハーモナイズド・インターフェイスを使用して、コンピュータ・システムのホスト・プロセッサはベースバンド処理機能をネイティブで実行することができ、それにより、無線モジュールをサポートするための別々の専用処理ハードウェアの必要性を低減することによって、システムのコストを削減できる。これらの機能を実行するため、ホスト・コンピュータは、従来のプロセッサを越える拡張を含むことができ、これによりホスト・プロセッサが、ワイヤレス通信プロトコルに関連付けられたものなど、リアルタイム・イベントを処理することができる。
【０００８】
本発明の実施形態のより詳細な説明は、さまざまな構成および実施態様を含み、これを以下で提供する。
【０００９】
（ワイヤレス・モジュール）
以下の考察の多くは、ブルートゥース・ベースバンドを含むブルートゥース技術に焦点を合わせるが、本明細書で考察する概念をより幅広く、ほぼいかなるワイヤレス通信プロトコルおよびその各ベースバンドにも適用できることを理解されたい。
【００１０】
現在のワイヤレス・ブルートゥース・モジュールのパーティショニングは実装に対して使用したシリコン技術に従う。ブルートゥース・モジュールの無線周波数（ＲＦ）アナログ部分は通常、ＢＩ−ＣＭＯＳプロセスを使用して製造され、１つのデバイス（たとえば、トランシーバ）内に存在する。残りのマイクロコントローラ・セクションは通常、ＣＭＯＳプロセスを使用して製造され、別々のデバイス内に存在し、これを本明細書では短距離ワイヤレス・ベースバンド・コントローラと呼ぶ。
【００１１】
ブルートゥース・システムは無線技術に基づいている。したがって、いくつかの国に固有の法的要件に従うことは、ブルートゥース・プロトコルの成功にとって重要である。これらの要件は通常、政府機関によって追跡され、これにはたとえば、米国の連邦通信委員会（ＦＣＣ）および日本の郵政省（ＭＰＴ）が含まれる。それらの要件は、準拠している無線がそれらの各国内でどのような挙動を示すべきであるかを指図する。販売されるべき製品が組み立てられた後、これが政府機関承認の試験施設に送られて、テストおよび認証される。この試験が完了し（２カ月またはそれ以上を要する可能性がある）、製品が承認された後、次いで製品をその国の市場で販売することができる。
【００１２】
このようなデバイスの製品導入を加速するため、Ｄｅｃｌａｒａｔｉｏｎ  ｏｆ  Ｃｏｍｐｌｉａｎｃｅ（ＤｏＣ）と呼ばれるプロセスが作成されている。会社は、このプロセスにより、事前に試験された（かつ事前に認証された）部品によりデバイスが組み立てられるという事実に基づいて事前に認証することができる。事前に認証された部品を使用してデバイスを構築することにより、会社は自社の最終製品をＤｏＣプロセスを通じて自己認証することができる。米国では、ワイヤレス・モジュールの自己認証を達成するため、２０００年６月２６日に発行された「Ｐａｒｔ  １５  Ｕｎｌｉｃｅｎｓｅｄ  Ｍｏｄｕｌａｒ  Ｔｒａｎｓｍｉｔｔｅｒ  Ａｐｐｒｏｖａｌ」という名称のＦＣＣ刊行物に記載されているような、Ｌｉｍｉｔｅｄ  Ｍｏｄｕｌａｒ  Ａｐｐｒｏｖａｌ（ＬＭＡ）の要件をモジュールが満たしていることが期待されている。
【００１３】
本発明の一実施形態によれば、ＦＣＣのＬＭＡ要件を満たし、ＯＥＭがＤｏＣプロセスを使用して、モジュールを組み込むそれらのエンドユーザ製品を自己認証できるようにする無線モジュールが提供される。これは製品開発サイクルから、通常はインテンショナルＲＦラジエータを製品に統合することに関連付けられたＦＣＣ無線認証プロセスを除去する。現在のＬＭＡについてのＤｏＣ要件は、ブルートゥース・リンク・マネジメント・プロトコルの等価物にまで拡大し、上述の現在の製造ベースのパーティショニングのため、無線モジュールは、ＬＭＡを得るために、ブルートゥース・ベースバンド全体を含むことができる。
【００１４】
たとえば、バス・コントロール・ロジック３１０（これは通常、システム・チップセットである）に結合されたプロセッサ３０５、メモリ３１５および入出力（Ｉ−Ｏ）デバイス３２０を含む、図１ａのコンピュータ・システムを考察する。短距離ワイヤレス・ベースバンド・コントローラ３３０は、トランシーバ３３５が動作するために使用される全ベースバンド、たとえばブルートゥース・ベースバンドに関連付けられたロジックを含む。すなわち、ベースバンド・コントローラ３３０は、ワイヤレス通信プロトコルの全ベースバンドをサポートするために使用されるすべてのロジックを含む。加えて、コントローラ３３０は、チップセットのバス・コントロール・ロジック３１０およびトランシーバ３３５と通信するために使用されるバス・インターフェイス・ロジックを含む。
【００１５】
このパーティショニングに基づいて、ＬＭＡについての要件を満たすモジュールは、図１ａのトランシーバ３３５および短距離ワイヤレス・ベースバンド・コントローラ３３０を含む。したがって、コントローラ３３０内に含まれた、ベースバンドに対するアップグレードまたは他の修正には、このようなモジュールの再認証が必要となる可能性がある。加えて、このようなモジュールは、ホスト・コンピュータ・システムによって実施されるベースバンド処理をほとんど残さない。それにより、システム・コストが増大する。別法として、コントローラ３３０をホスト・コンピュータ・システムに統合すると、残されたトランシーバ３３５がＬＭＡ要件を満たさないので、そのトランシーバ３３５がＤｏＣプロセスに従わないことになる。
【００１６】
本発明の一実施形態によれば、図１ａの短距離ワイヤレス・ベースバンド・コントローラ３３０が分割されて、ベースバンドの一部をホスト・コンピュータ・システムの１つまたは複数のデバイスに統合できるようにされる。ベースバンドのうちホスト・システムに統合されない部分はリンク・マネジメント・プロトコルに対応し、それによりこの部分を、トランシーバと共に、ＤｏＣプロセスのＬＭＡを満たすために使用できる。
【００１７】
たとえば、図１ｂのコンピュータ・システムを考察すると、これはプロセッサ３０５、メモリ３１５およびＩ−Ｏデバイス３２０を含む。これらの要素がバス・コントロール・ロジック３１１に結合される。バス・コントロール・ロジック３１１は、ブルートゥース（または他のワイヤレス通信プロトコル）ベースバンドの高レベル部分に関連付けられた、統合された高レベル・ベースバンド・コントローラ３１２を含む。これは先に図１ａのコントローラ３３０内に含まれていたものである。先にコントローラ３３０に含まれていた、ベースバンドの残りの低レベル部分は低レベル・ベースバンド・コントローラ３３１内に含まれる。このコントローラはトランシーバ３３６と共にこのとき、本発明の一実施形態による新しい無線モジュール３４０を構成し、このモジュールが、ハーモナイズド・インターフェイスを介して、高レベル・ベースバンド・コントローラ３１２を含むバス・コントロール・ロジック３１１に結合される。
【００１８】
図１ｂの無線モジュール３４０を、ＦＣＣ（または、外国の類似の機関）によってＬＭＡおよびＤｏＣプロセスを使用して事前に認証することができ、独立したアドオン・部品としてコンピュータ・システム・メーカに、それらのシステムを接続するために販売することができる。本発明の一実施形態によれば、無線モジュール３４０はモジュール内のＩ−Ｏバッファに結合された外部アクセス可能Ｉ−Ｏポートを含む。これらの相互接続を、ホスト・コンピュータ・システムの１つまたは複数の部品に結合させて、モジュールとホスト・コンピュータ・システムの間の通信を可能にするように設計することができる。
【００１９】
図１ｂの無線モジュール３４０を設計することによって、モジュールは多数のプロトコルをサポートすることができ、それぞれが無線モジュール３４０内に含まれたベースバンド部分のあるセグメントを共有することができる。プロトコル固有のベースバンド処理がベースバンドの高レベル部分で実行され、これは、バス・コントロール・ロジック３１１に統合された高レベル・ベースバンド・コントローラ３１２によって調整される。ベースバンド・プロトコルの選択および動作を少なくとも部分的には、直接のユーザ対話を含んでも含まなくてもよい１つまたは複数のソフトウェア・プログラムによって制御することができる。これらのプログラムは少なくとも部分的にはいずれかのマシン・アクセス可能な媒体上に存在することができ、これは磁気ディスク（たとえば、ハード・ドライブまたはフロッピー（登録商標）・ディスク）、光ディスク（たとえば、ＣＤまたはＤＶＤ）、半導体デバイス（たとえば、フラッシュ、ＥＰＲＯＭまたはＲＡＭ）、または搬送波などであり、これらのすべてを集合的に図１ａ〜ｃのＩ−Ｏデバイス３２０によって表す。
【００２０】
本発明の一実施形態によれば、単一の無線モジュールは、ユーザの環境に応じて異なるプロトコルを実行することができる。たとえば、旅行中に、ユーザはモジュールを使用してブルートゥース・プロトコルを実行することができる。オフィス内で、ユーザはモジュールを使用してＩＥＥＥ  ８０２．１１プロトコルを実行することができ、在宅時に、ユーザはモジュールを使用してＳＷＡＰ／Ｈｏｍｅ−ＲＦプロトコルを実行することができる。本発明のもう１つの実施形態によれば、モジュールは他のワイヤレス通信プロトコルをサポートし、これはまた２．４ＧＨｚバンドでも動作する。別法として、モジュールを修正して、他の無線帯域で動作するワイヤレス通信プロトコルをサポートするようにすることができる。
【００２１】
本発明の一実施形態によれば、高レベル・ベースバンド・プロトコルの実行（ベースバンド処理）が、図１ｂのホスト・プロセッサ３０５によって行われ（あるいはそれによって援助され）、これを、以下に説明するリアルタイム・イベント処理をサポートするように修正することができる。別法として、高レベル・ベースバンド処理の全部または一部を、バス・コントロール・ロジック３１１内に埋め込まれたコントロール・ロジックによって実行することができる。本発明の代替実施形態では、高レベル・ベースバンド・プロトコルの実行が、ホスト・システムの周辺コントローラによって行われ（あるいはそれによって援助され）、これを以下で図１ｃに関連して説明する。
【００２２】
図１ｃのコンピュータ・システムは、プロセッサ３０５、メモリ３１５およびＩ−Ｏデバイス３２０を含み、これらがバス・コントロール・ロジック３１０を介して結合されている。加えて、埋め込みコントローラ３２５がバス・コントロール・ロジック３１０に結合される。埋め込みコントローラ３２５は、たとえば、キーボード・コントローラまたは長距離ワイヤレス・コントローラなどである。埋め込みコントローラ３２５は高レベル・ベースバンド・コントローラ３２６を含み、これは無線モジュール３４０と、ハーモナイズド・インターフェイスを介してインターフェイスをとる。図１ｃに示す本発明の実施形態は、図１ｂの実施形態より有利である。これは、図１ｃの実施形態が、プロセッサがパワーダウン（低電力）状態にあるときでさえ無線モジュールを動作させることができるからである。図１ｂの実施形態は、ホスト・プロセッサによるベースバンド処理が別々のコントローラの必要性を低減するので、これによりシステム・コストが削減されるということにおいても有利である。
【００２３】
上述の無線モジュールの機能に加えて、モジュールは、モジュールがＬＭＡをＦＣＣからインテンショナル・ラジエータとして、またその等価物を他の政府から受け取ることができる機能を含むことができる。たとえば、本発明の一実施形態によれば、加えて無線モジュールは、それ自体の基準発振器、アンテナ、ＲＦ遮蔽、バッファ付きデータ入力および電源レギュレータを含むことができる。
【００２４】
本発明の一実施形態によれば、無線モジュールとホスト・システムの部品の間の相互接続は、リボン・ケーブルなど、６インチ（約１５．２ｃｍ）以上に及ぶことができるフレキシブル・ケーブルを含むことができる。このようなケーブルの長さを他の部品に結合するために、ノートブックまたは他の移動コンピュータ・システムの蓋から、ホスト・システムのヒンジを通じてマザーボードまでの距離に及ぶように選択することができる。無線モジュールは、そのアンテナを含めて、蓋に付けることができるので有利である。
【００２５】
たとえば、図１ｄはノートブック・コンピュータ・システム４００を示し、これはヒンジ付き蓋４０５に結合されたベース４１０を含む。本発明の一実施形態によれば、コンピュータ・システムのマザーボードが、たとえばプロセッサ、チップセット（バス・コントロール・ロジック）、メイン・メモリおよび高レベル・ベースバンド・コントローラを含み、コンピュータ・システム４００のベース４１０に含まれる。コンピュータ・システムの蓋４０５は表示画面を含む。別法として、タブレットまたはハンドヘルド・コンピュータ・システムなど、代替コンピュータ・システムの蓋を表示画面または他の入力／出力機能性の有無にかかわらずいずれかの保護カバーにすることができる。
【００２６】
無線モジュール３４０を図１ｄの蓋４０５に配置することの利点は、通常の動作中に、蓋４０５が通常はコンピュータ・システムの最も高い位置として存在し、それによりワイヤレス通信の助けとなることである。図示のように、無線モジュール３４０を蓋４０５の場所４１５に、蓋４０５の最上部に、あるいはその付近に付けることができ、フレキシブル・ケーブル４２０は蓋４０５中を通じ、蓋４０５とベース４１０の間のヒンジ結合を通じて下に伸びる。次いで、ケーブル４２０の端、反対側の無線モジュール３４０をベース４１０内の部品に結合することができ、これは、ベース４１０内のマザーボードのチップセットまたはマイクロコントローラに統合することができる高レベル・ベースバンド・コントローラなどである。無線モジュール３４０およびケーブル４２０を、図１ｄでは明確にするために、蓋４０５から取外して図示していることに留意されたい。上述の実施形態によれば、無線モジュールおよびケーブルが蓋の内部に統合されるか、そうでない場合は蓋に取り付けられる。
【００２７】
（リアルタイム・イベント処理）
本明細書で使用するように、「リアルタイム」という用語は、ホスト・システムが、外部デバイスによって生成された信号に瞬時に応答することを意味するように意図されないことを注目すべきである。むしろ、「リアルタイム」という用語は、たとえば、外部デバイスとの間でワイヤレス通信リンクを信頼性を持って確立および維持することができるようにする、ホスト・システムの一部の上での十分な決定論および十分な信頼性のあるレイテンシを意味するように意図される。本発明の一実施形態では、このワイヤレス通信リンクを、ブルートゥースまたは他のワイヤレス通信プロトコルに従うものにすることができる。外部デバイスを、ホスト・システムのホスト・プロセッサの直接の制御下にない、独立したプロセッサを有する電子デバイスでもよい。
【００２８】
ワイヤレス通信リンクを外部デバイスと、ブルートゥースまたは他のワイヤレス通信プロトコルに従って確立することに関連付けるリアルタイム・イベントを処理するようにプライマリ・ホスト・プロセッサを修正することができる。従来のホスト・プロセッサをこれらのリアルタイム・イベントを処理するように修正する１つの方法は、タイマおよび高優先順位のイベント（割り込み）回路をホスト・プロセッサに含めることである。これにより、リアルタイム・カーネルが、リアルタイム属性を有していない既存のオペレーティング・システムの下部で実行可能にすることができる。リアルタイム属性を有していないオペレーティング・システムの一例にはＷｉｎｄｏｗｓ＊オペレーティング・システムが含まれ、これはＷｉｎｄｏｗｓ  ＮＴ、Ｗｉｎｄｏｗｓ  ２０００、Ｗｉｎｄｏｗｓ  ９８およびＷｉｎｄｏｗｓ  ＭＥ（Ｍｉｌｌｅｎｎｉｕｍ  Ｅｄｉｔｉｏｎ）などである。（＊商標およびブランドはそれらの各所有者の所有物である。）
【００２９】
このカーネルは、タイマをセットして、高優先順位のイベントを一定の間隔をおいて生成することができる。起動すると、リアルタイム・イベント回路は制御をリアルタイム・イベント・ハンドラ（カーネル・ソフトウェア）に移すことができ、これはリアルタイム・タスクを実行することができる。このハンドラを使用して、厳密なタイミング要件を有するワイヤレス・ベースバンド・プロトコルを処理することができる。加えて、この方法は、同じくこの高優先順位のイベントを生成することができるイベント・ピンの使用を含む。イベント・ピンをプロセッサ自体、または、チップセットなど、プロセッサに結合された外部デバイスに結合することができる。本発明の代替実施形態では、プロセッサまたは外部デバイス内に格納された状態ビットを使用して高優先順位のイベントを生成することができる。
【００３０】
この高優先順位のイベントの１つの特徴は、これが従来の割り込みに勝る、より信頼性のあるレイテンシを提供することができる高優先順位のイベントのレイテンシが、プロセッサによって実行中の他のタスクにより混乱させられるリスクを減らすことである。よって、本発明の一実施形態によれば、この高優先順位のイベントは、プロセッサにおいて最高の優先順位の割り込みの１つであるが、メモリ・エラー・ハンドリングに使用できるものなど、他の割り込みをより高い優先順位のものにすることができる。
【００３１】
本発明の一実施形態によるハードウェアおよびソフトウェアの要素を図２ａおよび２ｂにそれぞれ示す。ホスト・プロセッサ１００は、ソフトウェア・ルーチンによってセットすることができるインターバル・タイマ１０５を含む。タイマはリアルタイム・イベント回路１１０をトリガして、図２ｂの方法を実施する。別法として、インターバル・タイマ１０５はリアルタイム・イベント回路１１０をトリガして、リアルタイム・イベントが受信されているかどうかを決定するためにレジスタを読み取ることができる。もう１つの実施形態では、ホスト・プロセッサ１００は外部アクセス可能なイベント・ピン１１５を含み、これをホスト・コンピュータ・システム内で外部デバイスによって使用してリアルタイム・イベント回路１１０をトリガし、図２ｂの方法を実施することができる。
【００３２】
図２ｂの実施形態によれば、ステップ１５５でリアルタイム・イベント割り込み（ＲＥＩ）が発生するとき、ステップ１５０でプロセッサがプロセスを実行中である。このＲＥＩは、たとえば、イベント・タイマ１０５がそのセットされた時間間隔を満了するか、あるいは図２ａのホスト・プロセッサ１００のイベント・ピン１１５の起動によって生じる。ＲＥＩに応答して、ステップ１６０で、リアルタイム・イベント回路１１０がホスト・プロセッサ１００に、ステップ１５０で実行中であるプロセスを停止させ、プロセッサ状態を保存させる。プロセッサ状態を、予約済メモリ空間に保存することができる。
【００３３】
図２ｂのステップ１６５で、ホスト・プロセッサ１００はＲＥＩハンドラを呼び出し、実行する。本発明の一実施形態によれば、このＲＥＩハンドラは命令セットを含み、この命令セットはホスト・プロセッサによって実行されるとき、ホスト・プロセッサに、リアルタイム・イベントに関する情報を格納する１つまたは複数のレジスタを読み取らせる。たとえば、ホスト・プロセッサは、ワイヤレス通信を要求する外部デバイスからの、ワイヤレスに送信された識別信号の存在または不在を指示する情報を格納する、１つまたは複数のレジスタを読み取ることができる。
【００３４】
外部デバイスが存在し、通信を要求することが決定された場合、ホスト・プロセッサがこのときに外部デバイスとの通信を確立することができる（あるいは将来の通信についてのスケジュールを確立することができる）。別法として、ホスト・プロセッサはこの時間中に、上述のようなワイヤレス通信プロトコルに従ったベースバンド処理機能を実行することができる。
【００３５】
図２ｂのステップ１７０で、ＲＥＩ戻り命令が受信された後、予約済メモリ空間に格納されたプロセッサ状態をホスト・プロセッサにリストアすることができ、以前のプロセス（ステップ１５０から出たもの）を継続することができる。上述のハードウェアおよびソフトウェアをＯＳのサポートの有無にかかわらず実施できることに留意されたい。
【００３６】
本発明の代替実施形態によれば、リアルタイム・イベント処理を、プライマリ・ホスト・プロセッサに統合されたセカンダリ非対称プロセッサ（ＮＳＰ）を介して実施することができる。この実施形態では、ＮＳＰが、リアルタイム機能性をサポートしていないプライマリ・ホスト・プロセッサによって実行されたプライマリＯＳから分離したリアルタイム処理をサポートするＯＳを実行することができる。この実施形態によれば、次いでＮＳＰがベースバンド処理機能を、上述のようにワイヤレス通信プロトコルに従って実行することができると同時に、プライマリ・プロセッサはホスト・プロセッサの通常の作業をコンピュータ・システムの残りの部分のために実行する。
【００３７】
図３は、本発明の一実施形態により形成されたホスト・プロセッサ２００を含み、ここではＮＳＰコア２１０がプライマリ・ホスト・プロセッサ・コア２０５と共に統合されている。本発明の一実施形態によれば、ＮＳＰコアが、プライマリ・ホスト・プロセッサ・コアと同じ半導体基板上に統合されて、単一のプロセッサが形成される。コストを削減するため、プライマリ・ホスト・プロセッサ・コア２０５およびＮＳＰコア２１０はＬ２キャッシュ２１５を共有し、両方のプロセッサ・コアはバス・ユニット２１５を介して、ホスト・コンピュータ・システムの共有されたメモリ・サブシステム２２０に通信することができる。両方のコアは加えて他のシステム・リソースを共有することができる。
【００３８】
本発明の一実施形態によれば、ＮＳＰコアおよびプライマリ・ホスト・プロセッサ・コアは、命令セット・アーキテクチャ（ＩＳＡ）を共有する。本発明の代替実施形態では、ＮＳＰおよびプライマリ・ホスト・プロセッサ・コアがＩＳＡを共有しない。
【００３９】
本発明を、その特定の例示的実施形態を参照して説明した。しかし、この開示を利用できる人々には、本発明のより幅広い精神および範囲から逸脱することなく、さまざまな修正および変更をこれらの実施形態に行うことができることは明らかであろう。したがって、明細書および図面は、制限的な意味ではなく例示的な意味において考慮されるべきである。
【図面の簡単な説明】
【００４０】
【図１ａ】本発明の実施形態により形成されたシステムの図である。
【図１ｂ】本発明の実施形態により形成されたシステムの図である。
【図１ｃ】本発明の実施形態により形成されたシステムの図である。
【図１ｄ】本発明の実施形態により形成されたシステムの図である。
【図２】本発明の一実施形態により形成されたプロセッサの図（ａ）と本発明の方法を示す流れ図（ｂ）である。
【図３】本発明の代替実施形態により形成されたコンピュータ・システムの図である。
【図１ａ】
2005505153.tif 000003
【図１ｂ】
2005505153.tif 000004
【図１ｃ】
2005505153.tif 000005
【図１ｄ】
2005505153.tif 000006
【図２】
2005505153.tif 000007
【図３】
2005505153.tif 000008
【国際公開パンフレット】
2005505153.tif 000009
2005505153.tif 000010
2005505153.tif 000011
2005505153.tif 000012
2005505153.tif 000013
2005505153.tif 000014
2005505153.tif 000015
2005505153.tif 000016
2005505153.tif 000017
2005505153.tif 000018
2005505153.tif 000019
2005505153.tif 000020
2005505153.tif 000021
2005505153.tif 000022
2005505153.tif 000023
2005505153.tif 000024
2005505153.tif 000025
2005505153.tif 000026
2005505153.tif 000027
2005505153.tif 000028
2005505153.tif 000029
2005505153.tif 000030
2005505153.tif 000031
2005505153.tif 000032
2005505153.tif 000033
2005505153.tif 000034
【国際公開パンフレット（コレクトバージョン）】
2005505153.tif 000035
2005505153.tif 000036
【国際調査報告】
2005505153.tif 000037
2005505153.tif 000038
2005505153.tif 000039