JP2007241526A - Information processor, information processing system and initialization method - Google Patents

Information processor, information processing system and initialization method Download PDF

Info

Publication number
JP2007241526A
JP2007241526A JP2006061124A JP2006061124A JP2007241526A JP 2007241526 A JP2007241526 A JP 2007241526A JP 2006061124 A JP2006061124 A JP 2006061124A JP 2006061124 A JP2006061124 A JP 2006061124A JP 2007241526 A JP2007241526 A JP 2007241526A
Authority
JP
Japan
Prior art keywords
bridge
pci
processor system
peripheral device
processor
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
Application number
JP2006061124A
Other languages
Japanese (ja)
Other versions
JP4799222B2 (en
Inventor
Hideyuki Saito
英幸 斎藤
Takeshi Yamazaki
剛 山崎
Yuji Takahashi
祐治 高橋
Hideki Mitsuhayashi
秀樹 三林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Sony Corp
Original Assignee
Sony Corp
Sony Computer Entertainment Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp, Sony Computer Entertainment Inc filed Critical Sony Corp
Priority to JP2006061124A priority Critical patent/JP4799222B2/en
Publication of JP2007241526A publication Critical patent/JP2007241526A/en
Application granted granted Critical
Publication of JP4799222B2 publication Critical patent/JP4799222B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)
  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an information processor, an information processing system and an initialization method, for booting a system at high speed. <P>SOLUTION: In this information processing system, a processor system 10 and various kinds of peripheral devices such as a PCI (Peripheral Component Interconnect) memory device 220a or a PCI device 220b are connected through a bridge 100. The bridge 100 bridges between a host bus 40 of the processor system 10 and PCI buses 50 of the peripheral devices to interconnect the processor system 10 and the peripheral devices. A system controller 20 initializes the peripheral devices connected to the bridge 100 during initialization of the host bus 40 between the processor system 10 and the bridge 100. The processor system 10 reads a boot code from a boot ROM 212 of the PCI memory device 220a whose initialization by the system controller 20 is completed, and boots. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

この発明は、プロセッサシステムがブリッジを介して周辺デバイスと接続可能な情報処理装置および情報処理システム、ならびに初期化方法に関する。   The present invention relates to an information processing apparatus, an information processing system, and an initialization method in which a processor system can be connected to a peripheral device via a bridge.

パーソナルコンピュータやサーバには、PCI(Peripheral Component Interconnect)バスを介して各種の周辺デバイスが接続され、情報処理システムが構成される。プロセッサの入出力バスと、周辺デバイスの入出力バスであるPCIバスとは規格が異なるため、通常、ブリッジを介してプロセッサと周辺デバイスとが接続される。   Various peripheral devices are connected to a personal computer or server via a PCI (Peripheral Component Interconnect) bus to constitute an information processing system. Since the input / output bus of the processor and the PCI bus that is the input / output bus of the peripheral device have different standards, the processor and the peripheral device are usually connected via a bridge.

情報処理システムの機能拡張や性能強化を図るために、グラフィックプロセッサや高速なメモリデバイスをPCIデバイスとして接続することがあり、より多くの周辺デバイスをPCIバスで接続できるようにすることが要請されている。そのため、ブリッジの先にPCIスイッチを多段接続して、PCIデバイスのネットワークを構成することもある。   In order to expand the functions and enhance the performance of information processing systems, graphic processors and high-speed memory devices are sometimes connected as PCI devices, and more peripheral devices are required to be connected via the PCI bus. Yes. Therefore, a PCI device network may be configured by connecting multiple stages of PCI switches at the end of the bridge.

情報処理システムの電源を常時オンにせずに使用時にだけ電源を投入して利用する場合、ブートコードをフラッシュメモリなどからロードしてシステムを起動するのが普通である。フラッシュメモリからのブートコードの読み込みには時間がかかり、システムの起動が遅くなるという問題があった。   When the information processing system is turned on and used only at the time of use without always turning on the power, the system is usually started by loading a boot code from a flash memory or the like. Reading the boot code from the flash memory took time, and there was a problem that the system startup slowed down.

本発明はこうした課題に鑑みてなされたものであり、その目的は、システムの起動を高速化することのできる情報処理装置および情報処理システム、ならびに初期化方法を提供することにある。   The present invention has been made in view of these problems, and an object of the present invention is to provide an information processing apparatus and information processing system capable of speeding up the startup of the system, and an initialization method.

上記課題を解決するために、本発明のある態様の初期化方法は、プロセッサシステムと周辺デバイスとがブリッジにより相互に接続された情報処理システムの初期化方法であって、前記情報処理システムの外部に接続されたシステムコントローラが前記プロセッサシステムと前記ブリッジの双方の制御レジスタにアクセスして前記プロセッサシステムと前記ブリッジの間の入出力インタフェースを初期化する間に、前記システムコントローラが前記ブリッジに接続された前記周辺デバイスを初期化する。   In order to solve the above-described problem, an initialization method according to an aspect of the present invention is an initialization method for an information processing system in which a processor system and peripheral devices are connected to each other by a bridge, and is external to the information processing system. The system controller is connected to the bridge while the system controller connected to the processor accesses the control registers of both the processor system and the bridge to initialize the input / output interface between the processor system and the bridge. The peripheral device is initialized.

この態様によると、プロセッサシステムとブリッジの間の入出力インタフェースを初期化する間に、並行してブリッジに接続された周辺デバイスを初期化するため、情報処理システムの初期化に要する時間を短縮することができる。   According to this aspect, since the peripheral devices connected to the bridge are initialized in parallel while the input / output interface between the processor system and the bridge is initialized, the time required for the initialization of the information processing system is shortened. be able to.

前記プロセッサシステムが、前記ブリッジを介して、前記システムコントローラによる初期化が完了した前記周辺デバイスからブートコードを読み込んで起動するステップをさらに含んでもよい。これによれば、プロセッサシステムは、ブリッジを介して、既に初期化が完了した周辺デバイスからブートコードを読み込むため、ブリッジを介した周辺デバイスへのパスの初期化をスキップして、ブートコードのロードを直ちに開始することができ、システムが早く起動する。また、高速な周辺デバイスを利用することにより、フラッシュメモリなどからブートコードを読み込むよりも高速にブートコードの読み取りが可能である。   The processor system may further include a step of reading and starting a boot code from the peripheral device that has been initialized by the system controller via the bridge. According to this, since the processor system reads the boot code from the peripheral device that has already been initialized via the bridge, it skips initialization of the path to the peripheral device via the bridge and loads the boot code. Can be started immediately and the system starts up quickly. Further, by using a high-speed peripheral device, it is possible to read the boot code at a higher speed than reading the boot code from a flash memory or the like.

前記システムコントローラが前記周辺デバイスを初期化したときに得られる前記周辺デバイスの初期化情報を、前記システムコントローラと前記プロセッサシステムの双方がアクセス可能な前記ブリッジ内に設けられた共有メモリに書き込むステップと、前記プロセッサシステムが自らは前記周辺デバイスの初期化を行うことなく、前記周辺デバイスの初期化情報を前記共有メモリから取得するステップとを含んでもよい。これによれば、プロセッサシステムは自ら周辺デバイスを初期化しなくても、周辺デバイスの初期化情報を得ることができ、システムの起動後直ちに、周辺デバイスに対応したドライバにより周辺デバイスにアクセスすることができる。   Writing initialization information of the peripheral device obtained when the system controller initializes the peripheral device into a shared memory provided in the bridge accessible by both the system controller and the processor system; The processor system may include the step of acquiring initialization information of the peripheral device from the shared memory without performing initialization of the peripheral device. According to this, the processor system can obtain the initialization information of the peripheral device without initializing the peripheral device itself, and can access the peripheral device by the driver corresponding to the peripheral device immediately after starting the system. it can.

本発明の別の態様は、情報処理システムである。この情報処理システムは、プロセッサシステムと、前記プロセッサシステムとデータをやりとりする周辺デバイスと、前記プロセッサシステムの入出力バスと前記周辺デバイスの入出力バスを相互接続するブリッジとを含む。前記プロセッサシステムと前記ブリッジの双方にアクセス可能なシステムコントローラにより、前記プロセッサシステムと前記ブリッジの双方の制御レジスタがアクセスされて前記プロセッサシステムと前記ブリッジの間の入出力インタフェースが初期化される間に、前記ブリッジに接続された前記周辺デバイスが前記システムコントローラにより初期化される。   Another aspect of the present invention is an information processing system. The information processing system includes a processor system, a peripheral device that exchanges data with the processor system, and an input / output bus of the processor system and a bridge that interconnects the input / output bus of the peripheral device. A system controller that can access both the processor system and the bridge while the control registers of both the processor system and the bridge are accessed and the input / output interface between the processor system and the bridge is initialized. The peripheral device connected to the bridge is initialized by the system controller.

本発明のさらに別の態様は、情報処理装置である。この装置は、プロセッサシステムと、前記プロセッサシステムの入出力バスと周辺デバイスの入出力バスを相互接続するブリッジとを含む。前記プロセッサシステムと前記ブリッジの双方にアクセス可能なシステムコントローラにより、前記プロセッサシステムと前記ブリッジの双方の制御レジスタがアクセスされて前記プロセッサシステムと前記ブリッジの間の入出力インタフェースが初期化される間に、前記ブリッジに接続された周辺デバイスが前記システムコントローラにより初期化される。   Yet another embodiment of the present invention is an information processing apparatus. The apparatus includes a processor system and a bridge interconnecting the input / output bus of the processor system and the input / output bus of a peripheral device. A system controller that can access both the processor system and the bridge while the control registers of both the processor system and the bridge are accessed and the input / output interface between the processor system and the bridge is initialized. , Peripheral devices connected to the bridge are initialized by the system controller.

なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。   It should be noted that any combination of the above-described constituent elements and the expression of the present invention converted between a method, an apparatus, a system, a computer program, a data structure, a recording medium, etc. are also effective as an aspect of the present invention.

本発明によれば、システムの起動を高速化することができる。   According to the present invention, the start-up of the system can be speeded up.

図1は、実施の形態に係る情報処理システムの構成図である。情報処理システムは、プロセッサシステム10と各種の周辺(ペリフェラル)デバイスとがブリッジ100を介して接続されて構成される。   FIG. 1 is a configuration diagram of an information processing system according to an embodiment. The information processing system is configured by connecting a processor system 10 and various peripheral devices (peripherals) via a bridge 100.

プロセッサシステム10は、メインプロセッサ、メモリ、入出力インタフェースなどを含むホストシステムである。プロセッサシステム10は、一例として複数のプロセッサを含むマルチプロセッサシステムであってもよい。   The processor system 10 is a host system including a main processor, a memory, an input / output interface, and the like. As an example, the processor system 10 may be a multiprocessor system including a plurality of processors.

ブリッジ100は、プロセッサシステム10のホストバス40と、各種周辺デバイスの入出力バスとを「橋渡し」することで、プロセッサシステム10と各種周辺デバイスとを相互接続する。プロセッサシステム10のホストバス40と、周辺デバイスの入出力バスとは、バスの規格が異なるため、ブリッジ100は、2つのバスの間でプロトコルの変換を行い、プロセッサシステム10と周辺デバイスとがやりとりするデータのフォーマットを各バスの仕様に合わせる。   The bridge 100 interconnects the processor system 10 and various peripheral devices by “bridging” the host bus 40 of the processor system 10 and the input / output buses of various peripheral devices. Since the host bus 40 of the processor system 10 and the input / output bus of the peripheral device have different bus standards, the bridge 100 converts the protocol between the two buses, and the processor system 10 and the peripheral device exchange data. Match the data format to the specifications of each bus.

ここでは、周辺デバイスの接続インタフェースとして、PCIバスを用いる。ここで、PCIバスは、PCI、PCI−X、PCI Express(商標または登録商標)のいずれの仕様によるものでもよい。PCIバスで接続された周辺デバイスを以下、「PCIデバイス」という。   Here, a PCI bus is used as a connection interface for peripheral devices. Here, the PCI bus may be based on any specification of PCI, PCI-X, and PCI Express (trademark or registered trademark). The peripheral devices connected by the PCI bus are hereinafter referred to as “PCI devices”.

ブリッジ100の上流ポートにはプロセッサシステム10がホストバス40経由でつながれるが、ブリッジ100の下流ポートにはPCIデバイスが直接つながれてもよく、下流ポートにPCIスイッチがつながれて、PCIスイッチの先にPCIデバイスが接続されてもよい。ここで、PCIスイッチは、各ポートにPCIデバイスを接続してネットワークを構成し、接続されたPCIデバイス間でやりとりされるPCIパケットの経路制御を行うものである。   The processor system 10 is connected to the upstream port of the bridge 100 via the host bus 40. However, a PCI device may be directly connected to the downstream port of the bridge 100. A PCI switch is connected to the downstream port, and the PCI switch is connected to the upstream side of the PCI switch. A PCI device may be connected. Here, the PCI switch configures a network by connecting PCI devices to each port, and performs path control of PCI packets exchanged between the connected PCI devices.

PCIスイッチをカスケード接続して、多段のPCIスイッチからなるネットワークを構成してもよい。このようにPCIスイッチを多段接続し、その末端にPCIデバイスを接続すると、ブリッジ100をルート(根)とし、リーフ(葉)にはPCIデバイスが接続されたPCIデバイスのツリー(木)構造が形成される。以下、このPCIデバイスのツリー構造を「PCIデバイスツリー」という。   A network composed of multi-stage PCI switches may be configured by cascading PCI switches. In this way, when PCI switches are connected in multiple stages and a PCI device is connected to the end, a bridge (tree) is used as the root, and a leaf (leaf) of the PCI device to which the PCI device is connected is formed. Is done. Hereinafter, the tree structure of the PCI device is referred to as “PCI device tree”.

図1には、PCIデバイスツリーの一例が示されている。ブリッジ100の第1の下流ポートには、PCIバス50を介して第1段目のPCIスイッチ200aが接続され、第2の下流ポートには、PCIバス50を介して第1のPCIデバイス220aが接続されている。さらに第1段目のPCIスイッチ200aの第1の下流ポートには、PCIバス50を介して第2のPCIデバイス220bが接続され、第2の下流ポートには、PCIバス50を介して第2段目のPCIスイッチ200bが接続されている。第2段目のPCIスイッチ200bの下流ポートにはさらにPCIデバイスまたはPCIスイッチが接続される。以下、PCIデバイス220a、220bなどを総称するときは、PCIデバイス220という。   FIG. 1 shows an example of a PCI device tree. A first-stage PCI switch 200a is connected to the first downstream port of the bridge 100 via the PCI bus 50, and a first PCI device 220a is connected to the second downstream port via the PCI bus 50. It is connected. Further, the second PCI device 220b is connected to the first downstream port of the first-stage PCI switch 200a via the PCI bus 50, and the second downstream port is connected to the second downstream port via the PCI bus 50. A stage PCI switch 200b is connected. A PCI device or a PCI switch is further connected to the downstream port of the second-stage PCI switch 200b. Hereinafter, the PCI devices 220a and 220b are collectively referred to as the PCI device 220.

図1のPCIデバイスツリーにおいて、第1のPCIデバイス220aはメモリデバイスであり、以下、「PCIメモリデバイス220a」と呼ぶ。PCIメモリデバイス220aは高速な記憶デバイスであり、ブートROM212が接続されている。ブートROM212には、電源投入時にプロセッサシステム10を起動させるためのブートコードが記憶されている。   In the PCI device tree of FIG. 1, the first PCI device 220a is a memory device, and is hereinafter referred to as “PCI memory device 220a”. The PCI memory device 220a is a high-speed storage device to which a boot ROM 212 is connected. The boot ROM 212 stores a boot code for starting the processor system 10 when the power is turned on.

システムコントローラ20は、当該情報処理システムの電源投入やシステム初期化などを制御するマイクロコンピュータであり、プロセッサシステム10とブリッジ100にSPI(Serial Peripheral Interface)30で接続されている。システムコントローラ20は、当該情報処理システムの電源がオフの状態でも非常に低い消費電力で常時稼働している。   The system controller 20 is a microcomputer that controls power-on and system initialization of the information processing system, and is connected to the processor system 10 and the bridge 100 via an SPI (Serial Peripheral Interface) 30. The system controller 20 is always operating with very low power consumption even when the information processing system is powered off.

システムコントローラ20には、各種のPCIデバイスのドライバの一部が実装されており、システムコントローラ20は、ブリッジ100の下流にある複数のPCIデバイス220の初期化を行うことができる。   A part of drivers of various PCI devices are mounted on the system controller 20, and the system controller 20 can initialize a plurality of PCI devices 220 downstream of the bridge 100.

プロセッサシステム10のブートコードは、ブリッジ100の先に接続されたPCIメモリデバイス220aのブートROM212に格納されているため、システムコントローラ20は、プロセッサシステム10がブートROM212からブートコードをロードできるように、PCIメモリデバイス220aへのデータパスをあらかじめ初期化しておく。   Since the boot code of the processor system 10 is stored in the boot ROM 212 of the PCI memory device 220a connected to the end of the bridge 100, the system controller 20 enables the processor system 10 to load the boot code from the boot ROM 212. The data path to the PCI memory device 220a is initialized in advance.

当該情報処理システムの電源投入後、システムコントローラ20は、プロセッサシステム10とブリッジ100の制御レジスタにアクセスし、ホストバス40を初期化する。   After powering on the information processing system, the system controller 20 accesses the control registers of the processor system 10 and the bridge 100 to initialize the host bus 40.

ホストバス40の初期化には、特定の信号パターンをバスに流すことによるキャリブレーションが必要であるため、一定の時間を要する。そこで、システムコントローラ20は、ホストバス40の初期化が行われている間に、同時にブリッジ100内部の初期化と、ブリッジ100の下流に接続されたPCIデバイス220の初期化を行う。   Initialization of the host bus 40 requires a certain time because calibration by flowing a specific signal pattern to the bus is necessary. Therefore, the system controller 20 simultaneously initializes the inside of the bridge 100 and the PCI device 220 connected downstream of the bridge 100 while the host bus 40 is being initialized.

バスのキャリブレーションとは、高速信号をパラレル伝送する際、各ピンのスキューを少しずつずらしてスキューが最小となるポイントを探し、送信側で各ピンのタイミングを調整することである。ここで、各ピン間に生じるスキューとは、ピン毎に、コントローラとDRAMチップ間の伝送においてタイミングに違いが生じる現象のことである。   The bus calibration is to adjust the timing of each pin on the transmitting side by searching for a point where the skew is minimized by shifting the skew of each pin little by little when transmitting a high-speed signal in parallel. Here, the skew generated between the pins is a phenomenon in which a timing is different in transmission between the controller and the DRAM chip for each pin.

システムコントローラ20は、ブリッジ100の下流に接続された複数のPCIデバイス220の中から特定のPCIメモリデバイス220aを見つけ、そのPCIメモリデバイス220aを初期化することで、プロセッサシステム10を起動するためのブートコードが格納されているアドレス(以下、「ブートアドレス」という)を取得し、そのアドレスをプロセッサシステム10に与える。   The system controller 20 finds a specific PCI memory device 220a from among a plurality of PCI devices 220 connected downstream of the bridge 100, and initializes the PCI memory device 220a to start the processor system 10. An address at which the boot code is stored (hereinafter referred to as “boot address”) is acquired, and the address is given to the processor system 10.

プロセッサシステム10は、ホストバス40の初期化が終わると、ブリッジ100を介してPCIメモリデバイス220aにアクセスし、システムコントローラ20から通知されたブートアドレスからブートコードを読み出す。   When the initialization of the host bus 40 is completed, the processor system 10 accesses the PCI memory device 220a via the bridge 100, and reads the boot code from the boot address notified from the system controller 20.

ブリッジ100は、システムコントローラ20とプロセッサシステム10の双方からアクセス可能なメモリ領域として共有メモリ110をもち、システムコントローラ20とプロセッサシステム10は、共有メモリ110を利用してデータをやりとりすることができる。   The bridge 100 has a shared memory 110 as a memory area accessible from both the system controller 20 and the processor system 10, and the system controller 20 and the processor system 10 can exchange data using the shared memory 110.

システムコントローラ20は、PCIデバイスツリーを初期化した際に取得したコンフィグレーションレジスタの内容などのPCIデバイスの初期化情報をブリッジ100の共有メモリ110に書き込む。ブートが完了したプロセッサシステム10上で動作するPCIドライバは、ブリッジ100の共有メモリ110からPCIデバイスの初期化情報を読み取る。   The system controller 20 writes the initialization information of the PCI device such as the contents of the configuration register acquired when the PCI device tree is initialized into the shared memory 110 of the bridge 100. The PCI driver operating on the processor system 10 that has been booted reads the initialization information of the PCI device from the shared memory 110 of the bridge 100.

ここで、共有メモリ110に記憶されるPCIデバイスの初期化情報は、PCIの仕様で定められているコンフィグレーションレジスタの内容であり、具体的には、PCIメモリ空間のベースアドレス、デバイスID、ベンダID、クラス、バス番号などである。   Here, the initialization information of the PCI device stored in the shared memory 110 is the contents of the configuration register defined by the PCI specification. Specifically, the PCI memory space base address, device ID, vendor ID, class, bus number, etc.

システムコントローラ20がPCIデバイスツリーを初期化しているため、プロセッサシステム10上のPCIドライバは、自らはPCIデバイスツリーを初期化する必要がなく、システムコントローラ20からPCIデバイスの初期化情報を取得することができる。プロセッサシステム10上のPCIドライバは、必要に応じてアドレスマップの再構築を行う。また、プロセッサシステム10は、個々のPCIデバイスに対応するデバイスドライバにより、個々のPCIデバイスに特有の初期設定などの追加処理を行う。   Since the system controller 20 initializes the PCI device tree, the PCI driver on the processor system 10 does not need to initialize the PCI device tree itself, and acquires initialization information of the PCI device from the system controller 20. Can do. The PCI driver on the processor system 10 reconstructs the address map as necessary. Further, the processor system 10 performs an additional process such as initial setting specific to each PCI device by a device driver corresponding to each PCI device.

図2は、ブリッジ100の機能構成図である。同図は機能に着目したブロック図を描いており、これらの機能ブロックはハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現することができる。   FIG. 2 is a functional configuration diagram of the bridge 100. This figure depicts a block diagram focusing on functions, and these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.

ブリッジ100は、上流のホストバス40と下流のPCIバス50a〜50dを橋渡してパケットを転送するために、ホストバスとPCIバス間のプロトコル変換とパケットの経路制御を行う。   The bridge 100 performs protocol conversion and packet path control between the host bus and the PCI bus in order to transfer the packet across the upstream host bus 40 and the downstream PCI buses 50a to 50d.

ブリッジ100は、プロセッサシステム10からホストバス40経由で入力されたパケットをルーティングして、PCIバス50a〜50d(総称するときはPCIバス50という)経由でPCIスイッチ200/PCIデバイス220へ転送する。また、ブリッジ100は、PCIスイッチ200/PCIデバイス220からPCIバス50経由で入力されたパケットをルーティングして、ホストバス40経由でプロセッサシステム10へ転送するか、あるいは、PCIバス50経由で他のPCIスイッチ200/PCIデバイス220へ転送する。   The bridge 100 routes packets input from the processor system 10 via the host bus 40 and transfers the packets to the PCI switch 200 / PCI device 220 via the PCI buses 50a to 50d (collectively referred to as the PCI bus 50). The bridge 100 routes a packet input from the PCI switch 200 / PCI device 220 via the PCI bus 50 and transfers the packet to the processor system 10 via the host bus 40, or another packet via the PCI bus 50. Transfer to PCI switch 200 / PCI device 220.

ブリッジ100の上流(アップストリーム)ポート102は、ホストバス40を介してプロセッサシステム10と接続され、下流(ダウンストリーム)ポート104a〜104dは、PCIバス50a〜50dを介してPCIスイッチ200/PCIデバイス220と接続される。   The upstream (upstream) port 102 of the bridge 100 is connected to the processor system 10 via the host bus 40, and the downstream (downstream) ports 104a to 104d are connected to the PCI switch 200 / PCI device via the PCI buses 50a to 50d. 220 is connected.

上流ポート102に接続されたホスト−PCIブリッジ120は、プロセッサシステム10からホストバス40を経由して入力されたパケットのデータフォーマットを物理層からデータリンク層、トランザクション層へと変換した上で、トランザクション層においてパケットのプロトコルをホストバスのプロトコルからPCIバスのプロトコルに変換する。ホスト−PCIブリッジ120は、PCIバスのプロトコルに変換されたパケットをスイッチルーティング回路140に渡す。   The host-PCI bridge 120 connected to the upstream port 102 converts the data format of the packet input from the processor system 10 via the host bus 40 from the physical layer to the data link layer and the transaction layer, and then performs a transaction. At the layer, the protocol of the packet is converted from the protocol of the host bus to the protocol of the PCI bus. The host-PCI bridge 120 passes the packet converted to the PCI bus protocol to the switch routing circuit 140.

スイッチルーティング回路140には、PCI−PCIブリッジ130a〜130d(総称するときは、PCI−PCIブリッジ130という)が接続され、これらはそれぞれ下流ポート104a〜104d(総称するときは下流ポート104という)に接続されている。スイッチルーティング回路140は、ホスト−PCIブリッジ120から与えられたパケットのヘッダに含まれる宛先アドレスにもとづいてパケットの経路選択を行い、パケットを転送すべきポートを決め、パケットを転送的のPCI−PCIブリッジ130に渡す。   The switch routing circuit 140 is connected to PCI-PCI bridges 130a to 130d (collectively referred to as PCI-PCI bridge 130), which are respectively connected to the downstream ports 104a to 104d (collectively referred to as downstream ports 104). It is connected. The switch routing circuit 140 selects a packet based on a destination address included in the header of the packet given from the host-PCI bridge 120, determines a port to which the packet is to be transferred, and transfers the packet to a PCI-PCI that is transferable. Pass to bridge 130.

PCI−PCIブリッジ130は、スイッチルーティング回路140から与えられたパケットをトランザクション層からデータリンク層、物理層へと変換し、下流ボート104を経由してPCIスイッチ200またはPCIデバイス220に転送する。   The PCI-PCI bridge 130 converts the packet provided from the switch routing circuit 140 from the transaction layer to the data link layer and the physical layer, and transfers the packet to the PCI switch 200 or the PCI device 220 via the downstream boat 104.

このようにして、プロセッサシステム10から入力されたパケットは、ルーティングの結果、宛先のPCIスイッチ200またはPCIデバイス220に転送される。   In this way, the packet input from the processor system 10 is transferred to the destination PCI switch 200 or PCI device 220 as a result of routing.

以上、上流ポート102から入力されたパケットのフローを説明した。下流ポート104から入力されたパケットのフローは次のようになる。   The flow of packets input from the upstream port 102 has been described above. The flow of packets input from the downstream port 104 is as follows.

PCI−PCIブリッジ130は、PCIスイッチ200/PCIデバイス220からPCIバス50を経由して入力されたパケットのデータフォーマットを物理層からデータリンク層、トランザクション層へと変換してスイッチルーティング回路140に渡す。   The PCI-PCI bridge 130 converts the data format of a packet input from the PCI switch 200 / PCI device 220 via the PCI bus 50 from the physical layer to the data link layer and the transaction layer, and passes the data format to the switch routing circuit 140. .

スイッチルーティング回路140は、PCI−PCIブリッジ130から与えられたパケットのヘッダに含まれる宛先アドレスにもとづいてパケットの経路選択を行い、パケットを転送すべきポートを決め、パケットを転送先であるホスト−PCIブリッジ120または他のPCI−PCIブリッジ130に渡す。   The switch routing circuit 140 selects a packet route based on the destination address included in the header of the packet given from the PCI-PCI bridge 130, determines a port to which the packet is to be transferred, and sends the packet to a host- The data is passed to the PCI bridge 120 or another PCI-PCI bridge 130.

転送先がホスト−PCIブリッジ120である場合、ホスト−PCIブリッジ120は、スイッチルーティング回路140から与えられたPCIパケットのプロトコルをPCIバスのプロトコルからホストバスのプロトコルに変換した上で、パケットのデータフォーマットをトランザクション層からデータリンク層、物理層へと変換し、上流ポート102に出力する。   When the transfer destination is the host-PCI bridge 120, the host-PCI bridge 120 converts the protocol of the PCI packet provided from the switch routing circuit 140 from the PCI bus protocol to the host bus protocol, and then transmits the packet data. The format is converted from the transaction layer to the data link layer and the physical layer and output to the upstream port 102.

転送先が他のPCI−PCIブリッジ130である場合、そのPCI−PCIブリッジ130は、スイッチルーティング回路140から与えられたパケットをトランザクション層からデータリンク層、物理層へと変換し、下流ポート104に出力する。   When the transfer destination is another PCI-PCI bridge 130, the PCI-PCI bridge 130 converts the packet given from the switch routing circuit 140 from the transaction layer to the data link layer and the physical layer, and sends it to the downstream port 104. Output.

このようにして、PCIスイッチ200/PCIデバイス220から入力されたパケットは、ルーティングの結果、宛先であるプロセッサシステム10または他のPCIスイッチ200/PCIデバイス220に転送される。   In this way, the packet input from the PCI switch 200 / PCI device 220 is transferred to the destination processor system 10 or another PCI switch 200 / PCI device 220 as a result of routing.

さらに、ブリッジ100は、システムコントローラ20とプロセッサシステム10がアクセスできる共有メモリ110をもつ。一例として、プロセッサシステム10はホストバス40を介して共有メモリ110にアクセス可能であり、システムコントローラ20はSPI30を介して共有メモリ110にアクセス可能である。   Further, the bridge 100 has a shared memory 110 that can be accessed by the system controller 20 and the processor system 10. As an example, the processor system 10 can access the shared memory 110 via the host bus 40, and the system controller 20 can access the shared memory 110 via the SPI 30.

システムコントローラ20は、PCIデバイス220の初期化情報を共有メモリ110に書き込み、プロセッサシステム10は、共有メモリ110からPCIデバイス220の初期化情報を読み取る。   The system controller 20 writes initialization information of the PCI device 220 to the shared memory 110, and the processor system 10 reads initialization information of the PCI device 220 from the shared memory 110.

図3は、PCIスイッチ200の機能構成図である。PCIスイッチ200は、PCIデバイスツリーのルート以外の中間段に設置され、入力側のPCIバスと出力側のPCIバスを中継してパケットを転送するためにパケットの経路制御を行う。   FIG. 3 is a functional configuration diagram of the PCI switch 200. The PCI switch 200 is installed at an intermediate stage other than the root of the PCI device tree, and performs packet path control in order to transfer the packet through the PCI bus on the input side and the PCI bus on the output side.

PCIスイッチ200の上流ポート102は、PCIバス50を介してブリッジ100/PCIスイッチ200と接続され、下流ポート104a〜104dは、PCIバス50a〜50dを介して次段のPCIスイッチ200/PCIデバイス220と接続される。   The upstream port 102 of the PCI switch 200 is connected to the bridge 100 / PCI switch 200 via the PCI bus 50, and the downstream ports 104a to 104d are connected to the PCI switch 200 / PCI device 220 of the next stage via the PCI buses 50a to 50d. Connected.

上流ポート102に接続されたPCI−PCIブリッジ130eは、ブリッジ100またはPCIスイッチ200からPCIバス50eを経由して入力されたパケットのデータフォーマットを物理層からデータリンク層、トランザクション層へと変換してスイッチルーティング回路140に渡し、スイッチルーティング回路140から渡されたパケットのデータフォーマットをトランザクション層からデータリンク層、物理層へと変換し、上流ポート102に出力する。   The PCI-PCI bridge 130e connected to the upstream port 102 converts the data format of the packet input from the bridge 100 or the PCI switch 200 via the PCI bus 50e from the physical layer to the data link layer and the transaction layer. The packet is transferred to the switch routing circuit 140, and the data format of the packet transferred from the switch routing circuit 140 is converted from the transaction layer to the data link layer and the physical layer, and output to the upstream port 102.

図1のブリッジ100では、上流ポート102がホストバス40に接続されているため、ホスト−PCIブリッジ120においてホストバスからPCIバスへのプロトコル変換が必要であったが、図2のPCIスイッチ200では、上流ポート102がPCIバス50に接続されているため、PCI−PCIブリッジ130eにおいて異なるバス間のプロトコル変換は不要である。それ以外のパケットの経路制御と転送に係る構成は図2のブリッジ100と同じであるから、図2のブリッジ100と同じ構成には同一の符号を付して説明を省略する。   In the bridge 100 of FIG. 1, since the upstream port 102 is connected to the host bus 40, protocol conversion from the host bus to the PCI bus is necessary in the host-PCI bridge 120. In the PCI switch 200 of FIG. Since the upstream port 102 is connected to the PCI bus 50, protocol conversion between different buses is unnecessary in the PCI-PCI bridge 130e. Since the other configuration related to packet routing and forwarding is the same as that of the bridge 100 of FIG. 2, the same components as those of the bridge 100 of FIG.

なお、PCIスイッチ200には、ブリッジ100とは違って、共有メモリ110は設けられない。   Unlike the bridge 100, the PCI switch 200 is not provided with the shared memory 110.

図4は、実施の形態に係る情報処理システムの初期化手順を説明する図である。縦軸に時間をとり、システムコントローラ20、プロセッサシステム10、ブリッジ100、PCIメモリデバイス220の各構成の処理が時系列で示されている。   FIG. 4 is a diagram for explaining an initialization procedure of the information processing system according to the embodiment. The vertical axis indicates time, and the processing of each component of the system controller 20, the processor system 10, the bridge 100, and the PCI memory device 220 is shown in time series.

システムコントローラ20が情報処理システムの電源をオンにする(SA10)。これにより、プロセッサシステム10、ブリッジ100、PCIメモリデバイス220aの各装置に電力が供給され、内部初期化が行われる(SB10、SC10、SD10)。   The system controller 20 turns on the power of the information processing system (SA10). As a result, power is supplied to each of the processor system 10, the bridge 100, and the PCI memory device 220a, and internal initialization is performed (SB10, SC10, SD10).

システムコントローラ20は、プロセッサシステム10とブリッジ100を初期設定し、ブートコードを読み出すブートアドレスを設定する(SA12)。   The system controller 20 initializes the processor system 10 and the bridge 100, and sets a boot address for reading the boot code (SA12).

システムコントローラ20は、プロセッサシステム10とブリッジ100の制御レジスタにアクセスしてホストバス40の初期化を行う(SA14)。これにより、プロセッサシステム10とブリッジ100においてホストバス40の初期化が開始される(SB12、SC12)。   The system controller 20 accesses the control registers of the processor system 10 and the bridge 100 to initialize the host bus 40 (SA14). Thereby, initialization of the host bus 40 is started in the processor system 10 and the bridge 100 (SB12, SC12).

システムコントローラ20は、ホストバス40の初期化(SA14)と並行して、PCIバスの初期化(SA16)を行う。PCIバスの初期化は、システムコントローラ20がブリッジ100の内部制御レジスタにアクセスすることにより行われる。   The system controller 20 initializes the PCI bus (SA16) in parallel with the initialization of the host bus 40 (SA14). The initialization of the PCI bus is performed by the system controller 20 accessing the internal control register of the bridge 100.

ブリッジ100は、PCIデバイスツリー内のPCIデバイス220を探索して初期化設定を行うための特別なPCIリード(Read)/ライト(Write)命令であるコンフィグレーションリード/ライト命令を発行する(SC14)。   The bridge 100 searches for the PCI device 220 in the PCI device tree and issues a configuration read / write command that is a special PCI read / write command for performing initialization setting (SC14). .

PCIデバイス220の初期化は、PCIデバイス220に対してコンフィグレーションリード/ライトを発行し、各PCIデバイス220がもつコンフィグレーション空間を操作することにより行われる。コンフィグレーションリード/ライトは、ブリッジ100に実装された内部制御レジスタにアドレスやデータを読み書きすることで発生する。システムコントローラ20は、ブリッジ100に実装された制御レジスタをあらかじめ知っており、ブリッジ100が定める方法にしたがってPCIデバイスツリーの初期化を行う。   The initialization of the PCI device 220 is performed by issuing a configuration read / write to the PCI device 220 and operating the configuration space of each PCI device 220. Configuration read / write occurs when an address or data is read from or written to an internal control register mounted on the bridge 100. The system controller 20 knows in advance the control register mounted on the bridge 100 and initializes the PCI device tree according to a method determined by the bridge 100.

コンフィグレーションリード/ライト命令は、PCIデバイスツリーのアドレスマップが定まる前に発行されるため、バス番号、デバイス番号、および機能番号を組み合わせた識別番号を用いてPCIデバイス220を特定し、特定されたPCIデバイス220にアクセスする。システムコントローラ20は、コンフィグレーションリードによって、PCIデバイス220の探索を行い、各PCIデバイス220が要求するメモリ領域の大きさを読み出す。次に、システムコントローラ20は、コンフィグレーションライトによって、各PCIデバイス220にPCIメモリ空間のベースアドレスを書き込み、PCIデバイス220毎にアドレスを割り当てる。   Since the configuration read / write command is issued before the address map of the PCI device tree is determined, the PCI device 220 is identified and identified by using an identification number that combines the bus number, device number, and function number. Access the PCI device 220. The system controller 20 searches for the PCI device 220 by configuration read, and reads the size of the memory area requested by each PCI device 220. Next, the system controller 20 writes the base address of the PCI memory space to each PCI device 220 by configuration write, and assigns an address to each PCI device 220.

システムコントローラ20は、PCIデバイスツリー内のすべてのPCIデバイス220を見つけ、それぞれが要求するアドレス範囲にもとづいて、各PCIデバイス220のアドレス空間が重複しないようにアドレスオフセットを設定する。このようにして、PCIメモリ空間に各PCIデバイス220のアドレス領域が形成される。これがPCIデバイスのアドレスマップである。   The system controller 20 finds all the PCI devices 220 in the PCI device tree, and sets the address offset so that the address spaces of the PCI devices 220 do not overlap based on the address range requested by each. In this way, an address area for each PCI device 220 is formed in the PCI memory space. This is a PCI device address map.

PCIメモリデバイス220aは、ブリッジ100からのコンフィグレーションリード命令を受けて、バス番号とPCIメモリ空間におけるベースアドレスを決定する(SD12)。ブリッジ100は、PCIメモリデバイス220aからベースアドレスなどの初期化情報を取得し、取得した初期化情報をコンフィグレーションレジスタに設定する。   The PCI memory device 220a receives the configuration read command from the bridge 100, and determines the bus number and the base address in the PCI memory space (SD12). The bridge 100 acquires initialization information such as a base address from the PCI memory device 220a, and sets the acquired initialization information in the configuration register.

プロセッサシステム10およびブリッジ100においてホストバスの初期化処理が完了すると(SB14、SC16)、システムコントローラ20は、情報処理システムの初期化処理を完了し、プロセッサシステム10にブートを指示する(SA18)。   When the initialization processing of the host bus is completed in the processor system 10 and the bridge 100 (SB14, SC16), the system controller 20 completes the initialization processing of the information processing system and instructs the processor system 10 to boot (SA18).

ここまでの処理(同図の点線よりも上の処理)は、システムコントローラ20が主導する形で行われ、これ以降の処理(同図の点線よりも下の処理)は、プロセッサシステム10が主導する形で行われる。   The processing up to this point (processing above the dotted line in the figure) is performed under the initiative of the system controller 20, and the subsequent processing (processing below the dotted line in the figure) is led by the processor system 10. To be done.

プロセッサシステム10は、システムコントローラ20から通知されたブートアドレスからブートコードを読み出すための命令をブリッジ100に送る(SB16)。ブリッジ100は、PCIメモリデバイス220aに対してブートアドレスのデータをリードする命令を発行する(SC18)。PCIメモリデバイス220aは、ブートROM212からブートコードをリードし、取得したブートコードをブリッジ100に渡す(SD14)。ブリッジ100は、PCIメモリデバイス220aから取得したブートコードをプロセッサシステム10に渡す。これにより、プロセッサシステム10におけるブートコードの読み出しが終わり、プロセッサシステム10は、ブートコードを実行し、システムを起動する(SB18)。   The processor system 10 sends an instruction for reading the boot code from the boot address notified from the system controller 20 to the bridge 100 (SB16). The bridge 100 issues an instruction to read the data of the boot address to the PCI memory device 220a (SC18). The PCI memory device 220a reads the boot code from the boot ROM 212 and passes the acquired boot code to the bridge 100 (SD14). The bridge 100 passes the boot code acquired from the PCI memory device 220a to the processor system 10. Thereby, the reading of the boot code in the processor system 10 is completed, and the processor system 10 executes the boot code and starts the system (SB18).

プロセッサシステム10は、システムコントローラ20からのこれ以降のプロセッサシステム10に対するアクセスを禁止する(SB20)。ブリッジ100は、これ以降、システムコントローラ20がSPI30経由で共有メモリ110以外にアクセスしてくるのを禁止する(SC20)。ブリッジ100は、システムコントローラ20が共有メモリ110にアクセスすることは許容する。   The processor system 10 prohibits the system controller 20 from accessing the subsequent processor system 10 (SB20). Thereafter, the bridge 100 prohibits the system controller 20 from accessing other than the shared memory 110 via the SPI 30 (SC20). The bridge 100 allows the system controller 20 to access the shared memory 110.

システムコントローラ20は、プロセッサシステム10からの要求に応じて、PCIデバイスの初期化情報をブリッジ100の共有メモリ110に書き込むことで、プロセッサシステム10にPCIデバイスの初期化情報を供給する(SA20)。   In response to a request from the processor system 10, the system controller 20 writes the initialization information of the PCI device into the shared memory 110 of the bridge 100, thereby supplying the initialization information of the PCI device to the processor system 10 (SA20).

プロセッサシステム10は、システムコントローラ20と共有メモリ110を介したデータ通信を行い、システムコントローラ20からPCIデバイスの初期化情報を受け取る(SB22)。   The processor system 10 performs data communication with the system controller 20 via the shared memory 110, and receives initialization information of the PCI device from the system controller 20 (SB22).

プロセッサシステム10は、PCIデバイスの初期化情報をチェックし、PCIデバイスの初期化をスキップする。もっとも、必要に応じてPCIデバイスの初期化を再度行ってもよい。PCIデバイスの初期化情報により、PCIデバイスツリー内にあるすべてのPCIデバイス220のベースアドレスやデバイスIDが明らかとなっており、プロセッサシステム10は、各PCIデバイス220に対応するデバイスドライバを起動して、各PCIデバイス220に固有の初期化をそれぞれのデバイスドライバに行わせる(SB24)。   The processor system 10 checks the initialization information of the PCI device and skips the initialization of the PCI device. However, the PCI device may be initialized again as necessary. The initialization information of the PCI device reveals the base addresses and device IDs of all the PCI devices 220 in the PCI device tree, and the processor system 10 activates the device driver corresponding to each PCI device 220. Then, initialization specific to each PCI device 220 is performed by each device driver (SB24).

以上説明したように、本実施の形態の情報処理システムによれば、プロセッサシステム10がブートする前に、システムコントローラ20があらかじめブリッジ100に接続されたPCIデバイスを初期化しておくことで、プロセッサシステム10は、PCIバスで接続された高速なメモリデバイスからブートコードをロードすることが可能となり、ブートの高速化を図ることができる。   As described above, according to the information processing system of the present embodiment, before the processor system 10 boots, the system controller 20 initializes the PCI device connected to the bridge 100 in advance, so that the processor system 10 can load a boot code from a high-speed memory device connected by a PCI bus, and can increase the boot speed.

システムコントローラ20を低消費電力で常時稼働させておけば、情報処理システムの電源は落としていても、システムを高速に立ち上げることができるため、利便性を犠牲にすることなく消費電力コストを抑えることができる。特にプロセッサシステム10がマルチプロセッサシステムである場合や、ブリッジ100を介して多数のPCIデバイス220が接続されている場合には、消費電力が大きくなるため、常時稼働でなく、使用時にのみ電源を投入してシステムを起動することで、消費電力コストを大幅に下げることができる。   If the system controller 20 is always operated with low power consumption, even if the information processing system is powered down, the system can be started up at high speed, so the power consumption cost can be reduced without sacrificing convenience. be able to. In particular, when the processor system 10 is a multiprocessor system, or when a large number of PCI devices 220 are connected via the bridge 100, the power consumption increases. By starting the system, the power consumption cost can be greatly reduced.

従来のシステムでは、プロセッサシステム10のオペレーティングシステムがブートしてから、PCIドライバがブリッジ100にツリー構造で接続された複数のPCIデバイスを探索し、各PCIデバイスのベースアドレスを決めて、PCIメモリ空間のアドレスマップを構築する。それに対して、本実施の形態の情報処理システムでは、プロセッサシステム10のオペレーティングシステムがブートする前に、既にシステムコントローラ20がPCIデバイスの初期化を完了し、PCIデバイスのアドレスマップが構築されている。そのため、プロセッサシステム10のオペレーティングシステムに含まれるPCIドライバがブリッジ100に接続されたPCIデバイスを探索して初期化する必要はない。   In the conventional system, after the operating system of the processor system 10 is booted, the PCI driver searches a plurality of PCI devices connected to the bridge 100 in a tree structure, determines the base address of each PCI device, and determines the PCI memory space. Build an address map for. In contrast, in the information processing system according to the present embodiment, before the operating system of the processor system 10 boots, the system controller 20 has already completed initialization of the PCI device, and the PCI device address map has been constructed. . Therefore, it is not necessary for the PCI driver included in the operating system of the processor system 10 to search for and initialize a PCI device connected to the bridge 100.

また、本実施の形態によれば、プロセッサシステム10とシステムコントローラ20の双方がアクセス可能な共有メモリ110がブリッジ100に設けられる。システムコントローラ20がPCIバスの初期化の際に取得したPCIデバイスの初期化情報を共有メモリに書き込んでおけば、プロセッサシステム10は、ブート後に共有メモリからPCIデバイスの初期化情報を取得して、PCIデバイスに対応したドライバを起動してPCIデバイスに直ちにアクセスすることができる。   Further, according to the present embodiment, the shared memory 110 that can be accessed by both the processor system 10 and the system controller 20 is provided in the bridge 100. If the initialization information of the PCI device acquired by the system controller 20 at the initialization of the PCI bus is written in the shared memory, the processor system 10 acquires the initialization information of the PCI device from the shared memory after booting, A driver corresponding to the PCI device can be activated to immediately access the PCI device.

以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。   The present invention has been described based on the embodiments. The embodiments are exemplifications, and it will be understood by those skilled in the art that various modifications can be made to combinations of the respective constituent elements and processing processes, and such modifications are within the scope of the present invention. .

上記の説明では、周辺デバイスを接続するためのインタフェースとしてPCIを例に挙げて説明したが、本発明は、周辺デバイスがPCI以外のインタフェースで接続される場合にも適用できることはいうまでもない。   In the above description, PCI has been described as an example of an interface for connecting peripheral devices, but the present invention can be applied to a case where the peripheral device is connected by an interface other than PCI.

実施の形態に係る情報処理システムの構成図である。1 is a configuration diagram of an information processing system according to an embodiment. 図1のブリッジの機能構成図である。It is a functional block diagram of the bridge | bridging of FIG. 図1のPCIスイッチの機能構成図である。It is a functional block diagram of the PCI switch of FIG. 実施の形態に係る情報処理システムの初期化手順を説明する図である。It is a figure explaining the initialization procedure of the information processing system concerning an embodiment.

符号の説明Explanation of symbols

10 プロセッサシステム、 20 システムコントローラ、 30 SPI、 40 ホストバス、 50 PCIバス、 100 ブリッジ、 110 共有メモリ、 120 ホスト−PCIブリッジ、 130 PCI−PCIブリッジ、 140 スイッチルーティング回路、 200 PCIスイッチ、 212 ブートROM、 220a PCIメモリデバイス、 220b PCIデバイス。   10 processor system, 20 system controller, 30 SPI, 40 host bus, 50 PCI bus, 100 bridge, 110 shared memory, 120 host-PCI bridge, 130 PCI-PCI bridge, 140 switch routing circuit, 200 PCI switch, 212 boot ROM 220a PCI memory device, 220b PCI device.

Claims (7)

プロセッサシステムと周辺デバイスとがブリッジにより相互に接続された情報処理システムの初期化方法であって、
前記情報処理システムの外部に接続されたシステムコントローラが前記プロセッサシステムと前記ブリッジの双方の制御レジスタにアクセスして前記プロセッサシステムと前記ブリッジの間の入出力インタフェースを初期化する間に、前記システムコントローラが前記ブリッジに接続された前記周辺デバイスを初期化することを特徴とする初期化方法。
An information processing system initialization method in which a processor system and peripheral devices are connected to each other by a bridge,
The system controller connected to the outside of the information processing system accesses the control registers of both the processor system and the bridge to initialize the input / output interface between the processor system and the bridge. Initializing the peripheral device connected to the bridge.
前記プロセッサシステムが、前記ブリッジを介して、前記システムコントローラによる初期化が完了した前記周辺デバイスからブートコードを読み込んで起動するステップをさらに含むことを特徴とする請求項1に記載の初期化方法。   2. The initialization method according to claim 1, further comprising the step of the processor system reading and starting a boot code from the peripheral device that has been initialized by the system controller via the bridge. 前記システムコントローラが前記周辺デバイスを初期化したときに得られる前記周辺デバイスの初期化情報を、前記システムコントローラと前記プロセッサシステムの双方がアクセス可能な前記ブリッジ内に設けられた共有メモリに書き込むステップと、
前記プロセッサシステムが自らは前記周辺デバイスの初期化を行うことなく、前記周辺デバイスの初期化情報を前記共有メモリから取得するステップとを含むことを特徴とする請求項2に記載の初期化方法。
Writing initialization information of the peripheral device obtained when the system controller initializes the peripheral device into a shared memory provided in the bridge accessible by both the system controller and the processor system; ,
3. The initialization method according to claim 2, further comprising the step of acquiring initialization information of the peripheral device from the shared memory without the processor system itself performing initialization of the peripheral device.
プロセッサシステムと、
前記プロセッサシステムの入出力バスと周辺デバイスの入出力バスを相互接続するブリッジとを含み、
前記プロセッサシステムと前記ブリッジの双方にアクセス可能なシステムコントローラにより、前記プロセッサシステムと前記ブリッジの双方の制御レジスタがアクセスされて前記プロセッサシステムと前記ブリッジの間の入出力インタフェースが初期化される間に、前記ブリッジに接続された周辺デバイスが前記システムコントローラにより初期化されることを特徴とする情報処理装置。
A processor system;
A bridge interconnecting the input / output bus of the processor system and the input / output bus of a peripheral device,
A system controller that can access both the processor system and the bridge while the control registers of both the processor system and the bridge are accessed and the input / output interface between the processor system and the bridge is initialized. An information processing apparatus, wherein a peripheral device connected to the bridge is initialized by the system controller.
前記周辺デバイスには、前記プロセッサシステムが起動するためのブートコードを記憶するメモリ領域が設けられ、
前記プロセッサシステムは、前記ブリッジを介して、前記システムコントローラによる初期化が完了した前記周辺デバイスから前記ブートコードを読み込んで起動することを特徴とする請求項4に記載の情報処理装置。
The peripheral device is provided with a memory area for storing a boot code for starting the processor system,
5. The information processing apparatus according to claim 4, wherein the processor system reads and boots the boot code from the peripheral device that has been initialized by the system controller via the bridge.
前記ブリッジには、前記システムコントローラと前記プロセッサシステムがアクセス可能な共有メモリが設けられ、
前記システムコントローラは、前記周辺デバイスを初期化したときに得られる前記周辺デバイスの初期化情報を前記共有メモリに書き込み、
前記プロセッサシステムは、自らは前記周辺デバイスの初期化を行うことなく、前記周辺デバイスの初期化情報を前記共有メモリから読み出して利用することを特徴とする請求項5に記載の情報処理装置。
The bridge is provided with a shared memory accessible by the system controller and the processor system,
The system controller writes initialization information of the peripheral device obtained when the peripheral device is initialized to the shared memory,
6. The information processing apparatus according to claim 5, wherein the processor system reads and uses the initialization information of the peripheral device from the shared memory without itself performing initialization of the peripheral device.
プロセッサシステムと、
前記プロセッサシステムとデータをやりとりする周辺デバイスと、
前記プロセッサシステムの入出力バスと前記周辺デバイスの入出力バスを相互接続するブリッジとを含み、
前記プロセッサシステムと前記ブリッジの双方にアクセス可能なシステムコントローラにより、前記プロセッサシステムと前記ブリッジの双方の制御レジスタがアクセスされて前記プロセッサシステムと前記ブリッジの間の入出力インタフェースが初期化される間に、前記ブリッジに接続された前記周辺デバイスが前記システムコントローラにより初期化されることを特徴とする情報処理システム。
A processor system;
Peripheral devices for exchanging data with the processor system;
Including a bridge interconnecting the input / output bus of the processor system and the input / output bus of the peripheral device,
A system controller that can access both the processor system and the bridge while the control registers of both the processor system and the bridge are accessed and the input / output interface between the processor system and the bridge is initialized. The information processing system is characterized in that the peripheral device connected to the bridge is initialized by the system controller.
JP2006061124A 2006-03-07 2006-03-07 Information processing apparatus, information processing system, and initialization method Expired - Fee Related JP4799222B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006061124A JP4799222B2 (en) 2006-03-07 2006-03-07 Information processing apparatus, information processing system, and initialization method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006061124A JP4799222B2 (en) 2006-03-07 2006-03-07 Information processing apparatus, information processing system, and initialization method

Publications (2)

Publication Number Publication Date
JP2007241526A true JP2007241526A (en) 2007-09-20
JP4799222B2 JP4799222B2 (en) 2011-10-26

Family

ID=38587028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006061124A Expired - Fee Related JP4799222B2 (en) 2006-03-07 2006-03-07 Information processing apparatus, information processing system, and initialization method

Country Status (1)

Country Link
JP (1) JP4799222B2 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009139489A1 (en) * 2008-05-16 2009-11-19 日本電気株式会社 Pci express switch, pci express system, and network control method
JP2011514590A (en) * 2008-02-26 2011-05-06 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. Method and apparatus for performing a host enumeration process
JP2013527955A (en) * 2010-06-23 2013-07-04 インターナショナル・ビジネス・マシーンズ・コーポレーション Routing of I / O extension requests and responses in the PCIe architecture
US8615622B2 (en) 2010-06-23 2013-12-24 International Business Machines Corporation Non-standard I/O adapters in a standardized I/O architecture
US8645767B2 (en) 2010-06-23 2014-02-04 International Business Machines Corporation Scalable I/O adapter function level error detection, isolation, and reporting
US8645606B2 (en) 2010-06-23 2014-02-04 International Business Machines Corporation Upbound input/output expansion request and response processing in a PCIe architecture
US8656228B2 (en) 2010-06-23 2014-02-18 International Business Machines Corporation Memory error isolation and recovery in a multiprocessor computer system
US8677180B2 (en) 2010-06-23 2014-03-18 International Business Machines Corporation Switch failover control in a multiprocessor computer system
US8683108B2 (en) 2010-06-23 2014-03-25 International Business Machines Corporation Connected input/output hub management
US8918573B2 (en) 2010-06-23 2014-12-23 International Business Machines Corporation Input/output (I/O) expansion response processing in a peripheral component interconnect express (PCIe) environment
KR20180063128A (en) * 2015-10-06 2018-06-11 자일링크스 인코포레이티드 Configuration of multistage boot image loading and programmable logic devices
US10452595B2 (en) 2014-11-04 2019-10-22 Canon Kabushiki Kaisha Information processing apparatus and method of controlling the same

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10307649A (en) * 1997-05-07 1998-11-17 Toshiba Corp Computer system and its initializing method
JP2001350710A (en) * 2000-06-09 2001-12-21 Nec Kofu Ltd Information processor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10307649A (en) * 1997-05-07 1998-11-17 Toshiba Corp Computer system and its initializing method
JP2001350710A (en) * 2000-06-09 2001-12-21 Nec Kofu Ltd Information processor

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011514590A (en) * 2008-02-26 2011-05-06 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. Method and apparatus for performing a host enumeration process
US8625615B2 (en) 2008-05-16 2014-01-07 Nec Corporation PCI express switch, PCI express system, and network control method
WO2009139489A1 (en) * 2008-05-16 2009-11-19 日本電気株式会社 Pci express switch, pci express system, and network control method
JP5360607B2 (en) * 2008-05-16 2013-12-04 日本電気株式会社 PCI express switch, PCI express system, and network control method
US8683108B2 (en) 2010-06-23 2014-03-25 International Business Machines Corporation Connected input/output hub management
US8769180B2 (en) 2010-06-23 2014-07-01 International Business Machines Corporation Upbound input/output expansion request and response processing in a PCIe architecture
US8645767B2 (en) 2010-06-23 2014-02-04 International Business Machines Corporation Scalable I/O adapter function level error detection, isolation, and reporting
US8645606B2 (en) 2010-06-23 2014-02-04 International Business Machines Corporation Upbound input/output expansion request and response processing in a PCIe architecture
US8656228B2 (en) 2010-06-23 2014-02-18 International Business Machines Corporation Memory error isolation and recovery in a multiprocessor computer system
US8677180B2 (en) 2010-06-23 2014-03-18 International Business Machines Corporation Switch failover control in a multiprocessor computer system
JP2013527955A (en) * 2010-06-23 2013-07-04 インターナショナル・ビジネス・マシーンズ・コーポレーション Routing of I / O extension requests and responses in the PCIe architecture
US8700959B2 (en) 2010-06-23 2014-04-15 International Business Machines Corporation Scalable I/O adapter function level error detection, isolation, and reporting
US8745292B2 (en) 2010-06-23 2014-06-03 International Business Machines Corporation System and method for routing I/O expansion requests and responses in a PCIE architecture
US8615622B2 (en) 2010-06-23 2013-12-24 International Business Machines Corporation Non-standard I/O adapters in a standardized I/O architecture
US8918573B2 (en) 2010-06-23 2014-12-23 International Business Machines Corporation Input/output (I/O) expansion response processing in a peripheral component interconnect express (PCIe) environment
US9201830B2 (en) 2010-06-23 2015-12-01 International Business Machines Corporation Input/output (I/O) expansion response processing in a peripheral component interconnect express (PCIe) environment
US9298659B2 (en) 2010-06-23 2016-03-29 International Business Machines Corporation Input/output (I/O) expansion response processing in a peripheral component interconnect express (PCIE) environment
US10452595B2 (en) 2014-11-04 2019-10-22 Canon Kabushiki Kaisha Information processing apparatus and method of controlling the same
KR20180063128A (en) * 2015-10-06 2018-06-11 자일링크스 인코포레이티드 Configuration of multistage boot image loading and programmable logic devices
JP2018531461A (en) * 2015-10-06 2018-10-25 ザイリンクス インコーポレイテッドXilinx Incorporated Multi-stage boot image loading and programmable logic device configuration
JP6995745B2 (en) 2015-10-06 2022-01-17 ザイリンクス インコーポレイテッド Multistage boot image loading and programmable logic device configuration
KR102654610B1 (en) * 2015-10-06 2024-04-03 자일링크스 인코포레이티드 Multistage boot image loading and configuration of programmable logic devices

Also Published As

Publication number Publication date
JP4799222B2 (en) 2011-10-26

Similar Documents

Publication Publication Date Title
JP4799222B2 (en) Information processing apparatus, information processing system, and initialization method
JP5440507B2 (en) Multi-root PCI express switch, its startup method, and multi-root PCI manager program
US8995302B1 (en) Method and apparatus for translated routing in an interconnect switch
US8135873B2 (en) Information processing device for performing information exchange between a PCI express bus and a non-PCI express bus interface
US7752346B2 (en) Universal routing in PCI-Express fabrics
US9146890B1 (en) Method and apparatus for mapped I/O routing in an interconnect switch
CN100483373C (en) PVDM (packet voice data module) generic bus protocol
US10126954B1 (en) Chipset and server system using the same
US8386654B2 (en) System and method for transforming PCIe SR-IOV functions to appear as legacy functions
US10684880B2 (en) Allocating and initializing I/O devices at virtual
JP2008310832A (en) Apparatus and method for distributing signal from high level data link controller to a plurality of digital signal processor cores
CN115203101A (en) PCIe device and operating method thereof
JP2009110032A (en) Bridge, information processor, information processing system, and global address management method
JP2001333137A (en) Self-operating communication controller and self- operating communication control method
US7895388B2 (en) Bus control device
JP4257358B2 (en) Bus control method and apparatus
JP2011113163A (en) Inter-end point communication control device and method in io access communication system
EP1365544B1 (en) Bridge element enabled module and method
JP4116805B2 (en) Internal bus test device and internal bus test method
US7596651B2 (en) Multi-character adapter card
JP6597925B1 (en) Information processing system
WO2011030498A1 (en) Data processing device and data processing method
JP2005100210A (en) Bus configuration circuit
JPH1145209A (en) Program transfer system
JPH08305658A (en) I/o bus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081205

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20101126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101214

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110720

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: 20110726

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: 20110802

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140812

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4799222

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

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

LAPS Cancellation because of no payment of annual fees