JP4381951B2 - ネスト状割込みシステムの割込み優先順位制御 - Google Patents
ネスト状割込みシステムの割込み優先順位制御 Download PDFInfo
- Publication number
- JP4381951B2 JP4381951B2 JP2004295495A JP2004295495A JP4381951B2 JP 4381951 B2 JP4381951 B2 JP 4381951B2 JP 2004295495 A JP2004295495 A JP 2004295495A JP 2004295495 A JP2004295495 A JP 2004295495A JP 4381951 B2 JP4381951 B2 JP 4381951B2
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- priority
- active
- interrupt processing
- processing program
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4818—Priority circuits therefor
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Bus Control (AREA)
Description
処理論理回路であって、プログラム命令の制御下で処理動作を実行するように動作し、また複数の割込み事象による割込みに対応する前記処理論理回路と、
ネスト状割込みコントローラであって、動作開始したが未終了の複数のアクティブな割込み処理プログラムのネスト的な実行を制御するように動作し、また前記複数の割込み処理プログラムのそれぞれに付随する優先度に応答して、1またはそれ以上のアクティブな割込み処理プログラムを待機中の割込み処理プログラムによって取って代える操作を制御する前記ネスト状割込みコントローラと、を含み、ここで
与えられたアクティブな割込み処理プログラムの優先度は、前記与えられたアクティブな割込み処理プログラムが動作開始したがまだ終了していない間に、変更可能であり、更に
前記ネスト状割込みコントローラは
(i)もし待機中(pending)の割込み処理プログラムの優先度が、アクティブな複数の割込み処理プログラムのうちの最も高い優先度よりも高いようであれば、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを許可するし、また
(ii)もし待機中の割込み処理プログラムの優先度が、アクティブな複数の割込み処理プログラムのうちの最も高い優先度よりも低いようであれば、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを許可しないように動作する。
プログラム命令の制御下で、複数の割込み事象による割込みに対応する処理動作を実行する工程と、
動作開始したが未終了の複数のアクティブな割込み処理プログラムのネスト化された実行を制御する工程であって、前記複数の割込み処理プログラムのそれぞれのものに付随する優先度に基づいて、待機中の割込み事象が1またはそれ以上のアクティブな割込み処理プログラムに取って代わることを制御する前記工程と、
を含み、ここで
与えられたアクティブな割込み処理プログラムの優先度は、前記与えられたアクティブな割込み処理プログラムが動作開始したがまだ終了していない間に変更可能であり、更に
前記制御工程は
(i)もし待機中の割込み処理プログラムの優先度がアクティブな複数の割込み処理プログラムのうちの最も高い優先度よりも高いようであれば、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを許可するし、また
(ii)もし待機中の割込み処理プログラムの優先度がアクティブな複数の割込み処理プログラムのうちの最も高い優先度よりも低いようであれば、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを許可しないように動作する。
4 プロセッサ・コア
6 データ・メモリ
8 命令メモリ
10 レジスタ・バンク
12 乗算器
14 シフタ
16 加算器
18 命令デコーダ
20 命令パイプライン
22 ロード記憶ユニット
24 ベクトル割込みコントローラ
26 制御テーブル
28 第1部分
29 第2部分
30 スタック・メモリ
32 スタック・メモリ
80 アクティブな割込みのスタック
82 プロセッサ
84 割込み分配器
86 割込み信号の配列
88 テーブル
90 分配バス
92 割込みコントローラ
94 信号
Claims (20)
- 処理論理回路であって、プログラム命令の制御下で処理動作を実行するように動作し、また複数の割込み事象による割込みに対応する前記処理論理回路と、
ネスト状割込みコントローラであって、動作開始したが未終了の複数のアクティブな割込み処理プログラムのネスト的な実行を制御するように動作し、また前記複数のアクティブな割込み処理プログラムのそれぞれに付随する優先度に応答して、当該複数のアクティブな割込み処理プログラムを待機中の割込み処理プログラムによって取って代える操作を制御する前記ネスト状割込みコントローラと、
を含むデータ処理のための装置において、
与えられた前記複数のアクティブな割込み処理プログラムの一つの優先度は、前記与えられた前記複数のアクティブな割込み処理プログラムの一つが動作開始したがまだ終了していない間に変更可能であり、更に、
前記ネスト状割込みコントローラは、先取順序を保持して、複数のアクティブな割込み処理プログラムを連続して実行し、及び、
(i)もし待機中(pending)の割込み処理プログラムの優先度が、前記複数のアクティブな割込み処理プログラムのうちの最も高い優先度よりも高いようであれば、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを許可し、
(ii)もし待機中の割込み処理プログラムの優先度が前記複数のアクティブな割込み処理プログラムのうちの最も高い優先度よりも低いようであれば、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを許可しない、
ようにした、前記データ処理装置。 - 請求項1に記載の装置であって、前記ネスト状の割込みコントローラが、前記待機中の割込み処理プログラムに付随する前記優先度が前記複数のアクティブな割込み処理プログラムに付随する最も高い優先度に等しい場合に、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを防止するように機能する、前記装置。
- 請求項1に記載の装置であって、1つの割込み処理プログラムの優先度が前記割込み処理プログラムに付随するプログラミング可能な優先度レベルによって設定される、前記装置。
- 請求項1に記載の装置であって、前記待機中の割込み処理プログラムが、
新しく検出された割込み事象と、
1またはそれ以上の以前に検出されている割込み事象であって対応する割込み処理プログラムがまだ始動していない割込み事象と、のうちの1つに対応している、前記装置。 - 請求項1に記載の装置であって、前記ネスト状の割込みコントローラが、対応する割込処理プログラムに関して、複数の割込み事象のそれぞれ1つに対応する記憶値に応答して、
待機状態にある、前記対応する割込み処理プログラムと、
アクティブ状態にある、前記対応する割込み処理プログラムと、
前記対応する割込み処理プログラムに付随する優先度レベルと、
を表示する、前記装置。 - 請求項1に記載の装置であって、前記複数のアクティブな割込み処理プログラムを待機中の割込み処理プログラムによって取って代える処理、に対応する状態データを記憶するように動作する、スタック・データ記憶を含む、前記装置。
- 請求項6に記載の装置であって、前記複数のアクティブな割込み処理プログラムの任意のものに付随する前記最も高い優先度が、前記スタック・データ記憶中の空きスペースが予め定められた空きスペース・レベルよりも低下したときに増分される、前記装置。
- 請求項7に記載の装置であって、前記複数のアクティブな割込み処理プログラムに付随する前記最も高い優先度が、可能な最大優先度レベルよりも低いプログラミング可能な優先度レベルに増分される、前記装置。
- 請求項8に記載の装置であって、前記予め定められた空きスペース・レベルが、前記プログラミング可能な優先度レベルよりも高い優先度を有する割込み処理プログラムによって取って代わられるときに利用できるように前記スタック・メモリ中に空きスペースを残すように設定される、前記装置。
- 請求項7に記載の装置であって、マルチプロセッサ・システム内に複数のプロセッサを含み、前記スタック・データ記憶が前記複数のプロセッサ間での通信用として使用される共用のハードウエア・スタックである、前記装置。
- 請求項6に記載の装置であって、前記スタック・データ記憶がスタック・メモリである、前記装置。
- データを処理する方法であって、前記方法は、
プログラム命令の制御下で複数の割込み事象による割込みに対応する処理動作を実行する工程と、
動作開始したが未終了の複数のアクティブな割込み処理プログラムのネスト化された実行を制御する工程であって、前記複数のアクティブな割込み処理プログラムのそれぞれのものに付随する優先度に基づいて、待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを制御する前記工程と、
を含み、ここで
与えられた複数のアクティブな割込み処理プログラムの一つの優先度は、前記与えられた複数のアクティブな割込み処理プログラムの一つが動作開始したがまだ終了していない間に変更可能であり、更に
前記制御工程は、先取順序を保持して、複数のアクティブな割込み処理プログラムを連続して実行し、及び、
(i)もし待機中の割込み処理プログラムの優先度が前記複数のアクティブな割込み処理プログラムのうちの最も高い優先度よりも高いようであれば、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを許可し、また
(ii)もし待機中の割込み処理プログラムの優先度が前記複数のアクティブな割込み処理プログラムのうちの最も高い優先度よりも低いようであれば、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを許可しない、
前記方法。 - 請求項12に記載の方法であって、前記待機中の割込み処理プログラムに付随する前記優先度が前記複数のアクティブな割込み処理プログラムに付随する最も高い優先度に等しい場合に、前記待機中の割込み処理プログラムが前記複数のアクティブな割込み処理プログラムに取って代わることを防止する、前記方法。
- 請求項12に記載の方法であって、1つの割込み処理プログラムの優先度が前記割込み処理プログラムに付随するプログラミング可能な優先度レベルによって設定される、前記方法。
- 請求項12に記載の方法であって、前記待機中の割込み処理プログラムが、
新しく検出された割込み事象と、
1またはそれ以上の以前に検出されている割込み事象であって、対応する割込み処理プログラムがまだ始動していない割込み事象と、のうちの1つに対応している、前記方法。 - 請求項12に記載の方法であって、前記制御工程が対応する割込処理プログラムに関して、複数の割込み事象のそれぞれ1つに対応する記憶値に応答して、
前記待機状態にある、対応する割込み処理プログラムと、
前記アクティブ状態にある、対応する割込み処理プログラムと、
前記対応する割込み処理プログラムに付随する優先度レベルと、
を表示する、前記方法。 - 請求項12に記載の方法であって、スタック・データ記憶が、待機中の割り込み処理プログラムが前記複数のアクティブな割込み処理プログラムによって取って代える処理、に対応する状態データを記憶するように動作する、前記方法。
- 請求項17に記載の方法であって、前記複数のアクティブな割込み処理プログラムに付随する前記最も高い優先度が、前記スタック・データ記憶中の空きスペースが予め定められた空きスペース・レベルよりも低下したときに増分される、前記方法。
- 請求項18に記載の方法であって、前記複数のアクティブな割込み処理プログラムに付随する前記最も高い優先度が、可能な最大優先度レベルよりも低い、プログラミング可能な優先度レベルに増分される、前記方法。
- 請求項19に記載の方法であって、前記予め定められた空きスペース・レベルが、前記プログラミング可能な優先度レベルよりも高い優先度を有する割込み処理プログラムによって取って代わられるときに利用できるように、前記スタック・メモリ中に空きスペースを残すように設定される、前記方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/775,334 US7206884B2 (en) | 2004-02-11 | 2004-02-11 | Interrupt priority control within a nested interrupt system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005228294A JP2005228294A (ja) | 2005-08-25 |
JP4381951B2 true JP4381951B2 (ja) | 2009-12-09 |
Family
ID=32869922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004295495A Active JP4381951B2 (ja) | 2004-02-11 | 2004-10-08 | ネスト状割込みシステムの割込み優先順位制御 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7206884B2 (ja) |
JP (1) | JP4381951B2 (ja) |
GB (1) | GB2411023B (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4817834B2 (ja) * | 2005-12-19 | 2011-11-16 | ルネサスエレクトロニクス株式会社 | 割り込み制御装置及び割り込み制御方法 |
US7979618B2 (en) * | 2007-07-12 | 2011-07-12 | Samsung Electronics Co., Ltd. | Image forming apparatus and control method thereof |
GB2454885B (en) | 2007-11-21 | 2012-06-06 | Advanced Risc Mach Ltd | Interrupt jitter suppression |
JP5673672B2 (ja) * | 2010-03-30 | 2015-02-18 | 富士通株式会社 | マルチコアプロセッサシステム、制御プログラム、および制御方法 |
GB2503471B (en) * | 2012-06-27 | 2015-05-06 | Nordic Semiconductor Asa | Integrated-circuit radio |
US9372818B2 (en) * | 2013-03-15 | 2016-06-21 | Atmel Corporation | Proactive quality of service in multi-matrix system bus |
WO2015067993A1 (en) | 2013-11-08 | 2015-05-14 | Freescale Semiconductor, Inc. | Processing system with stack management and method for stack management |
GB2521607B (en) | 2013-12-23 | 2016-03-23 | Nordic Semiconductor Asa | Integrated-Circuit Radio |
EP3125125A4 (en) | 2014-03-24 | 2018-07-25 | Square Enix Co., Ltd. | Interactive system, terminal device, server device, control method, program, and recording medium |
FR3028065B1 (fr) * | 2014-10-30 | 2017-12-22 | Stmicroelectronics Rousset | Procede de commande d'une unite de traitement ameliorant la gestion des taches a executer et unite de traitement correspondante |
GB2550904B (en) * | 2016-05-27 | 2020-07-15 | Arm Ip Ltd | Methods and Apparatus for Creating Module Instances |
CN108595256B (zh) * | 2018-03-20 | 2020-12-29 | 武汉市聚芯微电子有限责任公司 | 一种基于risc-v架构芯片采用软件实现中断嵌套的方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4038642A (en) * | 1976-04-30 | 1977-07-26 | International Business Machines Corporation | Input/output interface logic for concurrent operations |
US4488227A (en) * | 1982-12-03 | 1984-12-11 | Honeywell Information Systems Inc. | Program counter stacking method and apparatus for nested subroutines and interrupts |
EP0132161B1 (en) | 1983-07-19 | 1988-06-15 | Nec Corporation | Apparatus for controlling a plurality of interruption processings |
US5083261A (en) | 1983-11-03 | 1992-01-21 | Motorola, Inc. | Dynamically alterable interrupt priority circuit |
JPH0792782B2 (ja) | 1985-09-30 | 1995-10-09 | 富士通株式会社 | 処理実行システム |
EP0443557B1 (en) * | 1990-02-20 | 1995-11-08 | Nec Corporation | Interrupt controller capable of realizing interrupt nesting function |
JP2507833B2 (ja) * | 1990-12-25 | 1996-06-19 | 三菱電機株式会社 | マイクロコンピュ−タ |
US5515538A (en) * | 1992-05-29 | 1996-05-07 | Sun Microsystems, Inc. | Apparatus and method for interrupt handling in a multi-threaded operating system kernel |
US5642516A (en) * | 1994-10-14 | 1997-06-24 | Cirrus Logic, Inc. | Selective shadowing of registers for interrupt processing |
US5958036A (en) * | 1997-09-08 | 1999-09-28 | Lucent Technologies Inc. | Circuit for arbitrating interrupts with programmable priority levels |
US6108744A (en) * | 1998-04-16 | 2000-08-22 | Sun Microsystems, Inc. | Software interrupt mechanism |
US6081867A (en) * | 1998-05-20 | 2000-06-27 | Sony Corporation | Software configurable technique for prioritizing interrupts in a microprocessor-based system |
US6651126B1 (en) * | 1999-10-29 | 2003-11-18 | Texas Instruments Incorporated | Snapshot arbiter mechanism |
US6928502B2 (en) * | 2003-01-31 | 2005-08-09 | Via Telecom Co., Ltd. | Method and apparatus for processing interrupts at dynamically selectable prioritization levels |
-
2004
- 2004-02-11 US US10/775,334 patent/US7206884B2/en active Active
- 2004-07-08 GB GB0415340A patent/GB2411023B/en not_active Expired - Lifetime
- 2004-10-08 JP JP2004295495A patent/JP4381951B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
US20050177667A1 (en) | 2005-08-11 |
JP2005228294A (ja) | 2005-08-25 |
US7206884B2 (en) | 2007-04-17 |
GB2411023B (en) | 2006-12-13 |
GB0415340D0 (en) | 2004-08-11 |
GB2411023A (en) | 2005-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8799929B2 (en) | Method and apparatus for bandwidth allocation mode switching based on relative priorities of the bandwidth allocation modes | |
JP7313381B2 (ja) | ハードウェアアクセラレーションのためのハードウェアリソースの埋込みスケジューリング | |
US9727343B2 (en) | Apparatus and method for handling exception events | |
JP7087029B2 (ja) | 中央処理装置(cpu)と補助プロセッサとの間の改善した関数コールバック機構 | |
US7734897B2 (en) | Allocation of memory access operations to memory access capable pipelines in a superscalar data processing apparatus and method having a plurality of execution threads | |
JP4381951B2 (ja) | ネスト状割込みシステムの割込み優先順位制御 | |
GB2348306A (en) | Batch processing of tasks in data processing systems | |
JP4610322B2 (ja) | 割込み処理制御の方法と装置 | |
JPH08221311A (ja) | スーパースカラプロセッサにおけるロードバッファ及びストアバッファの優先順位の動的切換え | |
US20170212852A1 (en) | Method and accelerator unit for interrupt handling | |
US20050028159A1 (en) | Memory managing system and task controller in multitask system | |
US11734079B2 (en) | Methods of hardware and software-coordinated opt-in to advanced features on hetero ISA platforms | |
JP7470685B2 (ja) | 集積回路中の算出ユニットをプログラムおよび制御すること | |
US7080178B2 (en) | Interrupt pre-emption and ordering within a data processing system | |
JPH0926928A (ja) | 仮想入出力プロセッサ | |
US6704863B1 (en) | Low-latency DMA handling in pipelined processors | |
JP2007207074A (ja) | オペレーションシステム、スレッド制御機構、及び情報処理装置 | |
JP2004287883A (ja) | プロセッサ、計算機及び優先度決定方法 | |
US7904703B1 (en) | Method and apparatus for idling and waking threads by a multithread processor | |
JP6913689B2 (ja) | レジスタ・アクセス制御 | |
JP4756599B2 (ja) | データ処理装置 | |
JP2012168725A (ja) | マルチスレッド・プロセッサ | |
JP7157542B2 (ja) | プリフェッチコントローラ | |
CN115809121A (zh) | 用于上下文切换的方法和装置 | |
JP2011123804A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061116 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081017 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090119 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090122 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090217 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090220 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090302 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090508 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090617 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090904 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090916 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121002 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4381951 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131002 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |