Power Architecture

Power Architecture(パワーアーキテクチャ)は、IBMなどによるRISCマイクロプロセッサCPU)用のアーキテクチャ名である。

Power Architecture
開発者
ビット数32ビット/64ビット(32 → 64)
発表2005年
バージョン2.06
デザインRISC
タイプRegister-Register
エンコードFixed/Variable
ブランチCondition code
エンディアンBig/Bi
拡張AltiVec, APU, DSP, Cell
オープンYes
レジスタ
  • 32個の64/32ビット汎用レジスタ
  • 32個の64ビット浮動小数点数レジスタ
  • 32個の128ビットベクトルレジスタ
  • 32ビットのcondition code register
  • 32ビットのlink register
  • 32ビットのcount register
  • その他
Power Architectureの概要図
Power ISAの系統図

当初は32ビットであったが、後に64ビット化された。Power Architectureの普及団体はPower.orgで40を超える企業や組織が参加している。Power Architectureをベースにしたプロセッサには、POWERPowerPCPowerQUICCCellなどがある。

「Power Architecture」は、IBMの以前の世代の用語である「POWER architectures」とは異なる。「POWER architectures」は、IBMのPOWER、PowerPC、Cellなどの全製品の各アーキテクチャを幅広く含んだ、過去の用語である。「Power Architecture」は、プロセッサーアーキテクチャ、ソフトウェアツールチェーンコミュニティ、エンドユーザー用アプライアンスなどを含んだファミリーネーム(総称)であり、製品や技術の仕様を記述した厳密な用語ではない。

用語

混同し易い用語を以下に簡単に記載する。

用語説明
POWERPerformance Optimization With Enhanced RISCの略。IBMにより設計されたマイクロプロセッサのアーキテクチャ。
PowerPCPower Performance Computingの略。POWERから派生した32/64ビットの命令セットを持つ、シングルチップのマイクロプロセッサで、いくつかの新しい要素を含む。AIM連合と呼ばれるAppleIBMモトローラにより設計された。
PowerPC-ASPowerPC-Advanced Seriesの略。コードネームは「Amazon」。PowerPCの純粋な64ビットの派生で、POWER2仕様のいくつかの要素を含む。IBMのRS64ファミリープロセッサとして使用された。
POWERnn」には自然数が入る。IBMが製造するハイエンドのマイクロプロセッサのシリーズで、POWER、PowerPC、PowerPC-ASなどの命令セットとは異なった組み合わせが使われている。
CellCell Broadband Engine Architecture(CBEA)の略。IBM、ソニー東芝が設計したPower Architectureベースのマイクロプロセッサである。
Power ArchitecturePOWER、PowerPC、Cellなどや、ソフトウェア、ツールチェーン、エンドユーザー機器などを指す幅広い用語。当記事で説明する。
Power ISA最新のPOWERおよびPowerPCの命令セットを結合した、新しい命令セット。IBMとフリースケールにより設計された。

歴史

RISC的なコンピュータは古くからあるが、一般にはパターソンのバークレーRISC(en:Berkeley RISC)とヘネシーのMIPS(R2000)からRISCの歴史は始まるものとされる。しかし、それに先行するIBMの801が、彼らに大きな影響を与えている。IBMは801からの派生であるROMPを完成させ、IBM RT-PCに使った。そして、RS/6000のCPUに向けて開発されたのが、Power Architectureであり、最初のPOWERであるPOWER1である。POWER1のシングルチップ向け機能削減版がRISC Single Chip(RSC)である。

1992年にはAppleIBMモトローラが「AIM連合」を形成し、POWERプロセッサの幅広い市場向けバージョンを開発した。その結果はPOWERアーキテクチャの修正されたバージョンである、PowerPCアーキテクチャとなった。PowerPCの最初の実装は1993年PowerPC 601で、RSCをベースとし、アップルのPower MacintoshやIBMのRS/6000システムで使用された。

IBMはPOWERアーキテクチャをRS/6000システム用に拡張し、1993年には8チップのPOWER2プロセッサが、更に1996年にはシングルチップバージョンの "POWER2 Super Chip"(P2SC)が登場した。

1990年代の初期にIBMはCISCベースのAS/400コンピュータの、RISCアーキテクチャへの移行を検討した。この新アーキテクチャ開発はコードネーム "Amazon" と呼ばれ、PowerPC-ASが生まれた(このプロジェクトで働くエンジニアの中では "Advanced Series" または "Amazon Series" とも呼ばれた)。PowerPC-ASは、RSCベースのマルチプロセッサのサーバープラットフォームとなった。IBMリサーチ研究所での開発は続けられ、64プロセッサ内部接続のサポートのためのRSCの拡張や、POWER2機能に対するAS/400やRS/6000機能の追加などが行われた。開発は終了して64ビットのA10およびA30プロセッサとなり1995年に発表され、1997年にはRS64系列となりAS/400およびRS/6000で使用された。

平行してAIM連合は1995年から1997年にかけてPowerPCの開発を進め、以下の第2世代PowerPCプロセッサをリリースした。

602と620は広く普及しなかったが、603と604およびその後継は、それぞれの市場で非常に普及した。モトローラとIBMはまた、組み込み用の実装で使われたPowerPC拡張の "Book E" を作成した [1] 。この実装にはモトローラのPowerQUICCプロセッサや、IBMのPowerPC 400ファミリーがある。

AIM連合の最後の努力は第3世代PowerPC(G3)で、1997年PowerPC 750である。その後はモトローラとIBMはPowerPCアーキテクチャの開発で別の道に分かれた。このG3プロセッサは、コンピュータと組み込みの両方の市場で広く使われ、IBMはその後の数年、750 ファミリーの進化を続行した。しかしモトローラはPowerPCのSoCPowerPC 7400で組み込み市場にフォーカスし、それを第4世代PowerPC(G4)と呼んだ。このプロセッサはAltiVecSIMDユニットを取り入れた。この "PowerPC G4" は1999年に登場し、AppleのMacintoshや、通信市場の色々な企業に使用された。

1998年に登場したPOWER3は、PowerPCとPOWER2のアーキテクチャを統合したが、IBMのRS/6000サーバーでしか使われなかった。

2000年にはPowerPC-ASアーキテクチャの最後の実装であるRS64-IVが登場し、AS/400とRS/6000で使用された。(これらのサーバーは、その後 eServer iSeries と eServer pSeries と改名され、更に Power Systemsに統合された。)IBMはまた、任天堂ゲーム機であるニンテンドーゲームキューブ用に、PowerPC 750CXeベースのGekkoを提供した。またIBMは実験的な64ビットPowerPCプロセッサであるRivinaを開発し、1GHzを超える最初のマイクロプロセッサとなった。

2001年にIBMは、PowerPC-ASとPOWER3を統合し置き換えるPOWER4を発表した。

2002年にアップルは新しいハイエンドのPowerPCを強く要望し、IBMに64ビットのPowerPC 970を開発させた。アップルはこれを第5世代PowerPC(G5)と呼んだ。PowerPC 970はPOWER4から派生し、いくつかのサーバー用機能が外されたが、AltiVecと互換性のあるIBM独自のVMX拡張命令ユニット持っていた。PowerPC 970とその後継は、アップルやIBMやいくつかのハイエンドの組み込みアプリケーションで使われた。

2003年にはTundraがモトローラから、マイクロコントローラのPowerPC 100ファミリーを買収した。また2003年には、CulturecomがIBMから、V-Dragon プロセッサに関するPowerPCテクノロジーのライセンスを取得した。2004年にはモトローラが半導体部門を、新会社であるフリースケール・セミコンダクタに分離した。

2004年にIBMから発表されたPOWER5は、POWER4の進化版であった。2005年には改良版のPOWER5+が登場し、PowerPC仕様書はv.2.01に更新され[2]、更に v.2.02 に更新された[3]。また2004年には、AMCCがIBMから、PowerPC 400ファミリーに関する知的財産権のライセンスとスタッフを取得した[4]。モトローラはフリースケールとなったが、PowerPCファミリーのe200e300e500e600、そして将来の64ビットのe700を発表した。同年には、IBMと15の他の会社により、Powerアーキテクチャに関する製品開発を推進する使命を持った組織である、Power.orgが設立された。その目的はPowerアーキテクチャテクノロジーの開発、実現、および推進である[5]

2005年には、IBM、ソニー東芝の共同開発4年目にてCellプロセッサの仕様書がリリースされた[6]。この第一の用途はPlayStation 3である。Cellは1つの64ビットのPowerアーキテクチャコアと、SPEsと呼ばれる8つの独立したSIMDを持つ。IBMはまた、マイクロソフトXbox 360用に3コアの64ビットプロセッサであるXenon-processorを提供した。任天堂も前世代に引き続き32ビットのPowerPCベースとなるBroadwayプロセッサをWiiに採用したため、奇しくも第7世代のゲーム機の3つ全てがIBMのPowerアーキテクチャプロセッサを採用することになった。なお、PlayStationシリーズおよびXboxシリーズは次の第8世代、任天堂も第9世代には他アーキテクチャへ移行しており、現代ではPowerアーキテクチャを採用したゲーム機は存在しない。

2007年3月にIBMは、ハイエンドのマイクロプロセッサで5.0GHzまでスピードアップでき、POWER5より倍の性能を持つPOWER6を発表した。POWER6はPOWERシリーズにVMX(Vector Multimedia Extension)拡張命令ユニットと、DFU(10進数演算をサポートするFPU)を追加した[7]

2010年2月8日に POWER7 を発表。 Vector Scalar Extension (VSX)拡張命令ユニット追加[8]、プロセスルール45nm[9]

2012年10月に POWER7+ を発表。プロセスルール32nm。

2014年4月に POWER8 を発表。プロセスルール22nm。

2017年12月にPOWER9を発表。プロセスルール14nm。FinFET SOI

2019年8月にPOWER9 Advanced I/Oを発表[10]

2022年2月にPOWER10を発表。プロセスルール7nm[11]

実装例

プロセッサ

システム

オペレーティングシステム

Power Architecture版が現在存在する、あるいは過去に存在したオペレーティングシステムには以下がある。

脚注

外部リンク