"外部から通知された信号に対応した処理をCPUが行う情報処理装置であって、複数の信号線が接続されたセレクタと、前記セレクタの1つの出力線が接続される端子と、クロック信号を2つ以上の異なる分周期で分周する分周手段と、信号を記憶する記憶素子が複数個配置された信号記憶手段と、前記分周手段が分周した複数のクロック信号の位相に基づき、前記端子と前記信号記憶手段の各記憶素子を択一的に接続する信号分配回路と、前記記憶素子の1つ以上に信号が格納されると、前記端子が信号を取得したことをCPUに通知する信号取得通知手段と、を有する情報処理装置。前記信号記憶手段の各記憶素子に優先度を割り当てる優先度割り当て手段と、前記CPUと前記信号取得通知手段を独立に接続する第1の割込み線及び第2の割込み線と、前記CPUが最も優先度が高い前記記憶素子の信号に基づく処理のために使用する、第1の制御バスと、前記CPUが優先度が最高でない前記記憶素子の信号に基づく処理のために使用する、第2の制御バスと、を有する、ことを特徴とする請求項1記載の情報処理装置。前記信号取得通知手段は、最も優先度が高い前記記憶素子に信号が格納された場合、前記第1の割込み線を介してCPUに通知し、前記信号取得通知手段は、優先度が最高でない前記記憶素子に信号が格納された場合、前記第1の割込み線が使用されていないことを条件に、前記第1の割込み線を介してCPUに通知し、前記第1の割込み線が使用されている場合、前記第2の割込み線を介してCPUに通知する、ことを特徴とする請求項1又は2記載の情報処理装置。複数のCPUを有し、各CPUが、それぞれCPUに固有の前記第1の割込み線及び前記第2の割込み線を介して前記信号取得通知手段と接続されており、前記第1の制御バス及び前記第2の制御バスは各CPUに共通である、ことを特徴とする請求項2記載の情報処理装置。前記第1の制御バスがいずれか1つ以上のCPUにより使用中であることを示す使用中情報記憶手段、を有し、前記使用中情報記憶手段が前記第1の制御バスが使用中でないことを示す場合、前期信号取得通知手段は、前記第1の割込み線を介して、優先度が最高でない前記記憶素子に信号が格納されたことをCPUに通知する、ことを特徴とする請求項4記載の情報処理装置。CPUは、前記使用中情報記憶手段が前記第1の制御バスが使用中でないことを示す場合、前記第1の制御バスを使用して、優先度が最高でない前記記憶素子の信号に基づく処理を行い、前記使用中情報記憶手段が前記第1の制御バスが使用中であることを示す場合、前記第2の制御バスを使用して、優先度が最高でない前記記憶素子の信号に基づく処理を行う、ことを特徴とする請求項5記載の情報処理装置。CPUは、前記信号記憶手段の2つ以上の記憶素子が優先度が最高でない信号を格納している場合、1つの信号に基づく処理を行う毎に、前記使用中情報記憶手段が前記第1の制御バスが使用中であることを示すか否かを判定する、ことを特徴とする請求項6記載の情報処理装置。複数の前記セレクタの出力線がそれぞれ入力される複数の端子と、複数の前記信号記憶手段と、各端子毎に、端子と記信号記憶手段の各記憶素子を択一的に接続する複数の信号分配回路と、各端子をCPUに対応づけるCPU対応付け手段と、を有し、前記信号取得通知手段は、前記記信号記憶手段が接続されている前記端子に基づき、前記CPU対応付け手段が対応づけたCPUに、前記端子が信号を取得したことを通知する、ことを特徴とする請求項4~7いずれか1項記載の情報処理装置。外部から通知された信号に対応した処理をCPUが行う情報処理装置の情報処理方法であって、複数の信号線が接続されたセレクタが1つの信号を選択するステップと、端子が、セレクタの1つの出力線から信号の入力を受け付けるステップと、分周手段が、クロック信号を2つ以上の異なる分周期で分周するステップと、信号分配回路が、前記分周手段が分周した複数のクロック信号の位相に基づき、前記端子と、記憶素子が複数個配置された信号記憶手段の1つの記憶素子を択一的に接続するステップと、信号取得通知手段が、前記複数の記憶素子の1つ以上に信号が格納されると、前記端子が信号を取得したことをCPUに通知するステップと、を有する情報処理方法。特許文献1が図示する例では、4本の割込み信号線により2の4乗の16種類の割込みを判別可能なので、マイコンに必要な入出力ポートの数を15から4に減少させることができる。しかしながら、この技術でも、マイコンに入力されるデータの数割込み信号線の数が3個以上になると、少なくともマイコンの入出力ポートが2個以上必要になるという問題がある。また、特許文献1に限らず、割込みをN倍に多重化すると、本来、1つの割込みがN個の割込み処理を必要とするため、プロセッサ及び制御バスの処理負荷がN倍に増加してしまうという問題も生じさせる。特に、シングルCPUのマイコンでは負荷分散が困難である。また、特許文献1の不都合を回避するため、1つの入出力ポートに複数の割込み信号を多重化することが検討される。しかし、このように多重化すると、割込みは優先度の高いものを優先するという原則があるが、割込みの優先度が逆転する現象が生じるおそれがある。図10は、優先度の異なる割込みの発生順と割込み処理について説明する図の一例である。図10では、マイコンの1つの入出力ポートに8個の割込み信号を多重化している。8個の割込み信号はそれぞれGPIOx0~GPIOx7に格納される。ここではGPIOx0に格納される割込みの優先度が最も高く、GPIOx7に格納される割込み信号の優先度が最も低いとする。マイコンはシステムクロックの1周期毎に1つのGPIOxxを監視するので、8個のGPIOx0~GPIOx7を全て監視するには、8クロックが必要になる。ここでは、GPIOx7から順番にGPIOx0までを監視している。例えば、GPIOx0とGPIOx5に同じタイミングで割込みが発生した場合、マイコンはGPIOx5の割込みをGPIOx0よりも先に検出する。このため、優先度が高いGPIOx0よりも優先度が低いGPIOx5の割込み処理の方が先に開始され、優先度が高いGPIOx0の割込み処理が待たされることになる。マイコンが、常に、優先度が高いGPIOx0から先に割込みを検出すればよいが、割込み信号は車両の種類やグレードなどによっても変わってくるので、マイコンへの割込みの入力時に優先度順を確定することは困難である。本発明は、上記課題に鑑み、1つの入出力ポートに複数の割込み信号を入力することが可能な情報処理装置を提供することを目的とする。本発明は、外部から通知された信号に対応した処理をCPUが行う情報処理装置であって、複数の信号線が接続されたセレクタと、前記セレクタの1つの出力線が接続される端子と、クロック信号を2つ以上の異なる分周期で分周する分周手段と、信号を記憶する記憶素子が複数個配置された信号記憶手段と、前記分周手段が分周した複数のクロック信号の位相に基づき、前記端子と前記信号記憶手段の各記憶素子を択一的に接続する信号分配回路と、前記記憶素子の1つ以上に信号が格納されると、前記端子が信号を取得したことをCPUに通知する信号取得通知手段と、を有することを特徴とする。1つの入出力ポートに複数の割込み信号を入力することが可能な情報処理装置を提供することができる。以下、本発明を実施するための形態について図面を参照しながら説明する。図1は、本実施形態の割込み処理の概略的な特徴を説明する図の一例である。マイコン100には、拡張ポート機構部11が搭載されている。拡張ポート機構部11は、1つの入出力ポート22以下、区別する場合、入出力ポートGPIO‐0~GPIO‐2というに接続されたセレクタ21及びGPIO‐xレジスタ図ではxは0~2が対となる構成を有する。11つのセレクタ21には複数の割込み信号線が接続されており、セレクタ21が1つの割込み信号を選択して入出力ポート22と接続する。1つのGPIO‐xレジスタは、割込み信号線の数以上のレジスタGPIO‐00~GPIO‐07を有している図では8個であり、GPIO‐1レジスタのレジスタGPIO‐10~GPIO‐17、GPIO‐2レジスタのレジスタGPIO‐20~GPIO‐27は不図示。レジスタGPIO‐00~GPIO‐07は対応する割込み信号を記憶する。レジスタGPIO‐00~GPIO‐07はそれぞれINTC12と接続されているので、INTC12に割込み信号線の割込みを個別に通知できる。したがって、少ない1つの入出力ポート22で、2つ以上の割込み信号を取り込むことができる。2また、複数のPEProcessorElement15が制御バスAと制御バスBと接続されている以下、区別する場合PE1~3という。INTC12は割込みを検出すると、レジスタGPIO‐00~GPIO‐07の優先度に従って、最も優先度が高い割込みの割込み処理を、2本の制御バス16のうち制御バスAを使用して行う。それ以外の割込みに以下、通常割込みという対しては、制御バスBを使用して割込み処理を行う。これにより、PE1~3が優先度に応じて制御バスAと制御バスBを使い分けるので、割込みを多重化したために生じるPE15や制御バスの負荷が増大することを抑制できる。3また、制御バスAを最優先の割込み専用の制御バスとすることで、最優先の割込みが通常割込みにより待たされることを防止できる。一方、PE1~3は制御バスAが空いている場合は、最優先以外の割込みでも、制御バスAを使用して割込み処理を行う。したがって、制御バスAが空いている場合は、制御バスAとBが共に使用され、さらに処理効率を向上できる。このように、本実施形態のマイコン100は従来技術の課題を適切に解決することができる。図1について詳細に説明する。マイコン100は、3つの入出力ポート22、制御バスA及び制御バスBに接続された、拡張ポート機構部11、INTC12、ROM13、RAM14、並びに、PE1~3を有している。マイコン100は電子制御ユニットECU:ElectronicControllerUnitに搭載され、燃費向上や運転者の負担軽減、安全性の向上などをもたらすため、エンジンなどの各種の車載装置を制御する。PE1~3は、プロセッサ、CPU、又は、CPUコアと同様に、演算装置、キャッシュメモリ、及び、レジスタ等を有する中央処理装置の一態様である。PE1~3は別々のプログラムを独立に実行することもできるし、ロックステップ方式を採用して全く同じプログラムを実行してもよい。図では、PE1がエンジン制御、PE2がボディ系の制御、PE3がナビ系の処理を行うとしている。なお、PEの数は2つ以上であればよく、4つ以上でもよい。エンジン制御では、例えば、アクセル開度等を検出してスロットル開度や燃料噴射量を決定し、また、クランク角に基づきイグナイタの点火タイミングを制御する。ボディ制御では、例えば、電子キーと無線通信した結果によりドアロックを解除したり、ドアロックを施錠する。また、ドアの開閉によるカーテシスイッチのオン/オフを検出し車内灯を制御することなどが行われる。ナビ系の処理では、例えば、GNSSGlobalNavigationSatelliteSystemsなどを使用して車両の位置情報を検出し、周辺の道路地図に自車位置アイコンを液晶ディスプレイなどの表示装置に表示する処理が行われる。また、ラジオやテレビの受信装置、BDプレーヤと連携して、表示装置にAV系の画面やUIUserInterfaceを表示する処理が行われる。ROM13にはPE1~3が実行するプログラム、OSOperatingSystem等が記憶されている。RAM14はPE1~3が作業領域に使用するランダムアクセスメモリである。拡張ポート機構部11はポートレジスタ23及びセレクタ21を有する。ポートレジスタ23は、入出力ポートGPIO‐0~GPIO‐2のそれぞれに対応して、GPIO‐0レジスタ、GPIO‐1レジスタ、GPIO‐2レジスタを有する以下、区別しない場合、GPIO‐xレジスタという場合がある。1つのGPIO‐xレジスタは少なくともセレクタ21に接続された割込み信号線の数以上のレジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27を有する。セレクタ21には、車速センサ、ブレーキセンサ、オイルセンサ、レインセンサなどの各種センサが接続されている。GPIO‐xレジスタとセレクタ21は、それぞれが1つの入出力ポート22を介して接続されている。図では入出力ポートGPIO‐0~GPIO‐2は3つだが4つ以上とすることも可能である。なお、GPIO‐xレジスタのレジスタGPIO‐00~GPIO‐07にどの割込み信号が記憶されるかは固定である。図示する態様ではセレクタ21は、不図示の電子制御ユニットの基板上に固定されている。また、図ではセレクタ21がマイコン100の外部に接続されているが、マイコン100にスペースがあればマイコン内にセレクタ21を配置してもよい。INTC12は割込みコントローラであり、GPIO‐0レジスタのレジスタGPIO‐00~GPIO‐07に割込み信号が記録されているか否かを判定する。GPIO‐1レジスタ、GPIO‐2レジスタについても同様である。割込み信号は、例えばHigh=0x1つまり1とする。割込み信号が記録されている場合、INTC12はレジスタGPIO‐00~GPIO‐07の優先度に応じて最優先割込み線又は通常割込み線を使用して、入出力ポートGPIO‐1~GPIO‐2に対応したPE1~3に割込みする。本実施形態では、最優先の割込み信号は、GPIO‐0レジスタのレジスタGPIO‐00、GPIO‐1レジスタのレジスタGPIO‐10、GPIO‐2レジスタのレジスタGPIO‐20、に割込み信号が記憶された場合に発生する。ただし、後述する優先度設定テーブルにより、最優先の割込み信号のレジスタは可変である。割込みされたPE1~3は割込み処理を開始する。図2は、拡張ポート機構部11を説明する図の一例である。図2aにおいて図1と同一部の説明は省略する。図2aでは、入出力ポートGPIO‐0~GPIO‐2のうち入出力ポートGPIO‐0に関係する構成のみを図示した。拡張ポート機構部11のGPIO‐0レジスタにはデマルチプレクサ24が接続されている。デマルチプレクサ24は、セレクタ21から入出力ポートGPIO‐0に送信された割込み信号を、GPIO‐0レジスタのレジスタGPIO‐00~GPIO‐07に振り分ける。セレクタ21及びデマルチプレクサ24には共通の制御信号が供給される。制御信号は、システムクロックを1/2、1/4、1/8分周したクロック信号であり、3つのクロック信号の位相状態HorLの組み合わせが制御信号となる。このため、マイコン100はPE1~3に供給されるシステムクロックを分周器25~27に分岐する。システムクロックは、1/2分周器27、1/4分周器26、1/8分周器25、によりそれぞれ分周される。分周されたクロック信号は、デマルチプレクサ24及び端子28を介してセレクタ21に供給される。図2bは制御信号を模式的に説明する図の一例である。セレクタ21は、制御信号に基づき、入出力ポートGPIO‐0に出力する割込み信号を順番に切り換える。本実施形態では割込み信号の番号の昇順に切り換えるものとする。デマルチプレクサ24は、8種類の割込み信号を制御信号に基づき分割し、GPIO‐0レジスタのレジスタGPIO‐00~GPIO‐07に記憶する。図2bに示すように1/2分周、1/4分周、1/8分周により、3つのクロック信号の位相の組み合わせで8つの状態が得られる。セレクタ21は、1/2分周のクロック信号がL、1/4分周のクロック信号がL、1/8分周のクロック信号がL以下、LLLと記述するの場合に、GPIO‐00向けの割込み信号を出力する。以下、3つのクロック信号の位相の組み合わせに応じて、GPIO‐01~GPIO‐07向けの割込み信号を出力する。一方、デマルチプレクサ24は、システムクロックの例えば立ち上がりエッジを契機に、割込み信号を取り込む。取り込んだ割込み信号は、3つのクロック信号の位相の組み合わせに応じてGPIO‐01~GPIO‐07に記憶する例えば、LLLならGPIO‐00に記憶する。。割込み信号の数は7以下又は9以上とすることもできるので、割込み信号の数が変わった場合、分周器25~27の数や種類が変動する。また、セレクタ21の多重度とデマルチプレクサ24の分解能を8としているがあくまで一例である。図3は、INTC12及びポートレジスタ23の構成図の一例を示す。図3では説明のため、INTC12とポートレジスタ23の位置が図1,2と逆になっている。INTC12については図4にて詳細に説明する。上記のように、ポートレジスタ23は3つの入出力ポートGPIO‐0~GPIO‐2に対応してGPIO‐0レジスタ~GPIO‐2レジスタを有する。GPIO‐0レジスタは、入出力ポートGPIO‐0から入力された各割込み信号をレジスタGPIO‐00~GPIO‐07に記憶し、GPIO‐1レジスタは入出力ポートGPIO‐1から入力された各割込み信号をレジスタGPIO‐10~GPIO‐17に記憶し、GPIO‐2レジスタは入出力ポートGPIO‐2から入力された各割込み信号をレジスタGPIO‐20~GPIO‐27に記憶する。レジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27は1つが1bitの記憶素子である。入出力ポートGPIO‐xから割込み信号が出力されたGPIO‐00~GPIO‐07等は0x1を記憶する。この割込み信号は、PE1~3が消去WriteClearするまで保持される。また、GPIO‐00~GPIO‐07等はそれぞれがbit単位のマスクレジスタMSK0~7、10~17、20~27を有しており、割込み信号が出力されても、PE1~3がマスクレジスタMSK0~7、10~17、20~27に1を設定することで、INTC12への割込みを0とすることができる。INTC12は優先制御部31及びバス監視部32を有し、優先制御部31とバス監視部32の間に制御部33及びメモリ部34を有する。優先制御部31は、GPIO‐xレジスタのレジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27の割込み信号を設定するための優先度bit0~7を有する。バス監視部32は優先度0保持部321、バス切替部322、優先度1‐7保持部323、及び、3つのセレクタ324~326を有している。優先度0保持部321及び優先度1‐7保持部323はそれぞれ3つのセレクタ324~326の入力側と接続され、バス切替部322は制御線により3つのセレクタ324~326と接続されている。セレクタ324は最優先割込み線A1によりPE1と、セレクタ325は最優先割込み線A2によりPE2と、セレクタ326は最優先割込み線A3によりPE3と、それぞれ接続されている。優先度1‐7保持部323は、通常割込み線B1~B3によりPE1~3と接続されている。このように、最優先割込み線A1~A3は、優先度0保持部321と、優先度1‐7保持部323の両方から使用される。図4は、INTC12のより詳細な機能ブロック図の一例である。INTC12は、割込み信号を取得すると割込み信号に優先度を与え、PE1~3に割込みを通知する。優先制御部31は、1つのPE毎に優先度bit0~7を有する。GPIO‐0レジスタ、GPIO‐1レジスタ、GPIO‐2レジスタとPE1~3の対応付けは、後述する割当設定テーブルにより行われる。また、GPIO‐xレジスタの各レジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27は後述する優先度設定テーブルにより優先度bit0~7に対応づけられている。制御部33は、GPIO‐xレジスタのレジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、又は、GPIO‐20~GPIO‐27に0x1が記憶されていると、割当設定テーブルと優先度設定テーブルに基づき対応付けられるPE1~3の優先度bit0~7に0x1を設定する。この対応付けは、割当設定テーブルと優先度設定テーブルに基づくので、レジスタGPIO‐00~GPIO‐07、レジスタGPIO‐10~GPIO‐17、レジスタGPIO‐20~GPIO‐27と優先度bit0~7の対応は任意である。最優先割込みとして扱われる優先度bit0及び通常割込みとして扱われる優先度bit1‐7は、割込み先のPE1~3毎に優先度0保持部321と優先度1‐7保持部323に出力される。バス切替部322はこれを利用して、割込み信号の出力先のバスを制御バスA及び/又は制御バスBに切り換える。バス切替部322は、優先度0保持部321から取得したPE1~3それぞれの優先度bit0をAND回路331~333に出力する。同様に、バス切替部322は、優先度1‐7保持部323から取得したPE1~3それぞれの優先度bit1‐7をAND回路331~333に出力する。AND回路331の入力側にはPE1の優先度0保持部321の反転出力と、PE1の優先度1‐7保持部323の出力が接続されている。AND回路332の入力側にはPE2の優先度0保持部321の反転出力と、PE2の優先度1‐7保持部323の出力が接続されている。AND回路333の入力側にはPE3の優先度0保持部321の反転出力と、PE3の優先度1‐7保持部323の出力が接続されている。AND回路331~333の出力はセレクタ324~326の制御線としてセレクタ324~326と接続されている。優先度0保持部321が1を出力すれば、反転されAND回路331~333に供給されるので、AND回路331~333は優先度1‐7保持部323の出力に関係なく0を出力する。優先度0保持部321が0を出力すれば、反転されAND回路331~333に供給されるので、AND回路331~333は優先度1‐7保持部323の出力が1の場合に1を出力する。優先度0保持部321が0を出力し、優先度1‐7保持部323が0を出力する場合、そもそも割込み要求がないことになるので、この場合は除外してよい。したがって、AND回路331~333の出力は、優先度0保持部321が1を出力する場合に0となる。優先度0保持部321が0を出力する場合に1となる。セレクタ324~326への制御線が0の場合、セレクタ324~326は優先度0保持部321の割込み信号を選択して最優先割込み線Aを介しPE1~3に出力する。セレクタ324~326への制御線が1の場合、優先度1‐7保持部323の割込み信号を選択して通常割込み線Bを介しPE1~3に出力する。よって、GPIO‐xレジスタにより最優先割込みされた場合、セレクタ324~326は最優先割込み線Aを使用してPE1~3に最優先度の割込みをする。一方、GPIO‐xレジスタにより最優先割込みされていない場合、バス切替部322は最優先割込み線Aと通常割込み線Bの両方を使って割込みする場合と、通常割込み線Bのみを使って割込みする場合とがある。例えば、PE1が制御バスAを使用していなくても、PE2、3の1つ以上が制御バスAを使用している場合があり得る。PE1が制御バスAを使用していないが、PE2又はPE3が制御バスAを使用している場合、PE1は制御バスAを使用すべきでない。このため、SW1~3が、優先度bit1‐7保持部とセレクタ324~326の間の接続をオン/オフする。SW1~3のオン/オフには、AND回路331~333の状態が利用される。AND回路331の出力はPE1が制御バスAを使用しているか否かを示すフラグFLAG1となり、AND回路332の出力はPE2が制御バスAを使用しているか否かを示すFLAG2となり、AND回路333の出力はPE3が制御バスAを使用しているか否かを示すFLAG3となる。制御バスAは1本しかないので、PE1~3の1つでも制御バスAを使用していれば、使用中と判定される。このため、フラグFLAG1~3の3つの状態から、改めて制御バスA未使用フラグを定義する。制御バスA未使用フラグが1とはフラグFLAG1~3が全て1である場合である。制御バスA未使用フラグが0とはフラグFLAG1~3が1つでも0である場合である。制御部33はAND回路331~333の出力を監視してフラグFLAG1~3をそれぞれ更新する。そして、バス切替部はSW1~3を制御バスA未使用フラグの状態に基づき制御する。SW1~3について説明する。優先度1‐7保持部323と、セレクタ324~326は、SW1~3により接続がオン/オフされる。バス切替部322は、制御バス未使用フラグが1の場合、SW1~3をオンにして、制御バス未使用フラグが0の場合、SW1~3をオフにする。SW1~3がオンの場合、優先度1‐7保持部323とセレクタ324~326が接続されるので、優先度0保持部321がPE1~3の全てについて0x0を出力する場合制御バスA未使用フラグが1の場合、優先度1‐7保持部323は、最優先割込み線Aと通常割込み線Bの両方からPE1~3に割込みすることができる。したがって、制御バスAがどのPE1~3にも使用されていない場合にだけ、PE1~3は通常割込みに制御バスAを使用することができる。一方、制御バスA未使用フラグが0の場合、優先度1‐7保持部323は、通常割込み線BのみからPE1~3に割込みすることができる。なお、最優先割込み線A、Bが使用された割込みに対し、PE1~3は以下のように割込み処理に使用する制御バスA,Bを使い分ける。a最優先割込み線Aにて割込みされた場合PE1~3は、割込み要因を確認して、最優先割込みの場合は制御バスAを使用する。通常割込みの場合は、制御バスA未使用フラグが1の場合は制御バスAを使用し、制御バスA未使用フラグが0の場合は制御バスBを使用する。b通常割込み線Bにて割込みされた場合PE1~3は、制御バスBを使用する。最優先割込み線Aは通常優先度の割込みにも使用されるので、最優先割込み線Aにより割込みされても、制御バスAの使用状態によって、制御バスBを使用して割込み処理することで、制御バスAを最優先割込みに解放することができる。通常割込み線Bは通常優先度の割込みにしか使用されないので、常に、制御バスBを使用することで制御バスAを最優先割込みに解放することができる。メモリ部34は、各種のテーブルを記憶するレジスタである。メモリ部34には、GPIO‐xレジスタのレジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27と優先度を対応づける優先度設定テーブル、入出力ポートGPIO‐xとPE1~3を割り当てる割当設定テーブル、制御バスA未使用フラグ、及び、割込み処理実施中フラグを記憶している。詳しくは図5,6により説明する。なお、図4はハード的な回路や接続線によりバス切替部322を実現している。しかし、バス切替部322はソフトウェアにより実現することもできる。この場合、バス切替部322は、優先度0保持部321が1を出力する場合に、フラグFLAG1~3に0を設定し、優先度0保持部321が0を出力する場合に1を設定する。レジスタ、テーブルの構成例図5は、GPIO‐xレジスタのレジスタイメージを説明する図の一例である。これまで説明したようにGPIO‐0レジスタはレジスタGPIO‐00~GPIO‐07を、GPIO‐1レジスタはレジスタGPIO‐10~GPIO‐17を、GPIO‐2レジスタはレジスタGPIO‐20~GPIO‐27をそれぞれ有している。GPIO‐xの各レジスタは1bitとなっている。レジスタGPIO‐00~GPIO‐07、レジスタGPIO‐10~GPIO‐17、レジスタGPIO‐20~GPIO‐27には、それぞれマスクレジスタがbit単位で割り当てられている。図では、GPIO‐0レジスタのレジスタGPIO‐00~GPIO‐07にマスクレジスタMSK00~MSK07が、GPIO‐1レジスタのレジスタGPIO‐10~GPIO‐17にマスクレジスタMSK10~MSK17が、GPIO‐2レジスタのレジスタGPIO‐20~GPIO‐27にマスクレジスタMSK20~MSK27が、割り当てられている。レジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27は0x0が割込みなしを、0x1が割込み有りを意味する。いったん、レジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27が0x1になると、割込みがない状態でPE1~3が0x1を消去するまで、割込み有り状態を保持する。MSK00~MSK07、MSK10~MSK17、MSK20~MSK27は、0x0がマスク未設定を、0x1がマスク設定有りを意味する。MSK00~MSK07、MSK10~MSK17、MSK20~MSK27が0x1の場合、対応するレジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27が0x1になっていても、レジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27の0x1がINTC12に出力されることはない。MSK00~MSK07、MSK10~MSK17、MSK20~MSK27はPE1~3が初期設定されていると共に、必要に応じてPE1~3が設定する。図6aは、制御バスA未使用フラグと割込み処理実施中フラグ設定テーブルを説明する図の一例である。1つのGPIO‐xレジスタに対し、8つの割込み処理実施中フラグ及び1つのフラグFLAGが対応づけて登録されている。ING00~07、ING10~17、ING20~27が0x0の場合、割込み処理が未実施であることを示し、0x1の場合、0x1となっている優先度の割込み処理が実施中であることを示す。例えば、割込み処理実施中フラグING00~07は、入出力ポートGPIO‐0によりどの優先度すなわち、どの割込み信号の割込み処理が実施中かを示す。入出力ポートGPIO‐1、入出力ポートGPIO‐2についても同様である。割込み処理実施中フラグING11~07の1つが0x1の場合、制御部33はPE1に新たな割込みを通知しないING00が1でも通常優先度の割込みは並行に行われる。PE1~3は、入出力ポートGPIO‐0による割込み処理の実行を開始する際、0x1になっているレジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27と対応するフラグING00~07、ING10~17、ING20~27に0x1を設定する。割込み処理の終了後、処理が終了したレジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27を0x0に消去WriteClearした後、フラグING00~07、ING10~17、ING20~27、に0x0を設定する。フラグFLAG1~3については上記のとおり、AND回路331~333の出力と対応しており、これらにより制御バスA未使用フラグの状態が判定される。図6bは割込み信号の優先度設定テーブルの一例を示す図である。優先度設定テーブルはGPIO‐xレジスタに共通である。優先度設定テーブルは、GPIO‐xレジスタのレジスタGPIO‐00~GPIO‐07GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27も同様のそれぞれに、3bitの優先度設定bitがPRI00~PRI72が対応づけられた構成になっている。3bitとしたのは、優先度が0~7の8段階だからであり、優先度の種類の数に応じてbit数は増減される。この例では、GPIO‐xレジスタのレジスタGPIO‐0は優先度0、GPIO‐1は優先度1、GPIO‐2は優先度2、GPIO‐3は優先度3、GPIO‐4は優先度4、GPIO‐5は優先度5、GPIO‐6は優先度6、GPIO‐7は優先度7、となっている。よって、図の設定例ではレジスタGPIO‐0が最も優先度が高く、GPIO‐7が最も優先度が低くなる。開発者等が優先度設定テーブルを変更することでGPIO‐00~GPIO‐07に格納される各割込み信号の優先度を変更することができる。なお、優先度設定テーブルにおいて、GPIO‐00~GPIO‐07の2つ以上に同じ優先度設定bitを設定することもできる。この場合、優先度設定bitが同じレジスタGPIO‐00~GPIO‐07は同じ優先度なので、同じ優先度設定bitのレジスタに1が設定された順に割込み処理される。図6cは、割当設定テーブルの一例を示す。割当設定テーブルは、入出力ポートGPIO‐xとPE1~3を対応づけるテーブルである。例えば開発者は、入出力ポートGPIO‐xの割込み信号を必要とするとPE1~3を考慮して、割当設定テーブルを作成する。図の例では、PEが6つある場合を示し、PE1がPE00、PE2がPE01、PE3がPE10、PE4がPE11、PE5がPE20、PE6がPE21、のように対応している。PEがPE1~3の3つしかない場合、入出力ポートGPIO‐0はPE1,入出力ポートGPIO‐1はPE2に、入出力ポートGPIO‐2はPE3に、対応づけられている。入出力ポートGPIO‐xの数とPEの数には制約がなく、入出力ポートGPIO‐xの数とPEは適宜、対応づけることができる。動作手順以上の構成に基づき、マイコン100の全体的な動作手順について説明する。図7は、マイコン100が割込み処理する際の全体的な動作手順を説明するフローチャート図の一例である。マイコン100が起動すると、制御部33は割当設定テーブルをメモリ部34のレジスタ不図示に設定することで、入出力ポートGPIO‐0~GPIO‐2とPE1~3を割り当てるS1。上記のように、入出力ポートGPIO‐0とPE1、入出力ポートGPIO‐1とPE2、入出力ポートGPIO‐2とPE3がそれぞれ対応づけられている。次に、制御部33は、優先度設定テーブルをメモリ部34のレジスタ不図示に設定することで、入出力ポートGPIO‐xのレジスタGPIO‐00~GPIO‐07、GPIO‐10~GPIO‐17、GPIO‐20~GPIO‐27に優先度bit0~7を割り当てるS2。ここで、入出力ポートGPIO‐1から割込み信号が入力されたものとするS3。制御部33は、割当設定テーブルにより割込みするPEを決定する。ここではPE2に割込みすると決定される。最優先割込みが発生したとする。GPIO‐1レジスタのGPIO‐10に1が設定された場合、最優先割込みである。最優先割込みの場合、少なくともFLAG2は0になり、制御バスA未使用フラグも0となる。この場合、最優先割込みのみか、通常割込みを含むのかにより処理が分かれるS4。<最優先割込みのみの場合>最優先割込みのみの場合S4のYes、フラグFLAG2が0なので、優先度0保持部321からセレクタ325を介して、PE2の最優先割込み線A2を経由してPE2に割込みが通知されるS5。PE2は入出力ポートGPIO‐1からの割込み信号に対応した割込みハンドラを実行して、制御バスAを介して入出力ポートGPIO‐1に割込み要因を確認するS6。PE2は割込み要因に応じた割込み処理を実行するS7。PE2は、割込み処理実施中フラグING10に1を設定する。PE2は制御バスAを介してレジスタGPIO‐10をクリアWriteClearするS8。PEは割込み要因を確認しているので、レジスタGPIO‐10をクリアすればよいことが分かっている。この後、PE2は割込み処理中フラグ設定テーブルING10を0に戻す。レジスタGPIO‐10が0にクリアされたので、フラグFLAG2は1に戻る。ただし、制御バスA未使用フラグは、他のフラグFLAG1,3の状態により01のどちらにもなる可能性がある。<最優先割込みと通常割込みが混載の場合>ステップS4に戻り、最優先割込みのみでない場合S4のNo、通常割込みのみか否かにより処理が分岐されるS10。通常割込みのみでない場合S10のNo、GPIO‐1レジスタのGPIO‐10に1が、GPIO‐11~17の1つ以上に1が設定された、最優先割込みと通常割込みの混載状態である。この場合は、最優先割込みから先に処理されるので、ステップS11~S14にて最優先割込みが処理される。処理内容はS5~S8と同様である。これにより、割込み信号は通常割込みのみになる。<通常割込のみの場合>通常割込みのみの場合S10のYes、制御バスA未使用フラグの状態により処理が制御されるS15。制御バスA未使用フラグが0の場合S15のYes、制御バスAがPE1,3のいずれかに使用されているので、SW1~3がオフになり、バス監視部32の優先度1‐7保持部323が通常割込み線B2を経由してPE2に割込みを通知するS16。PE2は入出力ポートGPIO‐1からの割込み信号に対応した割込みハンドラを実行して、制御バスBを介して入出力ポートGPIO‐1に割込み要因を確認するS17。ここで、通常割込みは複数ある可能性があるので、PE2は割込み要因が複数か否かを判定するS18。例えば、レジスタGPIO‐13だけが1であるとする。割込み要因が複数でない場合S18のNo、PE2は割込み要因に応じた割込み処理を実行するS19。PE2は、割込み処理実施中フラグING13に1を設定する。割込み処理が終了するとPE2は制御バスBを介してレジスタGPIO‐13をクリアWriteClearするS20。また、PE2は割込み処理実施中フラグING13をクリアする。割込み要因が複数である場合S18のYes、PE2は割込み処理を繰り返すS22、S23。例えば、レジスタGPIO‐13とレジスタGPIO‐15が1、であるとする。具体的な処理はS19、S20と同様であるが、PE2は優先度の高いレジスタGPIO‐13の割込み処理を先に行う。1巡目PE2は割込み要因に応じた割込み処理を実行するS22。PE2は、割込み処理実施中フラグING13に1を設定する。割込み処理が終了するとPE2は制御バスBを介してレジスタGPIO‐13をクリアWriteClearするS23。また、PE2は割込み処理実施中フラグING13をクリアする。2巡目PE2は入出力ポートGPIO‐1からの割込み信号に対応した割込みハンドラを実行して、制御バスBを介して入出力ポートGPIO‐1に割込み要因を確認するS17。割込み要因はすでに1つになっているS18のYes。PE2は割込み要因に応じた割込み処理を実行するS19。PE2は、割込み処理実施中フラグING15に1を設定する。割込み処理が終了するとPE2は制御バスBを介してレジスタGPIO‐15をクリアWriteClearするS20。また、PE2は割込み処理実施中フラグING15をクリアする。<制御バスAが未使用の場合>ステップS15に戻り、制御バスA未使用フラグが0でない場合S15のNo、PE1~3がすべて制御バスAを使用していないので、SW1~3がオンになり、バス切替部322は制御バスAを経由してPE2に割込みを通知することができるS24。すなわち、PE2の最優先割込みの割込み処理は終了しているので、AND回路332は1を出力しフラグFLAG2は1、セレクタ325は優先度1‐7保持部323と最優先割込み線Aを接続する。PE2は入出力ポートGPIO‐1からの割込み信号に対応した割込みハンドラを実行して、制御バスAを介して入出力ポートGPIO‐1に割込み要因を確認するS25。ここで、通常割込みは複数ある可能性があるので、PE2は割込み要因が複数か否かを判定するS26。例えば、レジスタGPIO‐13だけが1であるとする。割込み要因が複数でない場合S26のNo、PE2は、制御バスA未使用フラグの状態により使用する制御バスを切り替えるS27。これにより、制御バスAはPE1、3の最優先割込みに優先的に開放される。制御バスA未使用フラグが0の場合S27のYes、PE2は制御バスBを経由して割込み要因に応じた割込み処理を実行するS28。PE2は、割込み処理実施中フラグING13に1を設定する。PE2は制御バスBを介して、レジスタGPIO‐13をクリアWriteClearするS29。この後、PE2は割込み処理中フラグING13を0に戻す。制御バスA未使用フラグが0でない場合S27のNo、PE2は制御バスAを経由して割込み処理を実行するS30。PE2は、割込み処理実施中フラグING13に1を設定する。割込み処理が終了するとPE2はレジスタGPIO‐13をクリアWriteClearするS31。また、PE2は割込み処理実施中フラグING13をクリアする。ステップS26において、割込み要因が複数である場合S26のYes、PE2は割込み処理を繰り返すS33~S36。例えば、レジスタGPIO‐13、レジスタGPIO‐15が1であるとする。PE2は、制御バスA未使用フラグの状態により使用する制御バスを切り替えるS27。これにより、制御バスAはPE1、3の最優先割込みに優先的に開放される。制御バスA未使用フラグが0の場合S33のYes、PE2は制御バスBを使用してレジスタGPIO‐13に応じた割込み処理を実行するS34。PE2は、制御バスBを使用して割込み処理実施中フラグING13に1を設定する。割込み処理が終了するとPE2はレジスタGPIO‐13をクリアWriteClearするS35。また、PE2は割込み処理実施中フラグING13をクリアする。制御バスA未使用フラグが0でない場合S33のNo、PE2は制御バスAを使用してレジスタGPIO‐13に応じた割込み処理を実行するS36。PE2は、制御バスAを使用して割込み処理実施中フラグING13に1を設定する。割込み処理が終了するとPE2はレジスタGPIO‐13をクリアWriteClearするS37。また、PE2は割込み処理実施中フラグING13をクリアする。割込み要因が複数あったので、処理はステップS25に戻り、PE2は制御バスAを介して入出力ポートGPIO‐1に割込み要因を確認するS25。ここでは、レジスタGPIO‐15が1のまま残っている。これにより処理はステップS26に戻る。レジスタGPIO‐15のみなので、S27~S31が実行される。PE2は、制御バスA未使用フラグの状態により使用する制御バスを切り替えるS27。このように、INTC12が通常割込み線BでPEに割込んだ場合、PE2は1つの割込み処理を実行するごとに制御バスA未使用フラグの状態を確認する。制御バスA未使用フラグが0の場合S27のYes、PE2は制御バスBを経由して割込み要因に応じた割込み処理を実行するS28。PE2は割込み処理実施中フラグING15を1に設定する。PE2は制御バスBを介して、レジスタGPIO‐15をクリアWriteClearするS29。また、PE2は割込み処理中フラグING15を0に戻す。制御バスA未使用フラグが0でない場合S27のNo、PE2は制御バスAを経由して割込み処理を実行するS30。PE2は、割込み処理実施中フラグING15に1を設定する。割込み処理が終了するとPE2はレジスタGPIO‐15をクリアWriteClearするS31。また、PE2は割込み処理実施中フラグING15をクリアする。効果本実施形態のマイコン100は拡張ポート機構部11を有することで、上記の課題を解決することができる。1例えば図2に示したように、マイコン外部にてN:1セレクタ、マイコン内部にて1:Nデマルチプレクサを配置することで、1つの入出力ポートGPIO‐xにN本の割込み信号を多重化することができる。したがって、拡張ポート機構部11は実際の端子数よりも多くの外部からの割込み信号を1本の入出力ポートでマイコン100に通知することができる。また、ポートレジスタ23は1つ以上のGPIO‐xレジスタを有し、多重化された割込み信号を格納できるので、マイコン100は入出力ポートGPIO‐xを複数個、有することも可能である。また、セレクタ21及びデマルチプレクサ24の制御信号は、システムクロックを分周することで生成されるので、レジスタGPIO‐00~GPIO‐07を指定するレジスタ等を別途、用意する必要がない。また、システムクロックを使用することで、セレクタ21やデマルチプレクサ24はGPIO‐xレジスタなどの内部処理と同期をとることが可能となり、個別の同期処理が不要となる。2また、本実施形態では、INTC12が、割込みの優先度に応じて最優先割込み線Aと通常割込み線Bを使い分けて1つのPEに割り込むので、制御バスやPEの負荷を低減できる。3また、従来、割込み信号を多重化すると優先度と割込み処理の順序が逆転するおそれがあった。本実施形態のマイコン100は、制御バスAと制御バスBによりINTC12とPE1~3を多重に接続し、最優先割込みは優先的に制御バスAを介してPE1~3に通知する。これにより、最優先割込みよりも通常割込みが優先されることを防止できる。図8は、制御バスAと制御バスBによる割込みの効率化を説明する図の一例である。まず、入出力ポートGPIO‐2、GPIO‐0、GPIO‐1から、割込みがランダムに発生している。図8では、このような割込みに対し、制御バスが1本の場合、最優先割込み専用の制御バスAと通常割込み専用の制御バスBを配置した場合、最優先割込みが優先されるが通常割込みも使用可能な制御バスAと通常割込み専用の制御バスBを配置した場合本実施形態、のバスの使用頻度を模式的に示している。では、多重化により最優先割込みと通常割込みがランダムに発生することで、最優先割込みが通常割込みにより待たされる状況が生じうる。では、最優先割込みは必ず、制御バスAを使用して処理されるので、最優先割込みが通常割込みにより待たされる状況が生じることはない。また、制御バスが2本あることで、全体的な処理時間が短縮される。しかし、制御バスAは最優先割込みによってしか使用されないので、制御バスAの使用頻度が低下している。では、最優先割込みがない場合、PEは通常割込みを制御バスAを使用して処理できるので、制御バスAの使用頻度が向上している。最優先割込みがある場合、必ず、PEは通常割込みよりも優先して制御バスAを使用できるので、最優先割込みが通常割込みにより待たされる状況が生じることもない。また、通常割込みが制御バスAを使用して処理されるので、よりもさらに全体的な処理時間が短縮される。"