SPARC

ウィキペディアから、無料の百科事典
ナビゲーションにジャンプ 検索にジャンプ

SPARC
Sparc-logo.svg
デザイナーサン・マイクロシステムズオラクル社が買収)[1] [2]
ビット64ビット(32→64)
紹介された1986年(生産)
1987年(出荷)
バージョンV9(1993)/ OSA2017
デザインRISC
タイプ登録–登録
エンコーディング修理済み
分岐条件コード
エンディアンネスBi(ビッグ→Bi)
ページサイズ8 KB(4KB→8KB)
拡張機能VIS 1.0、2.0、3.0、4.0
開けるはい、ロイヤリティフリーです
レジスター
一般的用途31(G0 = 0;非グローバルレジスタはレジスタウィンドウを使用します)
浮動小数点32(32単精度、32倍精度、または16四倍精度として使用可能)
Sun UltraSPARC IIマイクロプロセッサ(1997)

SPARCスケーラブルプロセッサアーキテクチャ)は、SunMicrosystemsによって最初に開発された縮小命令セットコンピューティング(RISC)命令セットアーキテクチャです。[1] [2]その設計は、1980年代初頭に開発された実験的なバークレーRISCシステムの影響を強く受けました。1986年に最初に開発され、1987年にリリースされた[3] [2] SPARCは、最も成功した初期の商用RISCシステムの1つであり、その成功により、1980年代から90年代にかけて多くのベンダーから同様のRISC設計が導入されました。

元の32ビットアーキテクチャ(SPARC V7)の最初の実装は、 SunのSun-4 ワークステーションおよびサーバーシステムで使用され、 Motorola68000シリーズのプロセッサに基づく以前のSun-3システムに取って代わりました。SPARC V8は、1992年にリリースされたSuperSPARCシリーズのプロセッサの一部である多くの改良を追加しました。1993年にリリースされたSPARC V9は、64ビットアーキテクチャを導入し、1995年にSunのUltraSPARCプロセッサで最初にリリースされました。その後、SPARCプロセッサが使用されました。対称マルチプロセッシングSMP)および不均一メモリアクセスCC-NUMA ))Sun、SolbourneFujitsuなどが製造したサーバー。

設計は1989年にSPARCInternational Trade Groupに引き渡され、それ以来、そのアーキテクチャはメンバーによって開発されてきました。SPARC Internationalは、SPARCアーキテクチャのライセンスとプロモーション、SPARC商標(所有するSPARCを含む)の管理、および適合性テストの提供も担当しています。SPARC Internationalは、SPARCアーキテクチャを拡張して、より大きなエコシステムを作成することを目的としていました。SPARCは、AtmelBipolar Integrated TechnologyCypress SemiconductorFujitsuMatsushitaTexasInstrumentsなどのいくつかのメーカーにライセンス供与されています。SPARC Internationalのおかげで、SPARCは完全にオープンで、非独占的で、ロイヤリティフリーです。

2017年9月現在、最新の商用ハイエンドSPARCプロセッサは、富士通SPARC64 XII(2017年にSPARC M12サーバー用に導入)と、2017年9月にハイエンドサーバー用に導入された OracleSPARCM8です。

2017年9月1日金曜日、2016年11月にOracle Labsで開始された一連のレイオフの後、OracleはM8の完了後にSPARC設計を終了しました。テキサス州オースティンのプロセッサコア開発グループの多くは、カリフォルニア州サンタクララとマサチューセッツ州バーリントンのチームと同様に解雇されました。[4] [5]

富士通はまた、2020年から22年(以前は2021年に計画されていた)と2026年から27年に、富士通の古いSPARC M12サーバーの2つの「拡張」バージョンの後、SPARCの生産を中止します(すでに独自のARMベースのCPUの生産に移行しています)。 2029年の販売終了、UNIXサーバーの販売終了、および1年後のメインフレームの販売終了と2034年のサポート終了「顧客の近代化を促進するため」。[6]

機能

SPARCアーキテクチャは、カリフォルニア大学バークレー校のRISC IおよびII IBM 801など、初期のRISC設計の影響を強く受けていましたこれらの元のRISC設計は最小限であり、機能やオペコードをできるだけ少なくし、クロックサイクルごとにほぼ1命令の速度で命令を実行することを目的としていました。これにより、乗算や除算などの命令がないなど、多くの点でMIPSアーキテクチャに類似しています。この初期のRISCの動きの影響を受けるSPARCのもう1つの機能は、分岐遅延スロットです。

SPARCプロセッサには通常、160もの汎用レジスタが含まれています。「OracleSPARCArchitecture 2015」仕様によると、「実装には72〜640個の汎用64ビットレジスタが含まれる場合があります」。[7]どの時点でも、ソフトウェアからすぐに見えるのは32個だけです。8個はグローバルレジスタのセットであり(そのうちの1個、g0はゼロに配線されているため、レジスタとして使用できるのは7個だけです)。他の24はレジスタのスタックからのものです。これらの24個のレジスタは、いわゆるレジスタウィンドウを形成します。、および関数の呼び出し/戻り時に、このウィンドウはレジスタスタックを上下に移動します。各ウィンドウには8つのローカルレジスタがあり、隣接する各ウィンドウと8つのレジスタを共有します。共有レジスタは関数パラメータの受け渡しと値の戻りに使用され、ローカルレジスタは関数呼び出し間でローカル値を保持するために使用されます。

SPARCの「スケーラブル」は、SPARC仕様により、実装が組み込みプロセッサから大規模なサーバープロセッサまで、すべて同じコア(非特権)命令セットを共有するように拡張できるという事実に由来しています。スケーリングできるアーキテクチャパラメータの1つは、実装されているレジスタウィンドウの数です。この仕様では、3〜32個のウィンドウを実装できるため、実装では32個すべてを実装してコールスタックの効率を最大化するか、3個だけを実装して設計のコストと複雑さを軽減するか、それらの間にいくつかのウィンドウを実装するかを選択できます。同様のレジスタファイル機能を含む他のアーキテクチャには、 Intel i960IA-64、およびAMD29000が含まれます。

アーキテクチャはいくつかの改訂を経ています。バージョン8でハードウェアの乗算および除算機能が追加されました。 [8] [9] 1994年に公開されたバージョン9のSPARC仕様に64ビット(アドレス指定とデータ)が追加されました。 [10]

SPARCバージョン8では、浮動小数点レジスタファイルに16個の倍精度レジスタがあります。それぞれを2つの単精度レジスタとして使用でき、合計32の単精度レジスタを提供します。倍精度レジスタの奇数と偶数のペアを四倍精度レジスタとして使用できるため、8つの四倍精度レジスタが可能になりますSPARCバージョン9では、さらに16個の倍精度レジスタ(8個の四倍精度レジスタとしてアクセスすることもできます)が追加されましたが、これらの追加レジスタは単精度レジスタとしてアクセスできません。2004年現在、ハードウェアに四倍精度演算を実装しているSPARCCPUはありません。[11]

タグ付きの加算および減算命令は、値に対して加算および減算を実行し、両方のオペランドの下位2ビットが0であることを確認し、そうでない場合はオーバーフローを報告します。これは、MLLisp、およびタグ付き整数形式を使用する可能性のある同様の言語 のランタイムの実装に役立ちます。

32ビットSPARCV8アーキテクチャエンディアンは、純粋にビッグエンディアンです。64ビットSPARCV9アーキテクチャはビッグエンディアン命令を使用しますが、アプリケーション命令(ロードストア)レベルまたはメモリページレベル( MMU設定)。後者は、PCIバス上のデバイスなど、本質的にリトルエンディアンのデバイスからデータにアクセスするためによく使用されます。

歴史

アーキテクチャには3つの主要な改訂があります。最初に公開されたバージョンは、1986年の32ビットSPARCバージョン7(V7)でした。拡張SPARCアーキテクチャ定義であるSPARCバージョン8(V8)は、1990年にリリースされました。V7とV8の主な違いは、整数乗算と命令を分割し、80ビットの「拡張精度」浮動小数点演算から128ビットの「4精度」演算にアップグレードします。SPARC V8は、32ビットマイクロプロセッサアーキテクチャのIEEE標準で あるIEEE標準1754-1994の基盤として機能しました。

64ビットSPARCアーキテクチャであるSPARCバージョン9は、1993年にSPARC Internationalによってリリースされました。これは、 Amdahl Corporation富士通ICLLSI Logic松下PhilipsRoss TechnologySun Microsystems、およびSunMicrosystemsで構成されるSPARCアーキテクチャ委員会によって開発されました。 TexasInstruments新しい仕様は、常に完全なSPARCV9レベル1仕様に準拠しています。

2002年に、SPARC共同プログラミング仕様1(JPS1)が富士通とSunによってリリースされ、両社のCPUに同じように実装されたプロセッサ機能(「共通性」)が記述されました。JPS1に準拠した最初のCPUは、SunのUltraSPARCIIIとFujitsuのSPARC64Vでした。JPS1でカバーされていない機能は、「実装サプリメント」の各プロセッサについて文書化されています。

2003年の終わりに、マルチコアCPUをサポートするためにJPS2がリリースされました。JPS2に準拠した最初のCPUは、SunのUltraSPARCIVとFujitsuのSPARC64VIでした。

2006年の初めに、Sunは拡張アーキテクチャ仕様であるUltraSPARC Architecture2005をリリースしました。これには、SPARC V9の非特権部分とほとんどの特権部分だけでなく、UltraSPARC III、IV IV +のプロセッサ世代を通じて開発されたすべてのアーキテクチャ拡張、およびUltraSPARCT1実装 以降のCMT拡張も含まれます。

  • VIS1およびVIS2命令セット拡張と関連するGSRレジスタ
  • GLレジスタによって制御される複数レベルのグローバルレジスタ
  • Sunの64ビットMMUアーキテクチャ
  • 特権命令ALLCLEAN、OTHERW、NORMALW、およびINVALW
  • VERレジスタへのアクセスが超特権になりました
  • SIR命令は現在超特権的です

2007年、SunはUltraSPARCT2の実装に準拠し た更新された仕様であるUltraSPARCArchitecture2007をリリースしました。

2012年8月、オラクル社は新しい仕様であるOracle SPARC Architecture 2011を利用可能にしました。これは、リファレンスの全体的な更新に加えて、2007仕様にVIS3命令セット拡張とハイパー特権モードを追加します。[12]

2015年10月、オラクルは、新しいOracle SPARC Architecture2015仕様に基づく最初のプロセッサであるSPARCM7をリリースしました。[7] [13] このリビジョンには、VIS 4命令セット拡張機能、ハードウェア支援暗号化、およびシリコン保護メモリ(SSM)が含まれています。[14]

SPARCアーキテクチャは、1987年の最初のSPARC V7実装から、Sun UltraSPARCアーキテクチャの実装まで、継続的なアプリケーションバイナリ互換性を提供してきました。

SPARCのさまざまな実装の中で、SunのSuperSPARCおよびUltraSPARC-Iは非常に人気があり、SPECCPU95およびCPU2000ベンチマークのリファレンスシステムとして使用されました。296 MHz UltraSPARC-IIは、SPECCPU2006ベンチマークのリファレンスシステムです。

アーキテクチャ

SPARCは、ロード/ストアアーキテクチャ(レジスタ-レジスタアーキテクチャとも呼ばれます)です。メモリへのアクセスに使用されるロード/ストア命令を除いて、すべての命令はレジスタで動作します。

登録

SPARCアーキテクチャには、オーバーラップレジスタウィンドウスキームがあります。いつでも、32個の汎用レジスタが表示されます。ハードウェアのCurrentWindow Pointer(CWP)変数は、現在のセットを指します。レジスタファイルの合計サイズはアーキテクチャの一部ではなく、 CWPは5ビットでPSRレジスタの一部であるため、テクノロジの向上に応じてレジスタを追加できます。SPARCv7およびv8では最大32ウィンドウです。

SPARC v7およびv8では、CWPは通常、SAVE命令によってデクリメントされるか(プロシージャ呼び出し中にSAVE命令によって使用され、新しいスタックフレームを開いてレジスタウィンドウを切り替えます)、またはRESTORE命令によってインクリメントされます(前の呼び出しに切り替えます)。手順から戻る)。トラップイベント(割り込み、例外、またはTRAP命令)およびRETT命令(トラップからの復帰)もCWPを変更します。SPARC-V9の場合、CWPレジスタはRESTORE命令中にデクリメントされ、SAVE命令中にインクリメントされます。これは、SPARC-V8でのPSR.CWPの動作の反対です。この変更は、非特権命令には影響しません。

ウィンドウアドレス指定
登録グループ ニモニック 住所を登録する 可用性
グローバル G0-G7 R [0] -R [7] 常に同じもので、G0は常にゼロです。
アウト O0-O7 R [8] -R [15] 呼び出されたサブルーチンに「in」として渡され、そこから返されます。
ローカル L0-L7 R [16] -R [23] 現在のサブルーチンに対して本当にローカルです。
I0-I7 R [24] -R [31] 発信者から引き渡され、「アウト」として発信者に返されます。

SPARCレジスタは上の図に示されています。

命令フォーマット

すべてのSPARC命令は、完全な32ビットワードを占有し、ワード境界から始まります。最初の2ビットで区別される4つのフォーマットが使用されます。すべての算術および論理命令には、2つのソースオペランドと1つのデスティネーションオペランドがあります。

SETHI命令フォーマットは、22ビットのイミディエートオペランドを指定されたレジスタの上位22ビットにコピーし、下位10ビットのそれぞれを0に設定します。

ALUレジスタをフォーマットします。両方のソースがレジスタです。ALUイミディエート形式で、1つのソースはレジスタで、もう1つは-4096〜 +4095の範囲の定数です。ビット13はそれらの間で選択します。どちらの場合も、宛先は常にレジスターです。

分岐フォーマット命令は、転送または条件分岐を制御します。iccまたはfccフィールドは、ブランチの種類を指定します22ビットの変位フィールドは、条件付き分岐が最大8メガバイトまで順方向または逆方向に進むことができるように、ターゲットの相対アドレスをワードで示します。ANNUL (A)ビットは、いくつかの遅延スロットを取り除くために使用されます条件分岐で0の場合、通常どおり遅延スロットが実行されます。1の場合、遅延スロットは分岐が行われた場合にのみ実行されます。実行されない場合、条件分岐に続く命令はスキップされます。

CALL命令は、30ビットのプログラムカウンター相対ワードオフセットを使用します。この値は、呼び出し元またはアドレス空間全体から4ギガバイト以内の命令に到達するのに十分です。CALL命令は、出力レジスタO7とも呼ばれるレジスタR15にリターンアドレスを格納します。

算術命令と同様に、SPARCアーキテクチャはロード命令とストア命令に2つの異なるフォーマットを使用します。最初の形式は、1つまたは2つのレジスタを実効アドレスとして使用する命令に使用されます。2番目の形式は、実効アドレスとして整数定数を使用する命令に使用されます。

SPARC命令フォーマット
タイプ 少し
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SETHIフォーマット 00 RD 100 即時定数22ビット
Iブランチフォーマット 00 A icc 010 変位定数22ビット
Fブランチフォーマット 00 A fcc 110 変位定数22ビット
CALL disp 01 PC相対変位
算術レジスタ 10 RD オペコード RS 1 0 0 RS 2
算術即時 10 RD オペコード RS 1 1 即時定数13ビット
FPU 10 FD 110100/110101 FS 1 opf FS 2
LD / STレジスタ 11 RD オペコード RS 1 0 0 RS 2
LD / ST即時 11 RD オペコード RS 1 1 即時定数13ビット

ほとんどの算術命令は、一方のバージョンがNZVC条件コードビットを設定するのとペアになっており、もう一方のバージョンはそうではありません。これは、コンパイラが遅延スロットを埋めようとするときに命令を移動する方法を備えているためです。

SPARC v7には乗算または除算の命令はありませんが、MULSCCがあります。これは、1ビットの乗算テストの1つのステップを実行し、条件付きで被乗数を積に加算します。これは、MULSCCがRISCの哲学に従って1クロックサイクルで完了することができるためです。

SPARCアーキテクチャライセンシー

次の組織がSPARCアーキテクチャのライセンスを取得しています。

実装

名前(コードネーム) モデル 周波数(MHz) アーチ。バージョン 総スレッド数[注1] プロセス(nm) トランジスタ(百万) ダイサイズ(mm 2 IOピン 電力(W) 電圧(V) L1 Dcache(KB) L1 Icache(KB) L2キャッシュ(KB) L3キャッシュ(KB)
SPARC MB86900 富士通[1] [3] [2] 14.28–33 V7 1986年 1×1 = 1 1300 0.11 256 0〜128(統合) 無し 無し
SPARC 各種【注2】 14.28–40 V7 1989–1992 1×1 = 1 800〜1300 〜0.1–1.8 160〜256 0〜128(統合) 無し 無し
MN10501(KAP) ソルボーンコンピュータ

松下[15]

33-36 V8 1990-1991 1x1 = 1 1.0 [16] 8 8 0〜256 無し
microSPARC I(津波) TI TMS390S10 40〜50 V8 1992 1×1 = 1 800 0.8 225? 288 2.5 5 2 4 無し 無し
SuperSPARC I(バイキング) TI TMX390Z50 / Sun STP1020 33〜60 V8 1992 1×1 = 1 800 3.1 293 14.3 5 16 20 0〜2048 無し
SPARClite 富士通MB8683x 66〜108 V8E 1992 1×1 = 1 144、176 2.5 / 3.3–5.0 V、2.5–3.3 V 1、2、8、16 1、2、8、16 無し 無し
hyperSPARC(コロラド1) ロスRT620A 40〜90 V8 1993年 1×1 = 1 500 1.5 5? 0 8 128〜256 無し
microSPARC II(Swift) 富士通MB86904 / Sun STP1012 60〜125 V8 1994年 1×1 = 1 500 2.3 233 321 5 3.3 8 16 無し 無し
hyperSPARC(コロラド2) ロスRT620B 90〜125 V8 1994年 1×1 = 1 400 1.5 3.3 0 8 128〜256 無し
SuperSPARC II(ボイジャー) サンSTP1021 75〜90 V8 1994年 1×1 = 1 800 3.1 299 16 16 20 1024〜2048 無し
hyperSPARC(コロラド3) ロスRT620C 125〜166 V8 1995年 1×1 = 1 350 1.5 3.3 0 8 512〜1024 無し
TurboSPARC 富士通MB86907 160〜180 V8 1996年 1×1 = 1 350 3.0 132 416 7 3.5 16 16 512 無し
UltraSPARC(スピットファイア) サンSTP1030 143–167 V9 1995年 1×1 = 1 470 3.8 315 521 30 [注3] 3.3 16 16 512〜1024 無し
UltraSPARC(ホーネット) サンSTP1030 200 V9 1995年 1×1 = 1 420 5.2 265 521 3.3 16 16 512〜1024 無し
hyperSPARC(コロラド4) ロスRT620D 180〜200 V8 1996年 1×1 = 1 350 1.7 3.3 16 16 512 無し
SPARC64 富士通(HAL) 101〜118 V9 1995年 1×1 = 1 400 マルチチップ 286 50 3.8 128 128
SPARC64 II 富士通(HAL) 141〜161 V9 1996年 1×1 = 1 350 マルチチップ 286 64 3.3 128 128
SPARC64 III 富士通(HAL)MBCS70301 250〜330 V9 1998年 1×1 = 1 240 17.6 240 2.5 64 64 8192
UltraSPARC IIs(ブラックバード) サンSTP1031 250〜400 V9 1997年 1×1 = 1 350 5.4 149 521 25 [注4] 2.5 16 16 1024または4096 無し
UltraSPARC IIs(サファイア-ブラック) サンSTP1032 / STP1034 360〜480 V9 1999年 1×1 = 1 250 5.4 126 521 21 [注5] 1.9 16 16 1024〜8192 無し
UltraSPARC IIi(セイバー) サンSME1040 270〜360 V9 1997年 1×1 = 1 350 5.4 156 587 21 1.9 16 16 256〜2048 無し
UltraSPARC IIi(サファイア-レッド) サンSME1430 333〜480 V9 1998年 1×1 = 1 250 5.4 587 21 [注6] 1.9 16 16 2048 無し
UltraSPARC IIe(ハチドリ) サンSME1701 400〜500 V9 1999年 1×1 = 1 180アル 370 13 [注7] 1.5〜1.7 16 16 256 無し
UltraSPARC IIi(IIe +)(ファントム) サンSME1532 550〜650 V9 2000 1×1 = 1 180 Cu 370 17.6 1.7 16 16 512 無し
SPARC64 GP 富士通SFCB81147 400〜563 V9 2000 1×1 = 1 180 30.2 217 1.8 128 128 8192
SPARC64 GP - 600〜810 V9 1×1 = 1 150 30.2 1.5 128 128 8192
SPARC64 IV 富士通MBCS80523 450〜810 V9 2000 1×1 = 1 130 128 128 2048
UltraSPARC III(チーター) サンSME1050 600 JPS1 2001年 1×1 = 1 180アル 29 330 1368 53 1.6 64 32 8192 無し
UltraSPARC III(チーター) サンSME1052 750〜900 JPS1 2001年 1×1 = 1 130アル 29 1368 1.6 64 32 8192 無し
UltraSPARC III Cu(チーター+) サンSME1056 900〜1200 JPS1 2001年 1×1 = 1 130 Cu 29 232 1368 50 [注8] 1.6 64 32 8192 無し
UltraSPARC IIIi(ハラペーニョ) サンSME1603 1064〜1593 JPS1 2003年 1×1 = 1 130 87.5 206 959 52 1.3 64 32 1024 無し
SPARC64 V(ゼウス) 富士通 1100〜1350 JPS1 2003年 1×1 = 1 130 190 289 269 40 1.2 128 128 2048
SPARC64 V +(オリンパス-B) 富士通 1650〜2160 JPS1 2004年 1×1 = 1 90 400 297 279 65 1 128 128 4096
UltraSPARC IV(ジャガー) サンSME1167 1050〜1350 JPS2 2004年 1×2 = 2 130 66 356 1368 108 1.35 64 32 16384 無し
UltraSPARC IV +(パンサー) サンSME1167A 1500〜2100 JPS2 2005年 1×2 = 2 90 295 336 1368 90 1.1 64 64 2048 32768
UltraSPARC T1(ナイアガラ) サンSME1905 1000〜1400 UA2005 2005年 4×8 = 32 90 300 340 1933年 72 1.3 8 16 3072 無し
SPARC64 VI(オリンパス-C) 富士通 2150〜2400 JPS2 2007年 2×2 = 4 90 540 422 120〜150 1.1 128×2 128×2 4096〜6144 無し
UltraSPARC T2(ナイアガラ2) サンSME1908A 1000〜1600 UA2007 2007年 8×8 = 64 65 503 342 1831年 95 1.1〜1.5 8 16 4096 無し
UltraSPARC T2 Plus(ビクトリアフォールズ) サンSME1910A 1200〜1600 UA2007 2008年 8×8 = 64 65 503 342 1831年 8 16 4096 無し
SPARC64 VII(ジュピター)[17] 富士通 2400〜2880 JPS2 2008年 2×4 = 8 65 600 445 150 64×4 64×4 6144 無し
UltraSPARC "RK"(ロック[18] サンSME1832 2300 ???? キャンセル[19] 2×16 = 32 65 396 2326 32 32 2048
SPARC64 VIIIfx(金星)[20] [21] 富士通 2000 JPS2 / HPC-ACE 2009年 1×8 = 8 45 760 513 1271 58 32×8 32×8 6144 無し
LEON2FT Atmel AT697F 100 V8 2009年 1×1 = 1 180 196 1 1.8 / 3.3 16 32 — |なし
SPARC T3(レインボーフォールズ) Oracle / Sun 1650 UA2007 2010年 8×16 = 128 40 [22] ???? 371 139 8 16 6144 無し
ギャラクシーFT-1500 NUDT(中国) 1800 UA2007? 201? 8×16 = 128 40 ???? ??? 65 16×16 16×16 512×16 4096
SPARC64 VII +(Jupiter-EまたはM3)[23] [24] 富士通 2667〜3000 JPS2 2010年 2×4 = 8 65 160 64×4 64×4 12288 無し
LEON3FT コブハムガイスラーGR712RC 100 V8E 2011 1×2 = 2 180 1.5 [注9] 1.8 / 3.3 4x4Kb 4x4Kb 無し 無し
R1000 MCST(ロシア) 1000 JPS2 2011 1×4 = 4 90 180 128 15 1、1.8、2.5 32 16 2048 無し
SPARC T4(ヨセミテ滝)[25] オラクル 2850〜3000 OSA2011 2011 8×8 = 64 40 855 403 240 16×8 16×8 128×8 4096
SPARC64 IXfx [26] [27] [28] 富士通 1850年 JPS2 / HPC-ACE 2012年 1x16 = 16 40 1870年 484 1442 110 32×16 32×16 12288 無し
SPARC64 X(アテナ)[29] 富士通 2800 OSA2011 / HPC-ACE 2012年 2×16 = 32 28 2950 587.5 1500 270 64×16 64×16 24576 無し
SPARC T5 オラクル 3600 OSA2011 2013年 8×16 = 128 28 1500 478 16×16 16×16 128×16 8192
SPARC M5 [30] オラクル 3600 OSA2011 2013年 8×6 = 48 28 3900 511 16×6 16×6 128×6 49152
SPARC M6 [31] オラクル 3600 OSA2011 2013年 8×12 = 96 28 4270 643 16×12 16×12 128×12 49152
SPARC64 X +(アテナ+)[32] 富士通 3200〜3700 OSA2011 / HPC-ACE 2014年 2×16 = 32 28 2990 600 1500 392 64×16 64×16 24M 無し
SPARC64 XIfx [33] 富士通 2200 JPS2 / HPC-ACE2 2014年 1×(32 + 2)= 34 20 3750 1001 64×34 64×34 12M×2 無し
SPARC M7 [34] [35] オラクル 4133 OSA2015 2015年 8×32 = 256 20 > 10,000 16×32 16×32 256×24 65536
SPARC S7 [36] [37] オラクル 4270 OSA2015 2016年 8×8 = 64 20 ???? 16×8 16×8 256×2 + 256×4 16384
SPARC64 XII [38] 富士通 4250 OSA201?/ HPC-ACE 2017年 8×12 = 96 20 5500 795 1860年 64×12 64×12 512×12 32768
SPARC M8 [39] [40] オラクル 5000 OSA2017 2017年 8×32 = 256 20 32×32 16×32 128×32 + 256×8 65536
LEON4 コブハムガイスラーGR740 250 [注10] V8E 2017年 1×4 = 4 32 1.2 / 2.5 / 3.3 4x4 4x4 2048 無し
LEON5 コブハムガイスラー V8E 2019年 16〜8192 無し
名前(コードネーム) モデル 周波数(MHz) アーチ。バージョン 総スレッド数[注1] プロセス(nm) トランジスタ(百万) ダイサイズ(mm 2 IOピン 電力(W) 電圧(V) L1 Dcache(KB) L1 Icache(KB) L2キャッシュ(KB) L3キャッシュ(KB)

  1. ^ abコアあたり スレッド数×コア数
  2. ^ さまざまなSPARCV7の実装は、Fujitsu、 LSI Logic、Weitek、Texas Instruments、Cypress、およびTemicによって作成されました。SPARC V7プロセッサは通常、整数ユニット(IU)、浮動小数点ユニット(FPU)、メモリ管理ユニット(MMU)、およびキャッシュメモリで構成される複数のディスクリートチップで構成されていました。逆に、Atmel(現在のMicrochip Technology)TSC695は、シングルチップSPARCV7実装です。
  3. ^ @ 167 MHz
  4. ^ @ 250 MHz
  5. ^ @ 400 MHz
  6. ^ @ 440 MHz
  7. ^ 最大 @ 500 MHz
  8. ^ @ 1200 MHz
  9. ^ I / Oバスを除く
  10. ^ 名目; 接続されているRAM機能に応じて100〜424MHzの仕様

オペレーティングシステムのサポート

SPARCマシンは、一般的にSunのSunOSSolaris、または派生illumosOpenIndianaを含むOpenSolarisを使用していますが、 NeXTSTEPRTEMSFreeBSDOpenBSDNetBSDLinuxなどの他のオペレーティングシステムも使用されています。

1993年、IntergraphはWindows NTのSPARCアーキテクチャへの移植を発表しましたが[41]、後にキャンセルされました。

2015年10月、オラクルは「Linux forSPARCリファレンスプラットフォーム」を発表しました。[42]

オープンソースの実装

SPARCアーキテクチャの 完全にオープンソースの実装がいくつか存在します。

  • LEONは、32ビット耐放射線性のSPARC V8実装であり、特に宇宙での使用向けに設計されています。ソースコードVHDLで記述されており、 GPLの下でライセンスされています。
  • 2006年にリリースされたOpenSPARCT1は、 UltraSPARC Architecture 2005およびSPARCバージョン9(レベル1)に準拠した64ビットの32スレッド実装です。ソースコードはVerilogで記述されており、多くのライセンスの下でライセンスされています。ほとんどのOpenSPARCT1ソースコードはGPLの下でライセンスされています。既存のオープンソースプロジェクトに基づくソースは、引き続き現在のライセンスでライセンスされます。バイナリプログラムは、バイナリソフトウェア使用許諾契約に基づいて使用許諾されます。
  • S1、OpenSPARCT1設計に基づく64ビットのWishbone準拠のCPUコア。これは、4ウェイSMTが可能な単一のUltraSPARCv9コアです。T1と同様に、ソースコードはGPLの下でライセンスされています。
  • 2008年にリリースされたOpenSPARCT2は、 UltraSPARC Architecture 2007およびSPARCバージョン9(レベル1)に準拠した64ビット64スレッドの実装です。ソースコードはVerilogで記述されており、多くのライセンスの下でライセンスされています。ほとんどのOpenSPARCT2ソースコードはGPLの下でライセンスされています。既存のオープンソースプロジェクトに基づくソースは、引き続き現在のライセンスでライセンスされます。バイナリプログラムは、バイナリソフトウェア使用許諾契約に基づいて使用許諾されます。

SPARCアーキテクチャ用の 完全なオープンソースシミュレータも存在します。

スーパーコンピューター

HPCロードの場合、富士通は、HPC-ACE(High Performance Computing – Arithmetic Computational Extensions)と呼ばれる新しい命令拡張セットを備えた 専用のSPARC64fxプロセッサを構築します。

富士通の京コンピュータは、 2011年6月および2011年11月のTOP500リストで1位にランクされました。これは、それぞれ8コアの88,128個のSPARC64 VIIIfx CPUを組み合わせて、合計705,024コアになります。これは、当時のTOP500の他のシステムのほぼ2倍です。京コンピュータは、リストにある次の5つのシステムを組み合わせたものよりも強力であり、スーパーコンピュータシステムの中で最も高いパフォーマンス対電力比を備えていました。[43]また、2011年6月のGreen500リストで、 824.56 MFLOPS / Wのスコアで6位にランクされました。[44] TOP500 の2012年11月のリリースでは、京コンピュータはトップ3の中で群を抜いて最も強力なものを使用して3位にランクされました。[45]対応するGreen500リリース で85位にランクされました。[46]新しいHPCプロセッサであるIXfxおよびXIfxは、最近のPRIMEHPCFX10およびFX100スーパーコンピューターに含まれていました。

Tianhe-2( 2014年11月現在のTOP500 No. 1 [47] )には、中国で開発されたGalaxy FT- 1500OpenSPARCベースのプロセッサを搭載したノードが多数あります。ただし、これらのプロセッサーはLINPACKスコアに寄与しませんでした。[48] [49]

も参照してください

  • ERC32  — SPARCV7仕様に基づく
  • Ross Technology、  Inc。— 1980年代と1990年代のSPARCマイクロプロセッサ開発者
  • Sparcle  — MITAlewifeプロジェクトで使用されるマルチプロセッシングサポートを備えた修正SPARC
  • LEON  —スペース定格のSPARCV8プロセッサ。
  • R1000  — SPARCV9仕様に基づくロシアのクアッドコアマイクロプロセッサ
  • Galaxy FT-1500  —中国の16コアOpenSPARCベースのプロセッサ

参考文献

  1. ^ a bc 「ARMをスーパーの領域に 持ち込む 富士通」CPUシャックミュージアム2016年6月21日。2019年6月30日のオリジナルからアーカイブ2019年6月30日取得
  2. ^ a b c d "タイムライン"SPARCインターナショナル2019年4月24日にオリジナルからアーカイブされました2019年6月30日取得
  3. ^ ab 「 FujitsuSPARC cpu-collection.de2016年8月6日にオリジナルからアーカイブされました2019年6月30日取得
  4. ^ Steven J. Vaughan-Nichols(2017年9月5日)。「Sunset:Oracleは最後のSun製品ラインを閉鎖します」ZDNet2017年9月10日にオリジナルからアーカイブされました2017年9月11日取得
  5. ^ ショーンニコルズ(2017年8月31日)。「オラクルは最終的に避けられないものの延長をやめることを決定し、ハードウェアの一時解雇を開始します」レジスター2017年9月12日にオリジナルからアーカイブされました2017年9月11日取得
  6. ^ 「ロードマップ:FujitsuGlobal」www.fujitsu.com 2022年2月15日取得
  7. ^ a b 「OracleSPARCアーキテクチャ2015:1つのアーキテクチャ...複数の革新的な実装」(PDF)ドラフトD1.0.0。2016年1月12日。2016年4月24日のオリジナルからアーカイブ(PDF)2016年6月13日取得IMPL。DEP。#2-V8:Oracle SPARCアーキテクチャの実装には、72〜640個の汎用64ビットRレジスタが含まれる場合があります。これは、レジスタをMAXPGL + 1セットのグローバルRレジスタと、レジスタウィンドウと呼ばれるそれぞれ16個のレジスタからなるN_REG_WINDOWSセットの循環スタックにグループ化することに対応します。存在するレジスタウィンドウの数(N_REG_WINDOWS)は、実装に依存し、3〜32(両端を含む)の範囲内です。
  8. ^ 「SPARCオプション」GNUコンパイラコレクション(GCC)を使用、GNU20131月9日にオリジナルからアーカイブ、 2013年1月8日取得
  9. ^ GCCを使用したSPARC最適化OSNews、2004年2月23日、2013年5月23日にオリジナルからアーカイブ、 2013年1月8日取得
  10. ^ ウィーバー、DL; Germond、T.、eds。(1994)、「SPARCアーキテクチャマニュアル、バージョン9」SPARC International、Inc.Prentice HallISBN 0-13-825001-42012年1月18日のオリジナルからアーカイブ (PDF) 、 2011年12月6日取得
  11. ^ 「SPARCの動作と実装」数値計算ガイド– Sun Studio10Sun Microsystems、 Inc.2004。 2022年1月25日のオリジナルからアーカイブ2011年9月24日取得ただし、ハードウェアが浮動小数点命令を正常に完了しない場合は、次の4つの状況があります。...命令がハードウェアによって実装されていない(... SPARC FPUの四倍精度命令など)。
  12. ^ 「OracleSPARCArchitecture 2011」(PDF)Oracle Corporation、2014年5月21日、2015年9月24日のオリジナルからアーカイブ(PDF) 、 2015年11月25日取得
  13. ^ ジョンソート。「SPARCM7イノベーション」OracleWebサイトOracleCorporation2015年9月5日にオリジナルからアーカイブされました2015年10月13日取得
  14. ^ 「シリコンクラウドのソフトウェア-Oracle」www.oracle.com2019年1月21日にオリジナルからアーカイブされました2019年1月21日取得
  15. ^ 「FloodgapRetrobitsはSolbourneSolaceを紹介します:忘れられたSPARCの神社」www.floodgap.com2020年12月1日にオリジナルからアーカイブされました2020年1月14日取得
  16. ^ Sager、D。; ヒントン、G。; アプトン、M。; チャペル、T。; フレッチャー、TD; Samaan、S。; マレー、R。(2001)。「4GHz整数実行ユニットを備えた0.18μmCMOSIA32マイクロプロセッサ」。2001IEEE国際固体回路会議。テクニカルペーパーのダイジェスト。ISSCC(カタログ番号01CH37177)米国カリフォルニア州サンフランシスコ:IEEE:324–325。土井10.1109 /ISSCC.2001.912658ISBN 978-0-7803-6608-4
  17. ^ FX1の主な機能と仕様(PDF)富士通、2008年2月19日、2013年6月27日のオリジナルからアーカイブ(PDF) 、 2011年12月6日取得
  18. ^ Tremblay、Marc ; Chaudhry、Shailender(2008年2月19日)、「第3世代65nm16コア32スレッドプラス32スカウトスレッドCMTSPARC(R)プロセッサ」(PDF)OpenSPARCSun Microsystems6月にオリジナルからアーカイブ2013年12月27日、 2011年12月6日取得
  19. ^ Vance、Ashlee(2009年6月15日)、「Sun Is Said to Cancel Big Chip Project」ニューヨークタイムズ2011年11月4日にオリジナルからアーカイブ、 2010年5月23日取得
  20. ^ 「富士通はSPARC64VIIを披露」heise online、2008年8月28日、2013年5月23日にオリジナルからアーカイブ、 2011年12月6日取得
  21. ^ Barak、Sylvie(2009年5月14日)、「Fujitsuが世界最速のCPUを発表」The Inquirer、2009年5月17日にオリジナルからアーカイブ、 2011年12月6日取得{{citation}}:CS1 maint:不適切なURL(リンク
  22. ^ 「SparcT3プロセッサ」(PDF)Oracle Corporation2016年4月24日のオリジナルからアーカイブ(PDF) 、 2011年12月6日取得
  23. ^ Morgan、Timothy Prickett(2010年12月3日)、「Ellison:Sparc T4は来年期限」The Register2012年3月7日にオリジナルからアーカイブ、 2011年12月6日取得
  24. ^ 「SPARCEnterpriseMシリーズサーバーアーキテクチャ」(PDF)富士通、2011年4月、2016年3月4日のオリジナルからアーカイブ(PDF) 、 2011年11月5日取得
  25. ^ Morgan、Timothy Prickett(2011年8月22日)、「OracleのSparc T4チップ」The Register2011年11月30日にオリジナルからアーカイブ、 2011年12月6日取得
  26. ^ Morgan、Timothy Prickett(2011年11月21日)、「Fujitsu parades 16-core Sparc64 super stunner」The Register2011年11月24日にオリジナルからアーカイブ、 2011年12月8日取得
  27. ^ 「富士通がPRIMEHPCFX10スーパーコンピューターを発表」富士通、2011年11月7日、2012年1月18日にオリジナルからアーカイブ、 2012年2月3日取得
  28. ^ 「Ixfxダウンロード」(PDF)fujitsu.com。2015年5月18日のオリジナルからアーカイブ(PDF)2015年5月17日取得
  29. ^ 「SPARC64の画像」(PDF)fujitsu.com。2016年4月22日のオリジナルからアーカイブ(PDF)2017年8月29日取得
  30. ^ 「Oracle製品」(PDF)oracle.com。2017年3月8日のオリジナルからアーカイブ(PDF)2017年8月29日取得
  31. ^ 「OracleSPARC製品」(PDF)oracle.com。2018年9月26日のオリジナルからアーカイブ(PDF)2017年8月29日取得
  32. ^ 「FujitsuPresentationpdf」(PDF)fujitsu.com。2016年4月22日のオリジナルからアーカイブ(PDF)2017年8月29日取得
  33. ^ 「FujitsuGlobalImages」(PDF)fujitsu.com。2015年5月18日にオリジナル(PDF)からアーカイブされました2017年8月29日取得
  34. ^ 「M7:次世代SPARC。ホットチップ26」(PDF)swisdev.oracle.com。2014年10月31日のオリジナルからアーカイブ(PDF)2014年8月12日取得
  35. ^ 「OracleのSPARCT7およびSPARCM7サーバーアーキテクチャ」(PDF)oracle.com。2015年11月6日のオリジナルからアーカイブ(PDF)2015年10月10日取得
  36. ^ Vinaik、Basant; プリ、ラホール(2015年8月24日)。「ホットチップ– 2015年8月23〜25日–会議Day1 –オラクルのソノマプロセッサ:エンタープライズワークロード向けの高度な低コストSPARCプロセッサ」(PDF)hotchips.org 2022年1月25日取得
  37. ^ 「青写真が明らかになった:OracleはSparcM7とInfiniBandをより安価な「ソノマ」チップに詰め込んだ」theregister.co.uk。2017年8月29日にオリジナルからアーカイブされました2017年8月29日取得
  38. ^ 「富士通のドキュメント」(PDF)fujitsu.com。2017年8月29日のオリジナルからアーカイブ(PDF)2017年8月29日取得
  39. ^ 「Oracleの新しいSPARCシステムは、Intelベースのシステムよりも2〜7倍優れたパフォーマンス、セキュリティ機能、および効率を提供します」oracle.com。2017年9月18日にオリジナルからアーカイブされました2017年9月18日取得
  40. ^ 「SPARCM8プロセッサ」(PDF)oracle.com。2019年2月28日のオリジナルからアーカイブ(PDF)2017年9月18日取得
  41. ^ McLaughlin、John(1993年7月7日)、「Intergraph to Port Windows NT to SPARC」The Florida SunFlash55(11)、2013年6月27日にオリジナルからアーカイブ、 2011年12月6日取得
  42. ^ プロジェクト:Linux for SPARC-oss.oracle.com、2015年10月12日、2015年12月8日にオリジナルからアーカイブ、 2015年12月4日取得
  43. ^ 「TOP500リスト(1-100)」TOP500、2011年6月、2011年6月23日にオリジナルからアーカイブ、 2011年12月6日取得
  44. ^ 「TheGreen500List」Green500 、2011年6月、2011年7月3日のオリジナルからアーカイブ
  45. ^ 「Top500リスト– 2012年11月| TOP500スーパーコンピューターサイト」TOP500 、2012年11月、2012年11月13日にオリジナルからアーカイブ、 2013年1月8日取得
  46. ^ 「TheGreen500リスト– 2012年11月| The Green500」Green500、2012年11月、2016年6月6日にオリジナルからアーカイブ、 2013年1月8日取得
  47. ^ 「Tianhe-2(MilkyWay-2)」TOP500、2015年5月、2015年5月26日にオリジナルからアーカイブ、 2015年5月27日に取得
  48. ^ Keane、Andy、「Tesla Supercomputing」mp4Nvidia2021年2月25日にオリジナルからアーカイブ、 2011年12月6日取得
  49. ^ Thibodeau、Patrick(2010年11月4日)、米国は、中国が「完全に固有の」スーパーコンピューターComputerworldを構築し、2012年10月11日にオリジナルからアーカイブされ、 2017年8月28日に取得されたと述べています

外部リンク