(57)【要約】【課題】  システム全体のパフォーマンスを高めることができるマイクロコントローラを提供する。【解決手段】  実行中の割り込み処理の継続時間をタイマで計測し、計測した継続時間が所定値を超えたときに割り込みディセーブル状態から割り込みイネーブル状態に変化させるＣＰＵ２０と、タイマが計測した継続時間が所定値を超えたときに、起動された割り込み処理の優先順位が低くなるように優先順位を設定する割り込みコントローラ１０とを備えた。【選択図】  図１
2010117770.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵを備えたマイクロコントローラであって、
要求された割り込み処理の起動が禁止された割り込みディセーブル状態と、要求された割り込み処理の起動が許可された割り込みイネーブル状態とを有し、
前記ＣＰＵにおいて実行中の割り込み処理の継続時間を計測するタイマと、該タイマが計測した継続時間が所定値を超えたときに、前記ＣＰＵを割り込みディセーブル状態から割り込みイネーブル状態に変化させる割り込みイネーブル変更信号を生成する割り込み制御部を備えたことを特徴とするマイクロコントローラ。
【請求項２】
前記ＣＰＵで実行するソフトウエアが参照可能な履歴フラグ記録部をさらに備え、前記割り込みイネーブル変更信号が生成されたときに該履歴フラグ記録部にフラグを設定することを特徴とする請求項１記載のマイクロコントローラ。
【請求項３】
要因ごとに優先順位が設定された割り込み処理の要求を受信し、前記ＣＰＵにおいて実行中の割り込み処理よりも高い優先順位を有する割り込み処理の要求を受信したときに、該要求を受け付け、前記ＣＰＵに対して該受け付けた割り込み処理の起動を要求する割り込みコントローラであって、
前記タイマが計測した継続時間が前記所定値を超えたときに、該起動された割り込み処理の優先順位が低くなるように前記優先順位を設定する優先順位設定部を備える割り込みコントローラをさらに備えたことを特徴とする請求項１または２記載のマイクロコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵを備えたマイクロコントローラに関する。
【背景技術】
【０００２】
従来より、ＣＰＵを備え、要求された割り込み処理を行うとともに、この割り込み処理の実行時間を監視するマイクロコントローラが知られている。
【０００３】
例えば、特許文献１には、割り込み許可信号が‘０’（割り込みディセーブル状態）になったときからタイマ動作を開始し、タイマによる経過時間が監視時間値を超えたときに、監視時間超過信号を発生する技術が提案されている。この技術によれば、割り込み禁止状態が続いていることを感知して、使用者やプログラムに注意を喚起することができる。
【０００４】
また、特許文献２には、実行優先順位とともに実行時間が設定された各アプリケーションタスクの実行時間を実行時間監視部が監視し、実行時間が超過したことを検出したならば、優先順位変更部を起動して現在実行中のアプリケーションタスクの実行優先順位を下げる技術が提案されている。この技術によれば、障害が発生したタスクは優先順位が下げられるため、他の正常なタスクの実行周期に影響を与えずにシステムを正常に稼働することができる。
【特許文献１】特開平２−１８６２６号公報
【特許文献２】特開平５−２４１９０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
一般に、ＣＰＵを備えたマイクロコントローラにおいて、割り込みイネーブル状態で割り込み要求信号が受け付けられると、割り込みルーチンが起動されて割り込み処理が行なわれる。この割り込みルーチン実行時に、割り込みイネーブル状態であれば、さらに他の割り込みが受け付け可能であり（これを多重割り込みと称する）、一方割り込みディセーブル状態であれば、さらなる他の割り込みは受け付け不可となる。
【０００６】
一般的なマイクロコントローラでは、割り込みイネーブル状態で割り込みを受け付けた場合、自動的に割り込みディセーブルの状態となるため、多重割り込みを許可するためには、明示的にソフトウェアにより割り込みルーチン内で割り込みイネーブル操作を行なう必要がある。
【０００７】
ここで、多重割り込みを許可しない場合であって、予定以上に長時間にわたり処理が実行されている場合（割り込みルーチンから処理が抜け出せない状態に陥った場合等）、他の割り込み処理を行なうことはできず、その結果システム全体のパフォーマンスに支障が生じるという問題が発生する。換言すれば、ある処理に許される応答時間が規定されている場合、ある割り込みが発生した後に、その規定されている応答時間以内でその処理が開始されないと、システム全体が破綻してしまうという問題が発生する。
【０００８】
そこで、前記特許文献１では、タイマによる経過時間が監視時間値を超えたときに注意を喚起することが提案されている。しかし、特許文献１では、使用者やプログラムによる対処を求めるために注意を喚起するのみであり、マイクロコントローラが割り込みディセーブル状態を解除することは無い。
【０００９】
また、マイクロコントローラの中には、要因ごとに優先順位が設定された割り込み処理の要求を受信し、そのマイクロコントローラに備えられたＣＰＵで実行中の割り込み処理よりも高い優先順位を有する割り込み処理の要求を受信したときに、その要求を受け付け、ＣＰＵに対してその受け付けた割り込み処理の起動を要求する割り込みコントローラを備えたものがある。この割り込みコントローラでは、優先順位の高い割り込み要因による割り込みサービスを実行している場合、この割り込み要因よりも低い優先順位の割り込みを受け付けることはない。このため、優先順位の低い割り込み要因は、優先順位の高い割り込み処理が完了するまで、待たなければならない。
【００１０】
従って、例えば、優先順位の高い割り込みルーチン内で何らかの問題が発生し、想定以上の長時問、ＣＰＵで実行されている処理がこのルーチンから抜け出せない状態に陥った場合、優先順位の低い割り込み処理を行なうことができず、その結果システム全体のパフォーマンスに支障が生じるという問題がある。
【００１１】
前記特許文献２では、実行時間が超過したときに、現在実行中のアプリケーションタスクの実行優先順位を下げる技術が提案されている。しかしながら、現在実行中に割り込みルーチンの優先順位を下げたとしても、割り込みディセーブル状態が継続している限りは、他の割込処理を行うことはできない。
【００１２】
本発明は、上記事情に鑑み、システム全体のパフォーマンスを高めることができるマイクロコントローラを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成する本発明のマイクロコントローラは、
ＣＰＵを備えたマイクロコントローラであって、
要求された割り込み処理の起動が禁止された割り込みディセーブル状態と、要求された割り込み処理の起動が許可された割り込みイネーブル状態とを有し、
上記ＣＰＵにおいて実行中の割り込み処理の継続時間を計測するタイマと、そのタイマが計測した継続時間が所定値を超えたときに、上記ＣＰＵを割り込みディセーブル状態から割り込みイネーブル状態に変化させる割り込みイネーブル変更信号を生成する割り込み制御部を備えたことを特徴とする。
【００１４】
本発明のマイクロコントローラは、ＣＰＵにおいて実行中の割り込み処理の継続時間が所定値を超えたときに、上記ＣＰＵを割り込みディセーブル状態から割り込みイネーブル状態に変化させる構成である。この構成によれば、ＣＰＵが割り込みディセーブル状態であるか割り込みイネーブル状態であるかに拘わらず、ＣＰＵを割り込みイネーブル状態に変化させることができる。従って、例えば、多重割り込みを許可しない割り込みルーチン内で何らかの問題が発生し、長時間にわたりＣＰＵがこの割り込みルーチンから抜け出せない状態に陥った場合に、他の割り込みを強制的に許可することができる。従って、システム全体のパフォーマンスを高めることができる。
【００１５】
ここで、上記ＣＰＵで実行するソフトウエアが参照可能な履歴フラグ記録部をさらに備え、上記割り込みイネーブル変更信号が生成されたときにその履歴フラグ記録部にフラグを設定することが好ましい。
【００１６】
このようにすると、割り込みディセーブル状態から割り込みイネーブル状態に変化した場合、その変化をソフトウェアで確認することができる。従って、長時間にわたり割り込み処理が行なわれていた場合、その処理が有効か否か（その処理において何らかの問題が発生しているか否か）を判断することができる。
【００１７】
また、要因ごとに優先順位が設定された割り込み処理の要求を受信し、上記ＣＰＵにおいて実行中の割り込み処理よりも高い優先順位を有する割り込み処理の要求を受信したときに、その要求を受け付け、上記ＣＰＵに対してその受け付けた割り込み処理の起動を要求する割り込みコントローラであって、
上記タイマが計測した継続時間が上記所定値を超えたときに、その起動された割り込み処理の優先順位が低くなるように上記優先順位を設定する優先順位設定部を備える割り込みコントローラをさらに備えたことが好ましい。
【００１８】
このような割り込みコントローラを備えると、優先順位の高い割り込みルーチン内で何らかの問題が発生し、想定以上の長時問、ＣＰＵで実行されている処理がこのルーチンから抜け出せない状態に陥った場合であっても、優先順位の低い割り込み処理を行なうことができる。
【発明の効果】
【００１９】
本発明によれば、システム全体のパフォーマンスを高めることができるマイクロコントローラが提供される。
【発明を実施するための最良の形態】
【００２０】
以下、図面を参照して本発明の実施の形態を説明する。
【００２１】
図１は、本発明の一実施形態のマイクロコントローラの構成を示す図である。
【００２２】
図１に示すマイクロコントローラ１には、割り込みコントローラ１０と、ＣＰＵ２０が備えられている。
【００２３】
割り込みコントローラ１０には、要因ごとに優先順位が設定された割り込み処理の要求を示す割り込み要因信号ＩＲ０，ＩＲ１，ＩＲ２，ＩＲ３が入力される。ここでは、割り込み要因信号ＩＲ０，ＩＲ１，ＩＲ２，ＩＲ３の順に優先順位が高くなっているものとする。割り込みコントローラ１０の構成については後述するが、この割り込みコントローラ１０は、ＣＰＵ２０で実行中の割り込み処理よりも高い優先順位を有する割り込み処理の要求を示す割り込み要因信号を入力したときに、その要求を受け付け、ＣＰＵ２０に対して受け付けた割り込み処理の起動を要求する割り込み要求信号ＩＮＴ＿を出力する。また、割り込みコントローラ１０は、データバスを経由して外部にデータＤＯを出力する。
【００２４】
ＣＰＵ２０は、アドレス信号ＡＤＲ，リード信号ＲＤ，ライト信号ＷＤを外部に出力する。また、ＣＰＵ２０は、データバスを経由して外部からのデータＤＩを入力するとともに、データバスを経由して外部にデータＤＯを出力する。さらに、ＣＰＵ２０の詳細について図２を参照して説明する。
【００２５】
図２は、図１に示すＣＰＵの内部構成を示す図である。
【００２６】
図２に示すＣＰＵ２０には、割り込み処理部２１と、制御回路部２２と、レジスタ部２３と、演算部２４とが備えられている。割り込み処理部２１，制御回路部２２，レジスタ部２３，演算部２４には、リード信号ＲＤ，ライト信号ＷＤ等の制御信号ＣＮＴが入力される。
【００２７】
割り込み処理部２１は、図１に示す割り込みコントローラ１０からの割り込み要求信号ＩＮＴ＿の入力を受け、ＣＰＵ２０全体の制御を司る制御回路部２２へ割り込み要求を伝達する。
【００２８】
制御回路部２２は、ＣＰＵ２０が動作する期間のうちの割り込み処理を受け付けることが可能な期間になった時点で、割り込み処理部２１へ割り込み許可を与える。割り込み処理部２１は、この割り込み許可を受けて、割り込み許可信号ＩＮＴＡ＿を割り込みコントローラ１０に出力する。
【００２９】
レジスタ部２３は、データを保持する記憶用のラッチ回路から構成されており、このレジスタ部２３からは、あらかじめ読み込まれたプログラムコードによるデータが演算部２４へ出力される。
【００３０】
演算部２４は、レジスタ部２３からのデータを用いて論理演算や算術演算を行ない、その結果をレジスタ部２３へ書き戻す。
【００３１】
尚、ＣＰＵ２０が外部のメモリや１／０に対して、データの読み出しやデータの書き込みを行なう際に必要なアドレス信号ＡＤＲＳとデータＤＡＴＡは、レジスタ部２３から出力されるようになっている。さらに、ＣＰＵ２０の内部構成について、図３を参照して詳細に説明する。
【００３２】
図３は、図２に示す割り込み処理部およびレジスタ部の構成を示す図である。
【００３３】
図３に示す割り込み処理部２１には、フリップフロップ２１＿１と、アンドゲート２１＿２と、計測タイマ２１＿３（本発明にいうタイマの一例に相当）と、比較器２１＿４と、アンドゲート２１＿５，２１＿６と、オアゲート２１＿７とが備えられている。
【００３４】
一方、レジスタ部２３には、フリップフロップ２３＿１と、割り込みイネーブルレジスタ２３＿２と、設定値レジスタ２３＿３とが備えられている。
【００３５】
ここで、図３に示す割り込み許可信号ＩＮＴＡ＿は、割り込み処理部２１の図示しない部分で生成され、この割り込み処理部２１を構成するフリップフロップ２１＿１に、割り込み許可信号ＩＮＴＡ＿とクロック信号ＣＬＫが入力される。このフリップフロップ２１＿１と、次段のアンドゲート２１＿２とから、割り込み許可信号ＩＮＴＡ＿の立ち下がりエッジを検出する回路が構成される。この回路からの、割り込み許可信号ＩＮＴＡ＿の立ち下がりエッジが、計測タイマ２１＿３ヘのカウント開始信号ＣＯＵＮＴとなり、この計測タイマ２１＿３でクロック信号ＣＬＫのクロックをカウントすることにより割り込みサービスの継続時間が測定される。
【００３６】
一方、レジスタ部２３を構成する設定値レジスタ２３＿３には、ＣＰＵ２０が実行する命令により、任意の値がセットされる。また、割り込み処理部２１を構成する比較器２１＿４は、この設定値レジスタ２３＿３の値と計測タイマ２１＿３の値を比較する回路である。両者が一致した時点で比較器２１＿４から割り込みイネーブル変更信号ＩＥＣとして論理‘１’（‘Ｈ’レベル）が出力される。
【００３７】
レジスタ部２３を構成する割り込みイネーブルレジスタ２３＿２は、その値が、図２に示す制御回路部２２において、割り込み要求信号ＩＮＴ＿を受け付けるか否かの判断に使用される。詳細には、この図３に示す割り込みイネーブルレジスタ２３＿２は、割り込み許可信号ＩＮＴＡ＿の立ち下がりエッジに基づいて生成されるカウント開始信号ＣＯＵＮＴによってディセーブル状態になり、割り込みイネーブル信号ＩＥとして‘Ｌ’レベルを出力する。また、割り込みイネーブル変更信号ＩＥＣによってイネーブル状態になり、割り込みイネーブル信号ＩＥとして‘Ｈ’レベルを出力する。即ち、ＣＰＵ２０は、‘Ｈ’レベルの割り込みイネーブル信号ＩＥが出力されているときには、割り込みイネーブルの状態になっている。
【００３８】
一方、割り込みイネーブル変更信号ＩＥＣは、割り込みコントローラ１０（図１参照）ヘ‘優先順位変更要求信号ＰＣＲ’として出力される。また、この割り込みイネーブル変更信号ＩＥＣは、アンドゲート２１＿５，２１＿６，オアゲート２１＿７からなる回路に入力される。この回路からの出力はフリップフロップ２３＿１に入力され、このフリップフロップ２３＿１から履歴フラグＦ（割り込みイネーブル変更履歴フラグ）が出力される。尚、このフリップフロップ２３＿１が、本発明にいう履歴フラグ記録部の一例に相当する。この履歴フラグＦは、割り込み許可信号ＩＮＴＡ＿がアクティブ（‘Ｌ’レベル）になった時点でクリア（‘０’）され、計測タイマ２１＿３の値が設定値レジスタ２３＿３の値と同じになった時点でセット（‘１’）される。ソフトウェアでは、この履歴フラグＦを参照することで、そのルーチンでの処理が途中で問題が生じたものか否かを判定することが可能となる。
【００３９】
図４は、図１に示す割り込みコントローラの構成を示す図である。
【００４０】
図４に示す割り込みコントローラ１０には、割り込み要求レジスタ（ＩＲＲ）１１と、制御回路１２と、優先順位割当回路１３と、割り込みサービスレジスタ（ＩＳＲ）１４とが備えられている。
【００４１】
割り込み要求レジスタ１１には、割り込み処理の要求を示す割り込み要因信号ＩＲ０，ＩＲ１，ＩＲ２，ＩＲ３が入力される。尚、これら割り込み要因信号ＩＲ０，ＩＲ１，ＩＲ２，ＩＲ３の優先順位は、前述したように、割り込み要因信号ＩＲ０，ＩＲ１，ＩＲ２，ＩＲ３の順に高くなっている。この割り込み要求レジスタ１１では、割り込み要因信号ＩＲ０，ＩＲ１，ＩＲ２，ＩＲ３のいずれかの割り込み要因信号による割り込み要求が発生すると、その割り込み要因信号に該当するビットが‘１’にセットされる。その後、制御回路１２が、ＣＰＵ２０から割り込み許可信号ＩＮＴＡ＿を受信すると、その該当ビットは‘０’にリセットされる。
【００４２】
割り込みサービスレジスタ１４では、割り込みコントローラ１０が割り込みサービスを行なっていると、その割り込みサービスの該当ビットが‘１’にセットされる。また、そのサービスが終了すると該当ビットが‘０’にリセットされる。
【００４３】
優先順位割当回路１３は、本発明にいう優先順位設定部の一例に相当し、割り込み要因の優先順位の設定および割り当てを行なう。
【００４４】
制御回路１２は、割り込みの受け付け、割り込み要求のマスク、および割り込みサービスの割り当てを行なう。また、ＣＰＵ２０からの優先順位変更要求信号ＰＣＲを受けて、優先順位割当回路１３の優先順位の設定を、現在サービス中の割り込み要因に対応する優先順位が相対的に低下させるように変更する機能を有する。
【００４５】
さらに、制御回路１２は、いわゆる割り込みベクタ方式に要求される割り込みルーチンの開始アドレス（割り込みベクタ）を、データバス上に出力する機能を有する。
【００４６】
この制御回路１２は、割り込み要求レジスタ１１からの割り込み要求を受けると、割り込みサービスレジスタ１４を参照してＣＰＵ２０において実行中の割り込み処理（サービス）を把握するとともに、優先順位割当回路１３を利用して、割り込み要求レジスタ１１から受けた要求の割り込み要因の優先順位が、実行中の割り込み処理を要求する割り込み要因の優先順位に比較して高いか否かを（言い換えると、割り込み要求レジスタ１１から受けた要求の割り込み要因による割り込みサービスの優先順位が、実行中の割り込みサービスの優先順位に比較して高いか否かを）判断する。そして、実行中の割り込みサービスよりも高い優先順位を有する割り込みサービスの要求を受けたと判断したときには、その要求を受け付け、サービスの割り当てを実施し、ＣＰＵ２０に向けて割り込み要求信号ＩＮＴ＿を出力する。これにより、ＣＰＵ２０に対して割り込みの要求を行なう。ＣＰＵ２０は、この割り込み要求信号ＩＮＴ＿を受けて、割り込みが受け付け可能となった時点で割り込み許可信号ＩＮＴＡ＿を、この制卸回路１２に出力する。これを受けて、制御回路１２は、データバス上に割り込み要因に対応する割り込みベクタを出力し、さらにサービスを割り当てた要因に対応するビットについて、割り込みサービスレジスタ１４の該当ビットを‘１’に設定する。このようにして、割り込みサービスレジスタ１４の値を更新する。すなわち、割り込みサービスレジスタ１４の値が更新された時点で割り込みサービスが開始される。
【００４７】
図５は、図４に示す割り込みコントローラの、割り込み要求を受けてから割り込みサービスが開始されるまでのタイミングを示す図である。
【００４８】
最初の時点では、制御回路１２から出力される割り込み要求信号ＩＮＴ＿、およびＣＰＵ２０から出力される割り込み許可信号ＩＮＴＡ＿は、ともに‘Ｈ’レベルにある。
【００４９】
ここで、制御回路１２が割り込み要求レジスタ１１からの割り込み要求を受けると、この制御回路１２は、クロック信号ＣＬＫの最初のクロックの立ち上がりエッジで、割り込み要求信号ＩＮＴ＿を‘Ｈ’レベルから‘Ｌ’レベルに変化させる。この‘Ｌ’レベルの割り込み要求信号ＩＮＴ＿はＣＰＵ２０に入力される。
【００５０】
すると、ＣＰＵ２０は、次のクロックの立ち上がりエッジで、この‘Ｌ’レベルの割り込み要求信号ＩＮＴ＿を取り込む。さらに、ＣＰＵ２０は、その時点で割り込みが受け付け可能であった場合には、次のクロックの立ち上がりエッジで、割り込み許可信号ＩＮＴＡ＿を‘Ｈ’レベルから‘Ｌ’レベルに変化させる。
【００５１】
制卸回路１２では、これを受けて、さらに２つ目のクロックの立ち上がりエッジで、データバス上に割り込みベクタを出力する。
【００５２】
さらに次のクロックの立ち上がりエッジで、割り込みサービスレジスタ１４は、生成した割り込みベクタに対応する割込要因に基づいて該当ビットを「１」に設定する。これにより、割り込みサービスレジスタ１４の値を更新する。また、ＣＰＵ２０は、所定の時間の後に、割り込み許可信号ＩＮＴＡ＿を‘Ｌ’レベルから‘Ｈ’レベルに変化させる。
【００５３】
さらに、次のクロックの立ち上がりエッジで、割り込みサービスが開始される。また、制御回路１２は、割り込み許可信号ＩＮＴＡ＿が‘Ｈ’レベルになったことを受けて、さらに次のクロックの立ち上がりエッジで、割り込み要求信号ＩＮＴ＿を‘Ｌ’レベルから‘Ｈ’レベルに変化させる。
【００５４】
図６は、図１に示すマイクロコントローラの割り込みシーケンスの一例を示す図である。
【００５５】
ここでは、前述したように、割り込み要因信号ＩＲ０，ＩＲ１，ＩＲ２，ＩＲ３の順に優先順位が高くなっている。先ず、割り込み要因信号ＩＲ１が発生し、この割り込み要因信号ＩＲ１による割り込み処理が行なわれる。即ち、この割り込み要因信号ＩＲ１によるサービス状態になる。この割り込み処理中に、割り込み要因信号ＩＲ０が発生するが、この割り込み要因信号ＩＲ０の優先順位は、割り込み要因信号ＩＲ１よりも低いため、割り込み要因信号ＩＲ０による割り込み要求は受け付けられず、サービスは行なわれない。尚、この例では、割り込み要因信号ＩＲ２，ＩＲ３は発生しないものとする。また、割り込み要因信号ＩＲ１は長期化するものとする。
【００５６】
ここで、計測タイマ２１＿３（図３参照）の値が設定値レジスタ２３＿３の値と一致する。この時、優先順位変更要求信号ＰＣＲが有効となり、割り込み要因信号ＩＲ１，ＩＲ２，ＩＲ３，ＩＲ０の順に優先順位が高くなるように変更される。これに伴い、割り込み要因信号ＩＲ１によるサービスが中断され、割り込み要因信号ＩＲ０による割り込み処理が開始される。
【００５７】
尚、割り込みイネーブルレジスタ２３＿２は、割り込み要因信号ＩＲ１，ＩＲ０によるサービス開始直前まではイネーブル状態にある。このため、ＣＰＵ２０では、割り込み要求信号ＩＮＴ＿が受け付けられる。割り込み要求信号ＩＮＴ＿が受け付けられて、割り込み要因信号ＩＲ１，ＩＲ０によるサービスが開始されると、割り込みイネーブルレジスタ２３＿２はディセーブル状態になる。さらに、割り込みイネーブルレジスタ２３＿２は、計測タイマ２１＿３の値と設定値レジスタ２３＿３の値とが一致した時点でイネーブル状態となる。その後、割り込み要因信号ＩＲ０による割り込み処理が開始された時点でディセーブル状態となる。
【００５８】
以上説明したように、本実施形態のマイクロコントローラ１では、例えば多重割り込みを許可しない割り込みルーチン内で何らかの問題が発生し、長時間にわたりＣＰＵ２０が割り込みルーチンから抜け出せない状態に陥った場合に、低い優先順位の割り込みを許可することができる。従って、システム全体のパフォーマンスを高めることができる。
【００５９】
尚、本実施形態では、ＣＰＵ内に計測タイマを備えた例で説明したが、これに限られるものではなく、割り込みコントローラ内に計測タイマを備えてもよく、本発明は、ＣＰＵにおいて実行中の割り込み処理の継続時間を計測するタイマを、ＣＰＵ内と割り込みコントローラ内とのいずれに備えてもよい。
【図面の簡単な説明】
【００６０】
【図１】本発明の一実施形態のマイクロコントローラの構成を示す図である。
【図２】図１に示すＣＰＵの内部構成を示す図である。
【図３】図２に示す割り込み処理部およびレジスタ部の構成を示す図である。
【図４】図１に示す割り込みコントローラの構成を示す図である。
【図５】図４に示す割り込みコントローラの、割り込み要求を受けてから割り込みサービスが開始されるまでのタイミングを示す図である。
【図６】図１に示すマイクロコントローラの割り込みシーケンスの一例を示す図である。
【符号の説明】
【００６１】
１  マイクロコントローラ
１０  割り込みコントローラ
１１  割り込み要求レジスタ
１２  制御回路
１３  優先順位割当回路
１４  割り込みサービスレジスタ
２０  ＣＰＵ
２１  割り込み処理部
２１＿１，２３＿１  フリップフロップ
２１＿２，２１＿５，２１＿６  アンドゲート
２１＿３  計測タイマ
２１＿４  比較器
２１＿７  オアゲート
２２  制御回路部
２３  レジスタ部
２３＿２  割り込みイネーブルレジスタ
２３＿３  設定値レジスタ
２４  演算部
【図１】
2010117770.tif 000003
【図２】
2010117770.tif 000004
【図３】
2010117770.tif 000005
【図４】
2010117770.tif 000006
【図５】
2010117770.tif 000007
【図６】
2010117770.tif 000008