JPWO2009028007A1 - Pciデバイスのi/o空間要求抑止方法 - Google Patents
Pciデバイスのi/o空間要求抑止方法 Download PDFInfo
- Publication number
- JPWO2009028007A1 JPWO2009028007A1 JP2009529859A JP2009529859A JPWO2009028007A1 JP WO2009028007 A1 JPWO2009028007 A1 JP WO2009028007A1 JP 2009529859 A JP2009529859 A JP 2009529859A JP 2009529859 A JP2009529859 A JP 2009529859A JP WO2009028007 A1 JPWO2009028007 A1 JP WO2009028007A1
- Authority
- JP
- Japan
- Prior art keywords
- space
- pci
- configuration information
- pci device
- operating system
- 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
- 238000000034 method Methods 0.000 title claims description 33
- 230000001629 suppression Effects 0.000 title 1
- 230000008569 process Effects 0.000 claims description 20
- 230000010365 information processing Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 4
- 238000013468 resource allocation Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000009434 installation Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 2
- KNMAVSAGTYIFJF-UHFFFAOYSA-N 1-[2-[(2-hydroxy-3-phenoxypropyl)amino]ethylamino]-3-phenoxypropan-2-ol;dihydrochloride Chemical compound Cl.Cl.C=1C=CC=CC=1OCC(O)CNCCNCC(O)COC1=CC=CC=C1 KNMAVSAGTYIFJF-UHFFFAOYSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Images
Classifications
-
- 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/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
- G06F13/423—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with synchronous protocol
-
- 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/0024—Peripheral component interconnect [PCI]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
従来、1つのバス配下には最大32台までのPCIデバイスが接続可能な仕様となっている。しかし、近年、PCIデバイスの伝送速度が高速化に対応するために、PCIブリッジ配下に接続できるPCIデバイスの数が減少してきている。
例えば、オペレーティングシステムは、PCIデバイスに備わるPCI・コンフィグレーション・レジスタに格納されているI/O空間を要求するベース・アドレス・レジスタが存在するかどうかで、PCIデバイスがI/O空間の割り当てを要求しているかどうかを判断している。
その結果、割り当て可能なI/O空間が不足して新たなPCIデバイスに対してI/O空間を割り当てることができなくなった場合、エラー処理を行って当該PCIデバイスを使用できなくしてしまう以外に方法がなく、オペレーティングシステムにI/O空間を使用しないようにする特別な仕組みが必要となる。
しかし、例えば、Windows(登録商標)のインストール時には、上述のinfファイルがインストール用CD−ROM等に含まれていないため、infファイルを介してPCIデバイスがI/O空間を使用しないことをオペレーティングシステムに知らせることができない。
図1は、本発明の実施例に係る演算装置100の動作原理を説明する図である。
図1に示すように演算装置100は、PCIデバイス106−1、106−2、・・・の構成情報を取得する構成情報取得手段101と、各PCIデバイスが使用可能な空間を判別する使用可能空間判別手段102と、構成情報をオペレーティングシステムに通知する構成情報通知手段103と、を備える。
使用可能空間判別手段102は、構成情報取得手段101から構成情報の通知を受けると、当該構成情報を参照し、当該PCIデバイスがI/O空間とメモリ空間の両空間を使用可能なPCIデバイスか否かを判別する。そして、使用可能空間判別手段102は、当該判断結果を構成情報通知手段103に通知する。
図2に示すように演算装置100は、CPU201aおよび201bと、揮発性メモリ(例えば、RAM:Random Access Memory)で構成されるメモリ202と、ファームウェア等を格納する不揮発性メモリで構成されるROM(Read Only Memory)203と、PCIブリッジ1a〜34aと、その配下のPCIブリッジ1b〜64bと、その配下のPCIデバイスを実装するPCIスロット1〜128と、各構成要素間のデータの受け渡しを制御するチップセット204と、を備える。
CPU201aおよび201b(以下、両CPUを総じて「CPU201」という)は、ROM203からファームウェアを読み出し、CPU201またはチップセット204内に備わる図示しない記憶部に展開する。そして、当該ファームウェア(以下、「CPUファームウェア」という)を実行する。
図3に示すようにPCI・コンフィグレーション・レジスタ300は、ベンダID(0x00〜0x15)、デバイスID(0x16〜0x31)、ベース・アドレス・レジスタ(0x10〜0x27)を少なくとも備える。
ベース・アドレス・レジスタには、メモリ空間を示すベース・アドレス・レジスタ(32ビットまたは64ビット)や、I/O空間を示すベース・アドレス・レジスタ(32ビットまたは64ビット)が格納される。
図4に示すベース・アドレス・レジスタ401は、メモリ空間を示すベース・アドレス・レジスタである(32ビットの場合)。
ベース・アドレス・レジスタ402は、I/O空間インジケータ(ビット0)と、ベースアドレス(ビット2〜31)と、で構成されている。
図5は、本発明の実施例に係るPCIデバイスの構成例を示す図である。
ステップS601aにおいて、例えば、本実施例に係る演算装置100を実装する情報処理装置に電源が投入されると、演算装置100によって、図示しない外部記憶装置からオペレーティングシステム105が読出され実行可能な状態にメモリ202に展開されるOSブート処理が行なわれる。
ステップS604bにおいて、CPUファームウェアは、該当するベース・アドレス・レジスタの値を「0(All 0)」に変更する。そして、CPUファームウェアは、処理をステップS605bに移行する。
ステップS604aにおいて、オペレーティングシステム105は、CPUファームウェアからベース・アドレス・レジスタの通知を受けると、当該ベース・アドレス・レジスタのビット0を参照する。
ステップS605bにおいて、オペレーティングシステム105は、ステップS602a〜S604aのサーチ処理の結果にしたがって、各PCIデバイスに対して、I/O空間のリソース割り当て、または、メモリ空間のリソース割り当てを行なう(ステップS604aにおいて、I/O空間を要求していると判断したPCIデバイスに対しては、I/O空間のリソース割り当てを行ない、メモリ空間を要求していると判断したPCIデバイスに対しては、メモリ空間のリソース割り当てを行なう)。
(1)特定のベンダIDやデバイスIDをあらかじめ記憶装置等に登録しておき、ステップS601bで読み出したベンダIDまたはデバイスIDの一部または全部と一致した場合にステップS603bの処理を実行する。
図7は、説明を簡単にするために、図2に示した全てのPCIスロットに、図5で示したPCIデバイス500(すなわち、I/O空間とメモリ空間の両空間を使用可能なPCIデバイス)を実装した場合のI/O空間を示している。
ここで、図2には、64台のPCIブリッジが備わっている場合の構成例が示されている。各PCIブリッジ1〜64配下のPCIスロットに、図5で示したPCIデバイス500が実装されると、本実施例を適用しない場合、各PCIブリッジはI/O空間を要求することになる。
Claims (15)
- 複数のPCIデバイスと接続可能な演算装置であって、該演算装置上で動作するオペレーティングシステムにしたがって前記PCIデバイスに対してI/O空間またはメモリ空間を介して操作可能な演算装置において、
前記オペレーティングシステムからの要求に応じて、前記PCIデバイスが有する構成情報を記憶する構成情報記憶手段を参照し、該構成情報を取得する構成情報取得手段と、
該構成情報に応じて、前記PCIデバイスがI/O空間またはメモリ空間または、その両空間を使用可能なPCIデバイスか否かを判別する使用可能空間判別手段と、
前記構成情報を前記オペレーティングシステムに通知する手段であって、前記使用可能空間判別手段による判別の結果、前記PCIデバイスがメモリ空間のみ使用可能なPCIデバイスである旨の通知を行なう構成情報通知手段と、
を備える演算装置。 - 前記オペレーティングシステムは、前記構成情報通知手段からメモリ空間のみ使用可能なPCIデバイスである旨の通知を受けると、I/O空間の割り当ては行なわずにメモリ空間の割り当てのみを行なう、
ことを特徴とする請求項1に記載の演算装置。 - 前記構成情報には、PCI・コンフィグレーション・レジスタに格納されるベース・アドレス・レジスタが使用される、
ことを特徴とする請求項1に記載の演算装置。 - 前記構成情報取得手段への要求は、オペレーティングシステム起動時または起動直後に行われる、ことを特徴とする請求項1に記載の演算装置。
- 前記PCIデバイスとはPCIブリッジを介して接続可能である、ことを特徴とする請求項1に記載の演算装置。
- 複数のPCIデバイスを実装可能な情報処理装置であって、該情報処理装置が有する演算装置上で動作するオペレーティングシステムにしたがって前記PCIデバイスに対してI/O空間またはメモリ空間を介して操作可能な情報処理装置において、
前記オペレーティングシステムからの要求に応じて、前記PCIデバイスが有する構成情報を記憶する構成情報記憶手段を参照し、該構成情報を取得する構成情報取得手段と、
該構成情報に応じて、前記PCIデバイスがI/O空間またはメモリ空間または、その両空間を使用可能なPCIデバイスか否かを判別する使用可能空間判別手段と、
前記構成情報を前記オペレーティングシステムに通知する手段であって、前記使用可能空間判別手段による判別の結果、前記PCIデバイスがメモリ空間のみ使用可能なPCIデバイスである旨の通知を行なう構成情報通知手段と、
を備える情報処理装置。 - 前記構成情報取得手段、使用可能空間判別手段および構成情報取得手段は、前記演算装置に備わる、
ことを特徴とする請求項6に記載の情報処理装置。 - 前記オペレーティングシステムは、前記構成情報通知手段からメモリ空間のみ使用可能なPCIデバイスである旨の通知を受けると、I/O空間の割り当ては行なわずにメモリ空間の割り当てのみを行なう、
ことを特徴とする請求項6に記載の情報処理装置。 - 演算装置に接続可能な複数のPCIデバイスであって、演算装置上で動作するオペレーティングシステムからI/O空間またはメモリ空間のいずれの空間を用いても操作可能なPCIデバイス、によるI/O空間の要求を抑止する方法であって、
前記オペレーティングシステムからの要求に応じて、前記PCIデバイスが有する構成情報を記憶する構成情報記憶手段を参照し、該構成情報を取得する構成情報取得処理と、
該構成情報に応じて、前記PCIデバイスがI/O空間またはメモリ空間または、その両空間を使用可能なPCIデバイスか否かを判別する使用可能空間判別処理と、
前記構成情報を前記オペレーティングシステムに通知する処理であって、前記使用可能空間判別処理による判別の結果、前記PCIデバイスがメモリ空間のみ使用可能なPCIデバイスである旨の通知を行なう構成情報通知処理と、
を前記演算装置に行なわせる方法。 - 前記オペレーティングシステムは、前記構成情報通知手段からメモリ空間のみ使用可能なPCIデバイスである旨の通知を受けると、I/O空間の割り当ては行なわずにメモリ空間の割り当てのみを行なう、
ことを特徴とする請求項9に記載の方法。 - 前記構成情報通知処理は、所定のPCIデバイスを識別する識別情報を記憶する識別情報記憶手段にあらかじめ登録された第1の識別情報と、前記構成情報に登録された第2の識別情報と、を比較し、該比較結果が一致する場合に、前記PCIデバイスがメモリ空間のみ使用可能なPCIデバイスである旨の通知を行なう、
ことを特徴とする請求項9に記載の方法。 - 前記識別情報には、ベンダIDまたはデバイスIDの少なくとも一方が含まれる、ことを特徴とする請求項11に記載の方法。
- 前記構成情報通知処理は、前記PCIデバイスの上位に接続されたPCIブリッジに対するI/O空間を参照し、該I/O空間に対してPCIデバイスの割り当てがない場合に、前記PCIデバイスがメモリ空間のみ使用可能なPCIデバイスである旨の通知を行なう、
ことを特徴とする請求項9に記載の方法。 - 前記構成情報通知処理は、前記PCIデバイスの上位に接続されたPCIブリッジに対するI/O空間を参照し、該I/O空間に対してPCIデバイスに割り当てる空間が不足している場合に、前記PCIデバイスがメモリ空間のみ使用可能なPCIデバイスである旨の通知を行なう、
ことを特徴とする請求項9に記載の方法。 - 前記構成情報通知処理は、前記PCIデバイスに、I/O空間を要求するベース・アドレス・レジスタと、メモリ空間を要求するベース・アドレス・レジスタと、が備わる場合に、前記PCIデバイスがメモリ空間のみ使用可能なPCIデバイスである旨の通知を行なう、
ことを特徴とする請求項9に記載の方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2007/000908 WO2009028007A1 (ja) | 2007-08-24 | 2007-08-24 | Pciデバイスのi/o空間要求抑止方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2009028007A1 true JPWO2009028007A1 (ja) | 2010-11-25 |
JP5195756B2 JP5195756B2 (ja) | 2013-05-15 |
Family
ID=40386753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009529859A Active JP5195756B2 (ja) | 2007-08-24 | 2007-08-24 | Pciデバイスのi/o空間要求抑止方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7886095B2 (ja) |
EP (1) | EP2182444A4 (ja) |
JP (1) | JP5195756B2 (ja) |
KR (1) | KR101172956B1 (ja) |
CN (1) | CN101779196B (ja) |
WO (1) | WO2009028007A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7862640B2 (en) | 2006-03-21 | 2011-01-04 | Donaldson Company, Inc. | Low temperature diesel particulate matter reduction system |
US8166207B2 (en) | 2008-09-29 | 2012-04-24 | Intel Corporation | Querying a device for information |
JP4692912B2 (ja) * | 2009-03-18 | 2011-06-01 | 日本電気株式会社 | リソース割り当てシステム、及びリソース割り当て方法 |
JP2013114367A (ja) * | 2011-11-28 | 2013-06-10 | Junko Suginaka | ファイル通信処理方法及び外部デバイス |
US8984174B2 (en) * | 2011-12-06 | 2015-03-17 | Qualcomm Incorporated | Method and a portable computing device (PCD) for exposing a peripheral component interface express (PCIE) coupled device to an operating system operable on the PCD |
KR102255216B1 (ko) * | 2014-11-20 | 2021-05-24 | 삼성전자주식회사 | Pci 장치와 이를 포함하는 pci 시스템 |
CN113194161B (zh) * | 2021-04-26 | 2022-07-08 | 山东英信计算机技术有限公司 | 一种服务器系统mmioh基地址的设置方法、装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4188665A (en) * | 1977-11-29 | 1980-02-12 | International Business Machines Corporation | Programmable communications subsystem |
US5682551A (en) * | 1993-03-02 | 1997-10-28 | Digital Equipment Corporation | System for checking the acceptance of I/O request to an interface using software visible instruction which provides a status signal and performs operations in response thereto |
US5613162A (en) * | 1995-01-04 | 1997-03-18 | Ast Research, Inc. | Method and apparatus for performing efficient direct memory access data transfers |
US6418492B1 (en) * | 1997-05-13 | 2002-07-09 | Micron Electronics | Method for computer implemented hot-swap and hot-add |
US6243773B1 (en) * | 1997-05-13 | 2001-06-05 | Micron Electronics, Inc. | Configuration management system for hot adding and hot replacing devices |
JPH11288400A (ja) | 1998-04-03 | 1999-10-19 | Nec Shizuoka Ltd | Pciブリッジデバイス |
JP2001229117A (ja) * | 2000-02-15 | 2001-08-24 | Internatl Business Mach Corp <Ibm> | 拡張ユニットの制御方法、コンピュータ、記録媒体及び伝送媒体 |
JP2001256179A (ja) * | 2000-03-14 | 2001-09-21 | Sharp Corp | プロセッサシステム |
JP2002032324A (ja) | 2000-07-17 | 2002-01-31 | Hitachi Ltd | Pciバスデバイス接続制御方式 |
US6536014B1 (en) * | 2001-09-26 | 2003-03-18 | International Business Machines Corporation | Reusable configuration tool |
US7155379B2 (en) * | 2003-02-25 | 2006-12-26 | Microsoft Corporation | Simulation of a PCI device's memory-mapped I/O registers |
CN100432967C (zh) * | 2005-06-15 | 2008-11-12 | 杭州华三通信技术有限公司 | Pci设备之间进行通信的方法、设备以及计算机系统 |
US7376782B2 (en) * | 2005-06-29 | 2008-05-20 | Intel Corporation | Index/data register pair for indirect register access |
-
2007
- 2007-08-24 WO PCT/JP2007/000908 patent/WO2009028007A1/ja active Application Filing
- 2007-08-24 JP JP2009529859A patent/JP5195756B2/ja active Active
- 2007-08-24 CN CN2007801002799A patent/CN101779196B/zh not_active Expired - Fee Related
- 2007-08-24 KR KR1020107003032A patent/KR101172956B1/ko active IP Right Grant
- 2007-08-24 EP EP07790392A patent/EP2182444A4/en not_active Ceased
-
2010
- 2010-01-21 US US12/691,048 patent/US7886095B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20100122009A1 (en) | 2010-05-13 |
CN101779196A (zh) | 2010-07-14 |
JP5195756B2 (ja) | 2013-05-15 |
EP2182444A4 (en) | 2011-04-27 |
KR20100031772A (ko) | 2010-03-24 |
CN101779196B (zh) | 2012-08-22 |
WO2009028007A1 (ja) | 2009-03-05 |
EP2182444A1 (en) | 2010-05-05 |
US7886095B2 (en) | 2011-02-08 |
KR101172956B1 (ko) | 2012-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9875208B2 (en) | Method to use PCIe device resources by using unmodified PCIe device drivers on CPUs in a PCIe fabric with commodity PCI switches | |
JP5195756B2 (ja) | Pciデバイスのi/o空間要求抑止方法 | |
US7689755B2 (en) | Apparatus and method for sharing devices between multiple execution domains of a hardware platform | |
JP5210730B2 (ja) | 仮想マシンモニタ及びマルチプロセッサシステム | |
US7526578B2 (en) | Option ROM characterization | |
US7941803B2 (en) | Controlling an operational mode for a logical partition on a computing system | |
JP5305848B2 (ja) | データ処理システム内で入出力(i/o)仮想化を管理するための方法およびデータ処理システムならびにコンピュータ・プログラム | |
US8386679B2 (en) | Dynamic allocation of a direct memory address window | |
US9531668B2 (en) | Micro server, method of allocating MAC address, and computer readable recording medium | |
US7873754B2 (en) | Structure for option ROM characterization | |
US9423958B2 (en) | System and method for managing expansion read-only memory and management host thereof | |
US8527666B2 (en) | Accessing a configuration space of a virtual function | |
JP2009110518A (ja) | 仮想マシンデバイスの動的割り当て | |
JP2009070368A (ja) | PCIe−CardBusコントローラを動的に再構成するための方法及び装置 | |
JP2008021252A (ja) | 計算機システム及びアドレス割当方法 | |
US10838861B1 (en) | Distribution of memory address resources to bus devices in a multi-processor computing system | |
JP4692912B2 (ja) | リソース割り当てシステム、及びリソース割り当て方法 | |
US8813075B2 (en) | Virtual computer system and method of installing virtual computer system | |
JP2011221634A (ja) | 計算機システム、論理区画管理方法及び論理分割処理プログラム | |
JP2013182461A (ja) | 情報処理装置および情報処理装置におけるリソースの制御方法、並びにコンピュータ・プログラム | |
JP2008071042A (ja) | コンピュータシステムおよびそのi/o空間リソース割り当て方法 | |
KR20230142095A (ko) | 인터페이스 디바이스 및 그 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110920 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120515 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120711 |
|
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: 20130108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130121 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160215 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5195756 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |