JP4760301B2 - マルチプロセッサシステム - Google Patents

マルチプロセッサシステム Download PDF

Info

Publication number
JP4760301B2
JP4760301B2 JP2005312346A JP2005312346A JP4760301B2 JP 4760301 B2 JP4760301 B2 JP 4760301B2 JP 2005312346 A JP2005312346 A JP 2005312346A JP 2005312346 A JP2005312346 A JP 2005312346A JP 4760301 B2 JP4760301 B2 JP 4760301B2
Authority
JP
Japan
Prior art keywords
communication
processors
communication path
controller
data
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.)
Expired - Fee Related
Application number
JP2005312346A
Other languages
English (en)
Other versions
JP2007122320A (ja
Inventor
修司 大▲塚▼
慶治 荘
健也 秋山
一誠 帯川
嘉邦 島沢
理 芝田
美喜 田中
龍一 辻
文孝 杉本
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2005312346A priority Critical patent/JP4760301B2/ja
Publication of JP2007122320A publication Critical patent/JP2007122320A/ja
Application granted granted Critical
Publication of JP4760301B2 publication Critical patent/JP4760301B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Description

本発明は、マルチプロセッサシステムを構成する複数のプロセッサ、メモリコントローラ、およびキャッシュメモリ等のデバイスの接続に関する。
マルチプロセッサシステムにおいて、その性能を最大限に高めるためには、その構成要素である複数のプロセッサや、メモリコントローラ、キャッシュコントローラ、I/Oインタフェース等のデバイスを、相互に直結したクロスバー接続とすることが好ましい(例えば、特許文献1〜4参照)。
特開2003−337805号公報 特開2001−338492号公報 特開2000−132527号公報 特開平6−231096号公報
しかしながら、クロスバー接続の場合、デバイスの数に応じてデバイス間を接続する配線数が増大し、限られた実装スペースでの実現が困難となる。また、1つのデバイスに対して任意の複数のデバイスが独立してアクセスすることになるため、同時に複数のアクセスが発生した場合におけるアービトレーションが必要となるが、デバイスの数が多くなれば、それに応じて制御も複雑になる。従って、複数のデバイスをクロスバー接続することは、デバイス数が多い場合には、現実的ではない。
本発明は、上述の課題を解決するためになされたものであり、複数のプロセッサ、メモリコントローラ、およびキャッシュメモリ等のマルチプロセッサを構成するデバイス間の接続を効果的に実現したマルチプロセッサシステムを提供することを目的とする。
上述の課題の少なくとも一部を解決するために、本発明の第1の態様は、
複数のプロセッサと、各プロセッサにより制御されるデバイスと、を有するメモリコントローラと、を有するマルチプロセッサシステムであって、
前記メモリコントローラと前記複数のプロセッサのそれぞれとの間を、それぞれ個別に接続することにより形成される複数の第1の通信経路と、
前記複数のプロセッサおよび前記メモリコントローラを、それぞれ順に接続することにより形成されるループ状の第2の通信経路と、を備える
ことを特徴とする。
上記構成では、複数のプロセッサおよびメモリコントローラの相互の接続を、ループ状の第2の通信経路により行っているので、クロスバー接続する場合の配線数に比べて削減することが可能となる。また、上記構成では、例えば、各プロセッサがメモリコントローラを介して実行するメモリへのデータの書き込みやメモリからのデータの読み出しは、個別に設けられた第1の通信経路を介して行い、各プロセッサ間での制御情報の伝達や、各プロセッサとメモリコントローラとの間での制御情報の伝達等は、ループ状の第2の通信経路を介して行う構成とすることができる。従って、上記構成によれば、複数のプロセッサおよびメモリコントローラ、の相互の接続を効果的に実現したマルチプロセッサシステムを提供することができる。
また、本発明の第2の態様は、
複数のプロセッサと、メモリコントローラと、キャッシュコントローラと、を有するマルチプロセッサシステムであって、
前記メモリコントローラと前記複数のプロセッサのそれぞれとの間、および、前記キャッシュコントローラと前記複数のプロセッサのそれぞれとの間、をそれぞれ個別に接続することにより形成される複数の第1の通信経路と、
前記複数のプロセッサ、前記メモリコントローラ、および、前記キャッシュコントローラを、それぞれ順に接続することにより形成されるループ状の第2の通信経路と、を備える
ことを特徴とする。
上記構成では、複数のプロセッサ、メモリコントローラ、および、キャッシュコントローラの相互の接続を、ループ状の第2の通信経路により行っているので、クロスバー接続する場合の配線数に比べて削減することが可能となる。また、上記構成では、例えば、各プロセッサがメモリコントローラを介して実行するメモリへのデータの書き込みやメモリからのデータの読み出しや、各プロセッサがキャッシュコントローラを介して実行するキャッシュメモリへのデータの書き込みやキャッシュメモリからのデータの読み出しは、個別に設けられた第1の通信経路を介して行い、各プロセッサ間での制御情報の伝達や、各プロセッサとメモリコントローラとの間や各プロセッサとキャッシュコントローラとの間での制御情報の伝達等は、ループ状の第2の通信経路を介して行う構成とすることができる。従って、上記構成によれば、複数のプロセッサ、メモリコントローラ、および、キャッシュコントローラの相互の接続を効果的に実現したマルチプロセッサシステムを提供することができる。
上記第1または第2の態様において、前記第2の通信経路は、あらかじめ定められている通信内容を、前記通信内容に応じた構造を有するデータとして伝送することができる。また、前記データはパケットデータであってもよい。
このようにすれば、第2の通信経路による通信を効率よく実行することが可能である。
また、前記第1の通信経路は、あらかじめ定められている通信内容を、前記通信内容に応じた構造を有するデータとして伝送することもできる。
このようにすれば、第1の通信経路による通信も効率よく実行することが可能である。
なお、上記第1または第2の態様において、前記第2の通信経路の配線数は、前記第1の通信経路の配線数よりも小さいことが好ましい。
例えば、各プロセッサがメモリコントローラを介して実行するメモリへのデータの書き込みおよびメモリからのデータの読み出しや、各プロセッサがキャッシュコントローラを介して実行するキャッシュメモリへのデータの書き込みおよびキャッシュメモリからのデータの読み出しの際に、第1の通信経路を伝送するデータ量が比較的多い場合には、第1の通信経路の配線数が比較的多い方が好ましい。また、各プロセッサ間での制御情報の伝達や、各プロセッサとメモリコントローラとの間や各プロセッサとキャッシュコントローラとの間での制御情報の伝達の際に、第2の通信経路を伝送するデータ量が比較的少ない場合には、第2の通信経路の配線数は比較的少なくてもよい。このような条件の場合において、上記構成とすれば効果的である。
また、前記第2の通信経路の通信速度は、前記第1の通信経路の通信速度よりも低いようにしてもよい。
例えば、各プロセッサがメモリコントローラを介して実行するメモリへのデータの書き込みおよびメモリからのデータの読み出しや、各プロセッサがキャッシュコントローラを介して実行するキャッシュメモリへのデータの書き込みおよびキャッシュメモリからのデータの読み出しの際に、第1の通信経路を伝送するデータ量が比較的多い場合には、比較的高速な伝送が好ましい。また、各プロセッサ間での制御情報の伝達や、各プロセッサとメモリコントローラとの間あるいは各プロセッサとキャッシュコントローラとの間での制御情報の伝達の際に、第2の通信経路を伝送するデータ量が比較的少なく、また、発生頻度も少ない場合には、比較的低速な伝送でもよい。このような条件の場合において、上記構成とすれば効果的である。
なお、上記第1および第2の態様のマルチプロセッサシステムは、1つの半導体基板上に集積化されているようにすれば、より効果的である。
以下、本発明の実施の形態について、実施例に基づき以下の順序で説明する。
A.実施例:
A1.マルチプロセッサシステムの構成:
A2.効果:
B.変形例:
A.実施例:
A1.マルチプロセッサシステムの構成:
図1は、本発明の一実施例としてのマルチプロセッサシステムについて示す説明図である。このマルチプロセッサシステム10は、複数のプロセッサを1つの半導体基板上に集積化したマイクロプロセッサである。各プロセッサは、それぞれ、CPUや、キャッシュメモリ、ROM、RAM、バスコントローラ等の周辺回路を含むユニットを意味している。なお、本実施例では、図に示すように、3つのプロセッサ20A〜20Cで構成される場合を例に示している。また、このマルチプロセッサシステム10は、その他、2次キャッシュメモリ(図中にはL2と略して表記されている)50および2次キャッシュメモリ50の動作を制御するキャッシュコントローラ40と、外部に接続されるRAM60へのアクセスを制御するメモリコントローラ30と、を備えている。
各プロセッサ20A〜20Cは、通信経路NM1A〜NM3Aを介して、それぞれ個別にメモリコントローラ30に接続されており、通信経路NM1B〜NM3Bを介して、それぞれ個別にキャッシュコントローラ40に接続されている。また、キャッシュコントローラ40とメモリコントローラ30とは、通信経路NM1A〜NM3A,NM1B〜NM3Bと同種類の通信経路NM4を介して接続されている。なお、各通信経路NM1A〜NM3AおよびNM1B〜NM3Bには、プロセッサからメモリコントローラへのリクエスト(REQ)が伝送される経路と、メモリコントローラからプロセッサへのレスポンス(RES)が伝送される経路の2種類の経路で構成されている。なお、これら通信経路NM1A〜NM3A,NM1B〜NM3Bのそれぞれを特定する必要がない場合には、それぞれの通信経路を単に第1の通信経路NMと呼ぶ場合もある。
なお、通信経路NM1A〜NM3Aは、より具体的には、各プロセッサ20A〜20Cに備えられる通信コントローラ(図中にはNMCと表記されている)22A〜22Cと、メモリコントローラ30に備えられる通信コントローラ(図中にはNMCと表記されている)32との間を接続しており、通信経路NM1A〜NM3Aを介して実行される通信は、それぞれの通信経路を介して接続されている通信コントローラによって制御される。また、通信経路NM1B〜NM3Bは、各プロセッサ20A〜20Cに備えられる通信コントローラ22A〜22Cと、キャッシュコントローラ40に備えられる通信コントローラ(図中にはNMCと表記されている)42との間を接続しており、通信経路NM1B〜NM3Bを介して実行される通信は、それぞれの通信経路を介して接続されている通信コントローラによって制御される。
各プロセッサ20A〜20Cは、それぞれ個別に設けられた通信経路NM1A〜NM3Aを介してメモリコントローラ30と通信することができ、それぞれ個別に設けられた通信経路NM1B〜NM3Bを介してキャッシュコントローラ40と通信することができる。
また、3つのプロセッサ20A〜20Cと、メモリコントローラ30と、キャッシュコントローラ40とは、それぞれを順に接続することによりループ状に形成される第2の通信経路NIOを介して互いに接続されている。本実施例では、第1のプロセッサ20Aは通信経路NIO1を介して第2のプロセッサ20Bに接続され、第2のプロセッサ20Bは通信経路NIO2を介して第3のプロセッサ20Cに接続され、第3のプロセッサ20Cは通信経路NIO3を介してメモリコントローラ30に接続され、メモリコントローラ30は通信経路NIO4を介してキャッシュコントローラ40に接続され、キャッシュコントローラ40は通信経路NIO5を介して第1のプロセッサ20Aに接続されている。すなわち、第2の通信経路NIOは、3つのプロセッサ20A〜20C、メモリコントローラ30、および、キャッシュコントローラ40と、これらを接続する5つの通信経路NIO1〜NIO5によりループ状に形成されている。
なお、第2の通信経路NIOを構成する5つの通信経路NIO1〜NIO5は、より具体的には、各プロセッサ20A〜20Cに備えられる通信コントローラ(図中にはNIOCと表記されている)24A〜24C、メモリコントローラ30に備えられる通信コントローラ(図中にはNIOCと表記されている)34、および、キャッシュコントローラ40に備えられる通信コントローラ(図中にはNIOCと表記されている)44の間を、それぞれ接続しており、それぞれの通信経路を介して接続されている通信コントローラによって制御される。
各プロセッサ20A〜20C、メモリコントローラ30、およびキャッシュコントローラ40は、ループ状の第2の通信経路NIOを介して互いに通信することができる。例えば、第1のプロセッサ20Aから第3のプロセッサ20Cへの通信は、通信経路NIO1、第2のプロセッサ20B、および、通信経路NIO2を介して第3のプロセッサ20Cへ伝送される。
図2は、第1の通信経路NMおよび第2の通信経路NIOを比較して示す説明図である。
第1の通信経路NMは、メモリコントローラ30を介して実行されるRAM60へのデータの書き込みおよびRAM60からのデータの読み出しを行うための通信経路として、また、キャッシュコントローラ40を介して実行されるキャッシュメモリ50へのデータの書き込みおよびキャッシュメモリ50からのデータの読み出しを行うための通信経路として割り当てられる。したがって、第1の通信経路NMは、大容量のデータを高速に伝送することを考慮して、データ線の配線幅を128ビットとし、転送速度を666MB/sとしている。ただし、この配線幅や転送速度に限定されるものではない。
一方、第2の通信経路NIOは、各プロセッサ間でのメッセージ通信や、各プロセッサからメモリコントローラやキャッシュコントローラへのメッセージ通信のための通信経路として割り当てられている。メッセージ通信により伝送される情報は、例えば、送信元から送信先に送られるデータを、RAM60に確保される通信用メモリのアドレスに書き込むためのライトリクエストメッセージや、通信用メモリに書き込まれているデータを読み出すためのリードリクエストメッセージ、これらのリクエストメッセージに対するレスポンスメッセージ等である。なお、第2の通信回路NIOは、第1の通信経路NMほどの大容量のデータを伝送する必要はなく、また、高速性も要求されないことを考慮して、データ線の配線幅を比較的小さい32ビットとし、転送速度を比較的低速な100MB/sとしている。ただし、この配線幅や転送速度に限定されるものではない。
図3は、第2の通信経路NIOを介して伝送される情報のデータ構造について示す説明図である。第2の通信経路NIOは、上述したように、メッセージ通信を実行するための通信経路であり、そのための通信内容(通信の種別)として、例えば、ライトリクエスト、ライトACKレスポンス、リードリクエスト、および、リードレスポンスがある。
上記したように、第2の通信経路NIOのデータ線の配線幅は32ビット(4バイト)とされているので、4バイト単位でデータの送受信が実行される。
図3に示すように、第2の通信経路NIOを介して伝送される情報のデータ構造は、8バイトの固定長を有しており、いわゆるパケットのデータ構造を有している。最初の4バイトのうち、前半の2バイトが送信先のIDおよび送信元のID等を含む制御情報部分、後半の2バイトがRAM60に確保される通信用メモリのアドレス情報部分に割り当てられている。残りの4バイトは、通信用メモリを用いずに直接書き込みあるいは読み出しを行う場合のデータ部分に割り当てられている。なお、通信用メモリを用いない場合におけるアドレス情報部分は、直接データの書き込みあるいは読み出しを実行するメモリやレジスタのアドレスを示す。
なお、制御情報部分の最初の3ビットの部分(TYPE)は、通信内容の種別を示す部分であり、図3はライトリクエストに対応するコマンド「WR_REQ」が記述されている場合を示している。そして、次の3ビットの部分(Dsize)はライトデータまたはリードデータのデータサイズを示す部分であり、ライトリクエストの場合にはライトデータのサイズとして「4バイト」を示す値が記述されている。さらに、次の5ビットの部分(DID)はリクエストを受ける側(送信先)のIDを示す部分であり、さらに次の5ビットの部分(SID)はリクエストを出す側(送信元)のIDを示す部分である。
ここで、例えば、第1のプロセッサ20Aから第3のプロセッサ20Cに対して通信を行う場合を考える。
まず、第1のプロセッサ20Aから送出されたデータのうち、制御情報部分に含まれるDIDには送信先である第3のプロセッサ20Cを示すIDが記述され、SIDには送信元である第1のプロセッサ20Aを示すIDが記述される。
このとき、第2のプロセッサ20Bでは、第1のプロセッサ20Aから送出されたデータの制御情報部分に記述されているDIDが自分のIDと一致するか否か判断する。DIDに記述されているIDは、第3のプロセッサ20Cに対応するものであるので、そのまま第3のプロセッサ20Cに向けて送出する。
そして、第3のプロセッサ20Cでも、第2のプロセッサ20Bと同様に、第2のプロセッサ20Bから送出されたデータの制御情報部分に記述されているDIDが、自分のIDと一致するか否かを判断する。ここでは、第3のプロセッサ20Cは、自分のIDと一致するので、第3のプロセッサ20Cは受信したデータを取得する。
こうして、第1のプロセッサ20Aから第3のプロセッサ20Cへの通信が実行される。
図4は、第1の通信経路NMによって伝送されるデータ構造について示す説明図である。第1の通信経路NMは、上述したように、RAM60への書き込みデータやRAM60からの読み出しデータ、あるいは、キャッシュメモリ50への書き込みデータやキャッシュメモリ50からの読み出しデータを、メッセージ通信と同様の形式で伝送するための通信経路であり、そのための通信内容(通信の種別)として、ライトリクエスト、リードリクエスト、リードレスポンス、および、ACKリクエスト、が用意されている。
上記したように、第1の通信経路NMのデータ線の配線幅は128ビット(16バイト)とされているので、16バイト単位でデータの送受信が実行される。
図4は、ライトリクエストに対応するデータ構造を示しており、ライトデータとして64バイトのデータを含んでいる場合を示している。
図4に示すように、ライトリクエストの場合のデータ構造は、最初の16バイトのうち、最初の4バイトが制御情報部分、次の4バイトがRAM60のアドレス情報部分、残りの8バイトは空き領域部分に割り当てられている。
なお、制御情報部分の最初の3ビットの部分(TYPE)は、通信内容の種別を示す部分であり、図4はライトリクエストの場合を示しているので、ライトリクエストに対応するコマンド「WR_REQ」が記述されている。そして、次の3ビットの部分(Dsize)はライトデータまたはリードデータのデータサイズを示す部分であり、ライトリクエストの場合にはライトデータのサイズとして「1」,「2」,「4」,「8」,「16」,「32」,「64」のうちいずれかの値、ここでは最大の「64」が記述されている。さらに、次の5ビットの部分(DID)はリクエストを受ける側のIDを示す部分であり、さらに次の5ビットの部分(SID)はリクエストを出す側のIDを示す部分である。そして、さらに次の6ビットの部分(TID)はトランザクションIDを示す部分である。なお、残りの9ビットの部分(Reserved)は予備の領域である。
そして、次の16バイト以降に割り当てられている領域は、Dsizeに記載されているバイト数に応じたデータ領域である。
なお、リードリクエストの場合のデータ構造は、図4に示したライトリクエストのデータ構造のうち、最初の16バイトのみを有するデータ構造となる。また、リードレスポンスの場合のデータ構造は、図4に示したライトリクエストのデータ構造のうち、最初の16バイトのデータはなく、リードリクエスト中のデータサイズに対応するデータのみを有するデータ構造となる。また、ACKリクエストは、図4に示したライトリクエストのデータ構造のうち、最初の16バイトのうちの最初の4バイトの制御情報部分のみを有するデータ構造となる。
以上説明した構成を有するマルチプロセッサシステム10では、各プロセッサ20A〜20Cは、それぞれ個別に設けられた第1の通信経路NM(通信経路NM1A〜NM3A)を介して、それぞれ個別にRAM60へのデータの書き込みやRAM60からのデータの読み出しを行うことができる。同様に、各プロセッサ20A〜20Cは、それぞれ個別に設けられた第1の通信経路(通信経路NM1B〜NM3B)を介して、それぞれ個別にキャッシュメモリ50へのデータの書き込みやキャッシュメモリ50からのデータの読み出しを行うことができる。
また、各プロセッサ20A〜20C、メモリコントローラ30、およびキャッシュコントローラ40は、ループ状の通信経路NIOを介して、種々の制御情報をそれぞれに対応するレジスタへ書き込むためのライトリクエストやレジスタに書き込まれている制御情報を読み出すためのリードリクエスト、これらのリクエストに応答するためのレスポンス等の情報を通信することができる。例えば、第1のプロセッサ20Aが第2のプロセッサ20Bの所定のレジスタにデータを書き込むことにより、第2のプロセッサの動作を制御することができる。また、例えば、第1のプロセッサ20Aがメモリコントローラ30の所定のレジスタにデータを書き込むことにより、メモリコントローラの動作条件を設定し、メモリコントローラ30の動作を制御することができる。
A2.効果:
以上説明したように、上記実施例のマルチプロセッサシステム10では、複数のプロセッサ20A〜20C、メモリコントローラ30、および、キャッシュコントローラ40の相互の接続を、複数のプロセッサ20A〜20C、メモリコントローラ30、および、キャッシュコントローラ40を、それぞれ順に接続することにより形成されるループ状の通信経路NIOにより行う構成としている。
そして、各プロセッサ20A〜20Cがメモリコントローラ30を介して実行するRAM60へのデータの書き込みやRAM60からのデータの読み出しは、それぞれ個別に設けられた通信経路NM1A〜NM3Aを介して行い、また、各プロセッサ20A〜20Cがキャッシュコントローラ40を介して実行するキャッシュメモリ50へのデータの書き込みやキャッシュメモリ50からのデータの読み出しは、それぞれ個別に設けられた通信経路NM1B〜NM3Bを介して行い、各プロセッサ20A〜20C間の通信や、各プロセッサ20A〜20Cがメモリコントローラ30やキャッシュコントローラ40の動作を制御するために実行する通信、例えば、動作条件等の設定のための通信等は、ループ状の通信経路NIOを介して行う構成としている。
従って、上記実施例のマルチプロセッサによれば、複数のプロセッサ、メモリコントローラ、および、キャッシュコントローラの相互の接続をクロスバー接続する場合に比べて、効果的に接続することが可能である。
B.変形例:
以上、本発明の実施の形態について説明したが、本発明はこのような実施の形態になんら限定されるものではなく、その要旨を逸脱しない範囲において種々の態様にて実施することが可能である。例えば、以下のような変形が可能である。
上記実施例では、第1のプロセッサ20Aを通信経路NIO1を介して第2のプロセッサ20Bに接続し、第2のプロセッサ20Bを通信経路NIO2を介して第3のプロセッサ20Cに接続し、第3のプロセッサ20Cを通信経路NIO3を介してメモリコントローラ30に接続し、メモリコントローラ30を通信経路NIO4を介してキャッシュコントローラ40に接続し、キャッシュコントローラ40を通信経路NIO5を介して第1のプロセッサ20Aに接続することにより、3つのプロセッサ20A〜20Cと、メモリコントローラ30と、キャッシュコントローラ40と、を、ループ状の通信経路NIOを介して互いに接続する構成としている。しかしながら、3つのプロセッサ20A〜20Cと、メモリコントローラ30と、キャッシュコントローラ40とが、それぞれを一つずつ順に接続することにより形成されるループ状態の通信経路NIOを介して互いに接続されるようにすれば、その接続順は限定されるものではない。
上記実施例では、3つのプロセッサとメモリコントローラとキャッシュコントローラとを備えるマルチプロセッサシステムを例に示したが、これに限定されるものではなく、複数のプロセッサとメモリコントローラとキャッシュメモリとを備えるマルチプロセッサシステムとすることができる。また、キャッシュメモリは必ずしも必須の構成要素ではない。
本発明の一実施例としてのマルチプロセッサシステムについて示す説明図である。 第1の通信経路NMおよび第2の通信経路NIOを比較して示す説明図である。 第2の通信経路NIOを介して伝送される情報のデータ構造について示す説明図である。 第1の通信経路NMによって伝送されるデータ構造について示す説明図である。
符号の説明
10…マルチプロセッサシステム
20A〜20C…プロセッサ
22A〜22C…通信コントローラ(NMC)
24A〜24C…通信コントローラ(NIOC)
30…メモリコントローラ
32…通信コントローラ(NMC)
34…通信コントローラ(NIOC)
40…キャッシュコントローラ
42…通信コントローラ(NMC)
44…通信コントローラ(NIOC)
50…キャッシュメモリ
60…RAM
NM…第1の通信経路
NM1A〜NM3A…通信経路
NM1B〜NM3B…通信経路
NIO…第2の通信経路
NIO1〜NIO5…通信経路

Claims (8)

  1. 複数のプロセッサと、メモリコントローラと、を有するマルチプロセッサシステムであって、
    前記メモリコントローラと前記複数のプロセッサのそれぞれとの間を、それぞれ個別に接続することにより形成される複数の第1の通信経路と、
    前記複数のプロセッサおよび前記メモリコントローラを、それぞれ順に接続することにより形成されるループ状の第2の通信経路と、を備え
    前記メモリコントローラおよび前記複数のプロセッサのそれぞれは、前記メモリコントローラと前記複数のプロセッサのそれぞれとの間を、前記第1の通信経路により、それぞれ個別に接続するための第1の通信コントローラと、前記複数のプロセッサおよび前記メモリコントローラを、前記第2の通信経路により、それぞれ順に接続するための第2の通信コントローラと、を備える
    ことを特徴とするマルチプロセッサシステム。
  2. 複数のプロセッサと、メモリコントローラと、キャッシュコントローラと、を有するマルチプロセッサシステムであって、
    前記メモリコントローラと前記複数のプロセッサのそれぞれとの間、および、前記キャッシュコントローラと前記複数のプロセッサのそれぞれとの間、をそれぞれ個別に接続することにより形成される複数の第1の通信経路と、
    前記複数のプロセッサ、前記メモリコントローラ、および、前記キャッシュコントローラを、それぞれ順に接続することにより形成されるループ状の第2の通信経路と、を備え
    前記メモリコントローラ、前記キャッシュコントローラ、および、前記複数のプロセッサは、前記メモリコントローラと前記複数のプロセッサのそれぞれとの間、および、前記キャッシュコントローラと前記複数のプロセッサのそれぞれとの間を、前記第1の通信経路により、それぞれ個別に接続するための第1の通信コントローラと、前記複数のプロセッサ、前記メモリコントローラ、および、前記キャッシュコントローラを、前記第2の通信経路により、それぞれ順に接続するための第2の通信コントローラと、を備える
    ことを特徴とするマルチプロセッサシステム。
  3. 請求項1または請求項2記載のマルチプロセッサシステムであって、
    前記第2の通信経路は、あらかじめ定められている通信内容を、前記通信内容に応じた構造を有するデータとして伝送する、マルチプロセッサシステム。
  4. 請求項3記載のマルチプロセッサシステムであって、
    前記データはパケットデータである、マルチプロセッサシステム。
  5. 請求項1ないし請求項4のいずれかに記載のマルチプロセッサシステムであって、
    前記第1の通信経路は、あらかじめ定められている通信内容を、前記通信内容に応じた構造を有するデータとして伝送する、マルチプロセッサシステム。
  6. 請求項1または請求項2記載のマルチプロセッサシステムであって、
    前記第2の通信経路の配線数は、前記第1の通信経路の配線数よりも小さい、マルチプロセッサシステム。
  7. 請求項1または請求項2記載のマルチプロセッサシステムであって、
    前記第2の通信経路の通信速度は、前記第1の通信経路の通信速度よりも低い、マルチプロセッサシステム。
  8. 請求項1ないし請求項7のいずれかに記載のマルチプロセッサシステムであって、
    前記マルチプロセッサシステムは、1つの半導体基板上に集積化されている、マルチプロセッサシステム。
JP2005312346A 2005-10-27 2005-10-27 マルチプロセッサシステム Expired - Fee Related JP4760301B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005312346A JP4760301B2 (ja) 2005-10-27 2005-10-27 マルチプロセッサシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005312346A JP4760301B2 (ja) 2005-10-27 2005-10-27 マルチプロセッサシステム

Publications (2)

Publication Number Publication Date
JP2007122320A JP2007122320A (ja) 2007-05-17
JP4760301B2 true JP4760301B2 (ja) 2011-08-31

Family

ID=38146115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005312346A Expired - Fee Related JP4760301B2 (ja) 2005-10-27 2005-10-27 マルチプロセッサシステム

Country Status (1)

Country Link
JP (1) JP4760301B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57141768A (en) * 1981-02-25 1982-09-02 Kawasaki Heavy Ind Ltd High speed transferring device for video information
JPH1055343A (ja) * 1996-08-13 1998-02-24 Fuji Xerox Co Ltd 演算装置及び演算システム
JP4125933B2 (ja) * 2002-08-29 2008-07-30 新日本無線株式会社 共通メモリを備えたプロセッサシステム

Also Published As

Publication number Publication date
JP2007122320A (ja) 2007-05-17

Similar Documents

Publication Publication Date Title
CN107992436B (zh) 一种NVMe数据读写方法及NVMe设备
US10423568B2 (en) Apparatus and method for transferring data and commands in a memory management environment
US9411644B2 (en) Method and system for work scheduling in a multi-chip system
US7752349B2 (en) Apparatus and method for performing DMA data transfer
US8108647B2 (en) Digital data architecture employing redundant links in a daisy chain of component modules
US9529532B2 (en) Method and apparatus for memory allocation in a multi-node system
JP3807250B2 (ja) クラスタシステム、コンピュータ及びプログラム
US9208110B2 (en) Raw memory transaction support
KR100814904B1 (ko) 칩 내부 회로 간의 데이터 전송을 위한 통신 시스템
US20150254182A1 (en) Multi-core network processor interconnect with multi-node connection
TW201120644A (en) Memory hub architecture having programmable lane widths
JP5966265B2 (ja) データ転送装置及び画像形成システム
US9372800B2 (en) Inter-chip interconnect protocol for a multi-chip system
US20150254207A1 (en) Method and system for ordering i/o access in a multi-node environment
JP2005512194A5 (ja)
CN114647602B (zh) 一种跨芯片访问控制的方法、装置、设备及介质
US8583845B2 (en) Multi-processor system and controlling method thereof
JP2019164486A (ja) 情報処理システム、情報処理方法及びメモリシステム
US10402348B2 (en) Method and system for using feedback information for selecting a routing bus for a memory transaction
JP4760301B2 (ja) マルチプロセッサシステム
EP1271331B1 (en) Method for enabling a communication between processes and processing system using the same method
JP2007148753A (ja) マルチプロセッサシステム
JP2005107873A (ja) 半導体集積回路
US8015326B2 (en) Central processing apparatus, control method therefor and information processing system
JP2002091934A (ja) デュアルポートメモリを用いたデータ伝送システム、及びデュアルポートメモリ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080918

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100601

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100722

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110523

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

Free format text: PAYMENT UNTIL: 20140617

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4760301

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees