(57)【特許請求の範囲】
【請求項１】
ホストプロセッサと、
第2のプロセッサと、
1つのゲームポートを備えたジョイスティックインターフェイスとを含むシステムにおいて、
該ホストプロセッサがスリープモードにある間でも、該第2のプロセッサは、該ジョイスティックインターフェイスに接続されたジョイスティックの位置の変化を検知し、
該第2のプロセッサは、該ジョイスティックの位置の変動を検知した後、該ホストプロセッサにおいてウェイクアップ手順を開始するシステム。
【請求項２】
ゲームポートインターフェイスであって、
該ゲームポートインターフェイスとインターフェイスで接続している１つのジョイスティックの状態の変化を検知するタイミング回路と、
該ジョイスティックの状態への第１のプロセッサによるアクセスを提供する第１のデータバスインターフェイスと、
該ジョイスティックの状態への第２のプロセッサによるアクセスを提供する第２のデータバスインターフェイスとを含み、
該第２のプロセッサは、該ジョイスティックの状態が変化した場合には、スリープモードからウェイクアップモードに状態遷移するゲームポートインターフェイス。
【請求項３】
請求項２に記載のゲームポートインターフェイスにおいて、該第１のデータバスインターフェイスは、該第２のデータバスインターフェイスとの通信パスを有し、該第２のプロセッサから該第１のプロセッサへの通信が可能となるゲームポートインターフェイス。
【請求項４】
請求項２に記載のゲームポートインターフェイスにおいて、該第２のプロセッサは、デジタル信号プロセッサであるゲームポートインターフェイス。
【請求項５】
請求項２に記載のゲームポートインターフェイスにおいて、
該第１のプロセッサからの第１ポーリング信号と、該第２のプロセッサからの第２ポーリング信号の一方が、該ゲームポートインターフェイスをトリガーさせるようにする論理回路をさらに含むゲームポートインターフェイス。
【請求項６】
ジョイスティックを備えたゲームポートインターフェイスをポーリングする方法であって、
ホストプロセッサがスリープモードのある間に、ゲームポートのジョイスティックインターフェイスに接続された該ジョイスティックの位置の変化を検知し、該ジョイスティックの位置の該変化を検知した場合には、該ホストプロセッサ内でウェイクアップ手順を開始するように第2のプロセッサを適応させるステップと、
該ホストプロセッサを低パワーモードにするステップと、
該第２のプロセッサから該ゲームポートの該ジョイスティックインターフェイスをポーリングするステップとを含む方法。
【請求項７】
請求項６に記載の方法において、
該ゲームポートの該ジョイスティックインターフェイスを該ホストプロセッサからポーリングするステップをさらに含む方法。
【請求項８】
請求項７に記載の方法において、
該低パワーモードは、該ホストプロセッサから該ジョイスティックへのポーリングを中止させる方法。
【請求項９】
請求項７に記載の方法において、
該第２プロセッサを低パワーモードにおくステップをさらに含む方法。
【請求項１０】
ジョイスティックを備えたゲームポートインターフェイスをポーリングする装置であって、
ホストプロセッサがスリープモードにある間に、ゲームポートのジョイスティックインターフェイスに接続された該ジョイスティックの位置の変化を検知し、該ジョイスティックの位置の該変化を検知した場合には、該ホストプロセッサ内でウェイクアップ手順を開始するように該第２のプロセッサを適応させる手段と、
該ホストプロセッサを低パワーモードにする手段と、
該第２のプロセッサから該ゲームポートの該ジョイスティックインターフェイスをポーリングする手段とを含む装置。
【請求項１１】
請求項１０に記載の装置において、
該ゲームポートの該ジョイスティックインターフェイスを該ホストプロセッサからポーリングする手段をさらに含む装置。
【請求項１２】
請求項１１に記載の装置において、該低パワーモードは、該ホストプロセッサから該ジョイスティックへのポーリングを中止させる装置。
【請求項１３】
請求項１１に記載の装置において、
該第２のプロセッサを低パワーモードにする手段をさらに含む装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータに関し、特に通常は低パワーモードにあり、外部入力によりこの低パワーモードから切り替えることのできるプロセッサを含むシステムに関する。
【０００２】
【従来の技術】
パソコン（ＰＣ）等の多くのコンピュータは、例えばジョイスティックとインタフェースする、ゲームポートインタフェースを有している。
【０００３】
例えば、図２は、従来のゲームポートインタフェース４５０とインタフェースする従来のジョイスティックデバイス４００を表すブロック図である。この従来のゲームポートインタフェース４５０は、例えばデータバス４８を用いて、システム内の他のデバイスからアクセスされる。
【０００４】
この従来のゲームポートインタフェース４５０は、５５８クワッドタイマ（５５８  ｑｕａｄ  ｔｉｍｅｒ）４６０とインタフェース論理装置と、例えばＩＳＡインタフェース４７０のようなバスインタフェースを構成する３状態バッファ装置を有する。
【０００５】
従来のジョイスティックは、ｘ軸方向とｙ軸方向にそれぞれ１つずつ、２つの可変抵抗を有している。この各可変抵抗は、ジョイスティックの位置の変化により抵抗値を変える。あるジョイスティックのデバイスは、複数のジョイスティックを有する。図１に示すような例えば、従来構成である４軸のジョイスティック４００は、２つのジョイスティックを含む。
【０００６】
従来のゲームポートインタフェース４５０は、従来のジョイスティックデバイス４００の可変抵抗とそれぞれ並列に配列されたキャパシタを有する。このため、それぞれの時定数Ｔ＝ＲＣが従来のジョイスティックデバイス４００内の各可変抵抗とそれぞれのキャパシタとの間で形成される。従来のジョイスティックデバイス４００内の各ジョイスティックが位置を変えると、可変抵抗とキャパシタの並列接続により形成された時定数も変化する。
【０００７】
５５８クワッドタイマ４６０は１個のパッケージ内に４個のタイマを有する。５５８クワッドタイマ４６０内のこのすべての４個のタイマは、従来のジョイスティックデバイス４００の４個の可変抵抗用に用いられる。別法として、４個の５５５タイマを組み合わせて、等価のタイマ素子を形成することもできる。同様に、２軸のジョイスティック装置は、５５８クワッドタイマ内で、４個の利用可能なタイマのうち、２個のタイマのみを用いてもよく、またあるいは２個の５５５タイマのみを用いてもよい。
【０００８】
図３はゲームポートインタフェース内のタイマのそれぞれの位置の動作を示すタイミング図である。
【０００９】
図３の波形に示すように、５５８クワッドタイマ４６０内の各タイマは、ファイヤイネーブル信号４６１により通常動作時にトリガーされる。例えば、ＩＳＡバス４８０を介してホストプロセッサにより初期化（開始）される（図２）。ファイヤイネーブル信号４６１はそれぞれのタイマをリセットして、関連する軸の従来のジョイスティックデバイス４００の位置の測定を開始する。
【００１０】
図３の波形は、波形（ａ）に示すファイヤイネーブル信号４６１によりイネーブルされ（たすなわちトリガー）された５５８クワッドタイマ４６０により出力されたパルスすなわちデータ信号４６３を示す。このデータ信号４６３の長さ４８８は、ジョイスティックデバイス４００の関連軸の可変抵抗の現在の値と、この可変抵抗に並列に接続されたキャパシタの値から得られたＲＣ時定数に対応している。かくして、図３はデータ信号４６３の幅はジョイスティックの位置を表している。
【００１１】
図４は、パソコン（ＰＣ）のようなコンピュータ内の従来のゲームポートインタフェース４５０の詳細ブロック図である。
【００１２】
この従来のゲームポートインタフェース４５０は、５５８クワッドタイマ４６０と従来のジョイスティックデバイス４００の４本の軸に対応する４本の入力ラインにそれぞれ接続されるキャパシタ６２２〜６２８を有する。直列接続された抵抗６３２〜６３８は、５５８クワッドタイマ４６０への入力にかかる短絡状態を回避する。図４の従来のジョイスティックデバイス４００は、４軸の動きすなわち２本のジョイスティックと、この２本のジョイスティックのそれぞれに関連する２個のボタンとを有する。
【００１３】
従来のゲームポートインタフェース４５０は、さらにＩＳＡバスインタフェースのようなＩＳＡインタフェース４７０を有する。このＩＳＡインタフェース４７０は、アドレスデコーダ６６２とデータラッチ６６４とを有する。このアドレスデコーダ６６２は、ファイヤ（ＦＩＲＥ）信号６６１を５５８クワッドタイマ４６０に、そしてイネーブル（ＥＮＡＢＬＥ）信号６６５をデータラッチ６６４に与える。抵抗６０２〜６０８は、従来のジョイスティックデバイス４００が従来のゲームポートインタフェース４５０に接続されていないときに、データラッチ６６４へのフローティング入力を阻止し、一方、キャパシタ６１２〜６１８は、データラッチ６６４への信号のスパイクを阻止するようなフィルタ機構を提供する。
【００１４】
パワー（バッテリーパワー）を節約するために、コンピュータあるいは他のプロセッサシステム（特にラップトップコンピュータ等）は、不使用期間中はパワーダウンモードに入る。従来のゲームポートインタフェースは、コンピュータまたはプロセッサシステムによりトリガーされるが、これではコンピュータまたはプロセッサシステムが低パワーモード（すなわちパワーダウンモード）にある間は、ジョイスティックの動きを検出することはできない。従来、ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｃｅｉｖｅｒ  Ｔｒａｎｓｍｉｔｔｅｒ）のような外部素子は、プロセッサ６０１と通信して、プロセッサ６０１をパワーダウンモードから切り替える。しかしこれには従来のジョイスティックデバイス４００以外にユーザによる動作が必要とされ時間を浪費したり、ユーザの必要とされる作業を増やすことになる。
【００１５】
例えば、図４のプロセッサ６０１は、ファイヤイネーブル信号６６１が５５８クワッドタイマ４６０をトリガーさせることにより、通常動作時にＩＳＡバス４８０を介して従来のジョイスティックデバイス４００へのアクセスとポーリングを行う。しかし、プロセッサ６０１がパワーダウンモードにある間は、５５８クワッドタイマ４６０はファイヤイネーブル信号６６１を受信することはできない。
【００１６】
【発明が解決しようとする課題】
従って、本発明の目的は、ジョイスティックがプロセッサを低パワーモード（パワーダウンモード）からウェイクアップさせるようなインタフェースと方法を提供することである。
【００１７】
【課題を解決するための手段】
本発明のシステムは、ジョイスティックインタフェースを有するプロセッサと、このジョイスティックインタフェースに接続されたジョイスティックとを有する。このプロセッサは、スリープモード（あるいは、低パワーモード、パワーダウンモード）にあるときでもジョイスティックの位置の変化を検出でき、かつ、ジョイスティックの位置の変化を検出すると、プロセッサをウェイクアップさせる。
【００１８】
本発明の他の態様では、本発明のゲームポートインタフェースは、ゲームポートインタフェースとインタフェースする外部装置の状態の変化を検出するタイミング回路を有する。第１データバスインタフェースが、外部装置の状態への第１プロセッサのアクセスを提供し、第２データバスインタフェースが、外部装置の状態に第２プロセッサのアクセスを提供する。
【００１９】
本発明によるゲームポートインタフェースのポーリング方法は、第１プロセッサからゲームポートインタフェースをポーリングするステップを含む。第１プロセッサは、低パワーモードにされ、ゲームポートインタフェースは第２プロセッサからポーリングされる。
【００２０】
【発明の実施の形態】
従来のコンピュータはまたホストプロセッサは、ジョイスティックの使用中には、低パワーモードから効率的にウェイクアップできない。その理由は、通常ジョイスティックをポーリングするコンピュータ即ちホストプロセッサがスリープ状態にあるからである。本発明では、この従来のコンピュータ即ちホストプロセッサに加えて、第２プロセッサインタフェースを有するゲームポートインタフェースを提供し、その結果第２プロセッサは、コントローラ即ちホストプロセッサが低パワーモードにある間でも、ジョイスティックをポーリングすることができる。かくして、第２プロセッサは、ホストプロセッサが低パワーモードにある間でもゲームポートインタフェースをポーリングすることができ、ジョイスティックの動きを認識して、コントローラ即ちホストプロセッサのウェイクアップシーケンスを開始させる。この付属のプロセッサインタフェースにより、第２プロセッサは、ジョイスティックをポーリングできるが、これはジョイスティックの通常の動作とはインタフェースすることなく行うことができる。かくして、本発明により、コントローラまたはホストプロセッサを低パワーモードにしておきながら、同時にジョイスティックの動きにより、ホストプロセッサのウェイクアップシーケンスを開始させる手段が得られる。
【００２１】
図１において、ゲームポートインタフェース１５０は、ＩＳＡインタフェース４７０のようなバスインタフェースを有し、これによりジョイスティックの位置をポーリングし読み出すことが可能となる。しかし、本発明によれば、ゲームポートインタフェースのトリガーに対する第２のアクセスパスが与えられる。第２のアクセスパスを有する。図１の実施例においては、５５８クワッドタイマ４６０からのデータバス１５７は、ＩＳＡインタフェース４７０への第１データバス１５７ａと、コントローラ１５４への第２データバス１５７ｂとを有する。このプロセッサの例としては、マイクロコントローラ、マイクロプロセッサ、デジタル信号プロセッサである。第１データバス１５７ａおよび／または第２データバス１５７ｂは、第１データバス１５７ａから第２データバス１５７ｂを切り離す３状態バッファのような適宜のバス制御論理装置を有する。
【００２２】
本発明は、例えばＯＲゲート１５２のような論理装置を有し、これにより、ＩＳＡインタフェース４７０を介して開始される第１ファイアイネーブル信号１６１ａを用いて、従来方法により、あるいは第２プロセッサであるコノトローラ１５４からの第２ファイアイネーブル信号１６１ｂを用いるかのいずれかにより、ゲームポートインタフェース１５０をトリガーすることができる。かくしてＯＲゲート１５２により、第１プロセッサがＩＳＡインタフェース４７０を介してゲームポートインタフェース１５０をポーリングするか、第２プロセッサであるコノトローラ１５４がゲームポートインタフェース１５０を直接ポーリングすることができる。
【００２３】
コントローラ１５４のパワーを節約するために、可能ならばコントローラ１５４は低速モードで動作してもよい。かくして、コントローラ１５４は、第１プロセッサがＩＳＡバス１８２を用いて、低パワーモード（すなわち中止モード）にあるときには、コントローラ１５４もまた低パワーモードにあるが、ゲームポートインタフェースのトリガーに直接アクセスできるコントローラ１５４は、従来のゲームポートインタフェース４５０内のジョイスティックが動いたか否かを決定するために、ゲームポートインタフェース１５０へ時々ポーリングする。
【００２４】
コントローラ１５４が従来のジョイスティックデバイス４００内のジョイスティックの動きを検出すると、このコントローラ１５４は、第１プロセッサとＩＳＡインタフェース４７０とＩＳＡバス１８２を用いて通信をして、第１プロセッサのウェイクアップシーケンスを開始させる。
【００２５】
【発明の効果】
かくして、本発明によれば、ＩＳＡバスを用いて従来のプロセッサがファイヤイネーブル信号を生成し、そして、ゲームポートインタフェースをポーリングするか、あるいはゲームポートインタフェースに直接アクセスできる第２プロセッサ１５４が、ファイヤイネーブル信号を生成することができる。さらにまた、第１と第２のいずれかのプロセッサは、ゲームポートインタフェースから互いに干渉することなくデータを読み出すことができる。第２プロセッサが、ジョイスティックの位置を読みとると、第２プロセッサは、動きが発生したか否かを決定して、低パワーモードにある第１プロセッサを移行させるために、何らかの措置を取ることができる。
【図面の簡単な説明】
【図１】本発明によるジョイスティックインタフェースの一実施例を表すブロック図。
【図２】従来のジョイスティックインタフェースを表すブロック図。
【図３】図１のジョイスティックインタフェースの動作を表すタイミング図。
【図４】パソコン（ＰＣ）のようなコンピュータ内での、従来のゲームポートインタフェースを表すブロック図。
【符号の説明】
１５０  ゲームポートインタフェース
１５２  ＯＲゲート
１５４  コントローラ
１５７  データバス
１５７ａ  第１データバス
１５７ｂ  第２データバス
１６１ａ  第１ファイヤイネーブル信号
１６１ｂ  第２ファイヤイネーブル信号
１８２  ＩＳＡバス
４００  従来のジョイスティックデバイス
４５０  従来のゲームポートインタフェース
４６０  ５５８クワッドタイマ
４６１  ファイヤイネーブル信号
４６３  データ信号
４７０  ＩＳＡインタフェース
４８０  ＩＳＡバス
４８８  長さ
６０１  プロセッサ
６０２〜６０８  抵抗
６１２〜６１８  キャパシタ
６２２〜６２８  キャパシタ
６３２〜６３８  抵抗
６６１  ファイヤイネーブル信号
６６２  アドレスデコーダ
６６４  データラッチ
６６５  イネーブル信号
【図１】
0003604962.tif 000002
【図２】
0003604962.tif 000003
【図３】
0003604962.tif 000004
【図４】
0003604962.tif 000005