(57)【要約】【課題】外部割り込み処理を効率良く行う半導体集積回路装置を得ること。【解決手段】複数の各外部割り込み信号に応じてマイクロプロセッサ５０に外部割り込み処理を行わせる半導体集積回路装置１０において、外部割り込み要因の優先度に基づいて外部割り込み要因を選択する割り込みコントローラ１と、メモリ４が記憶する複数の処理プログラムを指定するプログラム指定情報を記憶するＡ処理記憶部１１、Ｂ処理記憶部１２と、割り込みコントローラ１が選択した外部割り込み要因に基づいて所定のプログラム指定情報を選択するセレクタ３と、メモリ４内のデータまたはセレクタ３に選択されたプログラム指定情報のいずれかを選択してマイクロプロセッサ５０に入力するセレクタ２と、を備え、マイクロプロセッサ５０は、セレクタ２からのプログラム指定情報に応じたメモリ４内の処理プログラムを読み出して実行する。【選択図】        図１
2006202034.tif 000002
【特許請求の範囲】
【請求項１】
外部装置からマイクロプロセッサへ入力される複数の各外部割り込み信号に応じて前記マイクロプロセッサに外部割り込み処理を行わせる半導体集積回路装置において、
前記外部割り込み信号に対して前記外部割り込み要因の優先度を判定するとともに、前記優先度に基づいて所定の外部割り込み要因を選択する優先度判定部と、
前記割り込み処理毎の複数の処理プログラムを記憶するプログラム記憶部と、
前記プログラム記憶部内のそれぞれの前記処理プログラムを指定するプログラム指定情報を記憶する指定情報記憶部と、
前記優先度判定部が選択した外部割り込み要因に基づいて、前記指定情報記憶部から所定の前記プログラム指定情報を選択する第１のセレクタと、
前記外部割り込み要因に対応する外部割り込み信号が入力された際に、前記マイクロプロセッサが前記処理プログラムを実行するために前記プログラム記憶部にアクセスしたか否かを判断するアクセス判断部と、
前記アクセス判断部の判断結果に基づいて、前記プログラム記憶部内の所定のデータまたは前記第１のセレクタに選択された所定の前記プログラム指定情報のいずれかを選択して前記マイクロプロセッサに入力する第２のセレクタと、
を備え、
前記マイクロプロセッサは、前記第２のセレクタから前記プログラム指定情報が入力されると、前記プログラム指定情報に応じた前記プログラム記憶部内の所定の処理プログラムを読み出して実行することを特徴とする半導体集積回路装置。
【請求項２】
前記プログラム指定情報は、前記プログラム記憶部内の前記各処理プログラムへの分岐命令であることを特徴とする請求項１に記載の半導体集積回路装置。
【請求項３】
前記マイクロプロセッサは、前記処理プログラムを実行する際に前記各処理プログラムへの分岐命令を指定する分岐命令指定情報を前記アクセス判断部および前記プログラム記憶部に出力し、
前記アクセス判断部は、前記マイクロプロセッサからの前記分岐命令指定情報に基づいて、前記マイクロプロセッサが前記処理プログラムを実行するために前記プログラム記憶部にアクセスしたか否かを判断することを特徴とする請求項１または２に記載の半導体集積回路装置。
【請求項４】
前記分岐命令指定情報を記憶する分岐指定情報記憶部をさらに備え、
前記アクセス判断部は、前記分岐指定情報記憶部内の分岐命令指定情報と前記マイクロプロセッサからの前記分岐命令指定情報とを比較することによって前記マイクロプロセッサが前記プログラム記憶部にアクセスしたか否かを判断することを特徴とする請求項３に記載の半導体集積回路装置。
【請求項５】
前記分岐命令指定情報は、前記各処理プログラムへの分岐命令のベクタアドレスであることを特徴とする請求３または４に記載の半導体集積回路装置。
【請求項６】
前記プログラム記憶部内の前記各処理プログラムに共通の命令コードを記憶する命令コード記憶部をさらに備え、
前記プログラム指定情報は、前記プログラム記憶部内の前記各処理プログラムへの分岐命令の各アドレスを指定するアドレス情報であり、
前記第２のセレクタは、前記第１のセレクタに選択された所定の前記プログラム指定情報を選択して前記マイクロプロセッサに入力する際、前記プログラム指定情報とともに前記命令コード記憶部が記憶する命令コードを前記マイクロプロセッサに入力することを特徴とする請求項１〜５のいずれか１つに記載の半導体集積回路装置。
【請求項７】
前記プログラム指定情報は、前記各処理プログラムの先頭アドレスであることを特徴とする請求項１に記載の半導体集積回路装置。
【請求項８】
前記プログラム記憶部は、外部割り込み要因毎のベクタをベクタテーブルとして記憶するとともに、前記マイクロプロセッサは、前記処理プログラムを実行するために前記プログラム記憶部内の前記外部割り込み要因のベクタを指定するベクタ指定情報を前記アクセス判断部および前記プログラム記憶部に出力し、
前記アクセス判断部は、前記マイクロプロセッサからの前記ベクタ指定情報に基づいて前記マイクロプロセッサが前記処理プログラムを実行するために前記プログラム記憶部にアクセスしたか否かを判断することを特徴とする請求項１または７に記載の半導体集積回路装置。
【請求項９】
前記ベクタ指定情報を記憶するベクタ指定情報記憶部をさらに備え、
前記アクセス判断部は、前記ベクタ指定情報記憶部内のベクタ指定情報と前記マイクロプロセッサからの前記ベクタ指定情報とを比較することによって前記マイクロプロセッサが前記プログラム記憶部にアクセスしたか否かを判断することを特徴とする請求項８に記載の半導体集積回路装置。
【請求項１０】
前記ベクタ指定情報は、前記外部割り込み要因のベクタアドレスであることを特徴とする請求項８または９に記載の半導体集積回路装置。
【請求項１１】
外部装置からマイクロプロセッサへ入力される複数の各外部割り込み信号に応じて前記マイクロプロセッサに外部割り込み処理を行わせる半導体集積回路装置において、
前記外部割り込み信号に対して前記外部割り込み要因の優先度を判定するとともに、前記優先度に基づいて所定の外部割り込み要因を選択する優先度判定部と、
前記割り込み処理毎の複数の処理プログラムを記憶する複数のバンクメモリと、
前記外部割り込み要因に対応する外部割り込み信号が入力された際に、前記マイクロプロセッサが前記処理プログラムを実行するために前記バンクメモリにアクセスしたか否かを判断するアクセス判断部と、
前記アクセス判断部が、前記マイクロプロセッサが前記処理プログラムを実行するために前記バンクメモリにアクセスしたと判断すると、前記優先度判定部が選択した外部割り込み要因に応じた処理プログラムを指定する前記バンクメモリのアドレスをバンクメモリアドレス情報として出力するバンク制御部と、
前記複数のバンクメモリと接続されるとともに、前記バンク制御部からのバンクメモリアドレス情報に基づいて、前記複数のバンクメモリから所定の処理プログラムを選択して前記マイクロプロセッサに入力するセレクタと、
を備え、
前記マイクロプロセッサは、前記セレクタからの処理プログラムを実行することを特徴とする半導体集積回路装置。
【請求項１２】
前記マイクロプロセッサは、前記処理プログラムを実行する際に前記バンクメモリを指定するバンクメモリ指定情報を前記アクセス判断部および前記バンクメモリに出力し、
前記アクセス判断部は、前記マイクロプロセッサからのバンクメモリ情報に基づいて、前記マイクロプロセッサが前記処理プログラムを実行するために前記バンクメモリにアクセスしたか否かを判断することを特徴とする請求項１１に記載の半導体集積回路装置。
【請求項１３】
前記バンクメモリ指定情報を記憶するバンクアドレス記憶部をさらに備え、
前記アクセス判断部は、前記バンクアドレス記憶部内のバンクメモリ指定情報と前記マイクロプロセッサからの前記バンクメモリ指定情報とを比較することによって前記マイクロプロセッサが前記バンクメモリにアクセスしたか否かを判断することを特徴とする請求項１２に記載の半導体集積回路装置。
【請求項１４】
前記バンクメモリ指定情報は、前記各バンクメモリのメモリアドレスであることを特徴とする請求１２または１３に記載の半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロプロセッサに外部割り込み処理を行わせる半導体集積回路装置に関するものである。
【背景技術】
【０００２】
近年、半導体集積回路の微細化技術、高集積化技術等の進展に伴い、複雑な処理を行う半導体集積回路の開発が進められている。ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）等のマイクロプロセッサ（プロセッサ）を備えて構成される半導体集積回路装置においては、マイクロプロセッサがメインプロセスの処理を実行している際に、外部入力端子を介して外部装置等から外部割り込み要求が行われる場合がある。このような外部割り込み要求が行われると、マイクロプロセッサはメインプロセスの処理を一時的に中断して、外部割り込み要求に対応する処理（外部割り込み処理）を実行する。このような、外部割り込み要求に対して、効率良く外部割り込み処理（外部割り込み応答）を行うことが望まれる。
【０００３】
例えば、１つの外部入力端子に対して複数の割り込み要因が設定される場合がある。１つの外部割り込み入力に対して複数の割り込み要因がある場合、マイクロプロセッサは外部割り込み処理を行う際に所定のメモリから外部割り込み処理に対応するプログラム（割り込み処理プログラム）等を読み出して、割り込み処理プログラムを実行する。このとき、メモリ内の割り込み処理プログラムにおいて外部要因レジスタの読み出しや外部要因の判定等を行う。そして、外部要因の判定結果に応じてメモリ内の複数の割り込み処理のうちの何れかの割り込み処理への分岐を行う。これにより、マイクロプロセッサは複数の割り込み要因に対して、各割り込み要因に対応する所定の割り込み処理を実行している。
【０００４】
また、マイクロプロセッサに複数の割り込みが行われる場合に効率良く外部割り込み処理を行う技術として、優先度の高い割り込み要求の割り込み応答性の向上を図る技術がある。
【０００５】
特許文献１に記載の情報処理装置は、プロセッサに対する割り込みを制御する割り込み制御装置に係り、割り込み要求入力ごとに割り込み要因を示すフラグと該割り込み要求の優先度を示す割り込みレベルとを保持する割り込みフラグ保持手段と、該保持された割り込みレベル中最も優先度が高いものを判定して該割り込みレベルを持つ割り込み要因を保持するとともに、プロセッサに対して割り込み要求信号を出力する割り込みレベル判定手段と、該保持された割り込み要因に応じて割り込みベクタを生成して保持する割り込みベクタ生成手段と、該保持された割り込みベクタを上記プロセッサに出力する割り込みベクタ出力手段とを備え、上記各手段の処理をパイプライン処理するように構成されている。
【０００６】
【特許文献１】特開平１１−２２４２０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記従来の技術では複数の割り込み要求に対して優先度の高い割り込み要求の割り込み応答性を向上させることはできるが、割り込み処理内で割り込み要因を示すレジスタを読み出して割り込み要因を判定するソフトウェアによる処理が必要となる。このため、割り込みに応じた処理を実行するまでの命令数が多くなり、外部割り込み処理までの実行時間が長くなるという問題があった。
【０００８】
本発明は、上記に鑑みてなされたものであって、複数の外部割り込み要因に対する外部割り込み処理を効率良く行う半導体集積回路装置を得ることを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明は、外部装置からマイクロプロセッサへ入力される複数の各外部割り込み信号に応じて前記マイクロプロセッサに外部割り込み処理を行わせる半導体集積回路装置において、前記外部割り込み信号に対して前記外部割り込み要因の優先度を判定するとともに、前記優先度に基づいて所定の外部割り込み要因を選択する優先度判定部と、前記割り込み処理毎の複数の処理プログラムを記憶するプログラム記憶部と、前記プログラム記憶部内のそれぞれの前記処理プログラムを指定するプログラム指定情報を記憶する指定情報記憶部と、前記優先度判定部が選択した外部割り込み要因に基づいて、前記指定情報記憶部から所定の前記プログラム指定情報を選択する第１のセレクタと、前記外部割り込み要因に対応する外部割り込み信号が入力された際に、前記マイクロプロセッサが前記処理プログラムを実行するために前記プログラム記憶部にアクセスしたか否かを判断するアクセス判断部と、前記アクセス判断部の判断結果に基づいて、前記プログラム記憶部内の所定のデータまたは前記第１のセレクタに選択された所定の前記プログラム指定情報のいずれかを選択して前記マイクロプロセッサに入力する第２のセレクタと、を備え、前記マイクロプロセッサは、前記第２のセレクタから前記プログラム指定情報が入力されると、前記プログラム指定情報に応じた前記プログラム記憶部内の所定の処理プログラムを読み出して実行することを特徴とする。
【００１０】
この発明によれば、優先度判定部が外部割り込み要因の優先度を判定するとともに、第１のセレクタが指定情報記憶部から所定のプログラム指定情報を選択して第２のセレクタに入力するので、第２のセレクタはアクセス判断部の判断結果に基づいてプログラム指定情報をマイクロプロセッサに入力することが可能となる。したがって、外部割り込み要因をソフトウェアで判定する必要がなくなる。
【発明の効果】
【００１１】
この発明によれば、マイクロプロセッサによる割り込み要因の判定処理をソフトウェアによって命令する必要がなくなり、外部割り込み信号の入力から外部割り込み処理を実施するまでの処理時間を短時間で行うことが可能になるという効果を奏する。
【発明を実施するための最良の形態】
【００１２】
以下に、本発明にかかる半導体集積回路装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１３】
実施の形態１．
図１は、本発明にかかる半導体集積回路装置の実施の形態１の構成を示すブロック図である。半導体集積回路装置１０は、複数の外部割り込み要因（イベント要求）に対する外部割り込み処理機能を備えており、マイクロプロセッサ５０、割り込みコントローラ（優先度判定部）１、セレクタ（第２のセレクタ）２、セレクタ（第１のセレクタ）３、メモリ（プログラム記憶部）４、一致検出部（アクセス判断部）５、ベクタアドレス記憶部（分岐指定情報記憶部）６、Ａ処理記憶部１１、Ｂ処理記憶部１２、Ｃ処理記憶部１３からなる。ここでのＡ処理記憶部１１、Ｂ処理記憶部１２、Ｃ処理記憶部１３が特許請求の範囲に記載の指定情報記憶部に対応する。
【００１４】
マイクロプロセッサ５０は、ＣＰＵやＤＳＰ等のプロセッサＩＰ（Intellectual Property）からなり、所定のメインプロセスの処理を実行するとともに、外部装置等からの外部割り込み要因（割り込み信号Ａ〜Ｃ）に対して外部割り込み処理を行う。
【００１５】
マイクロプロセッサ５０は、アドレス出力部５１、データ入力部５２、外部割り込み入力部５３を備えている。外部割り込み入力部５３は、割り込みコントローラ１から割り込み信号Ａ〜Ｃに応じた割り込み要求の信号（要求信号）を入力する。アドレス出力部５１は、外部割り込み入力部５３に要求信号が入力されると、所定のプログラムを格納するメモリ４や一致検出部５へ割り込みを開始するための割り込み開始アドレス（分岐命令指定情報）等を送信（出力）する。データ入力部５２は、セレクタ２を介してメモリ４やセレクタ３から所定のデータ（信号）が入力される。データ入力部５２は、外部割り込み処理を行う場合に、セレクタ３、セレクタ２を介して最優先で割り込み処理を行うための分岐命令コード信号（後述する選択分岐命令（プログラム指定情報））が入力される。
【００１６】
割り込みコントローラ１は、図示しない外部割り込み入力端子を備えており、この外部割り込み入力端子を介して外部装置等からの割り込み信号Ａ〜Ｃを入力する。本実施の形態１においては、外部割り込み入力端子１端子に対して、複数の割り込み信号Ａ〜Ｃが入力される場合について説明する。
【００１７】
割り込みコントローラ１は、外部割り込みに対する所定の信号の出力制御や外部割り込み要因の優先度を判定する回路を備えている。割り込みコントローラ１は、割り込み信号Ａ〜Ｃが入力されると、割り込み信号Ａ〜Ｃが割り込み要因であるか否かを判定するとともに割り込み信号Ａ〜Ｃに対して割り込み要因の優先度を判定する。割り込みコントローラ１は、割り込み優先度の最も高い割り込み信号Ａ〜Ｃに応じた割り込み要求の信号（要求信号）をマイクロプロセッサ５０へ出力し、割り込み優先度の最も高い割り込み要因を識別する信号（選択信号）をセレクタ３へ出力する。割り込みコントローラ１は、マイクロプロセッサ５０への要求信号の出力のタイミングやセレクタ３への選択信号の出力のタイミングを制御する。
【００１８】
メモリ４は、外部割り込み要因に対して外部割り込み処理を行うためのプログラム、外部割り込み以外の割り込み処理を行うためのプログラム等を格納している。メモリ４は、マイクロプロセッサ５０のアドレス出力部５１から送信される所定のアドレスに基づいて、記憶している所定のデータを出力する。
【００１９】
ベクタアドレス記憶部６は、マイクロプロセッサ５０が外部割り込みを行う際の外部割り込みベクタアドレス（外部割り込み開始アドレス）を固定値として記憶する。ベクタアドレス記憶部６は、記憶している割り込み開始アドレスを出力して一致検出部５に入力する。
【００２０】
一致検出部５は、マイクロプロセッサ５０が外部割り込み開始アドレスに対してアクセスを行っているか否かを判断する。具体的には、一致検出部５は、マイクロプロセッサ５０から出力される割り込み開始アドレスと、ベクタアドレス記憶部６から出力される外部割り込み開始アドレスが一致するかを検出し、検出結果をセレクタ２に入力する。
【００２１】
Ａ処理記憶部１１は、割り込み信号Ａに対する外部割り込み処理（外部割り込みＡ処理）プログラムへの分岐命令コードの値（以下、分岐Ａ処理命令という）を記憶する。Ａ処理記憶部１１は、分岐Ａ処理命令をセレクタ３に入力する。
【００２２】
Ｂ処理記憶部１２は、割り込み信号Ｂに対する外部割り込み処理（外部割り込みＢ処理）プログラムへの分岐命令コードの値（以下、分岐Ｂ処理命令という）を記憶する。Ｂ処理記憶部１２は、分岐Ａ処理命令をセレクタ３に入力する。
【００２３】
Ｃ処理記憶部１３は、割り込み信号Ｃに対する外部割り込み処理（外部割り込みＣ処理）プログラムへの分岐命令コードの値（以下、分岐Ｃ処理命令という）を記憶する。Ｃ処理記憶部１３は、分岐Ｃ処理命令をセレクタ３に入力する。
【００２４】
Ａ処理記憶部１１、Ｂ処理記憶部１２、Ｃ処理記憶部１３は、書き換えが可能なＲＡＭ（Random Access Memory）やレジスタによって構成してもよいし、書き換えのできないＲＯＭ（Read Only Memory）や論理レベルの固定といった方法で構成してもよい。
【００２５】
セレクタ３は、割り込みコントローラ１からの選択信号に基づいて、分岐Ａ処理命令、分岐Ｂ処理命令、分岐Ｃ処理命令の何れかの信号（命令）を選択し、選択した信号を選択分岐命令（最優先の割り込み分岐命令コード信号）としてセレクタ２に入力する。
【００２６】
セレクタ２は、一致検出部５からの検出結果に基づいて、セレクタ３からの選択分岐命令またはメモリ４からの所定のデータを選択し、入力データとしてデータ入力部５２に入力する。
【００２７】
図２は、実施の形態１に係る半導体集積回路装置の動作手順を示すフローチャートである。外部装置等から割り込み信号Ａ〜Ｃが半導体集積回路装置１０の割り込みコントローラ１に入力されると、割り込みコントローラ１は割り込み信号Ａ〜Ｃが割り込み要因であるか否かを判定するとともに割り込み信号Ａ〜Ｃに対して割り込み要因の優先度を判定する。
【００２８】
割り込みコントローラ１は、割り込み信号Ａ〜Ｃの中から予め設定された割り込み優先度に基づいて優先度の最も高い割り込み信号に対応する要求信号をマイクロプロセッサ５０へ出力し、優先度の最も高い割り込み要因を識別する選択信号をセレクタ３へ出力する。このとき、割り込みコントローラ１は、マイクロプロセッサ５０への要求信号の出力のタイミングやセレクタ３への選択信号の出力のタイミングを制御する。例えば割り込み信号Ａが最も優先度が高くなるよう予め設定されている場合、割り込みコントローラ１は割り込み信号Ａに対応する選択信号をセレクタ３へ出力する。
【００２９】
ここで、セレクタ３への選択信号とマイクロプロセッサ５０への要求信号の出力タイミング（割り込み信号Ａ〜Ｃ、要求信号、選択信号の出力タイミングチャート）について説明する。図３は、選択信号と要求信号の出力タイミングを説明するための図である。同図に示すように、割り込みコントローラ１に割り込み信号Ａ〜Ｃが入力された後、最優先の割り込み要因を選択して選択信号がセレクタ３に出力される。選択信号がセレクタ３に出力された後、マイクロプロセッサ５０へ要求信号が出力される。このとき、マイクロプロセッサ５０のパイプラインの段数等に応じて、割り込みコントローラ１は選択信号の出力から選択信号の出力までのタイミングを制御する。すなわち、割り込みコントローラ１は、セレクタ３への選択信号の出力に対してマイクロプロセッサ５０への要求信号の出力を所定時間だけ遅延させる。また、マイクロプロセッサ５０が要求信号に応じた割り込み処理を受け付けて、外部割り込みベクタアドレスへのアクセスが完了するまで選択信号の値を保持（選択信号の入力を継続）しておく。
【００３０】
割り込みコントローラ１から出力された要求信号は、マイクロプロセッサ５０の外部割り込み入力部５３に入力される（外部割り込みの受け付け）（ステップＳ１００）。マイクロプロセッサ５０は、外部割り込みベクタアドレスの外部割り込み処理への分岐命令を実行（開始）する（ステップＳ１１０）。まず、外部割り込み入力部５３に要求信号が入力されると、アドレス出力部５１はメモリ４や一致検出部５へ外部割り込みベクタアドレス（割り込み開始アドレス（分岐命令のベクタアドレス））を出力する。
【００３１】
セレクタ３は割り込みコントローラ１からの選択信号に基づいて、Ａ処理記憶部１１からの分岐Ａ処理命令、Ｂ処理記憶部１２からの分岐Ｂ処理命令、Ｃ処理記憶部１３からの分岐Ｃ処理命令の何れかの信号を選択し、選択した信号を選択分岐命令としてセレクタ２に入力する。例えば割り込みコントローラ１から割り込み信号Ａに対応する選択信号がセレクタ３に入力された場合、セレクタ３はＡ処理記憶部１１からの分岐Ａ処理命令を選択し、分岐Ａ処理命令を選択分岐命令としてセレクタ２に入力する。
【００３２】
一致検出部５は、マイクロプロセッサ５０から出力される外部割り込み開始アドレスと、ベクタアドレス記憶部６から出力される外部割り込み開始アドレスが一致するかを判断する。例えば、一致検出部５が外部割り込み開始アドレスの一致を検出すると、一致検出部５はこの検出結果をセレクタ２に入力する。
【００３３】
セレクタ２は、一致検出部５からの検出結果に基づいて、セレクタ３からの選択分岐命令またはメモリ４からの所定のデータの何れかを選択し、入力データとしてデータ入力部５２に入力する。例えば、一致検出部５が外部割り込み開始アドレスの一致を検出してこの検出結果をセレクタ２に入力した場合、セレクタ２はセレクタ３からの選択分岐命令をデータ入力部５２に入力する。例えば、セレクタ２は分岐Ａ処理命令を選択分岐命令としてマイクロプロセッサ５０のデータ入力部５２に入力する。
【００３４】
また、一致検出部５が外部割り込み開始アドレスの不一致を検出してこの検出結果をセレクタ２に入力した場合、セレクタ２はメモリ４からの所定のデータをデータ入力部５２に入力する。例えば、セレクタ２は「他の割り込み要因処理への分岐命令」をデータ入力部５２に入力する。
【００３５】
マイクロプロセッサ５０は、アドレス出力部５１から選択分岐命令に応じた外部割り込み処理のプログラムへの分岐命令を出力し、メモリ４から外部割り込み処理のプログラムを読み出して実行する。
【００３６】
ここで、メモリ４が格納するメモリマップの構成を説明する。図４は、実施の形態１に係るメモリ内のメモリマップの概念を説明するための図である。メモリマップ１０１は、アドレス「０ｘ００００」〜「０ｘＦＦＦＦ」にプログラム等のデータを格納している。メモリマップ１０１には、例えば先頭アドレス「０ｘ００００」から「リセット解除直後の処理への分岐命令」が格納され、先頭アドレス「０ｘ０００４」から「他の割り込み要因処理への分岐命令」が格納され、先頭アドレス「０ｘ０００８」から「外部割り込み（Ａ，Ｂ，Ｃ）要因処理への分岐命令」が格納され、先頭アドレス「０ｘ０００Ｃ」から「他の割り込み要因処理への分岐命令」が格納されている。ここでの「他の割り込み要因処理への分岐命令」は、「外部割り込み（Ａ，Ｂ，Ｃ）要因処理への分岐命令」以外の割り込み処理への分岐命令を示している。
【００３７】
また、先頭アドレス「０ｘ０００Ｃ」からの「他の割り込み要因処理への分岐命令」よりも後のアドレスにおいて、「外部割り込みＡ処理プログラム」、「外部割り込みＢ処理プログラム」、「外部割り込みＣ処理プログラム」が格納されている。
【００３８】
本実施の形態１においては、「外部割り込みＡ要因処理への分岐命令」に対応する分岐Ａ処理命令がＡ処理記憶部１１によって記憶されている。また、「外部割り込みＢ要因処理への分岐命令」に対応する分岐Ｂ処理命令がＢ処理記憶部１２によって記憶されている。また、「外部割り込みＣ要因処理への分岐命令」に対応する分岐Ｃ処理命令がＣ処理記憶部１３によって記憶されている。したがって、メモリ４においては、実際の「外部割り込みＡ要因処理への分岐命令」、「外部割り込みＢ要因処理への分岐命令」、「外部割り込みＣ要因処理への分岐命令」を記憶していなくてもよい。すなわち、マイクロプロセッサ５０が先頭アドレス「０ｘ０００８」へアクセスしたことを一致検出部５が検出することによって、マイクロプロセッサ５０へはＡ処理記憶部１１の分岐Ａ処理命令、Ｂ処理記憶部１２の分岐Ｂ処理命令、Ｃ処理記憶部１３の分岐Ｃ処理命令が入力される。このため、半導体集積回路装置１０内において先頭アドレス「０ｘ０００８」とＡ処理記憶部１１の分岐Ａ処理命令、Ｂ処理記憶部１２の分岐Ｂ処理命令、Ｃ処理記憶部１３の分岐Ｃ処理命令を対応付けしておけばよい。
【００３９】
例えば、セレクタ２が分岐Ａ処理命令に対応する選択分岐命令をマイクロプロセッサ５０に入力すると、マイクロプロセッサ５０は、メモリ４から「外部割り込みＡ処理プログラム」を読み出して実行する（ステップＳ１２０）。
【００４０】
また、セレクタ２が分岐Ｂ処理命令に対応する選択分岐命令をマイクロプロセッサ５０に入力すると、マイクロプロセッサ５０は、メモリ４から「外部割り込みＢ処理プログラム」を読み出して実行する（ステップＳ１３０）。
【００４１】
また、セレクタ２が分岐Ｃ処理命令に対応する選択分岐命令をマイクロプロセッサ５０に入力すると、マイクロプロセッサ５０は、メモリ４から「外部割り込みＣ処理プログラム」を読み出して実行する（ステップＳ１４０）。
【００４２】
なお、本実施の形態１においては、半導体集積回路装置１０に３つの割り込み信号Ａ〜Ｃが入力される場合について説明したが、半導体集積回路装置１０に入力される割り込み信号は３つに限られず、２つまたは４つ以上であってもよい。この場合、半導体集積回路装置１０が割り込み信号（割り込み要因）の数に応じた処理分岐記憶部を備える構成とすればよい。
【００４３】
なお、本実施の形態１においては、半導体集積回路装置１０がマイクロプロセッサ５０を含む構成としたが、半導体集積回路装置１０とマイクロプロセッサ５０を別々の構成として半導体集積回路装置１０とマイクロプロセッサ５０を接続することとしてもよい。
【００４４】
このように、ベクタアドレス記憶部６が外部割り込み開始アドレスを記憶しているので、一致検出部５はマイクロプロセッサ５０から出力されたデータが外部割り込み開始アドレスであるか否かを検出することが可能となる。
【００４５】
また、Ａ処理記憶部１１が「外部割り込みＡ要因処理への分岐命令」に対応する分岐Ａ処理命令を記憶し、Ｂ処理記憶部１２が「外部割り込みＡ要因処理への分岐命令」に対応する分岐Ｂ処理命令を記憶し、Ｃ処理記憶部１３が「外部割り込みＣ要因処理への分岐命令」に対応する分岐Ｃ処理命令を記憶するので、セレクタ３が割り込みコントローラ１からの選択信号（割り込み信号Ａ〜Ｃ）に応じた分岐命令（分岐処理命令）を出力することが可能となる。
【００４６】
これにより、セレクタ２は一致検出部５からの検出結果に基づいて、マイクロプロセッサ５０に割り込み信号Ａ〜Ｃに応じた分岐命令を入力することが可能となり、マイクロプロセッサ５０は分岐命令に応じた外部割り込み処理プログラム（外部割り込みＡ処理プログラム、外部割り込みＢ処理プログラム、外部割り込みＣ処理プログラム）をメモリ４から読み出すことが可能となる。
【００４７】
このように、実施の形態１によれば、マイクロプロセッサ５０が割り込み要因に関する判定処理等を行うことなく、割り込み優先度に基づいて外部割り込み要因毎に割り込み処理プログラムを実行することが可能となる。すなわち、マイクロプロセッサ５０による割り込み要因の判定処理をソフトウェアによって命令する必要がなくなり、割り込みの受け付けから割り込み処理を実施するまでの処理時間を短時間で行うことが可能になる。
【００４８】
実施の形態２．
つぎに、図５および図６を用いてこの発明の実施の形態２について説明する。実施の形態２では、分岐命令のうち分岐命令を示すコード部分とアドレスを指定するアドレス指定部を分離して記憶しておき、割り込み優先度に応じて所定のコード部分とアドレス指定部をセレクタ２に入力する。
【００４９】
図５は、本発明にかかる半導体集積回路装置の実施の形態２の構成を示すブロック図であり、図５の各構成要素のうち図１に示す実施の形態１の半導体集積回路装置１０と同一機能を達成する構成要素については同一番号を付しており、重複する説明は省略する。
【００５０】
半導体集積回路装置１０は、マイクロプロセッサ５０、割り込みコントローラ１、セレクタ２，３、メモリ４、一致検出部５、ベクタアドレス記憶部６、アドレス指定Ａ記憶部２１、アドレス指定Ｂ記憶部２２、アドレス指定Ｃ記憶部２３、分岐命令ｏｐ（Operation）コード記憶部（命令コード記憶部）２５からなる。ここでのアドレス指定Ａ記憶部２１、アドレス指定Ｂ記憶部２２、アドレス指定Ｃ記憶部２３が特許請求の範囲に記載の指定情報記憶部に対応する。
【００５１】
アドレス指定Ａ記憶部２１は、実施の形態１で説明したＡ処理記憶部１１が記憶する分岐Ａ処理命令のうち、分岐Ａ処理命令のアドレスを指定する部分（後述するアドレス指定部）を記憶する。アドレス指定Ａ記憶部２１は、分岐Ａ処理命令のアドレス指定部（以下、アドレス指定部（Ａ）という）をセレクタ３に入力する。
【００５２】
アドレス指定Ｂ記憶部２２は、実施の形態１で説明したＢ処理記憶部１２が記憶する分岐Ｂ処理命令のうち、分岐Ｂ処理命令のアドレスを指定する部分を記憶する。アドレス指定Ｂ記憶部２２は、分岐Ｂ処理命令のアドレス指定部（以下、アドレス指定部（Ｂ）という）をセレクタ３に入力する。
【００５３】
アドレス指定Ｃ記憶部２３は、実施の形態１で説明したＣ処理記憶部１３が記憶する分岐Ｃ処理命令のうち、分岐Ｃ処理命令のアドレスを指定する部分を記憶する。アドレス指定Ｃ記憶部２３は、分岐Ｃ処理命令のアドレス指定部（以下、アドレス指定部（Ｃ）という）をセレクタ３に入力する。
【００５４】
分岐命令ｏｐコード記憶部２５は、実施の形態１で説明した分岐Ａ処理命令、分岐Ｂ処理命令、分岐Ｃ処理命令のうち、分岐Ａ処理命令、分岐Ｂ処理命令、分岐Ｃ処理命令に共通する分岐命令を示すコード部分（定数）を記憶する。
【００５５】
つぎに、分岐命令（分岐Ａ処理命令、分岐Ｂ処理命令、分岐Ｃ処理命令）データの構成について説明する。図６は、分岐命令データの構成の一例を示す図である。分岐命令データ２０１は、分岐命令ｏｐコードとアドレス指定部によって構成されている。
【００５６】
分岐命令ｏｐコードは、分岐命令のうち分岐命令を示すコード（コンピュータの演算コード）部分のデータであり、分岐命令データ２０１において例えばｙビット〜（ｘ−１）ビットまでに格納されている。分岐命令を示すコード部分は、分岐Ａ処理命令、分岐Ｂ処理命令、分岐Ｃ処理命令に共通するデータであり、所定の定数として扱える。したがって、本実施の形態２においては、この共通部分となる分岐命令ｏｐコードを分岐命令ｏｐコード記憶部２５によってまとめて記憶しておく。
【００５７】
アドレス指定部は、分岐命令のうち分岐命令のアドレスを指定する部分のデータであり、分岐命令データ２０１において例えば０ビット〜（ｙ−１）ビットまでに格納されている。アドレス指定部のデータは、処理プログラム毎に異なる。
【００５８】
つぎに、実施の形態２に係る半導体集積回路装置１０の動作手順を説明する。なお、ここでは実施の形態２の半導体集積回路装置１０の特徴的な動作について説明し、実施の形態１に係る半導体集積回路装置１０と同様の動作を行う処理についてはその説明を省略する。
【００５９】
外部装置等から割り込み信号Ａ〜Ｃが割り込みコントローラ１に入力されると、割り込みコントローラ１が優先度の最も高い信号に対応する要求信号をマイクロプロセッサ５０へ出力し、優先度の最も高い信号に対応する選択信号をセレクタ３へ出力する。セレクタ３は割り込みコントローラ１からの選択信号に基づいて、アドレス指定Ａ記憶部２１からのアドレス指定部（Ａ）、アドレス指定Ｂ記憶部２２からのアドレス指定部（Ｂ）、アドレス指定Ｃ記憶部２３からのアドレス指定部（Ｃ）の何れかのデータを選択し、選択したデータを選択分岐命令アドレス部としてセレクタ２に入力する。例えば割り込みコントローラ１から割り込み信号Ａに対応する選択信号がセレクタ３に入力された場合、セレクタ３はアドレス指定Ａ記憶部２１からのアドレス指定部（Ａ）を選択し、分岐Ａ処理命令に対応する選択分岐命令アドレス部をセレクタ２に入力する。分岐命令ｏｐコード記憶部２５は、分岐命令を示すコード部分をセレクタ２に入力している。
【００６０】
一致検出部５は、外部割り込み開始アドレスの一致を検出すると、この検出結果をセレクタ２に入力する。セレクタ２は、一致検出部５からの検出結果に基づいて、セレクタ３からの選択分岐命令アドレス部および分岐命令ｏｐコード記憶部２５からのコード部分を、分岐Ａ処理命令に対応する選択分岐命令としてマイクロプロセッサ５０のデータ入力部５２に入力する。
【００６１】
マイクロプロセッサ５０は、選択分岐命令アドレス部および分岐命令のコード部分に基づいて、アドレス出力部５１から選択分岐命令に応じた外部割り込み処理のプログラムへの分岐命令（分岐命令データ２０１）を出力し、メモリ４から外部割り込み処理のプログラムを読み出して実行する。
【００６２】
このように、分岐命令ｏｐコード記憶部２５が分岐Ａ処理命令、分岐Ｂ処理命令、分岐Ｃ処理命令に共通する分岐命令を示すコード部分を記憶するので、各分岐命令に共通のコード部分をセレクタ２に入力することが可能となる。
【００６３】
また、アドレス指定Ａ記憶部２１が分岐Ａ処理命令のアドレス指定部（Ａ）を記憶し、アドレス指定Ｂ記憶部２２が分岐Ｂ処理命令のアドレス指定部（Ｂ）を記憶し、アドレス指定Ｃ記憶部２３が分岐Ａ処理命令のアドレス指定部（Ｃ）を記憶するので、セレクタ３が割り込みコントローラ１からの選択信号（割り込み信号Ａ〜Ｃ）に応じた分岐命令のアドレス指定部をセレクタ２に入力することが可能となる。
【００６４】
これにより、マイクロプロセッサ５０に割り込み信号Ａ〜Ｃに応じた分岐命令を入力することが可能となり、マイクロプロセッサ５０は分岐命令に応じた外部割り込み処理プログラム（外部割り込みＡ処理プログラム、外部割り込みＢ処理プログラム、外部割り込みＣ処理プログラム）をメモリ４から読み出すことが可能となる。
【００６５】
このように、実施の形態２によれば、割り込み信号Ａに対する外部割り込み処理プログラムへの分岐命令のコード部分をまとめて分岐命令ｏｐコード記憶部２５が記憶するので、少ないビット数で各分岐命令を記憶することが可能となる。したがって、少ない記憶容量の記憶機能によってマイクロプロセッサ５０が割り込み要因に関する判定処理等を行うことなく、割り込み優先度に基づいて外部割り込み要因毎に割り込み処理プログラムを実行することが可能となる。
【００６６】
実施の形態３．
つぎに、図７および図８を用いてこの発明の実施の形態３について説明する。実施の形態３では、マイクロプロセッサ５０が、割り込みの発生時に割り込みベクタテーブルで指定された割り込みプログラムの先頭アドレス値から割り込み処理を行う。
【００６７】
本実施の形態３においては、実施の形態１で説明した半導体集積回路装置１０において、ベクタアドレス記憶部（ベクタ指定情報記憶部）６が外部割り込み開始アドレスの代わりにベクタテーブル中での外部割り込み要因ベクタのアドレス（値）を記憶し、Ａ処理記憶部１１、Ｂ処理記憶部１２、Ｃ処理記憶部１３が分岐Ａ処理命令、分岐Ｂ処理命令、分岐Ｃ処理命令の代わりに割り込み要因に応じた外部割り込み処理Ａ，Ｂ，Ｃの先頭アドレスを記憶する。そして、ベクタアドレス記憶部６は、ベクタテーブル中での外部割り込み要因ベクタのアドレスを出力して一致検出部５に入力する。また、Ａ処理記憶部１１、Ｂ処理記憶部１２、Ｃ処理記憶部１３は、割り込み要因に応じた外部割り込み処理Ａ，Ｂ，Ｃの先頭アドレスをセレクタ３に入力する。
【００６８】
つぎに、実施の形態３に係る半導体集積回路装置１０の動作手順を説明する。図７は、実施の形態３に係る半導体集積回路装置の動作手順を示すフローチャートである。なお、ここでは実施の形態３の半導体集積回路装置１０の特徴的な動作について説明し、実施の形態１に係る半導体集積回路装置１０と同様の動作を行う処理についてはその説明を省略する。
【００６９】
外部装置等から割り込み信号Ａ〜Ｃが割り込みコントローラ１に入力されると、割り込みコントローラ１が優先度の最も高い外部割り込み処理に対応する要求信号をマイクロプロセッサ５０へ出力し、優先度の最も高い外部割り込み処理に対応する選択信号をセレクタ３へ出力する。割り込みコントローラ１から出力された要求信号は、マイクロプロセッサ５０の外部割り込み入力部５３に入力される（ステップＳ２００）。
【００７０】
セレクタ３は割り込みコントローラ１からの選択信号に基づいて、Ａ処理記憶部１１からの外部割り込み処理Ａの先頭アドレス、Ｂ処理記憶部１２からの外部割り込み処理Ｂの先頭アドレス、Ｃ処理記憶部１３からの外部割り込み処理Ｃの先頭アドレスの何れかのデータを選択し、選択したデータを選択先頭アドレス情報としてセレクタ２に入力する。アドレス出力部５１は、割り込みコントローラ１から出力された要求信号に基づいて、メモリ４の割り込みベクタテーブル中の外部割り込みベクタにアクセスする（ベクタ指定情報の送信）。
【００７１】
ここで、メモリ４が格納するメモリマップの構成を説明する。図８は、実施の形態３に係るメモリ内のメモリマップの概念を説明するための図である。メモリマップ１０２は、アドレス「０ｘ００００」〜「０ｘＦＦＦＦ」にプログラム等のデータを格納している。メモリマップ１０２は、リセット割り込み要因ベクタで指定されたアドレスに対応する「リセット解除直後の処理プログラム」、他の割り込み要因Ｘベクタで指定されたアドレスに対応する「他の割り込み要因Ｘ処理プログラム」、外部割り込み要因Ａベクタで指定されたアドレスに対応する「外部割り込み要因Ａ処理プログラム」、他の割り込み要因Ｙベクタで指定されたアドレスに対応する「他の割り込み要因Ｙ処理プログラム」、外部割り込み要因Ｂベクタで指定されたアドレスに対応する「外部割り込み要因Ｂ処理プログラム」、外部割り込み要因Ｃベクタで指定されたアドレスに対応する「外部割り込み要因Ｃ処理プログラム」を格納している。
【００７２】
また、メモリマップ１０２は割り込みベクタテーブルとして、「他の割り込み要因Ｘベクタ」、「外部割り込み要因Ａベクタ」、「外部割り込み要因Ｂベクタ」、「外部割り込み要因Ｃベクタ」、「他の割り込み要因Ｙベクタ」を格納している。本実施の形態３においては、メモリマップ１０２の割り込みベクタテーブルの外部割り込みベクタ（「外部割り込み要因Ａベクタ」、「外部割り込み要因Ｂベクタ」、「外部割り込み要因Ｃベクタ」）で指定されたアドレスに対応する外部割り込み処理の先頭アドレスをＡ処理記憶部１１、Ｂ処理記憶部１２、Ｃ処理記憶部１３から出力してマイクロプロセッサ５０に入力する。
【００７３】
一致検出部５は、ベクタアドレス記憶部６が記憶するベクタテーブル中での外部割り込み要因ベクタのアドレスと、アドレス出力部５１から出力されるベクタテーブル中での外部割り込み要因ベクタのアドレスが一致するかを判断する。例えば、一致検出部５がベクタテーブル中での外部割り込み要因ベクタの一致を検出すると、一致検出部５はこの検出結果をセレクタ２に入力する。
【００７４】
セレクタ２は、一致検出部５からの検出結果に基づいて、セレクタ３からのデータ（選択先頭アドレス情報）またはメモリ４からの所定のデータを選択し、入力データとしてデータ入力部５２に入力する。例えば、一致検出部５がベクタテーブル中での外部割り込み要因ベクタのアドレスの一致を検出してこの検出結果をセレクタ２に入力した場合、セレクタ２はセレクタ３からの選択先頭アドレス情報（外部割り込み処理Ａ，Ｂ，Ｃの先頭アドレス）をセレクタ２に入力する。例えば、セレクタ２は分岐Ａ処理命令に対応する外部割り込み処理Ａの先頭アドレスを選択アドレス情報としてマイクロプロセッサ５０のデータ入力部５２に入力する。
【００７５】
マイクロプロセッサ５０は、選択アドレス情報に基づいてアドレス出力部５１から割り込み要因に応じた外部割り込み処理Ａ，Ｂ，Ｃの先頭アドレスを出力し、メモリ４から外部割り込み処理のプログラムを読み出して実行する。
【００７６】
例えば、セレクタ２が外部割り込み処理Ａの先頭アドレスをマイクロプロセッサ５０に入力すると、マイクロプロセッサ５０は、メモリ４から「外部割り込みＡ処理プログラム」を読み出して実行する（ステップＳ２１０）。
【００７７】
また、セレクタ２が外部割り込み処理Ｂの先頭アドレスをマイクロプロセッサ５０に入力すると、マイクロプロセッサ５０は、メモリ４から「外部割り込みＢ処理プログラム」を読み出して実行する（ステップＳ２２０）。
【００７８】
また、セレクタ２が外部割り込み処理Ｃの先頭アドレスをマイクロプロセッサ５０に入力すると、マイクロプロセッサ５０は、メモリ４から「外部割り込みＣ処理プログラム」を読み出して実行する（ステップＳ２３０）。
【００７９】
このように、ベクタアドレス記憶部６がベクタテーブル中での外部割り込み要因ベクタのアドレスを記憶しているので、一致検出部５はマイクロプロセッサ５０から出力されたデータがベクタテーブル中での外部割り込み要因ベクタのアドレスであるか否かを検出することが可能となる。
【００８０】
また、Ａ処理記憶部１１、Ｂ処理記憶部１２、Ｃ処理記憶部１３が割り込み要因に応じた外部割り込み処理Ａ，Ｂ，Ｃの先頭アドレスを記憶するので、セレクタ３が割り込みコントローラ１からの選択信号（割り込み信号Ａ〜Ｃ）に応じた外部割り込み処理Ａ，Ｂ，Ｃの先頭アドレスを出力することが可能となる。
【００８１】
これにより、マイクロプロセッサ５０に割り込み信号Ａ〜Ｃに応じた外部割り込み処理Ａ，Ｂ，Ｃの先頭アドレスを入力することが可能となり、マイクロプロセッサ５０は外部割り込み処理プログラム（外部割り込みＡ処理プログラム、外部割り込みＢ処理プログラム、外部割り込みＣ処理プログラム）をメモリ４から読み出すことが可能となる。
【００８２】
このように、実施の形態３によれば、外部割り込み要因ベクタから外部割り込み処理プログラムを実行する場合（割り込みベクタテーブルに割り込みプログラムの先頭アドレスを持つ場合）であってもマイクロプロセッサ５０が割り込み要因に関する判定処理等を行うことなうく、割り込み優先度に基づいて外部割り込み要因毎に割り込み処理プログラムを実行することが可能となる。すなわち、マイクロプロセッサ５０による割り込み要因の判定処理の命令が不要となり、割り込みの受け付けから割り込み処理を実施するまでの処理時間を短時間で行うことが可能になる。
【００８３】
なお、実施の形態１〜３においては、ベクタアドレス記憶部６が所定の値を固定値として記憶することとしたが、ベクタアドレス記憶部６をＲＡＭやレジスタ等によって構成することによって記憶する値を変更可能としてもよいし、回路内の信号設定によって記憶する値を変更可能としてもよい。これにより、ベクタアドレス記憶部６は、外部割り込み開始アドレスの記憶とベクタテーブル中での外部割り込み要因ベクタのアドレスを記憶できるとともに、外部割り込み開始アドレスからベクタテーブル中での外部割り込み要因ベクタのアドレスへの書き換えや、ベクタテーブル中での外部割り込み要因ベクタのアドレスから外部割り込み開始アドレスへの書き換えが可能となる。したがって、割り込み処理方法が異なる実施の形態１および２に係る半導体集積回路装置１０のマイクロプロセッサ５０と実施の形態３に係る半導体集積回路装置１０のマイクロプロセッサ５０との間における半導体集積回路装置１０の流用を容易に行うことが可能となる。
【００８４】
実施の形態４．
つぎに、図９〜図１１を用いてこの発明の実施の形態４について説明する。実施の形態４では、複数のバンクメモリ（同一論理アドレス空間に複数の物理メモリを記憶し、切り替えて使用するメモリ）に複数の外部割り込み処理プログラムを格納しておき、いずれかのバンクメモリから外部割り込み処理プログラムを読み出して実行する。
【００８５】
図９は、本発明にかかる半導体集積回路装置の実施の形態４の構成を示すブロック図であり、図９の各構成要素のうち図１に示す実施の形態１の半導体集積回路装置１０と同一機能を達成する構成要素については同一番号を付しており、重複する説明は省略する。
【００８６】
半導体集積回路装置１０は、マイクロプロセッサ５０、割り込みコントローラ１、セレクタ７、Ａ処理バンクメモリ３１を備えるメモリ４、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３、一致検出部５、バンクアドレス領域記憶部３９、バンク制御部３７からなる。
【００８７】
Ａ処理バンクメモリ３１は割り込み信号Ａに対応した外部割り込みＡ処理プログラムを記憶し、Ｂ処理バンクメモリ３２は割り込み信号Ｂに対応した外部割り込みＢ処理プログラムを記憶し、Ｃ処理バンクメモリ３３は割り込み信号Ｃに対応した外部割り込みＣ処理プログラムを記憶する。ここでの、外部割り込みＡ処理プログラム、外部割り込みＢ処理プログラム外部割り込みＣ処理プログラムは、同一のアドレスに配置されている。
【００８８】
バンクアドレス領域記憶部３９は、Ａ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３を指定するバンクアドレス領域のアドレス範囲を記憶し、一致検出部５に出力する。
【００８９】
一致検出部５は、マイクロプロセッサ５０がアドレス出力部５１から出力する所定のアドレスがＡ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３を指定するアドレスであるか（アクセスを行っているか）否かを判断する。具体的には、アドレス出力部５１から出力される所定のアドレスの値と、バンクアドレス領域記憶部３９が記憶するバンクアドレス領域のアドレス範囲が一致するかを検出し、検出結果をバンク制御部３７に入力する。
【００９０】
バンク制御部３７は、一致検出部５からの検出結果と割り込みコントローラ１からの選択信号に基づいて、Ａ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３のいずれかを指定する信号（バンク選択信号（バンクメモリアドレス情報））を生成し、セレクタ７に入力する。バンク制御部３７は、アドレス出力部５１から出力される所定のアドレスの値（バンクメモリ指定情報）とバンクアドレス領域記憶部３９が記憶するバンクアドレス領域のアドレス範囲が一致する判断結果が一致検出部５から入力された場合に、セレクタ７にバンク選択信号を入力する。例えば、割り込みコントローラ１が優先度の最も高い割り込み要因に対応する割り込み信号Ａを識別する選択信号をバンク制御部３７に入力すると、バンク制御部３７は割り込み信号Ａに対応するＡ処理バンクメモリ３１を指定するバンク選択信号をセレクタ７に入力する。
【００９１】
セレクタ７は、バンク制御部３７からの選択信号に基づいて、Ａ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３の何れかから外部割り込み処理プログラムをデータ入力部５２に入力する。
【００９２】
つぎに、実施の形態４に係る半導体集積回路装置１０の動作手順を説明する。図１０は、実施の形態４に係る半導体集積回路装置の動作手順を示すフローチャートである。なお、ここでは実施の形態４の半導体集積回路装置１０の特徴的な動作について説明し、実施の形態１に係る半導体集積回路装置１０と同様の動作を行う処理についてはその説明を省略する。
【００９３】
外部装置等から割り込み信号Ａ〜Ｃが割り込みコントローラ１に入力されると、割り込みコントローラ１が優先度の最も高い外部割り込み処理に対応する要求信号をマイクロプロセッサ５０へ出力し、優先度の最も高い外部割り込み処理に対応する選択信号をバンク制御部３７へ出力する。割り込みコントローラ１から出力された要求信号は、マイクロプロセッサ５０の外部割り込み入力部５３に入力される（ステップＳ３００）。
【００９４】
外部割り込み入力部５３に要求信号が入力されると、アドレス出力部５１はＡ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３や一致検出部５へ、Ａ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３を指定するアドレスを出力する。
【００９５】
ここで、メモリ４が格納するメモリマップの構成を説明する。図１１は、実施の形態４に係るメモリ内のメモリマップの概念を説明するための図である。メモリマップ１０３は、アドレス「０ｘ００００」〜「０ｘＦＦＦＦ」にプログラム等のデータを格納している。メモリマップ１０３には、例えば先頭アドレス「０ｘ００００」から「リセット解除直後の処理プログラム」が格納され、先頭アドレス「０ｘ０２００」から「他の割り込み要因Ｘ処理プログラム」が格納され、先頭アドレス「０ｘ０４００」から「外部割り込み（Ａ，Ｂ，Ｃ）処理プログラム」が格納され、先頭アドレス「０ｘ０８００」から「他の割り込み要因Ｙ処理プログラム」が格納されている。
【００９６】
本実施の形態４においては、「外部割り込みＡ処理プログラム」がＡ処理バンクメモリ３１に格納され、「外部割り込みＢ処理プログラム」がＢ処理バンクメモリ３２に格納され、「外部割り込みＣ処理プログラム」がＣ処理バンクメモリ３３に格納されている。ここでの、外部割り込みＡ処理プログラム、外部割り込みＢ処理プログラム、外部割り込みＣ処理プログラムは、同一のアドレスに配置されている。このため、マイクロプロセッサ５０はバンクメモリのアドレスを指定することによって、「外部割り込みＡ処理プログラム」、「外部割り込みＢ処理プログラム」、「外部割り込みＣ処理プログラム」の読み出しを指示することが可能となる。
【００９７】
一致検出部５は、マイクロプロセッサ５０から出力されるバンクメモリを指定するアドレスがバンクアドレス領域記憶部３９から出力されるバンクアドレス領域のアドレス範囲内であるか（一致するか）を判断する。例えば、一致検出部５がバンクメモリを指定するアドレスの一致を検出すると、一致検出部５はこの検出結果をバンク制御部３７に入力する。
【００９８】
バンク制御部３７は、アドレス出力部５１から出力される所定のアドレスの値とバンクアドレス領域記憶部３９が記憶するバンクアドレス領域のアドレス範囲が一致する判断結果が一致検出部５から入力された場合に、Ａ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３のいずれかを指定する信号（バンク選択信号）をセレクタ７に入力する。例えば、割り込みコントローラ１が優先度の最も高い割り込み要因に対応する割り込み信号Ａを識別する選択信号をバンク制御部３７に入力すると、バンク制御部３７は割り込み信号Ａに対応するＡ処理バンクメモリ３１を指定するバンク選択信号をセレクタ７に入力する。
【００９９】
セレクタ７は、バンク制御部３７からの選択信号に基づいて、Ａ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３の何れかから外部割り込みＡ処理プログラム、外部割り込みＢ処理プログラム、外部割り込みＣ処理プログラムのいずれかをデータ入力部５２に入力する。
【０１００】
セレクタ７は、バンク制御部３７からのバンク選択信号が例えばＡ処理バンクメモリ３１を指定するバンク選択信号である場合、Ａ処理バンクメモリ３１からの外部割り込みＡ処理プログラムをデータ入力部５２に入力する。そして、マイクロプロセッサ５０は、セレクタ７からの外部割り込みＡ処理プログラムを実行する（ステップＳ３１０）。
【０１０１】
また、セレクタ７はバンク制御部３７からのバンク選択信号が例えばＢ処理バンクメモリ３２を指定するバンク選択信号である場合、Ｂ処理バンクメモリ３２からの外部割り込みＢ処理プログラムをデータ入力部５２に入力する。そして、マイクロプロセッサ５０は、セレクタ７からの外部割り込みＢ処理プログラムを実行する（ステップＳ３２０）。
【０１０２】
また、セレクタ７はバンク制御部３７からのバンク選択信号が例えばＣ処理バンクメモリ３３を指定するバンク選択信号である場合、Ｃ処理バンクメモリ３３からの外部割り込みＣ処理プログラムをデータ入力部５２に入力する。そして、マイクロプロセッサ５０は、セレクタ７からの外部割り込みＣ処理プログラムを実行する（ステップＳ３３０）。
【０１０３】
このように、バンクアドレス領域記憶部３９がバンクアドレス領域のアドレス範囲を記憶しているので、一致検出部５はマイクロプロセッサ５０から出力された所定のアドレスがＡ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３を指定するアドレスであるか否かを検出することが可能となる。
【０１０４】
また、バンク制御部３７が一致検出部５からの検出結果、割り込みコントローラ１からの選択信号に基づいて、Ａ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３のいずれかを指定するバンク選択信号をセレクタ７に送信するので、セレクタ７はバンク制御部３７からのバンク選択信号に基づいて、Ａ処理バンクメモリ３１、Ｂ処理バンクメモリ３２、Ｃ処理バンクメモリ３３の何れかから外部割り込みＡ処理プログラム、外部割り込みＢ処理プログラム、外部割り込みＣ処理プログラムの何れかをデータ入力部５２に入力することが可能となる。
【０１０５】
これにより、割り込み信号Ａ〜Ｃに応じた外部割り込みＡ処理プログラム、外部割り込みＢ処理プログラム、外部割り込みＣ処理プログラムのいずれかをマイクロプロセッサ５０に入力させ、入力させたプログラムをマイクロプロセッサ５０に実行させることが可能となる。
【０１０６】
このように、実施の形態４によれば、マイクロプロセッサ５０が割り込み要因に関する判定処理等を行うことなく、割り込み優先度に基づいて外部割り込み要因毎に割り込み処理プログラムを実行することが可能となる。すなわち、マイクロプロセッサ５０による割り込み要因の判定処理の命令が不要となり、割り込みの受け付けから割り込み処理を実施するまでの処理時間を短時間で行うことが可能になる。
【産業上の利用可能性】
【０１０７】
以上のように、本発明にかかる半導体集積回路装置は、外部割り込み要因に対する外部割り込み処理に適している。
【図面の簡単な説明】
【０１０８】
【図１】実施の形態１に係る半導体集積回路装置の構成を示すブロック図である。
【図２】実施の形態１に係る半導体集積回路装置の動作手順を示すフローチャートである。
【図３】選択信号と要求信号の出力タイミングを説明するための図である。
【図４】実施の形態１に係るメモリマップの概念を説明するための図である。
【図５】実施の形態２に係る半導体集積回路装置の構成を示すブロック図である。
【図６】分岐命令データの構成の一例を示す図である。
【図７】実施の形態３に係る半導体集積回路装置の動作手順を示すフローチャートである。
【図８】実施の形態３に係るメモリマップの概念を説明するための図である。
【図９】実施の形態４に係る半導体集積回路装置の構成を示すブロック図である。
【図１０】実施の形態４に係る半導体集積回路装置の動作手順を示すフローチャートである。
【図１１】実施の形態４に係るメモリマップの概念を説明するための図である。
【符号の説明】
【０１０９】
１  割り込みコントローラ
２，３，７  セレクタ
４  メモリ
５  一致検出部
６  ベクタアドレス記憶部
１０  半導体集積回路装置
１１  Ａ処理記憶部
１２  Ｂ処理記憶部
１３  Ｃ処理記憶部
２１  アドレス指定Ａ記憶部
２２  アドレス指定Ｂ記憶部
２３  アドレス指定Ｃ記憶部
２５  分岐命令ｏｐコード記憶部
３１  Ａ処理バンクメモリ
３２  Ｂ処理バンクメモリ
３３  Ｃ処理バンクメモリ
３７  バンク制御部
３９  バンクアドレス領域記憶部
５０  マイクロプロセッサ
５１  アドレス出力部
５２  データ入力部
５３  外部割り込み入力部
１０１〜１０３  メモリマップ
２０１  分岐命令データ
【図１】
2006202034.tif 000003
【図２】
2006202034.tif 000004
【図３】
2006202034.tif 000005
【図４】
2006202034.tif 000006
【図５】
2006202034.tif 000007
【図６】
2006202034.tif 000008
【図７】
2006202034.tif 000009
【図８】
2006202034.tif 000010
【図９】
2006202034.tif 000011
【図１０】
2006202034.tif 000012
【図１１】
2006202034.tif 000013