(57)【特許請求の範囲】
【請求項１】
クロック信号が供給され、所定の機能を実行する複数の機能ブロックと、
クロック制御信号に応答して前記クロック信号を選択的に前記機能ブロックへ供給するクロック信号制御手段と、
前記クロック信号の供給が停止された前記機能ブロックに対してアクセスが行われた場合に、該機能ブロックに代わり、該機能ブロックへのアクセスが異常であることを示す応答信号を出力する、前記各機能ブロックごとに設けられた応答手段とを備え、
前記応答手段が、選択信号に応答して、予め設定された第１の信号若しくは予め設定された第２の信号のどちらか一方を選択して出力する選択回路と、
前記機能ブロックに入力されるアドレス信号と前記クロック制御信号とに基いて前記選択信号を生成する選択信号生成回路と、
前記第１の信号若しくは前記第２の信号のどちらか一方の信号に基いて前記応答信号を出力する応答信号出力回路とで構成されていることを特徴とするマイクロコントローラ。
【発明の詳細な説明】
【０００１】
【発明の属する分野】
本発明はマイクロコントローラに係り、特にクロック信号の供給／停止機能を有するマイクロコントローラに関するものである。
【０００２】
【従来の技術】
従来のマイクロコントローラ（以下、マイコンという）は、ＣＰＵ等のマスターブロックと、マスターブロックにより制御されるスレーブブロックと、スレーブブロックへのクロック信号の供給／停止の制御を行うクロック信号制御手段とから構成される。クロック信号制御手段は、マスターブロックから出力されるクロック制御信号（クロック停止要求信号）に応答してクロック信号の供給／停止の制御を行う。このように、従来のマイコンでは、クロック信号を供給する必要がないスレーブブロックに対してはクロック信号の供給を停止することにより低消費電力化を図ってきた。また、従来のマイコンでは、アクセスが終了した時に、スレーブブロックがマスターブロックに対してアクセスが終了したことを示す応答信号を出力し、マスターブロックはこの応答信号を受信することによりアクセス動作を終了していた。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来のマイコンでは、マスターブロックがクロック信号の供給が停止されているスレーブブロックに対してアクセスを行った場合、非活性状態となっているスレーブブロックは応答信号を出力することができないため、マスターブロックはアクセス動作を維持したままとなる。そのため、マイコン全体としては所定の処理を行わないままマスターブロックのみがアクセス動作を維持しているため無駄な電力を消費することとなり、低消費電力化を図ることが出来ないという問題があった。
【０００４】
【課題を解決するための手段】
この発明に係るマイクロコントローラは、前述の課題を解決するためになされたものであり、その代表的なものは、クロック信号の供給が停止された機能ブロックに対してアクセスが行われた場合に、その機能ブロックに代わり、機能ブロックへのアクセスが異常であることを示す応答信号を出力する応答手段を有する。
【０００５】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
【０００６】
（第１の実施の形態）
図１は、本発明の第１の実施の形態に係るマイクロコントローラ（以下、マイコンという）の構成を示す回路ブロック図である。本実施の形態に係るマイコンは、マイコン全体を制御するマスターブロック１０１と、所定の機能を実行する複数の機能ブロック（スレーブブロック１０２及び１０３）と、クロック信号ＣＬＯＣＫを各機能ブロックに選択的に供給するクロック信号制御手段１０６及び１０７と、クロック信号の供給が停止している機能ブロックに代わり応答信号ＲＥＳＰを出力する応答手段（デフォルトスレーブブロック１０４）とを備える。マスターブロック１０１と、スレーブブロック１０２及び１０３とは、アドレス信号線１１２と、データ信号線１１３と、リード・ライト信号線１０８と、応答信号線１０９とによって接続されている。また、マスターブロック１０１とデフォルトスレーブブロック１０４とは、アドレス信号線１１２と、応答信号線１０９とによって接続されている。
【０００７】
マスターブロック１０１は、例えば中央演算処理装置（ＣＰＵ）等である。マスターブロック１０１は、各機能ブロックと関連付けされたアドレス信号ＡＤＤＲを生成し、アドレス信号線１１２を介して各機能ブロックへ送信する。このときアドレス信号ＡＤＤＲは、アドレス信号線１１２を介してデフォルトスレーブブロック１０４にも送信される。また、マスターブロック１０１は、各機能ブロックとデータ信号線１１３を介してデータ信号ＤＡＴＡの授受を行う。また、マスターブロック１０１は、リードサイクル若しくはライトサイクルであることを指示するリード・ライト信号Ｗ／Ｒを生成し、リード・ライト信号線１０８を介して各機能ブロックへ送信する。また、マスターブロック１０１は、クロック信号の供給／停止を指示するクロック制御信号（クロック停止要求信号）ＣＫＳＴＯＰ１及びＣＫＳＴＯＰ２を生成し、クロック制御信号線１１０及び１１１を介してクロック信号制御手段１０６及び１０７に送信する。本実施の形態では、クロック制御信号ＣＫＳＴＯＰ１、ＣＫＳＴＯＰ２の論理値が“０”のときにクロック信号の供給を指示し、クロック制御信号ＣＫＳＴＯＰ１、ＣＫＳＴＯＰ２の論理値が“１”のときにクロック信号の供給の停止を指示する。ここで、クロック制御信号の論理値“１”はハイレベル（以下、“Ｈ”とする）の電位に対応し、クロック制御信号の論理値“０”はローレベル（以下、“Ｌ”とする）の電位に対応する。
【０００８】
機能ブロック（スレーブブロック１０２及び１０３）は、例えばメモリ等である。スレーブブロック１０２及び１０３は、応答信号線１０９を介して、バスアクセスの完了状態を示す応答信号ＲＥＳＰをマスターブロック１０１に出力する。ここで、図２を参照して応答信号ＲＥＳＰについて説明する。図２は、応答信号ＲＥＳＰの論理値とバスアクセスの完了状態との関係を示す表である。本実施の形態において、応答信号ＲＥＳＰは２ビットで構成される。応答信号ＲＥＳＰは、論理値“００”のときに「アクセス無し“ＮＯ”」を示し、論理値“０１”のときに「正常終了“ＯＫ”」を示し、論理値“１０”のときに「異常終了“ＥＲＲ”」を示し、論理値“１１”のときに「予約」を示す。
【０００９】
クロック信号制御手段１０６、１０７（ともに図１に示される）は、マスターブロック１０１で生成されるクロック制御信号ＣＫＳＴＯＰ１、ＣＫＳＴＯＰ２に応答して、スレーブブロック１０２、１０３へのクロック信号の供給／停止を制御する。クロック信号制御手段１０６及び１０７は論理和回路（ＯＲ回路）で構成される。以下、クロック信号制御手段１０６及び１０７を、ＯＲ回路１０６及び１０７という。ＯＲ回路１０６の２つの入力端子のうち一方の入力端子にはクロック制御信号ＣＫＳＴＯＰ１が入力され、他方の入力端子にはクロック信号ＣＬＯＣＫが入力される。ＯＲ回路１０６の出力信号ＣＫ１は、スレーブブロック１０２に供給される。ＯＲ回路１０６は、クロック制御信号ＣＫＳＴＯＰ１が“Ｌ”（論理値“０”）のとき、すなわち、クロック信号の供給を指示するとき、クロック信号ＣＬＯＣＫと同波形のクロック信号ＣＫ１を出力し、クロック制御信号ＣＫＳＴＯＰ１が“Ｈ”（論理値“１”）のとき（クロック信号の供給の停止を指示するとき）“Ｈ”（論理値“１”）の信号を出力する。すなわち、クロック制御信号ＣＫＳＴＯＰ１が“Ｈ”（論理値“１”）のとき、スレーブブロック１０２へのクロック信号の供給は停止される。
【００１０】
また、ＯＲ回路１０７の２つの入力端子のうち一方の入力端子にはクロック制御信号ＣＫＳＴＯＰ２が入力され、他方の入力端子にはクロック信号ＣＬＯＣＫが入力される。ＯＲ回路１０７の出力信号ＣＫ２は、スレーブブロック１０３に供給される。ＯＲ回路１０７は、クロック制御信号ＣＫＳＴＯＰ２が“Ｌ”（論理値“０”）のとき、すなわち、クロック信号の供給を指示するとき、クロック信号ＣＬＯＣＫと同波形のクロック信号ＣＫ２を出力し、クロック制御信号ＣＫＳＴＯＰ２が“Ｈ”（論理値“１”）のとき（クロック信号の供給の停止を指示するとき）“Ｈ”（論理値“１”）の信号を出力する。すなわち、クロック制御信号ＣＫＳＴＯＰ２が“Ｈ”（論理値“１”）のとき、スレーブブロック１０３へのクロック信号の供給は停止される。
【００１１】
デフォルトスレーブブロック１０４は、アドレス信号ＡＤＤＲと、クロック制御信号ＣＫＳＴＯＰ１若しくはＣＫＳＴＯＰ２とに基づいて応答信号ＲＥＳＰをマスターブロック１０１に出力する。デフォルトスレーブブロック１０４は、スレーブブロック１０２へのクロック信号ＣＫ１の供給が停止しているとき、すなわち、クロック制御信号ＣＫＳＴＯＰ１が“Ｈ”（論理値“１”）のとき、スレーブブロック１０２に代わり応答信号ＲＥＳＰ“１０”（異常終了“ＥＲＲ”）をマスターブロック１０１に出力する。また、デフォルトスレーブブロック１０４は、スレーブブロック１０３へのクロック信号ＣＫ２の供給が停止しているとき、すなわち、クロック制御信号ＣＫＳＴＯＰ２が“Ｈ”（論理値“１”）のとき、スレーブブロック１０３に代わり応答信号ＲＥＳＰ“１０”（異常終了“ＥＲＲ”）をマスターブロック１０１に出力する。
【００１２】
ここで、デフォルトスレーブブロック１０４について図３を参照してさらに詳しく説明する。図３は、図１に示したマイコンのデフォルトスレーブブロック１０４の構成を示す回路ブロック図である。デフォルトスレーブブロック１０４は、アドレス信号ＡＤＤＲをデコードするデコード手段（デコード部３０１）と、クロック制御信号ＣＫＳＴＯＰ１、ＣＫＳＴＯＰ２とデコード部３０１の出力信号ｓｅｌ０〜ｓｅｌ２とに基づいてＳＥＬＥＣＴ信号を出力する論理回路部３０２と、ＳＥＬＥＣＴ信号に応答して応答信号ＲＥＳＰを出力する機能ブロック３０３とから構成される。
【００１３】
デコード部３０１は、デコード回路３０４、３０５、及び３０６で構成される。本実施の形態において、デコード回路３０４は、アドレス信号ＡＤＤＲがスレーブブロック１０２（図１）に対応するものであるとき“Ｈ”（論理値“１”）のｓｅｌ１信号を出力し、アドレス信号ＡＤＤＲがスレーブブロック１０２に対応するものでないとき“Ｌ”（論理値“０”）のｓｅｌ１信号を出力する。 デコード回路３０５は、アドレス信号ＡＤＤＲがスレーブブロック１０３に対応するものであるとき“Ｈ”（論理値“１”）の信号をｓｅｌ２信号として出力し、アドレス信号ＡＤＤＲがスレーブブロック１０３に対応するものでないとき“Ｌ”（論理値“０”）のｓｅｌ２信号を出力する。デコード回路３０６は、アドレス信号ＡＤＤＲがスレーブブロック１０１若しくは１０２のどちらにも対応しないものであるとき“Ｈ”（論理値“１”）のｓｅｌ０信号を出力し、アドレス信号ＡＤＤＲがスレーブブロック１０１（図１）若しくは１０２（図１）のどちらか一方に対応するものであるとき“Ｌ”（論理値“０”）のｓｅｌ０信号を出力する。
【００１４】
論理回路部３０２は、論理積回路（ＡＮＤ回路）３０７及び３０８と、論理和回路（ＯＲ回路３０９）とから構成される。ＡＮＤ回路３０７はクロック制御信号ＣＫＳＴＯＰ１とｓｅｌ１信号とを入力とし、ＡＮＤ回路３０８はクロック制御信号ＣＫＳＴＯＰ２とｓｅｌ２信号とを入力とする。また、ＯＲ回路３０９は、ＡＮＤ回路３０７の出力信号と、ＡＮＤ回路３０８の出力信号と、デコード回路３０６の出力ｓｅｌ０信号とを入力とし、論理和演算の結果をＳＥＬＥＣＴ信号として機能ブロック３０３に出力する。ＳＥＬＥＣＴ信号は、クロック制御信号ＣＫＳＴＯＰ１が“Ｈ”（論理値“１”）でかつ信号ｓｅｌ１が“Ｈ”（論理値“１”）の場合、若しくはクロック制御信号ＣＫＳＴＯＰ２が“Ｈ”（論理値“１”）でかつ信号ｓｅｌ２が“Ｈ”（論理値“１”）の場合、若しくは信号ｓｅｌ０が“Ｈ”（論理値“１”）の場合のいずれか１つの場合に“Ｈ”（論理値“１”）となり、いずれにも該当しない場合は“Ｌ”（論理値“０”）となる。すなわち、ＳＥＬＥＣＴ信号は、クロック信号ＣＫ１の供給が停止しているスレーブブロック１０２（図１）に対してアクセスが行われた場合、若しくはクロック信号ＣＫ２の供給が停止しているスレーブブロック１０３（図１）に対してアクセスが行われた場合、若しくはアドレス信号ＡＤＤＲに対応する機能ブロックが存在しない場合のいずれか１つの場合に“Ｈ”（論理値“１”）となり、いずれにも該当しない場合は“Ｌ”（論理値“０”）となる。機能ブロック３０３は、ＳＥＬＥＣＴ信号が“Ｈ”（論理値“１”）のとき、応答信号ＲＥＳＰ“１０”（異常終了“ＥＲＲ”）を出力する。
【００１５】
次に、図４を参照して本実施の形態に係るマイクロコントローラの動作について説明する。図４は、第１の実施の形態に係るマイクロコントローラの動作を示す動作波形図である。図４は、上から順にクロック信号ＣＬＯＣＫ、マスターブロック１０１の入力／出力信号（図中「Ａ」と表す）、スレーブブロック１０２の入力／出力信号（図中「Ｂ」と表す）、デフォルトスレーブブロック１０４の内部信号（図中「Ｃ」と表す）を示す。図４の横方向は時刻を示す。なお、クロック制御信号ＣＫＳＴＯＰ１は、時刻ｔ４まで“Ｌ”（論理値“０”）であり、時刻ｔ４から“Ｈ”（論理値“１”）となる。すなわち、時刻ｔ４まではスレーブブロック１０２にクロック信号ＣＫ２が供給されている状態であり、時刻ｔ４からはスレーブブロック１０２へのクロック信号ＣＫ２の供給が停止されている状態である（ＣＫ１）。ここでは、スレーブブロック１０２に対するマスターブロック１０１のアクセスが正常終了した場合（時刻ｔ１〜時刻ｔ３）と、スレーブブロック１０２に対するマスターブロック１０１のアクセスが異常終了した場合（時刻ｔ５〜時刻ｔ７）とについて説明する。
【００１６】
時刻ｔ１において、マスターブロック１０１から、スレーブブロック１０２に対応するアドレス信号ＡＤＤＲと「リードアクセス」であることを指示するリード・ライト信号Ｗ／Ｒとが出力され、マスターブロック１０２に対するリードサイクルに入る。この時、クロック制御信号ＣＫＳＴＯＰ１は“Ｌ”（論理値“０”）であり、スレーブブロック１０２にはクロック信号ＣＫ１が供給されている。マスターブロック１０２は、クロック信号ＣＫ１が供給されているため動作状態である。
【００１７】
デフォルトスレーブブロック１０４のｓｅｌ１信号は、アドレス信号ＡＤＤＲがスレーブブロック１０２に対応するアドレスであるため、“Ｈ”（論理値“１”）となるが、クロック制御信号ＣＫＳＴＯＰ１が“Ｌ”（論理値“０”）となっているためＳＥＬＥＣＴ信号は“Ｌ”（論理値“０”）のままである。
【００１８】
時刻ｔ２において、スレーブブロック１０２からデータが正常に出力されることにより、スレーブブロック１０２は“０１”（正常終了“ＯＫ”）の応答信号ＲＥＳＰを出力する。時刻ｔ３において、リードサイクルが正常に終了する。
【００１９】
時刻ｔ４において、マスターブロック１０１から“Ｈ”（論理値“１”）のクロック制御信号ＣＫＳＴＯＰ１が出力される。クロック制御信号ＣＫＳＴＯＰ１が“Ｈ” （論理値“１”）となることによりＯＲ回路１０６の出力信号ＣＫ１は“Ｈ” （論理値“１”）を維持する。すなわち、クロック制御信号ＣＫＳＴＯＰ１が“Ｈ” （論理値“１”）となることにより、スレーブブロック１０２へのクロック信号ＣＫ１の供給は停止される。スレーブブロック１０２は、クロック信号の供給が停止されることにより、非活性状態（動作していない状態）となる。
【００２０】
時刻ｔ５において、マスターブロック１０１から、スレーブブロック１０２に対応するアドレス信号ＡＤＤＲと「ライトアクセス」であることを指示するリード・ライト信号Ｗ／Ｒとが出力される。しかし、スレーブブロック１０２は、非活性状態となっているためデータの取り込みだけでなく、ライトアクセスが異常であることを示す“１０”（異常終了“ＥＲＲ”）の応答信号ＲＥＳＰの出力も行うことができない。この時、デフォルトスレーブブロック１０４では、アドレス信号ＡＤＤＲがスレーブブロック１０２に対応するものであるため、ｓｅｌ１信号が“Ｈ”（論理値“１”）となる。ＡＮＤ回路３０７は、この“Ｈ”（論理値“１”）のｓｅｌ１信号と“Ｈ”（論理値“１”）のクロック制御信号ＣＫＳＴＯＰ１とに基づいて “Ｈ”（論理値“１”）のＳＥＬＥＣＴ信号を出力する。
【００２１】
時刻ｔ６において、機能ブロック３０３は、“Ｈ”（論理値“１”）のＳＥＬＥＣＴ信号に応答して“１０”（異常終了“ＥＲＲ”）の応答信号ＲＥＳＰを出力する。このように、デフォルトスレーブブロック１０４は、クロック信号ＣＫ２の供給が停止しているスレーブブロック１０２に代わりライトアクセスが異常（エラー）であることを示す応答信号ＲＥＳＰをマスターブロック１０１に出力する。
【００２２】
時刻ｔ７において、デフォルトスレーブブロック１０４から出力された“１０”（異常終了“ＥＲＲ”）の応答信号ＲＥＳＰに応答して、マスターブロック１０１はスレーブブロックへのライトアクセスを終了する。
【００２３】
以上説明したように、本実施の形態に係るマイクロコントローラは、クロック信号の供給が停止された機能ブロック（例えば、スレーブブロック１０２）に対してアクセスが行われた場合に、その機能ブロックに代わり、その機能ブロックへのアクセスが異常であることを示す応答信号ＲＥＳＰを出力する応答手段（デフォルトスレーブブロック１０４）を有するため、クロック信号の供給が停止されている機能ブロックへのアクセスが行われた場合でも、マスターブロック（ＣＰＵ等）のアクセス動作を中止させることができる。すなわち、本実施の形態に係るマイクロコントローラは、以上説明した応答手段（デフォルトスレーブブロック１０４）を有するため、クロック信号の供給が停止している機能ブロックへのアクセスが行われた場合に、マスターブロックがアクセス動作を維持しつつけることによる電力の消費を防止することができ低消費電力化を図ることができる。
【００２４】
（第２の実施の形態）
次に、本発明の第２の実施の形態について説明する。図５は、本発明の第２の実施の形態に係るマイクロコントローラ（以下、マイコンという）の構成を示す回路ブロック図である。本実施の形態に係るマイコンにおいて、図１に示した第１の実施の形態に係るマイコンと異なる点は、各機能ブロック（スレーブブロック５０２及び５０３）ごとに、クロック信号の供給が停止された場合でも応答信号ＲＥＳＰを出力することができる応答手段を設けた点である。デフォルトスレーブブロック５０４は、マスターブロック１０１から出力されるアドレス信号ＡＤＤＲに対応する機能ブロックが存在しない場合にのみアクセスが異常（エラー）であることを示す応答信号ＲＥＳＰを出力する。
【００２５】
ここで、スレーブブロック５０２について図６を参照して詳細に説明する。図６は、本発明の第２の実施の形態に係るマイクロコントローラのスレーブブロックの構成を示す回路図である。なお、スレーブブロック５０３もスレーブブロック５０２と同様の構成となっている。スレーブブロック５０２は、第１の実施の形態のスレーブブロック１０２にさらに停止制御部６００を設けたものであり、アドレス信号ＡＤＤＲをデコードするデコード回路６１１と、所定の機能を実行する回路ブロック６１０と、回路ブロック６１０に代わり応答信号ＲＥＳＰを出力する停止制御部６００とから構成される。停止制御部６００は、クロック制御信号ＣＫＳＴＯＰ１とデコード回路６１１から出力されるアドレス信号ＡＤＤＲのデコード結果（ＳＥＬＥＣＴ信号）とに基づいて選択信号ｓｅｌを生成する選択信号生成部６０１と、選択信号ｓｅｌに応答して、バスアクセスの完了状態を示す固定値（ここでは、「異常終了“ＥＲＲ”」）若しくはバスアクセスの完了状態「アクセス無し“ＮＯ”」のどちらか一方を選択して出力する選択回路６０２と、応答信号ＲＥＳＰを出力する応答信号出力回路６０７とから構成される。
【００２６】
選択信号生成部６０１は、クロック制御信号ＣＫＳＴＯＰ１を反転して出力するインバータ６０３と、クロック信号ＣＬＯＣＫとインバータ６０３の出力信号との論理和演算を行う論理和回路（OR回路）６０４と、アドレス信号ＡＤＤＲのデコード結果であるＳＥＬＥＣＴ信号とＯＲ回路６０４の出力信号とに基づいて信号を出力するフリップフロップ回路（以下、Ｆ／Ｆ回路という）６０５と、ＳＥＬＥＣＴ信号とＦ／Ｆ回路６０５の出力信号とに基づいて論理積演算を行い、その結果を選択信号ｓｅｌとして選択回路６０２に出力する論理積回路（ＡＮＤ回路）６０６とから構成される。
【００２７】
選択信号生成部６０１は、クロック信号ＣＫ１の供給が停止されているスレーブブロック５０２に対してマスターブロック１０１がアクセスを行った場合に、選択回路６０２にアクセスの完了状態を示す信号（ここでは、「異常終了“ＥＲＲ”」）を出力することを指示する選択信号ｓｅｌを出力する。また、それ以外の場合は、選択回路６０２にアクセス完了状態「アクセス無し“ＮＯ”」を出力することを指示する選択信号ｓｅｌを出力する。具体的には、クロック制御信号ＣＫＳＴＯＰ１が“Ｈ”（論理値“１”）であり、かつ、アドレス信号ＡＤＤＲがスレーブブロック１０２に対応するものである（すなわち、ＳＥＬＥＣＴ信号が“Ｈ”（論理値“１”）である）時に、論理値“１”の選択信号ｓｅｌを出力する。また、（クロック停止要求信号ＣＫＳＴＯＰ１，ＳＥＬＥＣＴ信号）＝（０，０）、（０，１）、（１，０）の時は、論理値“０”の選択信号ｓｅｌを出力する。
【００２８】
選択回路６０２は、選択信号ｓｅｌが論理値“１”の時に「異常終了“ＥＲＲ”」を出力し、選択信号ｓｅｌが論理値“０”の時に「アクセス無し“ＮＯ”」を出力する。ＯＲ回路６０７は、選択回路６０２の出力信号と、メモリ６１０のＲＥＳＰ１信号との論理和演算を行い、その結果を応答信号ＲＥＳＰとして出力する。
【００２９】
次に、図７を参照して本実施の形態に係るマイコンの動作について説明する。図７は、本発明の第２の実施の形態に係るマイコンの動作を示す動作波形図である。図７は、上から順にクロック信号ＣＬＯＣＫ、マスターブロック１０１の入力／出力信号（図中「Ａ」と表す）、スレーブブロック５０２の入力／出力信号（図中「Ｂ」と表す）、停止制御部の各信号（図中「Ｃ」と表す）を示す。図７の横方向は時刻を示す。なお、クロック制御信号ＣＫＳＴＯＰ１は、時刻ｔ１まで“Ｌ”（論理値“０”）であり、時刻ｔ１から“Ｈ”（論理値“１”）となる。すなわち、時刻ｔ１までは回路ブロック６１０にクロック信号ＣＫ１が供給されている状態であり、時刻ｔ１からは回路ブロック６１０へのクロック信号ＣＫ１の供給が停止されている状態である。ここでは、回路ブロック６１０へのクロック信号の供給が停止している時に、マスターブロック１０１から回路ブロック６１０にアクセスが行われた場合（時刻ｔ１〜時刻ｔ４）について説明する。
【００３０】
時刻ｔ１において、マスターブロック１０１から“Ｈ”（論理値“１”）のクロック制御信号ＣＫＳＴＯＰ１が出力される。クロック制御信号ＣＫＳＴＯＰ１が“Ｈ” （論理値“１”）となることにより、ＯＲ回路１０６の出力信号ＣＫ１は“Ｈ”を維持する。すなわち、クロック制御信号ＣＫＳＴＯＰ１が“Ｈ”（論理値“１”）となることにより、回路ブロック６１０へのクロック信号ＣＫ１の供給は停止される。回路ブロック６１０は、クロック信号ＣＫ１の供給が停止することにより、非活性状態（動作していない状態）となる。この時、ＯＲ回路６０４の出力信号であるＳＣＫ１は、クロック制御信号ＣＫＳＴＯＰ１がインバータ６０３で反転されるため、クロック信号ＣＬＯＣＫと同波形の信号となる。
【００３１】
時刻ｔ２において、マスターブロック１０１から、スレーブブロック５０２に対応するアドレス信号ＡＤＤＲと「ライトアクセス」を指示するライト・リード信号Ｗ／Ｒとが出力される。しかし、メモリ６１０は非活性状態となっているため、データの取り込みだけでなく、ライトアクセスが異常であることを示す応答信号ＲＥＳＰ「“１０”（異常終了“ＥＲＲ”）」の出力も行うことができない。この時、停止制御部６００に入力されるＳＥＬＥＣＴ信号（アドレス信号ＡＤＤＲのデコード結果）は“Ｈ”（論理値“１”）となっている。
【００３２】
時刻ｔ３において、選択回路６０２から「“１０”（異常終了“ＥＲＲ”）」のＳＲＥＳＰ信号が出力される。ここで、この動作について詳細に説明する。“Ｈ”（論理値“１”）のクロック制御信号ＣＫＳＴＯＰ１は、インバータ６０３により反転され“Ｌ”（論理値“０”）の信号としてＯＲ回路６０４に入力される。ＯＲ回路６０４では、インバータ６０３の出力信号とクロック信号ＣＬＯＣＫとの論理和演算を行い、クロック信号ＣＬＯＣＫと同波形の信号ＳＣＫ１をＦ／Ｆ回路６０５に出力する。ここで、Ｆ／Ｆ回路６０５には“Ｈ”（論理値“１”）のＳＥＬＥＣＴ信号が入力されている。Ｆ／Ｆ回路６０５は、ＳＣＫ１信号の立ち上がりで“Ｈ”（論理値“１”）のＳＥＬＥＣＴ信号を取り込み、ＡＮＤ回路６０６に“Ｈ”（論理値“１”）の信号を出力する。ＡＮＤ回路６０６は、このＦ／Ｆ回路６０５の出力信号と“Ｈ”（論理値“１”）のＳＥＬＥＣＴ信号との論理積演算を行い、“Ｈ”（論理値“１”）の選択信号ｓｅｌを選択回路６０２に出力する。選択回路６０２は、“Ｈ”（論理値“１”）の選択信号に応答して「“１０”（異常終了“ＥＲＲ”）」のＳＲＥＳＰ信号を出力する。ＯＲ回路６０７は、選択回路６０２から出力される“１０”（異常終了“ＥＲＲ”）のＳＲＥＳＰ信号を応答信号ＲＥＳＰとして出力する。
【００３３】
時刻ｔ４において、マスターブロック１０１は、停止制御部６００から出力された「“１０”（異常終了“ＥＲＲ”）」の応答信号ＲＥＳＰに応答して、スレーブブロック５０２に対応するアドレス信号ＡＤＤＲ及びライト・リード信号Ｗ／Ｒの出力を停止し、スレーブブロック５０２へのライトアクセスを終了する。
【００３４】
以上説明したように、本実施の形態に係るマイクロコントローラは、クロック信号の供給が停止された機能ブロック（例えば、回路ブロック６１０）に対してアクセスが行われた場合に、その回路ブロックに代わり、アクセスが異常であることを示す応答信号ＲＥＳＰを出力する応答手段（停止制御部６００）を有するため、クロック信号の供給が停止している機能ブロックへのアクセスが行われた場合に、マスターブロック１０１がアクセス動作を維持しつつけることによる電力の消費を防止することができ低消費電力化を図ることができる。また、本実施の形態に係るマイクロコントローラは、各機能ブロック（スレーブブロック１０２及び１０３）毎に応答手段を有するため、各機能ブロック毎に異なる応答信号を設定することができマイコン制御の自由度が増す。
【００３５】
ここで、本実施の形態に係るマイクロコントローラの停止制御部の他の構成について説明する。図８は、本発明の第２の実施の形態に係るマイクロコントローラ（以下、マイコンという）の停止制御部の他の構成を示す回路図である。本実施の形態に係るマイコンにおいて、図６に示した停止制御部と異なる点は、選択回路６０２の入力信号を回路ブロック６１０から供給するように変更した点である。回路ブロック６０２に入力される信号は回路ブロック６１０のＲＥＳＰ＿ＲＥＧ端子から出力される。この選択回路６０２に入力される信号は、外部からのプログラム入力により回路ブロック６１０に設定することができる。
【００３６】
【発明の効果】
以上詳細に説明したように、この発明の代表的なものによれば、クロック信号の供給が停止された機能ブロックに対してアクセスが行われた場合に、その機能ブロックに代わり、機能ブロックへのアクセスが異常であることを示す応答信号を出力する応答手段を有することにより、クロック信号の供給が停止された機能ブロックに対してアクセスが行われた場合にもそのアクセスを終了させることができマイクロコントローラ全体として低消費電力化を図ることができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係るマイクロコントローラの構成を示す回路ブロック図
【図２】応答信号ＲＥＳＰの論理値とバスアクセスの完了状態との関係を示す表
【図３】図１に示したマイコンのデフォルトスレーブブロック１０４の構成を示す回路ブロック図
【図４】第１の実施の形態に係るマイクロコントローラの動作を示す動作波形図
【図５】本発明の第２の実施の形態に係るマイクロコントローラの構成を示す回路ブロック図
【図６】本発明の第２の実施の形態に係るマイクロコントローラのスレーブブロックの構成を示す回路図
【図７】本発明の第２の実施の形態に係るマイコンの動作を示す動作波形図
【図８】本発明の第２の実施の形態に係るマイクロコントローラの停止制御部の他の構成を示す回路図
【符号の説明】
１０１  マスターブロック
１０２  スレーブブロック
１０３  スレーブブロック
１０４  デフォルトスレーブブロック
１０５  クロック信号線
１０６  クロック信号制御手段
１０７  クロック信号制御手段
１０８  ライト・リード信号線
１０９  応答信号線
１１０  クロック制御信号線
１１１  クロック制御信号線
１１２  アドレス信号線
１１３  データ信号線
ＣＬＯＣＫ  クロック信号
ＡＤＤＲ  アドレス信号
ＤＡＴＡ  データ信号
Ｗ／Ｒ  ライト・リード信号
ＲＥＳＰ  応答信号
ＣＫＳＴＯＰ１  クロック制御信号
ＣＫＳＴＯＰ２  クロック制御信号
【図１】
0003665624.tif 000002
【図２】
0003665624.tif 000003
【図３】
0003665624.tif 000004
【図４】
0003665624.tif 000005
【図５】
0003665624.tif 000006
【図６】
0003665624.tif 000007
【図７】
0003665624.tif 000008
【図８】
0003665624.tif 000009