PowerPC
出典: フリー百科事典『ウィキペディア(Wikipedia)』
PowerPC(パワーピーシー、Performance optimization with enhanced RISC for Personal Computer)は1991年にAIMと呼ばれたアップルコンピュータ、IBM、モトローラの提携によって開発された RISC タイプのマイクロプロセッサ (CPU) のアーキテクチャである。
アーキテクチャとして、動作のベースとなる命令セットや基本的なレジスタセット、メモリアドレッシング、キャッシュモデルなどを規定しているが、それらをどのように実装すべきかまでは規定していない。
そのため、PowerPCアーキテクチャに準拠していれば、極端な話内部での実装がCISCであったり、ソフトウェアであってもPowerPCプロセッサと呼ぶことができる。
このような特徴から、実際に製造されるモデルは高速化のためにアーキテクチャレベルでは規定されていない機構(L2、L3キャッシュや関連レジスタなど)を備えているのが普通である。
もともとはAIMプラットフォームのCPUという意味で開発されたものだが、CPU以外は開発されなかったため、今日まで残る同プロジェクト唯一の成果物でもある。 アップルコンピュータ社のPower Macに採用されていたほか、IBM の一部のワークステーション、サーバやBlueGene/Lをはじめとするスーパーコンピュータにも採用されている。
また、ダイサイズのコンパクトさや、低消費電力という特徴から組み込みプロセッサとして主に使われており、FPGA用のIPコアとして提供されているものもある。
現在、フリースケール・セミコンダクタ(モトローラよりスピンオフ)とIBMが開発/製造を行っている。
目次 |
[編集] 設計特徴
PowerPCはRISCの思想で作られており、スーパースカラ方式で命令を実行する。
ベースにしたPOWERの特徴に、さらにいくつかの変更を加えた。
- バイエンディアン(ビッグエンディアンおよびリトルエンディアンのサポート。)
- 単精度浮動小数点演算に倍精度浮動小数点演算の追加
- 32ビット命令と完全下位互換の64ビット命令セット
- 32個のGPR(汎用レジスタ)と32個のFPR(浮動小数点レジスタ)
- POWERアーキテクチャのうち、複雑なものを省いた命令セット
- 複雑な命令など一部を除き、命令は基本的にハードワイヤード (Hard-Wired) ロジックで実装(一部マイクロコードで実装)
- G4(第4世代)シリーズでは128ビット単位でベクトル演算を行う『AltiVec(アップルコンピュータではVelocity Engineと表現している)』を採用
- G5でのベクトル演算ユニットはスーパースカラやスーパーパイプラインでの200の命令を同時処理可能に
[編集] 歴史
PowerPC の歴史は70年代後半のジョン・コックのRISCアイデアを使用した米 IBM 社の801プロトタイプ・チップで始まった。801を基にしたコアは数々のIBM製組み込み用製品に採用され、最終的には16本のレジスタを持つROMPプロセッサ、IBM RTにまで発展した。しかし、RTプロセッサの性能は十分とは言えなかったため、IBMは「アメリカ・プロジェクト」と呼ばれる、市場で最も高速なプロセッサを開発する計画を始動させた。その結果開発されたのがPOWERアーキテクチャであり、1990年初頭にSystem/6000と共に発表された。
本来のPOWERマイクロプロセッサは、スーパースケーラを実現した最初のプロセッサの一つであり、高性能でマルチプロセッサに対応していた。IBMがRS/6000の製品群をローエンド向けからハイエンド向け製品にまで拡大するにあたって、POWERプロセッサからいくつかの機構を取り除き、シングルチップ・プロセッサにする必要が生じたため、IBMはRSC (RISC シングルチップ)の開発に着手した。RSCは開発の初期段階から、工業向けに幅広く使える可能性を秘めた高機能なプロセッサになるであろうと考えられていた。
1991年、IBMはアップルコンピュータに接近し、共同でPOWERアーキテクチャをベースとしたシングルチップ・マイクロプロセッサの開発を行なう事で合意した。その直後、当時据え置き型コンピュータ用プロセッサに関してモトローラ社最大の顧客であったアップルコンピュータは、長年の協力関係を考慮して、モトローラにマイクロプロセッサ開発に加わるよう打診した。モトローラには、マイクロプロセッサ開発における豊富な経験の活用と、セカンドソースとしての役割が期待された。こうしてIBM、アップルコンピュータ、モトローラはAIM連合と呼ばれる協力関係を組織するに至った。
1991年、PowerPCはAIM連合における最大要素の一つとなった。当時のパーソナル・コンピュータ市場ではマイクロソフトがWindowsを開発中であり、インテル社製プロセッサはその支配を強めつつあった。また、CISCアーキテクチャのインテル80386及び80486が大半のコンピュータに採用されており、後継のPentiumプロセッサの開発も順調に進んでいた。PowerPCプロセッサは冒険的な要素を含んでいたものの、拡大するマイクロソフトとインテルによる支配に対抗するため、開発が進められた。
モトローラにとって、POWER系プロセッサの開発に加わる事は、またとないチャンスであった。この時点でモトローラは既に自社製のRISCプロセッサMC88000を市場に投入していた。しかし、このプロセッサは貧弱な設計手法と製造上の問題により市場での評価は低く、販売は低迷していた。このためモトローラは、MIPSやSPARCといった競合製品に市場で並ぶ機会を失いつつあった。しかし、新型POWER系プロセッサの開発に参加すれば、キャッシュ部分を設計するだけで、広くテストされた高性能RISCプロセッサを販売する事が可能になるため、RISCプロセッサ市場での巻き返しが期待された。また、重要な顧客であるアップルコンピュータとの関係の改善や、IBMに簡略化バージョンを供給できる可能性もあった。
その低評価の一方で、MC88000プロセッサは既に生産されており、アップル社は既にこのプロセッサを利用したプロトタイプのコンピュータを動作させていた。このため、開発中のPOWERアーキテクチャ・シングルチップのバスにハードウェアの段階でMC88000のバスとの互換性を持たせれば、ロジックボードを再設計する事なく、より迅速に新型プロセッサを市場に投入する事が可能であった。最終的に、新型プロセッサPowerPCはこういった要求を含んだ設計となった。
PowerPCが市場に投入される直前、大きな動きがあった。アップルコンピュータに加えてIBMとモトローラの両社は、PowerPCプロセッサに対応したシステムを提案した。マイクロソフトはモトローラのPowerPCサーバ向けのWindows NT 3.51を発表、サン・マイクロシステムズもSolaris OSのPowerPC版を発表した。またIBMは、自社製のAIX Unixを移植し、OS/2の移植も計画していた。また、90年代中頃、PowerPCプロセッサはベンチマークにおいて、最速のx86系プロセッサと同等または凌駕する性能を発揮した。しかしこれらの動きはわずかな期間で終わり、結局PowerPCという新型アーキテクチャに期待されていた理想が実現する事はなかった。Windows、OS/2、そしてサンの顧客はPowerPC用ソフトウェアの不足を理由に、PowerPCプロセッサはほとんど顧みなかった。これらのOSの後継が市場に投入される事はなく、PowerPCから完全に離れていった。最終的にはアップルのMac OS、そして非商用のPPC Linuxのみが残った。
2005年はPowerPC系CPUにとって激動の年になった。まず、2005年度のE3において発表された各社の次世代ゲーム機(レボリューション(コードネーム、現在のWii)、プレイステーション3、Xbox 360)のCPUがすべてPowerPC系アーキテクチャのものになった。一方で、これまでPowerPCを採用していたアップルコンピュータ社のMacintoshが、2006年からインテル社のCPUに全面的に切り替えていく事が発表された。現在アップルは完全にインテルアーキテクチャへの切り替えが完了、PowerPCのパソコン向けプロセッサとしての歴史は終わった。
現在ではゲーム機、組み込み用途の他、サーバーやスーパーコンピューターに採用されている。
[編集] PowerPCのプロセッサ
[編集] POWER改修系 (G1)
PowerPCファミリを立ち上げる為に、IBMの既存のPOWERプロセッサをベースに設計された。その為、正式にはPowerPCのジェネレーション・ナンバーを持っていない
-
- PowerPC 601 - 50,66,80,90MHz、POWER命令も実装
[編集] G2
アルミ配線の603、604がG2第1世代。第2世代については、IBMによる銅配線の603eと604e全てが該当するとする文献と、同シリーズで250MHz以上のものとする文献が散見され、はっきりしない。どちらも各々完全バス互換であったため、区別が重要でなかったこともその理由である。
-
- PowerPC 603 - 低消費電力
-
- PowerPC 603e - 低消費電力、高速版
- PowerPC 603ev - PowerPC 603eの高速版
- PowerPC 604 - SMP対応、インラインL2キャッシュ、高速な浮動小数点演算
-
- PowerPC 604e - 604の低消費電力、小型高速版
- PowerPC 604ev - 604eの低消費電力、小型高速版
[編集] G3
G3(第3世代)以降は、一般に対してPowerPC採用の代表的製品であるPowerMacintoshシリーズでその表記を前面に押し出した為、この区分が一般に明確となった。性能の割に消費電力が低いことが特徴で、現在では主に組み込み用途に用いられる。
-
-
- PowerPC 750L -750の銅配線版
- PowerPC 750CX/CXe -256KB L2キャッシュを内蔵
- PowerPC 750FX/FL -SOIで製造、L2キャッシュ512KB
- PowerPC 750GX -90nm SOIで製造、200MHz FSB対応、L2キャッシュ1MB、1.1GHzまで
- Gekko - ニンテンドーゲームキューブ用に開発されたもの(PowerPC 750CXeをベースに倍精度浮動小数点数演算対応SIMDを追加した設計)
- Broadway - 90nm SOIで製造、任天堂のWii用に開発されたもの(Gekko互換であり、PowerPC 750GXがベースと思われるが詳細は非公開)
-
[編集] G4
G3をベースに、SIMDと対称型マルチプロセッサ(SMP)機能を追加したもの。従来の60xバスに加え、より高度な制御機能をもったMPXバスにも対応している。
-
- MPC 74xx - G4シリーズと呼ばれる。750の発展系。モトローラおよびフリースケール・セミコンダクタが開発。
- AltiVec(Velocity Engine)搭載
- CPUバスにMPXバス(MaxBus)採用
- SMP対応
-
- MPC 7400
-
- MPC 7410 - 省電力版。180nmプロセスで製造。
- MPC 7450 - L2キャッシュ256KB内蔵、L3キャッシュ対応、整数演算ユニットを4基に、パイプラインを多段化し、高速化
-
- MPC 7451 - 省電力版
- MPC 7445 - 7455のL3キャッシュインターフェース省略タイプ
- MPC 7455 - 180 nmプロセス、SOIを採用。クロックは1GHzに到達。
- MPC 7447 - 7457のL3キャッシュインターフェース省略タイプ。省電力。
- MPC 7457 - 130nm プロセス、L2キャッシュを512KBに
- MPC 7448 - 90nmプロセスで製造、1MBのL2キャッシュ、e600コアを採用。
- MPC 74xx - G4シリーズと呼ばれる。750の発展系。モトローラおよびフリースケール・セミコンダクタが開発。
[編集] G5
-
- PowerPC 970 - POWER4ベースに設計。G5と呼ばれる。
-
- PowerPC 970FX - 90nmプロセス、高速化、省電力版
- PowerPC 970MP - デュアルコア、各コアにL2キャッシュ1MB内蔵
-
- PWRficient PA6T - P.A. Semiが設計した、64bit対応のG5互換製品。
- 省電力
- マルチコア接続用のCONEXIUMバスを搭載
- バイエンディアンに対応
- PWRficient PA6T - P.A. Semiが設計した、64bit対応のG5互換製品。
[編集] 関連項目
- IBM POWER - IBMの主にUNIXサーバーおよびワークステーション用のCPU。
- Macintosh - アップルコンピュータのパーソナルコンピュータ。
- Cell -ソニー・コンピュータエンタテインメント、東芝と共同開発したPowerPC系プロセッサ。プレイステーション3などのCPU。
- Xbox 360 - マイクロソフトのゲーム機。CPUにPowerPC系トリプルコアプロセッサーを使用。
- ニンテンドーゲームキューブ、Wii - 任天堂のゲーム機。CPUにPowerPC系プロセッサー「Gekko」「Broadway」を使用。
[編集] 外部リンク
カテゴリ: マイクロプロセッサ | IBM | アップルコンピュータ