JP2008176360A - マルチプロセッサシステム - Google Patents

マルチプロセッサシステム Download PDF

Info

Publication number
JP2008176360A
JP2008176360A JP2007006621A JP2007006621A JP2008176360A JP 2008176360 A JP2008176360 A JP 2008176360A JP 2007006621 A JP2007006621 A JP 2007006621A JP 2007006621 A JP2007006621 A JP 2007006621A JP 2008176360 A JP2008176360 A JP 2008176360A
Authority
JP
Japan
Prior art keywords
interrupt
processor
factor
request
priority
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.)
Pending
Application number
JP2007006621A
Other languages
English (en)
Other versions
JP2008176360A5 (ja
Inventor
Hirokazu Takada
浩和 高田
Naohito Sugai
尚人 菅井
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2007006621A priority Critical patent/JP2008176360A/ja
Priority to US12/007,838 priority patent/US7805555B2/en
Publication of JP2008176360A publication Critical patent/JP2008176360A/ja
Publication of JP2008176360A5 publication Critical patent/JP2008176360A5/ja
Priority to US12/872,423 priority patent/US8051234B2/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

【課題】一つの割り込み要求を共用する複数の割り込み要因を異なったプロセッサで処理することが可能な技術を提供する。
【解決手段】割り込みコントローラ5は、複数の割り込み要因で共用される割り込み要求IRQ1が通知されると当該割り込み要求IRQ1を出力する。割り込みコントローラ5が出力する割り込み要求IRQ1は、プロセッサ1,2のいずれか一つに受け付けられる。割り込み要求IRQ1を受け付けたプロセッサは、自身が処理すべき割り込み要因が発生しているかどうかを判定し、当該割り込み要因が発生している場合には割り込み処理を実行し、当該割り込み要因が発生していない場合には、割り込み要求IRQ1を共用する複数の割り込み要因のうち他の割り込み要因を処理する他のプロセッサに対して割り込み要求IRQ1の発生を通知する。
【選択図】図1

Description

本発明は、複数のプロセッサを備えるマルチプロセッサシステムに関する。
複数のプロセッサを備えるマルチプロセッサシステムに関して、従来から様々な技術が提案されている。例えば特許文献1には、バス共有型マルチプロセッサシステムにおける割り込み処理の負荷分散を図り、システム性能を向上させる技術が開示されている。また、特許文献2〜5にもマルチプロセッサシステムでの割り込み処理に関する技術が開示されている。
一方で、複数の割り込み要因が一つの割り込み要求を共用する技術、言い換えれば、割り込み要求を伝達する信号線を、割り込み要因が発生する複数の装置で共用する技術が、PCI(Peripheral Components Interconnect)バスを有するマルチプロセッサシステムなどにおいて利用されている。
特開平5−324569号公報 特開平8−36498号公報 特開平9−212472号公報 特開2001−236238号公報 特開2005−182177号公報
従来のマルチプロセッサシステムにおいては、複数の割り込み要求を異なったプロセッサに割り当てることは可能であったが、複数の割り込み要因が一つの割り込み要求を共用している場合には、当該複数の割り込み要因は一つのプロセッサでしか処理することができなかった。したがって、複数の割り込み要因を異なったプロセッサで処理するためには、当該複数の割り込み要因のそれぞれに対して個別に割り込み要求を割り当てる必要がある。その結果、割り込み要求の種類が増加することになり、当該割り込み要求を伝達する信号線の本数が増加する。
そこで、本発明は上述の問題に鑑みて成されたものであり、一つの割り込み要求を共用する複数の割り込み要因を異なったプロセッサで処理することが可能な技術を提供することを目的とする。
この発明のマルチプロセッサシステムは、複数のプロセッサと、複数の割り込み要因で共用される割り込み要求が通知されると、当該割り込み要求を出力する割り込みコントローラとを備え、前記割り込みコントローラから出力される前記割り込み要求は、前記複数のプロセッサのいずれか一つに受け付けられ、前記割り込み要求を受け付けた前記プロセッサは、自身が処理すべき前記割り込み要因が発生しているかどうかを判定し、当該割り込み要因が発生している場合には当該割り込み要因に応じた割り込み処理を実行し、当該割り込み要因が発生していない場合には、他の前記割り込み要因を処理する他の前記プロセッサに対して前記割り込み要求の発生を通知する。
この発明のマルチプロセッサシステムによれば、複数の割り込み要因で共用される割り込み要求を受け付けたプロセッサは、当該複数の割り込み要因のうち、自身が処理すべき割り込み要因が発生している場合には当該割り込み要因に応じた割り込み処理を実行し、当該割り込み要因が発生していない場合には、他の割り込み要因を処理する他のプロセッサに対して割り込み要求の発生を通知するため、当該他のプロセッサは、割り込みコントローラからの割り込み要求を受け付けずに、自身が処理すべき割り込み要因を処理することができる。よって、一つの割り込み要求を共用する複数の割り込み要因を異なったプロセッサで処理することができる。
実施の形態1.
図1は本発明の実施の形態1に係るマルチプロセッサシステムの構成を示すブロック図である。図1に示されるように、本実施の形態1に係るマルチプロセッサシステムは、それぞれが割り込み機能を有する複数のプロセッサ1〜3と、プロセッサ1〜3に対して割り込み要求を通知する割り込みコントローラ5と、割り込み情報記憶部6と、複数のIO装置11〜13とを備えている。
プロセッサ1〜3は、それらの間を直接接続する通信ライン4を利用して、互いに情報の受け渡しを行うことができる。IO装置11〜13は、例えば、シリアルI/Oポート、パラレルI/Oポート、タイマ、あるいはDRAMコントローラであって、それぞれにおいて割り込み要因が発生する。例えば、IO装置11がタイマであるとすると、当該IO装置11での一定時間のカウント終了が、当該IO装置11で発生する割り込み要因となる。
IO装置11〜13のそれぞれは、割り込み要因が発生すると、割り込み要求を出力する。IO装置11,12は、自身が出力する割り込み要求を割り込みコントローラ5に伝達する信号線SLを共用しており、IO装置11,12から出力された割り込み要求は、信号ラインSLを伝達してそれぞれ割り込み要求IRQ1として割り込みコントローラ5に入力される。したがって、IO装置11で割り込み要因が発生した場合でも、IO装置12で割り込み要因が発生した場合でも、割り込みコントローラ5には割り込み要求IRQ1が通知される。このように、本実施の形態1では、割り込みコントローラ5に入力される割り込み要求IRQ1は、IO装置11,12で発生する複数の割り込み要因で共用されている。したがって、割り込みコントローラ5は、割り込み要求IRQ1が通知されただけでは、IO装置11,12のどちらで割り込み要因が発生したかを把握することができない。
一方で、IO装置13から出力される割り込み要求は、割り込み要求IRQ2としてそのまま割り込みコントローラ5に入力される。したがって、割り込みコントローラ5に通知される割り込み要求IRQ2は複数の割り込み要因で共用されていない。
本実施の形態1に係るマルチプロセッサシステムでは、IO装置11〜13で発生する割り込み要因に1〜3番の割り込み要因番号がそれぞれ割り当てられており、割り込み要求IRQ1,IRQ2に1及び2番の割り込み要求番号がそれぞれ割り当てられている。そして、プロセッサ1〜3に1〜3番のプロセッサ番号がそれぞれ割り当てられている。
本実施の形態1では、1番のプロセッサ1が1番の割り込み要因を処理し、2番のプロセッサ2が2番の割り込み要因を処理し、3番のプロセッサ3が3番の割り込み要因を処理する。つまり、プロセッサ1〜3がIO装置11〜13で発生した割り込み要因をそれぞれ処理する。そして、上述のように、IO装置11,12で割り込み要因が発生すると割り込み要求IRQ1が割り込みコントローラ5に通知され、IO装置13で割り込み要因が発生すると割り込み要求IRQ2が割り込みコントローラ5に通知される。したがって、1番の割り込み要因は1番の割り込み要求IRQ1及び1番のプロセッサ1に対応し、2番の割り込み要因は1番の割り込み要求IRQ1及び2番のプロセッサ2に対応し、3番の割り込み要因は2番の割り込み要求IRQ2及び3番のプロセッサ3に対応する。本実施の形態1に係る割り込み情報記憶部6では、割り込み要因番号、割り込み要求番号及びプロセッサ番号の対応関係を示すテーブルが割り込み情報IIFとして記憶される。図2は当該割り込み情報IIFを示す図である。
割り込みコントローラ5は、割り込み情報IIFを参照して、通知された割り込み要求の番号に対応する番号のプロセッサに対して当該割り込み要求を出力する。本例では、割り込みコントローラ5は、割り込み要求IRQ1をプロセッサ1,2に出力し、割り込み要求IRQ2をプロセッサ3に出力する。プロセッサ1〜3のそれぞれは、入力された割り込み要求を受け付けると、自身が処理すべき割り込み要因に応じた割り込み処理を実行する。なお、プロセッサ1〜3のそれぞれは、自身に対して割り込み要求を出力するか否かを割り込みコントローラ5に対して設定することができる。
次に、本実施の形態1に係るプロセッサ1,2における割り込み処理を実行するまでの動作について詳細に説明する。図3はプロセッサ1,2の動作を示すフローチャートである。プロセッサ1,2は互いに同様の動作を行うため、以下ではプロセッサ1の動作を中心に説明する。
図3に示されるように、まずステップs1において、プロセッサ1は、割り込みコントローラ5から自身に対して割り込み要求が通知されるように当該割り込みコントローラ5を設定する。次に、ステップs2において、プロセッサ1は、割り込み情報記憶部6に対して、自身が処理する割り込み要因の番号に対応させて自身のプロセッサ番号を記憶する。割り込み情報記憶部6の初期状態では、割り込み情報IIFには割り込み要因番号と割り込み要求番号との対応関係だけが含まれており、それらに対応するプロセッサ番号はプロセッサ自身が割り込み情報IIFに書き込む。なお、ステップs1,s2は、通常、オペレーティングシステムの初期化処理、あるいはIO装置11,12のデバイスドライバの初期化処理の際に実行される。
次に、ステップs3において、プロセッサ1は、割り込みコントローラ5から出力される割り込み要求IRQ1を受け付けると、ステップs4において、自身が処理すべき割り込み要因が発生しているかどうかを判定する。
ここで、割り込みコントローラ5には、入力される割り込み要求ごとに割り込みステータス情報が記憶されている。この割り込みステータス情報は、対応する割り込み要求が発生すると“0”から“1”に変化する。割り込みコントローラ5は、割り込み要求IRQ1が入力されると、当該割り込み要求IRQ1をプロセッサ1,2に対して同時に出力するとともに、割り込み要求IRQ1に対応する割り込みステータス情報を“1”にセットする。プロセッサ1,2のそれぞれは、割り込み要求IRQ1が通知されると、当該割り込み要求IRQ1に対応した割り込みステータス情報を割り込みコントローラ5から読み出す。セット状態の割り込みステータス情報は、プロセッサから読み出されると“1”から“0”に変化してクリアされるため、割り込みステータス情報を先に読み出したプロセッサのみが“1”を示す割り込みステータス情報を読み出すことができる。プロセッサ1,2のそれぞれは、読み出した割り込みステータス情報が“1”であれば、割り込み要求IRQ1を受け付けてステップs4を実行する。このように、複数の割り込み要因で共用される割り込み要求IRQ1は、プロセッサ1,2のいずれか一つに受け付けられる。
また、IO装置11〜13のそれぞれには、自身で割り込み要因が発生しているか否かを示すステータス情報が記憶されている。したがって、プロセッサ1,2のそれぞれは、ステップs4において、自身が処理すべき割り込み要因を発生するIO装置内の当該ステータス情報を読み出すことによって、自身が処理すべき割り込み要因が発生しているか否かを判定することができる。
プロセッサ1は、ステップs4において、自身が処理すべき割り込み要因が発生していると判定すると、ステップs5において、当該割り込み要因に応じた割り込みハンドラを実行して割り込み処理を行う。
一方で、ステップs4において自身が処理すべき割り込み要因が発生していないと判定すると、プロセッサ1は、ステップs6において、割り込み情報記憶部6内の割り込み情報IIFを参照して、割り込み要求IRQ1を共用する他の割り込み要因を処理するプロセッサを特定し、当該プロセッサに対して割り込み要求IRQ1の発生を通信ライン4を利用して通知する。本例では、割り込み要求IRQ1は、IO装置11,12で発生する割り込み要因で共用されており、IO装置11,12で発生する割り込み要因はプロセッサ1,2でそれぞれ処理されるため、プロセッサ1はプロセッサ2に対して、プロセッサ2はプロセッサ1に対して、それぞれ割り込み要求IRQ1の発生を通知する。プロセッサ間での割り込み要求の発生の通知は、例えば、プロセッサ1〜3のそれぞれに設けられた、プロセッサ間専用の割り込み機能を利用することができる。
なお、ここでは2つのプロセッサ1,2で割り込要求IRQ1を共用する場合について説明したが、3つ以上のプロセッサで割り込み要求IRQ1を共用しても良い。例えば、プロセッサ1〜3で割り込み要求IRQ1を共用する場合には、プロセッサ1は自身が処理すべき割り込み要因が発生していないと判定すると、プロセッサの番号順にプロセッサ2に割り込み要求IRQ1の発生を通知し、プロセッサ2は自身で処理すべき割り込み要因が発生していないと判定するとプロセッサ3に割り込み要求IRQ1の発生を通知する。
さらに、3つ以上のプロセッサで割り込み要求IRQ1を共用する場合には、“1”を示す割り込みステータス情報を割り込みコントローラ5から最先に読み出したプロセッサが各IO装置のステータス情報を読み出し、割り込み要因を処理すべき適切なプロセッサに対してのみ割り込み要求IRQ1の発生を通知しても良い。
プロセッサ1は、ステップs3において割り込み要求IRQ1を受け付けなかった場合であっても、ステップs7において、ステップs6を実行した他のプロセッサから割り込み要求IRQ1の発生が通知されると、ステップs4を実行して自身が処理すべき割り込み要因が発生しているかどうかを判定する。そして、プロセッサ1は、ステップs4での判定結果に応じてステップs5あるいはステップs6を実行する。
なお、プロセッサ3に通知される割り込み要求IRQ2は一つの割り込み要因に対応していることから、プロセッサ3は、上述のステップs1〜s3を順次実行し、その後、ステップs4を実行することなく、ステップs5を実行して自身が処理すべき割り込み要因に応じた割り込み処理を実行する。
また、本実施の形態1では、割り込み要求IRQ1が通知されるプロセッサ1,2と、割り込み要求IRQ2が通知されるプロセッサ3とは重複していないため、割り込みコントローラ5は、割り込み要求IRQ1,IRQ2が同時に入力された場合には、プロセッサ1,2に対して割り込み要求IRQ1を出力するとともに、プロセッサ3に対しても割り込み要求IRQ2を出力する。したがって、プロセッサ1,2のどちらか一方でIO装置12あるいはIO装置13で発生した割り込み要因が処理されるとともに、プロセッサ3でIO装置13で発生した割り込み要因が処理される。
一方で、本実施の形態1とは異なり、例えば、IO装置13で発生した割り込み要因をプロセッサ3ではなくプロセッサ2が処理する場合には、割り込み要求IRQ1が通知されるプロセッサ1,2と、割り込み要求IRQ2が通知されるプロセッサ2とが重複することになるため、複数の割り込み要求が一つのプロセッサに対して同時に入力されることを防止するために、割り込みコントローラ5は、割り込み要求IRQ1,IRQ2が同時に入力された場合には、割り込み要求IRQ1,IRQ2のどちらか一方のみを出力する。このとき、各割り込み要因に割り当てられた、処理の優先度を示す割り込み優先度が使用される。割り込み情報記憶部6の割り込み情報IIFには、この割り込み優先度も各割り込み要因番号に対応付けて書き込まれており、割り込みコントローラ5は、割り込み要求IRQ1,IRQ2が同時に入力された場合には、割り込み情報IIFを参照して、最も割り込み優先度の高い割り込み要因に対応した割り込み要求を出力する。例えば、割り込み要因番号“2”に対応する割り込み優先度が最も高いとすると、割り込みコントローラ5は割り込み要求IRQ1のみを出力する。
以上のように、本実施の形態1に係るマルチプロセッサシステムでは、複数の割り込み要因で共用される割り込み要求IRQ1を受け付けたプロセッサ1は、当該複数の割り込み要因のうち、自身が処理すべき割り込み要因が発生している場合には割り込み処理を実行し、当該割り込み要因が発生していない場合には、他の割り込み要因を処理するプロセッサ2に対して割り込み要求IRQ1の発生を通知している。したがって、本実施の形態1のように、プロセッサ2は、割り込みコントローラ5からの割り込み要求IRQ1を受け付けずに、自身が処理すべき割り込み要因を処理することができる。
同様に、割り込み要求IRQ1を受け付けたプロセッサ2は、自身が処理すべき割り込み要因が発生している場合には割り込み処理を実行し、当該割り込み要因が発生していない場合には、プロセッサ1に対して割り込み要求IRQ1の発生を通知している。したがって、本実施の形態1のように、プロセッサ1は、割り込みコントローラ5からの割り込み要求IRQ1を受け付けずに、自身が処理すべき割り込み要因を処理することができる。よって、一つの割り込み要求IRQ1を共用する複数の割り込み要因をプロセッサ1,2でそれぞれ処理することができる。
実施の形態2.
上述の実施の形態1に係るマルチプロセッサシステムでは、割り込みコントローラ5は割り込み要求IRQ1をプロセッサ1,2の両方に出力し、当該プロセッサ1,2のうち割り込みコントローラ5内の割り込みステータス情報を先にクリアした方が割り込み要求IRQ1を受け付けている。したがって、プロセッサ1,2の動作状況によって割り込み要求IRQ1を受け付けるプロセッサは変化することになる。そのため、割り込み優先度が高い割り込み要因の発生に対する応答が遅くなることがある。
例えば、IO装置11で発生する割り込み要因の割り込み優先度が最も高く、当該割り込み要因が発生して割り込みコントローラ5から割り込み要求IRQ1が出力された場合において、当該割り込み要求IRQ1がプロセッサ1で受け付けられた際には、プロセッサ1はIO装置11で発生した優先度が高い割り込み要因を比較的早期に処理することができる。しかしながら、当該割り込み要求IRQ1がプロセッサ2で受け付けられた際には、プロセッサ1は、プロセッサ2から割り込み要求IRQ1の発生の通知を受け取って初めてIO装置11で発生した割り込み要因を処理することになるため、優先度の高い割り込み要因を処理するまでの時間が比較的長くなる。
そこで、本実施の形態2では、割り込み優先度が高い割り込み要因の発生に対する応答遅延が少ないマルチプロセッサシステムを提供する。
図4は本実施の形態2に係るマルチプロセッサシステムの割り込み情報記憶部6が記憶する割り込み情報IIFを示す図である。本実施の形態2に係るマルチプロセッサシステムは、上述の実施の形態1に係るマルチプロセッサシステムにおいて、プロセッサ1,2の動作が異なるものである。以下では、実施の形態1に係るマルチプロセッサシステムとの相違点を中心に、本実施の形態2に係るマルチプロセッサシステムを説明する。
上述のように、各割り込み要因には割り込み優先度が割り当てられており、割り込み情報IIFには、各割り込み要因番号に対応して割り込み優先度が書き込まれている。つまり、割り込み情報記憶部6には、割り込み要因番号、割り込み優先度、割り込み要求番号及びプロセッサ番号の対応関係を示すテーブルが割り込み情報IIFとして記憶される。本例では、図4に示されるように、1〜3番の割り込み要因には“5”,“10”,“1”の割り込み優先度がそれぞれ割り当てられている。なお、本例では、割り込み優先度の値が大きいほど、割り込み優先度が高いものとする。
図5は本実施の形態2に係るプロセッサ1,2の動作を示すフローチャートである。本実施の形態2でも、プロセッサ1,2は互いに同様の動作を行うため、以下ではプロセッサ1の動作を中心に説明する。
図5に示されるように、まずステップs21において、プロセッサ1は、割り込み情報記憶部6内の割り込み情報IIFを参照して、割り込み要求IRQ1を共用する複数の割り込み要因のそれぞれの割り込み優先度を取得する。そして、プロセッサ1は、取得した割り込み優先度において、自身が処理する割り込み要因の割り込み優先度が最も高いかどうかを判定する。本例では、図4に示されるように、割り込み要求IRQ1を共用する1及び2番の割り込み要因の割り込み優先度において、プロセッサ2が処理する2番の割り込み要因の割り込み優先度が最も高くなっている。
プロセッサ1は、ステップs21において、割り込み要求IRQ1を共用する複数の割り込み要因の割り込み優先度において、自身が処理する割り込み要因の割り込み優先度が最も高いと判定すると、上述のステップs1を実行して、自身に対して割り込み要求が通知されるように割り込みコントローラ5を設定する。一方で、プロセッサ1は、ステップs21において、割り込み要求IRQ1を共用する複数の割り込み要因において、自身が処理する割り込み要因の割り込み優先度よりも高い割り込み優先度を有する割り込み要因が存在すると判定すると、ステップs1を実行せずに上述のステップs2を実行する。
このように、本実施の形態2では、プロセッサ1,2のそれぞれは、割り込み要求IRQ1を共用する複数の割り込み要因の割り込み優先度において、自身が処理する割り込み要因の割り込み優先度が最も高いと判定した場合のみ、割り込みコントローラ5から割り込み要求が通知されるように当該割り込みコントローラ5を設定する。したがって、割り込み要求IRQ1を共用する複数の割り込み要因のうち割り込み優先度が最も高い割り込み要因を処理するプロセッサのみが、割り込み要求IRQ1を受け付けることになる。
ステップs2が実行されると、実施の形態1と同様にして、ステップs3,s4が実行されて、ステップs4での判定結果に応じてステップs5あるいはステップs6が実行される。また、本実施の形態2においても、ステップs7において、プロセッサ1は、他のプロセッサから割り込み要求IRQ1の発生が通知されると、ステップs4を実行し、その後、ステップs4での判定結果に応じてステップs5あるいはステップs6を実行する。なお、プロセッサ3の動作は実施の形態1と同様である。
以上のように、本実施の形態2に係るマルチプロセッサシステムでは、割り込み要求IRQ1を共用する複数の割り込み要因のうち割り込み優先度が最も高い割り込み要因を処理するプロセッサのみが、割り込みコントローラ5からの割り込み要求IRQを受け付けるため、まず最初に当該プロセッサにおいて処理すべき割り込み要因が発生しているか否かの判定が行われる。したがって、割り込み優先度の高い割り込み要因の発生に対する応答遅延を少なくすることができる。
例えば、IO装置11で発生する割り込み要因の割り込み優先度が最も高く、当該割り込み要因が発生して割り込みコントローラ5から割り込み要求IRQ1が出力されると、当該割り込み要求IRQ1は必ずプロセッサ1で受け付けられる。よって、プロセッサ1においてまず最初に上述のステップs4が実行される。その結果、IO装置11で発生した優先度が高い割り込み要因がプロセッサ1によって早く処理される。
実施の形態3.
図6は本発明の実施の形態3に係るマルチプロセッサシステムの構成を示すブロック図である。図6に示されるように、本実施の形態3に係るマルチプロセッサシステムは、上述の実施の形態1に係るマルチプロセッサシステムにおいて、プロセッサ優先度記憶部7をさらに設けて、プロセッサ1,2の動作を変更したものである。以下では、実施の形態1に係るマルチプロセッサシステムとの相違点を中心に、本実施の形態3に係るマルチプロセッサシステムを説明する。
本実施の形態3では、プロセッサ1〜3のそれぞれにはプロセッサ優先度が割り当てられている。このプロセッサ優先度は、プロセッサ間での割り込み処理を実行させる優先度を示しており、オペレーションシステムやタスクの処理内容に応じて決定される。具体的には、例えば、プロセッサ1〜3の間で処理速度が異なる場合には、処理速度が速いプロセッサほど高いプロセッサ優先度が割り当てられる。
図7はプロセッサ1〜3に割り当てられるプロセッサ優先度の一例を示す図である。図7に示されるように、本実施の形態3に係るプロセッサ1〜3に対しては、“1”,“10”,“5”のプロセッサ優先度がそれぞれ割り当てられており、当該プロセッサ優先度は、プロセッサ番号に対応付けられてプロセッサ優先度記憶部7に記憶されている。なお、本例では、プロセッサ優先度の値が大きいほどプロセッサ優先度は高いものとする。
次に、本実施の形態3に係るプロセッサ1,2における割り込み処理を実行するまでの動作について説明する。図8は本実施の形態3に係るプロセッサ1,2の動作を示すフローチャートである。本実施の形態3でも、プロセッサ1,2は互いに同様の動作を行うため、以下ではプロセッサ1の動作を中心に説明する。
図8に示されるように、プロセッサ1は、まず上述のステップs2を実行する。そして、ステップs31において、プロセッサ1は、プロセッサ優先度記憶部7内の情報を参照して、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサ1,2において、自身のプロセッサ優先度が最も高いかどうかを判定する。本例では、図7に示されるように、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサ1,2において、プロセッサ2のプロセッサ優先度が最も高く設定されている。
プロセッサ1は、ステップs31において自身のプロセッサ優先度が最も高いと判定すると、上述のステップs1を実行して自身に割り込み要求が出力されるように割り込みコントローラを設定し、その後、上述のステップs3,s4を順次実行する。
一方で、プロセッサ1は、ステップs31において自身のプロセッサ優先度よりも高いプロセッサ優先度の他のプロセッサが存在すると判定すると、ステップs1を実行せずにステップs3,ステップs4を順次実行する。
このように、本実施の形態3では、プロセッサ1,2のそれぞれは、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサ1,2において、自身のプロセッサ優先度が最も高いと判定した場合のみ、割り込み要求が入力されるように割り込みコントローラ5を設定する。したがって、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサのうち、プロセッサ優先度が最も高いプロセッサのみが、割り込み要求IRQ1を受け付けることになる。
なお、ステップs31については、プロセッサ1,2のどちらか一方だけが行うようにしても良い。例えば、プロセッサ1のみがステップs31を実行するとすると、プロセッサ1は、プロセッサ優先度記憶部7内の情報を参照して、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサ1,2においてプロセッサ優先度が最も高いプロセッサを特定し、当該プロセッサに対してのみ割り込み要求が出力されるように割り込みコントローラを設定する。これにより、プロセッサ1は、自身のプロセッサ優先度が最も高い場合には、自身に割り込み要求が出力されるように割り込みコントローラ5を設定し、自身のプロセッサ優先度が最も高くない場合には、プロセッサ優先度が最も高い他のプロセッサに対して割り込み要求が出力されるように割り込みコントローラ5を設定する。
ステップs4が実行されると、当該ステップs4での判定結果に応じて上述のステップs5あるいはステップs6が実行される。そして、本実施の形態3においても、プロセッサ1は、ステップs7において、他のプロセッサから割り込み要求IRQ1の発生が通知されると、ステップs4を実行し、その後、ステップs4での判定結果に応じてステップs5あるいはステップs6を実行する。なお、プロセッサ3の動作は実施の形態1と同様である。
以上のように、本実施の形態3に係るマルチプロセッサシステムでは、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサのうち、プロセッサ優先度が最も高いプロセッサのみが割り込みコントローラ5からの割り込み要求IRQを受け付ける。したがって、所望のプロセッサでの割り込み要因の発生に対する応答遅延を少なくすることができる。
実施の形態4.
図9は本発明の実施の形態4に係るマルチプロセッサシステムの構成を示す図である。本実施の形態4に係るマルチプロセッサシステムは、上述の実施の形態2に係るマルチプロセッサシステムにおいて、基本的には、IO装置14をさらに設けて、プロセッサ1〜3の動作を変更したものである。以下では、実施の形態2に係るマルチプロセッサシステムとの相違点を中心に、本実施の形態4に係るマルチプロセッサシステムを説明する。
IO装置14では、IO装置11〜13と同様に割り込み要因が発生する。IO装置14は、割り込み要因が発生すると割り込み要求を出力する。本実施の形態4では、IO装置11,12,14が、自身が出力する割り込み要求を割り込みコントローラ5に伝達する信号線SLを共用しており、IO装置11,12,14から出力された割り込み要求は、信号ラインSLを伝達してそれぞれ割り込み要求IRQ1として割り込みコントローラ5に入力される。したがって、IO装置11で割り込み要因が発生した場合でも、IO装置12で割り込み要因が発生した場合でも、IO装置14で割り込み要因が発生した場合でも、割り込みコントローラ5には割り込み要求IRQ1が通知される。このように、本実施の形態4では、割り込みコントローラ5に入力される割り込み要求IRQ1は、IO装置11,12,14で発生する複数の割り込み要因で共用されている。
図10は、本実施の形態4に係る割り込み情報記憶部6が記憶する割り込み情報IIFを示す図である。本実施の形態4では、IO装置14で発生する割り込み要因に4番の割り込み要因番号が割り当てられている。また、3番のプロセッサ3が3番及び4番の割り込み要因を処理する。つまり、プロセッサ3がIO装置13,14で発生した割り込み要因を処理する。そして、上述のように、IO装置11,12,14で割り込み要因が発生すると割り込み要求IRQ1が割り込みコントローラ5に通知されることから、図10に示されるように、4番の割り込み要因は1番の割り込み要求IRQ1及び3番のプロセッサ3に対応する。さらに、図10に示されるように、1〜4番の割り込み要因には、“5”,“10”,“5”,“1”の割り込み優先度がそれぞれ割り当てられている。本実施の形態4に係る割り込み情報IIFには、割り込み要因番号、割り込み優先度、割り込み要求番号及びプロセッサ番号の対応関係が書き込まれる。
図11は本実施の形態4に係るプロセッサ1〜3における割り込み処理を実行するまでの動作を示すフローチャートである。プロセッサ1〜3は互いに同様の動作を行うため、以下ではプロセッサ1の動作を中心に説明する。
図11に示されるように、プロセッサ1は上述のステップs21を実行する。プロセッサ1は、ステップs21において、割り込み要求IRQ1を共用する複数の割り込み要因の割り込み優先度において、自身が処理する割り込み要因の割り込み優先度が最も高いと判定すると、上述のステップs1を実行して、自身に対して割り込み要求が通知されるように割り込みコントローラ5を設定する。一方で、プロセッサ1は、ステップs21において、割り込み要求IRQ1を共用する複数の割り込み要因において、自身が処理する割り込み要因の割り込み優先度よりも高い割り込み優先度を有する割り込み要因が存在すると判定すると、ステップs1を実行せずに上述のステップs2を実行する。
このようにして、割り込み要求IRQ1を共用する複数の割り込み要因のうち割り込み優先度が最も高い割り込み要因を処理するプロセッサのみが、割り込み要求IRQ1を受け付けるようになる。
ステップs2が実行されると、その後、プロセッサ1は、上述のステップs3,s4を実行する。本実施の形態4では、割り込みコントローラ5は、プロセッサ1〜3のそれぞれに割り込み要求IRQ1を出力する。そして、プロセッサ1〜3のそれぞれは、割り込み要求IRQ1が入力されると、割り込みコントローラ5から、割り込み要求IRQ1に対応した割り込みステータス情報を読み出し、当該割り込みステータス情報が“1”であれば、割り込み要求IRQ1を受け付ける。
プロセッサ1は、ステップs4において、自身が処理すべき割り込み要因が発生したと判定すると、当該割り込み要因に応じた割り込みハンドラを実行して割り込み処理を行う。
一方で、ステップs4において、自身が処理すべき割り込み要因が発生していないと判定すると、プロセッサ1は、ステップs41において、割り込み情報記憶部6内の割り込み情報IIFを参照して、割り込み要求IRQ1を共用する割り込み要因のうち自身が処理する割り込み要因を除く残りの割り込み要因のそれぞれについての割り込み優先度を取得する。そして、プロセッサ1は、取得した割り込み優先度に基づいて、自身が処理する割り込み要因の割り込み優先度よりも低い割り込み優先度を有する割り込み要因のうち、割り込み優先度が最も高いものを処理するプロセッサを選択する。
ここで、割り込み要求IRQ1を共用する割り込み要因のうち割り込み優先度が最も高い割り込み要因を処理するプロセッサが割り込み要求IRQ1を受け付けるため、当該プロセッサは、ステップs41において、割り込み要求IRQ1を共用する複数の割り込み要因のうち自身が処理する割り込み要因を除く残りの割り込み要因において割り込み優先度が最も高い割り込み要因を処理する他のプロセッサを選択する。本例では、割り込み情報記憶部6には図10に示される割り込み情報IIFが記憶されていることから、プロセッサ2が割り込み要求IRQ1を受け付けるため、プロセッサ2は、ステップs41において、1番及び4番の割り込み要因において割り込み優先度が最も高い1番の割り込み要因を処理するプロセッサ1を選択する。
ステップs41を実行したプロセッサ1は、その後、ステップs42において、ステップs41で選択したプロセッサに対して割り込み要求IRQ1の発生を通知する。
本実施の形態4においても、ステップs7において、プロセッサ1は、他のプロセッサから割り込み要求IRQ1の発生が通知されると、ステップs4を実行し、その後、ステップs4での判定結果に応じて、ステップs5を実行したり、あるいはステップs41,s42を実行する。
なお、プロセッサ3に対して割り込みコントローラ5から割り込み要求IRQ2が入力された場合の当該プロセッサ3の動作については実施の形態1と同様である。
また、本実施の形態4では、割り込み要求IRQ1が通知されるプロセッサ1〜3と、割り込み要求IRQ2が通知されるプロセッサ3とが重複するため、複数の割り込み要求が一つのプロセッサに対して同時に入力されることを防止するために、割り込みコントローラ5は、割り込み要求IRQ1,IRQ2が同時に入力された場合には、実施の形態1で説明したように、割り込み優先度に基づいて割り込み要求IRQ1,IRQ2のどちらか一方のみを出力する。
以上のように、本実施の形態4に係るマルチプロセッサシステムでは、割り込み要求IRQ1を受け付けたプロセッサは、自身が処理すべき割り込み要因が発生していない場合には、割り込み要求IRQ1を共用する複数の割り込み要因のうち自身が処理する割り込み要因を除く残りの割り込み要因において、割り込み優先度が最も高いものを処理するプロセッサに対して、割り込み要求IRQ1の発生を通知している。したがって、割り込み優先度の高い割り込み要因の発生に対する応答遅延を少なくすることができる。
実施の形態5.
図12は本発明の実施の形態5に係るマルチプロセッサシステムの構成を示す図である。本実施の形態5に係るマルチプロセッサシステムは、上述の実施の形態3に係るマルチプロセッサシステムにおいて、基本的には、上述のIO装置14をさらに設けて、プロセッサ1〜3の動作を変更したものである。以下では、実施の形態3に係るマルチプロセッサシステムとの相違点を中心に、本実施の形態5に係るマルチプロセッサシステムを説明する。
本実施の形態5では、実施の形態4と同様に、割り込みコントローラ5に入力される割り込み要求IRQ1は、IO装置11,12,14で発生する複数の割り込み要因で共用されている。
図13は本実施の形態5に係るプロセッサ1〜3における割り込み処理を実行するまでの動作を示すフローチャートである。プロセッサ1〜3は互いに同様の動作を行うため、以下ではプロセッサ1の動作を中心に説明する。
図13に示されるように、プロセッサ1は上述のステップs2,s31を順次実行する。プロセッサ1は、ステップs31において、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサ1〜3において、自身のプロセッサ優先度が最も高いと判断すると、上述のステップs1を実行して、自身に対して割り込み要求が通知されるように割り込みコントローラ5を設定し、その後、ステップs3,s4を順次実行する。一方で、プロセッサ1は、ステップs31において、自身のプロセッサ優先度よりも高いプロセッサ優先度のプロセッサが存在すると判断すると、ステップs1を実行せずに上述のステップs3,s4を順次実行する。
このようにして、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサのうち、プロセッサ優先度が最も高いプロセッサのみが、割り込み要求IRQ1を受け付けることになる。
プロセッサ1は、ステップs4において、自身が処理すべき割り込み要因が発生したと判断すると、当該割り込み要因に応じた割り込みハンドラを実行して割り込み処理を行う。
一方で、ステップs4において、自身が処理すべき割り込み要因が発生していないと判断すると、プロセッサ1は、ステップs51において、プロセッサ優先度記憶部7内の情報を参照して、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサのうち自身を除く残りのプロセッサのそれぞれについてのプロセッサ優先度を取得する。そして、プロセッサ1は、自身のプロセッサ優先度よりも低いプロセッサ優先度を有するプロセッサのうち、プロセッサ優先度が最も高いものを選択する。
ここで、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサのうち、プロセッサ優先度が最も高いプロセッサが割り込み要求IRQ1を受け付けるため、このプロセッサ優先度が最も高いプロセッサは、ステップs51において、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサのうち自身を除く残りのプロセッサにおいてプロセッサ優先度が最も大きいもの選択する。本例では、プロセッサ優先度記憶部7には図7に示される情報が記憶されていることから、プロセッサ2が割り込み要求IRQ1を受け付けるため、プロセッサ2は、ステップs51において、プロセッサ1,3のうちプロセッサ優先度が最も高いプロセッサ3を選択する。
ステップs51を実行したプロセッサ1は、その後、ステップs52において、ステップs51で選択したプロセッサに対して割り込み要求IRQ1の発生を通知する。
本実施の形態5においても、プロセッサ1は、ステップs7において他のプロセッサから割り込み要求IRQ1の発生が通知されると、ステップs4を実行し、その後、ステップs4での判定結果に応じて、ステップs5を実行したり、あるいはステップs51,52を実行する。
なお、プロセッサ3に対して割り込みコントローラ5から割り込み要求IRQ2が入力された場合の当該プロセッサ3の動作については実施の形態1と同様である。
また、本実施の形態5では、実施の形態4と同様に、複数の割り込み要求が一つのプロセッサに対して同時に入力されることを防止するために、割り込みコントローラ5は、割り込み要求IRQ1,IRQ2が同時に入力された場合には、割り込み優先度に基づいて割り込み要求IRQ1,IRQ2のどちらか一方のみを出力する。
以上のように、本実施の形態5に係るマルチプロセッサシステムでは、割り込み要求IRQ1を受け付けたプロセッサは、自身が処理すべき割り込み要因が発生していない場合には、割り込み要求IRQ1を共用する複数の割り込み要因を処理するプロセッサ1〜3においてプロセッサ優先度が最も高いプロセッサに対して割り込み要求IRQ1の発生を通知している。したがって、所望のプロセッサでの割り込み要因の発生に対する応答遅延を少なくすることができる。
本発明の実施の形態1に係るマルチプロセッサシステムの構成を示す図である。 本発明の実施の形態1に係る割り込み情報を示す図である。 本発明の実施の形態1に係るマルチプロセッサシステムの動作を示すフローチャートである。 本発明の実施の形態2に係る割り込み情報を示す図である。 本発明の実施の形態2に係るマルチプロセッサシステムの動作を示すフローチャートである。 本発明の実施の形態3に係るマルチプロセッサシステムの構成を示す図である。 本発明の実施の形態3に係るプロセッサ優先度記憶部が記憶する情報を示す図である。 本発明の実施の形態3に係るマルチプロセッサシステムの動作を示すフローチャートである。 本発明の実施の形態4に係るマルチプロセッサシステムの構成を示す図である。 本発明の実施の形態4に係る割り込み情報を示す図である。 本発明の実施の形態4に係るマルチプロセッサシステムの動作を示すフローチャートである。 本発明の実施の形態5に係るマルチプロセッサシステムの構成を示す図である。 本発明の実施の形態5に係るマルチプロセッサシステムの動作を示すフローチャートである。
符号の説明
1〜3 プロセッサ、5 割り込みコントローラ。

Claims (8)

  1. 複数のプロセッサと、
    複数の割り込み要因で共用される割り込み要求が通知されると、当該割り込み要求を出力する割り込みコントローラと
    を備え、
    前記割り込みコントローラから出力される前記割り込み要求は、前記複数のプロセッサのいずれか一つに受け付けられ、
    前記割り込み要求を受け付けた前記プロセッサは、自身が処理すべき前記割り込み要因が発生しているかどうかを判定し、当該割り込み要因が発生している場合には当該割り込み要因に応じた割り込み処理を実行し、当該割り込み要因が発生していない場合には、他の前記割り込み要因を処理する他の前記プロセッサに対して前記割り込み要求の発生を通知する、マルチプロセッサシステム。
  2. 請求項1に記載のマルチプロセッサシステムであって、
    前記複数の割り込み要因のそれぞれには、処理の優先度を示す割り込み優先度が割り当てられており、
    前記複数の割り込み要因のうち前記割り込み優先度が最も高い割り込み要因を処理する前記プロセッサが、前記割り込みコントローラから出力される前記割り込み要求を受け付ける、マルチプロセッサシステム。
  3. 請求項1に記載のマルチプロセッサシステムであって、
    前記複数のプロセッサのそれぞれには、割り込み処理を実行させる優先度を示すプロセッサ優先度が割り当てられており、
    前記複数の割り込み要因を処理する前記プロセッサのうち前記プロセッサ優先度が最も高いプロセッサが、前記割り込みコントローラから出力される前記割り込み要求を受け付ける、マルチプロセッサシステム。
  4. 請求項1に記載のマルチプロセッサシステムであって、
    前記複数の割り込み要因のそれぞれには、処理の優先度を示す割り込み優先度が割り当てられており、
    前記割り込み要求を受け付けた前記プロセッサは、自身が処理すべき前記割り込み要因が発生していない場合には、他の前記割り込み要因のうち前記割り込み優先度が最も高い割り込み要因を処理する前記プロセッサに対して前記割り込み要求の発生を通知する、マルチプロセッサシステム。
  5. 請求項1に記載のマルチプロセッサシステムであって、
    前記複数のプロセッサのそれぞれには、割り込み処理を実行させる優先度を示すプロセッサ優先度が割り当てられており、
    前記割り込み要求を受け付けた前記プロセッサは、自身が処理すべき前記割り込み要因が発生していない場合には、他の前記割り込み要因を処理する他の前記プロセッサのうち前記プロセッサ優先度が最も高いプロセッサに対して前記割り込み要求の発生を通知する、マルチプロセッサシステム。
  6. 請求項2に記載のマルチプロセッサシステムであって、
    前記割り込み要求を受け付けた前記プロセッサは、自身が処理すべき前記割り込み要因が発生していない場合には、他の前記割り込み要因のうち前記割り込み優先度が最も高い割り込み要因を処理する前記プロセッサに対して前記割り込み要求の発生を通知する、マルチプロセッサシステム。
  7. 請求項3に記載のマルチプロセッサシステムであって、
    前記割り込み要求を受け付けた前記プロセッサは、自身が処理すべき前記割り込み要因が発生していない場合には、他の前記割り込み要因を処理する他の前記プロセッサのうち前記プロセッサ優先度が最も高いプロセッサに対して前記割り込み要求の発生を通知する、マルチプロセッサシステム。
  8. 複数のプロセッサと、
    複数の割り込み要因で割り込み要求が通知されると、当該割り込み要求を出力する割り込みコントローラと
    を備え、
    前記割り込みコントローラから出力される前記割り込み要求は、前記複数のプロセッサのいずれか一つに受け付けられ、
    前記割り込み要求を受け付けた前記プロセッサは、自身が処理すべき前記割り込み要因が発生しているかどうかを判定し、当該割り込み要因が発生している場合には当該割り込み要因に応じた割り込み処理を実行し、当該割り込み要因が発生していない場合には、他の前記プロセッサに対して前記割り込み要求の発生を通知する、マルチプロセッサシステム。
JP2007006621A 2007-01-16 2007-01-16 マルチプロセッサシステム Pending JP2008176360A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2007006621A JP2008176360A (ja) 2007-01-16 2007-01-16 マルチプロセッサシステム
US12/007,838 US7805555B2 (en) 2007-01-16 2008-01-16 Multiprocessor system
US12/872,423 US8051234B2 (en) 2007-01-16 2010-08-31 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007006621A JP2008176360A (ja) 2007-01-16 2007-01-16 マルチプロセッサシステム

Publications (2)

Publication Number Publication Date
JP2008176360A true JP2008176360A (ja) 2008-07-31
JP2008176360A5 JP2008176360A5 (ja) 2010-02-25

Family

ID=39618635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007006621A Pending JP2008176360A (ja) 2007-01-16 2007-01-16 マルチプロセッサシステム

Country Status (2)

Country Link
US (2) US7805555B2 (ja)
JP (1) JP2008176360A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010102540A (ja) * 2008-10-24 2010-05-06 Fujitsu Microelectronics Ltd マルチプロセッサシステムlsi
JP2010250821A (ja) * 2009-04-15 2010-11-04 Asml Netherlands Bv リソグラフィ装置、制御システム、マルチコアプロセッサ、およびマルチコアプロセッサにおいてタスクを開始する方法
JP2012003478A (ja) * 2010-06-16 2012-01-05 Mitsubishi Electric Corp 割込み制御装置
US9298251B2 (en) 2012-01-30 2016-03-29 Samsung Electronics Co., Ltd. Methods of spreading plurality of interrupts, interrupt request signal spreader circuits, and systems-on-chips having the same

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2075696A3 (en) * 2007-05-10 2010-01-27 Texas Instruments Incorporated Interrupt- related circuits, systems and processes
US7707344B2 (en) * 2008-01-29 2010-04-27 International Business Machines Corporation Interrupt mitigation on multiple network adapters
US8024504B2 (en) * 2008-06-26 2011-09-20 Microsoft Corporation Processor interrupt determination
KR20110097447A (ko) * 2010-02-25 2011-08-31 삼성전자주식회사 인터럽트 프록시 기능을 구비한 시스템 온 칩 및 그에 따른 인터럽트 프록시 처리방법
JP5512383B2 (ja) * 2010-05-12 2014-06-04 ルネサスエレクトロニクス株式会社 計算機システム
US8601194B2 (en) * 2011-02-08 2013-12-03 Red Hat Israel, Ltd. On-demand interrupt vector allocation based on activity detection
EP2875437A1 (en) * 2012-07-17 2015-05-27 Siemens Aktiengesellschaft Device and method for interrupt coalescing
US9424212B2 (en) * 2013-06-13 2016-08-23 Microsoft Technology Licensing, Llc Operating system-managed interrupt steering in multiprocessor systems

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07160656A (ja) * 1993-12-13 1995-06-23 Nippon Telegr & Teleph Corp <Ntt> 外部割込み制御方法
JPH1124948A (ja) * 1997-06-27 1999-01-29 Fujitsu Ltd マルチプロセッサシステムの割込み制御方式および装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4768149A (en) * 1985-08-29 1988-08-30 International Business Machines Corporation System for managing a plurality of shared interrupt handlers in a linked-list data structure
JP2855298B2 (ja) * 1990-12-21 1999-02-10 インテル・コーポレーション 割込み要求の仲裁方法およびマルチプロセッサシステム
US5410710A (en) * 1990-12-21 1995-04-25 Intel Corporation Multiprocessor programmable interrupt controller system adapted to functional redundancy checking processor systems
JPH04318654A (ja) * 1991-02-13 1992-11-10 Hewlett Packard Co <Hp> マイクロプロセッサへの割り込みのリダイレクションシステム
JPH05324569A (ja) 1992-05-21 1993-12-07 Mitsubishi Electric Corp 割り込み制御方式
US5675807A (en) * 1992-12-17 1997-10-07 Tandem Computers Incorporated Interrupt message delivery identified by storage location of received interrupt data
JPH0836498A (ja) 1994-07-25 1996-02-06 Nec Software Ltd マルチプロセッサシステム
US5940610A (en) * 1995-10-05 1999-08-17 Brooktree Corporation Using prioritized interrupt callback routines to process different types of multimedia information
JP3059098B2 (ja) 1996-01-31 2000-07-04 株式会社東芝 マルチプロセッサシステム
US5905897A (en) * 1997-03-20 1999-05-18 Industrial Technology Research Institute Method and apparatus for selecting a nonblocked interrupt request
US6006301A (en) * 1997-09-30 1999-12-21 Intel Corporation Multi-delivery scheme interrupt router
US6189065B1 (en) * 1998-09-28 2001-02-13 International Business Machines Corporation Method and apparatus for interrupt load balancing for powerPC processors
JP2001236238A (ja) 2000-02-24 2001-08-31 Matsushita Electric Ind Co Ltd 割込処理方法
US6738847B1 (en) * 2000-11-10 2004-05-18 Unisys Corporation Method for assigning a multiplicity of interrupt vectors in a symmetric multi-processor computing environment
US6772252B1 (en) * 2001-01-31 2004-08-03 Efficient Networks, Inc. System and method for identifying a product for use with a computing device
US6813665B2 (en) * 2001-09-21 2004-11-02 Intel Corporation Interrupt method, system and medium
US7328294B2 (en) * 2001-12-03 2008-02-05 Sun Microsystems, Inc. Methods and apparatus for distributing interrupts
KR100456630B1 (ko) * 2001-12-11 2004-11-10 한국전자통신연구원 프로세서간 통신을 위한 인터럽트 중계 장치 및 방법
US7444639B2 (en) * 2001-12-20 2008-10-28 Texas Insturments Incorporated Load balanced interrupt handling in an embedded symmetric multiprocessor system
JP2005182177A (ja) 2003-12-16 2005-07-07 Canon Inc 割り込み処理方法
JP4247228B2 (ja) * 2005-11-28 2009-04-02 株式会社日立製作所 ヘテロマルチプロセッサシステムおよびそのos構成方法
US8296768B2 (en) * 2007-06-30 2012-10-23 Intel Corporation Method and apparatus to enable runtime processor migration with operating system assistance

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07160656A (ja) * 1993-12-13 1995-06-23 Nippon Telegr & Teleph Corp <Ntt> 外部割込み制御方法
JPH1124948A (ja) * 1997-06-27 1999-01-29 Fujitsu Ltd マルチプロセッサシステムの割込み制御方式および装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010102540A (ja) * 2008-10-24 2010-05-06 Fujitsu Microelectronics Ltd マルチプロセッサシステムlsi
US8549200B2 (en) 2008-10-24 2013-10-01 Fujitsu Semiconductor Limited Multiprocessor system configured as system LSI
JP2010250821A (ja) * 2009-04-15 2010-11-04 Asml Netherlands Bv リソグラフィ装置、制御システム、マルチコアプロセッサ、およびマルチコアプロセッサにおいてタスクを開始する方法
JP2012003478A (ja) * 2010-06-16 2012-01-05 Mitsubishi Electric Corp 割込み制御装置
US9298251B2 (en) 2012-01-30 2016-03-29 Samsung Electronics Co., Ltd. Methods of spreading plurality of interrupts, interrupt request signal spreader circuits, and systems-on-chips having the same

Also Published As

Publication number Publication date
US20110022759A1 (en) 2011-01-27
US7805555B2 (en) 2010-09-28
US8051234B2 (en) 2011-11-01
US20080172511A1 (en) 2008-07-17

Similar Documents

Publication Publication Date Title
JP2008176360A (ja) マルチプロセッサシステム
JP6169615B2 (ja) システムコントローラのfifoコマンドキューを動的に管理する方法、集積回路およびシステム
US20110246686A1 (en) Apparatus and system having pci root port and direct memory access device functionality
JP6146128B2 (ja) データ処理装置
US7350005B2 (en) Handling interrupts in a system having multiple data processing units
JP5360061B2 (ja) マルチプロセッサシステム及びその制御方法
JP2008276391A (ja) メモリアクセス制御装置
JP2009238001A (ja) コンピュータシステム
US20190196993A1 (en) Information processing device, information processing method, and program
JP2007058716A (ja) データ転送バスシステム
JP6227767B2 (ja) 情報処理装置、その処理方法、及び入出力装置
JP5056668B2 (ja) データ転送装置、およびデータ転送方法
US8560784B2 (en) Memory control device and method
JP4934857B2 (ja) メモリアクセス制御装置、コンピュータ、メモリアクセス制御方法およびメモリアクセス制御プログラム
JP6106986B2 (ja) 演算処理装置、情報処理装置及び割込制御方法
JP2020204877A (ja) 半導体装置及びその動作方法
JP2015014962A (ja) 演算装置、演算方法、及びプログラム
JP7292044B2 (ja) 制御装置および制御方法
JP2008250419A (ja) 競合調停装置、マスタスレーブシステム及び競合調停方法
JP6535516B2 (ja) マルチ・プログラマブルデバイス・システムとその制御方法
JP2006277363A (ja) 情報転送方式,画像形成装置
JP2007219925A (ja) バス制御装置、バス制御プログラム及び記録媒体
JP6384359B2 (ja) 分散共有メモリを有する情報処理装置、方法、および、プログラム
JP5441185B2 (ja) 割り込みコントローラ及び時分割割り込み発生方法
JP2008198119A (ja) データ転送装置、データ転送システムおよびデータ転送方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080903

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100107

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100107

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110329

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120626