特許第5989758号(P5989758)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マイクロソフト テクノロジー ライセンシング,エルエルシーの特許一覧

特許5989758シンプルペリフェラルバスを利用するシステム及び方法
<>
  • 特許5989758-シンプルペリフェラルバスを利用するシステム及び方法 図000002
  • 特許5989758-シンプルペリフェラルバスを利用するシステム及び方法 図000003
  • 特許5989758-シンプルペリフェラルバスを利用するシステム及び方法 図000004
  • 特許5989758-シンプルペリフェラルバスを利用するシステム及び方法 図000005
  • 特許5989758-シンプルペリフェラルバスを利用するシステム及び方法 図000006
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5989758
(24)【登録日】2016年8月19日
(45)【発行日】2016年9月7日
(54)【発明の名称】シンプルペリフェラルバスを利用するシステム及び方法
(51)【国際特許分類】
   G06F 13/38 20060101AFI20160825BHJP
   G06F 13/36 20060101ALI20160825BHJP
   G06F 13/42 20060101ALI20160825BHJP
【FI】
   G06F13/38 350
   G06F13/36 310E
   G06F13/42 310
【請求項の数】10
【全頁数】14
(21)【出願番号】特願2014-501133(P2014-501133)
(86)(22)【出願日】2012年3月11日
(65)【公表番号】特表2014-514640(P2014-514640A)
(43)【公表日】2014年6月19日
(86)【国際出願番号】US2012028666
(87)【国際公開番号】WO2012128977
(87)【国際公開日】20120927
【審査請求日】2015年2月17日
(31)【優先権主張番号】13/053,104
(32)【優先日】2011年3月21日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】314015767
【氏名又は名称】マイクロソフト テクノロジー ライセンシング,エルエルシー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】ベサニア,フィルドシュ ケイ.
(72)【発明者】
【氏名】アイヤール,アルヴィンド アール.
(72)【発明者】
【氏名】アウル,ランダル イー.
(72)【発明者】
【氏名】アブザリアン,デイヴィッド
【審査官】 木村 雅也
(56)【参考文献】
【文献】 米国特許出願公開第2006/0015669(US,A1)
【文献】 特開2006−024155(JP,A)
【文献】 特開2007−124517(JP,A)
【文献】 国際公開第2010/142065(WO,A1)
【文献】 特表2010−537588(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 13/38
G06F 13/36
G06F 13/42
(57)【特許請求の範囲】
【請求項1】
コンピュータシステム内の要素同士の間でデータ通信を行う集積回路間(I2C)データバスとして形成されたシンプルペリフェラルバス(SPB)と、
HID-SPBインタフェースと共に実現されたペリフェラルセンサであって、前記ペリフェラルセンサの各々は、前記シンプルペリフェラルバスを介して、HIDデータフォーマットでのペリフェラル装置と前記コンピュータシステムとの間インタフェースを為すように形成される、ペリフェラルセンサと
を有するシステム。
【請求項2】
前記ペリフェラルセンサが、前記コンピュータシステム内の前記ペリフェラル装置の独自機能についての拡張データを前記シンプルペリフェラルバスを介して通信するように更に形成されている、請求項1に記載のシステム。
【請求項3】
前記ペリフェラルセンサが、前記コンピュータシステムに対して前記ペリフェラル装置はHID対応装置であることを示し、かつ前記ペリフェラル装置のコンフィギュレーションを決定するように更に形成されている、請求項1に記載のシステム。
【請求項4】
前記ペリフェラルセンサが、HIDレポートプロトコルを用いて、前記ペリフェラル装置から前記コンピュータシステムへ及び前記コンピュータシステムから前記ペリフェラル装置への双方向通信を行うように更に形成されている、請求項1に記載のシステム。
【請求項5】
前記ペリフェラルセンサがHIDデータ構造としてデータをシンプルペリフェラルバスを介して通信するように更に形成されている、請求項1に記載のシステム。
【請求項6】
ペリフェラルセンサとHIDソフトウェアスタックとの間でHIDデータを通信するように形成されたSPBドライバを更に有する請求項1に記載のシステム。
【請求項7】
コンピュータにより実行される方法であって、
ペリフェラルセンサが、ペリフェラル装置から入力を受信するステップであって、前記ペリフェラルセンサは、HID-SPBインタフェースを実現し、集積回路間(I2C)データバスとして形成されたシンプルペリフェラルバス(SPB)を介して、HIDデータフォーマットでの前記ペリフェラル装置とコンピュータシステムとの間インタフェースを為す、ステップと、
前記ペリフェラルセンサが、前記ペリフェラル装置の独自機能についての拡張データを受信するステップと、
前記コンピュータシステムにおいて、前記ペリフェラル装置からの前記入力と前記拡張データとを前記HIDデータフォーマットで前記シンプルペリフェラルバスを介して通信するステップと
を有する方法。
【請求項8】
前記コンピュータシステムに対して前記ペリフェラル装置がHID対応装置であることを通知するステップを更に有する請求項に記載の方法。
【請求項9】
前記ペリフェラル装置のコンフィギュレーションを決定するステップを更に有する請求項8に記載の方法。
【請求項10】
請求項7ないし9のうち何れか1項に記載の方法を前記コンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
実施の形態はシンプルペリフェラルバスを利用するシステム及び方法等に関連する。
【背景技術】
【0002】
セルラ電話機、メディアプレーヤ及びタブレットコンピュータ等のようなコンピュータ装置は、典型的には、集積回路間通信データバス(I2C二重ワイヤのインタフェースバス)及び/又はシリアルペリフェラルインタフェース(Serial Peripheral Interface:SPI)バスのようなシンプルペリフェラルバス(Simple Peripheral Bus:SPB)を介して相互に接続された周辺装置のためのプラットフォームを利用することができる。しかしながら、これらのシンプルペリフェラルバスは、タッチスクリーンディスプレイ、キーボード、マウス入力装置、センサ及びその他のHIDクラス装置(HID class devices)等のような装置を動作させる明確な又は確定した標準規格を有していない。これらのペリフェラル装置又は周辺装置の製造業者は、通常、ペリフェラルのために独自のドライバ(proprietary driver)を用意する。なぜなら、これらのHIDクラス装置がシンプルペリフェラルバスを介して通信するための標準的なプロトコルが存在しないからである。コンピュータシステムは、いくつもの異なる第三者製造業者及びハードウェアベンダによる内部で(相互に)接続されたペリフェラルを含むかもしれない。対応するドライバは異なるインタフェースを有することになり、これは、システムの統合化の課題を招き、システム品質の課題や安定性の問題を招き、及び/又は統合されたシステムドライバの更新及びドライバの変更を実行する能力を制限してしまう。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】韓国出願公開第10−2005−00655649号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
実施の形態による課題は、シンプルペリフェラルバスを利用する改善されたシステム及び方法等を提供することである。
【課題を解決するための手段】
【0005】
実施の形態によるシステムは、
通信システム内の要素同士の間でデータ通信を行うように形成されたシンプルペリフェラルバス(SPB)と、
HID-SPBインタフェースと共に実現されたペリフェラルセンサであって、前記ペリフェラルセンサの各々は、ペリフェラル装置とコンピュータ装置との間で、HIDデータフォーマットによる前記シンプルペリフェラルバスを介したインタフェースとして機能するように形成されている、ペリフェラルセンサと
を有するシステムである。
【図面の簡単な説明】
【0006】
図1】シンプルペリフェラルバスを介したHIDの実施の形態を利用することが可能なシステムの一例を示す図。
図2】シンプルペリフェラルバスを介したHIDの実施の形態を利用することが可能なシステムオンチップ(SoC)の一例を示す図。
図3】1つ以上の実施の形態によるシンプルペリフェラルバスを介したHIDに関する方法の一例を示す図。
図4】1つ以上の実施の形態によるシンプルペリフェラルバスを介したHIDに関する方法の一例を示す図。
図5】シンプルペリフェラルバスを介したHIDの実施の形態を利用することが可能な装置例の様々な要素を示す図。
【発明を実施するための形態】
【0007】
<実施の形態の概要>
この「実施の形態の概要」の欄は、シンプルペリフェラルバスを介するヒューマンインタフェースデバイス(Human Interface Device:HID)の簡易な概念を提供し、その概念は以下の詳細な説明により及び/又は添付図面を参照しながら更に説明される。この「実施の形態の概要」の欄は、請求項に記載された事項の本質的特徴を説明しているように解釈すべきでなく、請求項に記載された事項の範囲を決定するためにも限定するためにも使用すべきでない。
【0008】
シンプルペリフェラルバスにおけるHIDに関する実施の形態が説明される。実施の形態において、ペリフェラルセンサはペリフェラル装置又は周辺装置からの入力を受信し、ペリフェラルセンサは、ペリフェラル装置がシンプルペリフェラルバス(SPB)によりHIDデータフォーマットでコンピュータシステムと通信するように(インタフェースとして機能するように)、HID-SPBを実現する。データはシンプルペリフェラルバス(SPB)を介してHIDデータ構造として通信され、シンプルペリフェラルバス(SPB)はI2Cデータバス、シリアルペリフェラルインタフェース(SPI)データバス、又はその他のタイプのシンプルペリフェラルバス等であってもよい。ペリフェラルセンサは、ペリフェラル装置の独自の機能(proprietary function)についての拡張データも受信し、ペリフェラル装置からの入力や拡張データ等をコンピュータシステムのシンプルペリフェラルバスを介して通信する。ペリフェラルセンサは、コンピュータシステムに対してペリフェラル装置がHID対応装置(HID compatible device)であることを通知する。ペリフェラルセンサは、ペリフェラル装置のコンフィギュレーション又は設定を決定することが可能であり、コンフィギュレーションデータをコンピュータシステムからペリフェラル装置へ通知することも可能である。ペリフェラル装置とコンピュータシステムとの間のデータ通信は、シンプルペリフェラルバスによりペリフェラルセンサを介して双方向に行われる。或いは、ペリフェラル装置とコンピュータシステムとの間のデータ通信が双方向で行われる一方、ペリフェラルセンサとペリフェラル装置との間の通信は一方向で行われてもよい。
【0009】
別の実施の形態において、ペリフェラルセンサはセンサデータを生成することが可能であり、ペリフェラルセンサのHID-SPBインタフェースは、シンプルペリフェラルバス(SPB)を介したペリフェラルセンサとコンピュータシステムとの間のインタフェースとなることが可能である。そして、ペリフェラルセンサは、センサデータだけでなくペリフェラルセンサの独自機能の拡張データをも、HIDデータフォーマットでシンプルペリフェラルバスを介してコンピュータシステムと通信することが可能である。ペリフェラルセンサは、コンピュータシステムに対してそのセンサがHID対応装置であることを通知する。ペリフェラル装置は、コンフィギュレーション情報を通信することが可能であり、かつコンピュータシステムからコンフィギュレーションデータを受信し、ペリフェラルセンサを設定することが可能である。
【0010】
<実施の形態の詳細な説明>
以下、シンプルペリフェラルバスを介したHIDの実施の形態を添付図面を参照しながら説明する。図中、図示されている同様な特徴及び要素を示すために同じ番号が使用されているかもしれない。
【0011】
シンプルペリフェラルバスを介したHIDの実施の形態が説明され、本実施の形態はシンプルペリフェラルバス(SPB)を介してHID装置がコンピュータ装置と通信するためのプロトコルを提供し、シンプルペリフェラルバス(SPB)は、例えば、集積回路間通信(I2C二重ワイヤインタフェース)データバス、シリアルペリフェラルインタフェース(SPI)データバス、又はその他のシンプルペリフェラルバス等である。HID-SPBインタフェースは拡張アプリケーション(extensibility application)と共にペリフェラルセンサの中で実現され、センサ及び/又はペリフェラル装置と通信システムとの間のインタフェースとしての機能を発揮する。一実施形態において、ペリフェラルセンサは、温度計、加速度計、ジャイロスコープ、コンパス又はその他のタイプのセンサ等のようなセンサとして実現されてよい。代替的な実施の形態では、ペリフェラルセンサは、ペリフェラル装置とコンピュータシステムとの間でHIDデータフォーマットでシンプルペリフェラルバス(SPB)を介して通信するためのインタフェースとして実現することが可能である。ペリフェラルセンサを介して通信するペリフェラル装置は、タブレットコンピュータのタッチ画面等のようなタッチパネル、及びキーボードやマウス入力装置等のようなコンピュータ入力装置を含んでもよい。ペリフェラルセンサにおけるHID-SPBインタフェースは、センサ及び/又はペリフェラル装置と通信システムとの間の通信のインタフェースとして機能する。
【0012】
シンプルペリフェラルバスを介したHIDの特徴及び概念は、任意の数の様々な装置、システム、環境、ネットワーク及び/又は設定により実現できるが、以下に示すような具体的な装置、システム及び方法の観点から、シンプルペリフェラルバスを介したHIDの実施の形態を説明する。
【0013】
図1は、シンプルペリフェラルバスを介したHIDの実施の形態を利用することが可能なシステムの一例100を示す。システムは任意のタイプのコンピュータ装置で実現可能なコンピュータシステム102を含み、コンピュータ装置は例えばコンピュータ、サーバ、通信装置、携帯装置、タブレットコンピュータ、セルラ電話機、ナビゲーション装置、メディアプレーヤ、ゲーム装置等である。一実施形態において、コンピュータシステムは図2に示されている例を参照しながら説明されるようなシステムオンチップ(System-On-Chip:SoC)であってもよく、例えばX86タイプPCや適切な他の如何なるコンピュータ設計により実現されてもよい。コンピュータシステム102を含むコンピュータ装置は様々な要素と共に実現することが可能であり、様々な要素は、例えば1つ以上のプロセッサ及びメモリ装置だけでなく、図5に示されている装置例を参照しながら更に説明するような任意の数の様々な要素の任意の組み合わせであってもよい。更に、コンピュータシステムは図2に示されているSoCの例を参照しながら更に説明するような追加的な要素と共に実現することが可能である。
【0014】
コンピュータシステム102は、I2Cデータバス、シリアルペリフェラルインタフェース(SPI)データバス、又は他のタイプの低電力シンプルペリフェラルバス等のようなシンプルペリフェラルバス(SPB)104を含む。システム例100はペリフェラルセンサ106として表現されているペリフェラルセンサも含み、ペリフェラルセンサ106は拡張アプリケーション110と共にHID-SPBインタフェース108も実現している。HID-SPBインタフェースはセンサ及びペリフェラル装置(例えば、ヒューマンインタフェース装置(Human Interface Device:HID))とコンピュータシステムとの間のインタフェースとして機能することが可能である。一実施形態において、ペリフェラルセンサ112は、温度計、加速度計、ジャイロスコープ、コンパス又はその他のタイプのセンサのようなセンサとして実現できる。ペリフェラルセンサ112のHID-SPBインタフェース108は、シンプルペリフェラルバスを介したペリフェラルセンサとコンピュータシステムとの間のインタフェースとして機能する。
【0015】
代替的な実施の形態において、ペリフェラルセンサのHID-SPBインタフェース108は、ペリフェラル装置とコンピュータシステム102との間でHIDデータフォーマットでシンプルペリフェラルバス(SPB)104を介して通信するインタフェースとして機能するように実現できる。データはシンプルペリフェラルバスを介してHIDデータ構造として通信される。例えば、ペリフェラルセンサ114は、タブレットコンピュータのタッチスクリーンディスプレイ等のようなタッチパネル116とコンピュータシステムとの間のシンプルペリフェラルバスを介した通信のインタフェースとして機能する。別の例では、ペリフェラルセンサ118は、キーボードやマウス入力装置等のようなコンピュータ入力装置とコンピュータシステムとの間のシンプルペリフェラルバスを介したインタフェースとして機能する。
【0016】
ペリフェラルセンサ118はシンプルペリフェラルバスを介したセンサとコンピュータシステムとの間のインタフェースとして機能してもよい。例えば、ペリフェラルセンサはHIDデータの形式でI2Cインタフェースを介してセンサ出力をブリッジする(橋渡しする)ように実現される。装置の製造業者は、HIDによるその機能部を露出する(見せる)ように装置(例えば、タッチパネル、入力装置、センサ等)を実現することができる。例えば、タッチスクリーンコントローラは、アナログセンサであってもよいタッチセンサをそのまま読み取り、CPUに通知するディジタル信号を生成するように実現できる。これらのタイプのコントローラはHIDプロトコルによりタッチデータ(touch data)をCPUに見せるようにアップデートされることが可能である。
【0017】
この例の場合、コンピュータシステム102のソフトウェアスタックは、センサスタック122、入力スタック124及びHIDソフトウェアスタック126を含む。通信システムは、SPBドライバ128だけでなく、I2Cコントローラドライバ130やSPIコントローラドライバ132も含んでいる。実施の形態では、(例えば、ペリフェラルセンサ112、114及び118等のような)ペリフェラルセンサ106の各々はHID-SPBインタフェース108を含み、I2Cコントローラとやり取りを行うSPBドライバは、ペリフェラルセンサとHIDソフトウェアスタックとの間でHIDデータを通信するように実現される。
【0018】
ペリフェラルセンサ106のHID-SPBインタフェース108及び拡張アプリケーション110は、ファームウェアのようなコンピュータで実行可能な命令として実現可能であり、シンプルペリフェラルバスを介したHIDの実施形態を実現するように実行可能である。代替的又は追加的に、HID-SPBインタフェースはハードウェアで実現されてもよい。一実施形態において、(温度計、加速度計、ジャイロスコープ、コンパス等のような)センサとして実現されたペリフェラルセンサの拡張アプリケーションは、センサの独自機能及び/又特徴に関する拡張データをシンプルペリフェラルバス(SPB)を介してコンピュータシステム102との間で通信するインタフェースとして機能するように実現される。同様に、ペリフェラルセンサの拡張アプリケーションは、タッチパネルのようなペリフェラル装置の独自機能及び/又は特徴をシンプルペリフェラルバスを介してコンピュータシステムとの間で通信するインタフェースとして機能するように実現される。
【0019】
HID-SPBインタフェース108はペリフェラル装置の動作仕様を設定する。第三者(独立した業者又はベンダ)は、ペリフェラルセンサ106のHID-SPBインタフェース108を介してペリフェラル装置との間でやり取りを行い、差異を識別し、ペリフェラルセンサの拡張アプリケーション110を介して独自機能及び/又は特徴を実現することができる。
【0020】
一実施形態において、ペリフェラルセンサ108のHID-SPBインタフェース108は、コンピュータシステムに対してペリフェラル装置及び/又はセンサがHID対応装置であることを通知する(例えば、判定する、明らかにする、理解する、列挙する等)。ペリフェラルセンサは、(例えば、データ構造、レポート記述子等により)ペリフェラル装置のコンフィギュレーション(又は構成又は設定)を決定し、コンピュータシステムからコンフィギュレーションデータを受信してセンサを設定又は構築し、及び/又はコンピュータシステムからペリフェラル装置又はセンサへコンフィギュレーションデータを通知することもできる。ペリフェラル装置又はセンサとコンピュータシステムとの間のHIDデータ通信は、シンプルペリフェラルバス(SPB)によりペリフェラルセンサを介して双方向に行われる。その双方向通信は、ポーリング技術及び/又は割り込みの仕組みを用いて実現されてもよい。或いは、ペリフェラルセンサとコンピュータシステムとの間のデータ通信が双方向で行われる一方、ペリフェラルセンサとペリフェラル装置との間の通信は単一方向で行われてもよい。
【0021】
図2は、本願で説明されているようなシンプルペリフェラルバスを介したHIDの様々な実施の形態を利用することが可能なシステムオンチップ(SoC)の一例を示す。SoCは固定された装置又は移動可能な装置で実現されてもよく、例えば、消費者装置、電子装置、通信装置、ナビゲーション装置、メディア装置、コンピュータ装置、及び/又はその他のタイプの電子装置のうちの任意の1つ又はそれらの組み合わせ等において実現されてもよい。SoC200は、電子回路、マイクロプロセッサ、メモリ、入出力(I/O)論理制御部、通信インタフェース及び要素だけでなく、コンピュータ装置を実現するその他のハードウェア、ファームウェア及び/又はソフトウェアと共に統合されてもよい。
【0022】
この実施の形態の場合、SoC200は(例えば、電子回路を含むように)マイクロプロセッサ202(例えば、マイクロプロセッサ又はディジタル信号プロセッサのうちの何れでもよい)及び入出力(I/O)論理制御部204と共に統合されている。SoC200は、任意のタイプの不揮発性メモリ及び/又はその他の適切な電子データストレージ装置等のようなメモリコントローラ206及びメモリ装置208も含む。SoCは様々なファームウェア及び/又はソフトウェアを含むことが可能であり、例えばメモリに保持されかつマイクロプロセッサにより実行されるオペレーティングシステム210を含む。
【0023】
SoC200は、例えばコンピュータ装置にインストールされた場合に、装置又は他のペリフェラル要素との間でインタフェースとして機能する装置インタフェース212を含む。SoC200は、要素間でデータ通信を行うためにSoCの様々な要素を結合する統合データバス214も含んでいる。SoCのデータバスは、I2Cデータバスやシリアルペリフェラルインタフェース(SPI)等のようなシンプルペリフェラルバス(SPB)として実現することが可能であり、かつ様々なバス構造及び/又はバスアーキテクチャのうちの任意の1つ又は任意の組み合わせとして実現されてもよい。
【0024】
シンプルペリフェラルバスを介したHIDの実施の形態において、SoC200は、図1に示されているペリフェラルセンサの様々な例を参照しながら説明した1つ以上のペリフェラルセンサ218とのインタフェースとして機能するI2Cコントローラ216を含む。ペリフェラルセンサは拡張アプリケーション222と共にHID-SPBインタフェース220を実現する。HID-SPBインタフェース及び拡張アプリケーション並びに対応する機能及び特徴の具体例については、図1に示されている個々の要素についての説明を参照されたい。代替的又は追加的に、ペリフェラルセンサの要素は、ハードウェア、ファームウェア、一定の論理回路として実現することが可能であり、或いはSoC又はペリフェラルセンサのI/O論理制御部204及び/又は他の処理及び制御回路と共に実現される任意の組み合わせとして実現することも可能である。
【0025】
以下、シンプルペリフェラルバスを介したHIDに関する1つ以上の実施形態による図3及び図4を参照しながら、方法例300及び400を説明する。一般に、本願で説明される任意のサービス、機能、方法、手順、要素及びモジュールは、ソフトウェア、ハードウェア(例えば、一定の論理回路)、手作業、又はそれらの任意の組み合わせを用いて実現できる。ソフトウェア実現手段は、コンピュータプロセッサにより実行される場合に特定のタスクを実行するプログラムコードを表現する。方法例はコンピュータが実行できる命令という一般的な観点から説明されてもよく、ソフトウェア、アプリケーション、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、手順、プロシジャ、モジュール、関数等を含むことが可能である。プログラムコードは、コンピュータプロセッサに対してローカル(局所的)及び/又はリモート(遠隔的)の何れであってもよい1つ以上のコンピュータ読み取り可能な記憶装置に保存されることが可能である。本方法は、分散したコンピュータ環境において、複数のコンピュータ装置により実現されてもよい。更に、本願で説明される特徴は、プラットフォームに依存せず、様々なプロセッサを有する様々なコンピュータプラットフォームで実現できる。
【0026】
図3は、シンプルペリフェラルバスを介したHIDに関する方法例300を示し、ペリフェラル装置コントローラとして実現されたペリフェラルセンサを参照しながら説明される。本方法のブロックが説明される順序は限定として解釈されるようには意図されておらず、本方法又は代替方法を使用する際に、説明されている任意の数の方法ブロックが任意の順序で組み合わせられてよい。
【0027】
ブロック302において、HID-SPBインタフェースを実現し、ペリフェラル装置とコンピュータシステムとの間でHIDデータフォーマットでシンプルペリフェラルバス(SPB)を介したインタフェースとして機能するペリフェラルセンサにおいて、ペリフェラル装置から入力を受信する。例えば、ペリフェラルセンサ114(図1)がタッチパネル116からの入力を受信し、ペリフェラルセンサ114のHID-SPBインタフェース108が、タッチパネルとコンピュータシステム102との間でHIDデータフォーマットでシンプルペリフェラルバス(SPB)104を介したインタフェースとして機能する。同様に、ペリフェラルセンサ118が、キーボード又はマウス入力装置等のような入力装置120からの入力を受信し、ペリフェラルセンサ118のHID-SPBインタフェース108が、入力装置とコンピュータシステム102との間でHIDデータフォーマットでシンプルペリフェラルバスを介したインタフェースとして機能する。シンプルペリフェラルバス104は、I2Cデータバス、シリアルペリフェラルインタフェース(SPI)データバスとして実現されてもよいし、或いはデータがHIDデータ構造として通信される他の任意の低電力シンプルペリフェラルバスとして実現されてもよい。
【0028】
ブロック304において、ペリフェラルセンサが、ペリフェラル装置の独自機能(proprietary function)についての拡張データを受信する。例えば、ペリフェラルセンサ114は、タッチパネル116の独自機能及び/又は特徴についての拡張データを受信し、ペリフェラルセンサ114の拡張アプリケーション110が、シンプルペリフェラルバス104を介して通信システム102との間で拡張データを通信するインタフェースとして機能する。同様に、ペリフェラルセンサ118は、入力装置120の独自機能及び/又は特徴についての拡張データを受信し、ペリフェラルセンサ118の拡張アプリケーション110が、シンプルペリフェラルバスを介して通信システムとの間で拡張データを通信するインタフェースとして機能する。
【0029】
ブロック306において、ペリフェラル装置からの入力及び/又は拡張データが、コンピュータシステムにおいてHIDデータフォーマットでシンプルペリフェラルバス(SPB)を介して通信される。例えば、ペリフェラルセンサ114はタッチパネル116から受信した入力を、及び/又はタッチパネルの独自機能及び/又は特徴についての拡張データを、通信システム102においてHIDデータフォーマットでシンプルペリフェラルバス(SPB)を介して通信する。同様に、ペリフェラルセンサ118は入力装置120から受信した入力を、及び/又は入力装置の独自機能及び/又は特徴についての拡張データを、通信システムにおいてHIDデータフォーマットでシンプルペリフェラルバスを介して通信する。
【0030】
ブロック308において、ペリフェラル装置は、コンピュータシステムに対してHID対応装置であることを確認し、ブロック310において、ペリフェラル装置のコンフィギュレーションが決定される。例えば、ペリフェラルセンサ114は、コンピュータシステム102に対するHID対応装置としてタッチパネル116を確認し、タッチパネルのコンフィギュレーション情報を決定する。同様に、ペリフェラルセンサ118は、コンピュータシステムに対するHID対応装置として入力装置120を確認し、入力装置のコンフィギュレーション情報を決定する。ペリフェラルセンサは、ペリフェラル装置に対応する又はペリフェラル装置と互換性があるHIDアプリケーションを保持する。
【0031】
ブロック312において、コンピュータシステムからのコンフィギュレーションデータがペリフェラル装置に通知される。例えば、ペリフェラルセンサ114は、コンピュータシステム102からコンフィギュレーションデータを受信し、コンフィギュレーションデータをタッチパネル116に通知する。同様に、ペリフェラルセンサ118は、コンピュータシステムからコンフィギュレーションデータを受信し、コンフィギュレーションデータを入力装置120に通知する。ペリフェラル装置とコンピュータシステムとの間のデータ通信はHIDレポートプロトコル(HID reporting protocol)を用いてシンプルペリフェラルバスによりペリフェラルセンサを介して双方向に行われる。或いは、ペリフェラル装置とコンピュータシステムとの間のデータ通信が双方向で行われる一方、ペリフェラルセンサとペリフェラル装置との間の通信が一方向で行われてもよい。
【0032】
ブロック314において、HIDソフトウェアスタックとペリフェラルセンサとの間でHIDデータが通信される。例えば、SPBドライバ128は、コンピュータシステム102において、ペリフェラルセンサ114とHIDソフトウェアスタック126との間でHIDデータを通信する。同様に、SPBドライバは、コンピュータシステムにおいて、ペリフェラルセンサ118とHIDソフトウェアスタックとの間でHIDデータを通信する。
【0033】
図4はシンプルペリフェラルバスを介したHIDに関する方法例400を示し、温度センサ、加速度計、ジャイロスコープ、コンパス等のようなセンサとして実現されるペリフェラルセンサを参照しながら説明されている。本方法のブロックが説明される順序は限定として解釈されるようには意図されておらず、本方法又は代替方法を使用する際に、説明されている任意の数の方法ブロックが任意の順序で組み合わせられてよい。
【0034】
ブロック402において、センサデータがペリフェラルセンサにおいて生成され、ペリフェラルセンサは、HID-SPBインタフェースを実現し、ペリフェラルセンサとコンピュータシステム102との間で、HIDデータフォーマットを用いたシンプルペリフェラルバス(SPB)を介したインタフェースとして機能する。例えば、ペリフェラルセンサ112(図1)がセンサデータを生成し、ペリフェラルセンサ112のHID-SPBインタフェース108が、センサとコンピュータシステム102との間で、HIDデータフォーマットを用いたシンプルペリフェラルバス(SPB)を介したインタフェースとして機能する。シンプルペリフェラルバス104は、I2Cデータバスや、シリアルペリフェラルインタフェース(SPI)データバスとして実現されてもよく、或いはデータがHIDデータ構造として通信される他の任意のタイプの低電力シンプルペリフェラルバスとして実現されてもよい。
【0035】
ブロック404において、シンプルペリフェラルバス(SPB)を介してHIDデータフォーマットでセンサデータが通信システムに通知される。例えば、ペリフェラルセンサ112は、シンプルペリフェラルバス(SPB)104を介してセンサデータをHIDデータフォーマットでコンピュータシステム102に通知する。ブロック406において、:ペリフェラルセンサの独自機能についての拡張データがコンピュータシステムに通知される。例えば、ペリフェラルセンサ112は、通信システムのシンプルペリフェラルバスを介して、センサの独自機能及び/又は特徴についての拡張データをHIDデータフォーマットで通信する。
【0036】
ブロック408において、ペリフェラルセンサは、コンピュータシステムに対してHID対応装置として確認され、ブロック410において、コンフィギュレーション情報がコンピュータシステムに通知される。例えば、ペリフェラルセンサは、コンピュータシステム102に対してHID対応装置としてそのセンサを特定又は確認し、そのセンサのコンフィギュレーション情報をコンピュータシステムに通知する。
【0037】
ブロック412において、コンフィギュレーションデータがコンピュータシステムから受信され、ペリフェラルセンサを設定する。例えば、ペリフェラルセンサ112はコンピュータシステム102からコンフィギュレーションデータを受信し、センサを設定又は初期化する。センサとコンピュータシステムとの間のデータ通信はシンプルペリフェラルバス(SPB)を介して双方向で行われる。ブロック414において、HIDデータがHIDソフトウェアスタックとペリフェラルセンサとの間で通信される。例えば、SPBドライバ128は、通信システム102において、ペリフェラルセンサ112とHIDソフトウェアスタック126との間でHIDデータを通信する。
【0038】
図5は装置例500の様々な構成要素を示し、装置例500は図1-4を参照しながら説明した装置又は装置により実現されるサービス及びソフトウェアのうちの任意のものとして実現できる。一実施形態において、装置は、消費者装置、コンピュータ装置、サーバ装置、携帯装置、ユーザ装置、通信装置、電話機、ナビゲーション装置、テレビジョン装置、機器、ゲーム機、メディアプレーヤ、カメラ及び/又は電子装置等のうちの任意の形式により、固定装置又はモバイル装置の何れか又は任意の組み合わせとして実現されてもよい。装置は、ユーザ(すなわち、人)に関連していてもよいし、或いはユーザ、ソフトウェア、ファームウェア、ハードウェア、及び/又は装置の組み合わせを含む論理装置を装置が実現するように装置を動作させる手段又はエンティティであってもよい。
【0039】
装置500は通信装置502を含み、通信装置502は、受信したデータ、受信しているデータ、ブロードキャストに予定されているデータ、データを含むデータパケット等のような装置データ又はデバイスデータ504の有線通信及び/又は無線通信を可能にする。装置データ又はその他のデバイスコンテンツは、装置のコンフィギュレーション設定、装置に保存されているメディアコンテンツ、及び/又は装置のユーザに関する情報を含むことが可能である。装置に保存されているメディアコンテンツは音声、音響、映像、及び/又は画像データ等のような任意のタイプを含むことが可能である。装置は1つ以上のデータ入力部506を含み、データ入力部506を介して、データ、メディアコンテンツ及び/又は入力等のような任意のタイプのものを受信することができ、ユーザが選択可能な入力、メッセージ、コミュニケーション、音楽、テレビジョンコンテンツ、記録されたビデオコンテンツ等を受信することが可能であり、任意のコンテンツソース及び/又はデータソースから受信した他の任意のタイプの音声、ビデオ及び/又は画像データを受信することも可能である。
【0040】
装置500は、シリアルインタフェース、パラレルインタフェース、ネットワークインタフェース又は無線インタフェース等のうちの任意の1つ以上であるような通信インタフェース508も含んでいる。通信インタフェースは装置と通信ネットワークとの間に接続、コネクション及び/又は通信リンクを提供し、このコネクションにより他の電子装置、コンピュータ装置及び通信装置が本装置と通信する。
【0041】
装置500は、装置の動作を制御する様々なコンピュータで実行可能な命令を処理する1つ以上のプロセッサ510(例えば、任意のマイクロプロセッサやコントローラ等)を含む。代替的又は追加的に、装置はソフトウェア、ハードウェア、ファームウェア又は固定論理回路と共に実現可能であり、「512」として一般的に示されている処理及び制御回路と共に実現される。図示されてはいないが、装置は、装置内の様々な要素を結合するシステムバス又はデータ転送システムを含むことが可能である。システムバスは、メモリバス又はメモリコントローラ、ペリフェラルバス、ユニバーサルシリアルバス、及び/又は任意の様々なバスアーキテクチャを利用するプロセッサバス又はローカルバス等のような様々なバス構造のうちの任意の1つ又は複数の組み合わせを含むことが可能である。
【0042】
装置500は1つ以上のメモリ装置514(例えば、コンピュータで読み取ることが可能な記憶媒体(コンピュータ読取可能記憶媒体))も含んでおり、メモリ装置514は、ランダムアクセスメモリ(RAM)、不揮発性メモリ(例えば、読み取り専用メモリ(ROM)、フラッシュメモリ等)、及びディスクストレージデバイス等のようにデータの保存を可能にする。ディスクストレージデバイスは、ハードディスクドライブ、記録可能及び/又は再書き込み可能なディスク等のような如何なるタイプの磁気記憶媒体或いは光記憶媒体として実現されてもよい。本装置は大容量記憶媒体装置を含んでいてもよい。
【0043】
コンピュータ読み取り可能な媒体コンピュータ装置によりアクセスされる適切な如何なる媒体又はメディアでであってもよい。限定ではなく具体例として、コンピュータ読み取り可能な媒体は記憶媒体及び通信媒体を含んでよい。記憶媒体は、揮発性媒体、不揮発性媒体、着脱可能な媒体、着脱可能でない媒体を含み、これらはコンピュータ読み取り可能な命令、データ構造、プログラムモジュール又は他のデータ等のような情報を格納する任意の方法又は技術により実現される。記憶媒体は、限定ではないが、フラッシュメモリ又は他のメモリ技術、CD-ROM、ディジタル多用途ディスク(DVD)又は他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気ストレージ装置等を含み、或いは情報を保存ために使用可能でありかつコンピュータによりアクセス可能な他の任意の媒体を含む。
【0044】
通信媒体は、典型的には、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、或いは搬送波その他の伝送手段のような変調データ信号における他のデータを担う。通信媒体は任意の情報伝送媒体も含む。変調データ信号という用語は、信号に情報をエンコードするような仕方で設定又は変更された1つ以上の属性を有する信号を意味する。限定ではなく具体例として、通信媒体は、有線ネットワーク又は直接配線された接続のような有線媒体や、音響(音声、音)、RF、赤外線及びその他の無線媒体のような無線媒体を含む。
【0045】
メモリ装置514は、装置データ504、その他のタイプの情報及び/又はデータ、及び様々な装置アプリケーション516を保存するデータ保存手段を提供する。例えば、オペレーティングシステム518はメモリ装置と共にソフトウェアアプリケーションとして実現され、プロセッサで実行されることが可能である。デバイスアプリケーションは、例えば制御アプリケーション、ソフトウェアアプリケーション、信号処理及び制御モジュール、特定の装置のコード、特定の装置のハードウェア抽象レイヤ等の任意の形式により、デバイスマネジャを含んでもよい。実施の形態の場合、装置は、上述したようにシンプルペリフェラルバスを介したHIDの形態を実現する1つ以上のペリフェラルセンサ520を含んでいる。
【0046】
装置500は、オーディオシステム524のためのオーディオデータを生成し及び/又は表示システム526のための表示データを生成するオーディオ及び/又はビデオ処理システム522も含んでいる。オーディオシステム及び/又は表示システムは、オーディオデータ、ビデオデータ、表示データ及び/又は画像データを処理、表示及び/又は他のレンダリングを行う任意の装置を含んでいてもよい。RF(無線周波数)リンク、S-ビデオリンク、コンポジットビデオリンク、コンポーネントビデオリンク、ディジタルビデオインタフェース(DVI)、アナログオーディオ接続、或いは他の同様な通信リンクを介して、表示データ及びオーディオ信号はオーディオ装置及び/又は表示装置との間で通信可能である。一実施形態において、オーディオシステム及び/又は表示システムは本装置に対して外部要素である。或いは、オーディオシステム及び/又は表示システムは本装置に統合又は一体化された要素である。
【0047】
以上、シンプルペリフェラルバスを介したHIDの実施形態が特徴及び/又は方法に特有の言葉で説明されてきたが、添付の特許請求の範囲の対象は説明された具体的な特徴や方法に必ずしも限定されない。むしろ、具体的な特徴及び方法はシンプルペリフェラルバスを介したHIDの実現例として説明されている。
図1
図2
図3
図4
図5