JP2019126034A - 仮想割り込みサービスプロバイダのためのサービス要求割り込みルータ - Google Patents
仮想割り込みサービスプロバイダのためのサービス要求割り込みルータ Download PDFInfo
- Publication number
- JP2019126034A JP2019126034A JP2019004437A JP2019004437A JP2019126034A JP 2019126034 A JP2019126034 A JP 2019126034A JP 2019004437 A JP2019004437 A JP 2019004437A JP 2019004437 A JP2019004437 A JP 2019004437A JP 2019126034 A JP2019126034 A JP 2019126034A
- Authority
- JP
- Japan
- Prior art keywords
- service request
- virtual
- isps
- arbitration
- isp
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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
- 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
- G06F13/26—Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
-
- 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
-
- 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
-
- 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
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/356—Switches specially adapted for specific applications for storage area networks
-
- 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
-
- 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/45595—Network integration; Enabling network access in virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/544—Remote
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/24—Interrupt
- G06F2213/2414—Routing of interrupt among interrupt handlers in processor system or interrupt controller
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Bus Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
サービス要求割り込みルータ(IR)とは、オンチップリソースと割り込みサービスプロバイダ(ISP)との間のインタフェースである。動作中、オンチップリソースは、サービス要求割り込み信号をIRに送信する。IRは、制御情報、例えば優先順位およびISPの割り当てを追加することにより、割り込み信号をISPのためのサービス要求に変換し、各ISPに対し、割り当てられた優先順位に基づいて、各ISPにマッピングされた保留中のサービス要求間の調停を行う。ついで、各ISPがサービス要求に応答する。ISPは、例えば、中央処理ユニット(CPU)またはダイレクトメモリアクセス(DMA)であってよい。
Claims (22)
- サービス要求割り込みルータであって、
複数の仮想ISPを有する割り込みサービスプロバイダ(ISP)にマッピングされた割り込みコントローラと、
各割り込み信号を対応するサービス要求に変換し、かつそれぞれ、自身のサービス要求を前記複数の仮想ISPのうち1つに配向するように構成された複数のサービス要求ノード(SRN)と、
時間スライス方式で前記複数の仮想ISP間の調停を行い、前記複数の仮想ISPのそれぞれに対しては、前記それぞれの仮想ISPに配向されたサービス要求のうちどれが最高優先順位を有するかの調停を行うように構成された調停装置と、
を含むサービス要求割り込みルータ。 - 前記サービス要求割り込みルータは、さらに、それぞれ複数のISPにマッピングされた複数の割り込みコントローラを含み、
前記複数のSRNのそれぞれは、自身のサービス要求を、複数のISPのうち1つに、また複数のISPのうち1つが複数の仮想ISPを有する場合には前記複数の仮想ISPのうち1つに配向するように構成されている、
請求項1記載のサービス要求割り込みルータ。 - 前記サービス要求割り込みルータは、さらに、前記複数の割り込みコントローラのそれぞれに割り当てられた専用の調停装置を含む、
請求項2記載のサービス要求割り込みルータ。 - 前記サービス要求割り込みルータは、さらに、調停装置を含み、
前記調停装置は、前記複数の割り込みコントローラによって共有され、時間スライス方式で前記複数のISPおよびその仮想ISP間の調停を行い、前記複数のISPおよび仮想ISPのそれぞれに対しては、前記それぞれのISPおよび仮想ISPに配向されたサービス要求のうちどれが最高優先順位を有するかの調停を行うように構成されている、
請求項2記載のサービス要求割り込みルータ。 - 前記調停装置は、逐次シーケンスで、保留中のサービス要求を有するISPおよび仮想ISPのみの間の調停を行うように構成されている、
請求項1記載のサービス要求割り込みルータ。 - 前記複数の仮想ISPのうち少なくとも1つは、仮想マシンモニタ(VMM)またはハイパーバイザである、
請求項1記載のサービス要求割り込みルータ。 - 前記複数の仮想ISPのうち少なくとも1つは、仮想マシン(VM)である、
請求項1記載のサービス要求割り込みルータ。 - 前記調停装置は、逐次シーケンスで、前記複数の仮想ISPの間の調停を行うように構成されている、
請求項7記載のサービス要求割り込みルータ。 - 前記調停装置は、逐次シーケンスで、前記複数の仮想ISPの全ての間の調停を行うように構成されている、
請求項1記載のサービス要求割り込みルータ。 - 前記調停装置は、逐次シーケンスで、保留中のサービス要求を有する仮想ISPのみの間の調停を行うように構成されている、
請求項1記載のサービス要求割り込みルータ。 - 前記ISPは、仮想マシンモニタ(VMM)サポートを有する中央処理ユニット(CPU)である、
請求項1記載のサービス要求割り込みルータ。 - 前記ISPは、ダイレクトメモリアクセス(DMA)である、
請求項1記載のサービス要求割り込みルータ。 - 前記調停装置は、少なくとも1つのSRNがリコンフィグレーションされること、少なくとも1つの仮想ISPが新たなサービス要求を有すること、少なくとも1つの仮想ISPがサービス要求を承認すること、および少なくとも1つの仮想ISPがイネーブル/ディスエーブルされることを含むグループから選択されるイベントが発生した場合にのみ、前記複数の仮想ISPの再調停を行うように構成されている、
請求項1記載のサービス要求割り込みルータ。 - 前記サービス要求割り込みルータは、さらに、前記調停装置に対して並列に結合されたロックステップ調停装置を含み、
前記ロックステップ調停装置と前記調停装置とが異なる出力を供給する場合、前記調停装置および前記ロックステップ調停装置の少なくとも一方の誤りが検出される、
請求項1記載のサービス要求割り込みルータ。 - 前記サービス要求割り込みルータは、さらに、少なくとも2つのロックステップ調停装置を含み、前記少なくとも2つのロックステップ調停装置は、それぞれ前記調停装置に対して並列に結合されて設けられており、
前記調停装置および前記ロックステップ調停装置のうち少なくとも1つが異なる出力を供給する場合、特定多数決に基づいて誤りが検出される、
請求項1記載のサービス要求割り込みルータ。 - 前記調停装置は、複数のクロックサイクルにわたって複数の段に保留中のサービス要求を有する仮想ISP間の調停を行うように構成されている、
請求項1記載のサービス要求割り込みルータ。 - 前記割り込みコントローラは、マッピングされた、勝者であるサービス要求に関するISP情報を報知するように構成されている、
請求項1記載のサービス要求割り込みルータ。 - 前記勝者であるサービス要求に関する情報は、サービス要求優先順位番号(SPRN)および前記勝者であるサービス要求の配向先の仮想ISPを含む、
請求項17記載のサービス要求割り込みルータ。 - 前記情報は、さらに、関連するSRNのインデクス番号または誤り検出符号(EDC)情報を含む、
請求項18記載のサービス要求割り込みルータ。 - システムオンチップであって、
請求項1記載のサービス要求割り込みルータと、
複数の仮想ISPを有するISPと、
を含み、
前記複数の仮想ISPは、仮想マシンモニタ(VMM)および少なくとも1つの仮想マシン(VM)を含む、
システムオンチップ。 - 前記調停装置は、前記複数の仮想ISPのうち少なくとも1つに対し、優先順位に基づいて調停を行うように構成されている、
請求項1記載のサービス要求割り込みルータ。 - 前記複数の仮想ISPのうち優先される少なくとも1つの仮想ISPは、仮想マシンモニタ(VMM)またはスーパーバイザである、
請求項21記載のサービス要求割り込みルータ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/872,216 US10992750B2 (en) | 2018-01-16 | 2018-01-16 | Service request interrupt router for virtual interrupt service providers |
US15/872,216 | 2018-01-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019126034A true JP2019126034A (ja) | 2019-07-25 |
JP7233932B2 JP7233932B2 (ja) | 2023-03-07 |
Family
ID=67068877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019004437A Active JP7233932B2 (ja) | 2018-01-16 | 2019-01-15 | 仮想割り込みサービスプロバイダのためのサービス要求割り込みルータ |
Country Status (3)
Country | Link |
---|---|
US (2) | US10992750B2 (ja) |
JP (1) | JP7233932B2 (ja) |
DE (1) | DE102019100406A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102019126897B4 (de) * | 2019-10-07 | 2021-10-28 | Infineon Technologies Ag | Datenverarbeitungsvorrichtung und verfahren zum verarbeiten eines interrupts |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007183951A (ja) * | 2005-12-30 | 2007-07-19 | Intel Corp | 仮想プロセッサへの直接的なインタラプトの送信 |
US20150286596A1 (en) * | 2014-04-08 | 2015-10-08 | Infineon Technologies Ag | Service request interrupt router with shared arbitration unit |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6487213B1 (en) * | 1998-01-05 | 2002-11-26 | Polytechnic University | Methods and apparatus for fairly arbitrating contention for an output port |
EP2339476B1 (en) * | 2009-12-07 | 2012-08-15 | STMicroelectronics (Research & Development) Limited | Interface connecting dies in an IC package |
US9436626B2 (en) * | 2012-08-09 | 2016-09-06 | Freescale Semiconductor, Inc. | Processor interrupt interface with interrupt partitioning and virtualization enhancements |
-
2018
- 2018-01-16 US US15/872,216 patent/US10992750B2/en active Active
-
2019
- 2019-01-09 DE DE102019100406.3A patent/DE102019100406A1/de active Pending
- 2019-01-15 JP JP2019004437A patent/JP7233932B2/ja active Active
-
2021
- 2021-04-19 US US17/233,894 patent/US20210243257A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007183951A (ja) * | 2005-12-30 | 2007-07-19 | Intel Corp | 仮想プロセッサへの直接的なインタラプトの送信 |
US20150286596A1 (en) * | 2014-04-08 | 2015-10-08 | Infineon Technologies Ag | Service request interrupt router with shared arbitration unit |
Also Published As
Publication number | Publication date |
---|---|
US20190222645A1 (en) | 2019-07-18 |
US20210243257A1 (en) | 2021-08-05 |
US10992750B2 (en) | 2021-04-27 |
JP7233932B2 (ja) | 2023-03-07 |
DE102019100406A1 (de) | 2019-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6571078B2 (ja) | メモリにアクセスするための並列処理装置、コンピュータにより実施される方法、システム、コンピュータ可読媒体 | |
US9442870B2 (en) | Interrupt priority management using partition-based priority blocking processor registers | |
US9690719B2 (en) | Mechanism for managing access to at least one shared integrated peripheral of a processing unit and a method of operating thereof | |
US7814496B2 (en) | Method and system for replicating schedules with regard to a host controller for virtualization | |
US8799908B2 (en) | Hardware-enabled lock mediation for controlling access to a contested resource | |
US11243795B2 (en) | CPU overcommit with guest idle polling | |
JP2008102921A (ja) | データ処理システム、ハイパートランスポート環境におけるi/oアダプタのlpar分離方法、およびプログラム記憶デバイス | |
JPH1097490A (ja) | スケーラブル対称型マルチプロセッサにおいてバス幅またはバス・プロトコルを変更せずに割り込みを分散する方法および装置 | |
JP4457047B2 (ja) | マルチプロセッサシステム | |
US10564995B2 (en) | Dynamic control of halt polling based on receiving a monitoring instruction executed by a guest | |
Cilku et al. | A TDMA-based arbitration scheme for mixed-criticality multicore platforms | |
WO2012023151A2 (en) | I/o virtualization and switching system | |
US10459747B2 (en) | Exitless timer access for virtual machines | |
JP7233932B2 (ja) | 仮想割り込みサービスプロバイダのためのサービス要求割り込みルータ | |
US9830195B2 (en) | Apparatus and method for controlling execution of processes in a parallel computing system | |
JPH08263312A (ja) | バス仲裁方法及びその装置 | |
US9092205B2 (en) | Non-interrupting performance tuning using runtime reset | |
US9575912B2 (en) | Service request interrupt router with shared arbitration unit | |
US9323702B2 (en) | Increasing coverage of delays through arbitration logic | |
JP5641128B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム | |
JP2010092101A (ja) | 情報処理装置 | |
US11914536B2 (en) | Device and method for sharing resource via bus | |
JP2013097544A (ja) | マルチプロセッサシステム、及びマルチプロセッサシステムの制御方法 | |
García Esteban | Isolation QoS Setups to Control Memory Contention on MPSoCs | |
JP2013073297A (ja) | 時分割方式による割り込み制御回路および割り込み制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210413 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220512 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220823 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20220825 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221116 |
|
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: 20230124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230222 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7233932 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |