"CPUと、このCPUに対する割込みを発生させる1つ以上の周辺回路と、前記周辺回路が発生させた割込みを制御して、前記CPUに処理させる割込みコントローラと、前記割込みを前記CPUが処理するための割込みハンドラが記憶されるプログラムメモリと、前記プログラムメモリの一部がロードされる命令キャッシュとを備え、前記周辺回路は、前記CPUに対して割込みを発生させる要因となる事象の発生を初期段階で検出すると割込み予告信号を前記割込みコントローラに対して出力し、前記事象の発生が完了した段階で割込み信号を出力し、前記割込みコントローラは、前記割込み予告信号が入力されると、当該予告信号に対応する割込みハンドラを、前記プログラムメモリから前記命令キャッシュにロードさせる先読み処理を行い、その後、前記割込み予告信号に対応する割込み信号が入力された段階で前記先読み処理が完了していなければ、前記CPUに対して行う前記割込みの発生通知を保留することを特徴とするマイクロコンピュータ。前記周辺回路は、通信機能を備えており、外部より送信されたデータの受信処理を開始した以降から当該受信処理を完了するまでの間に、前記割込み予告信号を出力することを特徴とする請求項1記載のマイクロコンピュータ。前記周辺回路は、タイマ機能を備えており、タイマ割込み信号を発生させるタイミングよりも所定期間だけ遡行するタイミングで、前記割込み予告信号を出力することを特徴とする請求項1又は2記載のマイクロコンピュータ。前記周辺回路は、入力される信号のレベルがアクティブとなっていることを、m回以上連続して検出すると、前記信号がアクティブになったことを要因として割込み信号を発生させ、前記入力信号のアクティブレベルがn<m;n,mは自然数回以上連続した段階で、前記割込み予告信号を出力することを特徴とする請求項1ないし3の何れかに記載のマイクロコンピュータ。前記割込みコントローラは、前記先読み処理の実行中に、より優先度が高い割込みの予告信号が入力されると、前記先読み処理を中止して、前記優先度が高い割込みに対応する割込みハンドラの先読み処理を開始することを特徴とする請求項1ないし4の何れかに記載のマイクロコンピュータ。CPUと、このCPUに対する割込みを発生させる1つ以上の周辺回路と、前記周辺回路が発生させた割込みを制御して、前記CPUに処理させる割込みコントローラと、前記割込みを前記CPUが処理するための割込みハンドラが記憶されるプログラムメモリと、前記プログラムメモリの一部がロードされるキャッシュメモリと、このキャッシュメモリに対する書き込み及び読み出しを制御するキャッシュコントローラとで構成される命令キャッシュとを備え、前記割込みコントローラは、前記周辺回路が割込みを発生させると前記CPUに対して行う前記割込みの発生通知を保留して、当該割込みに対応する割込みハンドラを前記プログラムメモリから前記命令キャッシュにロードさせる先読み処理を行い、前記キャッシュコントローラは、前記先読み処理の実行中に、前記CPUからのアクセスにキャッシュミスが発生すると、その時点で前記CPUが割込み許可状態であった場合は前記先読み処理を優先して実行し、前記CPUが割込み禁止状態であった場合は、前記先読み処理を中止して、前記CPUがフェッチしようとする命令を、前記プログラムメモリから前記命令キャッシュにロードさせることを特徴とするマイクロコンピュータ。前記キャッシュコントローラは、前記先読み処理を優先して実行する際には、前記割込みコントローラに対して直ちに先読み処理の完了を通知し、前記割込みコントローラは、先読み処理の完了が通知されると、前記CPUに対して前記割込みの発生通知を行うことを特徴とする請求項6記載のマイクロコンピュータ。前記割込みコントローラは、前記先読み処理の実行中に、より優先度が高い割込みが発生すると前記先読み処理を中止して、前記優先度が高い割込みに対応する割込みハンドラの先読み処理を開始することを特徴とする請求項6又は7記載のマイクロコンピュータ。しかしながら、特許文献2の技術によればCPUの処理効率の低下は防止できるが、割込みが発生した時点からCPUが割込みハンドラの実行を開始するまでの時間,すなわち割込み応答性については、キャッシュメモリが割込みハンドラを先読みしなかった場合と全く変わらない。また、キャッシュメモリが割込みハンドラを先読みしている間に、CPUにおける通常処理の実行中にキャッシュミスが発生すると、先読みが完了するまでCPUの処理は停滞することになる。本発明は上記事情に鑑みてなされたものであり、その目的は、割込みをより効率的に処理できるマイクロコンピュータを提供することにある。請求項1記載のマイクロコンピュータによれば、周辺回路は、CPUに対して割込みを発生させる要因となる事象の発生を初期段階で検出すると、事前に割込み予告信号を割込みコントローラに対して出力し、前記事象の発生が完了した段階で割込み信号を出力する。そして、割込みコントローラは、割込み予告信号が入力されると、当該予告信号に対応する割込みハンドラをプログラムメモリから命令キャッシュにロードさせる先読み処理を行い、その後、前記割込み予告信号に対応する割込みが発生した段階で先読み処理が完了していなければ、CPUに対して行う前記割込みの発生通知を保留する。このように構成すれば、割込みコントローラは、割込み予告信号が出力された時点から割込みハンドラを命令キャッシュにロードさせる先読み処理を開始するので、対応する割込み信号が出力されるまでの期間に先読み処理を完了させることができ、CPUは、割込み信号が出力されると直ちに割込み処理に移行して、割込みハンドラの実行を開始できる。したがって、割込みが発生した時点から、当該割込みを処理するまでの応答性を向上させることができる。また、前記予告信号に対応する割込み信号が入力された段階で先読み処理が完了していなければ、割込みコントローラがCPUに対して行う前記割込みの発生通知を保留するので、先読み処理が完了した後にCPUに割込みハンドラの実行を開始させることができ、CPUの処理効率の低下を防止できる。請求項2記載のマイクロコンピュータによれば、通信機能を備えている周辺回路は、外部より送信されたデータの受信処理を開始した以降から当該受信処理を完了するまでの間に割込み予告信号を出力する。すなわち、外部よりデータの送信があれば、送信されたデータの受信が完了した時点でCPUに対して割込みを発生させることになるので、受信処理を開始した以降からその受信処理を完了するまでの間に割込み予告信号を出力すれば、割込みコントローラに割込みの発生を予告することができる。請求項3記載のマイクロコンピュータによれば、タイマ機能を備えている周辺回路は、タイマ割込み信号を発生させるタイミングよりも所定期間だけ遡行するタイミングで割込み予告信号を出力する。すなわち、一定周期でタイマ割込みを発生させる場合は、そのタイマのカウント値によって割込みを発生させるタイミングが決まるので、前記カウント値を参照すれば、タイマ割込み信号を発生させるタイミングよりも遡行するタイミングで割込み予告信号を出力することができる。請求項4記載のマイクロコンピュータによれば、入力信号レベルがアクティブの状態をm回以上連続して検出すると前記信号がアクティブになったと判定して割込み信号を発生させる周辺回路は、前記入力信号のアクティブレベルがn<m回以上連続した段階で割込み予告信号を出力する。一般に、上記のように構成される周辺回路は、入力信号のレベルがノイズの影響を受ける可能性があるため、その影響を排除する目的でアクティブの状態を連続してm回以上検出するようにしている。したがって、アクティブレベルがn<m回以上連続した段階でも、その後に入力信号がアクティブと判定される蓋然性は高いと言えるので、その時点で割込み予告信号を出力すれば、割込みコントローラに割込みの発生を予告することができる。請求項5記載のマイクロコンピュータによれば、割込みコントローラは、先読み処理の実行中に優先度が高い割込みの予告信号が入力されると、実行中の先読み処理を中止して、前記優先度が高い割込みに対応する割込みハンドラの先読み処理を開始する。したがって、CPUが先に処理する予定の割込みに対応するハンドラを、先に命令キャッシュにロードすることができる。請求項6記載のマイクロコンピュータによれば、割込みコントローラは、周辺回路が割込みを発生させるとCPUに対して行う割込みの発生通知を保留して、当該割込みに対応する割込みハンドラをプログラムメモリから命令キャッシュにロードさせる先読み処理を行う。そして、キャッシュコントローラは、先読み処理の実行中にCPUからのアクセスにキャッシュミスが発生すると、その時点でCPUが割込み許可状態であれば先読み処理を優先して実行し、割込み禁止状態であれば先読み処理を中止して、CPUがフェッチしようとする命令を命令キャッシュにロードさせる。すなわち、先読み処理の実行中にキャッシュミスが発生しても、CPUが割込み許可状態であれば先読み処理を優先することで、CPUに割込み処理を早期に実行させることができる。また、CPUが割込み禁止状態であれば、割込みの処理が直ちに開始されることはないので、CPUがフェッチしようとする命令を先に命令キャッシュにロードさせて、現在実行中の処理を優先させる。したがって、CPU側の割込みへの対応状態に応じて処理効率を向上させることができる。請求項7記載のマイクロコンピュータによれば、キャッシュコントローラは、先読み処理を優先して実行する際には、割込みコントローラに対して直ちに先読み処理の完了を通知し、割込みコントローラは、当該通知がなされるとCPUに対して割込みの発生通知を行うので、CPUを直ちに割込み処理に移行させることができる。請求項8記載のマイクロコンピュータによれば、割込みコントローラは、先読み処理の実行中に、より優先度が高い割込みが発生すると前記先読み処理を中止して、優先度が高い割込みに対応する割込みハンドラの先読み処理を開始する。したがって、割込みの優先度に対応して割込みハンドラの先読みを行うことができる。第1実施例以下、第1実施例について図1ないし図11を参照して説明する。図1は、マイクロコンピュータの構成を示す機能ブロック図である。マイクロコンピュータ1は、CPU2,プログラムメモリであるROM3,RAM4,命令キャッシュ5,データキャッシュ6,割込みコントローラ7,周辺回路8~10などで構成されている。CPU2,命令キャッシュ5,ROM3の間は専用のバスで接続されており、RAM4,データキャッシュ6,割込みコントローラ7,周辺回路8~10はシステムバス汎用バス11に接続されている。CPU2は、システムバス11に接続されているRAM4や周辺回路8~10に対しては、データキャッシュ6を介してアクセスする。周辺回路8~10は、割込みコントローラ7に対して割込み信号を出力すると共に、その割込み信号を出力する時点よりも以前に、後述する割込み予告信号を出力する。割込みコントローラ7は、CPU2に対して割込み要求信号と、その割込み要求の番号を通知する信号割込み要求番号通知とを出力し、CPU2は、割込みコントローラ7に対して割込み要求受理信号を出力する。また、割込みコントローラ7は、命令キャッシュ5に対して上記割込要求番号通知を、割込み処理先読み要求として出力する。そして、命令キャッシュ5は、割込みコントローラ7に対して先読み完了通知,又は先読み中止通知を出力する。図2は、割込みコントローラ7の内部構成を示す機能ブロック図である。優先順位指定レジスタ12には、CPU2により各割込み要求番号に対する優先順位が書き込まれて指定され、指定された優先順位データは優先順位判定部13,14に出力される。優先順位判定部13,14には、それぞれ周辺回路8~9からの割込み信号,割込み予告信号が入力される。そして、優先順位判定部13,14は、複数の割込み信号,割込み予告信号が同時に入力された場合には、それらと各信号について優先順位指定レジスタ12より与えられる優先順位データとを比較し、優先順位が高く設定されている方の割込み信号,割込み予告信号を選択して出力する。優先順位判定部14を介して出力される割込み予告信号は、先読み制御部15に入力され、優先順位判定部13を介して出力される割込み信号は、先読み制御部15,先読み完了制御部16,割込み要求制御部17に入力されている。先読み制御部15は、入力される割込み予告信号に応じた割込み要求番号を、割込み処理先読み要求として出力する。先読み完了制御部16は、先読み完了通知が入力されると、その時点で先読み制御部15が出力している割込み処理先読み要求をリセットさせる。割込み要求制御部17は、入力される割込み信号に応じた割込み要求番号を、割込み要求として出力し、割込み要求受理信号が入力されると、その時点で出力している割込み要求をリセットする。図3は、命令キャッシュ5の内部構成を示す機能ブロック図である。命令キャッシュ5は、複数のウェイラインで構成されるキャッシュメモリ18を備えており、入力されるアドレスは、制御回路キャッシュコントローラ,ハードウェアロジックで構成される19を介してROM3側に出力され、キャッシュメモリ18及びキャッシュタグ比較部20にも入力されている。キャッシュメモリ19には、ROM3より読み出された命令命令のデータが書き込まれる。キャッシュタグ比較部20は、入力されたアドレス上位側をキャッシュメモリ18の各ウェイに付されているタグと比較して、ウェイの1つを選択するためのマルチプレクサ21に選択信号を出力する。マルチプレクサ21により選択されたウェイの命令は、CPU2に出力される。割込みコントローラ7より与えられる割込み要求番号はベクタアドレス生成回路22に入力され、ベクタアドレス生成回路22は、割込み要求番号に応じて、CPU2を割込みハンドラの先頭アドレスに分岐させる命令が格納されているベクタアドレスを制御回路19及びハンドラアドレス生成部23に出力する。ハンドラアドレス生成部23は、入力されるベクタアドレスに対応する割込みハンドラのアドレスを生成し、制御回路19に出力する。また、ハンドラアドレス生成部23には、ROM3より読み出されてキャッシュメモリ18に書き込まれる命令が入力されており、ベクタアドレスにより読み出される分岐命令に含まれている分岐先アドレスを抽出することでハンドラアドレスを生成する。制御回路19には、その他、CPU2からの割込み許可状態信号と、割込みコントローラ7からの割込み処理先読み要求とが入力されている。また、制御回路19は、割込みコントローラ7に対して先読み完了通知,先読み中止通知を出力する。本実施例におけるマイクロコンピュータ1の動作概要としては、周辺回路8~9は、発生した割込み要因に応じて、一般的に割込み信号が出力されるタイミングよりも以前の段階で割込み予告信号を出力するように構成されている。すると、割込みコントローラ7が、対応する割込み処理を行うためのベクタ並びにハンドラを、ROM3より命令キャッシュ5にロードさせる先読み処理を行うようになっている。そこで次に、割込み予告信号を出力する周辺回路8~10の具体構成例について、図4ないし図9を参照して説明する。図4は、周辺回路8が通信機能を備える場合の構成例であり、aはUARTUniversalAsynchronousReceiverTransmitter,bはCANControllerAreaNetworkに対応している。尚、一般的な通信機能に関する説明は省略し、本発明の要旨に係る部分のみ説明する。図4aに示す周辺回路8Aについては、受信データに含まれるスタート/ストップビットの検出に伴う制御や、パリティビットの検出に伴う制御を行う制御回路24が、割込み予告信号並びに割込み信号を出力する。また、図4bに示す周辺回路8Bについては、受信データメッセージを複数のメッセージバッファの何れに格納するかを判定したり、ACKアクノリッジ制御やCRCCyclicRedundancyCheck制御を行う制御回路25が、割込み予告信号並びに割込み信号を出力する。尚、通信機能については、UARTやCANに限ることなく、その他の通信プロトコルであっても良い。図5a,bは、図4a,bの構成に対応して割込み予告信号を出力するタイミングの一例を示している。図5aに示すUARTの場合、通信バス上にスタートビットが出力されるとデータの送信が開始され、続いて8ビットのデータがシリアルに送信される。そして、パリティビットPに続いてストップビットが出力されると送信が終了する。一般的に、このようなデータを受信した場合の割込み信号は、ストップビットが出力された後に出力される。本実施例では、周辺回路8Aは、スタートビットを受信したこれが、割込みを発生させる要因となる事象の発生を、初期段階で検出することに相当する以降から、ストップビットが出力される以前のタイミングで割込み予告信号を出力する。ここで、割込み予告信号を出力してから割込み信号を出力するまでに、どれ位の時間を確保できるかを具体数値で計算してみる。ボーレートが10Kbpsであるとして、割込み予告信号をパリティビットPの受信後に出力することを想定する。この場合、先読み処理を行うための余裕時間は1ビットの送信期間に相当する100μsとなるが、CPU2の動作クロック周波数が50MHzであるとすれば、5000サイクル周期の間隔がある。したがって、命令キャッシュ5に例えば数100バイト程度の割込みハンドラを先読みするのに十分な時間が確保できる。また、データD7の受信後や、スタートビットの受信後に割込み予告信号を出力することも可能であり、その場合は更に余裕を確保できる。また、図5bに示すCANの場合、通信バス上にSOFStartOfFrameが出力されるとデータの送信が開始され、続いてIDやデータ,CRC,ACK等がシリアルに送信される。そして、EOFEndOfFrameが出力されると送信が終了し、続くIFSInterFrameSpaceで周辺回路8B内部のデータ転送が開始される。一般には、このよう受信形態の場合の割込み信号は、内部のデータ転送が終了した後に出力される。本実施例では、周辺回路8Bは、例えばDLCDataLengthCodeを受信した以降から、EOFが出力される以前のタイミングで割込み予告信号を出力する。ここで、図5aの場合と同様に、割込み予告信号を出力してから割込み信号を出力するまでどれ位の時間を確保できるかを計算してみる。ボーレートが500Kbpsであるとして、割込み予告信号をACKの受信後に出力することを想定すると余裕時間は20μsとなり、1000サイクル周期の間隔がある。したがって、この場合も割込みハンドラを先読みするのに十分な時間が確保できる。また、DLCの受信後やデータの受信中または受信後,CRCの受信後等に割込み予告信号を出力することも可能であり、その場合は更に余裕を確保できる。例えば、DLCによって受信データの長さが解るので、第何バイトのデータの受信後などを設定することもできる。尚、例えばCRCチェックにより受信がエラーとなった場合は、CPU2に受信エラーを通知するための割込みを発生させる。この場合、命令キャッシュ5及び割込みコントローラ7のステータスはリセットされ、CPU2は、受信エラーに対応した処理を行う。また、図6は、周辺回路9がタイマ機能を備える場合の構成例であり、図7は動作タイミングチャートである。これについても周知の構成部分は説明を省略する。ダウンカウンタ26のカウント値がゼロ全ビット0になるとタイマ割込み信号を出力するので、カウント値がゼロになる以前の段階で例えばカウント値が0x00F;下位4ビットがオール1割込み予告信号を出力する。この場合も確保可能な時間を計算すると、カウンタクロックの周期が0.5μsであれば、カウント値が0x00Fで8μsとなり400サイクルの間隔がある。したがって、この場合も割込みハンドラを先読みするのに十分な時間が確保できる。また、カウント値が0x00Fより大きな値で割込み予告信号を出力することも可能である。図8は周辺回路10がインプットキャプチャ機能を備える場合の構成例であり、図9は動作タイミングチャートである。外部入力端子の信号がアクティブ例えばハイになったことを、サンプリングクロックの4周期分連続して検出すると図中の丸数字1~4;4度一致;m=4、前記信号がアクティブになったと判定して割込み信号を出力する。一般に、このように構成される周辺回路10は、入力信号のレベルがノイズの影響を受ける可能性があるため、その影響を排除する目的でアクティブの状態を連続して複数回検出するようにしている。そして、割込み予告信号は、2周期分連続して検出した段階で2度一致;n=2出力する。この場合も確保可能な時間を計算すると、カウンタクロックの周期が1μsであれば2μsとなり、100サイクルの間隔がある。したがって、この場合も割込みハンドラを先読みするのに十分な時間が確保できる。例えば、ROM3より命令キャッシュ5にデータを転送するバスサイズが64ビットであり、割込みハンドラの容量が256バイトであればデータ転送回数は32回となるので、1回の転送に3サイクルを要しても2μsの間に転送が可能である。また、データを転送バスサイズが128ビットであればデータ転送回数は1/2となるので、割込みハンドラの実際の容量等に応じて、動作クロック周波数等も併せて適宜調整すれば良い。次に、本実施例の作用について図10及び図11を参照して説明する。図10は、CPU2,命令キャッシュ5,割込みコントローラ7,周辺回路8~10の間における処理の流れを示すフローシーケンス図である。CPU2が、割込み処理以外の通常処理を実行している場合に、周辺回路8~10の何れか1つ以上が割込み予告信号を出力するとS1、割込みコントローラ7は、その割込み予告信号に応じた割込み要求番号を命令キャッシュ5に出力するS2。ここで、複数の割込み予告信号が同時に入力された場合は、前述のように優先順位が高い方の割込み要求番号を出力する。命令キャッシュ5は、入力された割込み要求番号に応じたベクタアドレスを生成してROM3に出力し、制御回路19が対応する分岐命令をキャッシュメモリ18にロードさせるS3。続いて、ベクタアドレスに対応した割込みハンドラのアドレスをROM3に出力し、割込みハンドラをキャッシュメモリ18にロードさせるS4。これらS3,S4が先読み処理に対応する。そして、先読み処理が完了すると、先読み完了通知を割込みコントローラ7に出力しS5、割込みコントローラは上記通知を受理するS6。そして、対応する周辺回路より割込み信号が出力されるまで待機状態となる。割込み予告信号を出力した周辺回路が割込み信号を出力するとS7、割込みコントローラ7は、対応する割込みハンドラの先読みが完了していることを条件に、その割込み信号に応じた割込み要求割込みの発生通知をCPU2に出力するS8。すなわち、割込み信号が入力された段階で上記の先読みが完了していなければ、割込みコントローラ7はCPU2に対する割込み要求の出力を保留することになる。またこの場合も、複数の割込み信号が同時に入力された場合は、前述のように優先順位が高い方の割込み信号を出力する。CPU2は、割込みの受付を許可している場合は、前記割込み信号を受理したことを通知する信号を割込みコントローラ7に出力するS9。そして、割込みハンドラを実行するための準備プログラムカウンタ値やフラグ値の退避等をする移行状態となる。割込みコントローラ7は、CPU2からの割込み受理通知が入力されると、対応する割込み要求番号をCPU2に出力するS10。すると、CPU2は、前記割込み要求番号に応じたベクタアドレスを出力して命令キャッシュ5にアクセスしS11、ヒットするので命令キャッシュ5より割込みベクタである分岐命令が読み出されるS12。ここで、S11からCPU2は割込み処理の実行状態となる。CPU2は、読み出した分岐命令を実行することで、対応する割込みハンドラの先頭アドレスを出力して命令キャッシュ5にアクセスするS13。すると、命令キャッシュ5より割込みハンドラの命令が読み出されてS14、CPU2は、読み出した命令を実行するS15。図11bは、図10に示す処理をタイミングチャートで表わしたもので、横軸に示す数字は、目安としてCPU2に割込み信号図10におけるS8;割込みコントローラ7がCPU2に出力する割込み要求出力に対応が出力された時点を基準とするサイクル数である。尚、上述した周辺回路8~10の説明で挙げた具体数値例との関連はない。また図11aは、比較のため一般的な従来構成の場合を示す。図11bにおいて、割込み予告信号が15サイクル前に出力されると、その時点から割込みコントローラ7の事前処理S2も含む命令キャッシュ5による割込みベクタ,割込みハンドラの先読み処理が開始される。そして、先読み処理が完了すると、割込みコントローラ7はCPU2に割込み要求を出力し、CPU2は割込み移行処理を開始する。その後に続くハッチング部分はベクタ命令の実行期間であり、それに続く異なるハッチング部分が割込みハンドラの実行期間を示している。これに対して、図11aに示す従来構成の場合は、割込み信号が出力されると、その時点から命令キャッシュへの割込みベクタ及び割込みハンドラの読み込みが開始されるため、CPUは割込み処理の実行待ち状態となる。そして、命令キャッシュへの読み込みが完了した時点でCPUは割込み処理に移行するので、その間にCPUの処理は停滞することになる。以上のように本実施例によれば、周辺回路8~10は、CPU2に対して割込みを発生させる要因となるデータの受信やタイマ割込み,入力信号のアクティブレベルの連続検出等の発生を初期段階で検出すると、事前に割込み予告信号を割込みコントローラ7に出力し、前記事象の発生が完了した段階で割込み信号を出力する。そして、割込みコントローラ7は、割込み予告信号が入力されると、当該予告信号に対応する割込みベクタ及び割込みハンドラを、ROM3から命令キャッシュ5にロードさせる先読み処理を行う。したがって、対応する割込み信号が出力されるまでの期間に命令キャッシュ5への先読み処理を完了させることができ、CPU2は、割込みコントローラ7より割込み要求が入力されると、直ちに割込み処理に移行して割込みハンドラの実行を開始でき、割込みが発生した時点から、当該割込みを処理するまでの応答性を向上させることができる。また、割込みコントローラ7は、前記予告信号に対応する割込み信号が入力された段階で先読み処理が完了していなければ、CPU2に対して行う割込みの発生通知を保留するので、先読み処理が完了した後にCPU2に割込みハンドラの実行を開始させることができ、処理効率の低下を防止できる。また、周辺回路8が通信機能を備える場合は、外部より送信されたデータの受信処理を開始した以降から当該受信処理を完了するまでの間に割込み予告信号を出力する。すなわち、外部よりデータの送信があれば、送信されたデータの受信が完了した時点でCPU2に対して割込みを発生させることになるので、受信処理を開始した以降からその受信処理を完了するまでの間に割込み予告信号を出力すれば、割込みコントローラ7に割込みの発生を予告することができる。また、周辺回路9がタイマ機能を備えている場合は、タイマ割込み信号を発生させるタイミングよりも所定期間だけ遡行するタイミングで割込み予告信号を出力する。すなわち、ダウンカウンタ26のカウント値によって割込みを発生させるタイミングが決まるので、前記カウント値を参照すれば、タイマ割込み信号を発生させるタイミングよりも遡行するタイミングで割込み予告信号を出力することができる。また、周辺回路10が、入力信号レベルがアクティブの状態を4回連続して検出すると前記信号がアクティブになったと判定して割込み信号を発生させるインプットキャプチャ機能を備える場合は、前記入力信号のアクティブレベルが2回連続した段階で割込み予告信号を出力する。すなわち、アクティブレベルが2回連続した段階でも、その後に入力信号がアクティブと判定される蓋然性は高いと言えるので、その時点で割込み予告信号を出力すれば、割込みコントローラ7に割込みの発生を予告することができる。第2実施例図12及び図13は第2実施例であり、第1実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分について説明する。第2実施例の構成は基本的に第1実施例と同様であり、命令キャッシュ5が割込みハンドラの先読みを実行している途中で、より優先度が高い割込みが発生した場合の処理を示す。図12は、その処理を示すタイミングチャートであり、図13は図10の一部相当図である。2つの周辺回路1,2があり、周辺回路1からの割込みの方が優先度が高く設定されている。最初に、周辺回路2が割込み予告信号を出力するとS1a、割込みコントローラ7は、第1実施例と同様に先読み要求を出力しS2a、命令キャッシュ5は、対応する割込みベクタ及び割込みハンドラの先読み処理を開始するS3a,S4a。尚、第2実施例では、割込みコントローラ7が命令キャッシュ5に出力する先読み要求と、命令キャッシュ5が割込みコントローラに返す応答通知の内容データ値を明示している。図12に示すように、先読み要求は8ビットのデータで構成され、第7,第6ビットは動作指示を示し00:指示無/01:先読み開始/11:先読み中止、第5~第0ビットは割込み番号を示す。割込み番号は値が小さいほど優先度が高く設定されている。また、応答通知は2ビットのデータで構成され、第1,第0ビットで動作結果を示す00:動作停止中/01:先読み中/10:正常終了/11:強制終了。したがって、S2aにおいて出力される先読み要求のデータ値は、0x42となる。命令キャッシュ5が上記先読み要求に応じた先読み処理の実行中に、周辺回路1が割込み予告信号を出力するとS1b、割込みコントローラ7は命令キャッシュ5に対して先読み中止を指示するS2b;0xC2。すると、命令キャッシュ5は、その時点で先読み処理を終了し、その旨を割込みコントローラ7に通知するS16;0x3。割込みコントローラ7は、上記通知を受理すると、周辺回路1の割込み予告信号に対応する先読み要求を出力しS2c;0x41、割込みコントローラ7は、前記要求に対応する先読みを開始するS3b,S4b。そして、先読みを完了すると先読み完了通知を出力しS5b;0x2、割込みコントローラ7は前記通知を受理するS6b。以降は、第1実施例と同様に処理が行われる。以上のように第2実施例によれば、割込みコントローラ7は、先読み処理の実行中に優先度が高い割込みの予告信号が入力されると、実行中の先読み処理を中止させて、前記優先度が高い割込みに対応する割込みハンドラの先読み処理を開始する。したがって、CPU2が先に処理する予定の割込みに対応するハンドラを、先に命令キャッシュ5にロードすることができる。第3実施例図14及び図15は第3実施例であり、第1実施例と異なる部分について説明する。第3実施例は、命令キャッシュ5が割込み処理に関する先読みを実行している途中で、CPU2からのアクセスでキャッシュミスが発生した場合に、両者の競合を調整する制御に関する。尚、この場合の先読み処理は、第1,第2実施例のように周辺回路8~10が割込み予告信号を出力する構成を前提としても良いし、割込み予告信号を出力しない構成に適用しても良い。図14は、上記の競合状態でCPU2が割込みの受付を許可している場合であり、aは一般的な従来構成である。但し、比較のため、命令キャッシュが先読みを開始するタイミングは第3実施例の構成と同じであるとする。従来構成では、命令キャッシュが割込み処理に関する先読みを行っている途中でCPUからのアクセスにキャッシュミスが発生しても先読み処理が完了するまで継続するので、その間CPUの処理は待機状態となる。そして、先読み処理が完了すると割込みコントローラに完了通知を行い、割込みコントローラがCPUに対して割込み要求を与えるので、CPUはその時点から割込み処理への移行を開始する。一方、図14bに示す第3実施例の場合、命令キャッシュ5の制御回路19は、キャッシュミスの発生を認識すると、その時点で割込みコントローラ7に先読み完了を通知するが、先読み処理はそのまま継続する。割込みコントローラ7は、先読み完了通知を受理すると、割込み信号の入力があった時点でCPU2に割込み要求を出力するので、CPU2は、その時点から割込み処理に移行することになる。また、図15は、図14と同じ競合状態でCPU2が割込みの受付を禁止している場合である。aに示す従来構成では、CPUからのアクセスにキャッシュミスが発生しても図14と同様に先読み処理を継続し、先読み処理が完了すると完了通知を行う。続いて、通常処理においてミスが発生して命令のロードを開始し、そのロードが完了するとCPUが待機させていた通常処理を再開する。図15bに示す第3実施例の場合、命令キャッシュ5の制御回路19は、キャッシュミスの発生を認識すると、その時点で先読み処理を中止させて割込みコントローラ7に先読み中止を通知する。そして、直ちに通常処理においてキャッシュミスが発生した命令のロードを開始し、そのロードが完了するとCPU2が待機させていた通常処理を再開する。したがって、CPU2が割込みの受付を禁止していることで不要な割込み処理に関する先読みを即時中止し、通常処理のロードを開始するので、その分だけCPU2が待機状態となる期間を削減できる。以上のように第3実施例によれば、割込みコントローラ7は、周辺回路8~10が割込みを発生させるとCPU2に対して行う割込みの発生通知を保留して、当該割込みに対応する割込みハンドラをROM3から命令キャッシュ5にロードさせる先読み処理を行う。そして、命令キャッシュ5の制御回路19は、先読み処理の実行中にCPU2からのアクセスにキャッシュミスが発生すると、その時点でCPU2が割込み許可状態であれば先読み処理を優先して実行し、割込み禁止状態であれば先読み処理を中止して、CPU2がフェッチしようとする命令を命令キャッシュ5にロードさせる。すなわち、CPU2が割込み許可状態であれば先読み処理を優先することで、CPU2に割込み処理を早期に実行させることができる。また、CPU2が割込み禁止状態であれば、割込みの処理が直ちに開始されることはないので、CPU2がフェッチしようとする命令を命令キャッシュ5にロードさせて、現在実行中の通常処理を優先させる。したがって、CPU2側の割込みへの対応状態に応じて処理効率を向上させることができる。そして、制御回路19は、先読み処理を優先して実行する際には、割込みコントローラ7に対して直ちに先読み処理の完了を通知し、割込みコントローラは7、当該通知がなされるとCPU2に対して割込みの発生通知を行うので、CPU2を直ちに割込み処理に移行させることができる。本発明は、上記し、又は図面に記載した実施例にのみ限定されるものではなく、以下のような変型又は拡張が可能である。例えば割込みハンドラの先頭アドレスが固定であれば、割込みベクタに関しては先読み処理を行う必要はなく、例えば割込み要求番号が与えられると、CPUがその割込み要求番号に応じた割込みハンドラを直ちに出力するように構成しても良い。割込みコントローラは、CPUが割込み処理に移行するまでの期間分だけ、割込み信号を早めに出力しても良い。周辺回路の機能は、実施例に示したものに限ることなく、マイクロコンピュータの仕様として必要とされるものであればどのような機能でも良い。また、周辺回路の数も、個別の設計に応じて適宜決定すれば良い。プログラムメモリは、書き換え可能なフラッシュメモリ等であっても良い。第3実施例の構成に、第2実施例の構成を組み合わせても良い。命令キャッシュ5において、キャッシュメモリ18にアドレス管理情報のフラグ格納領域を設け、先読みが完了した段階でフラグをセットし、CPU2がアクセスして読み出したヒットしたアドレスのフラグをリセットして、命令の上書きを可能にしても良い。これにより、CPU2が割込みの受付を禁止していることで割込み要求が保留された場合に、先読みした命令が上書きされることを防止し、キャッシュミスの発生を回避できる。通常処理の命令を先読みするキャッシュメモリと、割込み処理に関する命令を先読み処理するキャッシュメモリとが、例えばウェイラインが異なるように切り分けても良い。これにより、通常処理を実行している途中に割込み処理に関する先読み処理を行った場合に、通常処理の命令を上書きすることを回避できる。"