PowerPC

Article on other languages:

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire
IBM powerpc 601 マイクロプロセッサ PPC601FD-080-2
IBM powerpc 601+ マイクロプロセッサ PPCA601v5FE1002
IBM powerpc 601 マイクロプロセッサ PPC601FF-090a-2

PowerPC(パワーピーシー、Performance optimization with enhanced RISC for Personal Computer)は1991年AIMと呼ばれたアップルコンピュータIBMモトローラの提携によって開発された RISC タイプのマイクロプロセッサ (CPU) のアーキテクチャである。

アーキテクチャとして、動作のベースとなる命令セットや基本的なレジスタセット、メモリアドレッシングキャッシュモデルなどを規定しているが、それらをどのように実装すべきかまでは規定していない。

そのため実際に製造されるモデルは高速化のためにアーキテクチャレベルでは規定されていない機構(L2、L3キャッシュや関連レジスタなど)を備えているのが普通である。

性能の割に低消費電力でダイサイズも小さいという特性から、ゲーム機やハイエンドのルータなどのネットワーク機器、レーザープリンタなどの分野で広く使われており、高性能な組み込みシステム向けプロセッサとしてよく使われる。FPGA用のIPコアとして提供されているものもある。もともとはAIMプラットフォームのCPUという意味で開発されたものだが、CPU以外は開発されなかったため、今日まで残る同プロジェクト唯一の成果物でもある。

デスクトップコンピュータ用としては、アップルコンピュータ社のPower Macに採用されていたほか、IBM の一部のワークステーションサーバBlueGene/Lをはじめとするスーパーコンピュータにも採用されている。その他、現行の据え置き型ゲーム機は、三機種(Wiiプレイステーション3Xbox 360)とも全てPowerPCアーキテクチャを採用している。

現在、PowerPCプロセッサはモトローラから半導体部門を分離して設立されたフリースケール・セミコンダクタIBMが開発・製造を行っており、PowerPC派生品種のCellプロセッサはIBMと東芝セミコンダクターが設計・製造している。

目次

設計特徴

PowerPCはRISCの思想で作られており、スーパースカラ方式で命令を実行する。

ベースにしたPOWERの特徴に、さらにいくつかの変更を加えた。

1998年以降、POWERも64ビットPowerPC仕様に準拠したアーキテクチャを採用している。

歴史

PowerPC の歴史は70年代後半のジョン・コックRISCアイデアを使用した米 IBM 社の801プロトタイプ・チップで始まった。801を基にしたコアは数々のIBM製組み込み用製品に採用され、最終的には16本のレジスタを持つROMPプロセッサ、IBM RTにまで発展した。しかし、RTプロセッサの性能は十分とは言えなかったため、IBMは「アメリカ・プロジェクト」と呼ばれる、市場で最も高速なプロセッサを開発する計画を始動させた。その結果開発されたのがPOWERアーキテクチャであり、1990年初頭にRISC 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を市場に投入していた。しかし、このプロセッサは貧弱な設計手法と製造上の問題により市場での評価は低く、販売は低迷していた。このためモトローラは、MIPSSPARCといった競合製品に市場で並ぶ機会を失いつつあった。しかし、新型POWER系プロセッサの開発に参加すれば、キャッシュ部分を設計するだけで、広くテストされた高性能RISCプロセッサを販売する事が可能になるため、RISCプロセッサ市場での巻き返しが期待された。また、重要な顧客であるアップルコンピュータとの関係の改善や、IBMに簡略化バージョンを供給できる可能性もあった。

その低評価の一方で、MC88000プロセッサは既に生産されており、アップル社は既にこのプロセッサを利用したプロトタイプのコンピュータを動作させていた。このため、開発中のPOWERアーキテクチャ・シングルチップのバスにハードウェアの段階でMC88000のバスとの互換性を持たせれば、ロジックボードを再設計する事なく、より迅速に新型プロセッサを市場に投入する事が可能であった。最終的に、新型プロセッサPowerPCはこういった要求を含んだ設計となった。

PowerPCが市場に投入される直前、大きな動きがあった。アップルコンピュータに加えてIBMとモトローラの両社は、PowerPCプロセッサに対応したシステムを提案した。マイクロソフトはモトローラのPowerPCサーバ向けのWindows NT 3.51を発表、サン・マイクロシステムズSolaris OSのPowerPC版を発表した。またIBMは、自社のAIXを移植し、OS/2の移植も計画していた。しかしこれらの動きはわずかな期間で終わり、結局PowerPCという新型アーキテクチャに期待されていた理想が実現する事はなかった。Windows、OS/2、そしてサンの顧客はPowerPC用ソフトウェアの不足を理由に、PowerPCプロセッサはほとんど顧みなかった。これらのOSの後継が市場に投入される事はなく、PowerPCから完全に離れていった。またBeOSも最初のバージョンはPowerPC向けに開発されたが、その後x86系プロセッサに移行していった。最終的にはPowerPC向けの商用のデスクトップOSは、アップルのMac OSとMkLinux、マイナーなAmigaOSのみが残った。90年代中頃、PowerPCプロセッサはベンチマークにおいて、最速のx86系プロセッサと同等または凌駕する性能を発揮した。G4ではAltiVecを搭載し、当時の他のCPUに比較して大幅に高速なSIMD処理を実現した。PowerPCの高性能であるにもかかわらず低コスト・低消費電力といった特性は、組み込み向けとしては高く評価されたものの、デスクトップで勢力を拡大するための決め手にはならなかった。

2005年はPowerPC系CPUにとって激動の年になった。まず、2005年度のE3において発表された各社の次世代ゲーム機(レボリューション(コードネーム、現在のWii)、プレイステーション3Xbox 360)のCPUがすべてPowerPC系アーキテクチャのものになった。一方で、これまでPowerPCを採用していたアップルコンピュータ社のMacintoshが、2006年からインテル社のCPUに全面的に切り替えていく事が発表された。2006年中にアップルのハードウェアは完全にインテルアーキテクチャへの切り替えが完了したが、PowerPC向けソフトウェアの開発は続けている。

現在ではゲーム機、組み込み用途のほか、サーバやスーパーコンピューターに採用されている。

PowerPCのプロセッサ

POWER改修系 (G1)

PowerPCファミリを立ち上げる為に、IBMの既存のPOWERプロセッサをベースに設計された。その為、正式にはPowerPCのジェネレーション・ナンバーを持っていない

G2

XPC603EFE100LF
XPC603PRX200LC

アルミ配線の603、604がG2第1世代。第2世代については、IBMによる銅配線の603eと604e全てが該当するとする文献と、同シリーズで250MHz以上のものとする文献が散見され、はっきりしない。どちらも完全バス互換であったため、区別が重要でなかったこともその理由である。PowerPC 603は大変消費電力が少なく、デスクトップと同様の仕様のチップがノートパソコンに搭載されたほか、組み込み向けに広く使われた。PowerPC 604は4つの演算ユニットを並列動作させることができ、パーソナルコンピューター向けとしては当時最高レベルの演算性能を持っていた。浮動小数点演算は特に強力であった。

  • PowerPC 603 - 低消費電力
    • PowerPC 603e - 低消費電力、高速版
    • PowerPC 603ev - PowerPC 603eの高速版
  • PowerPC 604 - SMP対応、インラインL2キャッシュ、高速な浮動小数点演算
    • PowerPC 604e - 604の低消費電力、小型高速版
    • PowerPC 604ev - 604eの低消費電力、小型高速版
  • PowerPC 615 - x86とPowerPC命令の両立を目指したプロセッサ。Pentium互換ソケットに装着可能。x86プロセッサとしては当時のPentiumなどに対抗できる性能を有すと見込まれたが、命令の切り替えの際の性能の低下が激しい、ダイサイズが330mm2とPower PC系にしては大きい、Microsoftなどがサポートしない公算が大きかったなどの理由により開発中止になった。
  • PowerPC 620 - 64ビット版。その設計はPOWER3に引き継がれる
  • x0704 - エクスポーネンシャル社による互換チップ。BiCMOSで製造したもの。クロック数は当時のPowerPCを上回っていた。(433/500/533MHz)
PPC750CXEHP55-3
GEKKO 45L8926ESD(PPCDBK-EFB486X3)

G3

詳細はpowerpc g3を参照のこと。

G3(第3世代)以降は、PowerPC採用の代表的製品であるPower Macintoshシリーズでアップルがジェネレーション・ナンバーを前面に押し出したため、PowerPCの世代区分が一般に明確となった。性能比での消費電力が低いことが特徴で、現在では主に組み込み用途に用いられる。なお、パイプラインは浅く、603と変わらない4段にすぎない。

  • PowerPC 75x,74x - powerpc g3シリーズと呼ばれる。603eの発展系。
    1. PowerPC 75xにはバックサイドキャッシュを採用
    2. 整数演算ユニットを2基に
    • powerpc 750L -750の銅配線版
    • powerpc 750CX/CXe -256KB L2キャッシュを内蔵
    • powerpc 750FX/FL -130nm SOIで製造、L2キャッシュ512KB
    • powerpc 750GX -90nm SOIで製造、~1.1GHz、200MHz FSB対応、L2キャッシュ1MB
    • powerpc 750CL -L2キャッシュ256KB、400MHz〜1GHz、powerpc 750GXの約半分まで省電力化されている
  • Gekko - ニンテンドーゲームキューブ用に開発されたもの。powerpc 750CXeをベースに、浮動小数点演算が強化され、SIMD命令が追加されている
  • Broadway - 90nm SOIで製造、任天堂のWii用に開発されたもの。Gekko互換であり、powerpc 750CLがベースと思われるが詳細は非公開。
XPC7400
XPC7455

G4

詳しくはPowerPC G4を参照

G3をベースに浮動小数点演算機能を強化、SIMDと対称型マルチプロセッサ機能を追加したもの。CPUバスは従来の60xバスに加え、より高度な制御機能をもったMPXバスにも対応している。

  • MPC 74xx - G4シリーズと呼ばれる。モトローラおよびフリースケール・セミコンダクタが開発。
    1. AltiVec(Velocity Engine)搭載
    2. CPUバスにMPXバス(MaxBus)採用
    3. SMP対応
    4. 浮動小数点演算を強化
    • MPC 7400
      • MPC 7410 - 省電力版。180nmプロセスで製造。
    • MPC 7450 - L2キャッシュ256KB内蔵、L3キャッシュ対応、整数演算ユニットを4基に、パイプラインを7段に多段化し、高クロック化
      • MPC 7451 - 省電力版
      • MPC 7445 - 7455のL3キャッシュインターフェース省略タイプ。
      • MPC 7455 - 180 nmプロセス、SOIを採用。クロックは1GHzに到達。
      • MPC 7457 - 130nm プロセス、L2キャッシュを512KBに
      • MPC 7447 - 7457のL3キャッシュインターフェース省略タイプ。省電力。
      • MPC 7448 - 90nmプロセスで製造、1MBのL2キャッシュ、e600コアを採用。
      • MPC 8641 - e600コアを採用。メモリコントローラ、PCI Expressコントローラを内蔵。
      • MPC 8641D - MPC 8641のデュアルコア版。

G5

  • PowerPC 970 - IBMがアップルと共同開発し、POWER4ベースに設計。G5と呼ばれる。
    1. 64bit
    2. パイプラインを大幅に多段化し高クロック動作(最高2GHz以上、パイプライン数16~25本)
    3. CPUバスを大幅に高速化(1GHz超)
    4. 高速な浮動小数点演算(8GFLOPS[1GHz動作時])
    5. AltiVec互換のVMXを搭載
    6. リトルエンディアンに対応せず
    • PowerPC 970FX - 90nmプロセス、高速化。省電力機能「PowerTune」を搭載。
    • PowerPC 970MP - デュアルコア、各コアにL2キャッシュ1MB内蔵。最高2.5GHz。
    • PowerPC 970GX - PowerPC 970FXの後継モデルで、970MPの性能のままシングルコア・省電力を実現した。最高2.5GHz。


  • PWRficient PA6T - P.A. Semi(2008年にアップルに買収された)が設計した、64bit対応のG5互換製品。
    1. 徹底的なクロックゲーティング(チップ全体を2万5340の要素に分けてクロックの供給を行う)により、省電力(2GHz、2コアで平均消費電力13W)を実現
    2. マルチコア接続用のCONEXIUMバスを搭載
    3. AltiVec互換のVMXを搭載
    4. バイエンディアンに対応

関連項目

外部リンク

Article keywords: powerpc g3, powerpc 750, powerpc 601,

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net