デジタル社が使用する「アルファ世代」のロゴ | |
| デザイナー | デジタル機器株式会社 |
|---|---|
| ビット | 64ビット |
| 紹介された | 1992年 (1992年) |
| デザイン | RISC |
| タイプ | ロードストア |
| エンコーディング | 修理済み |
| エンディアン | ビ |
| 拡張機能 | バイト/ワード拡張(BWX)、平方根および浮動小数点変換拡張(FIX)、カウント拡張(CIX)、動画命令(MVI) |
| 開ける | いいえ |
| レジスタ | |
| 汎用 | 31プラス常時ゼロR31 |
| 浮動小数点 | 31プラス常時-0.0 F31 |
Alpha(当初はAlpha AXP)は、Digital Equipment Corporation(DEC)が開発した64ビットの RISC(Reduced Instruction Set Computer )命令セットアーキテクチャ(ISA)です。Alphaは、32ビットのVAX(Complex Instruction Set Computer )CISCの後継として、 Unixワークステーションや同様の市場向けに非常に競争力のあるRISCプロセッサとなるよう設計されました。
Alphaは、DECが開発・製造した一連のマイクロプロセッサに実装されました。これらのマイクロプロセッサは、DECの様々なワークステーションやサーバーに広く採用され、最終的には同社の中級から高級製品ラインナップのほぼすべての基盤となりました。また、PCフォームファクタのマザーボードなど、Alphaシステムを製造したサードパーティベンダーも複数存在します。
Alpha をサポートするオペレーティングシステムには、 OpenVMS (以前は OpenVMS AXP と呼ばれていました)、Tru64 UNIX (以前は DEC OSF/1 AXP および Digital UNIX と呼ばれていました)、Windows NT ( NT 4.0以降はサポートが終了、およびプレリリース版Windows 2000 RC2 )、[ 1 ] Linux ( Debian、SUSE、[ 2 ] GentooおよびRed Hat )、BSD UNIX ( NetBSD、OpenBSDおよびFreeBSD 6.x まで)、Bell Labs の Plan 9、およびL4Ka::Pistachioカーネルが含まれます。Alpha アーキテクチャの初期開発中にUltrixの Alpha への移植が行われましたが、製品としてリリースされることはありませんでした。[ 3 ]
Alphaアーキテクチャは、DECの大部分とともに1998年にCompaqに売却されました。 [ 4 ]すでにIntel x86の顧客であったCompaqは、今後登場するHewlett-Packard /Intel Itaniumアーキテクチャを優先してAlphaを段階的に廃止すると発表し、2001年にAlphaのすべての知的財産をIntelに売却し、[ 5 ]事実上この製品を廃止しました。Hewlett-Packardは2002年にCompaqを買収し、既存の製品ラインの開発を2004年まで継続し、主に既存の顧客ベースにAlphaベースのシステムを2007年4月まで販売しました。[ 6 ]
1980年代、デジタル・イクイップメント・コーポレーション(DEC)は、VMSオペレーティングシステムを搭載した32ビットCISCベースのVAXコンピュータで大きな成功を収めた。しかし、1980年代半ばには、同社は新しいRISCテクノロジーがCISCよりもはるかに効率的であるという業界のコンセンサスに同意した。これを受けて、社内で多くの競合プロジェクトが開始され、遅延や不確実性を引き起こした。[ 7 ]
Alpha は、以前の RISC プロジェクトである Parallel Reduced Instruction Set Machine ( PRISM ) から派生したもので、PRISM 自体もいくつかの以前のプロジェクトの成果物でした。PRISM は、Unix ライクなアプリケーションと、Digital の既存の VAX/VMS ソフトウェアを、わずかな変換でサポートする柔軟な設計を目指していました。MICAという新しいオペレーティングシステムは、共通のカーネル上でULTRIXと VAX/VMS の両方のインターフェースをサポートし、両方のプラットフォームのソフトウェアを PRISM アーキテクチャに簡単に移植できるようにしました。[ 8 ]
1985年に始まったPRISMの設計は、コンピュータ市場の変化に対応して開発中に何度も変更され、導入が大幅に遅れた。1987年の夏になってようやく、マイクロプロセッサ形式では初期の64ビット設計となることが決定された。1987年10月、サン・マイクロシステムズは、新しいSPARCプロセッサを使用した最初のワークステーションであるSun-4を発表した。これは、モトローラ68020を使用した以前のSun-3設計よりも約3~4倍高速で、DECのUnix製品に対しても同様の優位性を持っていた。計画は再び変更され、PRISMは32ビット部品として再編成され、直接Unix市場をターゲットとした。これにより、設計はさらに遅れた。[ 9 ]
PRISMの納入日が遅れ続け、さらなる遅延の可能性に直面したパロアルトオフィスのチームは、別のRISCプロセッサを使用して独自のワークステーションを設計することを決定した。彼らはMIPS R2000を選択し、 90日間でUltrixを実行する最初のDECstationを構築した。 [ 10 ]これは社内で激しい議論を引き起こし、1988年7月の経営会議で頂点に達した。PRISMはR2000よりも高速に見えたが、R2000マシンはPRISMよりも1年早い1989年1月までに市場に出回る可能性があった。この提案が受け入れられると、PRISMの2つの当初の役割のうち1つが消滅した。この時点ですでにVMS PRISMを作成するという決定は終了していたため、残された役割はなかった。PRISMは会議でキャンセルされた。[ 11 ]
会議が終わると、ボブ・サプニックはケン・オルセンに声をかけられ、RISCチップが将来的にVAXシリーズにとって脅威となる可能性があると告げられた。オルセンはサプニックに、将来のRISCシステムとの競争力を維持するためにVAXで何ができるかを検討するよう求めた。[ 9 ]
これにより「RISCy VAX」チームが結成されました。彼らは当初、3つのコンセプトを検討しました。1つは、RISCライクなシステム上で動作するVAX命令セットアーキテクチャ(ISA)の簡略版で、より複雑なVAX命令はシステムサブルーチンに任せるというものでした。もう1つのコンセプトは、既存のVAXコードをオンザフライで独自のISAに変換し、CPUキャッシュに格納する純粋なRISCシステムでした。最後に、VAX ISA全体を実行するはるかに高速なCISCプロセッサの可能性も残されていました。残念ながら、これらのアプローチはすべてオーバーヘッドを発生させ、ネイティブRISCコードを実行する純粋なRISCマシンには太刀打ちできませんでした。[ 12 ]
その後、グループは、既存の VAX ワンチップ ソリューションの 1 つと、高性能なニーズに対応するコプロセッサとして RISC チップを組み合わせたハイブリッド システムを検討しました。これらの研究では、システムは必然的に低性能な部分によって制約を受け、説得力のある利点は得られないことが示唆されました。この時点で、ナンシー・クロネンバーグは、人々は VAX ではなく VMS を実行しており、VMS は割り込みとメモリ ページングのモデリングに基づいて少数のハードウェア依存性しか持っていないことを指摘しました。モデルのこれらの小さな部分が維持される限り、VMS を RISC チップに移植できない説得力のある理由はないように思われました。この概念に関するさらなる研究により、これが実行可能なアプローチであることが示唆されました。[ 12 ]
スプニックは、その結果のレポートを1989年2月に戦略タスクフォースに提出した。2つの疑問が提起された。結果として得られたRISC設計はUnix市場でもパフォーマンスリーダーになれるか、そしてマシンはオープンスタンダードであるべきか。そして、適切な修正を加えたPRISMアーキテクチャを採用するという決定がなされた。これが「EVAX」コンセプトとなり、成功したCMOS CVAX実装の後継となった。経営陣が調査結果を受け入れたとき、彼らはプロジェクトに「VAX」を削除してより中立的な名前を付けることに決め、最終的にAlphaに落ち着いた。[ 13 ]この名前は、 NVAXベースのVAX 4000モデルのコードネームとして「Omega」が使用されていたことに触発されたもので、「Alpha」は(アルファとオメガにちなんで)新しいラインの始まりを意味することを意図していた。[ 14 ]その後すぐに、VMSを新しいアーキテクチャに移植する作業が開始された。[ 15 ]
Alpha は、高性能で VMS と Unix の両方を実行できるように設計されています。バイナリ変換により、 VAX VMS および Ultrix MIPS アプリケーションとの下位互換性が提供されます。 [ 7 ]基本的な PRISM の概念のほとんどを実装していますが、VMS および VMS プログラムが変換なしで妥当な速度で実行できるように再調整されています。Alpha 命令セットの主な設計者は、Richard L. Sites と Richard T. Witek でした。[ 16 ] PRISM の Epicode は Alpha のPALcodeに発展し、プラットフォームおよびプロセッサの実装固有の機能への抽象化されたインターフェースを提供します。
Alphaがマイクロプロセッサ業界にもたらした主な貢献、そしてその性能の主な理由は、アーキテクチャそのものというよりも、むしろその実装にある。[ 17 ]当時(そして現在も)、マイクロチップ業界は自動設計・レイアウトツールが主流だった。Digital社のチップ設計者たちは、複雑なVAXアーキテクチャに対応するため、高度な手動回路設計を追求し続けた。Alphaチップは、よりシンプルで洗練されたアーキテクチャに手動回路設計を適用することで、より自動化された設計システムでは不可能なほど高い動作周波数を実現できることを示した。これらのチップは、マイクロプロセッサ設計コミュニティにおけるカスタム回路設計の復興をもたらした。
当初、Alpha プロセッサはDECchip 21x64シリーズと呼ばれていましたが、[ 18 ] 1990 年代半ばに「DECchip」が「Alpha」に置き換えられました。最初の 2 桁の「21」は 21 世紀を、最後の 2 桁の「64」は 64 ビットを意味します。[ 18 ] Alpha は最初から 64 ビットとして設計されており、32 ビット バージョンはありません。真ん中の数字は Alpha アーキテクチャの世代に対応しています。内部的には、Alpha プロセッサはEV番号でも識別されていました。EV は正式には「Extended VAX」の略ですが、Western Research Lab のElectric Pickle実験にちなんで「Electric Vlasic 」というユーモラスな意味もあります。[ 19 ] EV 番号は、チップが設計された半導体プロセスを示しています。たとえば、EV4 プロセッサは DEC の CMOS-4 プロセスを使用しています。[ 12 ]
1997年5月、DECは、初代Pentium、Pentium Pro、Pentium IIチップの設計において、IntelがAlpha特許を侵害したとしてIntelを提訴した。[ 20 ]和解の一環として、DECのチップ設計および製造事業の大部分がIntelに売却された。これには、IntelがPocket PCで一般的に使用されているXScaleプロセッサとして販売した、DECのARMコンピュータアーキテクチャの実装であるStrongARMも含まれていた。デジタルセミコンダクターの中核であるAlphaマイクロプロセッサグループはDECに残ったが、関連するオフィスビルはハドソン工場の一部としてIntelに譲渡された。[ 21 ]
アルファチップの初期の数世代は、当時最も革新的なチップのいくつかだった。
DEC関係者によるものとされる根強い報告によると、プロセッサにAXPというタグを選んだのは、 VAX商標の失敗でまだ傷心していたDECの法務部だったという。[ 26 ]長期間にわたる調査の結果、「AXP」というタグは完全に権利侵害がないことが判明した。コンピュータ業界では、 AXPという頭字語は「Almost eXactly PRISM」の略だというジョークが広まった。 [ 27 ]
Alphaアーキテクチャは、高性能設計を目指して開発されました。Digital Digital社は、このアーキテクチャが25年間で1000倍の性能向上をサポートすることを想定していました。これを実現するために、複数の命令発行、クロックレート、マルチプロセッシングを阻害するアーキテクチャ上の機能はすべて排除されました。その結果、Alphaには以下の機能がありません。
Alpha には、条件ステータス レジスタでの潜在的なボトルネックを解消するための整数命令の条件コードがありません[ 30 ] 。 64 ビットに収まらない 2 つの数値を加算するなど、オーバーフローを引き起こす命令は、宛先レジスタに下位 32 ビットまたは 64 ビットを書き込みます。 キャリーは、結果とどちらかのオペランドに対して符号なし比較を実行して、結果がどちらかのオペランドより小さいかどうかを確認することによって生成されます。 テストが真の場合、条件を示すために値 1 が宛先レジスタの下位ビットに書き込まれます。
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
このアーキテクチャでは、プログラムカウンタ、2つのロックレジスタ、および浮動小数点制御レジスタ(FPCR)に加えて、32個の整数レジスタと32個の浮動小数点レジスタが定義されています。また、実装上必要な場合にのみ実装されるオプションのレジスタも定義されています。最後に、 PALコード用のレジスタが定義されています。
整数レジスタは R0 ~ R31、浮動小数点レジスタは F0 ~ F31 で表されます。R31 および F31 レジスタはゼロに固定されており、命令によるこれらのレジスタへの書き込みは無視されます。Digital 社は結合レジスタ ファイルの使用を検討しましたが、分割レジスタ ファイルの方が優れていると判断しました。これは、2 チップ実装では各チップにレジスタ ファイルを配置でき、整数専用実装では浮動小数点レジスタを含む浮動小数点レジスタ ファイルを省略できるためです。また、分割レジスタ ファイルは、読み書きポートの数が少ないため、複数命令発行にも適していると判断しました。レジスタ ファイルあたりのレジスタ数も検討され、32 と 64 が候補となりました。Digital 社は、ダイ スペースが少なくて済むためクロック周波数が向上することから、32 レジスタの方が適していると結論付けました。32レジスタは少なくとも 8 ウェイ命令発行をサポートできるため、このレジスタ数はパフォーマンスと将来の拡張性に関して大きな問題ではないと判断しました。
プログラムカウンタは、ロングワード境界にアラインされた仮想バイトアドレスを格納する64ビットレジスタです。つまり、プログラムカウンタの下位2ビットは常にゼロです。命令がデコードされると、プログラムカウンタは次の命令のアドレスまで4ずつインクリメントされます。マルチプロセッサをサポートするために、ロードロック命令とストア条件付き命令では、ロックフラグとロックされた物理アドレスレジスタが使用されます。浮動小数点制御レジスタ(FPCR)は、IEEE 754準拠の浮動小数点ハードウェアを備えたAlpha実装で使用することを目的としたアーキテクチャで定義された64ビットレジスタです。
Alphaアーキテクチャでは、バイトは8ビットのデータ(オクテット)、ワードは16ビットのデータ、ロングワードは32ビットのデータ、クワッドワードは64ビットのデータ、オクタワードは128ビットのデータとして定義されます。
Alphaアーキテクチャでは、当初6つのデータ型が定義されていました。
Alphaの前身である32ビットアーキテクチャVAXとの互換性を維持するため、他に2種類の浮動小数点データ型が追加されています。
VAX H浮動小数点(4倍精度、128ビット)はサポートされていませんでしたが[ 31 ]、別の128ビット浮動小数点オプションであるX浮動小数点がAlphaでは利用可能ですが、VAXでは利用できません[ 32 ] 。HとXは似ていると説明されていますが、同一ではありません。H浮動小数点のソフトウェアエミュレーションはDECから提供されており、DECmigrateというソースコードレベルのコンバータも提供されています。
Alphaは、メモリ分割のない64ビットの線形仮想アドレス空間を備えています。実装によっては、最小サイズ43ビットのより小さな仮想アドレス空間を実装することも可能です。未使用ビットはTLBなどのハードウェアでは実装されていませんでしたが、より大きな(または完全な)仮想アドレス空間を持つ実装とのソフトウェア互換性を確保するため、未使用ビットがゼロであるかどうかを確認する必要がありました。
Alpha ISAは、32ビットの固定命令長を持ち、6種類の命令フォーマットを備えています。
整数演算フォーマットは、整数命令で使用されます。このフォーマットは、6ビットのオペコードフィールド、それに続くRaフィールド(最初のオペランドを含むレジスタを指定)、Rbフィールド(2番目のオペランドを含むレジスタを指定)で構成されています。次に、未使用で予約済みの3ビットフィールドがあります。1ビットフィールドには「0」が格納されており、このフォーマットを整数リテラルフォーマットと区別しています。続いて7ビットの関数フィールドがあり、これはオペコードと組み合わせて演算を指定するために使用されます。最後のフィールドはRcフィールドで、計算結果を書き込むレジスタを指定します。レジスタフィールドはすべて5ビット長で、32個の整数レジスタという32個の固有の場所をアドレス指定するために必要です。
整数リテラル形式は、オペランドの1つとしてリテラルを使用する整数命令で使用されます。この形式は、5ビットのRbフィールドと3ビットの未使用領域を、64ビットのオペランドにゼロ拡張された8ビットのリテラルフィールドに置き換える点を除いて、整数演算形式と同じです。
浮動小数点演算フォーマットは、浮動小数点命令で使用されます。整数演算フォーマットと似ていますが、整数演算フォーマットで予約されているリテラルビットと未使用ビットを使用することで、11ビットの関数フィールドを実現しています。
このメモリフォーマットは、主にロード命令とストア命令で使用されます。6ビットのオペコードフィールド、5ビットのRaフィールド、5ビットのRbフィールド、および16ビットの変位フィールドを備えています。
分岐命令は、6ビットのオペコードフィールド、5ビットのRaフィールド、および21ビットの変位フィールドを持ちます。Raフィールドは、条件分岐命令によってテストされるレジスタを指定し、条件が満たされると、変位フィールドの内容をプログラムカウンタに加算してプログラムカウンタが更新されます。変位フィールドには符号付き整数が格納され、整数の値が正の場合、分岐が実行されるとプログラムカウンタがインクリメントされます。整数の値が負の場合、分岐が実行されるとプログラムカウンタがデクリメントされます。したがって、分岐の範囲は±1 Mi命令、つまり±4 MiBです。Alphaアーキテクチャは、将来を見据えた設計の一環として、広い範囲で設計されました。
CALL_PALフォーマットは、PALコードCALL_PALサブルーチンを呼び出すために使用される命令で使用されます。このフォーマットはオペコードフィールドを保持しますが、他のフィールドを26ビットの関数フィールドに置き換えます。この関数フィールドには、PALサブルーチンを指定する整数が含まれます。
制御命令は、条件分岐、無条件分岐、およびジャンプから構成される。条件分岐および無条件分岐命令は分岐命令フォーマットを使用し、ジャンプ命令はメモリ命令フォーマットを使用する。
条件分岐は、レジスタの最下位ビットがセットされているかクリアされているかをテストするか、レジスタを符号付きクワッドワードとしてゼロと比較し、指定された条件が真であれば分岐します。レジスタをゼロと比較するための条件は、等しい、等しくない、より小さい、以下、以上、より大きいです。新しいアドレスは、21ビットの変位をロングワードアライメントして符号拡張し、条件分岐の次の命令のアドレスに加算することによって計算されます。
無条件分岐は、条件分岐と同様の方法で計算された新しいアドレスでプログラムカウンタを更新します。また、無条件分岐の後に続く命令のアドレスをレジスタに保存します。このような命令は2種類あり、分岐予測ハードウェアに提供されるヒントのみが異なります。
ジャンプ命令は4種類あります。これらはすべて同じ操作を実行し、ジャンプ後の命令のアドレスを保存し、レジスタからプログラムカウンタに新しいアドレスを提供します。これらの命令の違いは、分岐予測ハードウェアに提供されるヒントにあります。この目的のために、未使用の変位フィールドが使用されます。
整数演算命令は、ロングワードとクワッドワードに対して加算、乗算、減算を実行し、クワッドワードに対して比較を実行します。除算命令はありません。設計者は、ハードウェアでの除算の実装はシンプルさを損なうと考えたためです。標準の加算および減算命令に加えて、スケーリングされたバージョンがあります。これらのバージョンでは、加算または減算の前に、2 番目のオペランドを 2 ビットまたは 3 ビット左にシフトします。Multiply LongwordおよびMultiply Quadword命令は、それぞれ 64 ビットまたは 128 ビットの結果の最下位 32 ビットまたは 64 ビットを宛先レジスタに書き込みます。最上位の半分を取得することが有用なので、Unsigned Multiply Quadword High (UMULH) 命令が提供されています。UMULH は、多倍長演算および除算アルゴリズムの実装に使用されます。結果の最上位の半分を返す乗算用の独立した命令の概念は、PRISMから採用されました。
ロングワードを扱う命令は、レジスタの最上位半分を無視し、32ビットの結果は符号拡張されてから宛先レジスタに書き込まれます。デフォルトでは、加算、乗算、減算命令は、UMULHおよび加算と減算のスケーリング版を除き、オーバーフロー時にトラップしません。このような機能が必要な場合は、オーバーフロー検出とオーバーフロー時のトラップを実行するバージョンの命令が提供されます。
比較命令は、2つのレジスタ、またはレジスタとリテラルを比較し、指定された条件が真であれば宛先レジスタに「1」を、そうでなければ「0」を書き込みます。条件は、等しい、等しくない、以下、より小さいの4種類です。最初の2つの条件を指定する命令を除き、符号付き比較と符号なし比較を実行するバージョンがあります。
整数演算命令は、整数演算命令フォーマットを使用します。
論理命令は、整数レジスタに対してビット単位の論理演算と条件付き移動を実行する命令で構成されます。ビット単位の論理命令は、2 つのレジスタ間、またはレジスタとリテラル間でAND、NAND、NOR、OR、XNOR、およびXORを実行します。条件付き移動命令は、レジスタを符号付きクワッドワードとしてテストし、指定された条件が真であれば移動します。指定条件は、等しい、等しくない、以下、より小さい、以上、より大きいです。シフト命令は、算術右シフト、論理左シフト、および論理右シフトを実行します。シフト量は、レジスタまたはリテラルによって指定されます。論理命令とシフト命令は、整数演算命令フォーマットを使用します。
後期のアルファ版には、8ビットおよび16ビットデータ型を操作するための命令セットであるバイトワード拡張が含まれています。これらの命令は、21164A (EV56) マイクロプロセッサで初めて導入され、以降のすべての実装に存在します。これらの命令は、以前は複数の命令が必要だった操作を実行するため、コード密度と特定のアプリケーションのパフォーマンスが向上します。BWX はまた、x86 マシン コードのエミュレーションとデバイス ドライバの作成を容易にします。[ 33 ]
Motion Video Instructions (MVI) は Alpha ISA の命令セット拡張であり、単一命令複数データ(SIMD) 操作の命令を追加しました。[ 34 ] MVI を実装した Alpha 実装は、時系列順にAlpha 21164PC (PCA56 および PCA57)、Alpha 21264 (EV6)、Alpha 21364 (EV7) です。MIPSのMDMXやSPARCのVisual Instruction Setなど、同時期の他のほとんどの SIMD 命令セットとは異なり、 PA -RISCのMultimedia Acceleration eXtensions (MAX-1、MAX-2) と同様に、MVI は既存の整数レジスタに格納された整数データ型を操作する少数の命令で構成されるシンプルな命令セットでした。
MVIのシンプルさは、2つの理由によるものです。まず、Digital社はAlpha 21164が既にソフトウェアによるDVDデコードに対応しており、ハードウェアによるデコード処理は不要であると判断しましたが、 MPEG-2エンコードにおいては非効率的でした。2つ目の理由は、実装の高速なサイクルタイムを維持する必要があったことです。多くの命令を追加すると、命令デコードロジックが複雑化・拡大し、実装のクロック周波数が低下してしまうため、このような設計が採用されました。
MVIは13個の命令で構成されています。
浮動小数点拡張命令(FIX)は、Alphaアーキテクチャの拡張機能です。浮動小数点平方根演算、および整数レジスタと浮動小数点レジスタ間のデータ転送を行うための9つの命令が導入されています。Alpha 21264(EV6)は、これらの命令を実装した最初のマイクロプロセッサです。
カウント拡張機能(CIX)は、ビットをカウントするための3つの命令を導入するアーキテクチャの拡張機能です。これらの命令は整数演算命令に分類されます。これらはAlpha 21264A(EV67)で初めて実装されました。
DECは、VAXが大成功を収めた後にしたのと同様に、Alphaを唯一のコンピュータアーキテクチャとした。[ 7 ]この技術は同社にとって非常に重要であったため、業界アナリストはComputerworld誌に「Alphaが失敗すれば、DECは終わりだ」と語り、[ 35 ] PC Week誌はDECを「おそらく生き残りをかけた戦い」にあると評した。[ 36 ] 1992年11月に最初のAlphaシステムが発売された時点で、約30のアプリケーションが利用可能だった。DECは、9か月以内にさらに500、その後さらに1500のアプリケーションを出荷すると述べた。[ 37 ]
Alphaは発表当時、今後25年間のアーキテクチャとして称賛されました。それは実現しませんでしたが、Alphaはそれでもかなり長い寿命を誇りました。最初のバージョンであるAlpha 21064(別名EV4)は1992年11月に発表され、最大192MHzで動作しました。数か月後には、 ダイをわずかに縮小したEV4S ( 0.75μmから 0.675μmに縮小 )が200MHzで動作しました。この64ビットプロセッサは、他のRISC設計と同様にスーパーパイプラインとスーパースカラ設計でしたが、それでも他のすべてのRISCを凌駕し、DECはこれを世界最速のプロセッサとして宣伝しました。ハドソン設計チームの特徴である、巨大な集中クロック回路などの回路設計への細心の注意により、マイクロアーキテクチャは他のRISCチップとかなり似ていたにもかかわらず、CPUをより高速で動作させることができました。それに比べて、翌春に発売されたより安価なIntel Pentiumは、 66MHzで動作していた。
Alpha 21164またはEV5 は、 1995 年にプロセッサ周波数最大 333 MHz で利用可能になりました。1996 年 7 月に、このラインは 500 MHz に速度が上げられ、1998 年 3 月に 666 MHz になりました。また、1998 年にAlpha 21264 ( EV6 ) が 450 MHz でリリースされ、最終的には (2001 年に21264C / EV68CB で) 1.25 GHz に達しました。2003 年に、Alpha 21364またはEV7 Marvelが発売されました。これは基本的に EV68 コアで、マルチプロセッサシステムのパフォーマンスを向上させるために 4 つの 1.6 GB/s [ a ]プロセッサ間通信リンクを備え、1 GHz または 1.15 GHz で動作します。
1996年、Alphaチップの製造はサムスン電子にライセンス供与されました。コンパックによるDigital社の買収後、Alpha製品の大部分は、サムスンとコンパックが出資する非公開企業であるAPI NetWorks , Inc.(旧Alpha Processor Inc.)に引き継がれました。2001年10月、MicrowayはAPI NetWorksのAlphaベースの製品ラインの独占販売およびサービスプロバイダーとなりました。
2001年6月25日、コンパックは、インテルのイタニウムを優先するため、2004年までにAlphaを段階的に廃止し、計画されていたEV8チップをキャンセルし、Alphaのすべての知的財産をインテルに売却すると発表した。[ 5 ] 2002年にヒューレット・パッカードはコンパックと合併し、HPはAlphaシリーズの開発をさらに数年間継続し、EV7z と呼ばれる1.3GHzのEV7バリアントをリリースすると発表した。これがAlphaの最終バージョンとなり、0.13μmのEV79もキャンセルされた。
Alpha は、Compaq のコーポレート リサーチと Nonstop Hardware Development グループが Western Research Laboratory および Systems Research Center で開発した研究プロトタイプであるPiranhaにも実装されています。Piranhaはトランザクション処理ワークロード向けのマルチコア設計で、8 つのシンプルなコアを備えています。これは、2000 年 6 月に開催された第 27 回国際コンピュータ アーキテクチャ シンポジウムで発表されました。[ 38 ]
Sunwayアーキテクチャの初期バージョンはAlphaに基づいているとされているが、SW26010以降、SunwayはAlphaとは無関係の新しい命令セットアーキテクチャを使用している。[ 39 ] [ 40 ]
Alphaベースシステムの性能比較を示すために、Standard Performance Evaluation Corporation (SPEC) の性能数値 (SPECint95、SPECfp95) を以下に示します。SPECの結果は、CPUだけでなく、コンピュータシステム全体 (CPU、バス、メモリ、コンパイラ最適化) の測定性能を報告するものであることに注意してください。また、ベンチマークとスケールが1992年から1995年に変更されていることにも注意してください。ただし、これらの数値は、当時のHP (64ビット) およびIntelベースの製品 (32ビット) と比較したAlphaアーキテクチャ (64ビット) の性能を大まかに示しています。おそらく最も明白な傾向は、Intelは整数演算性能では常にAlphaにかなり近い性能を発揮できたものの、浮動小数点演算性能ではその差が大きかったことです。一方、HP ( PA-RISC ) もAlphaにかなり近い性能を発揮していますが、これらのCPUはクロック周波数 (MHz) がかなり低くなっています。これらの表には、消費電力とCPUの価格という2つの重要な値が欠けています。
DEC Alphaベースの第1世代システムは、DEC 3000 AXPシリーズのワークステーションおよびローエンドサーバー、DEC 4000 AXPシリーズのミッドレンジサーバー、そしてDEC 7000 AXPおよび10000 AXPシリーズのハイエンドサーバーで構成されています。DEC 3000 AXPシステムは、以前のMIPSベースのDECstationモデルと同じTURBOchannelバスを使用していますが、4000はFuturebus +をベースとしており、7000/10000は対応するVAXモデルとアーキテクチャを共有しています。
DECはまた、拡張産業標準アーキテクチャ(EISA)バスを搭載したパーソナルコンピュータ(PC)構成のAlphaワークステーション、 DECpc AXP 150(コードネーム:Jensen 、別名:DEC 2000 AXP)も製造した。これはWindows NTをサポートする最初のAlphaシステムである。DECはその後、21164個のプロセッサを搭載したCelebris XLおよびDigital Personal Workstation PCシリーズのAlphaバージョンを製造した。
Digital社は、組み込み用途および産業用途向けにVMEバスをベースとしたシングルボードコンピュータも製造しました。第1世代には、21068ベースのAXPvme 64およびAXPvme 64LC、そして21066ベースのAXPvme 160が含まれます。これらは1994年3月1日に発表されました。AXPvme 100、AXPvme 166、AXPvme 230などの後継モデルは21066Aプロセッサをベースとしており、Alpha VME 4/224およびAlpha VME 4/288は21064Aプロセッサをベースとしています。最後のモデルであるAlpha VME 5/352およびAlpha VME 5/480は21164プロセッサをベースとしています。
21066チップは、DEC Multia VX40/41/42コンパクトワークステーションと、Tadpole Technology社のALPHAbook 1ノートパソコンに使用されています。
1994年、DECはAlphaStationおよびAlphaServerシステムの新シリーズを発表しました。これらのシステムは21064または21164プロセッサを使用し、PCIバス、VGA互換フレームバッファ、PS/2スタイルのキーボードとマウスを導入しました。AlphaServer 8000シリーズはDEC 7000/10000 AXPの後継機種であり、XMIおよびFutureBus+バスも採用しています。
AlphaStation XP1000は、21264プロセッサを搭載した最初のワークステーションです。その後、 21264を搭載したAlphaServer / Stationモデルは、DS(部門サーバー)、ES(エンタープライズサーバー)、GS(グローバルサーバー)の各ファミリーに分類されます。
最後の21364チップは、AlphaServer ES47、ES80、GS1280モデルおよびAlphaStation ES47で使用されています。
DECは、21066および21068ベースのAXPpci 33「NoName」(同社によるOEM市場への大規模な進出の一環)[43]、21164ベースのAlphaPC 164およびAlphaPC 164LX、21164PCベースのAlphaPC 164SXおよびAlphaPC 164RX、21264ベースのAlphaPC 264DPなど、多数のOEMマザーボードを製造した。Samsung やAPIなどのサードパーティも、API UP1000やUP2000などのOEMマザーボードを製造した。
サードパーティがプラットフォーム向けのハードウェアおよびソフトウェアを開発するのを支援するため、DECは、Alpha 21064Aおよび21164マイクロプロセッサ向けにそれぞれEB64+およびEB164などの評価ボードを製造した。
21164および21264プロセッサはNetAppが様々なネットワーク接続ストレージシステムに使用し、一方、21064および21164プロセッサはCrayがT3DおよびT3E超並列スーパーコンピュータに使用した。
Alphaプロセッサをベースにした最速のスーパーコンピュータは、ロスアラモス国立研究所のASCI Qでした。このマシンはHP AlphaServer SC45/GS Clusterとして構築されました。4096個のAlpha(21264 EV-68、1.25 GHz)CPUを搭載し、最大R値は7.727 TFLOPSに達しました。[ 44 ]
(Parallel Reduced Instruction Set Machine) ... 1985年8月にPRISMアーキテクチャの最初のドラフトが発表されました。DECは1988年にMIPSベースのプロジェクトを優先し、このプロジェクトを中止しました...
ファミリーの最初のプロセッサは、DECchip 21064シリーズ(「21」は21世紀を意味する)と命名された。
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)大容量、オンチップ、第2レベル、ライトバックキャッシュ
21364 ... オンチップメモリコントローラを搭載した最初の高性能プロセッサ。
…法的には、DECがそれ以前に米国でVAXを使用していた場合…「合理的な人」は、2つの使用法を区別することに何ら困難を感じない。
AXPでアラインメントされていないメモリを扱うのは非常に面倒です。
拡張機能を構成する命令は...
Alpha ...、整数条件コードなし。
浮動小数点データ型はAlphaでは利用できません。