Ultra
SPARC(ウルトラ・スパーク)は、1995年半ばに
サン・マイクロシステムズが開発し、
テキサス・インスツルメンツが製造を手がけた
マイクロプロセッサです。このプロセッサは、サンにとって初めてとなる、64ビット版の
SPARC V9命令セット
アーキテクチャ(ISA)を実装した画期的な製品でした。その設計には、共同マイクロアーキテクトとしてマーク・トレンブレー氏が関わっています。
Ultra
SPARCは、命令を投入された順序で実行するイン・オーダー実行方式を採用した、4命令同時発行可能な
スーパースカラーマイクロプロセッサです。整数命令処理のために9段のパイプラインを備えています。
機能ユニット
内部の実行ユニットは、より高いクロック周波数を達成することを目指し、先行世代であるSuper
SPARCと比較して簡略化されていました。例えば、Super
SPARCではALUがカスケード接続されていましたが、Ultra
SPARCではクロック周波数のボトルネックを避けるためにこの構成は見送られました。
整数
レジスタファイルは、64ビット幅のレジスタを32個保持しています。
SPARC ISAの特徴であるレジスタ・ウィンドウ機能により、Ultra
SPARCでは8つのレジスタ・ウィンドウが利用可能で、物理的なレジスタ総数は144個となります。
レジスタファイルは7つの読み出しポートと3つの書き込みポートを持ち、2つの算術論理演算ユニット(ALU)およびロード/ストアユニットへデータを提供します。2つのALUは共に算術、論理、シフト命令を実行できますが、乗算および除算命令は一方のALUのみが担当します。
浮動小数点ユニットは5つの機能ユニットで構成されています。具体的には、浮動小数点数の加算・減算を行うユニット、乗算を行うユニット、除算・平方根を計算するユニット、そしてUltra
SPARCで導入されたビジュアル命令セット(VIS)によるSIMD命令を実行するための2つのユニットです。浮動小数点
レジスタファイルは、32個の64ビットレジスタを備え、5つの読み出しポートと3つの書き込みポートを持っています。
キャッシュ
Ultra
SPARCは、プライマリとセカンダリの2レベルのキャッシュ階層を持っています。プライマリキャッシュは、命令用とデータ用に分離されており、それぞれ16KBの容量を備えています。
セカンダリキャッシュはプロセッサの動作に必須であり、外部に搭載されました。容量は512KBから4MBまで対応し、ダイレクトマップ方式のユニファイドキャッシュ(命令とデータを共有)として機能しました。この外部キャッシュはデータバスを介してアクセスされ、プロセッサと同じクロック周波数で動作するシンクロナスSRAMで実装される必要がありました。これは、内部でサポートされる速度比に制限があったためです。設計により、このセカンダリキャッシュは1サイクルでデータを返すことが可能でした。
製造
Ultra
SPARCは、約380万個のトランジスタを搭載していました。製造は
テキサス・インスツルメンツのEPIC-3プロセスが用いられ、これは4層のメタル配線を用いた0.5μmの
CMOSプロセスでした。Bi
CMOSプロセスでの製造は見送られましたが、これは
テキサス・インスツルメンツが0.5μmプロセスへのスケーリングに課題を抱えており、Bi
CMOSによる性能向上が限定的だと判断されたためです。このEPIC-3プロセスは、
テキサス・インスツルメンツのMVP
デジタルシグナルプロセッサ(DSP)の開発を通じて成熟しましたが、Ultra
SPARCに適用されたバージョンは、MVP向けとは異なり、4層メタル配線や0.5μmのフィーチャーサイズなど、Super
SPARCで直面した製造上の問題を繰り返さないよう、Super
SPARC製造に先行して改善が施されたものでした。
パッケージ
Ultra
SPARCは、521個の接点を持つプラスチックボールグリッドアレイ(PBGA)パッケージに収められていました。
関連プロセッサ
Super
SPARC(前世代)
Ultra
SPARC II
Ultra
SPARC III
Ultra
SPARC IV(後継世代)
参考文献
Greenley, D. et al. (1995). "Ultra
SPARC: The next generation superscalar 64-bit
SPARC". Proceedings of Compcon '95: pp. 442–451.
Gwennap, Linley (3 October 1994). "UltraSparc Unleashes
SPARC Performance". Microprocessor Report, Volume 8, Number 13.
* Gwennap, Linley (5 December 1994). "UltraSparc Adds Multimedia Instructions". Microprocessor Report.