(57)【要約】【課題】バスマスタと、該バスマスタからの制御データにより制御されるバススレーブとを結ぶ外部データバスに伝送されるデータのノイズを除去するデジタルフィルタ回路において、フィルタ段数を保ったまま回路規模を抑える。【解決手段】前記外部データバスの信号およびクロック信号が入力されるカウンタであって、フィルタ段数をｎ（ｎは奇数）としたときのｌｏｇ2（ｎ＋１）で決定される個数（少数以下を切上げた正数）設けられたカウンタ５１と、（ｎ＋１）／２の基準値を生成する基準値生成回路（加算器５８、シフタ５９）と、前記各カウンタ５１の出力値と前記基準値とを各々比較することによってカウンタ出力値の多数決判定を行い、前記カウンタ５１の出力値が基準値以上のときＨレベルデータを前記バススレーブに出力し、それ以外のときＬレベルデータを前記バススレーブに出力する比較器５７と、を備えた。【選択図】図１
2018157351.tif 000002
【特許請求の範囲】
【請求項１】
バスマスタと、該バスマスタからの制御データにより制御されるバススレーブとを結ぶ外部データバスに伝送されるデータのノイズを除去するデジタルフィルタ回路において、
前記外部データバスの信号およびクロック信号が入力されるカウンタであって、フィルタ段数をｎ（ｎは奇数）としたときのｌｏｇ2（ｎ＋１）で決定される個数（少数以下を切上げた正数）設けられたカウンタと、
（ｎ＋１）／２の基準値を生成する基準値生成回路と、
前記各カウンタの出力値と基準値生成回路により生成された基準値とを各々比較することによってカウンタ出力値の多数決判定を行い、前記カウンタの出力値が基準値以上のときＨレベルデータを前記バススレーブに出力し、それ以外のときＬレベルデータを前記バススレーブに出力する比較器と、を備え、
前記各カウンタは、
クロック信号に同期して入力信号を保持、出力する機能を有し、入力信号をカウンタ出力値として出力するフリップフロップと、
前記フリップフロップの出力値に１を加算する加算器と、
第１の入力端子には前記加算器の出力値が入力され、第２の入力端子には前記フリップフロップの出力値が入力され、選択制御端子には前記外部データバスの１ビットのデータが入力され、該１ビットのデータが、Ｌレベルのとき前記フリップフロップの出力値を出力し、Ｈレベルのとき前記加算器の出力値を出力する第１のマルチプレクサと、
第１の入力端子には零値が入力され、第２の入力端子には前記第１のマルチプレクサの出力値が入力され、選択制御端子には前記バスマスタからのアクセス開始信号が入力され、該アクセス開始信号が、Ｌレベルのとき前記第１のマルチプレクサの出力値を前記フリップフロップに出力し、Ｈレベルのとき前記零値を前記フリップフロップに出力する第２のマルチプレクサと、
を各々有し、
前記バスマスタからデータ書き込み指令が入力されたとき、バススレーブは前記比較器の出力データを取り込むことを特徴とするデジタルフィルタ回路。
【請求項２】
前記各カウンタは、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）のロジックエレメントに実装されていることを特徴とする請求項１に記載のデジタルフィルタ回路。
【請求項３】
前記デジタルフィルタ回路は、前記バススレーブとともにＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）に実装されていることを特徴とする請求項１に記載のデジタルフィルタ回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、組み込み分野のＣＰＵを使ったデジタル回路に関し、特にデジタルフィルタ回路に関する。
【背景技術】
【０００２】
一般に、ＣＰＵなどのバスマスタからバスに対して書き込み制御信号のデータを伝送し、バススレーブが前記バスからデータの取り込みを行うことにより、バススレーブ内のデバイスの書き込みがなされる組み込みシステムは、例えば図６のように構成されていた。
【０００３】
図６において、バスマスタ１０は例えばＣＰＵであり、バススレーブ１１は例えば書き込み可能なＩＯデバイスである。ＣＰＵとＩＯデバイスはデータバス（外部データバス１２ａ，内部データバス１２ｂ）によって接続され、ＣＰＵがＩＯデバイスをリード、ライトすることでＩＯデバイスを制御する。
【０００４】
データバスの信号は電気信号であるため、ノイズが重畳することがある。ノイズの影響をなくす目的で、図６のようにバスマスタ１０とバススレーブ１１の間にフィルタ回路２０を配置する。尚バススレーブ１１、内部データバス１２ｂおよびフィルタ回路２０は、この例ではＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）４０に実装されている。
【０００５】
フィルタ回路２０の方式は、先行技術として特許文献１、２に記載のものがある。先行技術のフィルタの構成は、例えば図７に示すように、多段のフリップフロップ、例えばフリップフロップ２１〜２７を用い、フリップフロップ２１〜２７の出力の多数決をとることで、重畳したノイズを無効化している。
【０００６】
図７において、７段のフリップフロップ２１〜２７の一方の入力端子にはクロック信号が各々入力され、１段目のフリップフロップ２１の他方の入力端子には外部データバス１２ａの１ビットのデータが入力される。
【０００７】
２段目〜７段目のフリップフロップ２２〜２７の他方の入力端子には、当該フリップフロップの各前段の１段目〜６段目のフリップフロップ２１〜２６の出力が各々入力され、１段目〜７段目のフリップフロップ２１〜２７の各出力はさらに多数決回路３０に各々入力される。多数決回路３０の出力は内部データバス１２ｂの１ビットのデータとなる。
【０００８】
図８に、ノイズが無いときの図７の各部における動作波形を示し、図９に、７クロック幅のＨ（レベル）データの内３クロックのＬ（レベル）のノイズが重畳した場合の、図７の各部における動作波形を示す。
【０００９】
まずノイズが無い場合の図８において、１段目のフリップフロップ２１は外部データバス１２ａのデータがＨ（正常値）に変化してから次に入力されるクロック信号の立上りによりＨを出力し、外部データバス１２ａのデータがＬに変化してから次に入力されるクロック信号の立上りによりＬを出力する。
【００１０】
２段目のフリップフロップ２２は、１段目のフリップフロップ２１の出力がＨに変化してから次に入力されるクロック信号の立上りによりＨを出力し、フリップフロップ２１の出力がＬに変化してから次に入力されるクロック信号の立上りによりＬを出力する。
【００１１】
３段目〜７段目のフリップフロップ２３〜２７も２段目のフリップフロップ２２と同様の動作となる。
【００１２】
多数決回路３０は、７段のうち４段のフリップフロップ２１〜２４の出力がＨとなった時点で内部データバス１２ｂにＨレベルデータを出力する。
【００１３】
図８中のライトトリガは、図７では図示省略しているが、図６のバスマスタ１０から伝送される書き込み指令信号であり、バススレーブ１１はライトトリガがＨのときのクロック信号立上りエッジ（図示ＷＰ箇所）で内部データバス１２ｂのデータ（外部データバス１２ａに伝送されたＨのライトデータ（正常値）と同じＨレベルデータ）を取り込む。
【００１４】
また、ノイズが重畳した場合の図９において、１段目のフリップフロップ２１は外部データバス１２ａのデータがＨ（正常値）に変化してから次に入力されるクロック信号の立上りによりＨを出力し、外部データバス１２ａのデータがＬに変化してから次に入力されるクロック信号の立上りによりＬを出力する。
【００１５】
２段目のフリップフロップ２２は、１段目のフリップフロップ２１の出力がＨに変化してから次に入力されるクロック信号の立上りによりＨを出力し、フリップフロップ２１の出力がＬに変化してから次に入力されるクロック信号の立上りによりＬを出力する。
【００１６】
３段目〜７段目のフリップフロップ２３〜２７も２段目のフリップフロップ２２と同様の動作となる。
【００１７】
図９においては、外部データバス１２ａの７クロック幅のＨレベルのライトデータには途中で３クロック分のノイズ（Ｌレベル）を含んでいるため、各フリップフロップ２１〜２７は、外部データバス１２ａが最初にＨレベルとなった後、２クロック分がＨレベルであり、次に３クロック分がＬレベルであり、次に２クロック分がＨレベルとなる信号を各々出力する。
【００１８】
多数決回路３０は、７段のうち４段のフリップフロップ２１，２２，２６，２７の出力がＨとなった時点で内部データバス１２ｂにＨレベルデータを出力する。
【００１９】
図９中のライトトリガは、図７では図示省略しているが、図６のバスマスタ１０から伝送される書き込み指令信号であり、バススレーブ１１はライトトリガがＨのときのクロック信号立上りエッジ（図示ＷＰ箇所）で内部データバス１２ｂのデータ（外部データバス１２ａに伝送されたＨのライトデータ（正常値）と同じＨレベルデータ）を取り込む。
【００２０】
このように、図９ではＷＰ箇所で内部データバス１２ｂはＨレベル（外部データバス１２ａの正常値Ｈと同一）になっており、３クロック分のＬレベルのノイズを無効化している。
【先行技術文献】
【特許文献】
【００２１】
【特許文献１】特許第２７０７７７８号公報
【特許文献２】特開平０１−２６８２１９号公報
【発明の概要】
【発明が解決しようとする課題】
【００２２】
図７に示すフィルタ回路は、フィルタの段数分フリップフロップが必要になり、データバスに必要なフリップフロップの数はフィルタ段数×バスビット数となる。近年のＣＰＵはデータバスが多ビット化していて、６４ビット以上のものもあり、大量にフリップフロップが必要な傾向にある。その結果、フィルタ回路の規模が大きくなり消費電力やコストの面で不利になる。
【００２３】
しかし、フリップフロップの数を抑えるためにフィルタ段数を抑えることは、対ノイズ性能が低下するため避けたい。よって、多ビット化に対応するためにはフィルタ段数を保ったままフリップフロップの数を抑える必要がある。
【００２４】
本発明は上記課題を解決するものであり、その目的は、フィルタ段数を保ったまま回路規模を抑えることができるデジタルフィルタ回路を提供することにある。
【課題を解決するための手段】
【００２５】
上記課題を解決するための請求項１に記載のデジタルフィルタ回路は、バスマスタと、該バスマスタからの制御データにより制御されるバススレーブとを結ぶ外部データバスに伝送されるデータのノイズを除去するデジタルフィルタ回路において、
前記外部データバスの信号およびクロック信号が入力されるカウンタであって、フィルタ段数をｎ（ｎは奇数）としたときのｌｏｇ2（ｎ＋１）で決定される個数（少数以下を切上げた正数）設けられたカウンタと、
（ｎ＋１）／２の基準値を生成する基準値生成回路と、
前記各カウンタの出力値と基準値生成回路により生成された基準値とを各々比較することによってカウンタ出力値の多数決判定を行い、前記カウンタの出力値が基準値以上のときＨレベルデータを前記バススレーブに出力し、それ以外のときＬレベルデータを前記バススレーブに出力する比較器と、を備え、
前記各カウンタは、
クロック信号に同期して入力信号を保持、出力する機能を有し、入力信号をカウンタ出力値として出力するフリップフロップと、
前記フリップフロップの出力値に１を加算する加算器と、
第１の入力端子には前記加算器の出力値が入力され、第２の入力端子には前記フリップフロップの出力値が入力され、選択制御端子には前記外部データバスの１ビットのデータが入力され、該１ビットのデータが、Ｌレベルのとき前記フリップフロップの出力値を出力し、Ｈレベルのとき前記加算器の出力値を出力する第１のマルチプレクサと、
第１の入力端子には零値が入力され、第２の入力端子には前記第１のマルチプレクサの出力値が入力され、選択制御端子には前記バスマスタからのアクセス開始信号が入力され、該アクセス開始信号が、Ｌレベルのとき前記第１のマルチプレクサの出力値を前記フリップフロップに出力し、Ｈレベルのとき前記零値を前記フリップフロップに出力する第２のマルチプレクサと、
を各々有し、
前記バスマスタからデータ書き込み指令が入力されたとき、バススレーブは前記比較器の出力データを取り込むことを特徴としている。
【００２６】
上記構成によれば、前記各カウンタには１個のフリップフロップが設けられており、デジタルフィルタ回路全体としてフリップフロップの必要個数がフィルタ段数ｎに比べて大幅に少なくて済む（例えばフィルタ段数ｎ＝７に比べて、フリップフロップの個数（＝カウンタ個数）はｌｏｇ2（７＋１）＝３で済む）。これによって、フィルタ段数を保ったままデジタルフィルタ回路の回路規模を抑えることができる。
【００２７】
また、基準値生成回路および多数決判定を行う比較器の入力数も前記フリップフロップの必要個数と同一数で済み、回路構成が小規模となる。
【００２８】
また、請求項２に記載のデジタルフィルタ回路は、請求項１において、前記各カウンタは、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）のロジックエレメントに実装されていることを特徴とする。
【００２９】
上記構成によれば、ＦＰＧＡのロジックエレメントを有効利用することができる。
【００３０】
また、請求項３に記載のデジタルフィルタ回路は、請求項１において、前記デジタルフィルタ回路を、前記バススレーブとともにＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）に実装したことを特徴とする。  上記構成によれば、部品点数を低減することができる。
【発明の効果】
【００３１】
（１）請求項１〜３に記載の発明によれば、フィルタ段数を保ったままデジタルフィルタ回路の回路規模を抑えることができる。
（２）また、請求項２に記載の発明によれば、ＦＰＧＡのロジックエレメントを有効利用することができる。
（３）また、請求項３に記載の発明によれば、部品点数を低減することができる。
【図面の簡単な説明】
【００３２】
【図１】本発明の実施形態例によるデジタルフィルタ回路の構成図。
【図２】本発明の実施形態例における、外部データバスが正常値Ｈのライトデータであり、ノイズが無い場合の動作を示す信号波形図。
【図３】本発明の実施形態例における、外部データバスが正常値Ｌのライトデータであり、ノイズが無い場合の動作を示す信号波形図。
【図４】本発明の実施形態例における、外部データバスが正常値Ｈのライトデータであり、３クロック分のノイズを含む場合の動作を示す信号波形図。
【図５】本発明の実施形態例における、外部データバスが正常値Ｌのライトデータであり、３クロック分のノイズを含む場合の動作を示す信号波形図。
【図６】本発明が適用される組み込みシステムの一例を示す構成図。
【図７】従来のフィルタ回路の一例を示す回路図。
【図８】図７の回路における、外部データバスが正常値Ｈのライトデータであり、ノイズが無い場合の動作を示す信号波形図。
【図９】図７の回路における、外部データバスが正常値Ｈのライトデータであり、３クロック分のノイズを含む場合の動作を示す信号波形図。
【発明を実施するための形態】
【００３３】
以下、図面を参照しながら本発明の実施形態例を説明するが、本発明は下記の実施形態例に限定されるものではない。図１は本発明のデジタルフィルタ回路を、図６のように、バスマスタ（例えばＣＰＵ）とバススレーブ（例えばＩＯデバイス）の間をデータバスにより接続した組み込みシステムに適用した実施形態例を示している。
【００３４】
図１において、５１は後述する入力部５２およびフリップフロップ５６（ＦＦ５６）を各々備えた複数個のカウンタであり、その出力は多数決判定を行う１個の比較器５７（ＣＭＰ５７）のＡ入力端子に入力される。カウンタ５１は、フィルタの段数をｎ（ｎは奇数）としたときの、底が２の対数ｌｏｇ2（ｎ＋１）で決定される個数（少数以下は切り上げ）分並設されている。
【００３５】
例えばフィルタ段数を図７と同じく７段とした場合、ｌｏｇ2（７＋１）＝ｌｏｇ2８＝３、すなわちカウンタ５１の並列数（＝フリップフロップ５６の個数）は３であり、フィルタ段数を抑制することなくフリップフロップの個数を減らすことができる。
【００３６】
５８は、フィルタ段数ｎに１を加算してｎ＋１を出力する加算器（ＡＤＤ５８）であり、５９は、加算器５８の出力ｎ＋１を２で除算（右へ１ビットシフト）して（ｎ＋１）／２を求め、比較器５７のＢ入力端子にしきい値（比較基準値）として出力するシフタ（ＳＨＦＴ５９）である。
【００３７】
前記加算器５８およびシフタ５９によって本発明の基準値生成回路を構成している。この基準値生成回路で生成された比較基準値（（ｎ＋１）／２）は、比較器５７における多数決判定時のフィルタ段数ｎ（ｎは奇数）の中央値を決定する値となる。
【００３８】
比較器５７のＡ，Ｂ入力端子の各バス幅はカウンタ５１の並列数と同じであり比較器５７は、カウンタ５１の出力値（フリップフロップ５６の出力値）とシフタ５９の出力値（（ｎ＋１）／２）とを各々比較することによってカウンタ５１の出力値の多数決判定を行い、カウンタ５１の出力値が（ｎ＋１）／２以上のときＨレベルデータを出力し、それ以外のときＬレベルデータを出力する。
【００３９】
比較器５７の出力信号は、図６の内部データバス１２ｂの１ビットとしてバススレーブ１１に伝送される。
【００４０】
各カウンタ５１のフリップフロップ５６は、クロック信号に同期して入力信号（後述のマルチプレクサ５５の出力信号）を保持、出力する機能を有し、入力信号をカウンタ出力値として出力する。
【００４１】
５３は、フリップフロップ５６の出力値をＡ入力とし、Ｂ入力に接続された１を前記フリップフロップの出力値に加算した加算値を出力する加算器（ＡＤＤ５３）である。
【００４２】
５４は、１入力（第１の入力端子）には加算器５３の出力値が入力され、０（零）入力（第２の入力端子）にはフリップフロップ５６の出力値が入力され、Ｓ端子（選択制御端子）に入力される外部データバス（１２ａ）の１ビットのデータが、Ｌレベルのとき０入力（フリップフロップ５６の出力値）を選択し、Ｈレベルのとき１入力（加算器５３の出力値）を選択して各々出力するインクリメント用マルチプレクサ（ＮＵＸ５４）（第１のマルチプレクサ）である。
【００４３】
５５は、１入力（第１の入力端子）には０（零）値が入力され、０（零）入力（第２の入力端子）にはインクリメント用マルチプレクサ５４の出力値が入力され、Ｓ端子（選択制御端子）に入力されるアクセス開始信号（バスマスタ１０のＣＰＵから出力される信号）が、Ｌレベルのとき０入力（前記マルチプレクサ５４の出力値）を選択し、Ｈレベルのとき１入力（零値）を選択して各々フリップフロップ５６に出力するフリップフロップ初期化用マルチプレクサ（ＭＵＸ５５）（第２のマルチプレクサ）である。
【００４４】
前記加算器５３および前記マルチプレクサ５４,５５によって入力部５２を構成している。
【００４５】
上記のように構成された図１のデジタルフィルタ回路は、例えば図６のＦＰＧＡ４０に実装することができる。この場合、カウンタ５１をＦＰＧＡの最小要素であるロジックエレメントに実装できると、組み合わせ回路の入力部５２は、ロジックエレメント内のルックアップテーブルに実装できる可能性がある。ロジックエレメントは多入力の組み合わせ回路とフリップフロップで構成し、組み合わせ回路の入力部５２とフリップフロップからなるカウンタ５１の構成はロジックエレメントの構成と類似する。
【００４６】
従来技術の図７のフィルタ回路をＦＰＧＡに実装する場合フィルタ段数分のフリップフロップ（２１〜２７）が同数のロジックエレメントを使用し、多数決回路３０は別のロジックエレメントが必要になる。多数決回路３０はフィルタ段数の入力数（７）が必要になる。これに対して本発明の図１の構成では、従来技術よりフリップフロップの数を抑え、さらに多数決判定を行う比較器５７のＡ，Ｂ入力数はフィルタ段数（７）ではなくカウンタ５１の並列数（３）であるので、従来の多数決回路より小規模となる。
【００４７】
また、本発明の構成はＦＰＧＡのロジックエレメントを有効利用し、ＦＰＧＡ実装に適した構成である。加えてバススレーブ（１１）がＦＰＧＡ（４０）に内蔵されている場合、本発明のフィルタ回路（図１）をバススレーブと共にＦＰＧＡに実装すると、部品点数の面でも有利になる。図１の実施形態例では、フィルタ段数ｎは７段としているが、奇数であれば何段でも本発明に含まれる。
【００４８】
次に、図１のデジタルフィルタ回路の動作を、各部の動作波形を示す図２〜図５とともに説明する。図２〜図５において、「クロック信号」は例えば図示省略のＰＬＬ（フェーズ・ロック・ループ）ブロックから供給されるクロック信号であり、「アクセス開始信号」はバスマスタ１０のＣＰＵから伝送される信号であり、「外部データバス」は外部データバス１２ａの信号状態を示し、「ＦＦ５６」
はフリップフロップ５６の出力値を示し、「内部データバス」は比較器５７の出力信号（内部データバス１２ｂの信号状態）を示し、「ライトトリガ」はバスマスタ１０のＣＰＵが出力するライトトリガ（書き込み指令信号）を示している。
【００４９】
また、フィルタ段数ｎ＝７としている。
【００５０】
図２は、正常値が７クロック分のＨレベルのライトデータであり、ノイズが無い場合の動作を示している。図２において、アクセス開始信号がＨレベルのときのクロック信号立上りで、フリップフロップ初期化用マルチプレクサ５５の０出力によってＦＦ５６が０に初期化される。
【００５１】
アクセス開始信号がＬレベルになると、前記マルチプレクサ５５は０入力に接続されたインクリメント用マルチプレクサ５４の出力を選択する。前記マルチプレクサ５４は、Ｓ入力の外部データバスがＨレベルのとき、１入力に接続された加算器５３の出力、すなわちＦＦ５６の現在値＋１を選択する。したがって外部データバスがＨレベルの期間はクロック毎にＦＦ５６の値をインクリメントする。
【００５２】
比較器５７のＢ入力には、比較基準値であるしきい値４（＝（７＋１）／２）が入力されている。比較器５７のＡ入力であるＦＦ５６出力が４に到達すると、比較器５７はＨレベルを出力し内部データバスはＨレベルとなる。
【００５３】
外部データバスが７クロック経過後にＬレベルになると、前記マルチプレクサ５４は０入力であるＦＦ５６の現在値７を選択するので、ＦＦ５６の出力値は７が継続される。
【００５４】
ライトトリガがＨレベルとなるとクロック信号の立上りエッジ（図示ＷＰ箇所）でバススレーブ１１は内部データバスのＨレベルデータを取り込む。ライトトリガが信号をＨレベルにするタイミングはフィルタ段数ｎに関係する。
【００５５】
バスマスタ１０がアクセス開始信号をＬレベルにした後、カウンタ５１と比較器５７が外部データバスの信号をフィルタの段数分監視して多数決判定を行った後に結果を出すので、バスマスタ１０はアクセス開始信号をＬレベルにしてからフィルタ段数（ｎ）＋１クロック後にライトトリガ信号をＨレベルにする。ライトトリガ信号がＨレベルとなったとき、内部データバスは外部データバスの正常値（Ｈ）と同じ値となっている。
【００５６】
次に図３は、正常値がＬレベルのライトデータでノイズが無い場合の動作を示している。図３において、アクセス開始信号がＨレベルのときのクロック信号立上りで、図２と同様にＦＦ５６が０に初期化される。
【００５７】
アクセス開始信号がＬレベルになると、前記マルチプレクサ５５は０入力に接続された前記マルチプレクサ５４の出力を選択する。このとき外部データバスがＬレベルであるので前記マルチプレクサ５４は０入力のＦＦ５６の現在値（初期値０）を選択するため、ＦＦ５６の出力は初期値０から変化しない。
【００５８】
そして、アクセス開始信号がＬレベルになってからフィルタ段数（ｎ＝７）分のクロック信号が入力されても外部データバスの信号が変化しないため、比較器５７のＡ入力が０、Ｂ入力が４でＡ≧Ｂの条件が成立せず、比較器５７の出力、すなわち内部データバスはＬレベルのままである。
【００５９】
アクセス開始信号がＬレベルになってからフィルタ段数＋１（＝８）クロック後にライトトリガがＨレベルになると、そのときのクロック信号立上りエッジ（図示ＷＰ箇所）でバススレーブ１１は内部データバスのＬレベルデータ（外部データバスの、正常値のライトデータＬと同一値）を取り込む。
【００６０】
次に図４は、外部データバスが正常値Ｈのライトデータであり、３クロック分の連続したノイズを含む場合の動作を示している。図４において、外部データバスがＨレベルのときは前記図２で説明したとおりインクリメント用マルチプレクサ５４が１入力を選択するので、ＦＦ５６の値をインクリメントし、外部データバスがＬレベルのときは前記図３で説明したとおり、前記マルチプレクサ５４が０入力を選択するのでＦＦ５６の値は変化しない。
【００６１】
すなわち、アクセス開始信号がＬレベルになりＦＦ５６が初期化された後、２クロック分外部データバスがＨレベルであるためＦＦ５６の出力値は２までインクリメントされる。
【００６２】
次に３クロック分外部データバスがＬレベルとなるため、ＦＦ５６の出力値は２のままである。そして再び２クロック分外部データバスがＨレベルとなるため、ＦＦ５６の出力値は４までインクリメントされる。
【００６３】
図４の場合、正常時のライトデータはＨレベルであるため、ＦＦ５６はインクリメントが正常動作となる。比較器５７はしきい値（４）に到達するとＨレベルを出力するので、内部データバスに正常値のＨレベルを出力するにはＦＦ５６の出力値が４以上になる必要がある。つまり、外部データバスは４クロック分のＨレベルを検出できると内部データバスにＨレベルを出力することができる。
【００６４】
アクセス開始信号がＬレベルになってからフィルタ段数＋１（＝８）クロック後にライトトリガがＨレベルになると、そのときのクロック信号立上りエッジ（図示ＷＰ箇所）でバススレーブ１１は内部データバスのＨレベルデータ（外部データバスの、正常値のライトデータＨと同一値）を取り込む。
【００６５】
図４では、７クロックのライトデータに含まれる連続した３クロックのノイズを許容（無効化）している。
【００６６】
次に図５は、外部データバスが正常値Ｌのライトデータであり、３クロック分の分断したノイズを含む場合の動作を示している。
【００６７】
図５において、外部データバスがＨレベルのときは前記図２で説明したとおりインクリメント用マルチプレクサ５４が１入力を選択するので、ＦＦ５６の値をインクリメントし、外部データバスがＬレベルのときは前記図３で説明したとおり、前記マルチプレクサ５４が０入力を選択するのでＦＦ５６の値は変化しない。
【００６８】
すなわち、アクセス開始信号がＬレベルになりＦＦ５６が初期化された後、１クロック分外部データバスがＬレベル（正常値）であるためＦＦ５６の出力値は０のままである。
【００６９】
次に、分断された最初のノイズにより外部データバスが１クロック分Ｈレベルとなると、ＦＦ５６の出力値は１加算されて１となる。次に１クロック分外部データバスがＬレベル（正常値）となるためＦＦ５６の出力値は１のままである。
【００７０】
次に分断された２番目のノイズにより外部データバスが２クロック分Ｈレベルとなると、ＦＦ５６の出力値は２加算されて３となる。次に２クロック分外部データバスがＬレベル（正常値）となるためＦＦ５６の出力値は３のままである。
【００７１】
図５の場合、正常時のライトデータはＬレベルであるため、ＦＦ５６は変化しない状態が正常動作となる。比較器５７はしきい値（４）に到達するとＨを出力するので、内部データバスに正常値のＬレベルを出力するにはＦＦ５６の出力値が４未満である必要がある。つまり、外部データバスはＨレベル検出が４クロック未満ならば内部データバスにＬレベルを出力することができる。
【００７２】
アクセス開始信号がＬレベルになってからフィルタ段数＋１（＝８）クロック後にライトトリガがＨレベルになると、そのときのクロック信号立上りエッジ（図示ＷＰ箇所）でバススレーブ１１は内部データバスのＬレベルデータ（外部データバスの、正常値のライトデータＬと同一値）を取り込む。
【００７３】
図５では、７クロックのライトデータに含まれる分断した３クロックのノイズを許容（無効化）している。
【００７４】
以上のように、本実施形態例によれば次の効果が得られる。  
【００７５】
（１）フィルタ回路の回路規模を抑えることができるので、近年のデータバスの多ビット化に有利となる。
【００７６】
（２）ＦＰＧＡのロジックエレメントに構成が類似しているため、ＦＰＧＡに実装が向いた構成である。
【００７７】
（３）バススレーブがＦＰＧＡ内蔵の場合、本実施形態例のフィルタ回路をバススレーブと共に実装すると部品点数の面でも有利となる。
【符号の説明】
【００７８】
１０…バスマスタ
１１…バススレーブ
１２ａ…外部データバス
１２ｂ…内部データバス
２０…フィルタ回路
４０…ＦＰＧＡ
５１…カウンタ
５２…入力部
５３，５８…加算器
５４…インクリメント用マルチプレクサ
５５…フリップフロップ初期化用マルチプレクサ
５６…フリップフロップ
５７…比較器
５９…シフタ
【図１】
2018157351.tif 000003
【図２】
2018157351.tif 000004
【図３】
2018157351.tif 000005
【図４】
2018157351.tif 000006
【図５】
2018157351.tif 000007
【図６】
2018157351.tif 000008
【図７】
2018157351.tif 000009
【図８】
2018157351.tif 000010
【図９】
2018157351.tif 000011