JP2009026320A - プロセッサ - Google Patents
プロセッサ Download PDFInfo
- Publication number
- JP2009026320A JP2009026320A JP2008215090A JP2008215090A JP2009026320A JP 2009026320 A JP2009026320 A JP 2009026320A JP 2008215090 A JP2008215090 A JP 2008215090A JP 2008215090 A JP2008215090 A JP 2008215090A JP 2009026320 A JP2009026320 A JP 2009026320A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- packet
- thread
- ring
- threads
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0813—Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
Abstract
【解決手段】最新型プロセッサは、それぞれがデータキャッシュおよび命令キャッシュを持っている複数のマルチスレッドプロセッサコアを備えている。データスイッチ相互接続はプロセッサコアのそれぞれに接合されておりプロセッサコア間で情報を手渡すように構成されている。メッセージネットワークはプロセッサコアおよび複数の通信ポートのそれぞれに接合されている。本発明の1つの実施態様の1つの側面では、データスイッチ相互接続がプロセッサコアのそれぞれにそれぞれのデータキャッシュによって接合されており、メッセージングネットワークがプロセッサコアのそれぞれにそれぞれのメッセージステーションによって接合されている。
【選択図】図2A
Description
本願は、本願でその全体を援用しすべての優先権を主張する、2003年7月25日に出願された仮出願第60/490,236号(RZMI−P101P2)の優先権を主張する、2003年10月8日に出願されたシリアル番号第10/682,579号(RZMI−P101)の一部継続出願である。
る工程、および、前記割り込みを送達する工程、を含むことを特徴とする、マルチスレッド化遠隔通信プロセッサのための割り込み送達方法を行う。
本発明は、図1の従来のラインカードで実行される多数の機能を整理統合し、ラインカード機能性を向上させるように設計されている。1つの実施態様では、本発明は多くの離散機能を実行するための回路系を備えた一体型回路である。一体型回路設計は、通信処理用にあつらえてある。従って、プロセッサ設計は計算を多く使う動作よりもむしろメモリを多く使う動作を強調する。プロセッサ設計は以下に説明するように高能率メモリアクセスおよびスレッド化処理用に構成された内部ネットワークを備えている。
ッサネットワークに連結できる。そして、将来のプロセッサを新しい通信インターフェースを備えて製造できる。
図2Aの例示的な最新型プロセッサ200は、複数のマルチスレッド化プロセッサコア210a−hを備えている。例示的なコアはそれぞれ関連するデータキャッシュ212a−hおよび命令キャッシュ214a−hを備えている。データスイッチ相互接続(DSI)216をプロセッサコア210a−hのそれぞれに結合してプロセッサコア間およびL2キャッシュ208とメインメモリアクセス用のメモリブリッジ206、208の間でデータを手渡すように構成してよい。加えて、メッセージングネットワーク222をプロセッサコア210a−hのそれぞれおよび複数の通信ポート240a−fに結合してよい。図2Aには8つのコアが描かれているが、本発明ではより少ないまたはより多い数のコアを使うことができる。同様に、本発明の側面では、コアは異なるソフトウェアプログラムおよびルーチンを実行でき、異なる動作システムを駆動さえできる。単一の統合化プラットフォーム内の異なるコアで異なるソフトウェアプログラムおよび動作システムを駆動する能力は、従来からのソフトウェアをより旧式の動作システム下で1つ以上のコアで駆動させるよう望まれる場合、およびより新しいソフトウェアを異なる単一の動作システムまたは複数の動作システム下で1つ以上の他のコアで駆動させるよう望まれる場合、特に便利である。同様に、例示的なプロセッサは複数の別々の機能を統合されたプラットフォーム内に組み込むことができるようにするため、コアで複数の異なるソフトウェアおよび動作システムを駆動できるということは、組み込まれている別々の機能に関連する本質的に異なるソフトウェアを利用し続けることができることを意味する。
のパケットを表わすことができる。ブロック内のサブ番号はパケット命令および/またはセグメントを表すことができる。キャッシュミス後の無駄使いされたサイクル5−10は、図示されるように、実行準備の整った命令が他にないことから生じる。システムは本質的に機能停止して固有のメモリ待ち時間を対処しなければならず、そしてこれは望ましくない。
できる。1つのスレッドが「休眠」しており命令をイシューしない場合は、スケジューラは例えば残りの3つのスレッドから3クロックサイクルごとに1つの速度で命令をイシューできる。同様に、2つのスレッドが活動停止している場合は、スケジューラは2つの活動しているスレッドから他のクロックサイクルごとに1つの速度で命令をイシューできる。このアプローチの鍵となる利点は、4方向マルチスレッディングでは完全には利用できない一般的なアプリケーションを全速で駆動できる能力である。他の適切なアプローチとしては、マルチスレッド化固定サイクルスケジューリングが挙げられる。
をサポートするように構成できる。ネットワークアプリケーションでは、通常の計算型の命令体系とは違い、スレッドはメモリアクセスまたは他の長時間の待ち時間動作を待たれやすい。従って、本願で説明するようなスケジューリングアプローチを使ってシステムの全体の効率を改善することができる。
することで起動停止が必要であることを表示できる。1つの実施態様では、減結合バッファ308Gは命令のための待ち行列として働き、これによりIFU304Gから得られたそれぞれの命令が減結合バッファ308Gにも行くようになる。このような待ち行列では、上述のように命令は特定のスレッドスケジューリングに基づいて故障状態でスケジュールできる。万が一、機能停止が要求されている減結合バッファ308Gへと信号が送信される場合は、「停止」時点後のこれらの命令は再スレッド化できる。他方、もし機能停止が要求されていれば、単に命令を減結合バッファから取り出してパイプラインを続けることができる。従って、機能停止なしに、減結合バッファ308Gは先入れ先出し(FIFO)バッファと本質的に同じように挙動できる。しかしながら、もしいくつかのスレッドのうちの1つが機能停止を要求している場合は、残りのスレッドがバッファを進むことができこれらはホールドアップされなくてもよい。
ジ数(VPN2)フィールドに含んでいるメインTLBエントリは無効であるという標準的なMIPS規則は違反される。本発明の1つの実施態様では、この能力はユーザーへと戻すことができ、これによりメインTLBのそれぞれのエントリは仮想MIPSモードでユーザーにだけ見える特別な「マスター有効」ビットを備えることができる。例えば、無効なエントリはマスター有効ビット値「0」によって表すことができ、有効なエントリはマスター有効ビット値「1」で表すことができる。
ッグタイマ指示を受け取ることもできる。スケジュール割り込み306Jは保留304Jから入力を受け取ることができる。割り込み宛て先変更テーブル(IRT)308Jはスケジュール割り込み306Jから入力を受け取ることができる。
様の1つの側面では、複数のスレッドを備えた順序内パイプラインでの資源利用を最大とできる。従って、減結合バッファは、機能停止を要求していないスレッドが停止せずに流れるようにできる点で「スレッドに気づいて」いる。このやり方で、パイプライン減結合バッファはあらかじめスケジュールされたスレッドを再順序付けできる。上述のように、スレッドスケジューリングはパイプラインの最初でのみ発生できる。当然ながら、所定のスレッド内での命令の再順序付けは通常、減結合バッファによっては実行されず、別々のスレッドはペナルティーを課せられずにできる、なぜならこれらは機能静止されたスレッドがホールドアップされている間も効果的に減結合バッファをバイパスできるようにされているからである。
続できる(316K)。
ここで図2Aに戻ると、例示的なプロセッサは高性能を促すさらに多数の構成部材を備えてよく、8方向セット連想オンチップレベル−2(L2)キャッシュ(2MB);キャッシュコヒーレントハイパートランスポートインターフェース(768Gbps);ハードウェア加速サービス品質(QOS)および分類;セキュリティハードウェア加速−AES、DES/3DES、SHA−1、MD5、およびRSA;パケット順序付けサポート;文字列処理サポート;TOEハードウェア(TCPオフロードエンジン);および多数のIO信号が挙げられる。本発明の1つの実施態様の1つの側面では、データスイッチ相互接続216をプロセッサコア210a−hのそれぞれに、それぞれのデータキャッシュ212a−hによって接合してよい。また、メッセージングネットワーク222をプロセ
ッサコア210a−hのそれぞれにそれぞれの命令キャッシュ214a−hによって接合してよい。さらに、本発明の1つの実施態様の1つの側面では、最新型遠隔通信プロセッサはまた、データスイッチ相互接続に接合されたL2キャッシュ208も備えることができ、プロセッサコア210a−hにアクセス可能な情報を保存するように構成できる。例示されている実施態様では、L2キャッシュはプロセッサコアと同じ数のセクション(しばしばバンクと呼ばれる)を備えている。この例を図4Aを参照しながら説明するが、より多くのまたはより少ない数のL2キャッシュセクションを使うことも可能である。
、ブリッジ206はメモリ&入/出力およびリングの残り部分との間のインターフェースを可能とすることができる。リング素子402a−jはそれぞれ図2Aのコア210a−hおよびメモリブリッジの1つに対応している。従って、L2hおよびコア210hにインターフェースしている402hにわたって、素子402aはL2キャッシュL2aおよびコア−0 210aにインターフェースしており、素子402bはL2bおよびコア210bにインターフェースしているなどである。ブリッジ206はリングに素子402iを備えており、ブリッジ218はリングに素子402jを備えている。
例のフロー図が示されており、一般的な参照符号400Cで表されている。フローはスタート452で開始でき、要求を要求リング(RQ)(454)に配置できる。リング構造にあるそれぞれのCPUおよびL2は要求されたデータ(456)があるかどうかをチェックできる。また、要求は、リング(458)に取り付けられたそれぞれのメモリブリッジで受け取ることができる。もしCPUまたはL2のいずれかが要求されたデータを持っていれば(460)、データはデータを持っているノードによってデータリング(DT)に置くことができる(462)。もしCPUまたはL2のいずれも要求されたデータを見出さなかった場合(460)、データはメモリブリッジ(464)のいずれかによって回収できる。データを見出したノードまたはメモリブリッジのいずれかによってスヌープリング(SNP)および/または応答リング(RSP)に承認を配置することができ(466)、そして終了でフローを完了できる(468)。1つの実施態様では、メモリブリッジによるSNPおよび/またはRSPリングに対する承認がほのめかされている。
図2Aではまた、本発明の1つの実施態様の1つの側面において、最新型遠隔通信プロセッサは、メッセージングネットワーク222および通信ポート240a−fのグループに接合され、メッセージングネットワーク222および通信ポート240a−fの間で情報を手渡すように構成されているインターフェーススイッチ相互接続(ISI)224を備えることができる。
┌──────────┬───────────────────────┐
│送信エージェント │割り当てられているクレジット(合計256個) │
├──────────┼───────────────────────┤
│コア−0 │0 │
├──────────┼───────────────────────┤
│コア−1 │32 │
├──────────┼───────────────────────┤
│コア−2 │32 │
├──────────┼───────────────────────┤
│コア−3 │32 │
├──────────┼───────────────────────┤
│コア−4 │0 │
├──────────┼───────────────────────┤
│コア−5 │32 │
├──────────┼───────────────────────┤
│コア−6 │32 │
├──────────┼───────────────────────┤
│コア−7 │32 │
├──────────┼───────────────────────┤
│POD0 │32 │
├──────────┼───────────────────────┤
│RGMIL0 │32 │
├──────────┼───────────────────────┤
│ALL Others│0 │
└──────────┴───────────────────────┘
CVQに進むことができる。いったんコア−0のRCVQからメッセージが取り除かれると、そのメッセージ保存空間は本質的に開放されるまたは利用可能とされ得る。そしてコア−0は送り手に信号を(例えば、コア−1に解放クレジット信号を)送信してさらに利用可能な空間の量(例えば2)を知らせる。もしコア−1がコア−0から送られてくる解放クレジット信号に対応することなくコア−0に対してメッセージを送り続ける場合、最終的にはコア−1についてのクレジット数はゼロとなることができコア−1はコア−0へもはやどのようなメッセージも送ることができない。例えば、コア−0が解放クレジット信号で応答する場合にのみ、コア−1はコア−0へさらなるメッセージを送信できる。
ソフトウェア中を引き回すことができる。
本発明の実施態様の1つの側面では、図2Aに示すようにFMNはそれぞれのCPU/コアにインターフェースできる。このようなFMN−対−コアインターフェース化はプッシュ/ポップ命令、メッセージ待ち命令、およびメッセージ到着割り込みを備えることができる。従来のMIPSアーキテクチャでは、コプロセッサまたは「COP2」空間が割り当てられている。しかしながら本発明の実施態様によると、COP2に指定されている空間はかわりにFMNを介したメッセージング使用のために予約されている。1つの実施態様では、ソフトウェアが実行可能な命令としてはメッセージ送信(MsgSnd)、メッセージ負荷(MsgLd)、COP2へのメッセージ(MTC2)、COP2からのメッセージ(MFC2)、およびメッセージ待ち(MsgWait)が挙げられる。MsgSndおよびMsgLd命令はターゲット情報ならびにメッセージサイズ表示を備えることができる。MTC2およびMFC2命令は、図5Aのステータス514Aおよびレジスタ522Aのローカル構成レジスタから/へのデータ転送を備えることができる。MsgWait命令は、メッセージが利用可能となるまで(すなわち、メッセージ到着への割り込み)本質的に「休眠」状態に入る動作を備えることができる。
TQ508Aはそれぞれ、上述したようなスレッド概念と同じやり方で複数のバケットにわたって区切ってよい。
ても、PDEはこのスレッドにおける処理遅延を識別でき、それに従ってパケット11の分配に最適なターゲットとしてスレッド3を選択できる。この特定の例では、スレッド2は他のスレッドに比較して処理が遅延していることを提示し続けることができ、その結果、PDEはこのスレッドへの分配を回避できる。また万が一、レシーバのいずれも新しいパケットを受け取るだけの空きを持っていない場合は、PDEはパケット待ち行列をメモリへと拡張できる。
順序付け装置(POD)602Dに見られるように、パケット2および4は最初はスレッドを実行することによってPODに送信されることができる。いくつかのサイクル後、スレッドはパケット3で作業を完了できこれをPODに配置できる。パケットはまだ順序付けされていなくてよい、なぜならパケット1がまだ配置されていないからである。最終的にはパケット1がサイクルt7で完了され、それに従ってPODに配置される。そしてパケットは順序付けされることができPODは1、2、3、4の順序でパケットをイシューし始めることができる。もしパケット5が次に受信される場合は、これはパケット4に引き続く出力でイシューされる。残りのパケットは受信されると同時にそれぞれ、次のより高位の数のパケットが受信されるまで待ち行列に保存できる(例えば、深さ512の構造)。このような場合、パケットは外付けのフロー(例えばネットワーキング出力)に追加することができる。
本発明の実施態様の1つの側面では、最新型遠隔通信プロセッサはさらに、データスイッチ相互接続および少なくとも1つの通信ポート(例えば、囲い220)に接合され、データスイッチ相互接続および通信ポートと通信するように構成されたメモリブリッジ218を備えることができる。
G.結論
本発明の利点としては、コンピュータシステムとメモリとの間で高い帯域幅の通信を効
率的かつ費用効果的なやり方で提供できる能力が挙げられる。
Claims (24)
- それぞれがデータキャッシュおよび命令キャッシュを持っている、高速メッセージングネットワーク内の複数のプロセッサコアを備え、
前記高速メッセージングネットワークが、前記複数のプロセッサコアの少なくとも二つ、および少なくとも一つの外部の通信ポートに接合されている
ことを特徴とするプロセッサ。 - 前記プロセッサコアに接合されており、複数のパケットスレッドに設けられている複数のパケットセグメントを受け取るように構成され順序付けを持っている複数のパケットセグメントの単一のイシュースレッドを提供するように構成されているスケジューラをさらに備え、
前記複数のプロセッサコアはそれぞれが複数のスレッドを実行するように構成されており、
(a)1つの後続のパケットセグメントは1つの次の位置決めパケットスレッドから、もしこの次の位置決めパケットスレッドが利用可能なパケットセグメントを含んでいれば選択されるか、または
(b)前記後続のパケットセグメントは1つの利用可能なパケットセグメントを持つ1つの後続のパケットスレッドから選択され、
前記スケジューラは前記パケットセグメントを前記プロセッサコアに転送して実行されるようにする、
ことを特徴とする、請求項1に記載のプロセッサ。 - 前記次の位置決めパケットスレッドはシーケンスパケットスレッドの次であることを特徴とする、請求項2に記載のプロセッサ。
- 前記後続のパケットスレッドは、前記利用可能なパケットセグメントが見出されるまでそれぞれの連続的な次の位置決めスレッドをシーケンス化することによって決定されることを特徴とする、請求項2に記載のプロセッサ。
- パケットの前記パケットセグメントは同じパケットスレッドから受信されることを特徴とする、請求項2に記載のプロセッサ。
- 前記パケットセグメントはイーガーラウンドロビン技術を使って処理されることを特徴とする、請求項2に記載のプロセッサ。
- 前記プロセッサコアに接合されており、複数のパケットスレッドに設けられている複数のパケットセグメントを受け取るように構成され順序付けを持っている複数のパケットセグメントの単一のイシュースレッドを提供するように構成されているスケジューラをさらに備え、
少なくとも1つの前記プロセッサコアは、複数のスレッドを実行するように構成されており、
(a)1つの後続のパケットセグメントは最初の所定の数のサイクルのそれぞれについて1つの最初のパケットスレッドから選択され、および
(b)前記後続のパケットセグメントは2番目の所定の数のサイクルのそれぞれについて1つの2番目の位置決めパケットスレッドから選択され、
前記スケジューラは前記パケットセグメントを前記プロセッサコアに転送して実行されるようにする、
ことを特徴とする、請求項1に記載のプロセッサ。 - キャッシュミスにより機能停止となることを特徴とする、請求項1に記載のプロセッサ。
- 少なくとも2つのモードで作動可能な1番目、2番目、および3番目の変換牽引バッファ(TLB)部を持っている前記プロセッサコアに接合されたメモリ管理ユニット(MMU)であって、TLB部はそれぞれが複数のエントリを持っており、前記1番目のTLB部は命令用に構成されており、前記2番目のTLB部はデータ用に構成されており、前記複数のエントリの少なくとも1つはスレッド識別がタグ付けされているメモリ管理ユニットをさらに備え、
少なくとも1つの前記プロセッサコアは複数のスレッドを実行するように構成されていることを特徴とする、請求項1に記載のプロセッサ。 - 前記少なくとも2つのモードは区切りモードおよびグローバルモードを備えることを特徴とする、請求項9に記載のプロセッサ。
- 前記1番目および2番目のTLB部は、スレッドがいずれのモードでもTLB部のエントリに自由に割り当てられ区切りモードにある前記スレッドへ割り当てられたエントリへのアクセスを制限するように構成されており、
3番目のTLB部は、前記3番目のTLB部の排他的なサブセットにある前記割り当てられたエントリに前記スレッドを制限し、前記区切りモードにある前記スレッドに割り当てられたエントリへのアクセスを制限するように構成されており、前記3番目のTLB部は前記3番目のTLB部にあるエントリに前記スレッドが自由に割り当てられるように構成されていることを特徴とする、請求項10に記載のプロセッサ。 - 前記1番目および2番目のTLB部は32個のエントリを備えており、前記3番目のTLBは128個のエントリを備えることを特徴とする、請求項11に記載のプロセッサ。
- 最近使われていない(NRU)アルゴリズムを使って前記1番目および2番目のTLB部でのエントリ割り当てが行われることを特徴とする、請求項11に記載のプロセッサ。
- シンクロナイザで割り込みを受信し、前記割り込みを保留ブロックに提供する工程、
1番目および2番目のタイマを前記保留ブロックに提供する工程、
前記保留ブロックからの出力を割り込みスケジューラに送信する工程、
前記割り込み宛て先変更テーブルにアクセスし、そして複数の処理ユニットおよびスレッドに渡ってスケジュールするように構成されたスケジューリングブロックに表示を提供する工程、および
前記割り込みを送達する工程、
を含む、マルチスレッド化遠隔通信プロセッサのための割り込み送達方法を行うことを特徴とする、請求項1に記載のプロセッサ。 - 前記1番目のタイマはシステムタイマを備え、
前記2番目のタイマはウォッチドッグタイマを備えることを特徴とする、請求項14に記載のプロセッサ。 - 挿入待ち行列および受信待ち行列に接合されたリング入力、
前記挿入待ち行列に接合された1番目の入力を持ちリング出力を提供するように構成されたマルチプレクサ、
前記マルチプレクサの2番目の入力に接合された送信待ち行列、
前記受信待ち行列に接合された複数の受信バッファ、
前記送信待ち行列に接合された複数の送信バッファ、および
複数のレジスタ、
をさらに備えた、高速メッセージングリング構成部材を持つことを特徴とする、請求項1に記載のプロセッサ。 - 前記複数のレジスタはステータスレジスタ、メモリマップ化構成レジスタ、およびフロー制御レジスタを備えることを特徴とする、請求項16に記載のプロセッサ。
- それぞれが他の素子と接合し前記素子から情報を受信するための入力インターフェースを持っている複数の素子、他の素子と接合し前記素子へ情報を送信するための出力インターフェース、プロセッサコアに接合するためのコアインターフェース、および1つ以上の他の構成部材に接合するための外部インターフェース、
を備える、プロセッサに使用するためのリングベースの通信ネットワーク
を含むことを特徴とする、請求項1に記載のプロセッサ。 - 前記外部インターフェースはレベル2キャッシュに接合するためのものであることを特徴とする、請求項18に記載のプロセッサ。
- 前記外部インターフェースはメッセージングネットワークに接合するためのものであることを特徴とする、請求項18に記載のプロセッサ。
- それぞれが他の素子と接合し前記素子から情報を受信するための入力インターフェースを持っている第2の複数の素子、他の素子と接合し前記素子へ情報を送信するための出力インターフェース、プロセッサコアに接合するためのコアインターフェース、および1つ以上の他の構成部材に接合するための外部インターフェースをさらに備え、前記第2の複数の素子のための前記外部インターフェースはメッセージングネットワークに接合するためのものであることを特徴とする、請求項19に記載のプロセッサ。
- 前記素子は要求リング、データリング、スヌープリング、および応答リングを備える前記素子と相互接続する4つのリングを備えることを特徴とする、請求項18に記載のプロセッサ。
- 前記素子は要求リング、データリング、スヌープリング、および応答リングを備える前記素子と相互接続する4つのリングを備えることを特徴とする、請求項19に記載のリングベースの通信ネットワーク。
- 前記素子は要求リング、データリング、スヌープリング、および応答リングを備える前記素子と相互接続する4つのリングを備えることを特徴とする、請求項21に記載のリングベースの通信ネットワーク。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US49023603P | 2003-07-25 | 2003-07-25 | |
US10/682,579 US20040103248A1 (en) | 2002-10-08 | 2003-10-08 | Advanced telecommunications processor |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006521286A Division JP4498356B2 (ja) | 2003-07-25 | 2004-07-23 | 最新型プロセッサ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009026320A true JP2009026320A (ja) | 2009-02-05 |
Family
ID=34118823
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006521286A Expired - Fee Related JP4498356B2 (ja) | 2003-07-25 | 2004-07-23 | 最新型プロセッサ |
JP2008215090A Pending JP2009026320A (ja) | 2003-07-25 | 2008-08-25 | プロセッサ |
JP2009264696A Pending JP2010079921A (ja) | 2003-07-25 | 2009-11-20 | プロセッサ |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006521286A Expired - Fee Related JP4498356B2 (ja) | 2003-07-25 | 2004-07-23 | 最新型プロセッサ |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009264696A Pending JP2010079921A (ja) | 2003-07-25 | 2009-11-20 | プロセッサ |
Country Status (6)
Country | Link |
---|---|
US (1) | US20040103248A1 (ja) |
JP (3) | JP4498356B2 (ja) |
KR (1) | KR101279473B1 (ja) |
HK (1) | HK1093796A1 (ja) |
TW (1) | TW200515277A (ja) |
WO (1) | WO2005013061A2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013018230A1 (ja) * | 2011-08-04 | 2013-02-07 | 富士通株式会社 | データ処理システムおよびデータ処理方法 |
JPWO2013018230A1 (ja) * | 2011-08-04 | 2015-03-05 | 富士通株式会社 | データ処理システムおよびデータ処理方法 |
JP2018519581A (ja) * | 2015-05-29 | 2018-07-19 | クアルコム,インコーポレイテッド | メモリ管理ユニットに対するマルチスレッド変換およびトランザクション並べ替え |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9088474B2 (en) * | 2002-10-08 | 2015-07-21 | Broadcom Corporation | Advanced processor with interfacing messaging network to a CPU |
US7627721B2 (en) | 2002-10-08 | 2009-12-01 | Rmi Corporation | Advanced processor with cache coherency |
US8478811B2 (en) * | 2002-10-08 | 2013-07-02 | Netlogic Microsystems, Inc. | Advanced processor with credit based scheme for optimal packet flow in a multi-processor system on a chip |
US7346757B2 (en) | 2002-10-08 | 2008-03-18 | Rmi Corporation | Advanced processor translation lookaside buffer management in a multithreaded system |
US7334086B2 (en) * | 2002-10-08 | 2008-02-19 | Rmi Corporation | Advanced processor with system on a chip interconnect technology |
US7961723B2 (en) | 2002-10-08 | 2011-06-14 | Netlogic Microsystems, Inc. | Advanced processor with mechanism for enforcing ordering between information sent on two independent networks |
US8037224B2 (en) | 2002-10-08 | 2011-10-11 | Netlogic Microsystems, Inc. | Delegating network processor operations to star topology serial bus interfaces |
US8266379B2 (en) * | 2003-06-02 | 2012-09-11 | Infineon Technologies Ag | Multithreaded processor with multiple caches |
US20060045009A1 (en) * | 2004-08-30 | 2006-03-02 | Ken Madison | Device and method for managing oversubsription in a network |
TWI277872B (en) * | 2004-10-19 | 2007-04-01 | Via Tech Inc | Method and related apparatus for internal data accessing of computer system |
CN101213527A (zh) * | 2005-06-29 | 2008-07-02 | 英特尔公司 | 用于缓存操作的方法、装置和系统 |
US7454590B2 (en) * | 2005-09-09 | 2008-11-18 | Sun Microsystems, Inc. | Multithreaded processor having a source processor core to subsequently delay continued processing of demap operation until responses are received from each of remaining processor cores |
US7383415B2 (en) | 2005-09-09 | 2008-06-03 | Sun Microsystems, Inc. | Hardware demapping of TLBs shared by multiple threads |
GB0519981D0 (en) | 2005-09-30 | 2005-11-09 | Ignios Ltd | Scheduling in a multicore architecture |
US9596324B2 (en) | 2008-02-08 | 2017-03-14 | Broadcom Corporation | System and method for parsing and allocating a plurality of packets to processor core threads |
JP4858468B2 (ja) * | 2008-03-12 | 2012-01-18 | 日本電気株式会社 | プロトコル処理装置及び処理方法 |
US8190820B2 (en) * | 2008-06-13 | 2012-05-29 | Intel Corporation | Optimizing concurrent accesses in a directory-based coherency protocol |
US8412911B2 (en) * | 2009-06-29 | 2013-04-02 | Oracle America, Inc. | System and method to invalidate obsolete address translations |
US9038034B2 (en) * | 2009-12-22 | 2015-05-19 | Intel Corporation | Compiling for programmable culling unit |
KR101103818B1 (ko) * | 2010-01-22 | 2012-01-06 | 한국과학기술원 | 메모리 관리 유닛 제어 장치, 이를 포함하는 멀티 코어 프로세서, 컴퓨터 시스템 및 메모리 관리 유닛 제어 방법 |
US20120017214A1 (en) * | 2010-07-16 | 2012-01-19 | Qualcomm Incorporated | System and method to allocate portions of a shared stack |
WO2012144149A1 (ja) * | 2011-04-19 | 2012-10-26 | パナソニック株式会社 | マルチスレッドプロセッサ、マルチプロセッサシステム、実行装置、プロセッサボード |
CN102163320B (zh) * | 2011-04-27 | 2012-10-03 | 福州瑞芯微电子有限公司 | 一种图像处理专用可配置的mmu电路 |
US8595464B2 (en) | 2011-07-14 | 2013-11-26 | Oracle International Corporation | Dynamic sizing of translation lookaside buffer for power reduction |
US9477600B2 (en) * | 2011-08-08 | 2016-10-25 | Arm Limited | Apparatus and method for shared cache control including cache lines selectively operable in inclusive or non-inclusive mode |
KR101421232B1 (ko) * | 2012-10-25 | 2014-07-21 | 주식회사 시큐아이 | 패킷 처리 장치, 방법 및 컴퓨터 판독 가능한 기록 매체 |
JP5744360B1 (ja) * | 2014-10-21 | 2015-07-08 | 株式会社東京機械製作所 | 画像処理装置 |
EP3107197B1 (en) * | 2015-06-16 | 2022-01-19 | Mitsubishi Electric R&D Centre Europe B.V. | System and method for controlling the operation of a multi-die power module |
US9838321B2 (en) * | 2016-03-10 | 2017-12-05 | Google Llc | Systems and method for single queue multi-stream traffic shaping with delayed completions to avoid head of line blocking |
US10664306B2 (en) * | 2017-01-13 | 2020-05-26 | Arm Limited | Memory partitioning |
US20180203807A1 (en) * | 2017-01-13 | 2018-07-19 | Arm Limited | Partitioning tlb or cache allocation |
WO2019093352A1 (ja) * | 2017-11-10 | 2019-05-16 | 日本電気株式会社 | データ処理装置 |
DE102019101853A1 (de) * | 2018-01-31 | 2019-08-01 | Nvidia Corporation | Dynamische Partitionierung von Ausführungsressourcen |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003036482A2 (en) * | 2001-10-22 | 2003-05-01 | Sun Microsystems, Inc. | Multi-core multi-thread processor |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0222757A (ja) * | 1988-07-12 | 1990-01-25 | Hitachi Ltd | マルチプロセッサのメモリシステム |
AU6501496A (en) * | 1995-07-19 | 1997-02-18 | Ascom Nexion Inc. | Point-to-multipoint transmission using subqueues |
US6084856A (en) * | 1997-12-18 | 2000-07-04 | Advanced Micro Devices, Inc. | Method and apparatus for adjusting overflow buffers and flow control watermark levels |
US6341337B1 (en) * | 1998-01-30 | 2002-01-22 | Sun Microsystems, Inc. | Apparatus and method for implementing a snoop bus protocol without snoop-in and snoop-out logic |
US6507862B1 (en) * | 1999-05-11 | 2003-01-14 | Sun Microsystems, Inc. | Switching method in a multi-threaded processor |
US6574725B1 (en) * | 1999-11-01 | 2003-06-03 | Advanced Micro Devices, Inc. | Method and mechanism for speculatively executing threads of instructions |
CA2393740A1 (en) * | 1999-12-08 | 2001-06-14 | The University Of British Columbia | Weighted fair queuing scheduler |
US6629268B1 (en) * | 2000-01-25 | 2003-09-30 | International Business Machines Corporation | Method and apparatus for servicing a processing system through a test port |
US6957432B2 (en) * | 2000-03-21 | 2005-10-18 | Microsoft Corporation | Real-time scheduler |
US6665791B1 (en) * | 2000-03-30 | 2003-12-16 | Agere Systems Inc. | Method and apparatus for releasing functional units in a multithreaded VLIW processor |
US6668308B2 (en) * | 2000-06-10 | 2003-12-23 | Hewlett-Packard Development Company, L.P. | Scalable architecture based on single-chip multiprocessing |
US6687903B1 (en) * | 2000-06-28 | 2004-02-03 | Emc Corporation | Inhibiting starvation in a multitasking operating system |
EP1182570A3 (en) * | 2000-08-21 | 2004-08-04 | Texas Instruments Incorporated | TLB with resource ID field |
US6745297B2 (en) * | 2000-10-06 | 2004-06-01 | Broadcom Corporation | Cache coherent protocol in which exclusive and modified data is transferred to requesting agent from snooping agent |
US6772268B1 (en) * | 2000-12-22 | 2004-08-03 | Nortel Networks Ltd | Centralized look up engine architecture and interface |
US20020161961A1 (en) * | 2001-01-17 | 2002-10-31 | Ajile Systems, Inc. | Multiple virtual machine environment management system |
US6901505B2 (en) * | 2001-08-09 | 2005-05-31 | Advanced Micro Devices, Inc. | Instruction causing swap of base address from segment register with address from another register |
US7058948B2 (en) * | 2001-08-10 | 2006-06-06 | Hewlett-Packard Development Company, L.P. | Synchronization objects for multi-computer systems |
US7134002B2 (en) * | 2001-08-29 | 2006-11-07 | Intel Corporation | Apparatus and method for switching threads in multi-threading processors |
US6904040B2 (en) * | 2001-10-05 | 2005-06-07 | International Business Machines Corporaiton | Packet preprocessing interface for multiprocessor network handler |
JP3914771B2 (ja) * | 2002-01-09 | 2007-05-16 | 株式会社日立製作所 | パケット通信装置及びパケットデータ転送制御方法 |
US7290261B2 (en) * | 2003-04-24 | 2007-10-30 | International Business Machines Corporation | Method and logical apparatus for rename register reallocation in a simultaneous multi-threaded (SMT) processor |
-
2003
- 2003-10-08 US US10/682,579 patent/US20040103248A1/en not_active Abandoned
-
2004
- 2004-07-23 WO PCT/US2004/023871 patent/WO2005013061A2/en active Application Filing
- 2004-07-23 JP JP2006521286A patent/JP4498356B2/ja not_active Expired - Fee Related
- 2004-07-23 KR KR1020067001707A patent/KR101279473B1/ko not_active IP Right Cessation
- 2004-07-26 TW TW093122312A patent/TW200515277A/zh unknown
-
2006
- 2006-12-29 HK HK06114311.7A patent/HK1093796A1/xx unknown
-
2008
- 2008-08-25 JP JP2008215090A patent/JP2009026320A/ja active Pending
-
2009
- 2009-11-20 JP JP2009264696A patent/JP2010079921A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003036482A2 (en) * | 2001-10-22 | 2003-05-01 | Sun Microsystems, Inc. | Multi-core multi-thread processor |
JP2005507115A (ja) * | 2001-10-22 | 2005-03-10 | サン・マイクロシステムズ・インコーポレーテッド | マルチコアマルチスレッドプロセッサ |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013018230A1 (ja) * | 2011-08-04 | 2013-02-07 | 富士通株式会社 | データ処理システムおよびデータ処理方法 |
JPWO2013018230A1 (ja) * | 2011-08-04 | 2015-03-05 | 富士通株式会社 | データ処理システムおよびデータ処理方法 |
JP2018519581A (ja) * | 2015-05-29 | 2018-07-19 | クアルコム,インコーポレイテッド | メモリ管理ユニットに対するマルチスレッド変換およびトランザクション並べ替え |
Also Published As
Publication number | Publication date |
---|---|
KR20060132538A (ko) | 2006-12-21 |
TW200515277A (en) | 2005-05-01 |
WO2005013061A2 (en) | 2005-02-10 |
HK1093796A1 (en) | 2007-03-09 |
KR101279473B1 (ko) | 2013-07-30 |
JP2007500886A (ja) | 2007-01-18 |
JP2010079921A (ja) | 2010-04-08 |
US20040103248A1 (en) | 2004-05-27 |
WO2005013061A3 (en) | 2005-12-08 |
JP4498356B2 (ja) | 2010-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4498356B2 (ja) | 最新型プロセッサ | |
US7627717B2 (en) | Advanced processor messaging apparatus including fast messaging ring components configured to accomodate point-to-point transfer of non-memory related messages | |
US7991977B2 (en) | Advanced processor translation lookaside buffer management in a multithreaded system | |
US8015567B2 (en) | Advanced processor with mechanism for packet distribution at high line rate | |
US9264380B2 (en) | Method and apparatus for implementing cache coherency of a processor | |
US8953628B2 (en) | Processor with packet ordering device | |
US8176298B2 (en) | Multi-core multi-threaded processing systems with instruction reordering in an in-order pipeline | |
US7461215B2 (en) | Advanced processor with implementation of memory ordering on a ring based data movement network | |
US20110225398A1 (en) | Advanced processor scheduling in a multithreaded system | |
US20050033889A1 (en) | Advanced processor with interrupt delivery mechanism for multi-threaded multi-CPU system on a chip | |
US7461213B2 (en) | Advanced processor system using request, data, snoop, and response rings | |
US20110255542A1 (en) | Advanced processor with mechanism for fast packet queuing operations | |
US7467243B2 (en) | Advanced processor with scheme for optimal packet flow in a multi-processor system on a chip | |
WO2009017668A1 (en) | Delegating network processor operations to star topology serial bus interfaces | |
US9088474B2 (en) | Advanced processor with interfacing messaging network to a CPU | |
US20050033831A1 (en) | Advanced processor with a thread aware return address stack optimally used across active threads |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20081027 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111206 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20120202 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20120202 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120306 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120309 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120605 |