JP2014534522A - マルチタッチインターフェース方式 - Google Patents
マルチタッチインターフェース方式 Download PDFInfo
- Publication number
- JP2014534522A JP2014534522A JP2014538775A JP2014538775A JP2014534522A JP 2014534522 A JP2014534522 A JP 2014534522A JP 2014538775 A JP2014538775 A JP 2014538775A JP 2014538775 A JP2014538775 A JP 2014538775A JP 2014534522 A JP2014534522 A JP 2014534522A
- Authority
- JP
- Japan
- Prior art keywords
- data
- touch
- hid
- report
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
- G06F3/04166—Details of scanning methods, e.g. sampling time, grouping of sub areas or time sharing with display driving
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0412—Digitisers structurally integrated in a display
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/003—Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
- G09G5/006—Details of the interface to the display terminal
Abstract
【解決手段】 ヒューマンインターフェースデバイス(HID)ソースデバイスを用いて、マルチタッチデータ等のインターフェースデータを提供するようにHIDシンクデバイスを設定するシステム、デバイスおよび方法を説明する。HIDソースデバイスは、インターフェースデータを生成するべく、HIDシンクデバイス内のデータモジュールをイネーブルするとしてよい。HIDソースデバイスは、インターフェースデータを受信した後、出力データを生成し、出力データをHIDシンクデバイスに提供するとしてよい。【選択図】 図1
Description
<関連出願>
本願は、米国仮特許出願第61/551,712号(出願日:2011年10月26日)に基づく優先権および恩恵を主張する。
本願は、米国仮特許出願第61/551,712号(出願日:2011年10月26日)に基づく優先権および恩恵を主張する。
近年開発されたディスプレイインターフェース方式、例えば、DisplayPort(商標)(DP)ディスプレイインターフェースプロトコルまたはディスプレイインターフェース規格(例えば、DisplayPort(商標)バージョン1.2(2009年12月)を参照のこと)は、古い規格であるビデオグラフィクスアレイ(VGA)およびデジタルビデオインターフェース(DVI)等に代わるものとして設計され、イーサネット(登録商標)、USBおよびPCI Express等の他のデータ通信プロトコルと同様にパケット化されたデータ送信を利用している。例えば、DPは、外部(例えば、ボックス間)および内部(例えば、ラップトップディスプレイパネル)の両方のディスプレイ接続をサポートしており、差動対が画素データおよびクロック信号を送信するDVI規格およびLVDS(Low−voltage Differential Signaling)規格とは異なり、DPプロトコルではクロックが埋め込まれた小型データパケットを送信する。データパケットを利用することでさらに、DP等のインターフェース規格が、インターフェース自体を大きく変更することなく追加機能を追加することによって、拡張可能となる。Embedded DisplayPort(商標)(eDP)は、DP規格に対する同類規格(例えば、Embedded DisplayPort(商標)バージョン1.3(2011年2月)を参照のこと)であり、内部接続(例えば、グラフィクスプロセッサとノートブックディスプレイパネルとの間)のための標準化されたディスプレイパネルインターフェースを提供し、LVDS規格に代わるものとして構成されている。
本明細書で説明する内容は、添付図面において、一例として図示されているのであり、限定するためではない。図示を簡略化しつつ明瞭にするため、図中の構成要素は必ずしも実寸に即したものではない。例えば、分かり易いように、一部の構成要素の寸法は他の構成要素に比べて強調されているとしてよい。さらに、適切であると考えられる場合、参照符号は、対応する構成要素または同様の構成要素を指し示すべく、複数の図面にわたって繰り返し利用する。図面は以下の通りである。
ディスプレイインターフェースシステムの一例を示す図である。
ディスプレイインターフェースシステムの一例を示す図である。
レジスタのレイアウトの一例を示す図である。
レジスタのレイアウトの一例を示す図である。
レジスタのレイアウトの一例を示す図である。
ディスプレイインターフェースプロセスの一例を示す図である。
ディスプレイインターフェースプロセスの一例を示す図である。
ディスプレイインターフェースプロセスの一例を示す図である。
ディスプレイインターフェースプロセスの一例を示す図である。
ディスプレイインターフェースプロセスの一例を示す図である。
ディスプレイインターフェースプロセスの一例を示す図である。
ディスプレイインターフェースプロセスの一例を示す図である。
データ方式の一例を示す図である。
システムの一例を示す図である。
本開示の少なくとも一部の実施形態に応じて全てが配置されたデバイスの一例を示す図である。
添付した図面を参照しつつ以下では実施形態または実施例を1以上説明する。具体的な構成および構造を説明するが、この説明は例示を目的としたものに過ぎないと理解されたい。当業者であれば、本明細書の意図および範囲から逸脱することなく他の構成および構造を用いることも可能であると認めるであろう。本明細書で説明する技術および/または構造は本明細書で説明するもの以外にも他のさまざまな他のシステムおよび用途において利用し得ることは当業者には明らかであろう。
以下の説明は、例えば、ノートブック型またはデスクトップ型のコンピュータ等、アーキテクチャで利用され得るさまざまな実施形態を記載しているが、本明細書で説明した技術および/または構造の実施例は、特定のアーキテクチャおよび/またはコンピューティングシステムに限定されるものではなく、同様の目的を実現するべく任意のアーキテクチャおよび/またはコンピューティングシステムで実現され得る。例えば、複数の集積回路(IC)チップおよび/またはパッケージを利用するさまざまなアーキテクチャ、および/または、セットトップボックス、スマートフォン等のさまざまなコンピューティングデバイスおよび/または消費者向け電子(CE)機器で本明細書に説明する技術および/または構造を実現するとしてよい。さらに、以下の説明ではロジック実装、システムコンポーネントの種類および相関関係、ロジックパーティション化/統合方法等、具体的且つ詳細な内容を数多く記載するが、請求の対象となる主題はこれらの具体的且つ詳細な内容を採用することなく実施され得る。また、例えば、制御構造および完全ソフトウェア命令シーケンス等の一部の内容は、本明細書の開示内容をあいまいにしないよう詳細な説明を省略している場合がある。
本明細書で開示する内容は、ハードウェア、ファームウェア、ソフトウェアまたはこれらの任意の組み合わせで実現されるとしてよい。本明細書で開示されている内容は、機械可読媒体に格納される命令として実現されるとしてもよい。当該命令は、1以上のプロセッサによって読み出されて実行されるとしてよい。機械可読媒体は、機械(例えば、コンピューティングデバイス)で読み出すことが可能な形式で情報を格納または送信する任意の媒体および/またはメカニズムを含むとしてよい。例えば、機械可読媒体は、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク格納媒体、光格納媒体、フラッシュメモリデバイス、電気伝搬信号、光伝搬信号、音響伝搬信号またはその他の形態の伝搬信号(例えば、搬送波、赤外信号、デジタル信号等)等を含むとしてよい。
本明細書において「一実施形態」、「実施形態」、「実施形態例」等という場合、説明している実施形態が特定の特徴、構造または特性を含み得るが全ての実施形態が必ずしも当該特定の特徴、構造または特性を含むものではないことを意味する。さらに、このような表現は必ずしも同じ実施形態を意味するものではない。また、一の実施形態に関連付けて特定の特徴、構造または特性を説明する場合、本明細書で明示的に説明されているか否かに関わらず、他の実施形態に関連付けてその特徴、構造または特性を実現することは当業者の知識の範囲内であると考えられる。
本開示では、本明細書で用いられる場合、「ヒューマン・インターフェース・デバイス(HID)」という用語はコンピュータシステムの動作を制御するために用いられるデバイス(例えば、ユニバーサル・シリアル・バス・インプレメンターズ・フォーラム(USB−IF)が定めているHIDクラス定義に準拠している任意のデバイス、例えば、"Device Class Definition for Human Interface Devices (HID)"、ファームウェア仕様、バージョン1.11、2001年6月27日公開(以下では「HID1.11仕様と呼ぶ」)を参照されたい)を説明するとしてよい。さらに、「タッチデータ」という用語は、「マルチタッチデータ」と同義語として用いられるとしてよく、本明細書で用いられる場合、タッチ感度面(例えば、タッチスクリーンディスプレイ)との接触が発生した1以上の位置を説明するデータを意味するとしてよい。
また、「タッチシンク」および「タッチシンクデバイス」という用語は、「シンク」および「シンクデバイス」という用語と同義語として用いられるとしてよく、本明細書で用いられる場合にはDisplayPort(商標)(DP)規格および/またはEmbedded DisplayPort(商標)(eDP)規格(Embedded DisplayPort(商標)バージョン1.3、2011年2月公開を参照のこと)をサポートしており、タッチデータを報告することが可能なシンクデバイスを意味するとしてよい。さらに、「タッチソース」および「タッチソースデバイス」という用語は、「ソース」および「ソースデバイス」という用語と同義語として用いられるとしてよく、本明細書で用いられる場合には、例えば、タッチシンクデバイスから受信したタッチデータを処理するDP1.2規格(DisplayPort(商標)バージョン1.2、2009年12月公開(以下では、「DP1.2」規格と呼ぶ)を参照のこと)で定義されているソースデバイスを意味するとしてよい。分かり易いように、さまざまなデバイス、システムおよびプロセスは、DP規格および/またはeDP規格に関連して本明細書において説明されるが、本開示は任意の特定のタッチインターフェース規格および/もしくはディスプレイインターフェース規格、ならびに/または、任意の特定の仕様に限定されるものではない。
さまざまなシステム、デバイス、方式および/またはプロセスをタッチデータに関連付けて本明細書で説明するが、本開示はタッチデータおよび/またはタッチデバイスに限定されない。このため、タッチシンクとタッチソースとの間でやり取りされる情報はHIDに準拠しているので、タッチシンクは他の種類のHIDデバイス、これらに限定されないが、キーパッド、英数字ディスプレイ等を提示するとしてもよい。このように、本明細書で説明するさまざまなインターフェース方式および/またはプロセスは、タッチシンクによって提示され得る他の種類のHIDデバイスに応用され得ると共に、1以上の他の種類のHIDデバイスとHIDタッチデバイスとを任意に組み合わせたものに適用するとしてもよい。さらに、「インターフェースデータ」という用語は本明細書において主にタッチデータを意味するために用いられるが、さまざまな実施形態において、本開示に係るインターフェースデータは、キーパッド、英数字ディスプレイ等の任意の種類のHIDデバイスによって生成されるデータを意味するとしてもよい。
さまざまな実施形態では、タッチシンクは、未処理タッチデータを生成するタッチセンサと、未処理タッチデータを本明細書で説明する形式に変換するフォーマッタとを含むとしてよい。さらに、タッチシンクは、本明細書で説明するように、タッチデータをタッチソースに転送するとしてよい。さまざまな実施形態によると、タッチソースは、タッチシンクからタッチデータを受信または取得する機能を持つとしてよい。これに加えて、本明細書で説明するように、タッチデータを解析(parse)および/または解釈するとしてよい。例えば、図1は、本開示に応じた、タッチソース102がタッチシンク104に通信可能に結合されているマルチタッチディスプレイインターフェースシステム100を示す図である。タッチシンク104とタッチソース102との間でタッチデータを送信する形式の例、および、このようなデータの転送を実施するさまざまなメカニズムを、以下でより詳細に説明する。
さまざまな実施形態では、タッチソース102は、DP1.2規格を実現するとしてよく、グラフィクスプロセッシングユニット(GPU)、デジタルシグナルプロセッサ(DSP)等のマイクロプロセッサを有するとしてよい。当該マイクロプロセッサは、タッチデータ等のインターフェースデータを、解析モジュール106および解釈モジュール108をそれぞれ用いて解析および解釈する。タッチソース102はさらに、本明細書で説明するさまざまな方式またはプロセスを実現するインターフェースロジック109を有するとしてよい。例えば、インターフェースロジック109は、より詳細に以下で説明するデータ転送プロセスまたはその一部を実現するロジックを含むとしてよい。
さまざまな実施形態によると、タッチシンク104は、タッチセンサ110を用いてマルチタッチデータとしてインターフェースデータを取得して、フォーマッタモジュール112を用いてタッチデータをフォーマッティングするマルチタッチ可能ディスプレイ(不図示)を有するとしてよい。さまざまな実施形態によると、タッチセンサ110は、タッチシンク104にマルチタッチデータを取得させることが可能な任意の種類の公知のタッチセンサであってよい。例えば、容量式タッチセンサであってよい。タッチシンク104はさらに、本明細書で説明するさまざまな方式またはプロセスを実現するインターフェースロジック123を含むとしてよい。例えば、インターフェースロジック123は、より詳細に以下で説明するデータ転送プロセスまたはその一部を実現するロジックを含むとしてよい。
さまざまな実施形態によると、タッチシンク104は、モバイル通信デバイス(例えば、スマートフォン)、モバイルコンピュータ、タブレットコンピュータ等に組み込まれるとしてよい。さまざまな実施形態によると、システム100のコンポーネントは、モバイル通信デバイス、タブレットコンピュータ等の一のデバイス内で実現されるとしてよい。この場合、タッチシンク104は、タッチスクリーンディスプレイに対応付けられている1以上のロジックモジュールおよび/またはハードウェアモジュールに対応し、タッチソース102は、タッチシンク104のロジックモジュールおよび/またはハードウェアモジュールに通信可能に結合されているマイクロプロセッサを含むとしてよい。
図1に示すように、システム100は、タッチソース102をタッチシンク104に通信可能に結合しているDPリンク114を備える。DPリンク114は、メインリンク116、補助チャネルまたは高速補助チャネル(F)AUX118、および、ホットプラグディテクト(HPD)信号ライン120を含む。さまざまな実施形態によると、メインリンク116は、タッチソース102からタッチシンク104への圧縮されていないビデオおよび/またはオーディオデータ等のアイソクロナスストリームの転送に用いられる一方向性で高帯域幅であり低レイテンシのチャネルであってよい。さまざまな実施形態によると、(F)AUXチャネル118は、本開示に応じた方式を用いるリンク管理およびデバイス制御に用いられる半二重双方向チャネルであってよい。例えば、さまざまな実施形態によると、タッチソース102およびタッチシンク104はそれぞれ、マスタおよびスレーブとして特定されるとしてよい。一般的に、(F)AUXチャネル118を介したトランザクションはタッチソース102によって開始される。しかし、さまざまな実施形態において、タッチシンク104は、例えば、割り込み(IRQ)を信号ライン120を介してタッチソース102に送信することによって、(F)AUXチャネルトランザクションの開始を指示するとしてよい。
さまざまな実施形態によると、本開示に応じたマルチタッチディスプレイインターフェースシステムおよび/またはマルチタッチディスプレイインターフェース方式は、タッチシンクをタッチソースに通信可能に結合する1以上の介在するデバイスおよび/またはシステムを含むとしてよい。例えば、図2は、本開示に応じた、タッチソース102をタッチシンク104に通信可能に結合する介在分岐デバイス202を備えるマルチタッチディスプレイインターフェースシステム200を示す図である。さまざまな実施形態によると、分岐デバイス202は、DP1.2規格に応じており、より詳細に以下で説明するようにサイドバンドメッセージを実現するデバイスであってよい。さらに、さまざまな実施形態によると、分岐デバイスは、タッチシンク104がタッチデータを生成するレートに基づいて決まる特定の時間制限内で、ダウンストリーム信号(例えば、信号ライン120に見られる割り込み)を処理するとしてよい。例えば、分岐デバイス202は、最低タッチデータサンプリングレートとして50Hzをサポートするべく、20m秒以内で、割り込みを処理する必要があるとしてよい。
図1の説明に戻り、さまざまな実施形態において、より詳細に以下で説明するように、タッチソース102は、タッチシンク104から(F)AUXチャネル118を介してタッチデータ等のインターフェースデータを取得するとしてよい。尚、タッチデータは、HIDレポート記述子(Device Class Definition for Human Interface Devices (HID) Firmware Specification、バージョン1.11、2001年6月27日公開(以下では、「HID1.11仕様」と呼ぶ)を参照のこと)によって定義されるようにヒューマンインターフェースデバイス(HID)形式であってもよい。さらに、本開示によると、タッチシンク104は、HID利用テーブル(HID利用テーブル(HID Usage Tables)、バージョン1.12、2004年10月28日公開を参照のこと)を修正するデジタイザのためのマルチタッチ拡張機能において説明されているタッチ関連の形式要件(「Addition of usages related to multi−touch digitizers」、Request #HUTRR34、2009年2月27日に公開(以下では、「#HUTRR34」文献)を参照のこと)を順守しているとしてよい。また、タッチシンク104は、HID1.11仕様に応じたデジタイザデバイスとしてタッチ機能を公表しているとしてよい。本開示に応じて、HIDレポート記述子を含むHID情報は、タッチシンク104とタッチソース102との間で(F)AUXチャネル118を介して搬送されるとしてよい。
さまざまな実施形態によると、そして、より詳細に以下で説明するように、タッチシンク104は、タッチソース102が(F)AUXチャネル118を介してアクセスし得る設定データ、タッチデータ等のデータを一時的に格納するためにタッチシンク104が用いるレジスタ122を含むとしてよい。さまざまな実施形態によると、レジスタ122は、DP構成データ(DPCD)レジスタを含むとしてよく、タッチソース102は、より詳細に以下で説明するように、さまざまな目的を実現するべくこれらのDPCDレジスタに対して読み書きアクセスを行うとしてよい。さらに、さまざまな実施形態において、より詳細に以下で説明するように、データモジュール124(センサ110およびフォーマッタモジュール112を含む)は、レジスタ122のうち1以上のDPCDレジスタに応答するように構成されているとしてよい。
さまざまな実施形態によると、タッチシンク104は、タッチデータについて、少なくとも50Hzのサンプリングレートをサポートするとしてよい。さまざまな実施形態によると、タッチシンク104は、タッチソース102にタッチデータ関連の割り込みを搬送するとしてよく、タッチソース102は、タッチシンク104のサンプリングレートと同等のレートでこれらの割り込みを処理するとしてよい。例えば、タッチシンク104は、信号ライン120を介して、タッチソース102にIRQ_HPD割り込みを搬送するとしてよい。DP1.2規格ではソースデバイスに対してIRQ_HPDを100m秒以内に処理する(10Hzのサンプリングレートに対応)ことを要求するが、本開示のさまざまな実施形態によると、タッチソース102は、タッチシンク104によって50Hzのレートでサンプリングされるタッチデータの処理をサポートするべく、20m秒以内にIRQ_HPDを処理するとしてよい。
さまざまな実施形態によると、システム100は、タッチ機能を特定している複数の別個のデバイス記述子をサポートしていない場合がある。しかし、他の実施形態では、タッチシンク104は、DP1.2規格に応じた、タッチシンク104がタッチ機能を持つことを示すエクステンデッド・ディスプレイ・アイデンティフィケーション・データ(EDID)を提供するとしてよい。また、タッチシンク104は、プラグ・アンド・プレイ(PnP)のためにベンダ情報を含むとしてよい。このようなEDIDおよび/またはベンダ情報は、タッチシンク104の内部にあるメモリ(不図示)に格納されるとしてよい。また、さまざまな実施形態において、タッチソース102は、本明細書で説明するように、HIDブートモード動作およびHID記述子解析をサポートするシステムソフトウェアおよび/またはファームウェアを含むとしてよい。
<機能の発見>
さまざまな実施形態によると、タッチシンク104は、レジスタ122のうちTOUCH_CAPABILITY DPCDレジスタ部分におけるTOUCH_SUPPORTEDビットを用いてタッチ機能を表明するとしてよい。そしてタッチソース102は、シンク発見によってトリガされるシンク機能発見の一環としてTOUCH_SUPPORTEDビットを読み出すとしてよい。
さまざまな実施形態によると、タッチシンク104は、レジスタ122のうちTOUCH_CAPABILITY DPCDレジスタ部分におけるTOUCH_SUPPORTEDビットを用いてタッチ機能を表明するとしてよい。そしてタッチソース102は、シンク発見によってトリガされるシンク機能発見の一環としてTOUCH_SUPPORTEDビットを読み出すとしてよい。
さまざまな実施形態によると、タッチシンク104は、HID仕様で記述されているようにフォーマッティングされているHID記述子およびHIDレポート記述子を提供するとしてよい。これら2つの記述子(および、HID1.11仕様で許容されているように、任意で他のHIDクラス記述子)は、タッチソース102によって、タッチシンク104におけるタッチ機能を確かめた後に、レジスタ122のそれぞれのHID_CLASS_DESCRIPTORS DPCDレジスタ部分から取得されるとしてよい。さまざまな実施形態によると、HID記述子において宣言されるクラス記述子は、HID記述子で宣言されていた順序で、HID_DESRIPTORS DPCDレジスタにおいてHID記述子の直後に続くとしてよい。
<タッチシンク構成>
本開示に応じて、タッチソース102はさまざまにタッチシンク104を設定するとしてよい。例えば、表1は、タッチソース102がタッチシンク104に対して発行するコマンドのさまざまな例を挙げている。
本開示に応じて、タッチソース102はさまざまにタッチシンク104を設定するとしてよい。例えば、表1は、タッチソース102がタッチシンク104に対して発行するコマンドのさまざまな例を挙げている。
さまざまな実施形態において、タッチシンク104は、DP1.2規格に定義されている標準的なDPCD AUXトランザクションメカニズムを介して、表1のコマンドに応じて成功または失敗を知らせるとしてよい。
さまざまな実施形態において、タッチソース102は、データモジュール124をイネーブルまたはディセーブルすることによって、タッチシンク104のタッチ機能をイネーブルまたはディセーブルするとしてよい。例えば、表1に記載されているように、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタ内のENABLE_TOUCH_FEATUREビットを設定することによって、タッチシンク104のデータモジュール124(および関連付けられているデータ報告)をディセーブルするとしてよい。逆に、タッチソース102は、このビットをリセットすることによって、データモジュール124をイネーブルするとしてよい。例えば、タッチソース102は、ENABLE_TOUCH_FEATUREビットにゼロを書き込むことによってデータモジュール124をディセーブルするとしてよく、このビットに1を書き込むことによってデータモジュール124をイネーブルするとしてよい。
さまざまな実施形態において、タッチソース102は、タッチシンク104からのタッチデータにアクセスする方法を設定するとしてよい。さまざまな実施形態によると、データアクセス方法は、割り込みをベースにしたデータアクセス方法またはポーリングをベースにしたデータアクセス方法として設定されるとしてよい。例えば、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタ内のDATA_ACCESS_METHODビットをポーリングに設定して、タッチシンク104によるタッチ関連のIRQ_HPD割り込み生成をディセーブルすることによって、ポーリングベースのデータアクセス方法を構成するとしてよい。逆に、タッチソース102は、DATA_ACCESS_METHODビットを割り込みに設定して、タッチシンク104によるIRQ_HPD割り込み生成をイネーブルにすることによって、割り込みをベースとするデータアクセス方法をイネーブルするとしてよい。
表1について説明を続けると、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタのRESETビットを設定することによって、タッチシンク104のタッチ機能をリセットするとしてよい。タッチシンク104はこの後、このコマンドに応じて、データモジュール124をリセット条件にするとしてよい。特に、さまざまな実施形態において、リセット条件を設定することで、データモジュール124をディセーブルして、入力レポート待ち行列(後述する)をフラッシュして、利用可能なレポートデータが無いことを示すべくレジスタ122のTOUCH_STATUSレジスタをリセットするとしてよい。
さまざまな実施形態において、タッチソース102は、対象のレポートIDをTOUCH_PARAMETERS[0] DPCDレジスタに書き込み、CONFIGURE_TOUCH DPCDレジスタ内のGET_FEATURE_REPORTビットを1に設定することによって、機能レポートの読み出し要求を発行するとしてよい。さまざまな実施形態において、タッチシンク104は、REPORT_DATA DPCD領域においてオフセット0で、読み出すべき機能レポートの利用可能性を示すとしてよい。
さまざまな実施形態において、より詳細に以下で説明するように、タッチソース102はタッチシンク104に機能レポートを発行するとしてよい。例えば、タッチソース102は、レジスタ122のREPORT_DATA DPCD領域に特定のオフセットで機能レポートを書き込み、レジスタ122のCONFIGURE_TOUCH DPCDレジスタのSET_FEATURE_REPORTビットを設定することによって、機能レポートを発行するとしてよい。
また、さまざまな実施形態によると、より詳細に以下で説明するように、タッチソース102は、タッチシンク104に出力レポートを発行するとしてよい。例えば、タッチソース102は、特定のオフセットでレジスタ122のOUTPUT_REPORT DPCD領域に出力レポートを書き込み、レジスタ122のCONFIGURE_TOUCH DPCDレジスタのSET_OUTPUT_REPORTビットを設定することによって、出力レポートを発行するとしてよい。
表1の説明の最後に、さまざまな実施形態において、タッチソース102は、タッチシンク104が生成した入力レポートのレポートレートを設定するとしてよい。例えば、タッチソース102は、レジスタ122のIDLE_RATES DPCD領域にこのコマンドのパラメータを書き込み、レジスタ122のCONFIGURE_TOUCH DPCDレジスタのSET_IDLE_RATEビットを設定することによって、レポートレートを設定するとしてよい。さまざまな実施形態において、各レポートIDのアイドルレートは、以下のルールにしたがってミリ秒で特定されているとしてよい。
(1)値がゼロの場合、HID仕様で定められているように、期間が無限であることを意味する(この値の場合、タッチソース102がDATA_ACCESS_METHODを割り込みにプログラミングしたとしても、割り込みはタッチシンク104によって生成されない)。
(2)1から4の値はサポートされていない。
(3)アイドルレートの最小有効値は、最高サンプリングレートが200Hzであることを意味する5ミリ秒である。
(4)最低サンプリングレートが50Hzの場合、最高スキャンレートは20ミリ秒である。
(1)値がゼロの場合、HID仕様で定められているように、期間が無限であることを意味する(この値の場合、タッチソース102がDATA_ACCESS_METHODを割り込みにプログラミングしたとしても、割り込みはタッチシンク104によって生成されない)。
(2)1から4の値はサポートされていない。
(3)アイドルレートの最小有効値は、最高サンプリングレートが200Hzであることを意味する5ミリ秒である。
(4)最低サンプリングレートが50Hzの場合、最高スキャンレートは20ミリ秒である。
本開示によると、タッチソース102は、タッチシンク104のデータモジュール124をスリープ状態(低電力状態)に設定するとしてよい。例えば、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタのSET_LOW_POWERビットを設定することによって、スリープ状態(低電力状態)に設定するとしてよい。さまざまな実施形態によると、SET_LOW_POWERの値がゼロの場合、データモジュール124はON状態であるとしてよい。さまざまな実施形態によると、SET_LOW_POWERビットは、タッチシンク104がACTIVE状態である場合(例えば、DP1.2規格の図5−2のSTATE1)にのみ有効であるとしてよい。
<レジスタレイアウトおよびアクセスルール>
本開示によると、レジスタ122のうちHID_CLASS_DESCRIPTORS DPCDレジスタ部分は、HIDクラス記述子アレイを含むとしてよい。最初の記述子はHID記述子であるとしてよい。さまざまな実施形態によると、HID記述子のレイアウトは、HID1.11仕様のセクション6.2.1に準拠しているとしてよい。HID記述子は、サポートしているHID仕様の改正版、および、HIDデバイスに固有の他の情報を特定しているとしてよい。さらに、HID記述子のbNumDescriptorsフィールドは、利用可能な追加HIDクラス記述子の数を定義しているとしてよい。bNumDescriptorsフィールドの後には3つのバイトエントリから成るアレイが続くとしてよく、エントリの最初のバイト(bDescriptorType)はHIDクラス記述子の種類を定義しており、エントリのうち残りの2つのバイト(wDescriptorLength)はHIDクラス記述子のサイズを定義している。さまざまな実施形態によると、HIDクラス種類の値の割り当ては、HID1.11仕様のセクション7.1に準拠して行われるとしてよい。
本開示によると、レジスタ122のうちHID_CLASS_DESCRIPTORS DPCDレジスタ部分は、HIDクラス記述子アレイを含むとしてよい。最初の記述子はHID記述子であるとしてよい。さまざまな実施形態によると、HID記述子のレイアウトは、HID1.11仕様のセクション6.2.1に準拠しているとしてよい。HID記述子は、サポートしているHID仕様の改正版、および、HIDデバイスに固有の他の情報を特定しているとしてよい。さらに、HID記述子のbNumDescriptorsフィールドは、利用可能な追加HIDクラス記述子の数を定義しているとしてよい。bNumDescriptorsフィールドの後には3つのバイトエントリから成るアレイが続くとしてよく、エントリの最初のバイト(bDescriptorType)はHIDクラス記述子の種類を定義しており、エントリのうち残りの2つのバイト(wDescriptorLength)はHIDクラス記述子のサイズを定義している。さまざまな実施形態によると、HIDクラス種類の値の割り当ては、HID1.11仕様のセクション7.1に準拠して行われるとしてよい。
さまざまな実施形態において、図3に示すように、HIDクラス記述子は、レジスタ122のHID_CLASS_DESCRIPTORS DPCD領域レイアウト300においてバイト境界でパックされるとしてよい。例えば、HID記述子フィールド302は、オフセット0で始まるとしてよく、HID記述子302の第1のバイト(bLength)はHID記述子のサイズをバイトで特定するとしてよい。1以上のHIDクラス記述子がHID記述子に対応付けられているとしてよい。例えば、HIDクラス記述子304および306の2つの例を図3に示す。さまざまな実施形態によると、HID記述子302は、レイアウト300で見られるHIDクラス記述子のサイズ、数および/または種類を特定するとしてよい。さまざまな実施形態によると、HIDクラス記述子304は、HID Descriptor:bLengthのオフセットで始まるとしてよく、HIDクラス記述子306はHID Descriptor:bLength+wDescriptorLength[0]のオフセットで始まるとしてよく、第3のHIDクラス記述子(不図示)は、HID Descriptor:bLength+wDescriptorLength[0]+wDescriptorLength[1]で始まるとしてよい。以降同様である。さまざまな実施形態によると、HIDデバイスは、1つの追加HIDクラス記述子、レポート記述子を定義するのみとしてもよい。
<レポート>
本開示によると、より詳細に以下で説明するが、入力レポート、出力レポートおよび機能レポートが提供されるとしてよい。さまざまな実施形態によると、タッチソース102は出力レポートおよび機能レポートを発生させるとしてよく、タッチシンク194は入力レポートおよび機能レポートを発生させるとしてよい。さまざまな実施形態によると、タッチシンク104が生成した入力レポートは、データモジュール124が生成するタッチデータ等のインターフェースデータを含むとしてよい。さまざまな実施形態によると、タッチソース102が生成する出力レポートは、入力レポートが提供するタッチデータに応じてタッチソース102が生成する1以上のユーザインターフェースコマンド等の出力データを含むとしてよい。さまざまな実施形態によると、機能レポートは、デジタイザ(例えば、タッチシンク104)の動作モード、および、インターフェースによってサポートされる同時コンタクト/タッチの最大数を特定するとしてよい。例えば、より詳細に以下で説明するが、図13は、入力レポートと機能レポートとを組み合わせたレイアウトの例を示す。
本開示によると、より詳細に以下で説明するが、入力レポート、出力レポートおよび機能レポートが提供されるとしてよい。さまざまな実施形態によると、タッチソース102は出力レポートおよび機能レポートを発生させるとしてよく、タッチシンク194は入力レポートおよび機能レポートを発生させるとしてよい。さまざまな実施形態によると、タッチシンク104が生成した入力レポートは、データモジュール124が生成するタッチデータ等のインターフェースデータを含むとしてよい。さまざまな実施形態によると、タッチソース102が生成する出力レポートは、入力レポートが提供するタッチデータに応じてタッチソース102が生成する1以上のユーザインターフェースコマンド等の出力データを含むとしてよい。さまざまな実施形態によると、機能レポートは、デジタイザ(例えば、タッチシンク104)の動作モード、および、インターフェースによってサポートされる同時コンタクト/タッチの最大数を特定するとしてよい。例えば、より詳細に以下で説明するが、図13は、入力レポートと機能レポートとを組み合わせたレイアウトの例を示す。
さまざまな実施形態によると、タッチシンク104は、入力レポートをサポートすることが必須であるとしてよく、タッチシンク104は、対応するHID記述子で宣言されている場合にのみ、機能レポートをサポートするとしてもよい。さまざまな実施形態によると、タッチソース102は、タッチシンク104から受信した入力レポートおよび機能レポートを解析可能であること、および、出力レポートおよび機能レポートをこれに応じて生成可能であることが必須であるとしてよい。さまざまな実施形態によると、タッチソース102の1以上のソフトウェアアプリケーションは、HUTRR34文献に記載されているように、HIDの利用をサポートしているとしてよい。
<タッチシンクが生成するレポート>
本開示によると、タッチシンク104は、タッチソース102がアクセスする入力レポートおよび(適用可能な場合)機能レポートを格納するとしてよい。例えば、図4に示すように、タッチシンク104は、入力レポート402および対応する機能レポート404を、レジスタ122のREPORT_DATA DPCD領域レイアウト400で格納することによって、入力レポートおよび(適用可能な場合)機能レポートを格納するとしてよい。さまざまな実施形態によると、機能レポート404が対応するレポート記述子で宣言されている場合、レポートIDの各インスタンスはサイズが固定されているとしてよい。さまざまな実施形態によると、REPORT_DATA DPCD領域400の機能レポートフィールドのサイズは、対応するHID記述子によって定義されており、機能レポート404の最大のレポートIDのサイズであるとしてよい。レポート記述子が機能レポートを含まない場合、機能レポート404はレイアウト400に存在しないとしてよい。さまざまな実施形態によると、入力レポート402のサイズは、データモジュール124が取得したタッチコンタクトの数に基づいて変化するとしてよい。HID記述子は、レイアウト400の入力レポートサイズのエリア406において入力レポート402のサイズを特定するとしてよい。例えば、入力レポートサイズ406は、入力レポート402における有効バイト数を特定するとしてよい。さまざまな実施形態によると、入力レポートサイズフィールド406のサイズは、2バイトであるとしてよい。さらに、HID記述子は、入力レポート402の最大サイズを特定するとしてよい。
本開示によると、タッチシンク104は、タッチソース102がアクセスする入力レポートおよび(適用可能な場合)機能レポートを格納するとしてよい。例えば、図4に示すように、タッチシンク104は、入力レポート402および対応する機能レポート404を、レジスタ122のREPORT_DATA DPCD領域レイアウト400で格納することによって、入力レポートおよび(適用可能な場合)機能レポートを格納するとしてよい。さまざまな実施形態によると、機能レポート404が対応するレポート記述子で宣言されている場合、レポートIDの各インスタンスはサイズが固定されているとしてよい。さまざまな実施形態によると、REPORT_DATA DPCD領域400の機能レポートフィールドのサイズは、対応するHID記述子によって定義されており、機能レポート404の最大のレポートIDのサイズであるとしてよい。レポート記述子が機能レポートを含まない場合、機能レポート404はレイアウト400に存在しないとしてよい。さまざまな実施形態によると、入力レポート402のサイズは、データモジュール124が取得したタッチコンタクトの数に基づいて変化するとしてよい。HID記述子は、レイアウト400の入力レポートサイズのエリア406において入力レポート402のサイズを特定するとしてよい。例えば、入力レポートサイズ406は、入力レポート402における有効バイト数を特定するとしてよい。さまざまな実施形態によると、入力レポートサイズフィールド406のサイズは、2バイトであるとしてよい。さらに、HID記述子は、入力レポート402の最大サイズを特定するとしてよい。
<タッチソースが生成するレポート>
本開示によると、タッチソース102はタッチシンク104のレジスタ122に出力レポート(適用可能な場合)を格納するとしてよい。例えば、タッチソース102は、図5のレイアウト500に示されている構造を持つOUTPUT_REPORT DPCD領域に出力レポート502を格納するとしてよい。さまざまな実施形態によると、レポート記述子は、出力レポートサブ領域の最大サイズを定義するとしてよい。さまざまな実施形態によると、出力レポート502のサイズは、タッチソースが提供するコンテンツに基づいて変化するとしてよく、出力レポートサイズフィールド504は出力レポート502のサイズを特定するとしてよい。さまざまな実施形態によると、出力レポートサイズフィールド504のサイズは2バイトであるとしてよい。さらに、HID記述子は出力レポート502の最大サイズを特定するとしてよい。
本開示によると、タッチソース102はタッチシンク104のレジスタ122に出力レポート(適用可能な場合)を格納するとしてよい。例えば、タッチソース102は、図5のレイアウト500に示されている構造を持つOUTPUT_REPORT DPCD領域に出力レポート502を格納するとしてよい。さまざまな実施形態によると、レポート記述子は、出力レポートサブ領域の最大サイズを定義するとしてよい。さまざまな実施形態によると、出力レポート502のサイズは、タッチソースが提供するコンテンツに基づいて変化するとしてよく、出力レポートサイズフィールド504は出力レポート502のサイズを特定するとしてよい。さまざまな実施形態によると、出力レポートサイズフィールド504のサイズは2バイトであるとしてよい。さらに、HID記述子は出力レポート502の最大サイズを特定するとしてよい。
さまざまな実施形態によると、タッチソース102およびタッチシンク104は、REPORT_DATA DPCD領域400における複数の機能レポートレジスタを共有するとしてよい。このような実施形態によると、タッチソースおよびタッチシンクは、より詳細に以下で説明するように、TOUCH_STATUS DPCDレジスタのFEATURE_DATA_AVAILABLEビットを用いてアクセスを同期するとしてよい。
さまざまな実施形態によると、レポート記述子がレポートIDを利用して特定の種類の複数のレポート(例えば、機能レポート、入力レポートまたは出力レポート)を定義する場合、レポートサブ領域のサイズは、定義されている同じ種類の全てのレポートのサイズの結合であるとしてよい。本開示によると、タッチソース102に対応付けられているソフトウェアは、レポート記述子を解析することによって各レポートの最大サイズを、レポートサブ領域の前のサイズフィールドを検査することによって現在のレポートの有効バイト数を決定するとしてよい。
<データ転送> 本開示によると、タッチシンク104はタッチデータをタッチソース102に転送するとしてよい。例えば、タッチソース102は(F)AUXチャネル118を用いてタッチシンク104からタッチデータを取得するとしてよい。本開示によると、タッチソース102は、タッチシンク104が生成したタッチデータを含む入力レポート等のHIDレポートにアクセスするべくさまざまな方法を利用するとしてよい。例えば、上述したように、タッチソース102は、タッチソース102によるタッチデータアクセスについて、割り込みベースのデータアクセス方法またはポーリングベースのデータアクセス方法をイネーブルするようにタッチシンク104を設定するとしてよい。
図6は、本開示のさまざまな実施形態に応じた、タッチソースによる割り込みベースのデータアクセスを実現するためのプロセス600の一例を示すフローチャートである。図7は、プロセス600に対応するシーケンスチャート700の一例を示す図である。さまざまな実施形態によると、プロセス600は、タッチシンクのDPCDレジスタに格納されているタッチデータ等のインターフェースデータにアクセスするべく用いられるとしてよい。例えば、タッチソース102は、タッチシンク104のレジスタ122から入力レポートおよび/または機能レポートを読み出すべくプロセス600を実現するとしてよい。プロセス600は、図6のブロック602、604、606、608、610および612のうち1以上によって説明され得る、1以上の処理、機能または動作を含むとしてよい。これらに限定されることなく一例に過ぎないが、プロセス600は本明細書では図1のシステム100の一例に基づいて説明する。
プロセス600は、タッチソースが割り込みベースのアクセス方法を設定するブロック602から開始されるとしてよい。例えば、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタのDATA_ACCESS_METHODビットを用いて割り込みを生成するようにタッチシンク104に命令することによって、割り込みベースのデータアクセスを実行するようにタッチシンク104を設定するとしてよい。ブロック604において、タッチソースはタッチシンクのデータモジュールをイネーブルするとしてよい。例えば、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタのENABLE_TOUCHビットを設定することによって、データモジュール124をイネーブルするとしてよい。さまざまな実施形態によると、ブロック602および604を組み合わせて、タッチデータを提供するようタッチシンクを設定する一の初期化処理605とするとしてよい。例えば、タッチソース102は、(F)AUXチャネル118を介して一の書き込み処理を実行して、ブロック602および604を処理605として実行するとしてもよい。さまざまな実施形態において、タッチソースは、プロセス600を用いてレポートを読み出す度に初期化処理605を実行しないとしてもよい。このような実施形態では、タッチソースは代わりに、タッチシンクの設定の変更(例えば、システム100の設定の変更)に応じてのみ、初期化処理を実行するとしてよい。
ブロック606において、タッチソースはレポートを要求するとしてよい。例えば、タッチソース102は、TOUCH_PARAMETERS[0]を所望のレポートIDに設定することによって、そして、TOUCH_COMMAND DPCDレジスタのGET_FEATURE_REPORTビットを設定することによって、特定のレポートIDについて機能レポートを要求するとしてよい。
ブロック606において、レポート要求に応じて、タッチシンクはデータを提供して対応する割り込みを設定するとしてよい(ブロック608)。例えば、マルチタッチデータが利用可能になる度に、タッチシンク104は、TOUCH_STATUS DPCDレジスタのINPUT_REPORT_AVAILABLEビットおよびTOUCH_INTERRUPTビットがクリアな場合、REPORT_DATA DPCD領域の入力レポートセクションをマルチタッチデータでポピュレートするとしてよい。タッチシンク104はこの後、マルチタッチデータを含む入力レポートの利用可能性を通知するべく割り込みを設定するとしてよい。例えば、タッチシンク104は、DEVICE_SERVICE_IRQ_VECTORのINPUT_REPORT_AVAILABLEビットおよびTOUCH_INTERRUPTビットを設定することによって割り込みについて理由を設定するとしてよく、その後、タッチソース102に対して割り込みを提供するべくIRQ_HPDをアサートするとしてよい。
さらに、さまざまな実施形態において、GET_FEATURE_REPORTビットが設定されていることを検出すると、タッチシンクは、ブロック608において、TOUCH_PARAMETERS[0]からレポートIDを読み出し、TOUCH_STATUS DPCDレジスタのFEATURE_REPORT_AVAILABLEビットおよびTOUCH_INTERRUPTビットがクリアな場合、REPORT_DATA[0]において所望のレポートIDの機能レポートをポピュレートして、DEVICE_SERVICE_IRQ_VECTORのFEATURE_REPORT_AVAILABLEビットおよびTOUCH_INTERRUPTビットを設定することによって割り込みについて理由を設定し、IRQ_HPDをアサートするとしてよい。
プロセス600はこの後、タッチソースが割り込みの理由を読み出すブロック610に進むとしてよい。プロセス600はこの後、タッチソースがデータを読み出して割り込みの理由をクリアするブロック612において終了するとしてよい。例えば、IRQ_HPDを検出すると、タッチソース102は、TOUCH_INTERRUPTビットが設定されているか否かを確認するべく、DEVICE_SERVICE_IRQ_VECTORを読み出すとしてよい。TOUCH_INTERRUPTビットが設定されている場合、タッチソース102は、TOUCH_STATUS DPCDレジスタを読み出してINPUT_REPOR_AVAILABLEビットまたはOUTPUT_REPORT_AVAILABLEビットのいずれかが設定されているか否かを判断するとしてよく、利用可能性を示す情報(例えば、場合によっては、入力レポートおよび機能レポートの両方が利用可能であって、タッチソースは両方のレポートを読み出すとしてよい)に対応するデータ(例えば、入力レポートのマルチタッチデータ)を読み出すとしてよく、処理された利用可能性ビットをクリアして、そして、TOUCH_INTERRUPTビットをクリアすることによって、割り込みの理由をクリアするとしてよい。さまざまな実施形態によると、プロセス600は、タッチソース102がINPUT_REPORT_AVAILABLEビットおよびOUTPUT_REPORT_AVAILABLEビットの両方が設定されていないと判断する場合、ブロック612ではなくブロック610で終了するとしてもよい。
図8は、本開示のさまざまな実施形態に応じた、タッチソースによってポーリングベースのデータアクセスを実行するためのプロセス800の例を示すフローチャートである。図9は、プロセス800に対応するシーケンスチャート900の一例を示す図である。さまざまな実施形態によると、プロセス800はタッチシンクのDPCDレジスタに格納されているデータにアクセスするために用いられているとしてよい。例えば、タッチソース102は、タッチシンク104のレジスタ122から入力レポートおよび/または機能レポートを読み出すべくプロセス800を実行するとしてよい。プロセス800は、図8のブロック802、804、806、808、810および812のうち1以上によって図示されているように1以上の処理、機能または動作を含むとしてよい。これに限定されないが一例として、プロセス800は本明細書において、図1のシステム100の一例に関連付けて説明する。
プロセス800は、タッチソースがポーリングベースのアクセス方法を実行するようタッチシンクを設定するブロック802において開始されるとしてよい。例えば、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタにおいてDATA_ACCESS_METHODビットをポーリングに設定することによって、ポーリングベースのアクセスを実行するようタッチシンク104を設定するとしてよい。ブロック804において、タッチソースは、タッチシンクのデータモジュールをイネーブルするとしてよい。例えば、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタのENABLE_TOUCHビットを設定することによってデータモジュール124をイネーブルするとしてよい。さまざまな実施形態によると、ブロック802および804を組み合わせて、タッチデータを提供するようタッチシンクを設定する一の初期化処理805にするとしてもよい。例えば、タッチソース102は、処理805を実行するべく(F)AUXチャネル118を介して一の書き込み処理を実行するとしてよい。さまざまな実施形態によると、タッチソースは、プロセス800を用いてレポートを読み出す度に初期化処理805を実行するのではなく、このような実施形態では、タッチソースは、現在のタッチシンク設定の変更(例えば、システム100の設定の変更)に応じてのみ処理805を実行するとしてよい。
ブロック806において、タッチソースはレポートを要求するとしてよい。例えば、タッチソース102は、TOUCH_PARAMETERS[0]を所望のレポートIDに設定することによって、そして、TOUCH_COMMAND DPCDレジスタのGET_FEATURE_REPORTビットを設定することによって、特定のレポートIDについて機能レポートを要求するとしてよい。
ブロック806におけるレポート要求に応じて、タッチシンクはデータを提供し、データのフラグを立てて利用可能を意味するとしてよい(ブロック808)。例えば、タッチデータが利用可能になる度に、タッチシンク104は、TOUCH_STATUS DPCDレジスタのINPUT_REPORT_AVAILABLEビットおよびTOUCH_INTERRUPTビットがクリアである場合、REPORT_DATA DPCD領域の入力レポートセクションにタッチデータをポピュレートするとしてよい。タッチシンク104はこの後、レポート利用可能性フラグを設定するとしてよい(例えば、入力レポートについてINPUT_REPORT_AVAILABLEビット、および、機能レポートについてFEATURE_REPORT_AVAILABLEビット)。さまざまな実施形態によると、ブロック808を実行する場合、プロセス600とは異なり、タッチシンク104は、TOUCH_STATUSの対応する利用可能性ビットを設定するが、TOUCH_INTERRUPTビットを設定せず、IRQ_HPD信号をアサートしないとしてよい。
ブロック810において、タッチソースはレポートが利用可能か否かポーリングするとしてよい。例えば、タッチソース102は、一方または両方が設定されるまで、(例えば、入力レポートについてINPUT_REPORT_AVAILABLEビット、機能レポートについてFEATURE_REPORT_AVAILABLEビットを確認することによって)レポート利用可能性フラグの存在についてポーリングするとしてよい。ブロック812において、プロセス800は、タッチソースがデータを読み出して対応するフラグをクリアすると、終了するとしてよい。例えば、ブロック810において一方または両方の入力レポート利用可能性フラグが設定されているとタッチソース102が判断すると、ブロック812では、タッチソースが、対応するレポートをREPORT_DATA DPCDレジスタから読み出し、設定済みと発見されたレポート利用可能性フラグをクリアする。
さまざまな実施形態において、タッチソースは、割り込みベースのデータアクセス方法およびポーリングべースのデータアクセス方法を交互に実行して、図6および図8で上述したようにタッチシンクを交互に設定することによって、割り込み通知に対応付けられるレイテンシを最小限に抑えるとしてよい。このように交互にデータアクセスが実行される場合、タッチソースは、アクセス方法の切り替え中にデータを失わないようにすべきである。
図10は、本開示のさまざまな実施形態に応じた、タッチシンクに対する出力レポート通達のプロセス1000の例を示すフローチャートである。図11は、プロセス1000に対応するシーケンスチャート1100の一例を示す図である。さまざまな実施形態によると、プロセス1000は、タッチシンクのDPCDレジスタに出力データを書き込むために用いられるとしてよい。例えば、タッチソース102は、タッチシンク104のレジスタ122に出力レポートを書き込むためにプロセス1000を実行するとしてよい。プロセス1000は、図10のブロック1002、1004、1006、1008、1010および1012のうち1以上によって説明される1以上の処理、機能または動作を含むとしてよい。これに限定されないが一例として、プロセス1000は本明細書において、図1のシステム100の一例に関連付けて説明される。
プロセス1000は、データアクセスを実行するようにタッチソースがタッチシンクを設定するブロック1002で開始されるとしてよい。例えば、タッチソース102は、図6のブロック602について上述したように割り込みベースのデータアクセスを実行するようにタッチシンク104を設定するとしてもよく、または、図8のブロック802について上述したようにポーリングベースのデータアクセスを実行するようにタッチシンク104を設定するとしてもよい。ブロック1004において、タッチソースは、図6のブロック604および図8のブロック804に関して上述したように、タッチシンクのデータモジュールをイネーブルするとしてよい。さまざまな実施形態によると、ブロック1002および1004を組み合わせて、タッチデータを提供するようタッチシンクを設定する一の初期化処理1005とするとしてもよい。例えば、タッチソース102は、処理1005を実行するべく(F)AUXチャネル118を介して一の書き込み処理を実行するとしてよい。さまざまな実施形態によると、タッチソースは、プロセス1000を用いてレポートを読み出す度に初期化処理1005を実行するのではなく、このような実施形態によると、タッチソースは現在のタッチシンク設定の変更(例えば、システム100の設定の変更)に応じてのみ初期化処理を実行するとしてよい。
タッチシンクに通達すべき出力データが利用可能になると、タッチソースは、ブロック1006において、出力レポート読出要求が存在するか確認するとしてよい。例えば、タッチソース102は、ポーリングベースのアクセスの場合、TOUCH_STATUS DPCDレジスタにおいてOUTPUT_REPORT_READビットが設定されているか否かポーリングすることに基づき、または、割り込みベースのアクセスの場合、TOUCH_INTERRUPTビットおよびOUTPUT_REPORT_READビットを設定してIRQ_HPDを処理することに基づき、SET_OUTPUT_REPORTが0に設定されているかを確認することによって、先行出力レポートが完了したか否かを判断するとしてよい。存在する場合に先行出力レポートが完了したとタッチソースが判断すると、タッチソースは、ブロック1008において、次の出力レポートを書き込み、出力レポート読出要求をクリアするとしてよい。例えば、タッチソース102は、出力レポートをOUTPUT_REPORT DPCD領域の対応する位置に書き込み、OUTPUT_REPORT_READビットをクリアし、割り込みベースのアクセスの場合には、TOUCH_INTERRUPTビットをクリアするとしてよい。ブロック1010において、タッチソースは出力レポート設定イベントを発行するとしてよい。例えば、タッチソース102は、CONFIGURE_TOUCH DPCDレジスタのSET_OUTPUT_REPORTビットを設定するとしてよい。
プロセス1000は、タッチシンクが出力レポートを読み出し、出力レポート読出要求を設定するブロック1012に進むとしてよい。例えば、タッチシンク104が(例えば、タッチシンクファームウェアを介して)SET_OUTPUT_REPORTビットの値が1であると検出する場合(そして、割り込みベースのアクセスの場合、TOUCH_INTERRUPTがクリアであると検出する場合)、タッチシンク104は、OUTPUT_REPORT DPCD領域から出力レポートを読み出して、OUTPUT_REPORT_READビットを設定するとしてよく、割り込みベースのアクセスの場合、TOUCH_INTERRUPTビットを設定し、SET_OUTPUT_REPORビットをクリアするとしてよい。さまざまな実施形態によると、OUTPUT_REPORT_SETビットはタッチシンクにおける割り込みをトリガするとしてよく、または、タッチシンクファームウェアはこのビットについて時折ポーリングするとしてよい。
さまざまな実施形態によると、タッチソースは、出力レポート通達について、CONFIGURE_TOUCH DPCDレジスタのSET_OUTPUT_REPORTビットではなく、タッチソースがSET_FEATURE_REPORTビットを設定すること(そしてタッチシンクがSET_FEATURE_REPORTビットをクリアすること)を除き、図10に図示されている方法と同様に機能レポート通達を実行するようにタッチシンクを設定するとしてよく、読出レートおよび書込レートは、OUTPUT_REPORT_READビットではなく、FEATURE_REPORT_READビットを用いて制御されるとしてよく、機能レポートはREPORT_DATA DPCD領域においてオフセット0で利用可能になるとしてよく、機能レポートが設定されているレポートIDは、TOUCH_PARAMETERS[0] DPCDレジスタで通達されるとしてよい。さまざまな実施形態によると、TOUCH_PARAMETERS[0] DPCDレジスタはさらにGET_FEATURE_REPORTコマンドによっても利用されるので、タッチソースは、先述した情報を利用して任意の先行コマンドが完了していることを保証する必要があるとしてよい。
図12は、本開示のさまざまな実施形態に応じた、プロセス1200の一例を示すフローチャートである。プロセス1200は、図12のブロック1202、1204、1206、1208および1210のうち1以上で説明される1以上の処理、機能または動作を含むとしてよい。これに限定されることなく一例として、プロセス1200は本明細書において、一例として上述したシステム100、プロセス600、800および1000に関連付けて説明する。
プロセス1200は、HIDシンクデバイスが、補助(AUX)チャネルを介して、インターフェースデータを提供するように設定されるブロック1202で開始されるとしてよい。尚、HIDシンクデバイスは、インターフェースデータを生成するデータモジュールを含む。さまざまな実施形態によると、システム100を参照すると、ブロック1202では、タッチソース102が、(F)AUXチャネル118を介してマルチタッチデータとしてインターフェースデータを提供するタッチシンク104を設定するとしてよい。例えば、タッチソース102は、プロセス600のブロック602において、上述したのと同様の方法でブロック1202を実行するとしてよい。
プロセス1200は、AUXチャネルを介してデータモジュールがイネーブルされるブロック1204に進むとしてよい。さまざまな実施形態によると、ブロック1204では、タッチソース102がタッチシンク104のデータモジュール124を(F)AUXチャネル118を介してイネーブルするとしてよい。例えば、タッチソース102は、プロセス600のブロック604において、上述したのと同様に、ブロック1204を実行するとしてよい。
ブロック1206において、インターフェースデータは、AUXチャネルを介して受信されるとしてよい。さまざまな実施形態によると、ブロック1206では、タッチソース102が(F)AUXチャネル118を介してタッチシンク104からマルチタッチデータを受信するとしてよい。例えば、タッチソース102は、プロセス600のブロック606−612、または、プロセス800のブロック806−812において上述したのと同様に、ブロック1206を実行するとしてよい。
プロセス1200はこの後、ブロック1208および1210において終了するとしてよい。尚、出力データは、インターフェースデータに応じて生成するとしてよく(ブロック1208)、出力データはAUXチャネルを介してHIDシンクデバイスに提供されるとしてよい(ブロック1210)。さまざまな実施形態によると、ブロック1208および1210では、タッチソース102が、ブロック1206で受信したマルチタッチデータを用いて出力データを生成し、出力データを(F)AUXチャネル118を介してタッチシンク104へ提供するとしてよい。例えば、タッチソース102は、プロセス1000のブロック1006−1012において上述したのと同様に、ブロック1208を実行するとしてよい。
<レポートの鮮度>
本開示によると、機能レポートおよび/または出力レポートについてのタッチソースデバイスとタッチシンクデバイスとの間のやり取りは、両方のデバイスにおいてレポート利用可能性フラグを用いて調整されるとしてよい。入力レポートは、設定されたアイドルレートで生成されるとしてよい。タッチソースの読出レートが、タッチシンクが入力レポートを生成するレートよりも遅い場合、入力レポートは待ち行列に入れられるとしてよく、前述したように順序通りにタッチソースに対して利用可能になるとしてよい。場合によっては、タッチシンクのバッファはオーバーフローする場合がある。この場合、タッチシンクは、例えば、TOUCH_STATUSレジスタのBUFFER_OVERFLOWEDビットを設定して、IRQ_HPDをアサートするとしてよい。これに応じて、タッチソースは、例えば、タッチシンクのアイドルレートを下げることを含むこの情報に基づき、実施形態毎に特定の対策を取るとしてよい。
本開示によると、機能レポートおよび/または出力レポートについてのタッチソースデバイスとタッチシンクデバイスとの間のやり取りは、両方のデバイスにおいてレポート利用可能性フラグを用いて調整されるとしてよい。入力レポートは、設定されたアイドルレートで生成されるとしてよい。タッチソースの読出レートが、タッチシンクが入力レポートを生成するレートよりも遅い場合、入力レポートは待ち行列に入れられるとしてよく、前述したように順序通りにタッチソースに対して利用可能になるとしてよい。場合によっては、タッチシンクのバッファはオーバーフローする場合がある。この場合、タッチシンクは、例えば、TOUCH_STATUSレジスタのBUFFER_OVERFLOWEDビットを設定して、IRQ_HPDをアサートするとしてよい。これに応じて、タッチソースは、例えば、タッチシンクのアイドルレートを下げることを含むこの情報に基づき、実施形態毎に特定の対策を取るとしてよい。
さまざまな実施形態によると、タッチシンクは、少なくとも4つの最大サイズ(レポート記述子で説明した通り)の入力レポートに等しい待ち行列の長さを実現することが求められるとしてよい。さらに、さまざまな実施形態によると、タッチソースは任意で、処理効率を改善するべく本明細書で説明したバッファメカニズムを利用することを選択するとしてもよい。例えば、さまざまな実施形態によると、シンクデバイスは、本明細書で説明するバッファメカニズムおよび割り込みメカニズムを用いて、データを利用可能な状態にし、ソースデバイスによる処理に備えてデータを準備するが、ソースデバイスは任意で、より遅いレートでデータを処理するとしてもよく、例えば、データをバッチ処理するとしてもよい。例えば、タッチシンクが50Hzのレートでタッチデータを収集する一方、タッチソースは、タッチデータを2つのバッチで25Hzのレートでバッチ処理するとしてもよく、または、4つのバッチで12.5Hzのレートでバッチ処理するとしてもよく、以下同様である。
<サイドバンドメッセージ>
タッチソースとタッチシンクとの間の経路に存在する分岐デバイス、例えば、図2の分岐デバイス202は、DP1.2規格に応じて設定すべきである。図2のシステム200等のシステムでは、タッチソース102は、REMOTE_DPCD_READサイドバンドメッセージおよびREMOTE_DPCD_WRITEサイドバンドメッセージを用いて、タッチシンク104のDPCDレジスタにアクセスするとしてよい。さらに、タッチシンク104は、SINK_EVENT_NOTIFYを用いてタッチ割り込みを示すとしてよい。SINK_EVENT_NOTIFYは、メッセージにパラメータとしてSink_Eventを持ち、TOUCH_INTERRUPTをSink_Eventのビット7として利用する上向きブロードキャストメッセージトランザクションであるとしてよい。
タッチソースとタッチシンクとの間の経路に存在する分岐デバイス、例えば、図2の分岐デバイス202は、DP1.2規格に応じて設定すべきである。図2のシステム200等のシステムでは、タッチソース102は、REMOTE_DPCD_READサイドバンドメッセージおよびREMOTE_DPCD_WRITEサイドバンドメッセージを用いて、タッチシンク104のDPCDレジスタにアクセスするとしてよい。さらに、タッチシンク104は、SINK_EVENT_NOTIFYを用いてタッチ割り込みを示すとしてよい。SINK_EVENT_NOTIFYは、メッセージにパラメータとしてSink_Eventを持ち、TOUCH_INTERRUPTをSink_Eventのビット7として利用する上向きブロードキャストメッセージトランザクションであるとしてよい。
<DPタッチの実施形態例>
本開示によると、「多入力」モード動作をサポートするHIDデバイス(例えば、タッチソースデバイスまたはタッチシンクデバイス)は、デバイス構成機能レポートおよび入力レポートの2つのレポートを定義しているタッチインターフェースを実現するとしてよい。さまざまな実施形態によると、機能レポートは、(Digitizer:Device Mode)でデジタイザの動作モードを、そして、インターフェースがサポートする最大同時コンタクト/タッチ数を(Digitizer: Contact Count Maximum)で特定するとしてよい。さまざまな実施形態によると、ソフトウェアはデバイスが発見された場合に機能レポートを読み出すとしてよい。さまざまな実施形態によると、タッチレポートは、Digitizer: Contact Countフィールドと、コンタクト情報フィールドアレイとを含むとしてよい。尚、機能レポートのDigitizer: Contact Count Maximumフィールドがコンタクト情報アレイのサイズを特定している。Digitizer: Contact Countフィールドは、コンタクト情報アレイにおける現在有効なエントリ数を特定しているとしてよい(例えば、検出された指が4つのみである場合、コンタクトカウント=4であり、コンタクト情報アレイの最初の4つのエントリ(0−3)が有効である)。
本開示によると、「多入力」モード動作をサポートするHIDデバイス(例えば、タッチソースデバイスまたはタッチシンクデバイス)は、デバイス構成機能レポートおよび入力レポートの2つのレポートを定義しているタッチインターフェースを実現するとしてよい。さまざまな実施形態によると、機能レポートは、(Digitizer:Device Mode)でデジタイザの動作モードを、そして、インターフェースがサポートする最大同時コンタクト/タッチ数を(Digitizer: Contact Count Maximum)で特定するとしてよい。さまざまな実施形態によると、ソフトウェアはデバイスが発見された場合に機能レポートを読み出すとしてよい。さまざまな実施形態によると、タッチレポートは、Digitizer: Contact Countフィールドと、コンタクト情報フィールドアレイとを含むとしてよい。尚、機能レポートのDigitizer: Contact Count Maximumフィールドがコンタクト情報アレイのサイズを特定している。Digitizer: Contact Countフィールドは、コンタクト情報アレイにおける現在有効なエントリ数を特定しているとしてよい(例えば、検出された指が4つのみである場合、コンタクトカウント=4であり、コンタクト情報アレイの最初の4つのエントリ(0−3)が有効である)。
さまざまな実施形態によると、HID記述子のサイズは9バイトであるとしてよく(USBHIDDescriptor.bLength=9)、HID_CLASS_DESCRIPTORS DPCDレジスタにおいてオフセット0から始まるとしてよい。例えば、HID記述子は以下のようにフォーマッティングされているとしてよい。
さまざまな実施形態によると、レポート記述子のサイズは342バイトであるとしてよく(USBHIDDescriptor.cd[0].wDescriptorLength=0×156)、HID_DESCRIPTORエリアにおいてオフセット10から始まるとしてよい(USBHIDDescriptor.bLength+1)。別のHIDクラス記述子がHID記述子において定義されている場合、レポート記述子の終端(つまり、オフセット352、10+342)において開始される。例えば、レポート記述子は以下のようにフォーマッティングされているとしてよい。
<レポートデータレイアウト>
図13は、上述したレポート記述子が定義するREPORT_DATAエリアのレイアウト1300を示す図である。さまざまな実施形態によると、機能レポートは入力レポートの前に割り当てられるとしてよい。図13に示すように、レイアウト1300は、デバイスモードおよび最多コンタクトカウントという2つのフィールドを定義する1バイトの機能レポート1302を含む。タッチ入力レポート1304は、機能レポートフィールドおよび入力レポートサイズフィールドの直後に続く。入力レポートは、サイズが31バイトであるとしてよく、1バイトのコンタクトカウントフィールドの後に3バイトのコンタクトエントリを10個含むアレイが続くとしてよい。各コンタクトエントリは、8ビットのコンタクトIDの後に、12ビットのXフィールドおよび12ビットのYフィールドが続くとしてよい。コンタクトカウントは、現在有効なコンタクトエントリの数を特定する。例えば、コンタクトカウント=4の場合、コンタクトエントリ0−3が有効である。レイアウト1300に示すように、レポート記述子は入力レポート1304の前に機能レポート1302を定義するが、両レポートはレポート記述子において逆順で定義されるが、REPORT_DATAエリアでは依然として機能レポート1302が最初に来るように提示されるとしてもよい。
図13は、上述したレポート記述子が定義するREPORT_DATAエリアのレイアウト1300を示す図である。さまざまな実施形態によると、機能レポートは入力レポートの前に割り当てられるとしてよい。図13に示すように、レイアウト1300は、デバイスモードおよび最多コンタクトカウントという2つのフィールドを定義する1バイトの機能レポート1302を含む。タッチ入力レポート1304は、機能レポートフィールドおよび入力レポートサイズフィールドの直後に続く。入力レポートは、サイズが31バイトであるとしてよく、1バイトのコンタクトカウントフィールドの後に3バイトのコンタクトエントリを10個含むアレイが続くとしてよい。各コンタクトエントリは、8ビットのコンタクトIDの後に、12ビットのXフィールドおよび12ビットのYフィールドが続くとしてよい。コンタクトカウントは、現在有効なコンタクトエントリの数を特定する。例えば、コンタクトカウント=4の場合、コンタクトエントリ0−3が有効である。レイアウト1300に示すように、レポート記述子は入力レポート1304の前に機能レポート1302を定義するが、両レポートはレポート記述子において逆順で定義されるが、REPORT_DATAエリアでは依然として機能レポート1302が最初に来るように提示されるとしてもよい。
図6、図8、図10および図12で説明したプロセス600、800、1000および1200の実施形態例は図示した全てのブロックを図示した順序で実行することを含むが、本開示はこれに限定されるものではなく、さまざまな例によると、プロセス600、800、1000および1200の実施形態は、図示したブロックの一部のみを実行すること、および/または、図示した順序とは異なる順序で実行することを含むとしてもよい。
また、図6、図8、図10および図12のブロックのうち任意の1以上は、1以上のコンピュータプログラム製品で提供される命令に応じて実行されるとしてもよい。このようなプログラム製品は、例えば、プロセッサによって実行されると本明細書に記載する機能を実現する命令を提供する媒体を搬送する信号を含むとしてよい。コンピュータプログラム製品は、任意の形態のコンピュータ可読媒体で提供されるとしてよい。このため、例えば、1以上のプロセッサコアを含むプロセッサが、コンピュータ可読媒体によって当該プロセッサに搬送された命令に応じて、図6、図8、図10および図12に図示したブロックのうち1以上を実行するとしてよい。
本明細書で説明する任意の実施形態で用いられる場合、「モジュール」および/または「ロジック」という用語は、本明細書で説明する機能を実現するソフトウェア、ファームウェアおよび/またはハードウェアの任意の組み合わせを意味する。ソフトウェアは、ソフトウェアパッケージ、コード、および/または、命令セットもしくは命令として具現化されるとしてよく、「ハードウェア」という用語は、本明細書で説明する任意の実施形態で用いられる場合、例えば、ハードワイヤード回路、プログラミング可能な回路、ステートマシン回路、および/または、プログラミング可能な回路で実行する命令を格納するファームウェアを単独または任意の組み合わせた状態で含むとしてよい。モジュールおよび/またはロジックは、集合的または個別に、より大きなシステム、例えば、集積回路(IC)、システムオンチップ(SoC)等の一部を形成する回路として具現化されるとしてよい。
図14は、本開示に応じたシステム1400の一例を示す図である。さまざまな実施形態によると、システム1400はメディアシステムであるとしてよいが、システム1400はこれに限定されない。例えば、システム1400は、パーソナルコンピュータ(PC)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、手持ちコンピュータ、パームトップコンピュータ、携帯情報端末(PDA)、携帯電話、複合携帯電話/PDA、テレビ、スマートデバイス(例えば、スマートフォン、スマートタブレットまたはスマートテレビ)、モバイルインターネットデバイス(MID)、メッセージングデバイス、データ通信デバイス等に組み込まれているとしてよい。
さまざまな実施形態によると、システム1400では、プラットフォーム1402がディスプレイ1420に結合されている。プラットフォーム1402は、コンテンツサービスデバイス1430またはコンテンツ配信デバイス1440またはその他の同様のコンテンツソース等のコンテンツデバイスからコンテンツを受信するとしてよい。1以上のナビゲーション機能を持つナビゲーションコントローラ1450は、例えば、プラットフォーム1402および/またはディスプレイ1420とやり取りするために用いられるとしてよい。これらの構成要素はそれぞれ、より詳細に以下に説明されている。
さまざまな実施形態によると、プラットフォーム1402は、チップセット1405、プロセッサ1410、メモリ1412、ストレージ1414、グラフィクスサブシステム1415、アプリケーション1416、および/または、無線機器1418の任意の組み合わせを含むとしてよい。チップセット1405は、プロセッサ1410、メモリ1412、ストレージ1414、グラフィクスサブシステム1415、アプリケーション1416および/または無線機器1418の間の相互通信を実現するとしてよい。例えば、チップセット1405は、ストレージ1414と相互通信を実現可能なストレージアダプタ(不図示)を含むとしてよい。
プロセッサ1410は、複合命令セットコンピュータ(CISC)プロセッサまたは縮小命令セットコンピュータ(RISC)プロセッサ、x86命令セットに準拠したプロセッサ、マルチコアプロセッサまたは任意のその他のマイクロプロセッサまたは中央演算処理装置(CPU)として実現されるとしてよい。さまざまな実施形態によると、プロセッサ1410は、デュアルコアプロセッサ、デュアルコアモバイルプロセッサ等であってよい。
メモリ1412は、これらに限定されないが、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、または、スタティックRAM(SRAM)等、揮発性メモリデバイスとして実現されるとしてよい。
ストレージ1414は、これらに限定されないが、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内部ストレージデバイス、取り付けられたストレージデバイス、フラッシュメモリ、電池でバックアップされるSDRAM(シンクロナスDRAM)および/またはネットワークアクセス可能ストレージデバイス等の不揮発性ストレージデバイスとして実現されるとしてよい。さまざまな実施形態によると、ストレージ1414は、格納性能を高める技術を含むとしてよく、および、例えば、複数のハードドライブが含まれている場合に、価値あるデジタルメディアに対して保護機能が改善されているとしてよい。
グラフィクスサブシステム1415は、表示用の静止画像または動画像等の画像の処理を実行するとしてよい。グラフィクスサブシステム1415は、例えば、グラフィクスプロセッシングユニット(GPU)またはビジュアルプロセッシングユニット(VPU)であってよい。アナログインターフェースまたはデジタルインターフェースを用いて、グラフィクスサブシステム1415およびディスプレイ1420を通信可能に結合するとしてよい。例えば、インターフェースは、高精細マルチメディアインターフェース、DisplayPort、ワイヤレスHDMI(登録商標)および/またはワイヤレスHD準拠技術のいずれであってもよい。グラフィクスサブシステム1415は、プロセッサ1410またはチップセット1405に組み込まれているとしてよい。一部の実施形態によると、グラフィクスサブシステム1415は、チップセット1405に通信可能に結合されているスタンドアロンカードであってよい。
本明細書で説明したグラフィクス処理技術および/またはビデオ処理技術は、さまざまなハードウェアアーキテクチャで実現されるとしてよい。例えば、グラフィクス機能および/またはビデオ機能はチップセット内に集積化されているとしてよい。これに代えて、ディスクリートなグラフィクスプロセッサおよび/またはビデオプロセッサが利用されるとしてもよい。さらに別の実施形態によると、グラフィクス機能および/またはビデオ機能は、マルチコアプロセッサを含む汎用プロセッサによって提供されるとしてよい。別の実施形態によると、当該機能は消費者向け電子機器で実現されるとしてよい。
無線機器1418は、さまざまな適切な無線通信技術を用いて信号を送受信可能な1以上の無線機器を含むとしてよい。このような技術は、1以上の無線ネットワークにわたる通信を含むとしてよい。無線ネットワークの例を挙げると、(これらに限定されないが)、ワイヤレスローカルエリアネットワーク(WLAN)、ワイヤレスパーソナルエリアネットワーク(WPAN)、ワイヤレスメトロポリタンエリアネットワーク(WMAN)、セルラーネットワークおよび衛星ネットワークがある。このようなネットワークにわたって通信を行う際、無線機器1418は、1以上の適用可能な規格の任意のバージョンにしたがって動作するとしてよい。
さまざまな実施形態によると、ディスプレイ1420は任意のテレビ型モニタまたはディスプレイを含むとしてよい。ディスプレイ1420は、例えば、コンピュータディスプレイスクリーン、タッチスクリーンディスプレイ、ビデオモニタ、テレビのようなデバイスおよび/またはテレビを含むとしてよい。ディスプレイ1420は、デジタル形式および/またはアナログ形式であってよい。さまざまな実施形態によると、ディスプレイ1420はホログラフィックディスプレイであってよい。また、ディスプレイ1420は、視覚投影を受け取る透明な面であってよい。このような投影は、さまざまな形態の情報、画像および/またはオブジェクトを伝えるとしてよい。例えば、このような投影は、モバイル拡張現実(MAR)用の視覚オーバーレイであってよい。1以上のソフトウェアアプリケーション1416の制御下において、プラットフォーム1402は、ディスプレイ1420においてユーザインターフェース1422を表示するとしてよい。
さまざまな実施形態によると、コンテンツサービスデバイス1430は、任意の国家サービス、国際サービスおよび/または独立したサービスによってホストされるとしてよいので、例えば、インターネットを介してプラットフォーム1402にアクセス可能であるとしてよい。コンテンツサービスデバイス1430は、プラットフォーム1402および/またはディスプレイ1420に結合されているとしてよい。プラットフォーム1402および/またはコンテンツサービスデバイス1430は、ネットワーク1460との間でメディア情報を通信(例えば、送受信)するべく、ネットワーク1460に結合されているとしてよい。コンテンツ配信デバイス1440はさらに、プラットフォーム1402および/またはディスプレイ1420に結合されているとしてよい。
さまざまな実施形態によると、コンテンツサービスデバイス1430は、ケーブルテレビボックス、パーソナルコンピュータ、ネットワーク、電話、デジタル情報および/またはコンテンツを配信可能なインターネットが可能なデバイスまたは機器、および、コンテンツプロバイダとプラットフォーム1402および/またはディスプレイ1420との間で、ネットワーク1460を介して、または、直接、一方向または双方向にコンテンツを通信可能な任意の他の同様のデバイスを含むとしてよい。コンテンツは、システム1400のコンポーネントのうち任意の一のコンポーネントおよびコンテンツプロバイダとの間で、ネットワーク1460を介して、一方向および/または双方向に通信され得ると認められる。コンテンツの例としては、例えば、ビデオ、音楽、医療情報およびゲーム情報等を含む任意のメディア情報が挙げられるとしてよい。
コンテンツサービスデバイス1430は、メディア情報、デジタル情報および/または他のコンテンツを含むケーブルテレビプログラミング等のコンテンツを受信するとしてよい。コンテンツプロバイダの例としては、任意のケーブルテレビまたは衛星テレビまたは無線機器またはインターネットコンテンツプロバイダが挙げられるとしてよい。上述した例は、いかなる方法でも本開示に応じた実施形態を限定することを意味するものではない。
さまざまな実施形態によると、プラットフォーム1402は、1以上のナビゲーション機能を含むナビゲーションコントローラ1450から制御信号を受信するとしてよい。コントローラ1450のナビゲーション機能は、例えば、ユーザインターフェース1422とやり取りするために用いられるとしてよい。実施形態によると、ナビゲーションコントローラ1450は、ユーザに空間(例えば、一続きで多次元の)データをコンピュータに入力させるコンピュータハードウェアコンポーネント(特に、ヒューマンインターフェースデバイス)であるポインティングデバイスであってよい。グラフィカルユーザインターフェース(GUI)およびテレビおよびモニタ等の多くのシステムによると、ユーザは、物理的なジェスチャを用いてデータを制御してコンピュータまたはテレビに提供できるようになる。
コントローラ1450のナビゲーション機能の動きは、ポインタ、カーソル、フォーカスリング、または、ディスプレイ上で表示される他の視覚指示器の動きによって、ディスプレイ(例えば、ディスプレイ1420)上で複製されるとしてよい。例えば、ソフトウェアアプリケーション1416の制御下で、ナビゲーションコントローラ1450上のナビゲーション機能は、例えば、ユーザインターフェース1422上に表示される仮想ナビゲーション機能にマッピングされるとしてよい。実施形態によると、コントローラ1450は、別箇のコンポーネントではないとしてよく、プラットフォーム1402および/またはディスプレイ1420に組み込まれているとしてもよい。しかし、本開示は、本明細書で説明または図示した構成要素または内容に限定されない。
さまざまな実施形態によると、ドライバ(不図示)は、ユーザは、例えば、最初に起動した後ボタンをタッチすることで、イネーブルされている場合、テレビのように瞬時にプラットフォーム1402をオンおよびオフに制御できるようにする技術を含むとしてよい。プログラムロジックは、プラットフォーム1402に、オフの状態であっても、メディアアダプタまたは他のコンテンツサービスデバイス1430またはコンテンツ配信デバイス1440に対して、コンテンツをストリーミングさせるとしてよい。また、チップセット1405は、例えば、5.1サラウンドサウンドオーディオおよび/または高精細7.1サラウンドサウンドオーディオについて、ハードウェアおよび/またはソフトウェアサポートを含むとしてよい。ドライバは、一体化されたグラフィクスプラットフォームのグラフィクスドライバを含むとしてよい。実施形態によると、グラフィクスドライバは、ペリフェラルコンポーネントインターコネクト(PCI)エクスプレスグラフィクスカードを含むとしてよい。
さまざまな実施形態によると、システム1400の図示されているコンポーネントのうち任意の1以上は一つに集積化されているとしてもよい。例えば、プラットフォーム1402およびコンテンツサービスデバイス1430が一つに集積化されているとしてよく、または、プラットフォーム1402およびコンテンツ配信デバイス1440が一つに集積化されているとしてもよいし、または、例えば、プラットフォーム1402、コンテンツサービスデバイス1430、および、コンテンツ配信デバイス1440が一つに集積化されているとしてもよい。さまざまな実施形態によると、プラットフォーム1402およびディスプレイ1420は、一体的な一のユニットであるとしてよい。ディスプレイ1420およびコンテンツサービスデバイス1430は一に集積化されているとしてよく、または、例えば、ディスプレイ1420およびコンテンツ配信デバイス1440は一に集積化されているとしてよい。これらの例は本開示を限定することを意図するものではない。
さまざまな実施形態によると、システム1400は、無線システム、有線システムまたはこれらの組み合わせとして実現されるとしてよい。無線システムとして実現される場合、システム1400は、無線共有媒体、例えば、1以上のアンテナ、送信機、受信機、送受信機、増幅器、フィルタ、制御ロジック等を介して通信を行うのに適したコンポーネントおよびインターフェースを含むとしてよい。無線共有媒体の例には、無線スペクトルの一部、例えば、RFスペクトル等が含まれるとしてよい。有線システムとして実現される場合、システム1400は、入出力(I/O)アダプタ、I/Oアダプタを対応する有線通信媒体に接続する物理コネクタ、ネットワークインターフェースカード(NIC)、ディスクコントローラ、ビデオコントローラ、オーディオコントローラ等の有線通信媒体を介して通信を行うのに適したコンポーネントおよびインターフェースを含むとしてよい。有線通信媒体の例には、ワイヤ、ケーブル、金属リード線、プリント配線基板(PCB)、バックプレーン、スイッチファブリック、半導体材料、ツイストペアワイヤ、同軸ケーブル、光ファイバ等が含まれるとしてよい。
プラットフォーム1402は、情報を通信するための1以上の論理チャネルまたは物理チャネルを構築するとしてよい。当該情報は、メディア情報および制御情報を含むとしてよい。メディア情報は、ユーザ宛てのコンテンツを表す任意のデータを意味するとしてよい.コンテンツの例には、例えば、音声会話のデータ、ビデオ会議、ストリーミングビデオ、電子メール(eマール)メッセージ、音声メールメッセージ、英数字記号、グラフィクス、画像、ビデオ、テキスト等があるとしてよい。音声会話のデータは、例えば、スピーチ情報、沈黙の期間、背景ノイズ、快適雑音、トーン等であってよい。制御情報は、自動化されたシステム用のコマンド、命令または制御ワードを表す任意のデータを意味するとしてよい。例えば、制御情報は、システムにおいてメディア情報をルーティングするため、または、所定の方法でメディア情報を処理するようにノードに命令するために用いられるとしてよい。しかし、実施形態は、図14に説明または図示した構成要素または内容に限定されるものではない。
上述したように、システム1400は、さまざまな物理的なスタイルまたはフォームファクタで具現化するとしてもよい。図15は、システム1400が具現化され得る小フォームファクターデバイス1500の実施形態を説明するための図である。実施形態によると、例えば、デバイス1500は、無線機能を持つモバイルコンピューティングデバイスとして実現されるとしてよい。モバイルコンピューティングデバイスは、処理システムと、例えば、1以上の電池等のモバイル電源を備える任意のデバイスを意味するとしてよい。
上述したように、モバイルコンピューティングデバイスの例は、パーソナルコンピュータ(PC)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、手持ちコンピュータ、パームトップコンピュータ、携帯情報端末(PDA)、携帯電話、複合携帯電話/PDA、テレビ、スマートデバイス(例えば、スマートフォン、スマートタブレット、または、スマートテレビ)、モバイルインターネットデバイス(MID)、メッセージングデバイス、データ通信デバイス等を含むとしてよい。
モバイルコンピューティングデバイスの例としてはさらに、人が着用するように構成されているコンピュータ、例えば、手首着用コンピュータ、指着用コンピュータ、指輪状コンピュータ、メガネ状コンピュータ、ベルトクリップコンピュータ、アームバンドコンピュータ、靴着用コンピュータ、衣服状コンピュータおよびその他の着用可能なコンピュータも含まれるとしてよい。さまざまな実施形態によると、例えば、モバイルコンピューティングデバイスは、コンピュータアプリケーション、ならびに、音声通信および/またはデータ通信を実行可能なスマートフォンとして実現されるとしてもよい。一部の実施形態は、一例としてスマートフォンとして実現されているモバイルコンピューティングデバイスに基づいて説明されているが、他の実施形態は他の無線モバイルコンピューティングデバイスを用いて実現され得るものと考えられたい。実施形態はこれに限定されない。
図15に示すように、デバイス1500は、筐体1502、ディスプレイ1504、入出力(I/O)デバイス1506、および、アンテナ1508を備えるとしてよい。デバイス1500はさらに、ナビゲーション機能1512を備えるとしてよい。ディスプレイ1504は、モバイルコンピューティングデバイスについて適切な情報を表示する任意の適切なディスプレイユニットを有するとしてよい。I/Oデバイス1506は、モバイルコンピューティングデバイスに情報を入力する任意の適切なI/Oデバイスを有するとしてよい。I/Oデバイス1506の例としては、英数字キーボード、数字キーパッド、タッチパッド、入力キー、ボタン、スイッチ、ロッカースイッチ、マイクロフォン、スピーカ、音声認識デバイスおよびソフトウェア等が挙げられるとしてよい。また、マイクロフォン(不図示)を利用してデバイス1500に情報を入力するとしてよい。このような情報は、音声認識デバイス(不図示)によってデジタル化されるとしてよい。実施形態はこれに限定されない。
さまざまな実施形態は、ハードウェア要素、ソフトウェア要素またはこれらの組み合わせを用いて実現されるとしてよい。ハードウェア要素の例は、プロセッサ、マイクロプロセッサ、回路、回路要素(例えば、トランジスタ、抵抗、キャパシタ、インダクタ等)、集積回路、特定用途向け集積回路(ASIC)、プログラミング可能ロジックデバイス(PLD)、デジタルシグナルプロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、ロジックゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセット等を含むとしてよい。ソフトウェアの例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、方法、プロシージャ、ソフトウェアインターフェース、アプリケーションプログラムインターフェース(API)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボルまたはこれらの任意の組み合わせを含むとしてよい。実施形態をハードウェア要素および/またはソフトウェア要素を用いて実現するか否かの判断は、任意の数の要因、例えば、所望の計算レート、電力レベル、耐熱性、処理サイクルバジェット、入力データレート、出力データレート、メモリリソース、データバス速度、および、他の設計上または性能上の制約に左右されるとしてよい。
少なくとも一の実施形態の1以上の側面は、プロセッサ内のさまざまなロジックを表現する、機械可読媒体に格納されている命令によって実現されるとしてよい。当該命令を機械によって読み出すと、当該機械は、本明細書に記載されている技術を実行するロジックを製造する。このような表現は、「IPコア」として知られており、有形の機械可読媒体に格納され、さまざまな顧客または製造設備に供給され、実際にロジックまたはプロセッサを製造する製造機械にロードされるとしてよい。
さまざまな実施形態に基づき本明細書に記載した特定の特徴を説明してきたが、本文献は限定的に解釈されることを意図したものではない。このため、本明細書に記載した実施形態のさまざまな変形例は、他の実施形態と同様に、本開示の関連技術分野の当業者には明らかであり、本開示の意図および範囲に含まれるものとする。
Claims (30)
- ヒューマンインターフェースデバイスソースデバイス(HIDソースデバイス)において、
インターフェースデータを生成するデータモジュールを有するヒューマンインターフェースデバイスシンクデバイス(HIDシンクデバイス)を、前記インターフェースデータを提供するように、補助チャネル(AUXチャネル)を介して、設定する段階と、
前記AUXチャネルを介して前記データモジュールをイネーブルする段階と、
前記AUXチャネルを介して前記インターフェースデータを受信する段階と
を備える方法。 - 前記インターフェースデータはマルチタッチデータを含む請求項1に記載の方法。
- 前記AUXチャネルは高速補助チャネル((F)AUXチャネル)を含む請求項1または2に記載の方法。
- 前記HIDソースデバイスにおいて、
前記インターフェースデータに応じて出力データを生成する段階と、
前記出力データを前記HIDシンクデバイスに提供する段階と
をさらに備える請求項1から3のいずれか一項に記載の方法。 - 前記インターフェースデータを提供するように前記HIDシンクを設定する段階は、データアクセス方法を設定する段階を有する請求項1から4のいずれか一項に記載の方法。
- 前記データアクセス方法は、割り込みベースのデータアクセス方法、ポーリングベースのデータアクセス方法、または、インターリーブデータアクセス方法の少なくとも1つを含む請求項5に記載の方法。
- 前記インターフェースデータを提供するように前記HIDシンクを設定する段階は、および前記データモジュールをイネーブルする段階は、一回の書き込み処理を有する請求項1から6のいずれか一項に記載の方法。
- 前記インターフェースデータを受信する段階は、
前記HIDソースデバイスにおいて、
割り込みの理由を読み出す段階と、
前記割り込みの理由を読み出す段階に応じて前記インターフェースデータを読み出す段階と、
前記割り込みの理由をクリアする段階と
を有する請求項1から7のいずれか一項に記載の方法。 - 前記インターフェースデータを受信する段階は、
前記HIDソースデバイスにおいて、
レポートを要求する段階と、
レポート利用可能性フラグについてポーリングする段階と、
前記レポート利用可能性フラグを検出することに応じて前記インターフェースデータを読み出す段階と、
前記レポート利用可能性フラグをクリアする段階と
を有する請求項1から7のいずれか一項に記載の方法。 - 前記インターフェースデータを受信する段階は、前記HIDシンクデバイスの少なくとも1つのレジスタから前記インターフェースデータを取得する段階を有する
請求項1から7のいずれか一項に記載の方法。 - ヒューマンインターフェースデバイスソースデバイス(HIDソースデバイス)において、
インターフェースデータを生成するデータモジュールを有するヒューマンインターフェースデバイスシンクデバイス(HIDシンクデバイス)を、前記インターフェースデータを提供するように、補助チャネル(AUXチャネル)を介して、設定する手順と、
前記AUXチャネルを介して前記データモジュールをイネーブルする手順と、
前記AUXチャネルを介して前記インターフェースデータを受信する手順と
を実行させるためのプログラム。 - 前記インターフェースデータはマルチタッチデータを含む請求項11に記載のプログラム。
- 前記AUXチャネルは高速補助チャネル((F)AUXチャネル)を含む請求項11または12に記載のプログラム。
- 前記HIDソースデバイスにおいて、
前記インターフェースデータに応じて出力データを生成する手順と、
前記出力データを前記HIDシンクデバイスに提供する手順と
をさらに実行させるための請求項11から13のいずれか一項に記載のプログラム。 - 前記インターフェースデータを提供するように前記HIDシンクを設定する手順は、データアクセス方法を設定する手順を有する請求項11から14のいずれか一項に記載のプログラム。
- 前記データアクセス方法は、割り込みベースのデータアクセス方法、ポーリングベースのデータアクセス方法、または、インターリーブデータアクセス方法の少なくとも1つを含む請求項15に記載のプログラム。
- 前記インターフェースデータを提供するように前記HIDシンクを設定する手順および前記データモジュールをイネーブルする手順は、一回の書き込み処理を有する請求項11から16のいずれか一項に記載のプログラム。
- 前記インターフェースデータを受信する手順は、
前記HIDソースデバイスにおいて、
割り込みの理由を読み出す手順と、
前記割り込みの理由を読み出す段階に応じて前記インターフェースデータを読み出す手順と、
前記割り込みの理由をクリアする手順と
を有する請求項11から17のいずれか一項に記載のプログラム。 - 前記インターフェースデータを受信する手順は、
前記HIDソースデバイスにおいて、
レポートを要求する手順と、
レポート利用可能性フラグについてポーリングする手順と、
前記レポート利用可能性フラグを検出することに応じて前記インターフェースデータを読み出す手順と、
前記レポート利用可能性フラグをクリアする手順と
を有する請求項11から17のいずれか一項に記載のプログラム。 - 前記インターフェースデータを受信する手順は、前記HIDシンクデバイスの少なくとも1つのレジスタから前記インターフェースデータを取得する手順を有する請求項11から17のいずれか一項に記載のプログラム。
- インターフェースデータを取得するデータモジュールを有するヒューマンインターフェースデバイスシンクデバイス(HIDシンクデバイス)と、
前記インターフェースデータを提供し、そして、補助チャネル(AUXチャネル)を介して、割り込みまたはフラグの一方を用いて、前記インターフェースデータの利用可能性を通達する、前記HIDシンクデバイスに含まれているロジックと
を備える装置。 - 前記HIDシンクデバイスはさらに、複数のレジスタ領域を有する請求項21に記載の装置。
- 前記ロジックは、前記インターフェースデータを、前記複数のレジスタ領域のうち少なくとも1つに格納することによって、前記インターフェースデータを提供する請求項22に記載の装置。
- 前記ロジックは、前記複数のレジスタ領域のうち少なくとも1つにおいてビットを設定することによって、前記フラグを用いて前記インターフェースデータの前記利用可能性を通達する請求項22に記載の装置。
- 前記ロジックは、ヒューマンインターフェースデバイスソースデバイス(HIDソースデバイス)によって設定されることに応じて、前記インターフェースデータを提供する請求項21に記載の装置。
- インターフェースデータを取得するデータモジュールを有するヒューマンインターフェースデバイスシンクデバイス(HIDシンクデバイス)と、
補助チャネル(AUXチャネル)によって前記HIDシンクデバイスに通信可能に結合されているヒューマンインターフェースデバイスソースデバイス(HIDソースデバイス)と
を備え、
前記HIDソースデバイスは、前記AUXチャネルを用いて、
前記インターフェースデータを提供するように前記HIDシンクデバイスを設定し、
前記データモジュールをイネーブルし、
前記インターフェースデータを受信するシステム。 - 前記HIDソースデバイスはさらに、
前記インターフェースデータに応じて出力データを生成し、
前記AUXチャネルを介して前記HIDシンクデバイスに前記出力データを供給する請求項26に記載のシステム。 - 前記インターフェースデータを提供するように前記HIDシンクデバイスを設定するべく、前記HIDソースデバイスは、割り込みベースのデータアクセス方法、ポーリングベースのデータアクセス方法、または、インターリーブデータアクセス方法の少なくとも1つを含むデータアクセス方法を設定する請求項26または27に記載のシステム。
- 前記割り込みベースのデータアクセス方法を用いて前記インターフェースデータを受信するべく、前記HIDソースデバイスは、
割り込みの理由を読み出し、
前記割り込みの理由を読み出すことに応じて前記インターフェースデータを読み出し、
前記割り込みの理由をクリアする請求項28に記載のシステム。 - 前記ポーリングベースのデータアクセス方法を用いて前記インターフェースデータを受信するべく、前記HIDソースデバイスは、
レポートを要求し、
レポート利用可能性フラグについてポーリングし、
前記レポート利用可能性フラグを検出することに応じて前記インターフェースデータを読み出し、
前記レポート利用可能性フラグをクリアする請求項28に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161551712P | 2011-10-26 | 2011-10-26 | |
US61/551,712 | 2011-10-26 | ||
PCT/US2011/065447 WO2013062602A1 (en) | 2011-10-26 | 2011-12-16 | Multi-touch interface schemes |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014534522A true JP2014534522A (ja) | 2014-12-18 |
Family
ID=48168264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014538775A Pending JP2014534522A (ja) | 2011-10-26 | 2011-12-16 | マルチタッチインターフェース方式 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9262000B2 (ja) |
JP (1) | JP2014534522A (ja) |
KR (2) | KR101590820B1 (ja) |
CN (1) | CN103890744B (ja) |
DE (1) | DE112011105779B4 (ja) |
GB (1) | GB2512214B (ja) |
WO (1) | WO2013062602A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6216909B1 (ja) * | 2016-06-28 | 2017-10-18 | 株式会社ワコム | シリアル通信方法及びセンサコントローラ |
WO2018003841A1 (ja) * | 2016-06-28 | 2018-01-04 | 株式会社ワコム | シリアル通信方法及びセンサコントローラ |
JP2020198137A (ja) * | 2015-04-20 | 2020-12-10 | 株式会社ワコム | ホストプロセッサとアクティブスタイラスとの間の通信の方法、センサコントローラ、ホストプロセッサ、ホストプロセッサとアクティブスタイラスとセンサコントローラとを含むシステム |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9262000B2 (en) | 2011-10-26 | 2016-02-16 | Intel Corporation | Multi-touch interface schemes |
CN102662514B (zh) * | 2012-03-30 | 2017-03-29 | 中兴通讯股份有限公司 | 一种控制触摸屏的方法和移动终端 |
TW201441826A (zh) * | 2013-04-26 | 2014-11-01 | Wistron Corp | 資料傳輸方法、觸控資料處理方法以及電子裝置 |
US9417726B2 (en) * | 2013-04-29 | 2016-08-16 | Intel Corporation | Supporting keyboard and mouse over embedded displayport without using a universal serial bus |
US9665186B2 (en) | 2014-03-19 | 2017-05-30 | Toshiba Tec Kabushiki Kaisha | Desktop information processing apparatus and control method for input device |
KR20160098700A (ko) | 2015-02-11 | 2016-08-19 | 삼성전자주식회사 | 멀티 터치 입력을 처리하기 위한 전자 장치 및 그 동작 방법 |
KR102317897B1 (ko) | 2015-06-04 | 2021-10-28 | 삼성디스플레이 주식회사 | 테스트 보드 및 그의 구동방법 |
CN109871190B (zh) * | 2015-06-16 | 2022-05-31 | 广州视睿电子科技有限公司 | 一种无线传屏方法、扩展设备和无线传屏系统 |
US11374623B2 (en) * | 2020-05-27 | 2022-06-28 | Qualcomm Incorporated | Connected isochronous stream swapping |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0310363A (ja) * | 1989-06-08 | 1991-01-17 | Nippon Steel Corp | 並列計算機における待ち時間設定方法 |
JPH0644000A (ja) * | 1992-04-15 | 1994-02-18 | Internatl Business Mach Corp <Ibm> | コンピュータ・システム |
JP2000259523A (ja) * | 1999-03-09 | 2000-09-22 | Fuji Xerox Co Ltd | データ転送装置、lan通信システム及びデータ転送方法 |
JP2001186146A (ja) * | 1999-12-27 | 2001-07-06 | Seiko Epson Corp | データ転送制御装置及び電子機器 |
JP2009053963A (ja) * | 2007-08-27 | 2009-03-12 | Fuji Electric Systems Co Ltd | プログラマブルコントローラ、そのcpuモジュール |
JP2009094667A (ja) * | 2007-10-05 | 2009-04-30 | Sony Corp | 表示装置および送信装置 |
JP2010157820A (ja) * | 2008-12-26 | 2010-07-15 | Sharp Corp | 制御システム、及び制御方法 |
JP2011003125A (ja) * | 2009-06-22 | 2011-01-06 | Sony Corp | 情報処理装置、表示制御方法、およびプログラム |
JP2011188230A (ja) * | 2010-03-09 | 2011-09-22 | Panasonic Corp | 通信制御システム、シンク機器及び、ソース機器 |
US20120182223A1 (en) * | 2011-01-13 | 2012-07-19 | Henry Zeng | Integrated display and touch system with displayport/embedded displayport interface |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63175612A (ja) | 1986-12-26 | 1988-07-20 | ベロルススキ−、チエフノロギチエスキ−、インスチツ−ト、イメ−ニ、エス、エム、キ−ロワ | 懸濁物を液相と固体粒子に分離する方法および装置 |
CA2398798A1 (en) * | 2001-08-28 | 2003-02-28 | Research In Motion Limited | System and method for providing tactility for an lcd touchscreen |
US8407347B2 (en) * | 2004-11-19 | 2013-03-26 | Xiao Qian Zhang | Method of operating multiple input and output devices through a single computer |
US7432916B2 (en) * | 2004-12-09 | 2008-10-07 | Universal Electronics, Inc. | Controlling device with dual-mode, touch-sensitive display |
CN1664802A (zh) * | 2005-03-30 | 2005-09-07 | 中国人民解放军国防科学技术大学 | 面向大规模并行系统的可程控中断控制方法 |
US7928964B2 (en) | 2005-04-22 | 2011-04-19 | Microsoft Corporation | Touch input data handling |
JP4657116B2 (ja) * | 2006-02-06 | 2011-03-23 | アルパイン株式会社 | 表示装置、メニュー提供装置およびメニュー提供方法 |
US8190785B2 (en) * | 2006-05-26 | 2012-05-29 | Smart Technologies Ulc | Plug-and-play device and method for enhancing features and settings in an interactive display system |
US20080180412A1 (en) | 2007-01-31 | 2008-07-31 | Microsoft Corporation | Dual mode digitizer |
TWM321662U (en) | 2007-02-14 | 2007-11-01 | Inventec Appliances Corp | Keyboard for mobile electronic device |
US8063504B2 (en) * | 2007-05-07 | 2011-11-22 | Analogix Semiconductor, Inc. | Systems and methods for powering circuits for a communications interface |
US8009147B2 (en) | 2007-09-27 | 2011-08-30 | At&T Intellectual Property I, Lp | Multi-touch interfaces for user authentication, partitioning, and external device control |
US20100332373A1 (en) * | 2009-02-26 | 2010-12-30 | Jason Crabtree | System and method for participation in energy-related markets |
US8242803B2 (en) * | 2009-06-26 | 2012-08-14 | Broadcom Corporation | HDMI and displayport dual mode transmitter |
US8686759B2 (en) | 2009-08-07 | 2014-04-01 | Synaptics Incorporated | Bi-directional channel amplifier |
US9323698B2 (en) * | 2011-09-22 | 2016-04-26 | Synaptics Incorporated | System and method for transmitting USB data over a DisplayPort transmission link |
US9262000B2 (en) | 2011-10-26 | 2016-02-16 | Intel Corporation | Multi-touch interface schemes |
-
2011
- 2011-12-16 US US13/977,377 patent/US9262000B2/en active Active
- 2011-12-16 KR KR1020147011032A patent/KR101590820B1/ko not_active IP Right Cessation
- 2011-12-16 JP JP2014538775A patent/JP2014534522A/ja active Pending
- 2011-12-16 DE DE112011105779.2T patent/DE112011105779B4/de active Active
- 2011-12-16 GB GB1406778.9A patent/GB2512214B/en active Active
- 2011-12-16 KR KR1020157015204A patent/KR101786277B1/ko active IP Right Grant
- 2011-12-16 CN CN201180074433.6A patent/CN103890744B/zh active Active
- 2011-12-16 WO PCT/US2011/065447 patent/WO2013062602A1/en active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0310363A (ja) * | 1989-06-08 | 1991-01-17 | Nippon Steel Corp | 並列計算機における待ち時間設定方法 |
JPH0644000A (ja) * | 1992-04-15 | 1994-02-18 | Internatl Business Mach Corp <Ibm> | コンピュータ・システム |
JP2000259523A (ja) * | 1999-03-09 | 2000-09-22 | Fuji Xerox Co Ltd | データ転送装置、lan通信システム及びデータ転送方法 |
JP2001186146A (ja) * | 1999-12-27 | 2001-07-06 | Seiko Epson Corp | データ転送制御装置及び電子機器 |
JP2009053963A (ja) * | 2007-08-27 | 2009-03-12 | Fuji Electric Systems Co Ltd | プログラマブルコントローラ、そのcpuモジュール |
JP2009094667A (ja) * | 2007-10-05 | 2009-04-30 | Sony Corp | 表示装置および送信装置 |
JP2010157820A (ja) * | 2008-12-26 | 2010-07-15 | Sharp Corp | 制御システム、及び制御方法 |
JP2011003125A (ja) * | 2009-06-22 | 2011-01-06 | Sony Corp | 情報処理装置、表示制御方法、およびプログラム |
JP2011188230A (ja) * | 2010-03-09 | 2011-09-22 | Panasonic Corp | 通信制御システム、シンク機器及び、ソース機器 |
US20120182223A1 (en) * | 2011-01-13 | 2012-07-19 | Henry Zeng | Integrated display and touch system with displayport/embedded displayport interface |
Non-Patent Citations (1)
Title |
---|
JPN6015030660; DisplayPortのHDMIに対する優位性を解説 , 20080110, PC Watch * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020198137A (ja) * | 2015-04-20 | 2020-12-10 | 株式会社ワコム | ホストプロセッサとアクティブスタイラスとの間の通信の方法、センサコントローラ、ホストプロセッサ、ホストプロセッサとアクティブスタイラスとセンサコントローラとを含むシステム |
JP7004781B2 (ja) | 2015-04-20 | 2022-01-21 | 株式会社ワコム | ホストプロセッサとアクティブスタイラスとの間の通信の方法、センサコントローラ、ホストプロセッサ、ホストプロセッサとアクティブスタイラスとセンサコントローラとを含むシステム |
JP6216909B1 (ja) * | 2016-06-28 | 2017-10-18 | 株式会社ワコム | シリアル通信方法及びセンサコントローラ |
WO2018003841A1 (ja) * | 2016-06-28 | 2018-01-04 | 株式会社ワコム | シリアル通信方法及びセンサコントローラ |
Also Published As
Publication number | Publication date |
---|---|
WO2013062602A1 (en) | 2013-05-02 |
GB201406778D0 (en) | 2014-05-28 |
GB2512214B (en) | 2020-10-07 |
CN103890744B (zh) | 2019-08-16 |
US20140002399A1 (en) | 2014-01-02 |
US9262000B2 (en) | 2016-02-16 |
DE112011105779B4 (de) | 2023-08-03 |
CN103890744A (zh) | 2014-06-25 |
DE112011105779T5 (de) | 2014-08-07 |
GB2512214A (en) | 2014-09-24 |
KR101786277B1 (ko) | 2017-10-17 |
KR20140089524A (ko) | 2014-07-15 |
KR20150070436A (ko) | 2015-06-24 |
KR101590820B1 (ko) | 2016-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101786277B1 (ko) | 멀티 터치 인터페이스 방안 | |
TWI605342B (zh) | 共享虛擬記憶體的技術 | |
KR101576238B1 (ko) | 디스플레이 인터페이스를 통한 시리얼 버스 지원의 유연한 구현 | |
JP5869146B2 (ja) | 外部ディスプレイ‐データi/oポートを介してグラフィック処理を拡張するための方法、装置およびシステム | |
US20140132835A1 (en) | Electronic device with thunderbolt interface, connecting method thereof, and docking apparatus | |
WO2014012061A1 (en) | Integrated mobile desktop | |
US20080088636A1 (en) | System and method for the display and control of virtual environments in a single pipe graphics memory controller hub using picture-in-picture | |
US20150081930A1 (en) | Tablet computer | |
CN115733549B (zh) | Pcie网卡及其接口模式的切换方法、电子设备及存储介质 | |
KR101698242B1 (ko) | Io 및 인바운드 av를 위한 토폴로지 및 대역폭 관리 | |
TWI493536B (zh) | 在與顯示控制器相關連的中斷暫存器中設定中斷範圍之操作的系統、設備及物件、和電腦實施方法 | |
CN102810054B (zh) | 显示装置及显示装置的控制方法 | |
JP2015508528A (ja) | パイプライン化された画像処理シーケンサ | |
WO2019089398A1 (en) | Networked user interface back channel discovery via wired video connection | |
CN212084130U (zh) | 一种usb信号传输系统和触摸显示设备 | |
US20170220069A1 (en) | Docking apparatus and control method thereof | |
US10706815B1 (en) | Accelerated secondary display system | |
JP5968463B2 (ja) | データを別の記憶装置にコピーせずにデータソースによりバッファに格納されたデータを処理するためのポインタのスワッピング | |
US20150351144A1 (en) | Wireless transmission apparatus and implementation method thereof | |
TWI537905B (zh) | Display device and display device | |
US9417726B2 (en) | Supporting keyboard and mouse over embedded displayport without using a universal serial bus | |
TW201403334A (zh) | 菊花鏈串接裝置的路由切換系統及介面裝置 | |
TW201333752A (zh) | 接收裝置、主機裝置和控制方法 | |
US20130210362A1 (en) | Receiver device and host apparatus | |
TW201351153A (zh) | 主機板及其主板控制卡 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150722 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150804 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151104 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160209 |