WO2007097036A1 - 中央処理装置、中央処理装置の制御方法、情報処理システム - Google Patents

中央処理装置、中央処理装置の制御方法、情報処理システム Download PDF

Info

Publication number
WO2007097036A1
WO2007097036A1 PCT/JP2006/303649 JP2006303649W WO2007097036A1 WO 2007097036 A1 WO2007097036 A1 WO 2007097036A1 JP 2006303649 W JP2006303649 W JP 2006303649W WO 2007097036 A1 WO2007097036 A1 WO 2007097036A1
Authority
WO
WIPO (PCT)
Prior art keywords
central processing
processing unit
memory
bus
input
Prior art date
Application number
PCT/JP2006/303649
Other languages
English (en)
French (fr)
Inventor
Hideyuki Unno
Masaki Ukai
Original Assignee
Fujitsu Limited
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 Fujitsu Limited filed Critical Fujitsu Limited
Priority to EP06714786.8A priority Critical patent/EP1990725B1/en
Priority to JP2008501586A priority patent/JP4774099B2/ja
Priority to PCT/JP2006/303649 priority patent/WO2007097036A1/ja
Publication of WO2007097036A1 publication Critical patent/WO2007097036A1/ja
Priority to US12/199,004 priority patent/US8015326B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1647Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access

Definitions

  • Central processing unit control method for central processing unit, information processing system
  • the present invention relates to a central processing unit, a control method for the central processing unit, and an information processing system.
  • the computing power per central processing unit tends to increase year by year in response to advances in semiconductor manufacturing process technology.
  • the memory bandwidth memory access speed
  • a single system controller is connected to a central processing unit, and this controller performs interleaving that distributes access requests to a plurality of memory media. Therefore, with the prior art, the central processing unit cannot recognize the interleaving situation.
  • a plurality of buses are provided between the central processing unit and the plurality of system controllers, and the central processing unit performs interleaving, thereby allowing individual processing to be performed. It is disclosed that the number of signal lines connected to the system controller is reduced.
  • a plurality of buses are connected to the central processing unit, and the central processing unit is directly interleaved.
  • the central processing unit is directly interleaved.
  • the central processing unit must issue a ⁇ request packet to the appropriate bus where the ⁇ device exists.
  • An object of the present invention is to make it possible to effectively use the processing capability of a central processing unit without complicating the configuration of a system controller connected to the central processing unit.
  • Another object of the present invention is to realize an improvement in processing performance by performing S memory interleaving at a low cost without complicating the structure and management in the central processing unit. is there.
  • a first aspect of the present invention provides bus control means for inputting / outputting information to / from a plurality of buses, and memory access control for distributing memory access requests to the plurality of nodes according to memory addresses.
  • a second aspect of the present invention is the central processing unit according to the first aspect,
  • the input / output access control means includes:
  • a central processing unit for executing
  • a third aspect of the present invention is the central processing unit according to the first aspect
  • the memory access control means provides a central processing unit that performs memory interleaving for accessing a plurality of memory media individually connected to the plurality of buses in parallel according to the physical memory address.
  • a fourth aspect of the present invention is the step of connecting the central processing unit to a plurality of buses;
  • the central processing unit executes a memory interleaving that distributes a plurality of memory access requests to a memory medium existing on the bus according to a memory address, and provides a control method for the central processing unit.
  • a fifth aspect of the present invention is the method for controlling a central processing unit according to the fourth aspect, wherein the central processing unit further includes the input / output to be accessed via the specific bus. Querying which bus the device is on; and executing the access to the input / output device using the bus responsive to the system controller by the central processing unit;
  • a control method for a central processing unit is provided.
  • a sixth aspect of the present invention provides a central processing unit
  • a plurality of system controllers subordinate to at least one of a memory medium and an input / output device
  • An information processing system including: an access control means; [0019]
  • a seventh aspect of the present invention is the information processing system according to the sixth aspect, wherein the central processing unit further includes:
  • An information processing system including input / output access control means for executing is provided.
  • An eighth aspect of the present invention is the information processing system according to the sixth aspect,
  • Each of the plurality of central processing units is connected to each of the plurality of system controllers via the plurality of buses to provide an information processing system.
  • a ninth aspect of the present invention is the information processing system according to the sixth aspect.
  • Each of the system controllers provides an information processing system having a plurality of semiconductor chip powers.
  • a plurality of buses are connected to the central processing unit, and the central processing unit itself performs memory interleaving. Therefore, more signal lines are required between the central processing unit and the system controller. There is no need to provide a large number of buses.
  • FIG. 1 is a conceptual diagram showing an example of a configuration of an information processing system including a central processing unit according to an embodiment of the present invention.
  • FIG. 2 is a conceptual diagram showing an example of a bus connection state with respect to the central processing unit according to the embodiment of the present invention.
  • FIG. 3 is a block diagram showing an example of an internal configuration of a central processing unit according to an embodiment of the present invention.
  • FIG. 4 is a block diagram showing an example of an internal configuration of a central processing unit according to an embodiment of the present invention.
  • FIG. 5 is a conceptual diagram showing an example of a memory interleaving method in the central processing unit according to the embodiment of the present invention.
  • FIG. 6 is a conceptual diagram showing an example of the action of IZO access in the central processing unit according to the embodiment of the present invention.
  • FIG. 7 is a conceptual diagram showing an example of an access transaction between a central processing unit and a system controller according to an embodiment of the present invention.
  • FIG. 8 is a state transition diagram showing an example of the operation of the eyelid access in the central processing unit according to the embodiment of the present invention.
  • FIG. 9 is a sequence diagram showing an example of an IZO access transaction between a central processing unit and a system controller according to an embodiment of the present invention.
  • FIG. 10 is a conceptual diagram showing an implementation example of an information processing system including a central processing unit according to an embodiment of the present invention.
  • FIG. 1 is a conceptual diagram showing an example of the configuration of an information processing system including a central processing unit according to an embodiment of the present invention.
  • FIG. 2 is a conceptual diagram showing an example of a bus connection state with respect to the central processing unit of the present embodiment.
  • the information processing system according to the present embodiment includes a plurality of CPU nodes 100, a system controller 300, a memory medium 400, and an IZO device 500.
  • each system controller 300 Under each system controller 300, a memory medium 400 and an IZO device 500 are connected. Each system controller 300 controls the exchange of information between the subordinate memory medium 400, IZO device 500, and each CPU node 100.
  • the IZO device 500 is mapped to the memory address space, and the CPU node 100 accesses the IZO device 500 by the memory mapped interface.
  • SCO which represents multiple system controllers 300 (SC0 to 3), has a configuration management table 310 that sets information about which system controller 300 (system bus 200) is under the control of multiple IZO devices 500 ing.
  • the SCO responds to an inquiry from the CPU node 100 as described later with reference to the configuration management table 310.
  • the memory medium 400 includes, for example, a storage medium (memory bank) such as a semiconductor memory, and a memory controller that controls the storage medium.
  • a storage medium such as a semiconductor memory
  • the memory media 400 under the individual system controllers 300 are physically independent of each other and can be accessed in parallel.
  • each system controller 300 (SC0 to SC3) is connected to each of a plurality of CPU nodes 100 via a system node 200.
  • each CPU node 100 distributes memory access requests to a plurality of system buses 200 (system controller 300), so that each CPU node 100 can communicate with a plurality of memory media 400 under each system controller 300. It has a memory interleaving function that performs memory access in parallel.
  • memory interleaving in access to the memory medium 400 is controlled at the level of the CPU node 100.
  • the system bus 200 provided between each CPU node 100 and each of the plurality of system controllers 300 includes an SC request bus 210 (SCREQ—BU Sn) and an SC order bus 220 (SCODR — Including BUSn)!
  • SC request bus 210 SCREQ—BU Sn
  • SC order bus 220 SC order bus 220
  • the SC request bus 210 transfers information from the CPU node 100 to the system controller 300.
  • SC request bus 210 has TAG bit 211 (SCREQ BUSn TAG) , Data bit 212 (SCREQ—BUSn) and ECC bit 213 (SCREQ—BUSn—ECC).
  • the SC order bus 220 is used to transfer information from the system controller 300 to the CPU node 100.
  • the SC order bus 220 is composed of TAG bit 221 (SCODR—BUSn-one TAG), data bit 222 (SCODR-one BUSn), and ECC bit 223 (SCODR-one BUSn—ECC).
  • n indicates SCO to 3 (system controller 300) of the connection destination.
  • SCREQ-BUSn-TAG is 3 bits
  • SCREQ-BUSn is 24 bits
  • SCREQ-BUSn-ECC is 7 bits.
  • SCODR_BUSn_TAG is 3 bits
  • SCODR_BUSn is 40 bits
  • SCOD_BUSn_ECC is 7 bits.
  • FIG. 3 is a block diagram illustrating an example of the internal configuration of the CPU node 100 according to the present embodiment.
  • the CPU node 100 includes one or a plurality of processor cores 110, a cache memory 120, and a system bus control unit 130.
  • the processor core 110 has arithmetic and control functions such as an arithmetic logic unit (ALU).
  • ALU arithmetic logic unit
  • the cache memory 120 temporarily stores information exchanged between the processor core 110 and the outside.
  • the system bus control unit 130 controls exchange of information with a plurality of system buses 200 connected to the CPU node 100.
  • system bus control unit 130 is provided with a memory reference control unit 140 and an IZO reference control unit 150.
  • the memory reference control unit 140 controls memory interleaving with respect to the plurality of memory media 400 existing under each of the plurality of system controllers 300 (system bus 200).
  • memory interleaving is controlled at the level of CPU node 100.
  • the IZO reference control unit 150 of the present embodiment has an interleave control. Control section 141, WAY mode setting register 142, and memory access queue 143.
  • the memory access queue 143 is arranged corresponding to the packet generator 131 to which the individual system bus 200 (system controller 300) is connected.
  • the interleave control unit 141 then refers to the physical address (Physical address; PA) of the reference target memory (in this case, the lower 2 bits of SCREQ-BUSn, the entire system bus 200, the 8th and 9th bits from the lower side).
  • PA Physical address
  • Memory interleaving is performed by distributing access requests to the memory access queue 143 corresponding to each system bus 200 by the second PA [9: 8] bits).
  • the WAY mode setting register 142 defines the relationship between the physical address of the memory medium 400 and the corresponding system controller 300.
  • the WAY mode setting register 142 has four system controllers 300 (SC) according to the two bits of the physical address PA [9: 8] (configuration in FIG. 1). ), And when there are two system controllers 300 (SC) (configurations in which the SC2 and SC3 options are removed from the configuration in Fig. 1), it is defined whether SCREQ—BUSn V is allocated to the deviation. Is done.
  • the interleaving control unit 141 refers to the WAY mode setting register 142 and distributes the memory access request to each system controller 300 (SC0 to 3 or SC0 to 1).
  • the reference control unit 150 first causes the representative system controller 300 (in this case, the SCO) to locate the target I / O device 500 (System bus 200 (system controller 300) where IZO device 500 exists), and then, by actually issuing an IZO request to system bus 200 (system controller 300) responded by SCO, Achieve ⁇ access to the desired ⁇ device 500.
  • the representative system controller 300 in this case, the SCO
  • the target I / O device 500 System bus 200 (system controller 300) where IZO device 500 exists
  • the heel reference control unit 150 of the present embodiment includes I ZO request queue 151 is set up!
  • the I / O request queue 151 stores the I / O request frame 152 from the processor core 110 side in the order in which the requests are generated.
  • the request frame 152 is packetized by the packet generator 131 and sent to the system controller 300 via the system bus 200.
  • This I / O request frame 152 includes a valid flag 152a, an I / O address 152b, an instruction code 152c, a byte mask 152d, a state variable 152e, an I / O request destination SC number 152f, an I / O data 152g.
  • the valid flag 152a is information for controlling whether or not the I / O request frame 152 written in the I / O request queue 151 is executable.
  • the IZO address 152b is an address of the target IZO device 500.
  • an instruction for the IZO device 500 is set.
  • the byte mask 152d is information indicating which of 24 bits (3 bytes) of SCREQ-BUSn to which the I / O data 152g is assigned.
  • the state variable 152e is information for managing the progress state of the I / O access executed in two steps as described above.
  • an SC number (0 to 3) indicating the location of the IZO device 500 that has responded to the inquiry to the first SCO is set.
  • FIG. 7 is a conceptual diagram showing an example of an IZO access transaction 600 executed by the IZO reference control unit 150.
  • the I / O access transaction 600 of the present embodiment includes a first SC request 601 and a first response SC order 602, a second SC request 603 and a second response SC order 604, and the like.
  • the first SC request 601 indicates an inquiry of the location of the I / O device 500 from the CPU node 100 to a specific SCO.
  • the transaction name 600a is set as NC-RD; non-cache read
  • NC ⁇ BR non ⁇ cache block read NC—WR; non—cache write
  • the issuer 600b is a CPU (CPU node 100), and the issuer 600c is a specific SCO (system controller 300).
  • NC-RD is a read request for ⁇ data 152g in byte units (for example, 1 to 16 bytes) to the target IZO device 500.
  • NC-BD is a read request for the input data 152g in block units (for example, 64 bytes) to the target IZO device 500.
  • NC-WR is a write request for IZO data 152 g in byte units (eg, 1 to 16 bytes) to the target IZO device 500.
  • NC—BW is a request to write IZO data 152g in block units (for example, 64 bytes) to the target IZO device 500.
  • the first response SC order 602 is a response from the SCO to the first SC request 601.
  • the IZO request destination SC number 152f is returned.
  • the issuer 600b is an SCO, and the issuer 600c is a CPU (CPU node 100).
  • the NC responds with the number of the system controller 300 where the queried I / O device 500 is located.
  • SN-RES-AX is returned when there is no I / O device 500 corresponding to the specified address of the inquiry.
  • the second SC request 603 is an execution of an IZO request to the target IZO device 500 existing under the arbitrary system controller 300 (SCn) specified by the IZO request destination SC number 152f.
  • SCn system controller 300
  • SR—NB slave read non—cache block SW—NC; Slave write non— cache
  • SR—NC is a read request in byte units for the IZO device 500.
  • SR-NB is a read request in block units for the IZO device 500.
  • SW—NC is a write request to the IZO device 500 in byte units.
  • SW— ⁇ is a block-by-block write request to the IZO device 500.
  • the issuer 600b is the CPU node 100.
  • Issuer 600c is the SC number (SC -WAY) returned from the SCO in the first response SC order 602.
  • the BUS [1: 0] designation in the issue destination 600c indicates that an IZO request must be issued to the SC-WAY designated by SN-RES-NC.
  • the second response SC order 604 is a response of I / O device 500 (SCn) force to this actual I / O request.
  • SCn I / O device 500
  • transaction name 600a transaction name 600a
  • DOW SR-NB-RTN
  • DOW SR—NC—RTN is a response to SR—NC (non—cacheable read), and byte data read from the IZO device 500 is returned.
  • DOW SR-NB-RTN is a response to SR-NB (non-cacheable block read), and block data read from the IZO device 500 is returned.
  • DOW CMD—CPLT is a response to SW—NC, SW—NB (write / block write). This response to the Write type is a response indicating whether or not the data writing to the IZO device 500 is completed, and exists for release control of the Write type ⁇ request.
  • the issuer 600b in the second response SC order 604 is the above-mentioned second SC request. It is the same as the issuer of G603.
  • “Same as SR—NC” indicates that the force second response SC order 604 (DOW) is returned at the same position as SCn where SR—NC was issued.
  • FIG. 8 is a state transition diagram showing an example of state transition when executing the above-described I / O access transaction 600 in the IZO reference control unit 150.
  • the valid flag 152a is validated, and a transition is made to the first execution state 150b.
  • the first SC request 601 (NC—RD) is issued to the SCO (first SC request 601), the state transits to the first response waiting state 150c, and the response from the SCO (SN—RES—NC or SN— Wait for RES-AX).
  • the IZO reference control unit 150 Upon receiving SN-RES-NC or SN-RES-AX (first response SC order 602), the IZO reference control unit 150 transitions to the second execution state 150d.
  • SR-NC is issued to the system bus 200 corresponding to the designated SCn (second SC request 603), and the state transits to the second response wait state 150e.
  • response information from the target IZO device 500 is received via SCn (second response SC order 604), and the initial state 150a is restored.
  • the target IZO device 500 specified by the I / O address 152b does not exist, so a predetermined error processing is performed and the initial state 150a is restored. To do.
  • NC-BR NC-WR
  • NC-BW NC-BW
  • FIG. 9 is a sequence diagram showing an execution example of a transaction related to NC-RD as an example of IZO access transaction 600.
  • the CPU node 100 issues NC—RD to a specific SCO (system bus 200: SCREQ BUS0), and the target I / O address is added. Queries and matches the SC number where the IZO device 500 is present (first SC request 601)
  • the SC number of the system controller 300 having the target IZO device 500 under control is responded by SN—RES—NC (first response SC order 602).
  • the CPU node 100 Upon receiving this, the CPU node 100 sends an I / O device to the system controller 300 (system bus 200) of the SC number received in the first response SC order 602 by SR—NC.
  • the memory reference to the memory medium 400 is performed by a physical address, and a plurality of memory media 400 ( By assigning to the system controller 300), for example, 25
  • the number of signal lines on the bus between the CPU node 100 and the system controller 300 can be reduced as compared with a case where interleaving is performed centrally in one system controller 300.
  • the CPU node 100 can be processed at high speed by increasing the access to the memory medium 400 of the CPU node 100 without increasing the manufacturing cost of the system controller 300 or the information processing system including the system controller 300. Can fully demonstrate their abilities
  • the IZO device 500 (system controller 300: system bus 200) obtained is subjected to a two-step process of executing the actual cocoon request.
  • the memory address is Accurate I for multiple IZO devices 500 with IZO addresses mapped to
  • each CPU node 100 does not require a storage resource for storing attribution information and the like of the plurality of IZO devices 500 to the system controller 300, and also manages consistency of the attribution information. It is possible to achieve accurate access to a plurality of IZO devices 500 in which IZO addresses are mapped in the Moria address space that does not require complicated control.
  • FIG. 10 shows an implementation example of the CPU node 100 and the system controller 300 illustrated in FIG.
  • the CPU node 100 and the system controller 300 constituting the information processing system are configured by one or more system boards 10.
  • the system controller 300 behaves as one logical system controller 300 (SCn) by connecting a plurality of semiconductor chips 301 via the crossbar switch 11 or the like.
  • the SCO force enclosed by the dashed box in FIG. 10 corresponds to the SCO (system controller 300) illustrated in FIG.
  • a high memory bandwidth can be realized without complicating the configuration of the system controller connected to the central processing unit, and the processing capacity of the central processing unit can be used effectively. can do.
  • the configurations of the central processing unit and the information processing system are not limited to those exemplified in the above embodiment.

Abstract

 配下にメモリ媒体400、I/Oデバイス500を持つ複数のシステムコントローラ300を、複数のシステムバス200を介してCPUノード100に接続する。CPUノード100は、メモリアクセスを複数のシステムバス200(システムコントローラ300)に振り分けるメモリインタリーブを実行する。CPUノード100は、I/Oデバイス500に対するI/Oアクセスでは、最初に代表のシステムコントローラ300(SC0)に対して、目的のI/Oデバイス500が、どのシステムバス200(システムコントローラ300)上に存在するかを問い合わせ、SC0から応答されたシステムバス200に対して実際のI/Oアクセスを実行する。メモリマップドI/Oの場合において、CPUノード100がメモリインタリーブを実行する場合でも、CPUノード100がI/Oデバイス500の所在情報を管理する必要がない。

Description

明 細 書
中央処理装置、中央処理装置の制御方法、情報処理システム
技術分野
[0001] 本発明は、中央処理装置、中央処理装置の制御方法、情報処理システムに関に関 する。
背景技術
[0002] たとえば、情報処理システムにお 、て、中央処理装置 (CPUチップ)あたりの計算 能力は、半導体製造プロセス技術の進歩等に呼応して年々大きくなる傾向にある。 この中央処理装置の高 、計算能力を有効に利用するためには、メモリアクセスにお ける中央処理装置当たりのメモリバンド幅 (メモリアクセス速度)を大きくする必要があ る。
[0003] 従来では、中央処理装置に一つのシステムコントローラを接続し、このコントローラ が複数のメモリ媒体にアクセス要求を振り分けるインタリーブを行って 、た。従って、 従来技術では、インタリーブの状況を中央処理装置側では認識できな 、。
[0004] このため、中央処理装置当りのメモリバンド幅を十分確保するためには、中央処理 装置とシステムコントローラ間のバスを太くする(信号線の数を多くする)必要があり、 かつ、それに見合うように、システムコントローラとメモリ媒体間にも太いバスを用意す る必要が生じる。
[0005] この結果、システムコントローラに接続される信号線の本数は非常に大きなものとな る。このことが、より小さなコストでより高いシステム性能を得ようとする上で、大きな障 害となる。
発明の開示
[0006] このため、本発明では、後述のように、中央処理装置と複数のシステムコントローラ との間に複数のバス (WAY)を設けて、中央処理装置にインタリーブを行わせること で、個々のシステムコントローラに接続される信号線の本数を削減することを開示す る。
[0007] 中央処理装置に複数のバスを接続して、当該中央処理装置に直接的にインタリー ブを行わせることにより、いくつかの技術的課題が生じる。
すなわち、中央処理装置は、アクセスしたい iZoデバイスに応じて、当該 ιΖοデ バイスが存在する適切なバスに ιΖο要求パケットを発行しなければならない。
[0008] 主記憶はアドレスでインタリーブされるため、アドレス力 アクセス対象メモリが接続 されるシステムコントローラ (バス)の番号を求める変換処理は比較的単純に実現する ことが可能である。
[0009] しかし、メモリマップド ΊΖΟにおける、アドレスとアクセス対象 IZOデバイスとの対応 については、より高い自由度が要求されることが多い。
このため、全ての中央処理装置に設定レジスタを設け、どの iZoデバイスがどのバ ス (WAY)上に存在するかの構成情報を設定することが考えられるが、複数の中央 処理装置が存在するシステムでは現実的ではない。
[0010] なぜなら、複数の中央処理装置の各々に同じ内容の設定情報をもたなければなら ず、中央処理装置内の記憶資源の無駄が多くなり、中央処理装置の製造コストの増 大を招くという技術的課題を生じる。
[0011] さらに、複数の CPU (=中央処理装置)間で構成情報の同一性 (一貫性)を確保す るための管理コストが高くなるという技術的課題も生じる。
そこで、本発明では、以下の様にしてこれらの技術的課題を克服する。
[0012] 本発明の目的は、中央処理装置に接続されるシステムコントローラの構成を複雑化 することなく、中央処理装置の処理能力を有効に利用可能にすることにある。
本発明の他の目的は、中央処理装置内の構造や、管理を複雑化することなぐ低コ ストにて、中央処理装置自体力 Sメモリインタリーブを行うことによる処理性能の向上を 実現することにある。
[0013] 本発明の第 1の観点は、複数のバスとの間で情報の入出力を行うバス制御手段と、 メモリアドレスに応じて、複数の前記ノ スにメモリアクセス要求を振り分けるメモリァク セス制御手段と、
前記ノ スを介して外部の入出力デバイスにアクセスする入出力アクセス制御手段と を含む中央処理装置を提供する。 [0014] 本発明の第 2の観点は、第 1の観点に記載の中央処理装置において、
前記入出力アクセス制御手段は、
特定の前記バスを介して、アクセス対象の前記入出力デバイスカ^、ずれの前記バ ス上に存在するかを問い合わせる第 1ステップと、
前記システムコントローラ力 応答された前記バスを用いて前記入出力デバイスに 対するアクセスを実行する第 2ステップと、
を実行する中央処理装置を提供する。
[0015] 本発明の第 3の観点は、第 1の観点に記載の中央処理装置において、
前記メモリアクセス制御手段は、物理的な前記メモリアドレスに応じて複数の前記バ スに個別に接続された複数のメモリ媒体に並行してアクセスするメモリインタリーブを 行う中央処理装置を提供する。
[0016] 本発明の第 4の観点は、中央処理装置を複数のバスに接続するステップと、
前記中央処理装置が、メモリアドレスに応じて、複数のメモリアクセス要求を前記バ ス上に存在するメモリ媒体に振り分けるメモリインタリーブを実行するステップと、 を含む中央処理装置の制御方法を提供する。
[0017] 本発明の第 5の観点は、第 4の観点に記載の中央処理装置の制御方法において、 さらに、前記中央処理装置が、特定の前記バスを介して、アクセス対象の前記入出 力デバイスがいずれの前記バス上に存在するかを問い合わせるステップと、 前記中央処理装置が、前記システムコントローラから応答された前記バスを用いて 前記入出力デバイスに対するアクセスを実行するステップと、
を含む中央処理装置の制御方法を提供する。
[0018] 本発明の第 6の観点は、中央処理装置と、
メモリ媒体および入出力デバイスの少なくとも一方を配下に持つ複数のシステムコ ントローラと、
前記中央処理装置と前記システムコントローラの各々とを接続する複数のバスと、 前記中央処理装置に設けられ、メモリアドレスに応じて、複数のメモリアクセス要求 を前記バス上に存在するメモリ媒体に振り分けるメモリアクセス制御手段と、 を含む情報処理システムを提供する。 [0019] 本発明の第 7の観点は、第 6の観点に記載の情報処理システムにおいて、 前記中央処理装置には、さらに、
特定の前記バスを介して、アクセス対象の前記入出力デバイスカ^、ずれの前記バ ス上に存在するかを問い合わせる第 1ステップと、
前記システムコントローラ力 応答された前記バスを用いて前記入出力デバイスに 対するアクセスを実行する第 2ステップと、
を実行する入出力アクセス制御手段を含む情報処理システムを提供する。
[0020] 本発明の第 8の観点は、第 6の観点に記載の情報処理システムにおいて、
複数の中央処理装置の各々が、複数の前記バスを介して、複数の前記システムコ ントローラの各々と接続されて 、る情報処理システムを提供する。
[0021] 本発明の第 9の観点は、第 6の観点に記載の情報処理システムにおいて、
個々の前記システムコントローラは、複数の半導体チップ力 なる情報処理システム を提供する。
[0022] 本発明では、中央処理装置に複数のバスを接続し、中央処理装置自体カ^モリイ ンタリーブを行うようにしたので、中央処理装置とシステムコントローラとの間に、必要 以上に信号線の本数の多 、太 、バスを設ける必要がな 、。
[0023] このため、システムコントローラを構成する半導体チップ等の製造コストを下げつつ 高 、メモリバンド幅を実現して、中央処理装置の処理能力を十分に発揮させることが 可會 になる。
[0024] また、本発明では、入出力デバイスのアクセスに際しては、いずれのバス上に目的 の入出力デバイスが存在するかを、特定のバスを介して確認した後、応答された入 出力デバイスに対して入出力アクセスを実行するので、複数の中央処理装置の各々 に共通の構成情報を設定するための特別な記憶資源を設ける必要がなぐさらに、 当該構成情報の一貫性を管理する煩雑な操作を行う必要もない。
[0025] このため、中央処理装置内の構造や、管理を複雑化することなぐ低コストにて、中 央処理装置自体カ モリインタリーブを行うことによる処理性能の向上を実現すること ができる。
[0026] 換言すれば、中央処理装置のレベルでのメモリインタリーブによる高性能化と、当 該中央処理装置、システムコントローラ、入出力デバイス等を含む情報処理システム における柔軟な構成変更を両立させることが可能になる。
図面の簡単な説明
[0027] [図 1]本発明の一実施の形態である中央処理装置を含む情報処理システムの構成の 一例を示す概念図である。
[図 2]本発明の一実施の形態である中央処理装置に対するバスの接続状態の一例 を示す概念図である。
[図 3]本発明の一実施の形態である中央処理装置の内部構成の一例を示すブロック 図である。
[図 4]本発明の一実施の形態である中央処理装置の内部構成の一例を示すブロック 図である。
[図 5]本発明の一実施の形態である中央処理装置におけるメモリインタリーブ方法の 一例を示す概念図である。
[図 6]本発明の一実施の形態である中央処理装置における IZOアクセスの作用の一 例を示す概念図である。
[図 7]本発明の一実施の形態である中央処理装置とシステムコントローラとの間にお ける ΙΖΟアクセストランザクションの一例を示す概念図である。
[図 8]本発明の一実施の形態である中央処理装置における ΙΖΟアクセスの作用の一 例を示す状態遷移図である。
[図 9]本発明の一実施の形態である中央処理装置とシステムコントローラとの間にお ける IZOアクセストランザクションの一例を示すシーケンス図である。
[図 10]本発明の一実施の形態である中央処理装置を含む情報処理システムの実装 例を示す概念図である。
発明を実施するための最良の形態
[0028] 以下、図面を参照しながら、本発明の実施の形態について詳細に説明する。
図 1は、本発明の一実施の形態である中央処理装置を含む情報処理システムの構 成の一例を示す概念図である。図 2は、本実施の形態の中央処理装置に対するバス の接続状態の一例を示す概念図である。 [0029] 図 1に例示されるように、本実施の形態の情報処理システムは、複数の CPUノード 100、システムコントローラ 300、メモリ媒体 400、 IZOデバイス 500を含んでいる。
[0030] 個々のシステムコントローラ 300の配下には、メモリ媒体 400と IZOデバイス 500が 接続されている。個々のシステムコントローラ 300は、配下のメモリ媒体 400、 IZOデ ノ イス 500と、個々の CPUノード 100との間における情報の授受を制御する。
[0031] IZOデバイス 500は、メモリアドレス空間にマッピングされ、メモリマップド ΊΖΟによ つて CPUノード 100から IZOデバイス 500へのアクセスが実行される。
複数のシステムコントローラ 300 (SC0〜3)を代表する SCOは、複数の IZOデバイ ス 500力 どのシステムコントローラ 300 (システムバス 200)の配下に存在するかの 情報が設定される構成管理テーブル 310を備えている。 SCOは、後述のような CPU ノード 100からの問い合わせに対して、この構成管理テーブル 310を参照して応答 する。
[0032] メモリ媒体 400は、たとえば、半導体メモリ等の記憶媒体 (メモリバンク)と、それを制 御するメモリコントローラを含んでいる。個々のシステムコントローラ 300の配下のメモ リ媒体 400は、互いに物理的に独立しており、並行なアクセス動作が可能である。
[0033] 本実施の形態の場合、個々のシステムコントローラ 300 (SC0〜SC3)は、システム ノ ス 200を介して、複数の CPUノード 100の各々と接続されている。
個々の CPUノード 100は、後述のように、複数のシステムバス 200 (システムコント口 ーラ 300)にメモリアクセス要求を振り分けることで、個々のシステムコントローラ 300 の配下の複数のメモリ媒体 400との間で並列的にメモリアクセスを行うメモリインタリー ブを行う機能を備えている。
[0034] すなわち、本実施の形態の場合には、 CPUノード 100のレベルで、メモリ媒体 400 に対するアクセスにおけるメモリインタリーブを制御する。
図 2に例示されるよう、個々の CPUノード 100と複数のシステムコントローラ 300の 各々との間に設けられたシステムバス 200は、 SCリクエストバス 210 (SCREQ—BU Sn)と、 SCオーダバス 220 (SCODR— BUSn)を含んで!/、る。
[0035] SCリクエストバス 210は、 CPUノード 100からシステムコントローラ 300に対して情 報転送を行う。 SCリクエストバス 210は、 TAGビット 211 (SCREQ BUSn TAG) 、データビット 212 (SCREQ— BUSn)、 ECCビット 213 (SCREQ— BUSn— ECC) で構成される。
[0036] SCオーダバス 220は、システムコントローラ 300から CPUノード 100に対して情報 転送を行うために用いられる。 SCオーダバス 220は、 TAGビット 221 (SCODR— B USn一 TAG)、データビット 222 (SCODR一 BUSn)、 ECCビット 223 (SCODR一 BUSn— ECC)で構成される。
[0037] nは、接続先の SCO〜3 (システムコントローラ 300)を示す。
本実施の形態の場合、一例として、 SCREQ— BUSn— TAGは 3ビット、 SCREQ —BUSnは 24ビット、 SCREQ— BUSn— ECCが 7ビットである。
[0038] また、 SCODR_BUSn_TAGは 3ビット、 SCODR_BUSnは 40ビット、 SCOD R_BUSn_ECCが 7ビットである。
図 3は、本実施の形態の CPUノード 100の内部構成の一例を示すブロック図である
[0039] 本実施の形態の CPUノード 100は、一つまたは複数のプロセッサコア 110、キヤッ シュメモリ 120、システムバス制御部 130、を含んでいる。
プロセッサコア 110は、算術論理演算ユニット (ALU)等の演算機能や制御機能を 有する。
[0040] キャッシュメモリ 120は、プロセッサコア 110と外部との間で授受される情報を一時 的に記憶する。
システムバス制御部 130は、 CPUノード 100に接続される複数のシステムバス 200 との間における情報の授受を制御する。
[0041] 本実施の形態の場合、システムバス制御部 130には、メモリ参照制御部 140および IZO参照制御部 150が設けられて 、る。
メモリ参照制御部 140は、複数のシステムコントローラ 300 (システムバス 200)の各 々の配下に存在する複数のメモリ媒体 400に対するメモリインタリーブを制御する。
[0042] すなわち、本実施の形態では、 CPUノード 100のレベルでメモリのインタリーブを制 御する。
図 4に例示されるように、本実施の形態の IZO参照制御部 150は、インタリーブ制 御部 141、 WAYモード設定レジスタ 142、メモリアクセスキュー 143を含んでいる。
[0043] メモリアクセスキュー 143は、個々のシステムバス 200 (システムコントローラ 300)が 接続されるパケット生成器 131に対応して配置されている。
そして、インタリーブ制御部 141は、参照対象のメモリの物理アドレス(Physical a ddress ;PA) (この場合、 SCREQ— BUSnの下位 2ビット、システムバス 200の全体 でみると、下位側から 8番目と 9番目の PA[9 : 8]の 2ビット)によって、個々のシステム バス 200に対応したメモリアクセスキュー 143にアクセス要求を振り分けることで、メモ リインタリーブを行う。
[0044] WAYモード設定レジスタ 142には、メモリ媒体 400の物理アドレスと、対応するシス テムコントローラ 300の関係が定義される。
すなわち、図 5に例示されるように、 WAYモード設定レジスタ 142には、物理アドレ ス PA[9: 8]の 2ビットに応じて、システムコントローラ 300 (SC)が 4つの場合(図 1の 構成)、およびシステムコントローラ 300 (SC)が二つの場合(図 1の構成から、ォプシ ヨンの SC2、 SC3を取り除いた構成)、の各々の場合について、 SCREQ— BUSnの V、ずれに振り分けるかが定義される。
[0045] インタリーブ制御部 141は、 WAYモード設定レジスタ 142を参照して、メモリァクセ ス要求を各システムコントローラ 300 (SC0〜3または SC0〜1)に振り分ける。
[0046] ところで、本実施の形態のように、 CPUノード 100のレベルでメモリインタリーブを行 う場合、 IZOデバイス 500力 メモリアドレス空間にマッピングされている場合には、 C PUノード 100は、どのシステムコントローラ 300の配下にどの ΙΖΟデバイス 500が存 在するかを予め知ることはできな!、。
[0047] そこで、本実施の形態の場合には、 ΙΖΟ参照制御部 150により、最初に、代表の システムコントローラ 300 (この場合、 SCO)に対して、 目的の I/Oデバイス 500の所 在(IZOデバイス 500が存在するシステムバス 200 (システムコントローラ 300) )を問 い合わせ、次に、 SCOから応答されたシステムバス 200 (システムコントローラ 300)に 対して、実際に IZO要求を発行することで、 目的の ΙΖΟデバイス 500に対する ΙΖΟ アクセスを実現する。
[0048] すなわち、図 6に例示されるように、本実施の形態の ΙΖΟ参照制御部 150には、 I ZOリクエストキュー 151が設けられて!/、る。
この I/Oリクエストキュー 151には、プロセッサコア 110の側から I/Oリクエストフレ ーム 152力 ΙΖΟ要求の発生順に格納される。 ΙΖΟリクエストフレーム 152は、パケ ット生成器 131でパケット化されて、システムバス 200を介してシステムコントローラ 30 0に送られる。
[0049] この I/Oリクエストフレーム 152は、有効フラグ 152a、 I/Oアドレス 152b、命令コ ード 152c、バイトマスク 152d、状態変数 152e、 I/O要求先 SC番号 152f、 I/Oデ ータ 152g、を含む。
[0050] 有効フラグ 152aは、 I/Oリクエストキュー 151に書き込まれた I/Oリクエストフレー ム 152を実行可能にする力否かを制御する情報である。
IZOアドレス 152bは、 目的の IZOデバイス 500のアドレスである。
[0051] 命令コード 152cは、 IZOデバイス 500に対する命令が設定される。
バイトマスク 152dは、 SCREQ— BUSnの 24ビット(3バイト)のうちのどれに I/Oデ ータ 152gを割り当てるかを示す情報である。
[0052] 状態変数 152eは、上述のように、 2回に分けて実行される I/Oアクセスの進行状 態を管理するための情報である。
IZO要求先 SC番号 152fには、最初の SCOへの問い合わせに対して応答された I ZOデバイス 500の所在を示す SC番号(0〜3)が設定される。
[0053] 図 7は、 IZO参照制御部 150によって実行される IZOアクセストランザクション 600 の一例を示す概念図である。
本実施の形態の I/Oアクセストランザクション 600は、第 1SCリクエスト 601および 第 1応答 SCオーダ 602と、第 2SCリクエスト 603および第 2応答 SCオーダ 604、力ら なる。
[0054] 第 1SCリクエスト 601は、 CPUノード 100から特定の SCOへの、 I/Oデバイス 500 の所在の問!、合わせを示す。
本実施の形態の場合、第 1SCリクエスト 601では、トランザクション名 600aとして、 NC—RD;non— cache read
NC― BR; non― cache block read NC—WR;non— cache write
NC― BW; non― cache block write
の 4種類が定義され、全て、発行元 600bは CPU (CPUノード 100)、発行先 600cは 特定の SCO (システムコントローラ 300)である。
[0055] NC— RDは、目的の IZOデバイス 500に対する、バイト単位(たとえば、 1〜16バ イト)の ΙΖΟデータ 152gの読み出し要求である。
NC— BDは、目的の IZOデバイス 500に対する、ブロック単位(たとえば 64バイト) の ΙΖΟデータ 152gの読み出し要求である。
[0056] NC—WRは、目的の IZOデバイス 500に対する、バイト単位(たとえば、 1〜16バ イト)の IZOデータ 152gの書き込み要求である。
NC— BWは、目的の IZOデバイス 500に対する、ブロック単位(たとえば 64バイト) の IZOデータ 152gの書き込み要求である。
[0057] 第 1応答 SCオーダ 602は、この第 1SCリクエスト 601に対する SCOから応答である
。この時、 IZO要求先 SC番号 152fが返される。
この第 1応答 SCオーダ 602では、トランザクション名 600aとして、
SN— RE¾— NC ; ¾noop result oi non― cacheable access
SN— RES— AX; Snoop result (address exception)
の二つがある。
[0058] 発行元 600bは SCOで、発行先 600cは、 CPU (CPUノード 100)である。
SN— RES— NCは、問い合わせられた I/Oデバイス 500が存在するシステムコン トローラ 300の番号を応答する。
[0059] SN—RES—AXは、問い合わせの指定アドレスに該当する I/Oデバイス 500がな かった場合に応答される。
第 2SCリクエスト 603は、 IZO要求先 SC番号 152fで特定される任意のシステムコ ントローラ 300 (SCn)の配下に存在する目的の IZOデバイス 500に対する IZO要 求の実行である。この第 2SCリクエスト 603では、トランザクション名 600aとして、
SR—NC ; slave read non— cache
SR—NB : slave read non— cache block SW—NC ; Slave write non— cache
SW—NB ; Slave write non— cache block
の 4つがある。
[0060] SR— NCは、 IZOデバイス 500に対するバイト単位の読み出し要求である。
SR—NBは、 IZOデバイス 500に対するブロック単位の読み出し要求である。 SW— NCは、 IZOデバイス 500に対するバイト単位の書き込み要求である。
SW— ΝΒは、 IZOデバイス 500に対するブロック単位の書き込み要求である。
[0061] いずれも、発行元 600bは CPUノード 100である。
また、発行先 600cは第 1応答 SCオーダ 602で SCOから応答された SC番号(SC —WAY)である。すなわち、発行先 600cにおいて、 BUS [1 : 0]指定とあるのは、 S N— RES— NCで指定された SC— WAYに対して IZO要求を発行しなければなら ないことを示す。
[0062] 第 2応答 SCオーダ 604は、この実際の I/O要求に対する I/Oデバイス 500 (SCn )力もの応答である。この第 2応答 SCオーダ 604では、トランザクション名 600aとして
DOW=SR-NC-RTN
DOW=SR-NB-RTN
DOW=CMD— CPLT
の 3種類がある。
[0063] DOW=SR— NC— RTNは、 SR— NC (non— cacheable read)に対する応答 であり、 IZOデバイス 500から読み出されたバイトデータが返される。
[0064] DOW=SR—NB—RTNは、 SR—NB (non— cacheable block read)に対す る応答であり、 IZOデバイス 500から読み出されたブロックデータが返される。
[0065] DOW=CMD— CPLTは、 SW—NC、 SW—NB (write/block write)に対す る応答である。この Writeタイプに対する応答は、 IZOデバイス 500に対するデータ 書き込みが完了した否かを応答するものであり、 Writeタイプの ΙΖΟリクエストの解放 制御のために存在する。
[0066] なお、この第 2応答 SCオーダ 604における発行元 600bは、上述の第 2SCリクエス ト 603の発行先と同一である。たとえば「SR— NCと同じ」と書いてあるのは、 SR— N Cが発行された SCnと同じところ力 第 2応答 SCオーダ 604 (DOW)が返ってくること を指している。
[0067] 図 8は、 IZO参照制御部 150における、上述の I/Oアクセストランザクション 600を 実行する際の状態遷移の一例を示す状態遷移図である。
以下では、 IZOアクセストランザクション 600の一例として、 NC—RDを実行する場 合を例に説明する。
[0068] I/Oリクエストフレーム 152が I/Oリクエストキュー 151に書き込まれた時は初期状 態 150aにある。
そして、当該 IZOリクエストキュー 151による IZO処理の実行が可能になると、有 効フラグ 152aが有効化され、第 1実行状態 150bに遷移する。
[0069] そして、第 1SCリクエスト 601 (NC— RD)を SCOに発行し(第 1SCリクエスト 601)、 第 1応答待ち状態 150cに遷移して、 SCOからの応答(SN— RES— NCまたは SN— RES-AX)を待つ。
[0070] IZO参照制御部 150は、 SCO力ら、 SN— RES— NCまたは SN— RES— AXを受 信すると (第 1応答 SCオーダ 602)、第 2実行状態 150dに遷移する。
SN— RES— NCを受信した場合は、指定された SCnに対応するシステムバス 200 に SR— NCを発行し (第 2SCリクエスト 603)、第 2応答待ち状態 150eに遷移する。
[0071] そして、 SCnを経由して目的の IZOデバイス 500からの応答情報を受信し (第 2応 答 SCオーダ 604)、初期状態 150aに復帰する。
また、第 2実行状態 150dでは、 SN— RES— AXを受け取った場合、 I/Oアドレス 152bで指定した目的の IZOデバイス 500が存在しないので、所定のエラー処理を 行って、初期状態 150aに復帰する。
[0072] 他の NC— BR、 NC—WR、 NC— BWも同様である。
図 9は、 IZOアクセストランザクション 600の一例として NC—RDに関係するトラン ザクシヨンの実行例を示すシーケンス図である。
[0073] IZOアクセストランザクション 600にお!/、て、 CPUノード 100から、特定の SCO (シ ステムバス 200 : SCREQ BUS0)に対して NC—RDを発行して、 目的の I/Oアド レスの IZOデバイス 500の存在する SC番号を問 、合わせる(第 1SCリクエスト 601)
[0074] そして、 SCOから発行元の CPUノード 100に対して、 SCODR— BUS0を介して、
SN— RES— NCによって、 目的の IZOデバイス 500を配下に持つシステムコント口 ーラ 300の SC番号が応答される(第 1応答 SCオーダ 602)。
[0075] これを受けた CPUノード 100は、第 1応答 SCオーダ 602で受信した SC番号のシス テムコントローラ 300 (システムバス 200)に対して、 SR— NCによって、 I/Oデバイス
500に対する IZO要求を発行する(第 2SCリクエスト 603)。
[0076] そして、この第 2SCリクエスト 603 (SR-NC)を受けた I/Oデバイス 500は、 DOW
= SR—NC—RTNによって、要求されたデータを、要求元の CPUノード 100に応答 する(第 2応答 SCオーダ 604)。
[0077] 以上説明したように、本実施の形態では、 CPUノード 100に備えられたメモリ参照 制御部 140において、メモリ媒体 400へのメモリ参照については、物理アドレスで、複 数のメモリ媒体 400 (システムコントローラ 300)に振り分けることにより、たとえば、 25
6バイト単位でインタリーブする。
[0078] これにより、一つのシステムコントローラ 300において集中してインタリーブを行わせ る場合に比較して、 CPUノード 100とシステムコントローラ 300との間のバスの信号線 の数を削減できる。
[0079] すなわち、システムコントローラ 300や、当該システムコントローラ 300を含む情報処 理システムの製造コストを増大させることなぐ CPUノード 100のメモリ媒体 400への アクセスを高速ィ匕して、 CPUノード 100の処理能力を十分に発揮させることができる
[0080] また、 CPUノード 100から IZOデバイス 500に対して実行される IZO参照アクセス では、代表のシステムコントローラ 300 (SCO)に対して問い合わせることで、 目的の I ZOデバイス 500の位置を知る工程と、得られた IZOデバイス 500 (システムコント口 ーラ 300:システムバス 200)に対して実際の ΙΖΟ要求を実行する工程の 2段階を経 て、 ΙΖΟ要求を実行する。
[0081] これにより、 CPUノード 100においてメモリインタリーブを行う場合でも、メモリアドレ ス空間に IZOアドレスがマッピングされた複数の IZOデバイス 500に対する的確な I
Zoアクセスを実現できる。
[0082] すなわち、個々の CPUノード 100において、複数の IZOデバイス 500の、システム コントローラ 300に対する帰属情報等を記憶するための記憶資源を必要とすることな ぐまた、当該帰属情報の一貫性の管理等の煩雑な制御を必要とすることなぐモリア ドレス空間に IZOアドレスがマッピングされた複数の IZOデバイス 500に対する的確 な ιΖοアクセスを実現できる。
[0083] なお、図 1に例示した CPUノード 100、システムコントローラ 300の実装例を、図 10 に示す。
図 10の例では、情報処理システムを構成する CPUノード 100およびシステムコント ローラ 300は、 1枚以上のシステムボード 10で構成される。
[0084] システムコントローラ 300は、複数の半導体チップ 301が、クロスバスイッチ 11等を 介して接続されることにより、ひとつの論理的なシステムコントローラ 300 (SCn)として 振舞う。
[0085] たとえば、図 10において破線の箱でかこまれた SCO力 図 1に例示した SCO (シス テムコントローラ 300)に相当する。
産業上の利用可能性
[0086] 本発明によれば、中央処理装置に接続されるシステムコントローラの構成を複雑ィ匕 することなく、高いメモリバンド幅を実現して、中央処理装置の処理能力を有効に利 用可能にすることができる。
[0087] また、中央処理装置内の構造や、管理を複雑化することなぐ低コストにて、中央処 理装置自体カ モリインタリーブを行うことによる処理性能の向上を実現することがで きる。
[0088] なお、本発明は、上述の実施の形態に例示した構成に限らず、その趣旨を逸脱し な!、範囲で種々変更可能であることは言うまでもな 、。
たとえば、中央処理装置や情報処理システムの構成は、上述の実施の形態に例示 したものに限定されない。

Claims

請求の範囲
[1] 複数のバスとの間で情報の入出力を行うバス制御手段と、
メモリアドレスに応じて、複数の前記ノ スにメモリアクセス要求を振り分けるメモリァク セス制御手段と、
前記ノ スを介して外部の入出力デバイスにアクセスする入出力アクセス制御手段と を含むことを特徴とする中央処理装置。
[2] 請求項 1記載の中央処理装置において、
前記入出力アクセス制御手段は、
特定の前記バスを介して、アクセス対象の前記入出力デバイスカ^、ずれの前記バ ス上に存在するかを問い合わせる第 1ステップと、
前記システムコントローラ力 応答された前記バスを用いて前記入出力デバイスに 対するアクセスを実行する第 2ステップと、
を実行することを特徴とする中央処理装置。
[3] 請求項 1記載の中央処理装置において、
前記メモリアクセス制御手段は、物理的な前記メモリアドレスに応じて複数の前記バ スに個別に接続された複数のメモリ媒体に並行してアクセスするメモリインタリーブを 行うことを特徴とする中央処理装置。
[4] 中央処理装置を複数のバスに接続するステップと、
前記中央処理装置が、メモリアドレスに応じて、複数のメモリアクセス要求を前記バ ス上に存在するメモリ媒体に振り分けるメモリインタリーブを実行するステップと、 を含むことを特徴とする中央処理装置の制御方法。
[5] 請求項 4記載の中央処理装置の制御方法において、
さらに、前記中央処理装置が、特定の前記バスを介して、アクセス対象の前記入出 力デバイスがいずれの前記バス上に存在するかを問い合わせるステップと、 前記中央処理装置が、前記システムコントローラから応答された前記バスを用いて 前記入出力デバイスに対するアクセスを実行するステップと、
を含むことを特徴とする中央処理装置の制御方法。
[6] 中央処理装置と、
メモリ媒体および入出力デバイスの少なくとも一方を配下に持つ複数のシステムコ ントローラと、
前記中央処理装置と前記システムコントローラの各々とを接続する複数のバスと、 前記中央処理装置に設けられ、メモリアドレスに応じて、複数のメモリアクセス要求 を前記バス上に存在するメモリ媒体に振り分けるメモリアクセス制御手段と、 を含むことを特徴とする情報処理システム。
[7] 請求項 6記載の情報処理システムにお 、て、
前記中央処理装置には、さらに、
特定の前記バスを介して、アクセス対象の前記入出力デバイスカ^、ずれの前記バ ス上に存在するかを問い合わせる第 1ステップと、
前記システムコントローラ力 応答された前記バスを用いて前記入出力デバイスに 対するアクセスを実行する第 2ステップと、
を実行する入出力アクセス制御手段を含むことを特徴とする情報処理システム。
[8] 請求項 6記載の情報処理システムにお 、て、
複数の中央処理装置の各々が、複数の前記バスを介して、複数の前記システムコ ントローラの各々と接続されて ヽることを特徴とする情報処理システム。
[9] 請求項 6記載の情報処理システムにお 、て、
個々の前記システムコントローラは、複数の半導体チップ力 なることを特徴とする情 報処理システム。
PCT/JP2006/303649 2006-02-27 2006-02-27 中央処理装置、中央処理装置の制御方法、情報処理システム WO2007097036A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP06714786.8A EP1990725B1 (en) 2006-02-27 2006-02-27 Central processing unit, central processing unit control method, and information processing system
JP2008501586A JP4774099B2 (ja) 2006-02-27 2006-02-27 演算処理装置、情報処理装置及び演算処理装置の制御方法
PCT/JP2006/303649 WO2007097036A1 (ja) 2006-02-27 2006-02-27 中央処理装置、中央処理装置の制御方法、情報処理システム
US12/199,004 US8015326B2 (en) 2006-02-27 2008-08-27 Central processing apparatus, control method therefor and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2006/303649 WO2007097036A1 (ja) 2006-02-27 2006-02-27 中央処理装置、中央処理装置の制御方法、情報処理システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/199,004 Continuation US8015326B2 (en) 2006-02-27 2008-08-27 Central processing apparatus, control method therefor and information processing system

Publications (1)

Publication Number Publication Date
WO2007097036A1 true WO2007097036A1 (ja) 2007-08-30

Family

ID=38437095

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/303649 WO2007097036A1 (ja) 2006-02-27 2006-02-27 中央処理装置、中央処理装置の制御方法、情報処理システム

Country Status (4)

Country Link
US (1) US8015326B2 (ja)
EP (1) EP1990725B1 (ja)
JP (1) JP4774099B2 (ja)
WO (1) WO2007097036A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11334283B2 (en) 2018-04-06 2022-05-17 Robert Bosch Gmbh Method for providing application data of at least one application executable on a control unit of a vehicle, method for calibrating a control unit, control unit and evaluation unit

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0520182A (ja) * 1991-07-17 1993-01-29 Nec Corp 情報処理システム
JPH0764848A (ja) * 1993-08-23 1995-03-10 Hitachi Ltd 計算機システムおよび計算機システムの構成変更方法
JPH10254820A (ja) * 1997-03-06 1998-09-25 Canon Inc バス制御装置およびバス制御装置のバス制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3307984A (en) * 1962-12-07 1967-03-07 Trw Semiconductors Inc Method of forming diode with high resistance substrate
US4207609A (en) * 1978-05-08 1980-06-10 International Business Machines Corporation Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system
AU541189B2 (en) * 1980-02-11 1984-12-20 Data General Corporation Data processing system
US4435755A (en) * 1981-12-28 1984-03-06 International Business Machines Corporation Balanced channel finding method
US4697232A (en) * 1984-11-30 1987-09-29 Storage Technology Corporation I/O device reconnection in a multiple-CPU, dynamic path allocation environment
JPH05252228A (ja) * 1992-03-02 1993-09-28 Mitsubishi Electric Corp データ伝送装置及びその通信路管理方法
US5590252A (en) * 1992-04-29 1996-12-31 Canon Kabushiki Kaisha Video processor system and audio processor system
US5542055A (en) * 1993-05-28 1996-07-30 International Business Machines Corp. System for counting the number of peripheral buses in each hierarch connected to primary bus for creating map of peripheral buses to locate peripheral devices
ATE195027T1 (de) * 1994-02-10 2000-08-15 Elonex I P Holdings Limited Verzeichnis für ein-/ausgangsdecoder
US5958024A (en) * 1997-08-29 1999-09-28 Advanced Micro Devices, Inc. System having a receive data register for storing at least nine data bits of frame and status bits indicating the status of asynchronous serial receiver
US6145028A (en) * 1997-12-11 2000-11-07 Ncr Corporation Enhanced multi-pathing to an array of storage devices
US6356991B1 (en) * 1997-12-31 2002-03-12 Unisys Corporation Programmable address translation system
US6185654B1 (en) * 1998-07-17 2001-02-06 Compaq Computer Corporation Phantom resource memory address mapping system
US6850997B1 (en) * 2000-09-27 2005-02-01 International Business Machines Corporation System, method, and program for determining the availability of paths to a device
US6957219B1 (en) * 2001-11-15 2005-10-18 Microsoft Corporation System and method of pipeline data access to remote data
US7406039B2 (en) * 2002-02-26 2008-07-29 Dell Products L.P. System and method for a failover protocol in storage area network controllers
JP3848587B2 (ja) * 2002-03-15 2006-11-22 株式会社日立製作所 情報処理装置および通信路選択方法
US20050138276A1 (en) * 2003-12-17 2005-06-23 Intel Corporation Methods and apparatus for high bandwidth random access using dynamic random access memory
JP2005301880A (ja) * 2004-04-15 2005-10-27 Hitachi Ltd 計算機システムにおけるデータ入出力処理方法、ストレージ装置、ホスト計算機、および計算機システム、
JP4963808B2 (ja) * 2005-08-05 2012-06-27 株式会社日立製作所 記憶制御システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0520182A (ja) * 1991-07-17 1993-01-29 Nec Corp 情報処理システム
JPH0764848A (ja) * 1993-08-23 1995-03-10 Hitachi Ltd 計算機システムおよび計算機システムの構成変更方法
JPH10254820A (ja) * 1997-03-06 1998-09-25 Canon Inc バス制御装置およびバス制御装置のバス制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HARADA H. ET AL.: "90 Nendai Zenhan o Ninau Shinsedai no Ogata Han'yoki", NIKKEI COMPUTER, no. 237, 15 October 1990 (1990-10-15), pages 46 - 53, XP003017233 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11334283B2 (en) 2018-04-06 2022-05-17 Robert Bosch Gmbh Method for providing application data of at least one application executable on a control unit of a vehicle, method for calibrating a control unit, control unit and evaluation unit

Also Published As

Publication number Publication date
US20080320201A1 (en) 2008-12-25
EP1990725A4 (en) 2010-08-25
JP4774099B2 (ja) 2011-09-14
EP1990725B1 (en) 2016-08-10
EP1990725A1 (en) 2008-11-12
US8015326B2 (en) 2011-09-06
JPWO2007097036A1 (ja) 2009-07-09

Similar Documents

Publication Publication Date Title
JP6953488B2 (ja) ハイブリッドメモリキューブシステム相互接続ディレクトリベースキャッシュコヒーレンス方法
USRE49273E1 (en) Switch and memory device
JP6005835B2 (ja) マルチキャストdmaおよび統合されたアドレス空間を有するストレージシステム
KR102466353B1 (ko) SSD 스토리지의 NVMe 명령간 연관을 위한 시스템 및 방법
TWI249671B (en) Method and system for controlling memory accesses to memory modules having a memory hub architecture
TW201905714A (zh) 以輔助處理器記憶體進行儲存裝置的直接輸入輸出操作的計算系統操作方法、計算系統、車輛及電腦可讀媒體
JP3807250B2 (ja) クラスタシステム、コンピュータ及びプログラム
US11726701B2 (en) Memory expander, heterogeneous computing device using memory expander, and operation method of heterogenous computing
US11681553B2 (en) Storage devices including heterogeneous processors which share memory and methods of operating the same
CN112543925A (zh) 用于使用专用低延迟链路的多个硬件加速器的统一地址空间
KR102212269B1 (ko) I/o 패킷 압축을 위한 레지스터 파일
US11741034B2 (en) Memory device including direct memory access engine, system including the memory device, and method of operating the memory device
CN112540941A (zh) 一种数据转发芯片及服务器
US20230359396A1 (en) Systems and methods for processing commands for storage devices
US20220137864A1 (en) Memory expander, host device using memory expander, and operation method of sever system including memory expander
JP4774099B2 (ja) 演算処理装置、情報処理装置及び演算処理装置の制御方法
JP4431492B2 (ja) 複数のコヒーレンシー・グラニュールをサポートするデータ転送ユニット
US20220137998A1 (en) Storage virtualization device supporting virtual machine, operation method thereof, and operation method of system having the same
WO2011030498A1 (ja) データ処理装置及びデータ処理方法
KR20220014272A (ko) 복사 명령 처리 시스템 및 방법
WO2003048955A1 (fr) Systeme multiprocesseur

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref document number: 2008501586

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2006714786

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2006714786

Country of ref document: EP