JP2012507080A - コンピュータシステムにおける割り込み通信技術 - Google Patents
コンピュータシステムにおける割り込み通信技術 Download PDFInfo
- Publication number
- JP2012507080A JP2012507080A JP2011533324A JP2011533324A JP2012507080A JP 2012507080 A JP2012507080 A JP 2012507080A JP 2011533324 A JP2011533324 A JP 2011533324A JP 2011533324 A JP2011533324 A JP 2011533324A JP 2012507080 A JP2012507080 A JP 2012507080A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- icr
- legacy
- information
- apic
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
【選択図】図1
Description
Claims (21)
- 少なくとも第1のエージェントから少なくとも第2のエージェントへ割り込み情報を通信するロジックを備え、
前記ロジックは、メモリマップドI/O(MMIO)領域にアクセスすることなく、少なくとも1つの命令により操作される割り込み情報を通信する割り込み制御インタフェースを含む装置。 - 前記割り込み制御インタフェースは、少なくとも1つの未完了の割り込みを示すステータス情報を格納する割り込み制御レジスタ(ICR)を含む請求項1に記載の装置。
- 前記ICRはベクトルフィールドを含む請求項2に記載の装置。
- 前記ICRはモードフィールドを含む請求項3に記載の装置。
- 前記少なくとも1つの命令は、それぞれモデル専用レジスタ(MSR)に対する情報の読み出し処理または書き込み処理に対応する請求項1に記載の装置。
- 前記割り込み制御インタフェースは、拡張プログラム制御割り込みコントローラ(APIC)との間で割り込み情報の交換を行う請求項1に記載の装置。
- 前記割り込み制御インタフェースは、前記APICとの間のレガシー通信および前記APICとの間の非レガシー通信をサポートする請求項6に記載の装置。
- 前記APICは、各々が異なるエージェントに対応している複数のローカルAPICの1つである請求項7に記載の装置。
- メモリマップドI/O(MMIO)ストレージを利用することなく1以上のモデル専用レジスタ(MSR)を含む割り込み制御レジスタ(ICR)を介して割り込みを通信する段階を備え、
前記割り込みを通信する段階は、
第1の汎用レジスタに前記割り込みの対象アドレスを格納する段階と、
第2の汎用レジスタに割り込みモードおよびベクトル情報を格納する段階と、
第3の汎用レジスタにICRオフセットアドレスを格納する段階と、
前記ICRオフセットアドレスに対して前記対象アドレスと前記モードおよびベクトル情報とを書き込む命令を実行する段階とを有する方法。 - 前記割り込みをレガシー技術を利用して通信する場合、レガシーをサポートするプロトコルに従って前記割り込みを通信する段階をさらに備える請求項9に記載の方法。
- 前記レガシーをサポートするプロトコルは、前記ICR用のインタフェースが利用可能になるまで、ステータスビットをポーリングすることを含む請求項10に記載の方法。
- 前記レガシーをサポートするプロトコルはさらに、前記ステータスビットがディアサートされている間、キャッシュされていないMMIO読み出しを実行する請求項11に記載の方法。
- 前記レガシーをサポートするプロトコルはさらに、前記ベクトルおよびモード情報を前記ICR内の対応するフィールドに書き込んでレガシー割り込みの特徴を示すことを含む請求項12に記載の方法。
- 前記ICRの前記モードおよびベクトルのフィールドは、キャッシュされていないMMIO書き込み処理を利用して書き込まれる請求項13に記載の方法。
- 前記レガシーをサポートするプロトコルは、前記割り込みが前記ICRに対応する拡張プログラム制御割り込みコントローラ(APIC)を退出するまで、前記ICRの前記ステータスビットをポーリングすることを含む請求項14に記載の方法。
- 読み出し命令および書き込み命令を少なくとも1つずつ格納するメモリと、
複数の拡張プログラム制御割り込みコントローラ(APIC)を有する複数のプロセッサと
を備え、
前記複数のAPICの各々は、先ず前記メモリ内のメモリマップドI/O(MMIO)アドレス空間に対して割り込み情報を読み書きすることなく、前記読み出し命令および書き込み命令を利用して割り込み制御レジスタ(ICR)インタフェースを介して前記割り込み情報を通信するシステム。 - 前記ICRはベクトルフィールドを含む請求項16に記載のシステム。
- 前記ICRはモードフィールドを含む請求項17に記載のシステム。
- 前記読み出し命令および書き込み命令は、モデル専用レジスタ(MSR)に対する情報の読み出し処理または書き込み処理にそれぞれ対応する請求項18に記載のシステム。
- 前記割り込み制御インタフェースは、前記複数のAPICとの間のレガシー通信および前記複数のAPICとの間の非レガシー通信をサポートする請求項19に記載のシステム。
- 前記複数のAPICは異なるプロセッサに対応する請求項20に記載のシステム。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/290,208 US8103816B2 (en) | 2008-10-28 | 2008-10-28 | Technique for communicating interrupts in a computer system |
| US12/290,208 | 2008-10-28 | ||
| PCT/US2009/061641 WO2010062514A2 (en) | 2008-10-28 | 2009-10-22 | Technique for communicating interrupts in a computer system |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013178878A Division JP5749304B2 (ja) | 2008-10-28 | 2013-08-30 | 割り込み通信装置、方法、およびシステム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2012507080A true JP2012507080A (ja) | 2012-03-22 |
| JP5357972B2 JP5357972B2 (ja) | 2013-12-04 |
Family
ID=42118584
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2011533324A Expired - Fee Related JP5357972B2 (ja) | 2008-10-28 | 2009-10-22 | コンピュータシステムにおける割り込み通信技術 |
| JP2013178878A Expired - Fee Related JP5749304B2 (ja) | 2008-10-28 | 2013-08-30 | 割り込み通信装置、方法、およびシステム |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013178878A Expired - Fee Related JP5749304B2 (ja) | 2008-10-28 | 2013-08-30 | 割り込み通信装置、方法、およびシステム |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US8103816B2 (ja) |
| JP (2) | JP5357972B2 (ja) |
| CN (3) | CN101727414B (ja) |
| DE (1) | DE102009050983A1 (ja) |
| TW (1) | TWI434181B (ja) |
| WO (1) | WO2010062514A2 (ja) |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8255603B2 (en) * | 2009-08-14 | 2012-08-28 | Advanced Micro Devices, Inc. | User-level interrupt mechanism for multi-core architectures |
| JP5387776B2 (ja) * | 2010-07-27 | 2014-01-15 | 富士通株式会社 | 割込制御方法、マルチコアプロセッサシステム、および割込制御プログラム |
| US8782451B2 (en) | 2010-12-22 | 2014-07-15 | Via Technologies, Inc. | Power state synchronization in a multi-core processor |
| US8637212B2 (en) | 2010-12-22 | 2014-01-28 | Via Technologies, Inc. | Reticle set modification to produce multi-core dies |
| US8972707B2 (en) | 2010-12-22 | 2015-03-03 | Via Technologies, Inc. | Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin |
| US8631256B2 (en) | 2010-12-22 | 2014-01-14 | Via Technologies, Inc. | Distributed management of a shared power source to a multi-core microprocessor |
| US8930676B2 (en) | 2010-12-22 | 2015-01-06 | Via Technologies, Inc. | Master core discovering enabled cores in microprocessor comprising plural multi-core dies |
| US9460038B2 (en) * | 2010-12-22 | 2016-10-04 | Via Technologies, Inc. | Multi-core microprocessor internal bypass bus |
| US10019390B2 (en) * | 2012-03-30 | 2018-07-10 | Intel Corporation | Using memory cache for a race free interrupt scheme without the use of “read clear” registers |
| US9749413B2 (en) * | 2012-05-29 | 2017-08-29 | Intel Corporation | Peer-to-peer interrupt signaling between devices coupled via interconnects |
| US9697031B2 (en) | 2013-10-31 | 2017-07-04 | Huawei Technologies Co., Ltd. | Method for implementing inter-virtual processor interrupt by writing register data in a single write operation to a virtual register |
| CN103559087B (zh) * | 2013-10-31 | 2017-11-28 | 华为技术有限公司 | 一种虚拟处理器之间的中断的实现方法、相关装置和系统 |
| US9740644B2 (en) | 2014-09-26 | 2017-08-22 | Intel Corporation | Avoiding premature enabling of nonmaskable interrupts when returning from exceptions |
| US9747225B2 (en) | 2015-05-05 | 2017-08-29 | Microsoft Technology Licensing, Llc | Interrupt controller |
| CN107015931A (zh) * | 2016-01-27 | 2017-08-04 | 三星电子株式会社 | 用于中断处理的方法和加速器单元 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH06324996A (ja) * | 1993-04-19 | 1994-11-25 | Intel Corp | 集積回路およびプログラマブル・マルチ・プロセッサ割り込みコントローラ・システム |
| JPH09505922A (ja) * | 1994-09-19 | 1997-06-10 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | 多数のマイクロ制御器の演算を実行するマイクロ制御器システム |
| JP2001516089A (ja) * | 1997-08-18 | 2001-09-25 | インテル・コーポレーション | メモリ属性パレット |
| JP2007500898A (ja) * | 2003-07-31 | 2007-01-18 | インテル・コーポレーション | プロセッサ間割り込み |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5495615A (en) | 1990-12-21 | 1996-02-27 | Intel Corp | Multiprocessor interrupt controller with remote reading of interrupt control registers |
| US5987538A (en) * | 1997-08-15 | 1999-11-16 | Compaq Computer Corporation | Apparatus for initiating generation of an inter-processor interrupt by a peripheral device not directly connected to any of the multi-processor local interrupt controllers |
| US6418496B2 (en) * | 1997-12-10 | 2002-07-09 | Intel Corporation | System and apparatus including lowest priority logic to select a processor to receive an interrupt message |
| US6370606B1 (en) * | 1998-11-05 | 2002-04-09 | Compaq Computer Corporation | System and method for simulating hardware interrupts in a multiprocessor computer system |
| US6968412B1 (en) * | 1999-12-30 | 2005-11-22 | Intel Corporation | Method and apparatus for interrupt controller data re-direction |
| US7051137B2 (en) * | 2002-10-31 | 2006-05-23 | Intel Corporation | Event delivery |
| US7143223B2 (en) * | 2004-10-14 | 2006-11-28 | International Business Machines Corporation | Method, system and program product for emulating an interrupt architecture within a data processing system |
| US20060095624A1 (en) * | 2004-11-03 | 2006-05-04 | Ashok Raj | Retargeting device interrupt destinations |
| JP4182948B2 (ja) * | 2004-12-21 | 2008-11-19 | 日本電気株式会社 | フォールト・トレラント・コンピュータシステムと、そのための割り込み制御方法 |
| TW200708969A (en) * | 2005-08-24 | 2007-03-01 | Tyan Computer Corp | ID allocating method for advanced programmable interrupt controller |
| CN100543645C (zh) * | 2006-06-21 | 2009-09-23 | 国际商业机器公司 | 对中断等待影响最小的热调节控制方法、系统 |
| KR100824792B1 (ko) * | 2006-07-11 | 2008-04-24 | 삼성전자주식회사 | 커맨드 처리 장치와 방법 및 이를 포함하는 시스템 |
| US7769938B2 (en) * | 2007-09-06 | 2010-08-03 | Intel Corporation | Processor selection for an interrupt identifying a processor cluster |
| US7627706B2 (en) * | 2007-09-06 | 2009-12-01 | Intel Corporation | Creation of logical APIC ID with cluster ID and intra-cluster ID |
| US8312309B2 (en) * | 2008-03-05 | 2012-11-13 | Intel Corporation | Technique for promoting determinism among multiple clock domains |
-
2008
- 2008-10-28 US US12/290,208 patent/US8103816B2/en not_active Expired - Fee Related
-
2009
- 2009-10-22 JP JP2011533324A patent/JP5357972B2/ja not_active Expired - Fee Related
- 2009-10-22 WO PCT/US2009/061641 patent/WO2010062514A2/en not_active Ceased
- 2009-10-26 TW TW098136175A patent/TWI434181B/zh not_active IP Right Cessation
- 2009-10-28 CN CN200910207971.2A patent/CN101727414B/zh not_active Expired - Fee Related
- 2009-10-28 DE DE102009050983A patent/DE102009050983A1/de not_active Ceased
- 2009-10-28 CN CN201410225104.2A patent/CN104021109B/zh not_active Expired - Fee Related
- 2009-10-28 CN CN201310264335.XA patent/CN103399833B/zh not_active Expired - Fee Related
-
2012
- 2012-01-24 US US13/356,999 patent/US8312198B2/en not_active Expired - Fee Related
-
2013
- 2013-08-30 JP JP2013178878A patent/JP5749304B2/ja not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH06324996A (ja) * | 1993-04-19 | 1994-11-25 | Intel Corp | 集積回路およびプログラマブル・マルチ・プロセッサ割り込みコントローラ・システム |
| JPH09505922A (ja) * | 1994-09-19 | 1997-06-10 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | 多数のマイクロ制御器の演算を実行するマイクロ制御器システム |
| JP2001516089A (ja) * | 1997-08-18 | 2001-09-25 | インテル・コーポレーション | メモリ属性パレット |
| JP2007500898A (ja) * | 2003-07-31 | 2007-01-18 | インテル・コーポレーション | プロセッサ間割り込み |
Non-Patent Citations (1)
| Title |
|---|
| JPN6012049639; IntelR 64 Architecture x2APIC Specification Reference Number: 318148-001, 200709, i〜39ページ, Intel Corporation * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN101727414A (zh) | 2010-06-09 |
| TW201032055A (en) | 2010-09-01 |
| CN104021109B (zh) | 2017-11-07 |
| CN103399833B (zh) | 2017-07-04 |
| CN103399833A (zh) | 2013-11-20 |
| US8103816B2 (en) | 2012-01-24 |
| CN104021109A (zh) | 2014-09-03 |
| JP5749304B2 (ja) | 2015-07-15 |
| JP2014029702A (ja) | 2014-02-13 |
| WO2010062514A2 (en) | 2010-06-03 |
| US8312198B2 (en) | 2012-11-13 |
| US20100106875A1 (en) | 2010-04-29 |
| TWI434181B (zh) | 2014-04-11 |
| DE102009050983A1 (de) | 2010-06-02 |
| JP5357972B2 (ja) | 2013-12-04 |
| US20120124264A1 (en) | 2012-05-17 |
| CN101727414B (zh) | 2014-06-25 |
| WO2010062514A3 (en) | 2010-07-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5749304B2 (ja) | 割り込み通信装置、方法、およびシステム | |
| US9043521B2 (en) | Technique for communicating interrupts in a computer system | |
| JP5911985B2 (ja) | ローカル物理メモリとリモート物理メモリとの間で共有されるバーチャルメモリのためのハードウェアサポートの提供 | |
| US9383997B2 (en) | Apparatus, system, and method for persistent user-level thread | |
| KR101299286B1 (ko) | 이질적 리소스와의 명령어 세트 아키텍처-기반 시퀀서간 통신 | |
| JP7504092B2 (ja) | 仮想化コンピューティング環境での安全なメモリアクセス | |
| EP3654178B1 (en) | Mechanism for issuing requests to an accelerator from multiple threads | |
| JP2004506981A (ja) | マルチプロセッサにおけるセマフォおよびアトミック動作の管理のためのシステムおよび方法 | |
| US10296356B2 (en) | Implementation of reset functions in an SoC virtualized device | |
| KR20100053593A (ko) | 컴퓨터 시스템에서 다른 프로세서들에 대한 시스템 관리 인터럽트들을 방송하기 위한 메커니즘 | |
| US10817456B2 (en) | Separation of control and data plane functions in SoC virtualized I/O device | |
| CN103902767B (zh) | 基于QEMU和SystemC的多核仿真器 | |
| US9946665B2 (en) | Fetch less instruction processing (FLIP) computer architecture for central processing units (CPU) | |
| US10853303B2 (en) | Separation of control and data plane functions in SoC virtualized I/O device | |
| Bratt | HSA queueing. | |
| US20250004828A1 (en) | Hardware-based accelerator signaling | |
| CN118377576A (zh) | 一种控制智能穿戴设备工作模式的轻量级虚拟化操作系统 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120914 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120925 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20121219 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20121227 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130222 |
|
| 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: 20130702 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130731 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130806 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130830 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5357972 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| 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 |
|
| LAPS | Cancellation because of no payment of annual fees |