JP7417544B2 - 割込みコントローラ - Google Patents
割込みコントローラ Download PDFInfo
- Publication number
- JP7417544B2 JP7417544B2 JP2020563922A JP2020563922A JP7417544B2 JP 7417544 B2 JP7417544 B2 JP 7417544B2 JP 2020563922 A JP2020563922 A JP 2020563922A JP 2020563922 A JP2020563922 A JP 2020563922A JP 7417544 B2 JP7417544 B2 JP 7417544B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- interrupt
- processing element
- interrupt request
- dummy
- 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
- 238000012545 processing Methods 0.000 claims description 159
- 230000004888 barrier function Effects 0.000 claims description 26
- 230000004044 response Effects 0.000 claims description 25
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims 1
- 238000000034 method Methods 0.000 description 45
- 230000002093 peripheral effect Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 230000008685 targeting Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000002411 adverse Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012913 prioritisation Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- 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/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/522—Barrier synchronisation
-
- 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/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Description
Claims (15)
- 処理要素に割込み要求を発行する発行回路と、
発行される少なくとも1つの保留中の割込み要求に関連付けられる競合状態の存在を検出することと、前記競合状態が解決されたときにバリア・インジケータを設定することとを行うための制御回路と
を備え、
前記競合状態が存在することに応答して、前記発行回路が、前記少なくとも1つの保留中の割込み要求のうちの1つを選択することと、前記選択された保留中の割込み要求に続いてダミー要求を、前記処理要素が前記ダミー要求を受信する前に前記選択された保留中の割込み要求を受信することを確実にするパスを介して前記処理要素に発行することと、前記処理要素が前記ダミー要求を受信したことを示す確認応答を受信することとを行うように構成され、
前記確認応答に応答して、前記制御回路が前記バリア・インジケータを設定するように構成されている、割込みコントローラ。 - 前記処理要素が前記選択された保留中の割込み要求を受信すると、前記割込みコントローラが採用されているシステムのコンポーネントの動作を実施したい場合に、前記競合状態が発生する、請求項1に記載の割込みコントローラ。
- 前記制御回路が、前記競合状態が存在するかどうかを決定するためのシステム状態情報を監視する監視回路を備える、請求項2に記載の割込みコントローラ。
- 前記制御回路が、前記システム状態情報及び前記少なくとも1つの保留中の割込み要求に基づいて、前記競合状態が存在するかどうかを決定するために配置されている、請求項3に記載の割込みコントローラ。
- 前記バリア・インジケータを設定することにより、前記競合状態が解決されたことが前記コンポーネントに通知されるように、前記バリア・インジケータを記憶するためのインジケータ・ストレージをさらに備える、請求項2から4までのいずれか一項に記載の割込みコントローラ。
- 前記システムの前記コンポーネントが前記処理要素である、請求項2から5までのいずれか一項に記載の割込みコントローラ。
- 前記処理要素の前記動作が、前記選択された保留中の割込み要求の受信後に要求された関連付けられるデータ処理動作を実施するための1つ又は複数のプログラム命令の実行を含む、請求項2から6までのいずれか一項に記載の割込みコントローラ。
- 前記処理要素が、ハイパーバイザの制御下で複数のオペレーティング・システムを採用するように構成され、任意の時点で、前記オペレーティング・システムのうちの1つが前記処理要素の常駐オペレーティング・システムであり、
前記少なくとも1つの保留中の割込み要求のターゲット・オペレーティング・システムが前記常駐オペレーティング・システム以外の場合に前記競合状態が発生し、前記1つ又は複数の命令が前記ターゲット・オペレーティング・システムの前記制御下で実行され、
前記制御回路が、前記競合状態が存在する場合、前記ハイパーバイザに前記ターゲット・オペレーティング・システムを前記常駐オペレーティング・システムにさせるために前記処理要素に切替え要求を送るように構成されている、請求項7に記載の割込みコントローラ。 - 前記割込みコントローラが、前記ハイパーバイザが前記ターゲット・オペレーティング・システムを前記常駐オペレーティング・システムにしたことを示す応答インジケータを受信することと、前記応答インジケータの受信後に、前記選択した保留中の割込み要求の後に前記ダミー要求を発行することとを行うように構成されている、請求項8に記載の割込みコントローラ。
- 前記制御回路が、前記ターゲット・オペレーティング・システムによる前記1つ又は複数のプログラム命令の実行が実施され得ることを示すために、前記確認応答に応答して前記バリア・インジケータを設定するように構成されている、請求項9に記載の割込みコントローラ。
- 前記処理要素にアクセス可能な常駐レジスタをさらに備え、前記処理要素が、前記常駐レジスタ内に前記応答インジケータを設定するように配置され、前記制御回路が、前記応答インジケータが前記常駐レジスタ内に設定されたかどうかを決定するために前記常駐レジスタを監視するように構成されている、請求項10に記載の割込みコントローラ。
- 前記パスが、前記パスに沿った前記処理要素への送信の間に、前記選択された保留中の割込み要求及び前記ダミー要求の再順序付けを防止する、請求項1から11までのいずれか一項に記載の割込みコントローラ。
- 前記発行回路が、割込み要求の識別子を備えるクリア割込み要求を発行するように構成され、前記クリア割込み要求が、識別された割込み要求がもはや実行される必要がないことを示し、
前記ダミー要求が、クリアされるべき前記割込み要求の偽の識別子を備えるダミークリア割込み要求を含み、前記偽の識別子が、既存の割込み要求を識別しない、請求項1から12までのいずれか一項に記載の割込みコントローラ。 - 処理要素に割込み要求を発行するための発行手段と、
発行される少なくとも1つの保留中の割込み要求に関連付けられる競合状態の存在を検出することと、前記競合状態が解決されたときにバリア・インジケータを設定することとを行うための制御手段と
を備え、
前記競合状態が存在することに応答して、前記発行手段が、前記少なくとも1つの保留中の割込み要求のうちの1つを選択することと、前記選択された保留中の割込み要求に続いてダミー要求を、前記処理要素が前記ダミー要求を受信する前に前記選択された保留中の割込み要求を受信することを確実にするパスを介して前記処理要素に発行することと、前記処理要素が前記ダミー要求を受信したことを示す確認応答を受信することとを行うように構成され、
前記確認応答に応答して、前記制御手段が前記バリア・インジケータを設定するように構成されている、割込みコントローラ。 - 発行される少なくとも1つの保留中の割込み要求に関連付けられる競合状態を検出するステップと、
前記競合状態が存在することに応答して、前記少なくとも1つの保留中の割込み要求のうちの1つを選択するステップと、
前記選択された保留中の割込み要求に続いてダミー要求を処理要素に、前記処理要素が前記ダミー要求を受信する前に前記選択された保留中の割込み要求を受信することを確実にするパスを介して発行するステップと、
前記処理要素が前記ダミー要求を受信したことを示す確認応答を受信するステップと、
前記競合状態が解決されたことを示すために、前記確認応答に応じてバリア・インジケータを設定するステップと
を含む、処理要素に割込み要求を発行するための方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1808587.8 | 2018-05-24 | ||
GB1808587.8A GB2574049B (en) | 2018-05-24 | 2018-05-24 | Interrupt controller |
PCT/GB2019/051211 WO2019224515A1 (en) | 2018-05-24 | 2019-05-01 | Interrupt controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021524092A JP2021524092A (ja) | 2021-09-09 |
JP7417544B2 true JP7417544B2 (ja) | 2024-01-18 |
Family
ID=62812209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020563922A Active JP7417544B2 (ja) | 2018-05-24 | 2019-05-01 | 割込みコントローラ |
Country Status (9)
Country | Link |
---|---|
US (1) | US11429426B2 (ja) |
EP (1) | EP3803609B1 (ja) |
JP (1) | JP7417544B2 (ja) |
KR (1) | KR20210013049A (ja) |
CN (1) | CN112119386B (ja) |
GB (1) | GB2574049B (ja) |
IL (1) | IL278436B2 (ja) |
TW (1) | TWI801581B (ja) |
WO (1) | WO2019224515A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11775329B1 (en) * | 2020-12-30 | 2023-10-03 | Virtuozzo International Gmbh | System and method for reducing virtual machine live migration downtime |
US11855831B1 (en) | 2022-06-10 | 2023-12-26 | T-Mobile Usa, Inc. | Enabling an operator to resolve an issue associated with a 5G wireless telecommunication network using AR glasses |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050080965A1 (en) | 2003-09-30 | 2005-04-14 | Bennett Steven M. | Mechanism to control hardware interrupt acknowledgement in a virtual machine system |
US20160124771A1 (en) | 2014-11-04 | 2016-05-05 | Apple Inc. | Throttling circuitry |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5717932A (en) * | 1994-11-04 | 1998-02-10 | Texas Instruments Incorporated | Data transfer interrupt pacing |
US5819112A (en) * | 1995-09-08 | 1998-10-06 | Microsoft Corporation | Apparatus for controlling an I/O port by queuing requests and in response to a predefined condition, enabling the I/O port to receive the interrupt requests |
US5974440A (en) * | 1996-03-25 | 1999-10-26 | Texas Instruments Incorporated | Microprocessor with circuits, systems, and methods for interrupt handling during virtual task operation |
JPH103450A (ja) * | 1996-06-18 | 1998-01-06 | Brother Ind Ltd | ステータス応答装置 |
US7069367B2 (en) * | 2000-12-29 | 2006-06-27 | Intel Corporation | Method and apparatus for avoiding race condition with edge-triggered interrupts |
CN100547571C (zh) * | 2006-08-29 | 2009-10-07 | 联想(北京)有限公司 | 一种虚拟机系统及其硬件设备中断处理方法 |
GB2455744B (en) * | 2007-12-19 | 2012-03-14 | Advanced Risc Mach Ltd | Hardware driven processor state storage prior to entering a low power mode |
US9195493B2 (en) * | 2014-03-27 | 2015-11-24 | International Business Machines Corporation | Dispatching multiple threads in a computer |
-
2018
- 2018-05-24 GB GB1808587.8A patent/GB2574049B/en active Active
-
2019
- 2019-05-01 JP JP2020563922A patent/JP7417544B2/ja active Active
- 2019-05-01 EP EP19723171.5A patent/EP3803609B1/en active Active
- 2019-05-01 KR KR1020207033052A patent/KR20210013049A/ko active Search and Examination
- 2019-05-01 WO PCT/GB2019/051211 patent/WO2019224515A1/en unknown
- 2019-05-01 CN CN201980032473.0A patent/CN112119386B/zh active Active
- 2019-05-01 US US17/056,896 patent/US11429426B2/en active Active
- 2019-05-10 TW TW108116176A patent/TWI801581B/zh active
-
2020
- 2020-11-02 IL IL278436A patent/IL278436B2/en unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050080965A1 (en) | 2003-09-30 | 2005-04-14 | Bennett Steven M. | Mechanism to control hardware interrupt acknowledgement in a virtual machine system |
US20160124771A1 (en) | 2014-11-04 | 2016-05-05 | Apple Inc. | Throttling circuitry |
Also Published As
Publication number | Publication date |
---|---|
CN112119386B (zh) | 2024-01-19 |
TW202013201A (zh) | 2020-04-01 |
EP3803609A1 (en) | 2021-04-14 |
GB2574049A (en) | 2019-11-27 |
EP3803609B1 (en) | 2022-04-20 |
IL278436B1 (en) | 2023-04-01 |
CN112119386A (zh) | 2020-12-22 |
GB201808587D0 (en) | 2018-07-11 |
TWI801581B (zh) | 2023-05-11 |
US11429426B2 (en) | 2022-08-30 |
KR20210013049A (ko) | 2021-02-03 |
WO2019224515A1 (en) | 2019-11-28 |
GB2574049A8 (en) | 2020-01-15 |
IL278436B2 (en) | 2023-08-01 |
GB2574049B (en) | 2020-10-07 |
JP2021524092A (ja) | 2021-09-09 |
US20210271512A1 (en) | 2021-09-02 |
IL278436A (ja) | 2020-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR0128273B1 (ko) | 데이타처리 시스템, 다중프로세서 데이타처리 시스템에서 다수의 인터럽트를 유지관리, 처리하는 시스템 및 방법 | |
US7293119B2 (en) | DMA data transfer between low-overhead processor and connected external circuitry using transactions log | |
US7953915B2 (en) | Interrupt dispatching method in multi-core environment and multi-core processor | |
KR100932408B1 (ko) | 스위치 매트릭스를 통한 데이터 전송을 개선하는 흐름 제어방법 | |
JPH06309252A (ja) | 相互接続インタフェース | |
WO2000058843A1 (en) | A host adapter for combining i/o completion reports and method of using the same | |
JP7417544B2 (ja) | 割込みコントローラ | |
US10761776B2 (en) | Method for handling command in conflict scenario in non-volatile memory express (NVMe) based solid-state drive (SSD) controller | |
JPH0619755B2 (ja) | アービトレーシヨンを制御するための方法及び装置 | |
US20170212852A1 (en) | Method and accelerator unit for interrupt handling | |
JP2004199698A (ja) | 複数の割込発生源から生じる割込要求の優先順位決定用割込制御装置ならびに割込制御方法 | |
WO2015173853A1 (ja) | 情報処理装置、その処理方法、及び入出力装置 | |
JP2008046890A (ja) | マルチプロセッサシステム | |
KR100874073B1 (ko) | 버스의 전송 채널에 대역폭을 할당하기 위한 방법 및 장치 | |
JP2000194683A (ja) | 共有メモリの調停回路およびその調停方法 | |
KR100346873B1 (ko) | Scsi 버스상의 재선택을 관리하기 위한 방법 및 시스템 | |
US10423546B2 (en) | Configurable ordering controller for coupling transactions | |
US20160364260A1 (en) | Event router and routing method for symmetric multiprocessor virtual machine using queue | |
US10025750B2 (en) | Transmission device, controller, and system comprising transmission device and controller | |
JP2007323256A (ja) | 割込制御方法および情報処理装置 | |
JP2009087149A (ja) | 電子デバイス、データ処理装置、及びバス制御方法 | |
JP4151449B2 (ja) | チャネルコントロール装置、データ転送装置、チャネルコントロール方法 | |
EP1416393B1 (en) | Processor interface having a stream register and a FIFO | |
JP2006119982A (ja) | コンピュータシステム | |
JPH07287669A (ja) | データ処理装置およびそれを用いたプログラム実行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220425 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230608 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230908 |
|
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: 20231212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240105 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7417544 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |