(57)【要約】【課題】ゲート数の増加を抑え、コストを低減することができるノイズ除去装置を提供する。【解決手段】本発明は、汎用入出力インターフェイスに接続された複数の入出力バッファのうち、選択対象となる入出力バッファを指定するためのレジスタ（２１１、２１２）と、前記レジスタの値にしたがって前記選択対象となる入出力バッファを選択し、前記複数の入出力バッファの数よりも少ない数の少なくとも１つのセレクタ（２０１、２０１）と、前記セレクタにそれぞれ接続されたノイズ除去回路（２２１，２２２）とを具備することを特徴とするノイズ除去装置、である。【選択図】　図２
2004094479.tif 000002
【特許請求の範囲】
【請求項１】
汎用入出力インターフェイスに接続された複数の入出力バッファのうち、選択対象となる入出力バッファを指定するためのレジスタと、
前記レジスタの値にしたがって前記選択対象となる入出力バッファを選択し、前記複数の入出力バッファの数よりも少ない数の少なくとも１つのセレクタと、
前記セレクタにそれぞれ接続されたノイズ除去回路と
を具備することを特徴とするノイズ除去装置。
【請求項２】
前記セレクタは、前記汎用入出力インターフェイスに対して並列に接続されていることを特徴とする請求項１記載のノイズ除去装置。
【請求項３】
前記ノイズ除去回路は、チャタリングを防止するための回路であることを特徴とする請求項１記載のノイズ除去装置。
【請求項４】
前記レジスタの値にしたがって、前記選択された入出力バッファからの出力を無効化するための回路をさらに具備することを特徴とする請求項１記載のノイズ除去装置。
【請求項５】
前記ノイズ除去回路によるノイズ除去時間を設定するためのレジスタをさらに具備することを特徴とする請求項１記載のノイズ除去装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ノイズ除去装置に関し、特に、チャタリングを防止するためのチャタリング除去装置に関する。
【０００２】
【従来の技術】
近年、半導体技術の進歩により、１つのＩＣ（Ｉｎｔｅｇｒａｔｅｄ　Ｃｉｒｃｕｉｔ）に搭載する機能が増加しており、複数の機能をワンチップに収めることにより、低コスト化を実現している。当然のことながら、各機能毎に必要となるピンがあり、機能の増加に伴なって必要なピン数も増加の一途をたどっている。現在では、数百ピンを数えるＩＣチップは珍しくない。
【０００３】
一方、このようなＩＣチップにおいては、汎用入出力（Ｇｅｎｅｒａｌ　Ｐｕｒｐｏｓｅ　ＩＯ　（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）：ＧＰＩＯ）インターフェイスを保有している。ＧＰＩＯインターフェイスは、さまざまな用途に使用されるが、その用途の一つとしてスイッチを接続する場合がある。
【０００４】
このような場合、ノイズ（チャタリングを含む）を除去するため、特開２００２−６４３７０号公報及び特開平７−１１１４４３号公報に示すように、（１）ノイズ除去回路をＧＰＩＯインターフェイスに接続する場合　（２）　ノイズ除去回路を介さずに直接接続する場合を選択することができる構成にしておく。
【０００５】
このような構成を採用することにより、ＧＰＩＯインターフェイスに、ＩＣを直接接続することもできるし、スイッチなどチャタリングを発生するデバイスを接続することも可能となる。
【０００６】
【発明が解決しようとする課題】
しかしながら、上述のように、ＩＣチップのピン数が増加することに伴い、ＧＰＩＯインターフェイスとして割り当て可能なピン数も増えてきており、３０本乃至５０本或いはそれ以上のＧＰＩＯインターフェイスを有するＩＣが出回り始めている。
【０００７】
したがって、ノイズ除去回路をそれぞれのＧＰＩＯインターフェイスのピンの数だけ設けると、ゲート数の増加に伴ないチップサイズが大きくなるとともに、コストが高くなるという問題がある。
【０００８】
本発明は、上記実情に鑑みてなされたものであり、ゲート数の増加を抑え、コストを低減することができるノイズ除去装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
したがって、上記目的を達成するために、本発明は、汎用入出力インターフェイスに接続された複数の入出力バッファのうち、選択対象となる入出力バッファを指定するためのレジスタと、前記レジスタの値にしたがって前記選択対象となる入出力バッファを選択し、前記複数の入出力バッファの数よりも少ない数の少なくとも１つのセレクタと、前記セレクタにそれぞれ接続されたノイズ除去回路とを具備するノイズ除去装置である。
【００１０】
【発明の実施の形態】
以下、図面を参照して、本発明の実施の形態に係るノイズ除去装置について説明する。
【００１１】
図１は、本発明の一実施の形態に係るチャタリング除去装置を有する半導体チップを示す図である。同図に示すように、この半導体チップ１には、ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）２、キャッシュメモリ３、メインメモリ４、ブリッジ６、ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ　Ａｓｙｎｃｈｒｏｎｏｕｓ　Ｒｅｃｅｉｖｅｒ−Ｔｒａｎｓｍｉｔｔｅｒ）　８、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ　Ｓｅｒｉａｌ　Ｂｕｓ）９、ＧＰＩＯ（Ｇｅｎｅｒａｌ　Ｐｕｒｐｏｓｅ　Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）インターフェイス１０、Ｉ／Ｏバッファ１１及びチャタリング除去装置１２及びＰＩＣ（Ｐｒｏｇｒａｍ　Ｉｎｔｅｒｒｕｐｔ　Ｃｏｎｔｒｏｌｌｅｒ）　１３が搭載されている。
【００１２】
ＣＰＵ２は、システム全体の制御を司るものであり、このＣＰＵ２にはキャッシュメモリ３が接続されている。また、ＣＰＵ２は、ＣＰＵバス５及びＰＩＣ１３に接続されている。このバス５には、メインメモリ４及びＲＯＭ１４が接続されるとともに、ブリッジ６を介して、バス７が接続されている。バス７は、例えば、ＰＣＩバスである。
【００１３】
このバス７には、ＵＡＲＴ８、ＵＳＢ９、ＧＰＩＯインターフェイス１０及びＰＩＣ１３が接続されている。このＧＰＩＯインターフェイス１０には、Ｉ／Ｏバッファ１１及びチャタリング除去装置１２が接続されている。
【００１４】
上記Ｉ／Ｏバッファ１１及びチャタリング除去装置１２は、ＧＰＩＯインターフェイス１０の出力側に互いに並列に接続され、セレクタ２０１、２０２は、Ｉ／Ｏバッファからみて、ＧＰＩＯインターフェイス１０に対して並列に接続されている。また、チャタリング除去装置１２の出力は、バス７及びＰＩＣ１３に接続される。
【００１５】
図２は、本発明の実施の形態に係るチャタリング除去装置の詳細を示す図である。同図において、１０１〜１０３は双方向のＩ／Ｏバッファであり、図１に示したＩ／Ｏバッファ１１に該当する。
【００１６】
チャタリング除去装置１２は、セレクタ２０１、２０２、設定レジスタ２１１、２１２、チャタリング除去回路２２１、２２２、除去時間設定レジスタ２３１、２３２、オア回路１１１〜１１３、１２１〜１２３を有している。
【００１７】
セレクタ２０１、２０２は、ＧＰＩＩＯ２０の入力側Ｉ／Ｏバッファ１０１〜１０３及びＧＮＤに接続されており、いずれか１つを選択して出力する。これらセレクタ２０１、２０２による選択は、それぞれ設定レジスタ２１１、２１２の設定値に基づいて決定される。
【００１８】
セレクタ２０１、２０２の出力は、それぞれチャタリング除去回路２２１、２２２に出力される。チャタリング除去回路２２１、２２２は、それぞれ除去時間設定レジスタ２３１、２３２において設定された除去時間、入力が安定した場合に、その値を出力するものである。
【００１９】
設定レジスタ２１１、２１２は、セレクタ２０１，２０２が選択する対象及びオア回路１２１〜１２３への出力を指定するものであり、その値は、例えば、図３に示すように定義される。
【００２０】
ここでは、設定レジスタ２１１及びセレクタ２０１を例にとり説明すると、設定レジスタ２１１のレジスタ値が「００」の場合には、セレクタ２０１はＧＮＤを選択する。
【００２１】
また、設定レジスタ２１１のレジスタ値が「０１」の場合には、セレクタ２０１はＩ／Ｏバッファ１０１の入力を選択する。レジスタ値が「１０」の場合には、セレクタ２０１はＩ／Ｏバッファ１０２の入力を選択する。レジスタ値が「１１」の場合には、セレクタ２０１はＩ／Ｏバッファ１０３の入力を選択する。
【００２２】
また、設定レジスタ２１１のレジスタ値が「００」の場合には、オア回路１２１〜１２３への出力は、すべて「Ｌｏｗ」となる。レジスタ値が「０１」の場合、オア回路１２１への出力は「Ｈｉｇｈ」、オア回路１２２、１２３への出力は「Ｌｏｗ」となる。
【００２３】
レジスタ値が「１０」の場合、オア回路１２２への出力は「Ｈｉｇｈ」、オア回路１２１、１２３への出力は「Ｌｏｗ」となる。レジスタ値が「１１」の場合、オア回路１２３への出力は「Ｈｉｇｈ」、オア回路１２１、１２２への出力は「Ｌｏｗ」となる。
【００２４】
図２に示すように設定レジスタ２１１、２１２の出力は、オア回路１２１〜１２３にそれぞれ入力される。そして、オア回路１２１〜１２３の出力は、それぞれオア回路１１１〜１１３に入力される。また、オア回路１１１〜１１３には、ＧＰＩＯインターフェイス１０の出力が入力される。
【００２５】
オア回路１１１〜１１３の出力は、Ｉ／Ｏバッファ１０１〜１０３のＯＥ（Ｏｕｔｐｕｔ　Ｅｎａｂｌｅ）に入力される。Ｉ／Ｏバッファ１０１〜１０３は、対応するオア回路から「Ｈｉｇｈ」信号が入力されると、ＧＰＩＯインターフェイスの対応する出力がディスエーブル（無効化）となる。
【００２６】
上記除去時間設定レジスタ２３１、２３２、設定レジスタ２１１、２１２の設定は、半導体チップ１の制御を司るファームウェアにより行なわれ、このファームウェアは、ＲＯＭ１４に格納されている。
【００２７】
以下、具体的なケースに分けて、本発明の実施の形態に係るチャタリング防止装置について説明する。
【００２８】
＜Ｉ／Ｏバッファ１０１〜１０３全てを汎用入出力として使用する場合＞
図４は、Ｉ／Ｏバッファ１０１〜１０３全てを汎用入出力として使用する場合の動作を説明するためのフロチャートである。
【００２９】
ファームウェアにより、設定レジスタ２１１、２１２に「００」を設定する（Ｓ１）。これにより、セレクタ２０１、２０２によってＧＮＤが選択されるとともに、設定レジスタ２１１、２１２のオア回路１２１〜１２３への出力はすべて「Ｌｏｗ」になり（Ｓ２）、オア回路１１１〜１１３の出力は「Ｌｏｗ」になる（Ｓ３）。その結果、Ｉ／Ｏバッファ１０１〜１０３の入出力及びＯＥは、いずれもＧＰＩＯインターフェイス１０が制御することができ、Ｉ／Ｏバッファ１０１〜１０３が汎用入出力として使用可能になる（Ｓ４）。
【００３０】
＜Ｉ／Ｏバッファ１０１、１０２は汎用入出力、Ｉ／Ｏバッファ１０３を入力＋チャタリング防止として使用する場合＞
このような場合、図２に示すように、例えば、Ｉ／Ｏバッファ１０３にチャタリングを発生するスイッチ３０１が接続され、チャタリングを防止する必要があるケースが想定される。
【００３１】
図５は、Ｉ／Ｏバッファ１０１、１０２は汎用入出力、Ｉ／Ｏバッファ１０３を入力＋チャタリング防止として使用する場合の動作を説明するためのフロチャートである。
【００３２】
ファームウェアにより、設定レジスタ２１１に「１１」を設定する（Ｓ１１）。これにより、セレクタ２０１によって、Ｉ／Ｏバッファ１０３の入力が選択されるとともに、設定レジスタ２１１のオア回路１２３への出力は「Ｈｉｇｈ」、オア回路１２１、１２２への出力は「Ｌｏｗ」になる（Ｓ１２）。
【００３３】
一方、ファームウェアにより、設定レジスタ２１２に「００」を設定する（Ｓ１３）。これにより、セレクタ２０２によって、ＧＮＤが選択されるとともに、設定レジスタ２１２のオア回路１２１〜１２３への出力はすべて「Ｌｏｗ」でになる（Ｓ１４）。その結果、オア回路１１１、１１２の出力が「Ｌｏｗ」、オア回路１１３の出力が「Ｈｉｇｈ」になり（Ｓ１５）、
Ｉ／Ｏバッファ１０１、１０２の入出力及びＯＥは、いずれもＧＰＩＯインターフェイス１０が制御することができ、Ｉ／Ｏバッファ１０３の出力は無効化され、入力はセレクタ２０１を介して、チャタリング除去回路２２１に入力される。これにより、Ｉ／Ｏバッファ１０１、１０２を汎用入出力、Ｉ／Ｏバッファ１０３を入力＋チャタリング防止として使用することができる（Ｓ１６）。
【００３４】
チャタリング除去回路２２１においては、除去時間設定レジスタ２３１に設定された除去時間に基づいて、チャタリング除去処理を行ない、ＰＩＣへ出力し、またバス７を通じてＣＰＵ２はチャタリング除去された入力情報を得られる。
【００３５】
＜Ｉ／Ｏバッファ１０１、１０２を入力＋チャタリング防止、Ｉ／Ｏバッファ１０３は汎用入出力として使用する場合＞
図６は、Ｉ／Ｏバッファ１０１、１０２を入力＋チャタリング防止、Ｉ／Ｏバッファ１０３は汎用入出力として使用する場合を説明するためのフロチャートである。
【００３６】
ファームウェアにより、設定レジスタ２１１に「０１」を設定する（Ｓ２１）。これにより、セレクタ２０１によって、Ｉ／Ｏバッファ１０１の入力が選択されるとともに、設定レジスタ２１１のオア回路１２１への出力は「Ｈｉｇｈ」、オア回路１２２、１２３への出力は「Ｌｏｗ」になる（Ｓ２２）。
【００３７】
一方、ファームウェアにより、設定レジスタ２１２に「１０」を設定する（Ｓ２３）。これにより、セレクタ２０２によって、Ｉ／Ｏバッファ１０２の入力が選択されるとともに、設定レジスタ２１２のオア回路１２２への出力は「Ｈｉｇｈ」、オア回路１２１、１２３への出力は「Ｌｏｗ」になる（Ｓ２４）。
【００３８】
その結果、オア回路１１３の出力が「Ｌｏｗ」、オア回路１１１，１１２の出力が「Ｈｉｇｈ」になるので（Ｓ２５）、Ｉ／Ｏバッファ１０３の入出力及びＯＥは、ＧＰＩＯインターフェイス１０が制御することができ、Ｉ／Ｏバッファ１０１、１０２の出力はディスイネーブルされる。これにより、Ｉ／Ｏバッファ１０３を汎用入出力、Ｉ／Ｏバッファ１０１、１０２を入力＋チャタリング防止として使用が可能になる（Ｓ２６）。
【００３９】
なお、Ｉ／Ｏバッファ１０１の入力はセレクタ２０１を介して、チャタリング除去回路２２１に入力され、Ｉ／Ｏバッファ１０２の入力はセレクタ２０２を介して、チャタリング除去回路２２２に入力される。
【００４０】
そして、チャタリング除去回路２２１、２２２においては、それぞれ除去時間設定レジスタ２３１、２３２に設定された除去時間に基づいて、チャタリング除去処理を行ない、ＰＩＣへ出力し、またバス７を通じてＣＰＵ２はチャタリング除去された入力情報を得られる。
【００４１】
なお、上述の実施の形態においては、チャタリング除去回路を例にとって説明したが、ノイズ除去回路について適用することができることはいうまでもない。
【００４２】
また、設定レジスタ２１１、２１２及び除去時間設定レジスタ２３１、２３２を別々の構成としたが、１つのレジスタを使用しても良い。
【００４３】
したがって、本発明の実施の形態に係るチャタリング除去防止装置によれば、Ｉ／Ｏバッファの数よりも少ない数のチャタリング除去回路をセレクタによって選択して使用することができるので、チャタリング除去回路のゲート数の増加を抑えることができ、その結果、チャタリング除去装置全体をコンパクト化することができる。また、チャタリング除去をするピンを選択できることにより、基板レイアウトでの配線や部品配置の変更が容易になる。
【００４４】
また、ファームウェアにより、設定レジスタに値を設定するだけでチャタリング除去を行なう入力を選択することができるとともに、当該バッファの出力をディスエーブルすることができるので、ファームウェアの負荷を低減することができる。
【００４５】
さらに、Ｉ／Ｏバッファ毎に、チャタリング除去時間を設定することができるので、Ｉ／Ｏバッファ毎に適切なチャタリング除去処理を行なうことが可能である。
【００４６】
なお、本願発明は、上記各実施形態に限定されるものでなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。
【００４７】
【発明の効果】
以上詳記したように、本発明によれば、ゲート数の増加を抑え、コストを低減することができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係るチャタリング除去装置を有する半導体チップを示す図である。
【図２】本発明の実施の形態に係るチャタリング除去装置の詳細を示す図である。
【図３】設定レジスタの設定値と、その意味を示す図である。
【図４】Ｉ／Ｏバッファ１０１〜１０３全てを汎用入出力として使用する場合の動作を説明するためのフロチャートである。
【図５】Ｉ／Ｏバッファ１０１、１０２は汎用入出力、Ｉ／Ｏバッファ１０３を入力＋チャタリング防止として使用する場合の動作を説明するためのフロチャートである。
【図６】Ｉ／Ｏバッファ１０１、１０２を入力＋チャタリング防止、Ｉ／Ｏバッファ１０３は汎用入出力として使用する場合を説明するためのフロチャートである。
【符号の説明】
１…半導体チップ、
２…ＣＰＵ、
３…キャッシュメモリ、
４…メインメモリ、
６…ブリッジ、
８…ＵＡＲＴ、
９…ＵＳＢ、
１０…ＧＰＩＯインターフェイス、
１１…Ｉ／Ｏバッファ、
１２…チャタリング除去装置、
１３…ＰＩＣ，
１４…ＲＯＭ、
１０１〜１０３…Ｉ／Ｏバッファ、
１１１〜１１３、１２１〜１２３…オア回路、
２０１、２０２…セレクタ、
２１１、２１２…設定レジスタ、
２２１、２２２…チャタリング除去回路、
２３１、２３２…除去時間設定レジスタ
３０１…スイッチ。
【図１】
2004094479.tif 000003
【図２】
2004094479.tif 000004
【図３】
2004094479.tif 000005
【図４】
2004094479.tif 000006
【図５】
2004094479.tif 000007
【図６】
2004094479.tif 000008