JP2006236233A - 割り込みレベル選択回路 - Google Patents

割り込みレベル選択回路 Download PDF

Info

Publication number
JP2006236233A
JP2006236233A JP2005053310A JP2005053310A JP2006236233A JP 2006236233 A JP2006236233 A JP 2006236233A JP 2005053310 A JP2005053310 A JP 2005053310A JP 2005053310 A JP2005053310 A JP 2005053310A JP 2006236233 A JP2006236233 A JP 2006236233A
Authority
JP
Japan
Prior art keywords
interrupt
register
bit
cpu
level
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2005053310A
Other languages
English (en)
Inventor
Hidenori Kurosawa
秀徳 黒沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005053310A priority Critical patent/JP2006236233A/ja
Publication of JP2006236233A publication Critical patent/JP2006236233A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】 CPUの割込みレベル毎に割込みソースを自由に選択できるようにし、且つ、割込み処理に要するレジスタ数を削減する事でCPUの割込み処理を高速化する事を目的とする。
【解決手段】 入力された割込み信号を、割込みレベル毎に分割する手段と、入力された割込み信号を割込みレベルのビット毎に選択する手段と、選択レジスタの値から、入力割込み信号を選択する為の割込み選択回路を有する。これにより、割込み信号を、CPUの割込みレベル毎に自由に選択、入れ替えが可能になる。
【選択図】 図1

Description

本発明は、マイクロコンピュータの割り込み制御回路に関し、特に割り込み要求の処理優先順位を制御する優先順位制御回路に関する。
近年、マイクロコンピュータは広い分野で使用されるようになり、多機能化が一段と進められている。これに伴い、マイクロコンピュータには、数多くの周辺回路が接続され、この周辺回路からマイクロコンピュータ(以下、CPUと記す)に対して発生する割り込み数は増加する一方である。周辺回路から発生した複数の割り込みは、割込み制御回路にて一旦処理されCPUに渡される。割込み制御回路は、予め設定された割り込みレベル設定に従い割込み信号を選択し、CPUの割込みレベル毎に振り分けを行う。以下に、従来の割り込み制御回路について、図1を用いて説明する。
各モジュールから発生した割り込み、0の割込みソース0〜1の割込みN、は、10の割込み制御回路に入力される。割込み信号は、10の割込み制御回路にてCPUで規定された優先順位を決定する22の割込みレベル[L:0]に変換される。
10の割込み制御回路では、各割込みレベルに合わせて、[N:0]ビットの信号のどのビットを、割込みソースのどのビットを割り当てるかを決定する為に、11セレクトレジスタを保持している。また、割込みレベル毎のビットの状態をセンスする12センスレジスタを保持し、割込みレベルごとの信号をマスクする13マスクレジスタも保持している。また、割込みレベル毎の信号をまとめる14OR回路が準備されている。また、ここでCPUの21データ幅を[D:0]とする。
又、従来例としては、例えば特許文献1をあげることが出来る。
特開平04−34314号公報
CPUは、初期設定時に割込み制御回路10にあるセレクトレジスタを設定し、各割込みレベルに応じて割込み要因を選択・設定する。その後、割込み発生の度に、センスレジスタとマスクレジスタを読み・書きを実行する事で、割込み処理を実行している。
図2の「割込みセレクトレジスタと割込みレベル」を示す。例えば、セレクトレジスタ11は、割込みレベル[0]22を設定するレジスタであるので、レベル0の割込み要因であるビット0,1,2,9,13を選択する。
しかしながら、割り込みの入力数が増えるに従って、即ち、割込みソースの数がCPUのデータ幅より大きくなると、CPUは、2度以上、レジスタアクセスを行わないと全ての割込み状態を確認する事が出来なくなってしまう。例えば、32ビットのデータ幅のCPUの場合、割込み数[N:0]が32までであれば、1度のレジスタアクセスで、割込み状態を監視できるが、33以上の場合、2度以上のアクセスを行う必要があり、処理に時間が掛かる。
また、各割込みレベルに合わせて割込みレベル[N:0]が設定可能であるにも関わらず、設定したいビットが2つ以上のレジスタに分かれている場合は、例えば、レベルLの割込みソース(LvL)がレジスタ1とレジスタ2の2つのレジスタに跨ってしまうと、CPUは2度レジスタアクセスを行わないと、割込みの状態を監視できない。
図3は、割込みソース数がCPUのデータ幅を超えた場合の割込み制御回路を示した図である。セレクトレジスタ、センスレジスタ、マスクレジスタは、それぞれ2つ以上のレジスタから構成されることになる。従って、割込み処理時のレジスタアクセスが倍になる為、のパフォーマンスの低下につながるという問題点がある。
(目的)
本発明では、CPUの割込みレベル毎に割込みソースを自由に選択できるようにし、且つ、レジスタ数を削減する事でCPUの割込み処理を高速化する事を目的とする。
上記目的を達成する本発明の出力装置は以下に示す構成を備える。
即ち、入力された割込み信号を割込みレベル毎に分割する手段を有する。
即ち、入力された割込み信号を割込みレベルのビット毎に選択する為の選択レジスタを有する。
即ち、選択レジスタの値から、入力割込み信号を選択する為の割込み選択回路を有する。
以上述べたように本発明によれば、割込み信号の優先順位を選択可能とした事で、マスクレジスタ、センスレジスタのビット幅を自由に設定できるようになり、割込み処理時のレジスタアクセスが最小限で出来るようになる為、割込み処理時間が短縮出来、パフォーマンスが維持出来るというメリットがある。
図4に割込み制御回路10の内部回路を示し、例として割込みレベル[0]22の信号の処理方法を説明する。
各割込みソースから入力された割込み信号[N:0]は、各ビット毎に割込みレベル[0]の要因かどうかを選択する為に、セレクトレジスタを用いで信号の選択設定を行う。セレクトレジスタから出力されるレジスタ値と各ビットの割込みソースの値をANDすることにより、信号をセレクトできる。この設定は、通常システムBOOT時に1度行われる。
次に、センスレジスタは、各割込みソースをセレクトした値が直接読める。前記セレクトレジスタで割込みソースが選択されていなければ、割込みセンスレジスタの値は、不変である。
次に、マスクレジスタは、各割込みソースを選択した信号をCPUに渡すかどうかを決定するレジスタである。割込みソースから割り込みが発生していても、マスクレジスタを設定する事で、CPUに対して割込みを通知しない事が出来る。最後に、全ての割込みソースをORすることで、CPUに対して、割込みレベル毎に、割込みの通知を行う事が可能である。
割込みが発生した場合は、CPUは、先ず、マスクレジスタで割込みをマスクし、CPUへの割込み通知を止めた上で、センスレジスタの値を読み、どの割込みソースから割り込みが発生しているかを確認し、対象の割込み発生ソースの処理を行った後、マスクレジスタのマスクを解除する。割り込みが発生した場合は、上記の繰り返しである。
尚、ここでは、割込みレベル[0]22のレベルは、LSBが一番割込みレベルが高い事にする。
図5に本発明の実施例を示す。
上記で説明したように、セレクトレジスタ、センスレジスタ、マスクレジスタは割込みソース[N:0]分必要であり、割込みソース数が増え、CPUのビット幅より多い数の割込みソースがある場合は、CPUは、複数回に分けて各種レジスタにアクセスする必要がある。
そこで、入力割込みソース[N:0]の各ビット毎の割込みソースが選択が出来るように、割込みレベル毎・ビット毎に、ビットセレクトレジスタと割込み選択回路を設ける。ビットセレクトレジスタは、入力割込みソース[N:0]のうちどのビットを使用するかを選択するレジスタであり、割込み選択回路は、ビットセレクトレジスタの設定値に基づいて、割込みソース[N:0]の中から1本の割込みソースを選択するセレクタやマルチプレクサで構成される信号選択回路である。
また、割込み制御回路は、[P:0]ビット準備する事が出来、この値をCPUのデータバス幅以下にすることで、1度のレジスタアクセスで割り込み制御が可能である。
従って、今まで各割込みソース毎に信号を単純にセレクトする代わりに、全ての割込みソースから自由に割込みソースを選択出来るようになる。これにより、センスレジスタ、マスクレジスタのビット幅をCPUのビット幅までに制限出来効率良い割込み処理が可能である。
また、図6に新規に新設したビットセレクトレジスタの詳細を示す。各割込みレベルと割込みソースビット毎「CPUのバス幅まで」に、ビットを選択する事が可能。
本回路における割込み処理方法は、先ず、CPUは、図6にビットセレクトレジスタの設定を行い、各ビット毎に割込みレベルを設定する。
ここで、CPUは、割込みレベル毎に、この設定を図示していないワークメモリのメモリ空間上に保持しておく。または、プログラムで設定されているプログラム上の設定空間を参照する。
割込みが発生した場合は、CPUは、先ず、マスクレジスタで割込みをマスクし、CPUへの割込み通知を止めた上で、センスレジスタの値を読み、どの割込みソースから割り込みが発生しているかを上記、メモリ空間に保持してある設定と照らし合わせて確認し、対象の割込み発生ソースの処理を行った後、マスクレジスタのマスクを解除する。
割り込みが発生した場合は、上記の繰り返しである。
以上のように、割込みソースが選択できるようになったことで、割込み制御回路10は、図7に示すように、入力割込みソースに対してビットセレクト回路が追加され、センスレジスタ・マスクレジスタは1つで済むことになる。
一般的な割込み制御回路を示す。 割込み制御回路内の割込みレジスタの詳細を示す。 入力割込みソースが増加した場合の、割込み制御回路を示す。 割込み制御回路の詳細回路図を示す。 本発明の割込み制御回路のブロック図を示す。 本発明の割込み制御回路のレジスタを示す。 本発明の割込み制御回路を用いた場合のブロック図を示す。

Claims (4)

  1. 周辺装置からのNビットの割り込み要求信号を受信し、CPUの割込みレベル毎に選択・振り分けを行なう割り込み制御回路であって、受信したNビットの割り込み信号を、ビット毎に選択指定を行なう為のビットセレクトレジスタを有し、ビットセレクトレジスタにセットされた値に従って割り込み要求信号を振り分ける割り込み選択回路を有し、選択された割込み要求信号をセンスする為のセンスレジスタを有し、選択された割込み信号をマスクする為のマスクレジスタを有し、選択された割り込み信号は、ビット毎にORされてCPUの割込み信号に入力される事を特徴とする割込み制御回路。
  2. 請求項1の割込み検出回路及び割込みビットセレクトレジスタは、CPUの割込みレベル毎に準備されている事を特徴とする。
  3. 請求項1の割込み選択回路は、ビットセレクトレジスタの値から、割込み要求信号を選択するセレクター回路である。
  4. 請求項1のセンスレジスタとマスクレジスタのビット幅は、Nビット以下に設定できることを特徴とする割り込み制御回路。
JP2005053310A 2005-02-28 2005-02-28 割り込みレベル選択回路 Withdrawn JP2006236233A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005053310A JP2006236233A (ja) 2005-02-28 2005-02-28 割り込みレベル選択回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005053310A JP2006236233A (ja) 2005-02-28 2005-02-28 割り込みレベル選択回路

Publications (1)

Publication Number Publication Date
JP2006236233A true JP2006236233A (ja) 2006-09-07

Family

ID=37043783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005053310A Withdrawn JP2006236233A (ja) 2005-02-28 2005-02-28 割り込みレベル選択回路

Country Status (1)

Country Link
JP (1) JP2006236233A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014182515A (ja) * 2013-03-18 2014-09-29 Fujitsu Ltd 割り込み要因を特定する方法及び装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014182515A (ja) * 2013-03-18 2014-09-29 Fujitsu Ltd 割り込み要因を特定する方法及び装置
US9582438B2 (en) 2013-03-18 2017-02-28 Fujitsu Limited Method and apparatus for identifying cause of interrupt

Similar Documents

Publication Publication Date Title
US10983924B2 (en) Information processing device and processor
JP2007188315A (ja) デバイス故障検出装置、制御方法、及びプログラム
JP2009289170A (ja) データ処理装置、メモリコントローラ及びそのアクセス制御方法
JP2008033890A (ja) マイクロコンピュータシステム
US6842812B1 (en) Event handling
US8239600B2 (en) Data processing system with selectable interrupt control
JP2011008702A (ja) 故障処理装置
JP2006236233A (ja) 割り込みレベル選択回路
JP4731126B2 (ja) 割り込み制御回路
JP2006018411A (ja) プロセッサ
US20030023799A1 (en) Interrupt processing apparatus
JP4647276B2 (ja) 半導体回路装置
JP2624226B2 (ja) 割込みコントローラ
JP3105554B2 (ja) 割込みコントローラ
JPH044630B2 (ja)
JP2007026091A (ja) 割込み制御回路およびその制御方法
JP2005032020A (ja) 記憶装置
US20050204116A1 (en) Method and apparatus of controlling memory device
JP2004171040A (ja) タイマ回路
JP2021033567A (ja) 電子制御装置
JP2007064762A (ja) 半導体装置、テストモード制御回路
JP2016177331A (ja) 電子制御装置
JP2006072935A (ja) 半導体装置及びデータ書き込み制御方法
JP2006079180A (ja) マイクロコンピュータ
JP2004021422A (ja) マイクロコンピュータ

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080513