(57)【要約】  タッチパネル生データを受け取り、生データ中の関心データを特定するシステムと方法を提供する。１つ以上のイベントを、関心データとタッチ処理ポリシーとに基づき検出できる。一例では、受け取りと特定はタッチパネルコントローラにより行われ、検出はホストプロセッサにより行われる。表面下スキャニングとハイブリッドスキャニングなどの他の手法も使える。
2013513185.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングシステムであって、
ノートブックフォームファクタを有するハウジングと、
タッチセンサ、タッチパネルコントローラ、及び記憶された一組のコントローラ命令を含むファームウェアを有するタッチパネルであって、前記一組のコントローラ命令は、前記タッチパネルコントローラにより実行されると、前記タッチパネルコントローラに、前記タッチセンサからタッチパネル生データを受け取り、前記生データ中の関心データを特定させるタッチパネルと、
ホストプロセッサと、
記憶された一組のプロセッサ命令を有する機械読み取り可能媒体であって、前記一組のプロセッサ命令は、前記ホストプロセッサにより実行されると、前記ホストプロセッサに、
前記関心データとタッチ処理ポリシーとに基づきイベントを検出させ、前記タッチ処理ポリシーはデバウンスコンポーネント、フィンガー検出コンポーネント、ハンドレスト検出コンポーネント、ブロブ検出コンポーネント、特定ハンド形状検出コンポーネント、及びサブハンド形状検出コンポーネントのうち少なくとも１つを含み、
前記イベントを、オペレーティングシステムナビゲーションプロセスとオンスクリーンキーボードアプリケーションプロセスのうち少なくとも１つに転送させる、機械読み取り可能媒体と、
を有するコンピューティングシステム。
【請求項２】
前記記憶された一組のプロセッサ命令は、前記プロセッサに、
現在のプロセッサ使用、現在のアクティブタッチレポート、過去のアクティブタッチレポート、アプリケーション中心ロジック、及び表面型静電容量スキャン結果のうち少なくとも１つに基づいて、スキャン領域を生成させ、
前記スキャン領域を前記タッチパネルコントローラに送信させ、
前記記憶された一組のコントローラ命令は、前記タッチパネルコントローラに、前記スキャン領域内にある前記タッチパネルの一部のみをスキャンして前記生データを取得させる、請求項１に記載のコンピューティングシステム。
【請求項３】
前記記憶された一組のコントローラ命令は、前記タッチパネルコントローラに、
前記タッチパネルの表面型静電容量スキャンをして前記タッチパネル中の関心領域を取得させ、
前記表面型静電容量スキャンの結果を前記ホストプロセッサに送信させ、
前記関心領域を拡大して前記関心領域に隣接するエリアを含ませ、
前記拡大した関心領域の投影型静電容量スキャンを行い、前記関心データを特定させる、請求項１に記載のコンピューティングシステム。
【請求項４】
前記ファームウェアはリードオンリメモリ（ＲＯＭ）とフラッシュメモリのうち少なくとも一方を含み、前記機械読み取り可能媒体はランダムアクセスメモリ（ＲＡＭ）を含む、請求項１に記載のコンピューティングシステム。
【請求項５】
タッチパネルコントローラと、
記憶された一組のコントローラ命令を有するファームウェアであって、前記一組のコントローラ命令は、前記タッチパネルコントローラにより実行されると、前記タッチパネルコントローラに、タッチパネル生データを受け取らせ、前記生データ中の関心データを特定させるファームウェアと、
ホストプロセッサと、
記憶された一組のプロセッサ命令を含む機械読み取り可能媒体であって、前記一組のプロセッサ命令は、前記ホストコンピュータにより実行されると、前記ホストプロセッサに、前記関心データとタッチ処理ポリシーとに基づきイベントを検出させる、機械読み取り可能媒体とを有する、装置。
【請求項６】
前記記憶された一組のプロセッサ命令は、前記プロセッサに、前記イベントを、オペレーティングシステムプロセスとアプリケーションプロセスのうち少なくとも一方に転送させる、請求項５に記載の装置。
【請求項７】
前記タッチ処理ポリシーは、デバウンスコンポーネント、フィンガー検出コンポーネント、ハンドレスト検出コンポーネント、ブロブ検出コンポーネント、特定ハンド形状検出コンポーネント、及びサブハンド形状検出コンポーネントのうち少なくとも１つを含む、請求項５に記載の装置。
【請求項８】
前記記憶された一組のプロセッサ命令は、前記プロセッサに、スキャン領域を生成させ、前記スキャン領域を前記タッチパネルコントローラに送信させ、
前記記憶された一組のコントローラ命令は、前記タッチパネルコントローラに、前記スキャン領域内にある前記タッチパネルの一部のみをスキャンして前記生データを取得させる、請求項５に記載の装置。
【請求項９】
前記記憶された一組のプロセッサ命令は、前記プロセッサに、現在のプロセッサ使用、現在のアクティブタッチレポート、過去のアクティブタッチレポート、アプリケーション中心ロジック、及び表面型静電容量スキャン結果のうち少なくとも１つに基づいて、前記スキャン領域を生成させる、請求項８に記載の装置。
【請求項１０】
前記記憶された一組のコントローラ命令は、前記タッチパネルコントローラに、
前記タッチパネルの表面型静電容量スキャンをして前記タッチパネル中の関心領域を取得させ、
前記関心領域を拡大して前記関心領域に隣接するエリアを含ませ、
前記拡大した関心領域の投影型静電容量スキャンを行い、前記関心データを特定させる、請求項５に記載の装置。
【請求項１１】
前記記憶された一組のコントローラ命令は、前記タッチパネルコントローラに、前記表面型静電容量スキャンの結果を前記ホストプロセッサに送信させる、請求項１０に記載の装置。
【請求項１２】
前記ファームウェアはリードオンリメモリ（ＲＯＭ）とフラッシュメモリのうち少なくとも一方を含み、前記機械読み取り可能媒体はランダムアクセスメモリ（ＲＡＭ）を含む、請求項５に記載の装置。
【請求項１３】
タッチパネル生データを受け取るステップと、
前記生データ中の関心データを特定するステップと、
前記関心データとタッチ処理ポリシーとに基づきイベントを検出するステップとを有し、前記受け取るステップと特定するステップはタッチパネルコントローラにより行われ、前記検出するステップはホストプロセッサにより行われる、方法。
【請求項１４】
さらに、前記イベントを、オペレーティングシステムプロセスとアプリケーションプロセスのうち少なくとも１つに転送するステップを有する、請求項１３に記載の方法。
【請求項１５】
前記タッチ処理ポリシーは、デバウンスコンポーネント、フィンガー検出コンポーネント、ハンドレスト検出コンポーネント、ブロブ検出コンポーネント、特定ハンド形状検出コンポーネント、及びサブハンド形状検出コンポーネントのうち少なくとも１つを含む、請求項１３に記載の方法。
【請求項１６】
さらに、
スキャン領域を生成するステップと、
前記スキャン領域を前記タッチパネルコントローラに送信するステップと、
前記スキャン領域内の前記タッチパネルの一部分のみをスキャンして、前記生データを取得するステップとを有し、前記生成するステップと送信するステップは前記ホストプロセッサにより行われ、前記スキャンするステップは前記タッチパネルコントローラで行われる、請求項１３に記載の方法。
【請求項１７】
前記スキャン領域は、現在のプロセッサ使用、現在のアクティブタッチレポート、過去のアクティブタッチレポート、アプリケーション中心ロジック、及び表面型静電容量スキャン結果のうち少なくとも１つに基づいて生成される、請求項１６に記載の方法。
【請求項１８】
さらに、
前記タッチパネルの表面型静電容量スキャンをして前記タッチパネル中の関心領域を取得するステップと、
前記関心領域を拡大して前記関心領域に隣接するエリアを含めるステップと、
前記拡大した関心領域の投影型静電容量スキャンを行い、前記関心データを特定するステップとを有し、
前記表面型静電容量スキャンを行うステップと、前記関心領域を拡大するステップと、前記投影型静電容量スキャンを行うステップとは、前記タッチパネルコントローラにより行われる、請求項１３に記載の方法。
【請求項１９】
さらに、前記表面型静電容量スキャンの結果を前記ホストプロセッサに送信するステップを有する、請求項１８に記載の方法。
【請求項２０】
さらに、ソフトウェア更新により前記タッチ処理ポリシーを修正するステップを含む、請求項１３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は概してタッチパネルに関する。より具体的には、実施形態はタッチパネルからの生データの処理方法の改善に関する。
【背景技術】
【０００２】
タッチパネルはいろいろな状況でユーザインタフェース（ＵＩ）として使われている。一般的に、タッチパネルは生データを処理し、指によるタッチを検出する内部コントローラファームウェアを含む。指によるタッチは、ファームウェアにより、特定目的のための処理のために、他のシステムコンポーネントにイベントとしてレポートされる。ファームウェアは更新及び／又は修正が困難であり、処理機能が制約される場合があり、このようなアプローチには、ファームウェアにおける指によるタッチイベントの検出の実装による制約がある。
【発明の概要】
【課題を解決するための手段】
【０００３】
一実施形態によるコンピューティングシステムは、ノートブックフォームファクタを有するハウジングと、タッチセンサ、タッチパネルコントローラ、及び記憶された一組のコントローラ命令を含むファームウェアを有するタッチパネルであって、前記一組のコントローラ命令は、前記タッチパネルコントローラにより実行されると、前記タッチパネルコントローラに、前記タッチセンサからタッチパネル生データを受け取り、前記生データ中の関心データを特定させるタッチパネルと、ホストプロセッサと、記憶された一組のプロセッサ命令を有する機械読み取り可能媒体であって、前記一組のプロセッサ命令は、前記ホストプロセッサにより実行されると、前記ホストプロセッサに、前記関心データとタッチ処理ポリシーとに基づきイベントを検出させ、前記タッチ処理ポリシーはデバウンスコンポーネント、フィンガー検出コンポーネント、ハンドレスト検出コンポーネント、ブロブ検出コンポーネント、特定ハンド形状検出コンポーネント、及びサブハンド形状検出コンポーネントのうち少なくとも１つを含み、前記イベントを、オペレーティングシステムナビゲーションプロセスとオンスクリーンキーボードアプリケーションプロセスのうち少なくとも１つに転送させる、機械読み取り可能媒体と、を有する。
【０００４】
一実施形態による装置は、タッチパネルコントローラと、記憶された一組のコントローラ命令を有するファームウェアであって、前記一組のコントローラ命令は、前記タッチパネルコントローラにより実行されると、前記タッチパネルコントローラに、タッチパネル生データを受け取らせ、前記生データ中の関心データを特定させるファームウェアと、ホストプロセッサと、記憶された一組のプロセッサ命令を含む機械読み取り可能媒体であって、前記一組のプロセッサ命令は、前記ホストコンピュータにより実行されると、前記ホストプロセッサに、前記関心データとタッチ処理ポリシーとに基づきイベントを検出させる、機械読み取り可能媒体とを有する。
【０００５】
一実施形態による方法は、タッチパネル生データを受け取るステップと、前記生データ中の関心データを特定するステップと、前記関心データとタッチ処理ポリシーとに基づきイベントを検出するステップとを有し、前記受け取るステップと特定するステップはタッチパネルコントローラにより行われ、前記検出するステップはホストプロセッサにより行われる。
【図面の簡単な説明】
【０００６】
添付した図面を参照して、以下の明細書と特許請求の範囲とを読めば、当業者には、本発明の実施形態のいろいろな有利性が明らかとなるであろう。
【図１】一実施形態によるコンピューティングシステムの一例を示すブロック図である。
【図２】一実施形態による関心領域の特定方法の一例を示すフローチャートである。
【図３】一実施形態による表面化スキャニング方法の一例を示すフローチャートである。
【図４】一実施形態によるハイブリッドスキャニング方法の一例を示すフローチャートである。
【図５】一実施形態による、タッチパネルとノートブックフォームファクタのハウジングを有するコンピューティングシステムの一例を示す図である。
【発明を実施するための形態】
【０００７】
実施形態は、タッチパネル生データを受信する方法を提供する。生データ中の関心データ（data  of  interest）を特定し、関心データとタッチ処理ポリシーとに基づきイベントを検出できる。受け取りと特定はタッチパネルコントローラにより行われ、検出はホストプロセッサにより行われる。
【０００８】
また、実施形態は、タッチパネルコントローラ、ファームウェア、ホストプロセッサ、及び機械読み取り可能媒体を含む装置も提供する。ファームウェアは、記憶された一組のコントローラ命令を有する。その一組のコントローラ命令は、タッチパネルコントローラにより実行されると、そのタッチパネルコントローラに、タッチパネル生データを受け取り、その生データ中の関心データを特定させる。機械読み取り可能媒体は、記憶された一組のプロセッサ命令を含む。その一組のプロセッサ命令は、ホストコンピュータにより実行されると、そのホストプロセッサに、関心データとタッチ処理ポリシーとに基づき、イベントを検出させる。
【０００９】
また、実施形態は、ノートブックフォームファクタのハウジングとタッチパネルとを有するコンピューティングシステムを含む。タッチパネルは、タッチセンサ、タッチパネルコントローラ、及び記憶された一組のコントローラ命令を含むファームウェアを有する。一組のコントローラ命令は、タッチパネルコントローラにより実行されると、そのタッチパネルコントローラに、タッチセンサからタッチパネル生データを受け取らせる。また、コントローラ命令は、タッチパネルコントローラに、生データ中の関心データを特定させる。また、コンピューティングシステムは、ホストプロセッサと、記憶された一組のプロセッサ命令を含む機械読み取り可能媒体とを有する。その一組のプロセッサ命令は、ホストプロセッサにより実行されると、そのホストプロセッサに、関心データとタッチ処理ポリシーとに基づき、イベントを検出させる。タッチ処理ポリシーは、デバウンス（debounce）コンポーネント、フィンガー検出コンポーネント、ハンドレスト検出コンポーネント、ブロブ（blob）検出コンポーネント、特定ハンド形状（specific  hand  shape）検出コンポーネント、及び／またはサブハンド形状検出コンポーネントを含む。また、プロセッサ命令は、プロセッサに、イベントを、オペレーションシステム（ＯＳ）ナビゲーションプロセス及び／またはオンスクリーンキーボードアプリケーションプロセスなどの他のプロセスに転送させる。
【００１０】
ここで、図１を参照して、コンピューティングシステム１０を示した。このシステム１０は、例えば、ラップトップ、パーソナルデジタルアシスタント（ＰＤＡ）、ワイヤレススマートフォン、メディアプレーヤ、画像化デバイスなど、またはこれらの任意の組み合わせ等のモバイルプラットフォームの一部である。また、システム１０は、パーソナルコンピュータ（ＰＣ）、サーバ、ワークステーション等の固定プラットフォームの一部であってもよい。例示したシステム１０はホストプロセッサ１２を含む。このホストプロセッサ１２は、システムメモリ１４へのアクセスを提供する、集積されたメモリコントローラ（図示せず）を含んでいてもよい。システムメモリ１４は、例えば、デュアルデータレート（ＤＤＲ）シンクロナス・ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ、例えば、ＤＤＲ３  ＳＤＲＡＭ  ＪＥＤＥＣ  Ｓｔａｎｄａｒｄ  ＪＥＳＤ７９−３Ｃ、２００８年４月）モジュールを含む。システムメモリ１４のモジュールは、例えば、シングルインラインメモリモジュール（ＳＩＭＭ）、デュアルインラインメモリモジュール（ＤＩＭＭ）、スモールアウトラインＤＩＭＭ（ＳＯＤＩＭＭ）などに組み込まれている。また、プロセッサ１２は、１つ以上のプロセッサコア（図示せず）を有する。各コアは、例えば、命令フェッチユニット、命令デコーダ、レベル１（Ｌ１）キャッシュ、実行ユニット等を有し、完全に機能する。一実施形態では、プロセッサ１２の内部キャッシュは、例えば、スタティックＲＡＭ（ＳＲＡＭ）で実装されている。プロセッサ１２は、マイクロソフトウィンドウズ（登録商標）、Ｌｉｎｕｘ（登録商標）、又はＭａｃ（Ｍａｃｉｎｔｏｓｈ）ＯＳなどのオペレーティングシステム（ＯＳ）と、その他のいろいろなソフトウェアアプリケーションとを実行できる。
【００１１】
例示したプロセッサ１２は、プラットフォームコントローラハブ（ＰＣＨ）１６と通信する。プラットフォームコントローラハブ１６は、あるシステムではサウスブリッジとしても知られている。ＰＣＨ１６は内部コントローラ（図示せず）を有する。内部コントローラには、ＵＳＢ（Universal  Serial  Bus、例えばUSB  Specification  ２.０、USB  Implementers  Forum）、シリアルＡＴＡ（SATA、例えばSATA  Rev.  ３.０  Specification、２００９年５月２７日、SATA  International  Organization/SATA-IO）、ハイデフィニションオーディオ、その他のコントローラが含まれる。また、例示したＰＣＨ１６は、１つ以上の大規模記憶デバイス１８に結合している。この大規模記憶デバイス１８は、例えば、ハードドライブ、リードオンリメモリ（ＲＯＭ）、光ディスク、フラッシュメモリ等を含む。ＰＣＨ１６は、ユーザにシステム１０とインターラクトし、システム１０からの情報を把握できるようにするため、マイクロホン、ディスプレイ、キーパッド、マウス、スピーカなどのユーザインタフェースデバイスをサポートできる。
【００１２】
具体的に、ＰＣＨ１６は、タッチセンサ２２、タッチパネルコントローラ２４、及びファームウェア２６を有するタッチパネル２０と通信できる。コントローラ２４は、例えば、特定目的集積回路（ＡＳＩＣ）、相補的金属酸化物半導体（ＣＭＯＳ）、又はトランジスタ・トランジスタ・ロジック（ＴＴＬ）技術、又はこれらの任意の組み合わせなどの回路技術を用いた固定機能ハードウェアロジックで実装された組み込みコントローラである。例示した例では、ファームウェア２６は、プログラマブルＲＯＭ（ＰＲＯＭ）又はフラッシュメモリ中のロジックとして実装してもよいが、一組のコントローラ命令を含む。この一組のコントローラ命令は、コントローラ２４により実行されると、そのコントローラ２４に、タッチセンサ２２からタッチパネル生データ２８を受け取り、その生データ２８中の関心データ３０を特定させる。関心データ３０は、さらに処理するため、ＰＣＨ１６を介してホストプロセッサ１２に送られる。
【００１３】
特に、大規模記憶デバイス１８、システムメモリ１４、又はプロセッサ１２の内部キャッシュなどの機械読み取り可能媒体は、例えば、記憶された一組のプロセッサ命令を含む。この一組のプロセッサ命令は、プロセッサ１２により実行されると、そのプロセッサ１２に、関心データ３０とタッチ処理ポリシーとに基づき、１つ以上のイベント３２を検出させる。タッチ処理ポリシーは、ソフトウェア更新により容易に修正でき、例えば、デバウンス（debounce）アルゴリズムコンポーネント、フィンガー検出コンポーネント、ハンドレスト検出コンポーネント、非フィンガー（例えば、ブロブ）検出コンポーネント、特定ハンド形状（specific  hand  shape）検出コンポーネント、及び／またはサブハンド形状検出コンポーネントを含む。また、プロセッサ命令は、プロセッサ１２に、イベント３２を、ＯＳナビゲーションプロセス又はオンスクリーンキーボードアプリケーションプロセスなどの他のソフトウェアコンポーネントに転送させる。
【００１４】
このように、図示したアプローチにより、システム１０は、ファームウェア２６を変更せずに、又はコントローラ２４内のゲートカウントを増やさずに、関心データ３０に様々なタッチ処理ポリシーを適用できる。場合によっては、ホストプロセッサ１２の処理能力をより多く用いて、タッチパネル生データ２８から最大限の値を得ることができる。タッチ処理ポリシーは、実行時にオンデマンドで、又は更新により変更できる。これはファームウェア２６よりも、ホストプロセッサ１２により用いられる機械読み取り可能媒体で実現する方が容易である。例えば、オンスクリーンキーボードの使用をサポートする時、ＯＳをナビゲーションする時に適用するデータトラッキング及びフィルタリング規則と比較して異なるデータトラッキング及びフィルタリング規則が適当である。また、タッチによる人とコンピュータとのインターラクションなどの拡大している未成熟の利用エリアでは、機能性を短時間で更新する機能は、コンピューティングシステム１０のマーケットバリューを実現するのに必須である。
【００１５】
さらに、キーコンセプトは、関心データ３０が無い時にはホストプロセッサ１２を遊ばせることであり、これはバッテリパワーで動作するモバイルコンピュータやハンドヘルドデバイスには有利である。また、タッチパネル生データ２８全部ではなく関心データを送ることにより、例えば、ホスト処理量と必要な帯域幅とを最小化する役に立つ。
【００１６】
図２は、タッチパネル生データ中の関心領域を特定する方法３４をさらに詳細に示す。方法３４は、例えば、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、フラッシュメモリなどメモリの機械又はコンピュータ読み取り可能媒体に記憶された一組のロジック命令として、実行可能ソフトウェアで、又は特定目的集積回路（ＡＳＩＣ）、相補的金属酸化物半導体（ＣＭＯＳ）、又はトランジスタ・トランジスタ・ロジック（ＴＴＬ）などの回路技術を用いた固定機能ハードウェアで、又はこれらの任意の組み合わせで実装可能である。例えば、方法３４のソフトウェアプロセス３６に示した動作を実行するコンピュータプログラムコードは、Ｊａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語やＣなどの従来の手続型プログラミング言語１つ以上のプログラミング言語の任意の組み合わせで記述できる。一方、固定機能ハードウェア、又はアセンブラ言語プログラミングや機械コードなどの低レベル命令を用いて、方法３４のファームウェアプロセス３８に示した動作を実行してもよい。
【００１７】
前述の通り、タッチコントローラファームウェアプロセス３８とホストプロセッサソフトウェアプロセス３６とは、データ処理のため、所定のソフトウェアインタフェースと確立された役割分割とにより、協働して動作できる。図示したタッチコントローラファームウェアプロセス３８は、タッチパネルの物理的センシングの管理と、生データにデータの線形性を確保する低レベルの補正や温度などの環境ファクタによるばらつきやユニットごとのばらつきを補正するその他の補正、及びゼロ動作点／ベースラインの較正をする役割を担う。このように、処理ブロック４０は、タッチパネルの生データの生成と、その生データへの物理レイヤ信号コンディショニングの適用をする。また、タッチコントローラファームウェアプロセス３８は、例えば、生データに比較的低い閾値を適用することにより、又はその他の手段により、関心データの検出をする役割を担う。このように、図示したブロック４２は、閾値に対する生データの評価を行う。タッチコントローラデベロッパーは、例えば、予想されるノイズレベルとタッチセンサの物理的性質とについての知識に基づき、この閾値を選択できる。データが閾値を越えるエリア、又は２次元の隣接するエリアのみが「関心あり（interesting）」と分類される。他のポリシーやアクションは、ファームウェアプロセス３８によりデータに適用される必要はない。
【００１８】
ブロック４４は、閾値を越えた限定的データに関する圧縮したレポートを生成する。ブロック４６は、一定のタッチパネルスキャン期間ごとに関心データを検出し、関心データがあれば、さらに処理するため、その関心データをホストプロセッサに転送する。ホストソフトウェアプロセス３６は、ファームウェアプロセス３８からデータレポートを受け取るまで、アイドル状態に留まる。ホストソフトウェアプロセス３６は、データを分析及び処理できる。ブロック４８で、例えば、特定用途処理及び特定使用処理をデータレポートに適用する。特に、現在のタッチ処理ポリシーをデータに適用できる。タッチ処理ポリシーは、例えば、現在のシステム使用モデルに応じて、以下のどれか、又はその組み合わせのどれかを含む：特定かつ相違するデバウンスアルゴリズム、フィンガー検出、ハンドレスト検出、非フィンガー（ｂｌｏｂ）検出、特定フィンガー形状又はサブハンド形状検出。次に、ブロック５０で、ホスト処理アルゴリズムは、検出したイベントをオペレーティングシステムに、又は必要に応じて直接アプリケーションに転送できる。
【００１９】
端的に言えば、図示した方法３４は、特定使用モデルデータ処理を実行する能力を保存しつつ、データトラフィックとホスト処理とを最小化する役に立つ。また、これらの方法は、ホストのバッテリー寿命を保存しつつ、タッチパネルデータのホスト処理を可能とする。タッチパネルデータのホスト処理により、標準的なタッチセンシングハードウェア／ファームウェアにより、高度な特定使用タッチ機能を可能にする。
【００２０】
ここで図３を参照して、「表面下スキャニング（subsurface  scanning）」の方法５２を示す。一般的に、表面下スキャニングは上記の方法と共に、又は別々に、利用できる。多くの予測されるキャパシティブタッチシステムでは、スキャンされる各ｘ／ｙデータポイントは、アナログ・ツー・デジタル・コンバータ時間と、データ通信・処理時間とを消費して、システムの一定の時間を使う。多くのシステムでは、パネルのスキャン時間とスキャンするデータポイント数との間には直接的なトレードオフの関係がある。しかし、このトレードオフは、ハードウェアの並列化やその他の設計的選択により、例えばパネルと問題のデータポイントの設計によっては「非線形」である。最小時間単位でタッチセンサの全面をスキャンしようとするのではなく、説明した表面下スキャニングアプローチにより、関心がないとアプリオリに分かっているエリアのスキャンを減らすことができる。
【００２１】
例えば、キーボードなどのアクティブエリアの周りの静的関心領域を画定でき、又はタッチの周りの、最後のスキャンから動的な非連続の領域を画定できる。関心領域の外側のスキャンを減らすと、時間が自由になり、いろいろな方法で用いることができる：（１）タッチコントローラはアイドル状態になり、パワーの消費を減らす、（２）タッチコントローラファームウェアは、例えば、現在タッチが生じているｘ／ｙ位置の関心領域のデータ測定を繰り返してその時間を利用できる。これらのエリア中に余分なデータポイントを生成することにより、現在タッチが生じているエリアの有効スキャンレートを大きくできる。スキャンレートの増加は、ノイズ緩和、位置決定のための平均化、及び処理アルゴリズムのトラッキングにとって非常に有益である。
【００２２】
このように、説明した方法５２は、タッチコントローラファームウェアプロセス５４とホストソフトウェアプロセス５６とを含む。ここで、処理ブロック５８は、関心データを含むデータタッチレポートを処理し、他のアプリケーション及び／又はＯＳへ１つ以上のイベントを送る。ブロック６０は、現在のプロセッサ使用状態、現在のアクティブタッチレポート、過去のアクティブタッチレポート、アプリケーション中心ロジック、及び表面型静電容量スキャン結果などの１つ以上のファクタに基づき、ファームウェアプロセス５４により用いられるスキャン領域を更新すべきか決定する。ブロック６２で、それらのファクタに基づいて新しいスキャン領域が必要であると決定した場合、図示したブロック６４で、タッチコントローラファームウェアプロセス５４に新しいスキャン領域を送る。このスキャン領域はブロック６６で更新されてもよい。
【００２３】
ブロック６８は、生データを取得するスキャン領域内のタッチパネルの一部分のみをスキャンし、ブロック４２とブロック４４（図２参照）を参照してすでに説明したタッチデータレポートを生成する。ブロック４６で、ホストソフトウェアプロセス５６にレポートするデータがあると決定すると、かかるデータを含むレポートがコントローラファームウェアプロセス５４により送信される。
【００２４】
このように、方法５２により、キャパシティブタッチソリューションは、スキャンされるエリアをソフトウェアで制御できる。特に、キャパシティブタッチソリューションは、タッチパネルの一エリアを、他のエリアは無視しつつ、オーバースキャンできる。システムとしては、タッチされたタッチスクリーンのエリアに一般的には関心があるので、この態様によりタッチセンシングソリューションのパフォーマンスを向上でき、及び／又は平均的な人・コンピュータ間のタッチシナリオでは必要なハードウェアが減るためにタッチセンシングのコストを低減できる。
【００２５】
図４は、「ハイブリッドスキャニング」の方法７０を、ビジュアルな例７２と共に示している。一般的に、図示した方法７０は、表面型静電容量（surface  capacitance）と投影型静電容量（projected  capacitance）との両方を行うタッチコントローラファームウェアで実装できる。特に、タッチコントローラは、タッチが生じたタッチパネルのエリアを決定する事前測定として、表面型静電容量を用いることができる。このように、ブロック７４は、タッチパネルの表面型静電容量スキャンを実行し、図示したブロック７６は得られた生データに比較的低い閾値を適用してタッチパネル中の関心領域を求める。ブロック７８で、スキャンされた行／列のどれかが閾値を越えると、タッチコントローラは投影型静電容量を用いて、その前の表面型静電容量測定中にタッチされたと決定された行と列の行／列交点のみをスキャンする。このように、ブロック８０では、閾値より高い行／列を用いて、タッチパネルの関心領域交わりマップを生成する。また、ブロック８２で関心領域を拡大して、元の関心領域に隣接するエリアを含める。ブロック８４は、拡大した関心領域の投影型静電容量スキャンを行い、関心データを特定する。得られたデータレポートをブロック８６でホストソフトウェアプロセスに送る。
【００２６】
タッチが生じたパネルのすべてのエリアを、投影型静電容量を用いてスキャンでき、タッチがないエリアは飛ばすことができる。したがって、パネルスキャンレートを平均的に向上でき、特に、平均的に生じるタッチがタッチパネル全体の小さいパーセンテージ（例えば、一本指又は複数の指によるタッチ）であるシステムではそうである。平均スキャンレートが速いと、タッチセンサガラスサイズをサポートするハードウェアのコストを下げることができる。この手法はシングルユーザのために設計された大きなタッチパネルにおいて特に有用であろう。
【００２７】
さらに、表面型静電容量測定において、行または列全体を一度に測定して、単一スカラ測定をすることができる。一般的には、各行と列をスキャンして、データの２つの１次元アレイを得る。かかる測定のスキャン時間は、非並列化ハードウェアシステムの場合、表面型静電容量スキャン時間×（行数＋列数）である。一方、投影型静電容量測定では、行／列の各交点を個別に（又はタッチコントローラ／タッチセンサの設計によっては並列に）スキャンし、スカラデータの２次元ビットマップを得る。よって、かかる測定のスキャン時間は、非並列化ハードウェアシステムの場合、投影型静電容量スキャン時間×（行数×列数）である。説明したように投影型静電容量を用いて行と列の数を減らすと、特に有利である。
【００２８】
端的に言えば、ハイブリッドスキャニングにより、タッチソリューションに、タッチが生じたエリアを素早く特定させ、これらのエリアだけに完全な投影型静電容量スキャンを行うことにより、スキャニングレートを最適化できる。スキャンレートを高くすることにより、同じハードウェアでより大きなタッチパネルを使えるようになり、又はタッチパネルの平均スキャンレートを挙げられる。
【００２９】
図５は、ノートブックフォームファクタのハウジングとタッチパネル８８とを有するモバイルコンピューティングシステム８６を示す。前述の通り、タッチパネル８８は、例えば、タッチセンサと、タッチパネルコントローラと、タッチセンサから得られた生データ中の関心データを特定するように構成されたファームウェアとを含む。また、システム８６は、例えば、既述の関心領域処理、表面下スキャニング、及びハイブリッドスキャニングをサポートするように構成されたホストプロセッサを含む。図示した例では、システム８６のホストプロセッサは、オンスクリーンキーボードアプリケーションプロセスを実行するように構成されている。他のプロセスには、例えばOSナビゲーションプロセス（例えば、コンピューティングシステムをリフレッシュするタッチコンピューティング）が含まれる。
【００３０】
本発明の実施形態は、すべてのタイプの半導体集積回路（ＩＣ）チップで利用できる。これらのＩＣチップの例としては、プロセッサ、コントローラ、チップセットコンポーネント、プログラマブルロジックアレイ（ＰＬＡ）、メモリチップ、ネットワークチップなどがあるが、これらに限定されない。また、いくつかの図面では、線で信号導線を表した。いくつかの線は太く、より多くの構成信号経路を示し、複数のラベルを有し、複数の構成信号経路を示し、及び／又は１つ以上の端に矢印を有し、主な情報フロー方向を示す。しかし、これは、限定と解釈してはならない。むしろ、かかる付加的詳細は、１つ以上の実施形態と共に、回路の理解を促進するために用いられている。表示したどの信号線も、追加的情報を有していようがいまいが、複数の方向に進む１つ以上の信号を有していてもよく、例えば、差動ペアと実装されたデジタル又はアナログライン、光ファイバライン、及び／又は単一終端ラインなどの所望のタイプの信号方式で実装してもよい。
【００３１】
例示したサイズ／モデル／値／範囲は所与のものであってもよいが、本発明の実施形態はこれに限定されない。（フォトリソグラフィなどの）生産技術が時間とともに成熟してくるので、小さいサイズのデバイスを生産できると期待される。また、ＩＣチップその他のコンポーネントへの周知のパワー／グラウンド接続は、図示と説明とを簡単にするため、及び本発明の実施形態の態様を分かりにくくしないように、図示したものもあれば図示していないものもある。さらに、構成をブロック図の形式で示したが、それは本発明の実施形態を分かりにくくしないようにするため、またかかるブロック図構成の実装に関する具体的事項は実施形態を実装するプラットフォームに大きく依存すること、すなわちかかる具体的事項は当業者の管轄事項であることを考慮したものである。本発明の実施形態を説明するために、（例えば、回路などの）具体的な詳細事項を記載した場合、当業者には言うまでもなく、こうした具体的な詳細事項が無くても、又はそれを変更しても、本発明の実施形態を実施できる。よって、上記の説明は、限定ではなく例示と考えるべきである。
【００３２】
一部の実施形態は、例えば、機械により実行されると、その機械に実施形態による方法及び／または動作を実行させる命令またはそのセットを格納した、機械又は有体コンピュータ読み出し可能メディアまたは製品（article）を用いて実施される。かかる機械には、例えば、好適な処理プラットフォーム、コンピューティングプラットフォーム、コンピューティングデバイス、処理デバイス、コンピューティングシステム、処理システム、コンピュータプロセッサ等を含んでもよいし、好適なハードウェア及び／またはソフトウェアの組み合わせを用いて実施してもよい。機械読み出し可能媒体または製品には、例えば、任意の適切なタイプのメモリユニット、メモリデバイス、メモリ製品、メモリメディア、記憶デバイス、記憶製品、記憶メディア及び／または記憶ユニット、例えば、メモリ、リムーバブルまたは非リムーバブルメディア、消去可能または非消去可能メディア、書き込み可能または非書き込み可能メディア、デジタルまたはアナログメディア、ハードディスク、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、光ディスク、磁気メディア、光磁気メディア、リムーバブルメモリカードまたはディスク、様々なタイプのＤＶＤ、テープ、カセット等が含まれる。命令には、ハイレベル、ローレベル、オブジェクト指向、ビジュアル、コンパイル済み、及び／またはインタープリット済みプログラミング言語など好適な言語を用いて実装される、ソースコード、コンパイル済みコード、インタープリットコード、実行コード、スタティックコード、ダイナミックコード、暗号化コードなどの好適な任意のコードを含む。
【００３３】
特に断らなければ、言うまでもなく、「処理」、「算出」、「計算」、「判断」等の用語は、コンピュータ、コンピューティングシステム、類似の電子的計算機器の動作やプロセスであって、コンピューティングシステムのレジスタやメモリ内の物理的（電子的）量として表されたデータを操作し、コンピューティングシステムのメモリやレジスタ、その他の情報記憶装置、伝送機器、表示機器内の物理量として同様に表された他のデータに変換するものを指す。実施形態はこれに限定されない。
【００３４】
「結合した」との用語は、ここでは問題となるコンポーネント間の、直接的又は間接的な任意のタイプの関係を言い、電気的結合、機械的結合、流体的結合、光学的結合、光磁気的結合、電気機械的結合その他の結合に当てはまる。また、「第１の」、「第２の」等の用語は、ここでは、説明を容易にするためにだけに使われており、特に断らなければ時間的な意味は無い。
【００３５】
当業者には言うまでもなく、本発明の実施形態の幅広い手法は、いろいろな形式で実施できる。それゆえ、本発明の実施形態をその具体的な例に関連して説明したが、当業者には図面、明細書、及び特許請求の範囲を研究すればその他の修正が明らかであるから、本発明の実施形態の範囲は具体例に限定されない。
【図１】
2013513185.tif 000003
【図２】
2013513185.tif 000004
2013513185.tif 000005
【図３】
2013513185.tif 000006
【図４】
2013513185.tif 000007
【図５】
2013513185.tif 000008
【国際調査報告】
2013513185.tif 000009
2013513185.tif 000010