(57)【要約】【課題】容量変化と雑音混入とを区別できるタッチパネルコントローラなどを提供する。【解決手段】タッチパネルコントローラ（１）は、Ｍ系列又は直交系列の符号系列に含まれるｎ（ｎ＞ｍ）個の行ベクトルのうちの一つの行ベクトルに含まれるｍ個の列の要素を用いて、ドライブライン（ＤＬ１〜ＤＬｍ）を駆動し、容量素子（Ｃ１１〜Ｃｎｍ）からの線形和出力ベクトルと、ｍ個の列以外の列ベクトルとの間の内積を演算する雑音検出部（１６）とを備える。【選択図】図１
2015118553.tif 000002
【特許請求の範囲】
【請求項１】
ｍ本のドライブラインと、センスラインと、前記ｍ本のドライブラインと前記センスラインとの間に形成される複数の容量素子とを備えたタッチパネルを制御するタッチパネルコントローラであって、
Ｍ系列又は直交系列の符号系列に含まれるｎ（ｎ＞ｍ）個の行ベクトルのうちの一つの行ベクトルに含まれるｍ個の列の要素を用いて前記ｍ本のドライブラインを並列駆動する１回の駆動を、前記行ベクトルを重複させずにｎ回実施し、前記複数の容量素子からの線形和出力を、前記センスラインからｎ個出力させる駆動部と、
ｎ個の前記線形和出力のうちのｉ個目（１≦ｉ≦ｎ）の前記線形和出力をｉ個目の要素とする線形和出力ベクトルと、前記駆動部が前記ｉ個目の前記線形和出力を前記センスラインから出力させるときに用いる前記行ベクトルの前記ｍ個の列以外の特定列の要素をｉ個目の要素とする列ベクトルとの間の内積を演算して前記センスラインに混入する雑音の有無を検出する雑音検出部と、
を備えたことを特徴とするタッチパネルコントローラ。
【請求項２】
前記雑音検出部は、
前記線形和出力ベクトルと、前記特定列の要素をｉ個目の要素とする列ベクトルとの間の内積を演算する第１の内積演算部と、
前記線形和出力ベクトルと、他の特定列の要素をｉ個目の要素とする他の列ベクトルとの間の他の内積を演算する第２の内積演算部と、
前記第１の内積演算部が演算した内積と、前記第２の内積演算部が演算した他の内積との間の差分を演算して前記雑音の有無を検出する雑音差分検出部と、
を含むことを特徴とする請求項１に記載のタッチパネルコントローラ。
【請求項３】
前記雑音検出部は、前記線形和出力ベクトルと、前記特定列の要素をｉ個目の要素とする列ベクトルとの間の内積を演算した後、前記線形和出力ベクトルと、他の特定列の要素をｉ個目の要素とする他の列ベクトルとの間の他の内積を演算し、各内積演算結果の時間変化に基づいて、前記雑音の有無を検出することを特徴とする請求項１に記載のタッチパネルコントローラ。
【請求項４】
請求項１から３のいずれか１項に記載のタッチパネルコントローラと、
前記タッチパネルコントローラによって制御されるタッチパネルと、
を備えたことを特徴とするタッチパネル装置。
【請求項５】
請求項４に記載のタッチパネル装置を備えた電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のドライブラインを並列駆動して、マトリックス状に構成された容量素子の静電容量値を推定又は検出するタッチパネルコントローラと、当該タッチパネルコントローラが集積された集積回路と、当該タッチパネルコントローラが用いられたタッチパネル装置と、当該タッチパネルコントローラが用いられた電子機器とに関する。
【背景技術】
【０００２】
＜従来のタッチパネルの構成＞
特許文献１は、マトリックス状に構成された容量素子の静電容量値を推定又は検出するタッチパネルコントローラを開示している。
【０００３】
図１３は、特許文献１に開示される従来のタッチパネルコントローラ６３の構成を示す模式図である。
【０００４】
タッチパネルコントローラ６３は、ユーザが指やペンなどでタッチパネル５２に触れたときに、触れられた位置における静電容量の値の変化（例えば、小さくなる）を検出することによって、タッチパネル５２上の、ユーザが触れた位置を検出する。
【０００５】
図１３に示されるように、タッチパネルコントローラ６３は、タッチパネル５２を駆動する駆動部５４と、差動増幅器５５とを備える。
【０００６】
ここで、タッチパネル５２は、４本のドライブラインＤＬ１〜ＤＬ４と、４本のセンスラインＳＬ１〜ＳＬ４と、各ドライブラインＤＬ１〜ＤＬ４と各センスラインＳＬ１〜ＳＬ４との間に形成された容量素子Ｃ１１〜Ｃ４４とを備える。
【０００７】
差動増幅器５５は、一対の積分容量素子Ｃｉｎｔを備え、センスラインＳＬ３・ＳＬ４と接続されている。
【０００８】
＜従来のタッチパネルの動作＞
駆動部５４は、各ドライブラインＤＬ１〜ＤＬ４に電圧を印加する。各センスラインＳＬ１〜ＳＬ４は、当該印加される電圧と、各容量素子Ｃ１１〜Ｃ４４の静電容量値とに応じた線形和出力を出力する。差動増幅器５５は、センスラインＳＬ３・ＳＬ４から出力される線形和出力の差分を増幅する。
【０００９】
（符号系列に基づく駆動）
駆動部５４が印加する電圧は、符号系列に基づいている。
【００１０】
なお、当該電圧は、例えば電源電圧から供給される。また、当該電圧は、電源電圧以外の電圧（例えば、参照電圧）から供給されてもよい。
【００１１】
図１４は、符号系列の例を示す図である。
【００１２】
図１４に示されるように、符号系列は、要素が「１」又は「−１」である、Ｍ系列の符号系列である。また、符号系列は、「1st vector」、「2nd vector」、…、「31st vector」と示される３１個の、長さ（要素の数）が３１のベクトルからなる。
【００１３】
ここで、符号系列の「Drive 1」と示される第１列目の要素は、図１３において、駆動部５４がドライブラインＤＬ１に印加する電圧に対応する。該要素が「１」ならば、印加される電圧は「Ｖｄｒｉｖｅ」になる。また、該要素が「−１」ならば、印加される電圧は「−Ｖｄｒｉｖｅ」になる。このように、各ドライブラインＤＬ１〜ＤＬ４は、符号系列の特定列のいずれか一つに対応する。
【００１４】
つまり、タッチパネル５２が、４本のドライブラインＤＬ１〜ＤＬ４を備えるので、駆動部５４は、符号系列のいずれか４列に基づいて、ドライブラインＤＬ１〜ＤＬ４を駆動する。
【００１５】
（線形和信号の取得）
ドライブラインＤＬ１〜ＤＬ４が駆動され、タッチパネルコントローラ６３は、差動増幅器５５から線形和出力の差分Ｙを取得する。線形和出力の差分Ｙは、例えば、以下の式（１）のように表される。
【００１６】
【数１】
2015118553.tif 000003
式（１）における記号の意味は、以下のとおりである。
Ｙ：差動増幅器５５から出力される線形和出力の差分の値
Ｖｄｒｉｖｅ：各ドライブラインＤＬ１〜ＤＬ４に印加される電圧の絶対値
Ｃｉｎｔ：積分容量素子Ｃｉｎｔの静電容量値
Ｃｉｊ：容量素子Ｃｉｊの静電容量値（１≦ｉ≦３１、１≦ｊ≦４）
式（１）の右辺では、（Ｃ３１−Ｃ４１）の係数は「１」となり、（Ｃ３２−Ｃ４２）の係数は「−１」となり、（Ｃ３３−Ｃ４３）の係数は「１」となり、かつ、（Ｃ３４−Ｃ４４）の係数は「１」となっている。つまり、式（１）は、図１３において、駆動部５４が、符号系列のうち［１，−１，１，１］という要素を含むベクトルに基づいて、ドライブラインＤＬ１〜ＤＬ４を駆動した状況を表す。
【００１７】
より具体的には、式（１）は、駆動部５４が、当該ベクトルの１個目の要素に基づいて、ドライブラインＤＬ１を駆動し、当該ベクトルの２個目の要素に基づいて、ドライブラインＤＬ２を駆動し、当該ベクトルの３個目の要素に基づいて、ドライブラインＤＬ３を駆動し、かつ、当該ベクトルの４個目の要素に基づいて、ドライブラインＤＬ４を駆動した状況を表す。
【００１８】
以下の式（２）は、当該ベクトルの要素をＤｉ，１〜Ｄｉ，４と表すことにより、式（１）を一般化した式である。
【００１９】
【数２】
2015118553.tif 000004
式（２）における記号の意味は、以下のとおりである。なお、以下に示されない記号の意味は、前述の式における記号の意味と同一である。そして、本書の以降の記載において、数式中に示されない記号の意味は、同様に、当該数式よりも以前に示される式における記号の意味と同一である。
Ｙｉ：符号系列のうちｉ番目のベクトルに基づいて、ドライブラインＤＬ１〜ＤＬ４が駆動されるときに、差動増幅器５５から出力される線形和出力の差分の値（１≦ｉ≦３１）
Ｄｉ，ｊ：当該ｉ番目のベクトルのｊ個目の要素（１≦ｉ≦３１、１≦ｊ≦４）
式（２）が表す状況では、駆動部５４は、符号系列のうちのｉ番目のベクトルに基づいて、ドライブラインＤＬ１〜ＤＬ４を１回駆動する。そして、ｉ番目のベクトルのｊ個目の要素は、ドライブラインＤＬｊに印加される電圧の符号に対応する（１≦ｉ≦３１、１≦ｊ≦４）。
【００２０】
ここで、ドライブラインＤＬ１〜ＤＬ４は、複数回にわたって駆動される。より具体的には、ドライブラインＤＬ１〜ＤＬ４は、符号系列のうち１〜３１番目の３１個のベクトルに基づいて、３１回にわたって駆動される。
【００２１】
したがって、３１個（複数）の線形和出力の差分が、差動増幅器５５から出力される。
【００２２】
（内積演算による静電容量値の推定）
以下では、複数の線形和出力の差分のうちのｉ個目の線形和出力の差分の値を、ｉ個目の要素とするベクトルを、「線形和出力ベクトル」と呼ぶ。
【００２３】
また、符号系列のｉ番目のベクトルのｊ個目の要素を、ｉ個目の要素とするベクトルを、「符号系列のｊ列目の列ベクトル」と呼ぶ。なお、符号系列のｊ列目の列ベクトルは、図１４に示される符号系列において、「Drive j」（１≦ｊ≦３１）と示される列に対応する。
【００２４】
そして、線形和出力ベクトルと、符号系列の列ベクトルとの間の内積を演算することにより、容量素子Ｃ１１〜Ｃ４４の静電容量値が推定される。
【００２５】
線形和出力ベクトルＹｉと、符号系列の１列目の列ベクトル（要素：Ｄｉ，１）との間の内積は、以下の式（３）で表される（１≦ｉ≦３１）。
【００２６】
【数３】
2015118553.tif 000005
ここで、符号系列の３１個のベクトル（「1st vector」〜「31st vector」）を、ｄ１〜ｄ３１と表せば、ベクトルｄ１〜ｄ３１のうち、重複を許す２個のベクトルの内積について、以下の式（４）が成立する（１≦ｉ≦３１、ｎ＝３１）。
【００２７】
【数４】
2015118553.tif 000006
式（４）に示されるように、Ｍ系列の符号系列では、符号系列のｉ番目のベクトルと、ｊ番目のベクトルとの間の内積は、ｉ＝ｊならばｎ（符号系列の系列長と同じ値）に、ｉ≠ｊならば−１になる。同様に、符号系列のｉ列目の列ベクトルと、ｊ列目の列ベクトルとの間の内積も、ｉ＝ｊならばｎに、ｉ≠ｊならば−１になることが知られている。
【００２８】
したがって、式（３）は、以下の式（５）に変形される。
【００２９】
【数５】
2015118553.tif 000007
式（５）に示されるように、（Ｃ３１−Ｃ４１）の係数は「３１」となり、（Ｃ３２−Ｃ４２）の係数は「−１」となり、（Ｃ３３−Ｃ４３）の係数は「−１」となり、かつ、（Ｃ３４−Ｃ４４）の係数は「−１」となる。
【００３０】
ここで、ドライブラインＤＬ１〜ＤＬ４の幅と、センスラインＳＬ３・ＳＬ４の幅とが、すべて均一の幅になると仮定すれば、容量素子Ｃ３１〜Ｃ３４、Ｃ４１〜Ｃ４４の静電容量値は、ほぼ同じ値になる。そして、式（５）において、（Ｃ３１−Ｃ４１）の係数の絶対値は、（Ｃ３２−Ｃ４２）の係数の絶対値、（Ｃ３３−Ｃ４３）の係数の絶対値、および（Ｃ３４−Ｃ４４）の係数の絶対値よりも３１倍大きいので、相対的に小さい影響を無視すれば、式（５）は、以下の式（６）のように簡略化できる。
【００３１】
【数６】
2015118553.tif 000008
以上により、式（６）から、容量素子Ｃ３１の静電容量値と、容量素子Ｃ４１の静電容量値との差が推定される。
【００３２】
同様に、式（３）において、線形和出力ベクトルＹｉと、符号系列の１番目の列ベクトル（要素：Ｄｉ，１）との間の内積を演算するのではなく、線形和出力ベクトルＹｉと、符号系列のｊ番目の列ベクトル（要素：Ｄｉ，ｊ）との間の内積を演算することで、容量素子Ｃ３ｊの静電容量値と、容量素子Ｃ４ｊの静電容量値との差が、それぞれ推定される（２≦ｊ≦４）。
【先行技術文献】
【特許文献】
【００３３】
【特許文献１】特開２０１３−３６０３号公報（２０１３年１月７日公開）
【発明の概要】
【発明が解決しようとする課題】
【００３４】
しかしながら、特許文献１が開示する従来のタッチパネルコントローラ６３は、センスラインＳＬ３・ＳＬ４に混入する雑音が大きいと、容量素子Ｃ１１〜Ｃ４４の静電容量値の変化と、当該雑音の混入とを区別できないという問題がある。
【００３５】
まず、符号系列のｉ番目のベクトルに基づいて、ドライブラインＤＬ１〜ＤＬ４が駆動されるときに、センスラインＳＬ３・ＳＬ４に混入する雑音をＮｉと表すと、差動増幅器５５から出力される、雑音が混入した線形和出力の差分の値を要素とするベクトル（以下、雑音が混入した線形和出力ベクトル）Ｚｉは、以下の式（７）によって表される。
【００３６】
【数７】
2015118553.tif 000009
次に、容量素子Ｃ１１〜Ｃ４４の静電容量値（例えば、容量素子Ｃ３１の静電容量値と、容量素子Ｃ４１の静電容量値との差）を推定するために、雑音が混入した線形和出力ベクトルＺｉと、符号系列の１列目の列ベクトルとの間の内積を演算することを考える。当該内積は、以下の式（８）によって表される。
【００３７】
【数８】
2015118553.tif 000010
ここで、雑音Ｎｉが、Ｍ系列ではないため、式（８）の第五項は、Ｍ系列である符号系列の列ベクトル同士の内積と比べて大きな値となる可能性がある。この場合、タッチパネル５２へのタッチ（タッチ入力）と、センスラインＳＬ３・ＳＬ４への雑音の混入とが、同時に起こり得るため、タッチ入力によって容量素子Ｃ３１〜Ｃ３４・Ｃ４１〜Ｃ４４の静電容量値が変化したこと（つまり、式（８）の右辺の第一項〜第四項の値の変化）と、雑音が混入したこと（式（８）の右辺の第五項の値の変化）とを、式（８）において区別できない。
【００３８】
換言するならば、式（８）の内積を演算しても、容量素子Ｃ１１〜Ｃ４４の静電容量値を推定できない。これに起因し、タッチパネル５２が、誤動作することもある。
【００３９】
本発明は、以上の問題に鑑みてなされたものであり、容量素子の静電容量値の変化（タッチ入力）と、雑音の混入とを区別できるタッチパネルコントローラなどを提供することを目的とする。
【課題を解決するための手段】
【００４０】
上述の課題を解決するために、本発明の一態様に係るタッチパネルコントローラは、ｍ本のドライブラインと、センスラインと、前記ｍ本のドライブラインと前記センスラインとの間に形成される複数の容量素子とを備えたタッチパネルを制御するタッチパネルコントローラであって、Ｍ系列又は直交系列の符号系列に含まれるｎ（ｎ＞ｍ）個の行ベクトルのうちの一つの行ベクトルに含まれるｍ個の列の要素を用いて前記ｍ本のドライブラインを並列駆動する１回の駆動を、前記行ベクトルを重複させずにｎ回実施し、前記複数の容量素子からの線形和出力を、前記センスラインからｎ個出力させる駆動部と、ｎ個の前記線形和出力のうちのｉ個目（１≦ｉ≦ｎ）の前記線形和出力をｉ個目の要素とする線形和出力ベクトルと、前記駆動部が前記ｉ個目の前記線形和出力を前記センスラインから出力させるときに用いる前記行ベクトルの前記ｍ個の列以外の特定列の要素をｉ個目の要素とする列ベクトルとの間の内積を演算して前記センスラインに混入する雑音の有無を検出する雑音検出部とを備える。
【００４１】
また、本発明の他の態様に係るタッチパネル装置は、上述のタッチパネルコントローラと、前記タッチパネルコントローラによって制御されるタッチパネルとを備える。
【００４２】
また、本発明の他の態様に係る電子機器は、上述のタッチパネル装置を備える。
【発明の効果】
【００４３】
本発明の各態様によれば、容量素子の静電容量値の変化（タッチ入力）と、雑音の混入とを区別できるという効果を奏する。
【図面の簡単な説明】
【００４４】
【図１】本発明の実施形態１に係るタッチパネルコントローラの構成を示す模式図である。
【図２】Ｍ系列の符号系列を生成するための構成例を示すブロック図である。
【図３】図１に示されるタッチパネルコントローラにおける、雑音推定シミュレーション結果を示すグラフである。
【図４】図３に結果が示される雑音推定シミュレーションにおける、線形和信号の差分の例を示すグラフである。
【図５】図３に結果が示される雑音推定シミュレーションに対する、比較例の雑音推定シミュレーション結果を示すグラフである。
【図６】図１に示されるタッチパネルコントローラの変形例である、タッチパネルコントローラの構成を示す模式図である。
【図７】本発明の実施形態２に係るタッチパネルコントローラにおける、雑音検出部の構成を示す模式図である。
【図８】本発明の実施形態３に係る雑音推定シミュレーション結果を示すグラフである。
【図９】図８に結果が示される雑音推定シミュレーションと同様の条件で実施する、容量推定シミュレーション結果を示すグラフである。
【図１０】図８に結果が示される雑音推定シミュレーションにおいて、クロック信号の周波数が変更されるときの、シミュレーション結果を示すグラフであり、（ａ）は周波数が１１０ｋＨｚである結果を示し、（ｂ）は周波数が１３０ｋＨｚである結果を示す。
【図１１】図９に結果が示される容量推定シミュレーションにおいて、クロック信号の周波数が変更されるときの、シミュレーション結果を示すグラフであり、（ａ）は周波数が１１０ｋＨｚである結果を示し、（ｂ）は周波数が１３０ｋＨｚである結果を示す。
【図１２】本発明の実施形態４に係るの携帯電話機の構成を示すブロック図である。
【図１３】従来のタッチパネルコントローラの構成を示す模式図である。
【図１４】符号系列の例を示す図である。
【発明を実施するための形態】
【００４５】
〔実施形態１〕
本発明の一実施形態について、図１〜図５に基づいて説明すれば、以下のとおりである。
【００４６】
＜タッチパネルコントローラの構成＞
図１は、本実施形態のタッチパネルコントローラ１の構成を示す模式図である。
【００４７】
図１に示されるように、タッチパネルコントローラ１は、タッチパネル２を駆動する駆動部１１と、符号生成部１２と、複数の差動増幅器１３とを備える。さらに、タッチパネルコントローラ１には、ＡＤ変換部１４と、容量推定部１５と、雑音検出部１６と、周波数制御部１９とが、各差動増幅器１３に対応して備えられている。
【００４８】
そして、タッチパネルシステム１０（タッチパネル装置）は、タッチパネルコントローラ１と、タッチパネルコントローラ１によって制御されるタッチパネル２とを備える。
【００４９】
ここで、タッチパネル２は、ｍ本のドライブラインＤＬ１〜ＤＬｍと、ｎ本のセンスラインＳＬ１〜ＳＬｎと、各ドライブラインＤＬ１〜ＤＬｍと各センスラインＳＬ１〜ＳＬｎとの間に形成された容量素子Ｃ１１〜Ｃｎｍとを備える。
【００５０】
符号生成部１２は、駆動部１１と、容量推定部１５と、雑音検出部１６とに接続されている。
【００５１】
各差動増幅器１３は、一対の積分容量素子Ｃｉｎｔを備え、センスラインＳＬ１〜ＳＬｎのうちの２本のセンスラインと接続されている。
【００５２】
ＡＤ変換部１４は、対応する差動増幅器１３と、容量推定部１５とに接続されている。
【００５３】
雑音検出部１６は、容量推定部１５に接続されている。
【００５４】
周波数制御部１９は、駆動部１１と、符号生成部１２とに接続されている。
【００５５】
（駆動部１１）
駆動部１１は、符号生成部１２と接続された、各ドライブラインＤＬ１〜ＤＬｍに対応するスイッチを備える。
【００５６】
該スイッチには、電圧Ｖｄと電圧Ｖｃｍとを足した第１の電圧、又は、電圧−Ｖｄと電圧Ｖｃｍとを足した第２の電圧が、印加されている。タッチパネル２のドライブラインＤＬ１〜ＤＬｍは、対応する該スイッチを介し、第１の電圧又は第２の電圧を印加される。
【００５７】
ここで、電圧Ｖｃｍは、ドライブラインＤＬ１〜ＤＬｍに印加される電圧（駆動電圧）の基準となる電圧である。
【００５８】
該スイッチは、符号生成部１２が生成する符号系列（要素：Ｄｉ，１〜Ｄｉ，ｍ）に基づいて、オン／オフされる。
【００５９】
このように、駆動部１１は、符号系列に基づいて、ドライブラインＤＬ１〜ＤＬｍを並列駆動する。
【００６０】
（符号生成部１２）
符号生成部１２は、Ｍ系列の符号系列を生成する。
【００６１】
ここで、符号系列は、例えば、図１４に示される符号系列である。
【００６２】
符号系列の要素は、「１」又は「−１」である。
【００６３】
駆動部１１のスイッチは、符号生成部１２から与えられる符号系列の要素が「１」なら、該スイッチに対応するドライブラインＤＬ１〜ＤＬｍに上述の第１の電圧を与え、該要素が「−１」なら、該スイッチに対応するドライブラインＤＬ１〜ＤＬｍに上述の第２の電圧を与える。
【００６４】
以下では、従来技術との対比のため、第１の電圧を「Ｖｄｒｉｖｅ」と、第２の電圧を「−Ｖｄｒｉｖｅ」と記載して説明する。
【００６５】
また、符号系列は、ｎ個の、長さ（要素の数）がｎのベクトルからなる。例えば、図１４に示される例では、符号系列は、「1st vector」、「2nd vector」、…、「31st vector」と示される３１個の、長さが３１のベクトルからなる。
【００６６】
なお、符号系列を一つの行列として扱えば、当該ベクトルは、符号系列の行ベクトルであると言える。駆動部１１は、当該行ベクトルを重複させずに、少なくとも行ベクトルの個数に応じた回数（つまり、ｎ回）、ドライブラインＤＬ１〜ＤＬｍを並列駆動する。
【００６７】
図１において、Ｄｉ，ｊは、符号系列のうちｉ番目のベクトルのｊ個目の要素である（１≦ｉ≦ｎ、１≦ｊ≦ｍ）。
【００６８】
ここで、符号系列の「Drive j」と示される第ｊ列目の要素は、図１において、駆動部１１がドライブラインＤＬｊに印加する電圧の符号に対応する。このように、各ドライブラインＤＬ１〜ＤＬｍは、符号系列の特定列のいずれか一つに対応する。
【００６９】
より具体的には、図１に示されるタッチパネルシステム１０では、タッチパネル２が、ｍ本のドライブラインＤＬ１〜ＤＬｍを備えるので、駆動部１１は、符号系列のいずれかｍ列に基づいて、ドライブラインＤＬ１〜ＤＬｍを駆動する。
【００７０】
（Ｍ系列の符号系列を生成するための構成例）
図２は、Ｍ系列の符号系列を生成するための構成例を示すブロック図である。
【００７１】
図２に示されるように、Ｍ系列生成部３は、線形帰還シフトレジスタＳＲと、シフトレジスタＳＲ１〜ＳＲｋ（ｋは変数）とを備える。
【００７２】
ここで、Ｍ系列の符号系列をビットシフトした符号系列は、元の符号系列との相関が低い符号系列になることが知られている。
【００７３】
図２に示されるように、線形帰還シフトレジスタＳＲが出力するＭ系列の符号系列は、シフトレジスタＳＲ１〜ＳＲＫによってビットシフトされ、新たなＭ系列の符号系列（要素：Ｄｉ，１、Ｄｉ，２、…、Ｄｉ，ｋ−１、Ｄｉ，ｋ）が出力される。
【００７４】
上述の符号生成部１２は、Ｍ系列生成部３を備えてよい。また、変数ｋは、所望の値に設定されてよい（例えば、ドライブラインＤＬ１〜ＤＬｍの本数より多い数）。
【００７５】
（差動増幅器１３）
差動増幅器１３は、センスラインＳＬ１〜ＳＬｎのうちの２本のセンスラインから出力される線形和信号の差分を出力する。
【００７６】
ここで、線形和信号は、ドライブラインＤＬ１〜ＤＬｍに与えた符号系列の重み付き和であると言える。
【００７７】
図１では、センスラインＳＬ１・ＳＬ２に接続された差動増幅器１３と、センスラインＳＬｎ−１・ＳＬｎに接続された差動増幅器１３とが示されているが、これらに限定されるわけではない。例えば、差動増幅器１３は、センスラインＳＬ３・ＳＬ４に接続されていてもよいし、任意の２本のセンスラインに接続されていてもよい。
【００７８】
ここで、差動増幅器１３が出力する線形和信号の差分は、例えば、上述の式（２）に示される線形和信号の差分である。なお、式（２）に示される線形和信号の差分は、センスラインＳＬ３・ＳＬ４から出力される線形和信号の差分を表す。
【００７９】
（ＡＤ変換部１４）
ＡＤ変換部１４は、差動増幅器１３が出力する線形和信号の差分を、デジタル値に変換し、容量推定部１５と、雑音検出部１６とへ出力する。
【００８０】
なお、図１に記載されるｗは、ＡＤ変換部１４の出力を表す。
【００８１】
（容量推定部１５）
容量推定部１５は、ＡＤ変換部１４の出力と、符号生成部１２の出力とから、上述の、式（３）〜式（６）の内積演算により、容量素子Ｃ１１〜Ｃｎｍの静電容量値を推定する。
【００８２】
なお、図１に記載されるｘは、容量推定部１５の出力を表す。
【００８３】
（雑音検出部１６）
雑音検出部１６は、ＡＤ変換部１４の出力と、符号生成部１２の出力とから、後述する動作により、センスラインＳＬ１〜ＳＬｎに混入した雑音の有無を検出する。
【００８４】
なお、図１に記載されるｙは、雑音検出部１６の出力を表す。
【００８５】
（周波数制御部１９）
周波数制御部１９は、クロック信号の周波数を制御する。
【００８６】
ここで、クロック信号とは、駆動部１１が、符号生成部１２から出力される符号系列に基づいて、ドライブラインＤＬ１〜ＤＬｍに電圧を印加する１回の駆動を複数回行うときの、駆動と駆動との間隔（つまり、周波数）を制御する信号を意味する。換言するならば、クロック信号は、タッチパネル２の動作周波数である。
【００８７】
＜タッチパネルコントローラの動作＞
（符号系列に基づく駆動）
符号生成部１２が生成する符号系列の長さｎは、ドライブラインＤＬ１〜ＤＬｍの個数ｍよりも大きい。すなわち、ｎ＞ｍである。
【００８８】
よって、符号系列の列のうち、（ｎ−ｍ）個の列は、ドライブラインＤＬ１〜ＤＬｍの駆動に用いられない。
【００８９】
なお、図１に記載されるｖａは、符号生成部１２が生成する符号系列の列のうち、ドライブラインＤＬ１〜ＤＬｍの駆動に用いられる列を意味する。
【００９０】
また、図１に記載されるｖｂは、符号生成部１２が生成する符号系列の列のうち、ドライブラインＤＬ１〜ＤＬｍの駆動に用いられない列を意味する。
【００９１】
（内積演算による雑音検出）
以下では、差動増幅器１３から出力される、複数の線形和出力の差分のうちのｉ個目の線形和出力の差分の値を、ｉ個目の要素とするベクトルを、「線形和出力ベクトル」と呼ぶ。
【００９２】
また、符号系列のｉ番目のベクトルのｊ個目の要素を、ｉ個目の要素とするベクトルを、「符号系列のｊ列目の列ベクトル」と呼ぶ。なお、符号系列のｊ列目の列ベクトルは、例えば、図１４の符号系列において、「Drive j」（１≦ｊ≦３１）と示される列に対応する。
【００９３】
ここで、発明者は、線形和出力ベクトルと、「ドライブラインＤＬ１〜ＤＬｍの駆動に用いられない」符号系列の列ベクトルとの間の内積を演算することにより、センスラインＳＬ１〜ＳＬｎに混入した雑音の有無を検出できることを見出した。
【００９４】
まず、例えば、符号系列の１〜４番目のベクトルに基づいて、ドライブラインＤＬ１〜ＤＬ４が駆動されるときに、センスラインＳＬ３・ＳＬ４に混入する雑音をＮｉと表すと、センスラインＳＬ３・ＳＬ４に接続された差動増幅器１３から出力される、雑音が混入した線形和出力の差分の値を要素とするベクトル（以下、雑音が混入した線形和出力ベクトルＺｉ）は、上述の式（７）によって表される。なお、線形和出力の差分は、ＡＤ変換部１４により、デジタル値に変換される。
【００９５】
次に、雑音検出部１６は、雑音が混入した線形和出力ベクトルＺｉと、符号系列の、例えば５列目の列ベクトルとの間の内積を演算する。当該内積は、以下の式（９）によって表される。
【００９６】
【数９】
2015118553.tif 000011
ここで、符号系列の５列目の列ベクトルは、ドライブラインＤＬ１〜ＤＬ４の駆動に用いられない符号系列の列ベクトルである。なお、当該列ベクトルは、図１４の符号系列の６〜３１列目の列ベクトルであってもよい。
【００９７】
式（９）に示されるように、（Ｃ３１−Ｃ４１）の係数と、（Ｃ３２−Ｃ４２）の係数と、（Ｃ３３−Ｃ４３）の係数と、（Ｃ３４−Ｃ４４）の係数とは、すべて「−１」となる。つまり、式（９）の右辺の第一項〜第四項の値の変化（タッチ入力によって容量素子Ｃ３１〜Ｃ３４・Ｃ４１〜Ｃ４４の静電容量値が変化したことに対応）は、式（９）の右辺の第五項の値の変化（雑音が混入したことに対応）に対して小さくなる余地があるため、雑音を検出しやすくなる。
【００９８】
換言するならば、線形和出力ベクトルＺｉと、「ドライブラインＤＬ１〜ＤＬｍの駆動に用いられない」符号系列の列ベクトルとの相関は、雑音Ｎｉと、当該列ベクトルとの相関よりも小さくなるため、雑音を検出しやすくなる。
【００９９】
以上の例において、駆動するドライブラインＤＬ１〜ＤＬ４を、駆動するドライブラインＤＬ１〜ＤＬｍと一般化しても、及び／又は、符号系列の５列目の列ベクトルを、符号系列の（ｍ＋１）〜ｎ列目の列ベクトルと一般化しても、同様の結果が得られる。
【０１００】
（雑音推定シミュレーション）
上述の内積演算による雑音検出が有用であることを、シミュレーションによって説明する。雑音推定シミュレーションは、図１に示されるタッチパネルコントローラ１において、以下に列挙する条件下で行った。
・タッチパネルコントローラ１は、２本のセンスラインＳＬ１・ＳＬ２を備える。
・タッチパネルコントローラ１は、１８本のドライブラインＤＬ１〜ＤＬ１８を備える（ｍ＝１８）。
・容量素子Ｃ１１〜Ｃ２（１８）の静電容量値は、２．２ｐＦである。
・積分容量素子Ｃｉｎｔの静電容量値は、８ｐＦである。
・タッチ入力がある場合、容量素子Ｃ１１〜Ｃ２（１８）の静電容量値は、０．２ｐＦ小さくなる。
・クロック信号の周波数は、１ＭＨｚである。
・Ｖｄｒｉｖｅは、３．３Ｖである。
・−Ｖｄｒｉｖｅは、０Ｖである。
・雑音容量素子Ｃｐ１〜Ｃｐ２の静電容量値は、１ｐＦである。
・センスラインＳＬ１・ＳＬ２には、雑音容量素子Ｃｐを介し、振幅１Ｖかつ周波数１２０ｋＨｚの正弦波である雑音が混入する。
・センスラインＳＬ２と、ドライブラインＤＬ８〜ＤＬ１１との交点上に、タッチ入力がある。
・符号系列は、６個のシフトレジスタで構成される線形帰還シフトレジスタが生成した、符号長が６３である、Ｍ系列の符号系列（要素：Ｄ１，１〜Ｄ６３，６３）である（ｎ＝６３）。
【０１０１】
なお、Ｖｄｒｉｖｅと、−Ｖｄｒｉｖｅとは、電源電圧ＶＤＤと電圧ＶＣＭとにより、以下に列挙するように記載できる。
・Ｖｄｒｉｖｅ＝（ＶＤＤ／２）＋ＶＣＭ＝３．３Ｖ
・−Ｖｄｒｉｖｅ＝（−ＶＤＤ／２）＋ＶＣＭ＝０Ｖ
また、「雑音容量素子Ｃｐ１〜Ｃｐ２」は、シミュレーションにおいて、センスラインＳＬ１・ＳＬ２に雑音を混入させるための仮想的な容量素子であり、図１に示されるように、センスラインＳＬ１・ＳＬ２と、グランドとの間に接続されている。
【０１０２】
（雑音推定シミュレーション結果）
雑音推定シミュレーション結果を、推定された容量（静電容量値）によって評価することを考える。
【０１０３】
「推定された容量」とは、上述の式（６）における、（Ｃ３１−Ｃ４１）に対応する値を意味する。ここで、式（６）は、以下の式（１０）のように変形できる。
【０１０４】
【数１０】
2015118553.tif 000012
そして、「推定された容量」の実際の値は、式（１０）の右辺において、雑音検出部１６が出力する内積演算結果を（ΣＹｉＤｉ，１）に代入するとともに、３１を６３に置換し、Ｄｉ，１を符号系列の所定の第ｊ列目の要素であるＤｉ，ｊに置換した値である。換言するならば、「推定された容量」は、内積演算結果を式（１０）によって換算した値である。
【０１０５】
図３は、図１に示されるタッチパネルコントローラ１における、雑音推定シミュレーション結果を示すグラフである。
【０１０６】
図３に示されるように、センスラインＳＬ１・ＳＬ２に、雑音が混入しない場合の雑音推定シミュレーションと、雑音が混入する場合の雑音推定シミュレーションとを、内積演算に用いられる符号系列の１９〜６３列目の列ベクトル（Ｄｉ，１９〜Ｄｉ，６３［１≦ｉ≦６３］）ごとに実施した。
【０１０７】
図３では、縦軸に推定された容量が、横軸に内積演算に用いられた符号系列の列ベクトルの列の番号（以下、符号系列の番号）が示されている。
【０１０８】
ここで、符号系列の１９〜６３列目の列ベクトルは、ドライブラインＤＬ１〜ＤＬ１８の駆動に用いられなかった、符号系列の列ベクトルである。
【０１０９】
まず、雑音がない場合には、推定された容量の値が一定となった。これは、内積演算結果も、一定の値となることを示している。
【０１１０】
次に、雑音がある場合には、推定された容量の値が、各符号系列の番号に対して異なる値となった。
【０１１１】
例えば、符号系列の番号が１９であるとき、雑音がある場合の推定された容量の値は、−０．１１４．８ｐＦとなった。
【０１１２】
当該値は、雑音検出部１６が、線形和出力ベクトルと、ドライブラインＤＬ１〜ＤＬ１８の駆動に用いられなかった符号系列の列ベクトルとの間の内積を演算することにより、センスラインＳＬ１・ＳＬ２に混入した雑音の有無を検出（判定）できることを示している。
【０１１３】
なお、符号系列の番号が３０であるとき、雑音がある場合の推定された容量の値は、０．００４５ｐＦとなっている。このように、雑音がある場合でも、推定された容量の値（内積演算結果）は、偶発的に小さくなることがある。
【０１１４】
したがって、雑音検出部１６は、線形和出力ベクトルと、ドライブラインＤＬ１〜ＤＬ１８の駆動に用いられなかった符号系列の列ベクトルとの間の内積を、複数の列ベクトルごとに演算し、内積演算結果の時間変化に基づいて、雑音の有無を判定することが望ましい。
【０１１５】
換言するならば、雑音検出部１６は、線形和出力ベクトルと、ドライブラインＤＬ１〜ＤＬ１８の駆動に用いられなかった符号系列の列ベクトルとの間の内積を演算した後、線形和出力ベクトルと、ドライブラインＤＬ１〜ＤＬ１８の駆動に用いられなかった他の符号系列の列ベクトルとの間の他の内積を演算し、内積と他の内積との間の差分を演算して雑音の有無を検出する。
【０１１６】
（比較例）
図４は、図３に結果が示される雑音推定シミュレーションにおける、線形和信号の差分の例を示すグラフである。
【０１１７】
図４では、縦軸に、差動増幅器１３の出力が、電圧の振幅によって示されている。また、横軸には、時間の経過が示されている。
【０１１８】
図４に示されるように、差動増幅器１３は、１ＭＨｚのクロック信号に基づいて、１μｓの間隔で、センスラインＳＬ１からの線形和出力と、センスラインＳＬ２からの線形和出力との間の差分を出力している。
【０１１９】
上述のように、図３に結果が示される雑音推定シミュレーションでは、センスラインＳＬ１・ＳＬ２に混入する雑音の振幅は、１Ｖである。しかし、雑音がある場合も、雑音がない場合も、差動増幅器１３の出力は、同じような値となるので、雑音検出部１６は、差動増幅器１３の出力（つまり、線形和出力の差分）だけからでは、雑音の有無を検知できない。
【０１２０】
図５は、図３に結果が示される雑音推定シミュレーションに対する、比較例の雑音推定シミュレーション結果を示すグラフである。
【０１２１】
図５に示されるように、雑音が混入しない場合の雑音推定シミュレーションと、センスラインＳＬ１・ＳＬ２に雑音が混入する場合のシミュレーションとを、内積演算に用いられる符号系列の１〜１８列目の列ベクトル（Ｄｉ，１〜Ｄｉ，１８［１≦ｉ≦６３］）ごとに実施した。
【０１２２】
なお、図５の縦軸・横軸は、図３の縦軸・横軸に対応している。
【０１２３】
また、図５に結果が示される雑音推定シミュレーションにおける条件は、内積演算に用いられる符号系列の列ベクトルを除き、図３に結果が示されるシミュレーションにおける条件と同様である。
【０１２４】
ここで、符号系列の１〜１８列目の列ベクトルは、ドライブラインＤＬ１〜ＤＬ１８の駆動に用いられた、符号系列の列ベクトルである。
【０１２５】
まず、雑音がない場合には、符号系列の番号が８から１１であるとき、推定された容量の値が大きくなっている。当該値は、ドライブラインＤＬ８〜ＤＬ１１上に、タッチ入力があったことに対応している。
【０１２６】
次に、雑音がある場合には、符号系列の番号が６から１１であるときと、該番号が１４から１６であるときとにおいて、推定された容量の値が大きくなっている。つまり、推定された容量の値は、当該タッチ入力があったことだけに対応しておらず、雑音がセンスラインＳＬ１・ＳＬ２に混入したことの影響を受けている。
【０１２７】
したがって、雑音がある場合には、非タッチ部分においても容量素子の静電容量の変化が検出されており、当該変化が、実際のタッチ入力に起因するのか、雑音の混入に起因するかを切り分けることは難しい。
【０１２８】
＜タッチパネルコントローラの効果＞
以上より、雑音検出部１６が演算した内積は、上述の式（９）に示されるように、下記（１）〜（２）を表す成分からなる。
（１）容量素子Ｃ１１〜Ｃｎｍの静電容量値の変化
（２）センスラインＳＬ１〜ＳＬｎに混入する雑音
なお、前記（１）は、上述の式（９）の右辺における第一項〜第四項に対応する。また、前記（２）は、上述の式（９）の右辺における第五項に対応する。
【０１２９】
ここで、Ｍ系列又は直交系列の符号系列の性質により、前記（１）を表す成分は、前記（２）を表す成分よりも小さくなる余地がある。
【０１３０】
よって、雑音検出部１６は、内積が概ね前記（２）の成分を表すと扱うことで、内積の値から雑音の有無を検出できる。
【０１３１】
すなわち、容量素子Ｃ１１〜Ｃｎｍの静電容量値の変化（タッチ入力）と、雑音の混入とを区別できる。
【０１３２】
〔変形例〕
本発明の実施形態１の変形例について、図６に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、上述の実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【０１３３】
図６は、図１に示されるタッチパネルコントローラ１の変形例である、タッチパネルコントローラ１ａの構成を示す模式図である。
【０１３４】
図６に示されるように、タッチパネルコントローラ１ａは、差動増幅器１３ではなく、増幅器１３ａを備える点が、タッチパネルコントローラ１と異なる。
【０１３５】
タッチパネルコントローラ１ａは、複数の増幅器１３ａを備える。
【０１３６】
各増幅器１３ａは、積分容量素子Ｃｉｎｔを備え、センスラインＳＬ１〜ＳＬｎのうちのいずれか一つと、ＡＤ変換部１４とに接続されている。
【０１３７】
そして、タッチパネルコントローラ１ａでは、雑音検出部１６が演算する、雑音が混入した線形和出力ベクトルＺｉと、符号系列の、例えば５列目の列ベクトルとの間の内積は、以下の式（１１）によって表される。
【０１３８】
【数１１】
2015118553.tif 000013
なお、式（１１）では、雑音が混入した線形和出力ベクトルＺｉは、センスラインＳＬ３に接続された増幅器１３ａから出力される、雑音が混入した線形和出力の値を要素とするベクトルである。
【０１３９】
式（１１）に示されるように、Ｃ３１の係数と、Ｃ３２の係数と、Ｃ３３の係数と、Ｃ３４の係数とは、すべて「−１」となる。つまり、式（１１）の右辺の第一項〜第四項の値の変化（タッチ入力によって容量素子Ｃ３１〜Ｃ３４の静電容量値が変化したことに対応）は、式（１１）の右辺の第五項の値の変化（雑音が混入したことに対応）に対して小さくなる余地があるため、雑音を検出しやすくなる。
【０１４０】
以上のように、タッチパネルコントローラ１ａも、タッチパネルコントローラ１と同様の効果を奏し得るので、差動増幅器が必須であるわけではない。
【０１４１】
〔実施形態２〕
本発明の他の実施形態について、図７に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、上述の実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【０１４２】
図７は、本実施形態のタッチパネルコントローラ１ｂにおける、雑音検出部１６Ａの構成を示す模式図である。
【０１４３】
タッチパネルコントローラ１ｂは、図１に示されるタッチパネルコントローラ１と同様の構成を備える。しかし、図７に示されるように、タッチパネルコントローラ１ｂは、雑音検出部１６のかわりに、雑音検出部１６とは内部構成が異なる雑音検出部１６Ａを備える点が、タッチパネルコントローラ１とは異なる。
【０１４４】
雑音検出部１６Ａは、内積演算部１６ａ（第１の内積演算部）と、内積演算部１６ｂ（第２の内積演算部）と、雑音差分検出部１７とを含む。
【０１４５】
雑音検出部１６Ａに入力される信号であるｗは、図１に示されるＡＤ変換部１４の出力ｗと同じ信号である。
【０１４６】
また、雑音検出部１６Ａが出力する信号であるｙは、図１に示される雑音検出部１６の出力ｙに対応している。
【０１４７】
ここで、符号生成部１２が出力する列ベクトルｖｂａ・ｖｂｂは、図１に示される列ベクトルｖｂに対応しており、符号生成部１２が生成する符号系列の列のうち、ドライブラインＤＬ１〜ＤＬｍの駆動に用いられない列を意味する。
【０１４８】
しかし、列ベクトルｖｂａが意味する符号系列の特定列と、列ベクトルｖｂｂが意味する符号系列の特定列とは、異なっている（ｖｂａ≠ｖｂｂ）。
【０１４９】
そして、列ベクトルｖｂａは、内積演算部１６ａに入力される。また、列ベクトルｖｂｂは、内積演算部１６ｂに入力される。
【０１５０】
内積演算部１６ａ・１６ｂは、それぞれに入力される信号に対し、雑音検出部１６と同様の内積演算を行う。そして、雑音差分検出部１７は、内積演算部１６ａが演算した内積である出力ｙａと、内積演算部１６ｂが演算した内積である出力ｙｂとの差分を演算する。
【０１５１】
（雑音差分検出部１７による差分演算）
例えば、列ベクトルｖｂａを、ドライブラインＤＬ１〜ＤＬ４の駆動に用いられなかった、符号系列の５列目の列ベクトルとし、列ベクトルｖｂｂを、ドライブラインＤＬ１〜ＤＬ４の駆動に用いられなかった、符号系列の６列目の列ベクトルとすれば、内積演算部１６ａの出力ｙａと、内積演算部１６ｂの出力ｙｂとの間の差分は、以下の式（１２）によって表される。
【０１５２】
【数１２】
2015118553.tif 000014
式（１２）に示されるように、上述の式（９）の右辺の第一項〜第四項（タッチ入力による容量素子Ｃ３１〜Ｃ３４・Ｃ４１〜Ｃ４４の静電容量値の変化に対応）が相殺されている。
【０１５３】
（本実施形態の効果）
以上より、上述の式（１２）に示される、雑音差分検出部１７が演算した差分は、容量素子Ｃ１１〜Ｃｎｍの静電容量値の変化に対応する成分を含まず、センスラインＳＬ１〜ＳＬｎに混入する雑音に対応する成分のみを含む。
【０１５４】
よって、雑音差分検出部１７は、差分をセンスラインＳＬ１〜ＳＬｎに混入する雑音の大きさと扱うことで、差分の値から雑音の有無を検出できる。
【０１５５】
すなわち、容量素子の静電容量値の変化（タッチ入力）と、雑音の混入とを正確に区別できる。
【０１５６】
〔実施形態３〕
本発明の他の実施形態について、図８〜図１１に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、上述の実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【０１５７】
本実施形態では、図１に示されるタッチパネルコントローラ１において、雑音検出部１６の出力信号に基づいて、駆動部１１の動作を変えることで、タッチパネルコントローラ１の性能を向上できることについて、シミュレーションに基づいて説明する。
【０１５８】
（クロック信号の周波数の変更）
実施形態１に記載される雑音推定シミュレーションでは、周波数制御部１９は、クロック信号の周波数を１ＭＨｚとした。一方、本実施形態の雑音推定シミュレーションでは、周波数制御部１９は、クロック信号の周波数を１２０ｋＨｚとする。
【０１５９】
なお、クロック信号の周波数を除いて、本実施形態の雑音推定シミュレーションにおける条件と、実施形態１に記載される雑音推定シミュレーションにおける条件とは、同様である。
【０１６０】
図８は、本実施形態の雑音推定シミュレーション結果を示すグラフである。
【０１６１】
なお、図８の縦軸・横軸は、図３の縦軸・横軸に対応している。
【０１６２】
図８に示されるように、雑音がない場合にも、雑音がある場合にも、推定された容量の値は、図３に示される雑音がある場合の推定された容量の値と比較して小さい。
【０１６３】
よって、クロック信号の周波数を１２０ｋＨｚとした場合には、容量推定部１５（図１）は、雑音の混入の影響を受け難く、容量素子Ｃ１１〜Ｃ４４の静電容量値を推定できると予測できる。
【０１６４】
図９は、図８に結果が示される雑音推定シミュレーションと同様の条件で実施する、容量推定シミュレーション結果を示すグラフである。
【０１６５】
なお、図９の縦軸・横軸は、図５の縦軸・横軸に対応している。
【０１６６】
図９に結果が示されるシミュレーションにおける条件は、内積演算に用いられる符号系列の列ベクトルを除き、図８に結果が示されるシミュレーションにおける条件と同様である。
【０１６７】
そして、図９に結果が示されるシミュレーションにおける、内積演算に用いられた符号系列の列ベクトルは、図５に結果が示されるシミュレーションと同様に、ドライブラインＤＬ１〜ＤＬ１８の駆動に用いられた、符号系列の列ベクトルである。
【０１６８】
図９に示されるように、雑音がない場合にも、雑音がある場合にも、符号系列の番号が８から１１であるとき、推定された容量の値が大きくなっている。当該値は、ドライブラインＤＬ８〜ＤＬ１１上に、タッチ入力があったことに対応している。
【０１６９】
つまり、図８に示される雑音検出結果から予想されたとおり、容量推定部１５（図１）は、雑音の混入の影響を受けずに、容量素子Ｃ１１〜Ｃ４４の静電容量値を推定できる。
【０１７０】
（クロック信号の周波数の最適化）
図１０は、図８に結果が示される雑音推定シミュレーションにおいて、クロック信号の周波数が変更されるときの、シミュレーション結果を示すグラフであり、（ａ）は周波数が１１０ｋＨｚである結果を示し、（ｂ）は周波数が１３０ｋＨｚである結果を示す。
【０１７１】
図１０の（ａ）及び図１０の（ｂ）に示されるように、図８に示されるシミュレーション結果とは異なり、雑音がある場合には、推定された容量の値が、各符号系列の番号に対して異なる値となった。
【０１７２】
図１１は、図９に結果が示される容量推定シミュレーションにおいて、クロック信号の周波数が変更されるときの、シミュレーション結果を示すグラフであり、（ａ）は周波数が１１０ｋＨｚである結果を示し、（ｂ）は周波数が１３０ｋＨｚである結果を示す。
【０１７３】
図１１の（ａ）及び図１１の（ｂ）に示されるように、図９に示されるシミュレーション結果とは異なり、雑音がある場合には、符号系列の番号が５から１０であるときと、該番号が１７から１８であるときとにおいて、推定された容量の値が大きくなっている。つまり、推定された容量の値は、ドライブラインＤＬ８〜ＤＬ１１上へのタッチ入力があったことだけに対応しておらず、雑音がセンスラインＳＬ１・ＳＬ２に混入したことの影響を受けている。
【０１７４】
したがって、クロック信号の周波数を、１１０ｋＨｚ又は１３０ｋＨｚに変更した場合には、クロック信号の周波数を１２０ｋＨｚに変更した場合とは異なり、容量推定部１５（図１）は、雑音の混入の影響を受けずに、容量素子Ｃ１１〜Ｃ４４の静電容量値を推定できるわけではないことがわかる。
【０１７５】
（本実施形態の効果）
以上より、周波数制御部１９は、駆動部１１が実施する複数回の駆動における周波数であるクロック信号の周波数（タッチパネルの動作周波数）を制御（例えば、１１０ｋＨｚ、１２０ｋＨｚ、１３０ｋＨｚに当該周波数を変更）しながら雑音検出部１６の検出結果を評価し、当該周波数を、雑音の影響をほとんど受けない周波数（例えば、１２０ｋＨｚ）に設定できる。
【０１７６】
すなわち、雑音環境下であっても正確な容量推定が可能となる。
【０１７７】
〔その他の構成〕
（誤りが大きい容量推定の防止）
図１に示される容量推定部１５において、上述の、式（３）〜式（６）の内積演算を実施する前に、ドライブラインＤＬ１〜ＤＬｍの数（つまり、ｍ）よりも少ない数の符号系列の列ベクトルを使って雑音を検出する。そして、雑音検出部１６の出力（上述の式（９）の値）が、所定のレベルより大きければ、容量推定部１５を動作させないことで、誤りが大きい場合の容量推定を避ける事ができる。
【０１７８】
（フレームレートを維持した、誤りが大きい容量推定の防止）
センスラインＳＬ１〜ＳＬｎに混入する雑音が大きいことに応じて容量推定を行わなければ、フレームレート（タッチパネル２がタッチを検知するレート）の低下を招く虞がある。
【０１７９】
そこで、符号系列の系列長（つまり、ｎ）よりも長い期間の線形和出力を、メモリ（非図示）などに保持し、保持される線形和出力のうちの、符号長分の線形和出力に対して、それぞれ雑音検出を行い、雑音検出部１６の出力ｙが最も小さいデータをこの期間の代表値とする。
【０１８０】
これにより、雑音環境下であってもフレームレートを落とさずに誤りが大きい場合の容量推定を避ける事ができる。
【０１８１】
又は、雑音検出部１６の出力ｙが、所定のレベルより大きければ、線形和出力に対してフィルタリングを行うなどの動作変更をしてもよい。
【０１８２】
雑音検出部１６の出力ｙが、所定のレベルより大きければ、ドライブラインＤＬ１〜ＤＬｍに与える符号系列の符号長を長くする等、駆動回数を増やし、信号雑音比を大きくするような動作変更してもよい。
【０１８３】
（直交系列の利用）
上述のＭ系列の符号系列を、直交系列の符号系列としても、タッチパネルコントローラ１・１ａ・１ｂは、同様の効果を奏する。
【０１８４】
なお、直交系列の符号系列を利用した場合には、上述の式（４）の特に「ｄ１〜ｄｎが直交系列の時…」との記載に基づいて、上述の内積が演算される。
【０１８５】
〔実施形態４〕
本発明の他の実施形態について、図１２に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、上述の実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【０１８６】
（携帯電話機などの電子機器への応用）
図１２は、本実施形態の携帯電話機４０（電子機器）の構成を示すブロック図である。
【０１８７】
図１２に示されるように、携帯電話機４０は、ＣＰＵ４３と、ＲＡＭ４５と、ＲＯＭ４４と、カメラ４６と、マイクロフォン４７と、スピーカ４８と、操作キー４９と、表示パネル４１と、表示制御回路４２と、タッチパネルシステム１０とを備えている。各構成要素は、相互にデータバスによって接続されている。
【０１８８】
ＣＰＵ４３は、携帯電話機４０の動作を制御する。ＣＰＵ４３は、たとえばＲＯＭ４４に格納されたプログラムを実行する。操作キー４９は、携帯電話機４０のユーザによる指示の入力を受ける。ＲＡＭ４５は、ＣＰＵ４３によるプログラムの実行により生成されたデータ、又は操作キー４９を介して入力されたデータを揮発的に格納する。ＲＯＭ４４は、データを不揮発的に格納する。
【０１８９】
また、ＲＯＭ４４は、ＥＰＲＯＭ（Erasable Programmable Read-Only Memory）やフラッシュメモリなどの書込みおよび消去が可能なＲＯＭである。なお、図１２には示していないが、携帯電話機４０が、他の電子機器に有線により接続するためのインターフェイス（ＩＦ）を備える構成としてもよい。
【０１９０】
カメラ４６は、ユーザの操作キー４９の操作に応じて、被写体を撮影する。なお、撮影された被写体の画像データは、ＲＡＭ４５や外部メモリ（たとえば、メモリカード）に格納される。マイクロフォン４７は、ユーザの音声の入力を受付ける。携帯電話機４０は、当該入力された音声（アナログデータ）をデジタル化する。そして、携帯電話機４０は、通信相手（たとえば、他の携帯電話機）にデジタル化した音声を送る。スピーカ４８は、たとえば、ＲＡＭ４５に記憶された音楽データなどに基づく音を出力する。
【０１９１】
タッチパネルシステム１０は、タッチパネル２とタッチパネルコントローラ１とを有している。ＣＰＵ４３は、タッチパネルシステム１０の動作を制御する。ＣＰＵ４３は、例えばＲＯＭ４４に記憶されたプログラムを実行する。ＲＡＭ４５は、ＣＰＵ４３によるプログラムの実行により生成されたデータを揮発的に格納する。ＲＯＭ４４は、データを不揮発的に格納する。
【０１９２】
表示パネル４１は、表示制御回路４２により、ＲＯＭ４４、ＲＡＭ４５に格納されている画像を表示する。表示パネル４１は、タッチパネル２に重ねられているか、タッチパネル２を内蔵している。
【０１９３】
（本実施形態の効果）
本実施形態の携帯電話機４０は、タッチパネルコントローラ１を備えることによって、静電容量の推定をより正確に行うことができるため、タッチパネルシステム１０を良好に動作させることが可能となる。したがって、携帯電話機４０は、ユーザによるタッチ操作をより正確に認識することができるため、ユーザが所望する処理をより正確に実行することができる。
【０１９４】
なお、上述の実施形態のＡＤ変換部１４の出力をＣＰＵ４３に与え、上述の実施形態におけるＡＤ変換部１４以降（つまり、容量推定部１５、雑音検出部１６、雑音差分検出部１７など）の処理をＣＰＵ４３で行ってもよい。
【０１９５】
〔まとめ〕
本発明の態様１に係るタッチパネルコントローラ１・１ａ・１ｂは、ｍ本のドライブラインＤＬ１〜ＤＬｍと、センスラインＳＬｉと、前記ｍ本のドライブラインと前記センスラインとの間に形成される複数の容量素子Ｃ１１〜Ｃｎｍとを備えたタッチパネルを制御するタッチパネルコントローラであって、Ｍ系列又は直交系列の符号系列に含まれるｎ（ｎ＞ｍ）個の行ベクトルｄ１〜ｄｎのうちの一つの行ベクトルｄｉに含まれるｍ個の列の要素を用いて前記ｍ本のドライブラインを並列駆動する１回の駆動を、前記行ベクトルを重複させずにｎ回実施し、前記複数の容量素子からの線形和出力を、前記センスラインからｎ個出力させる駆動部１１と、ｎ個の前記線形和出力のうちのｉ個目（１≦ｉ≦ｎ）の前記線形和出力をｉ個目の要素とする線形和出力ベクトルＺｉと、前記駆動部が前記ｉ個目の前記線形和出力を前記センスラインから出力させるときに用いる前記行ベクトルの前記ｍ個の列以外の特定列（符号系列のｊ列目の列）の要素Ｄｉｊをｉ個目の要素とする列ベクトルとの間の内積を演算して前記センスラインに混入する雑音の有無を検出する雑音検出部１６・１６Ａとを備える。
【０１９６】
前記構成によれば、雑音検出部が演算した内積は、下記（１）〜（２）を表す成分からなる。
（１）容量素子の静電容量値の変化
（２）センスラインに混入する雑音
ここで、Ｍ系列又は直交系列の符号系列の性質により、前記（１）を表す成分は、前記（２）を表す成分よりも小さくなる余地がある。
【０１９７】
よって、雑音検出部は、内積が概ね前記（２）の成分を表すと扱うことで、内積の値から雑音の有無を検出できる。
【０１９８】
すなわち、容量素子の静電容量値の変化（タッチ入力）と、雑音の混入とを区別できる。
【０１９９】
本発明の態様２に係るタッチパネルコントローラでは、前記態様１において、前記雑音検出部は、前記線形和出力ベクトルと、前記特定列の要素をｉ個目の要素とする列ベクトルとの間の内積を演算する第１の内積演算部（内積演算部１６ａ）と、前記線形和出力ベクトルと、他の特定列の要素をｉ個目の要素とする他の列ベクトルとの間の他の内積を演算する第２の内積演算部（内積演算部１６ｂ）と、前記第１の内積演算部が演算した内積と、前記第２の内積演算部が演算した他の内積との間の差分を演算して前記雑音の有無を検出する雑音差分検出部１７とを含んでもよい。
【０２００】
前記構成によれば、雑音差分検出部が演算した差分は、前記（１）の成分を含まず、前記（２）の成分のみを含む。
【０２０１】
よって、雑音差分検出部は、差分を前記（２）の大きさと扱うことで、差分の値から雑音の有無を検出できる。
【０２０２】
すなわち、容量素子の静電容量値の変化（タッチ入力）と、雑音の混入とを正確に区別できる。
【０２０３】
本発明の態様３に係るタッチパネルコントローラでは、前記態様１において、前記雑音検出部は、前記雑音検出部は、前記線形和出力ベクトルと、前記特定列の要素をｉ個目の要素とする列ベクトルとの間の内積を演算した後、前記線形和出力ベクトルと、他の特定列の要素をｉ個目の要素とする他の列ベクトルとの間の他の内積を演算し、各内積演算結果の時間変化に基づいて、前記雑音の有無を検出してもよい。
【０２０４】
本発明の態様４に係るタッチパネルコントローラは、前記態様１から３のいずれか１態様において、前記雑音検出部の検出結果に応じて、前記駆動部が実施するｎ回の前記駆動における周波数を制御する周波数制御部１９をさらに備えてもよい。
【０２０５】
前記構成によれば、周波数制御部は、駆動部が実施する複数回の駆動における周波数を制御しながら雑音検出部の検出結果を評価し、当該周波数を、雑音の影響をほとんど受けない周波数に設定できる。
【０２０６】
すなわち、雑音環境下であっても正確な容量推定が可能となる。
【０２０７】
本発明の態様５に係る集積回路は、前記態様１から４のいずれか１態様におけるタッチパネルコントローラが集積されている。
【０２０８】
本発明の態様６係るタッチパネル装置は、前記態様１から４のいずれか１態様におけるタッチパネルコントローラと、前記タッチパネルコントローラによって制御されるタッチパネル２とを備える。
【０２０９】
本発明の態様７に係る電子機器（携帯電話機４０）は、前記態様６におけるタッチパネル装置（タッチパネルシステム１０）を備える。
【０２１０】
〔付記事項〕
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
【産業上の利用可能性】
【０２１１】
本発明は、複数のドライブラインを並列駆動して、マトリックス状に構成された静電容量を推定又は検出するタッチパネルコントローラ、及びこれを用いた電子機器に利用することができる。また本発明は、指紋検出システムに適用することもできる。
【符号の説明】
【０２１２】
１  タッチパネルコントローラ
１ａ  タッチパネルコントローラ
１ｂ  タッチパネルコントローラ
１０  タッチパネルシステム（タッチパネル装置）
１１  駆動部
１６  雑音検出部
１６Ａ  雑音検出部
１６ａ  内積演算部（第１の内積演算部）
１６ｂ  内積演算部（第２の内積演算部）
１７  雑音差分検出部
４０  携帯電話機（電子機器）
Ｃｉｊ（１≦ｉ≦ｎ、１≦ｊ≦ｍ）  容量素子
ＤＬｊ（１≦ｊ≦ｍ）  ドライブライン
Ｄｉｊ（１≦ｉ≦ｎ）  符号系列の要素
Ｎｉ（１≦ｉ≦ｎ）  雑音
ＳＬｉ（１≦ｉ≦ｎ）  センスライン
【図１】
2015118553.tif 000015
【図２】
2015118553.tif 000016
【図３】
2015118553.tif 000017
【図４】
2015118553.tif 000018
【図５】
2015118553.tif 000019
【図６】
2015118553.tif 000020
【図７】
2015118553.tif 000021
【図８】
2015118553.tif 000022
【図９】
2015118553.tif 000023
【図１０】
2015118553.tif 000024
【図１１】
2015118553.tif 000025
【図１２】
2015118553.tif 000026
【図１３】
2015118553.tif 000027
【図１４】
2015118553.tif 000028