(57)【要約】【課題】プログラムメモリから読み出された命令データにレベル変動があっても、誤ったレベルの命令データがＣＰＵへ入力されることのないマイクロコンピュータシステムを提供する。【解決手段】プログラムメモリ４から読み出した命令データにレベルの変動があったときに、レベル変動検知部５がこのレベル変動を検知し、命令データのレベル変動が収束するまでレベル変動検知信号を出力し続ける。このレベル変動検知信号が入力されたウェイト信号生成部６は、メモリコントローラ３へ命令データのレベル変動が収束するまで／ＷＡＩＴ信号を送出する。この／ＷＡＩＴ信号が入力されるメモリコントローラ３は、プログラムメモリ４への／ＲＤ信号に命令データのレベル変動が収束するまでウェイト期間を挿入する。これにより、ＣＰＵ２へはレベル変動が収束した後の命令データが読み込まれる。【選択図】  図１
2005043952.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと、
前記ＣＰＵへ与える命令を格納するプログラムメモリと、
前記プログラムメモリからの前記命令の読み出しを制御するリード信号を生成するメモリコントローラと、
前記プログラムメモリから読み出された前記命令のデータの信号レベル変動を検知するレベル変動検知部と、
前記レベル変動検知部から出力されたレベル変動検知信号に基づいて、前記メモリコントローラから出力される前記リード信号にウェイト期間を与えるウェイト信号を生成するウェイト信号生成部とを具備し、
前記プログラムメモリから読み出した前記命令のデータに信号レベルの変動があるときは、前記命令のデータの信号レベルが安定するまで前記プログラムメモリからの前記命令のデータの読み出しを継続することを特徴とするマイクロコンピュータシステム。
【請求項２】
前記ＣＰＵへの前記命令データの読み込みが、前記リード信号のイネーブル期間が終了するときに行われることを特徴とする請求項１に記載のマイクロコンピュータシステム。
【請求項３】
前記レベル変動検知部は、前記命令データと前記命令データを所定の時間遅延させたデータとの間のレベルの不一致を検出することにより、前記命令データに信号レベルの変動があることを検知することを特徴とする請求項１に記載のマイクロコンピュータシステム。
【請求項４】
前記ウェイト信号生成部は、前記メモリコントローラから前記リード信号が出力された後に前記ウェイト信号の生成を開始することを特徴とする請求項１に記載のマイクロコンピュータシステム。
【請求項５】
前記ＣＰＵと前記メモリコントローラが一つの半導体集積回路チップに搭載されていることを特徴とする請求項１乃至４のいずれか１項に記載のマイクロコンピュータシステム。
【請求項６】
前記ＣＰＵと、前記メモリコントローラと、前記プログラムメモリと、前記レベル変動検知部と、前記ウェイト信号生成部が一つの半導体集積回路チップに搭載されていることを特徴とする請求項１乃至４のいずれか１項に記載のマイクロコンピュータシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マイクロコンピュータシステムに関し、特に、命令を格納するプログラムメモリのリードサイクル時間の制御を行うマイクロコンピュータシステムに関する。
【０００２】
【従来の技術】
マイクロコンピュータにおける演算は、プログラムメモリに格納された命令を読み出してＣＰＵへ入力することによって実行される。
【０００３】
このとき、プログラムメモリから読み出されたデータが、端子間の信号反射の影響や電源ノイズ、電磁ノイズ等のノイズの影響を受けてレベル変動し、本来の命令とは異なった命令としてＣＰＵへ入力されることがある。
【０００４】
このようにして、本来実行すべき命令とは異なった命令がＣＰＵへ入力されると、マイクロコンピュータが誤動作し、場合によっては、マイクロコンピュータが暴走状態に陥ることがある。そのため、マイクロコンピュータには、ウォッチドッグタイマなどの暴走検知回路が設けられており、この暴走検知回路が暴走状態を検知したときには、ＣＰＵへの割り込みまたはシステムへのリセットをかけ、マイクロコンピュータを正常状態へ復帰させる対策が取られている。
【０００５】
しかしながら、このような暴走検知回路による対策では、暴走を検知するまでに時間がかかり、暴走を検知するまでの間は、マイクロコンピュータの誤動作が継続するという問題があった。
【０００６】
そこで、ＣＰＵが命令を実行する前に、ＣＰＵへ間違った命令が入力されたことを検知することが望まれている。そのために、例えば、プログラムメモリに本来のデータとは別に識別コードを格納し、この識別コードを利用することで、間違った命令がＣＰＵに入力されることを防止する回路が提案されている（例えば、特許文献１参照。）。
【０００７】
【特許文献１】
特開平５−２３３３３９号公報（第２−３頁、図１）
【０００８】
【発明が解決しようとする課題】
しかし、上述の識別コードを利用する従来の回路で防止できるのは、オペコード読み取りパルスが誤ってオペランドサイクルで発生し、命令中のオペランドを誤ってオペコードとして読み取ろうとする誤動作である。
【０００９】
そのため、オペコード読み取りパルスが正しくオペコードサイクルに発生していれば、プログラムメモリから読み出した命令データに電源ノイズ等の影響を受けたレベル変動があるような場合でも、レベルの変動したデータがそのままＣＰＵへ誤ったデータとして入力されてしまい、マイクロコンピュータの誤動作を防止することができなかった。
【００１０】
そこで、本発明の目的は、プログラムメモリから読み出された命令データにレベル変動があっても、誤ったレベルの命令データがＣＰＵへ入力されることのないマイクロコンピュータシステムを提供することである。
【００１１】
【課題を解決するための手段】
本発明の一態様によれば、ＣＰＵと、前記ＣＰＵへ与える命令を格納するプログラムメモリと、前記プログラムメモリからの前記命令の読み出しを制御するリード信号を生成するメモリコントローラと、前記プログラムメモリから読み出された前記命令のデータの信号レベル変動を検知するレベル変動検知部と、前記レベル変動検知部から出力されたレベル変動検知信号に基づいて、前記メモリコントローラから出力される前記リード信号にウェイト期間を与えるウェイト信号を生成するウェイト信号生成部とを具備し、前記プログラムメモリから読み出した前記命令のデータに信号レベルの変動があるときは、前記命令のデータの信号レベルが安定するまで前記プログラムメモリからの前記命令のデータの読み出しを継続することを特徴とするマイクロコンピュータシステムが提供される。
【００１２】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態を説明する。
【００１３】
（第１の実施の形態）
図１は、本発明の第１の実施の形態に係るマイクロコンピュータシステムの構成を示すブロック図である。
【００１４】
本実施の形態のマイクロコンピュータシステムは、１つの半導体集積回路チップであるＭＣＵチップ１に搭載されたＣＰＵ２とメモリコントローラ３と、ＭＣＵチップ１とは別の半導体集積回路チップであるプログラムメモリ４を有している。また、他の構成要素として、レベル変動検知部５とウェイト信号生成部６とクロックジェネレータ７を備えている。
【００１５】
このうち、メモリコントローラ３は、プログラムメモリ４からのデータの読み出しを制御するリード（／ＲＤ）信号を出力するもので、入力端子としてウェイト（／ＷＡＩＴ）端子を有しており、ＭＣＵチップ１の外部からウェイト（／ＷＡＩＴ）信号が与えられているときは、／ＲＤ信号に所望のウェイト期間を与えることができるものである。
【００１６】
次に、本実施の形態のマイクロコンピュータシステムの動作について説明する。まず、プログラムメモリ４からデータを読み出してＣＰＵ２への命令として読み込む動作について説明し、その後、レベル変動検知部５とウェイト信号生成部６の動作について説明する。
【００１７】
プログラムメモリ４には、ＣＰＵ２へ与える命令が格納されており、メモリコントローラ３から出力されるリード信号（／ＲＤ信号）がプログラムメモリ４に与えられることにより、プログラムメモリ４に格納された命令が、複数のビットからなる命令データとして読み出される。
【００１８】
メモリコントローラ３における／ＲＤ信号は、ＣＰＵ２から与えられる基準／ＲＤ信号に基づいて生成される。本実施の形態においては、メモリコントローラ３から出力される／ＲＤ信号がＬレベルに立ち下がったときにプログラムメモリ４からの命令データの読み出しが開始され、／ＲＤ信号がＬレベルの間は読み出しのイネーブル期間であり、プログラムメモリ４からの命令データの出力が継続する。しかし、ＣＰＵ２へ命令データが読み込まれるのは、／ＲＤ信号の立ち上がり、すなわち読み出しイネーブル期間終了のタイミングであり、その時点の命令データの信号レベルがＣＰＵ２へ読み込まれる。
【００１９】
このようにして、メモリコントローラ３から出力される／ＲＤ信号のＬレベルへの立ち下がりでプログラムメモリ４からの命令データの読み出しが始まるが、一般にスイッチング動作を行うと過渡現象が生じ、プログラムメモリ４から読み出された命令データが、すぐに安定した信号レベルに落ち着くとは限らない。
【００２０】
特に、信号端子間のインピーダンスの不整合による反射や、多数の信号が一斉に変化するいわゆる同時スイッチングによる電源電位の変動が生じると、信号レベルの変動が大きく、場合によっては、信号レベルが反転するほど大きなレベルの変動が生じることがある。しかも、その変動の振幅が、ある一定以下のレベルに安定するまでには、時間がかかることがある。
【００２１】
このようなスイッチング動作に伴う出力レベルの変動は、信号の配線長や配線のインピーダンスの時定数による周期性を持った減衰振動となることが多いが、／ＲＤ信号の立ち上がりのタイミング時点で、信号レベルの変動がある一定以下にまで小さくなっていないと、ＣＰＵ２へ誤ったレベルの信号として読み込まれる。すなわち、ＣＰＵ２へ、誤った命令が与えられることになる。
【００２２】
そこで、本実施の形態のマイクロコンピュータシステムでは、レベル変動検知部５とウェイト信号生成部６を設け、プログラムメモリ４から出力された命令データの信号レベルに変動があっても、ＣＰＵ２へ誤ったレベルの信号として読み込まれることを防止している。
【００２３】
このうち、レベル変動検知部５は、プログラムメモリ４から出力された命令データが入力されており、命令データに信号レベルの反転と認識されるほど大きな信号レベルの変動があったときに、これを検知して、レベル変動検知信号を出力する回路である。
【００２４】
また、ウェイト信号生成部６は、レベル変動検知部５から出力されるレベル変動検知信号を受けて、メモリコントローラ３のＷＡＩＴ端子へ入力する／ＷＡＩＴ信号を生成する。
【００２５】
この、レベル変動検知部５とウェイト信号生成部６の働きにより、プログラムメモリ４から出力された命令データに信号レベルが誤認識されるほど大きな信号レベルの変動がある間は、メモリコントローラ３のＷＡＩＴ端子に／ＷＡＩＴ信号が与えられ、メモリコントローラ３から出力される／ＲＤ信号にウェイト期間が挿入される。
【００２６】
その後、命令データの信号レベルの変動がある一定以下の値に収まると、命令レベル変動検知信号が出力されなくなる。すなわち、この時点で、データの信号レベルが安定したと見なすことができる。これにより、／ＷＡＩＴ信号も出力されなくなってウェイト期間の付与が終わり、／ＲＤ信号が立ち上がる。したがって、ＣＰＵ２へは、信号レベルの変動が安定した後の命令データが読み込まれる。
【００２７】
なお、ウェイト信号生成部６には、クロックジェネレータ７で生成されてＣＰＵ２へ供給されるシステムクロック信号ＣＫと基準／ＲＤ信号も入力されており、これらの信号により、レベル変動検知信号の受け付け開始タイミングを決めている。
【００２８】
通常、基準／ＲＤ信号のＬレベル期間は、システムクロック信号ＣＫの一周期分を単位として生成されるが、／ＷＡＩＴ信号の出力するかどうかの判断が必要となるのは、／ＲＤ信号の周期の後半に入ってからである。そこで、システムクロック信号ＣＫで基準／ＲＤ信号の周期の後半期間を切り出し、この期間にレベル変動検知信号の出力があれば、これを受け付けるようにする。
【００２９】
そして、基準／ＲＤ信号の出力期間を超えて、レベル変動検知信号が出力される場合には、そのレベル変動検知信号が出力されている間、／ＷＡＩＴ信号を出力する。
【００３０】
また、ウェイト信号生成部６には、外部／ＷＡＩＴ信号も入力されているが、この信号は通常動作におけるウェイト制御に用いられる信号であり、ここでは使用しない。
【００３１】
図２はレベル変動検知部５の回路の例、図３はウェイト信号生成部６の回路の例をそれぞれ示す回路図である。
【００３２】
図２において、入力Ｄ１、Ｄ２、・・・、Ｄｎは、ｎビットからなる命令データのそれぞれのビットのデータ信号を表わす。このＤ１、Ｄ２、・・・、Ｄｎは、それぞれＥＸ―ＮＯＲゲート５１１、５１２、・・・、５１ｎの一端に入力される。
【００３３】
一方、ＥＸ―ＮＯＲゲート５１１、５１２、・・・、５１ｎの他端には、Ｄ１、Ｄ２、・・・、Ｄｎをそれぞれ遅延回路５２１、５２２、・・・、５２ｎに介した信号ｄＤ１、ｄＤ２、・・・、ｄＤｎが入力される。
【００３４】
このＥＸ―ＮＯＲゲート５１１、５１２、・・・、５１ｎの出力が、ｎ入力のＡＮＤゲート５３に入力され、このＡＮＤゲート５３の出力が、レベル変動検知信号となっている。
【００３５】
いま、入力Ｄ１、Ｄ２、・・・、Ｄｎに信号レベルの変動があった場合、入力Ｄ１、Ｄ２、・・・、Ｄｎと、これを遅延させた信号ｄＤ１、ｄＤ２、・・・、ｄＤｎとの間に、ある時刻で見た場合、信号レベルの相違が生じる。この信号レベルの相違が大きい場合、ＥＸ―ＮＯＲゲート５１１、５１２、・・・、５１ｎで入力信号レベルの不一致と認識され、その出力がＬとなる。
【００３６】
ＥＸ―ＮＯＲゲート５１１、５１２、・・・、５１ｎの出力のいずれかがＬとなると、これらの出力が入力されているＡＮＤゲート５３の出力、すなわちレベル変動検知信号がＬとなる。
【００３７】
一方、入力Ｄ１、Ｄ２、・・・、Ｄｎの信号レベルの変動が収束すると、入力Ｄ１、Ｄ２、・・・、Ｄｎと、これを遅延させた信号ｄＤ１、ｄＤ２、・・・、ｄＤｎとの間に信号レベルの差が生じなくなり、ＥＸ―ＮＯＲゲート５１１、５１２、・・・、５１ｎの出力はＨとなる。ＥＸ―ＮＯＲゲート５１１、５１２、・・・、５１ｎの出力の総てがＨとなると、ＡＮＤゲート５３の出力、すなわちレベル変動検知信号はＨとなる。
【００３８】
つまり、入力Ｄ１、Ｄ２、・・・、Ｄｎのいずれかに信号レベルの変動が生じると、レベル変動検知信号はＬになるが、入力Ｄ１、Ｄ２、・・・、Ｄｎの信号レベルの変動が総て収束すると、レベル変動検知信号はＨとなるものである。
【００３９】
なお、遅延回路５２１、５２２、・・・、５２ｎに与える遅延時間としては、入力Ｄ１、Ｄ２、・・・、Ｄｎの信号レベルの変動の周期がＴであるとした場合には、その周期の半分、すなわちＴ／２程度とすればよい。
【００４０】
図３は、上述した図２の回路から出力されるレベル変動検知信号を受けて、／ＷＡＩＴ信号を出力するウェイト信号生成部６の回路の例である。
【００４１】
図３の回路では、ＯＲゲート６７にレベル変動検知信号と／ＲＤ信号が入力され、／ＲＤ信号がＬの期間のみレベル変動検知信号は有効となる。このＯＲゲート６７の出力は、ＯＲゲート６１とＯＲゲート６２のそれぞれ一端に入力されている。そして、ＯＲゲート６１とＯＲゲート６２の出力がＡＮＤゲート６５に入力され、ＡＮＤゲート６５の出力がＡＮＤゲート６６の一端に入力され、ＡＮＤゲート６６の出力が／ＷＡＩＴ信号となっている。
【００４２】
ここで、ＯＲゲート６１の他端には、ＯＲゲート６３の出力が入力され、ＯＲゲート６２の他端には、インバータ６４の出力が入力されている。このうち、ＯＲゲート６３には、基準／ＲＤ信号とシステムクロックＣＫが入力され、インバータ６４には、基準／ＲＤ信号が入力されている。また、ＡＮＤゲート６６の他端には、外部／ＷＡＩＴ信号が入力されているが、ここでは、この外部／ＷＡＩＴ信号には、Ｈレベルが入力されているものとする。
【００４３】
次に、この回路の動作について説明する。
【００４４】
ＯＲゲート６３は、基準／ＲＤ信号のＬレベル期間の後半の周期を切り出す回路であり、レベル変動検知信号の受付を開始する信号を出力する。すなわち、基準／ＲＤ信号とシステムクロックＣＫがともにＬのとき、ＯＲゲート６３の出力がＬとなり、レベル変動検知信号のＬ入力をＯＲゲート６１の出力へ通過させるように働く。
【００４５】
このＯＲゲート６１の出力がＬであると、ＡＮＤゲート６５の出力もＬとなり、次いで、ＡＮＤゲート６６の出力もＬとなり、すなわち／ＷＡＩＴ信号がＬとなる。
【００４６】
その後、基準／ＲＤ信号が立ち上がっても、なお、レベル変動検知信号のＬ入力が続く場合には、ＯＲゲート６１に代わって、ＯＲゲート６２が、レベル変動検知信号のＬ入力をＡＮＤゲート６５の出力へ伝達するように働く。すなわち、基準／ＲＤ信号がＨになると、ＯＲゲート６３の出力はＨになって、ＯＲゲート６１の出力をＨにするようになるが、代わりに、インバータ６４の出力がＬになって、レベル変動検知信号のＬ入力をＯＲゲート６２の出力へ通過させるように働く。
【００４７】
このＯＲゲート６２の出力がＬであるときも、ＡＮＤゲート６５の出力はＬとなり、ＡＮＤゲート６６の出力もＬとなって、／ＷＡＩＴ信号もＬとなる。
【００４８】
一方、レベル変動検知信号がＨであるときは、ＯＲゲート６１とＯＲゲート６２の出力はともにＨとなり、ＡＮＤゲート６５の出力はＨとなる。そして、ＡＮＤゲート６５の出力がＨであると、ＡＮＤゲート６６の出力、すなわち／ＷＡＩＴ信号もＨとなる。
【００４９】
図４は、上述したレベル変動検知部５の回路の例とウェイト信号生成部６の回路の例を用いて、本実施の形態のマイクロコンピュータシステムを動作させたときの波形図である。
【００５０】
システムクロックＣＫの１周期分発生する基準／ＲＤ信号がｔ１サイクルで与えられると、メモリコントローラ３からの／ＲＤ信号も出力される。すると、プログラムメモリ４から、命令データＤ１、Ｄ２、・・・、Ｄｎが読み出される。
【００５１】
いま、このＤ１、Ｄ２、・・・、Ｄｎにレベル変動があると、これを遅延させたｄＤ１、ｄＤ２、・・・、ｄＤｎにも遅延時間分遅れてレベル変動が生じる。
【００５２】
レベル変動検知部５が、Ｄ１、Ｄ２、・・・、ＤｎとｄＤ１、ｄＤ２、・・・、ｄＤｎのレベルとの間の信号レベルの不一致を検出すると、レベル変動検知信号をＬにする。
【００５３】
ウェイト信号生成部６にレベル変動検知信号のＬが入力されると、ウェイト信号生成部６は、基準／ＲＤ信号のＬレベル期間の後半の周期から／ＷＡＩＴ信号にＬを出力する。
【００５４】
ｔ２サイクルになって、基準／ＲＤ信号が立ち上がっても、レベル変動検知信号をＬのままの場合、ウェイト信号生成部６は、／ＷＡＩＴ信号を引き続きＬにしておく。すると、メモリコントローラ３は、／ＲＤ信号にシステムクロックＣＫの１周期分のウェイト期間を挿入し、／ＲＤ信号の立ちあがりを遅らせる。
【００５５】
この／ＲＤ信号へのウェイト期間の挿入は、レベル変動検知信号がＬの間、継続する。
【００５６】
ｔ３サイクルの途中で、レベル変動検知信号がＨに変化すると、／ＷＡＩＴ信号もＨに立ち上がり、／ＲＤ信号へのウェイト期間の挿入もこのサイクルで終了する。
【００５７】
ｔ４サイクルのシステムクロックＣＫの立ち上がりで、／ＲＤ信号も立ち上がり、このときのＤ１、Ｄ２、・・・、Ｄｎのレベルが、命令データとしてＣＰＵ２へ読み込まれる。
【００５８】
このように、本実施の形態のマイクロコンピュータシステムにおいては、プログラムメモリ４から読み出した命令データに信号レベルの変動があったときは、メモリコントローラ３から出力される／ＲＤ信号にウェイト期間を挿入し、命令データの信号レベルの変動が収束した後で、／ＲＤ信号を立ち上げる。これにより、ＣＰＵ２へ誤った信号レベルの命令データが読み込まれることを防止することができる。
【００５９】
（第２の実施の形態）
図５は、本発明の第２の実施の形態に係るマイクロコンピュータシステムの構成を示すブロック図である。
【００６０】
本実施の形態におけるマイクロコンピュータシステムを構成するブロックの機能は、第１の実施の形態におけるマイクロコンピュータシステムのブロックと同じである。したがって、図５においては、図１に示すブロック図と同一の機能のブロックには同一の符号を付して示し、ここでは、その詳細な説明は省略する。
【００６１】
本実施の形態のマイクロコンピュータシステムが、第１の実施の形態のマイクロコンピュータシステムと異なる点は、そのシステムを構成するブロックが、総て１つの半導体集積回路チップに搭載されていることである。
【００６２】
すなわち、図５において、ＭＣＵチップ１１に、ＣＰＵ２と、メモリコントローラ３と、プログラムメモリ４が搭載され、さらに、レベル変動検知部５とウェイト信号生成部６が搭載されている。
【００６３】
このように、本実施の形態のマイクロコンピュータシステムは、１つの半導体集積回路チップで作られているため、このマイクロコンピュータシステムが搭載される機器の実装面積を少なくすることができる。
【００６４】
（第３の実施の形態）
図６は、本発明の第３の実施の形態に係るマイクロコンピュータシステムの構成を示すブロック図である。
【００６５】
本実施の形態におけるマイクロコンピュータシステムの構成も、第１の実施の形態におけるマイクロコンピュータシステムの構成と同じである。また、システムを構成するするブロックの機能も、第１の実施の形態におけるマイクロコンピュータシステムのブロックと同じである。
【００６６】
そのため、図６においては、図１に示すブロック図と同一の機能のブロックには同一の符号を付して示し、ここでは、その詳細な説明は省略する。
【００６７】
本実施の形態におけるマイクロコンピュータシステムが、第１の実施の形態におけるマイクロコンピュータシステムと異なる点は、ＭＣＵチップ２１からの基準／ＲＤ信号の出力がなく、ウェイト信号生成部２６が、基準／ＲＤ信号を用いずに／ＷＡＩＴ信号を生成する点である。
【００６８】
そこで、ここでは、ウェイト信号生成部２６の回路構成と動作を中心に説明を行う。
【００６９】
図７は、本実施の形態におけるウェイト信号生成部２６の回路の例である。
【００７０】
図７の回路では、ＯＲゲート２６１にＣＫと／ＲＤ信号が入力され、ｗｉｎｄｏｗ信号が生成される。このｗｉｎｄｏｗ信号とレベル変動検知信号がＯＲゲート２６３に入力され、レベル変動トリガ信号が生成される。
【００７１】
このレベル変動トリガ信号は、インバータ２６４でレベルが反転され、プリセット付きのＤフリップフロップ２６５のクロック端子（ＣＫ）に入力される。このＤフリップフロップ２６５のプリセット端子（／ＰＲ）には、ｗｉｎｄｏｗ信号をインバータ２６２で反転した／ｗｉｎｄｏｗ信号が入力され、入力端子（Ｄ）は、Ｌレベルに固定されている。
【００７２】
Ｄフリップフロップ２６５の出力端子（Ｑ）は、プリセット付きのＤフリップフロップ２６６の入力端子（Ｄ）に接続されている。
【００７３】
このＤフリップフロップ２６６のクロック端子（ＣＫ）には、ＣＫが入力され、プリセット端子（／ＰＲ）には、／ＲＤ信号をインバータ２６７でレベル反転した信号が入力される。
【００７４】
そして、Ｄフリップフロップ２６６の出力と上述したＤフリップフロップ２６５の出力がＡＮＤゲート２６８に入力され、ＡＮＤゲート２６８の出力がＡＮＤゲート２６９の一端に入力され、ＡＮＤゲート２６９の出力が／ＷＡＩＴ信号となっている。
【００７５】
また、ＡＮＤゲート２６９の他端には、外部／ＷＡＩＴ信号が入力されているが、ここでは、この外部／ＷＡＩＴ信号には、Ｈレベルが入力されているものとする。
【００７６】
次に、この回路の動作について図８の動作波形図を用いて説明する。
【００７７】
図８は、本実施の形態におけるウェイト信号生成部２６の動作の様子を示す動作波形図である。
【００７８】
ｗｉｎｄｏｗ信号は、／ＲＤ信号がＨの期間Ｈであるが、ｔ１期間で／ＲＤ信号がＬに立ち下がると、ＣＫと同じ波形を出力するようになる。
【００７９】
ここで、レベル変動検知信号が、ｔ１期間、ｔ２期間を通じてＬであるとすると、この間は、レベル変動トリガ信号にもＣＫと同じ波形を出力される。このレベル変動トリガ信号は、インバータ２６４で反転されＤフリップフロップ２６５のＣＫとなる。
【００８０】
Ｄフリップフロップ２６５は、ｗｉｎｄｏｗ信号の反転信号である／ｗｉｎｄｏｗ信号でプリセットされるため、／ｗｉｎｄｏｗ信号がＬのときは、Ｄフリップフロップ２６５の出力はＨである。
【００８１】
ｔ１期間で、／ｗｉｎｄｏｗ信号がＨに変化すると、Ｄフリップフロップ２６５はプリセットが解除されるとともに、インバータ２６４で反転されたレベル変動トリガ信号によりＤ入力のＬレベルが読み込まれ、Ｄフリップフロップ２６５の出力はＬに変化する。
【００８２】
ｔ２期間で、／ｗｉｎｄｏｗ信号がＬに変化すると、Ｄフリップフロップ２６５は再度プリセットされ、Ｄフリップフロップ２６５の出力はＨに変化する。その後、／ｗｉｎｄｏｗ信号がＨに変化すると、Ｄフリップフロップ２６５はプリセットが解除され、インバータ２６４で反転されたレベル変動トリガ信号によりＤ入力のＬレベルが読み込まれ、Ｄフリップフロップ２６５の出力は、Ｌに変化する。
【００８３】
ｔ３期間で、／ｗｉｎｄｏｗ信号がＬに変化すると、Ｄフリップフロップ２６５は再度プリセットされ、Ｄフリップフロップ２６５の出力はＨに変化する。その後、／ｗｉｎｄｏｗ信号がＨに変化するとプリセットは解除される。しかし、ｔ３期間に入ってレベル変動検知信号がＨに変化したため、レベル変動トリガ信号もＨに固定され、その反転信号はＬに固定される。そのため、プリセットが解除されてもＤ入力は読み込まれず、Ｄフリップフロップ２６５の出力はＨのままとなる。
【００８４】
一方、Ｄフリップフロップ２６６は、／ＲＤ信号の反転信号でプリセットされているため、／ＲＤ信号がＨの間は、Ｄフリップフロップ２６６の出力は、Ｈにプリセットされている。
【００８５】
ｔ１期間で、／ＲＤ信号がＬに変化すると、プリセットは解除される。
【００８６】
ｔ２期間で、ＣＫが立ち上がると、Ｄフリップフロップ２６６は、Ｄ端子に接続されているＤフリップフロップ２６５の出力のＬを読み込んで、Ｄフリップフロップ２６６の出力は、Ｌに変化する。
【００８７】
ｔ３期間で、ＣＫが立ち上がると、Ｄフリップフロップ２６６は、Ｄフリップフロップ２６５の出力のＬを再度読み込み、Ｄフリップフロップ２６６の出力は、Ｌを継続する。
【００８８】
ｔ４期間で、ＣＫが立ち上がると、Ｄフリップフロップ２６６は、Ｄフリップフロップ２６５の出力のＨを読み込んで、Ｄフリップフロップ２６６の出力は、Ｈに変化する。
【００８９】
外部／ＷＡＩＴ信号がＨであるので、／ＷＡＩＴ信号は、Ｄフリップフロップ２６５の出力とＤフリップフロップ２６６の出力のＡＮＤゲート２６８によるＡＮＤ出力そのものとなる。したがって、ｔ１期間で、Ｄフリップフロップ２６５の出力がＬになったときに、／ＷＡＩＴ信号はＬに変化し、ｔ４期間でＤフリップフロップ２６６の出力がＨになるまでＬが継続する。
【００９０】
この／ＷＡＩＴ信号がＬであると、／ＲＤ信号にウェイト期間が付与され、／ＲＤ信号はＬを継続する。すなわち、／ＷＡＩＴ信号がＨに変化するｔ４期間の終了までは、／ＲＤ信号はＬを継続する。
【００９１】
このように、本実施の形態のマイクロコンピュータシステムは、ＭＣＵチップ２１から基準／ＲＤ信号の出力がなくても、／ＲＤ信号とレベル変動検知信号とシステムクロックＣＫに基づいて、ウェイト信号生成部２６が／ＷＡＩＴ信号を生成することができる。
【００９２】
【発明の効果】
本発明のマイクロコンピュータシステムによれば、プログラムメモリから読み出された命令データにレベル変動があっても、誤ったレベルの命令データがＣＰＵへ入力されることを防止することができる。これにより、ＣＰＵに誤った命令が入力されることで発生する誤動作を防止することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係るマイクロコンピュータシステムの構成を示すブロック図。
【図２】本発明の実施の形態に係るレベル変動検知部の回路の例を示す回路図。
【図３】本発明の第１および第２の実施の形態に係るウェイト信号生成部の回路の例を示す回路図。
【図４】本発明の第１の実施の形態に係るマイクロコンピュータシステムの動作波形図。
【図５】本発明の第２の実施の形態に係るマイクロコンピュータシステムの構成を示すブロック図。
【図６】本発明の第３の実施の形態に係るマイクロコンピュータシステムの構成を示すブロック図。
【図７】本発明の第３の実施の形態に係るウェイト信号生成部の回路の例を示す回路図。
【図８】本発明の第３の実施の形態に係るウェイト信号生成部の動作波形図。
【符号の説明】
１、１１、２１  ＭＣＵチップ
２  ＣＰＵ
３  メモリコントローラ
４  プログラムメモリ
５  レベル変動検知部
６、２６  ウェイト信号生成部
７  クロックジェネレータ
５１１、５１２、・・・、５１ｎ  ＥＸ−ＮＯＲゲート
５２１、５２２、・・・、５２ｎ  遅延回路
５３、６５、６６、２６８、２６９  ＡＮＤゲート
６１、６２、６３、６７、２６１、２６３  ＯＲゲート
６４、２６２、２６４、２６７  インバータ
２６５、２６６  Ｄフリップフロップ
【図１】
2005043952.tif 000003
【図２】
2005043952.tif 000004
【図３】
2005043952.tif 000005
【図４】
2005043952.tif 000006
【図５】
2005043952.tif 000007
【図６】
2005043952.tif 000008
【図７】
2005043952.tif 000009
【図８】
2005043952.tif 000010