PowerPC 600ファミリーは、最初に製造されたPowerPCプロセッサファミリーでした。これらのプロセッサは、AIMアライアンスの一環として、テキサス州オースティンのサマセット工場で設計されました。この工場は、 IBMとモトローラのエンジニアが共同で資金を提供し、人員配置されていました。サマセット工場は1992年に開設され、最初のPowerPCプロセッサを開発し、その後、パーソナルコンピュータ向けの汎用PowerPCプロセッサの設計を継続することを目標としていました。最初の世代は1993年にPowerPC 601となり、その後すぐに第2世代としてPowerPC 603、PowerPC 604、そして64ビット版のPowerPC 620が続きました。
| POWER、PowerPC、およびPower ISAアーキテクチャ |
|---|
| NXP(旧フリースケールおよびモトローラ) |
| IBM |
|
| IBM/任天堂 |
| 他の |
| 関連リンク |
| キャンセルは灰色、歴史的はイタリック体 |
| CPU | パイプラインステージ | 特徴 |
|---|---|---|
| パワーPC601 | 4 | 3 つの実行ユニット、静的分岐予測。SMP サポート。 |
| パワーPC603 | 4 | 5つの実行ユニット、分岐予測。SMPなし。 |
| パワーPC604 | 6 | スーパースカラー、アウトオブオーダー実行、6 つの実行ユニット。SMP をサポートします。 |
| パワーPC620 | 5 | アウトオブオーダー実行 - SMP サポート。 |
PowerPC 601 は、基本的な32 ビットPowerPC命令セットをサポートする最初の世代のマイクロプロセッサでした。設計作業は 1991 年半ばに本格的に開始され、最初のプロトタイプ チップは 1992 年 10 月に提供されました。最初の 601 プロセッサは、1993 年 10 月に IBM RS/6000ワークステーションに(より強力なマルチチップの兄弟であるIBM POWER2プロセッサ シリーズと並行して)、最初の Apple Power Macintoshに 1994 年 3 月 14 日に導入されました。601 は、市場で PowerPC を確立し、AIM アライアンスを強化するために、緊急スケジュールで設計された、POWER/PowerPC アーキテクチャの最初の高度なシングルチップ実装でした。大幅なパフォーマンス強化、新しい命令、そして重要なのは POWER/PowerPC の最初の対称型マルチプロセッシング(SMP) 実装など、大幅に新しい機能を組み込みながら、非常に積極的なスケジュールを達成するため、設計ではいくつかの主要なテクノロジとプロジェクト管理戦略が活用されました。 601チームはIBM RISCシングルチップ(RSC)プロセッサ[ 1 ]の基本構造と部分を多く活用しましたが、 POWER命令セットにはない新しいPowerPC命令の大部分もサポートしました。RSC設計のほぼすべての部分が変更され、完全に異なる統合I/Oバス構造とSMP/メモリコヒーレンスサポートを考慮して、多くの設計ブロックが大幅に変更または完全に再設計されました。新しいPowerPCの変更では、基本的なRSC構造を活用することで、チップ領域/フロアプランニングおよびタイミング分析/チューニングの不確実性を減らすのに非常に役立ちました。注目すべきは、601がSMPなどの重要な新しい機能を実装しただけでなく、POWERと将来のPowerPCプロセッサの橋渡しとして機能し、IBMとソフトウェア開発者のPowerPCへの移行を支援したことです。設計開始から最初の601プロトタイプのテープアウトまでは、PowerPCを早期に市場に投入するためにわずか12か月でした。
アライアンスとその顧客の利益のために、 88110バスアーキテクチャを601に迅速に組み込む取り組みを支援するため、モトローラの経営陣は88110バスアーキテクチャ仕様を提供しただけでなく、88110バスに精通した設計者数名を派遣し、60xバスロジックの実装と検証を支援した。アップルのシステム設計チームはモトローラの88110のI/Oバス構造に精通しており、このI/Oバスの実装は明確に定義され文書化されていたため、601チームはこのバス技術を採用して市場投入までの時間を短縮した。このバスは601に実装されると、60xバスと改名された。 [ 2 ]これらのモトローラ(および少数のアップル)の設計者は120名を超えるIBMの設計者と合流し、601を開発した。
88110バスを60xバスのベースとして使用したことは、様々な点でスケジュールの短縮に寄与しました。Apple Power Macintoshチームは、サポートASICの再設計量を削減できただけでなく、プロセッサ設計者とアーキテクトが新しいバスインターフェースを提案、文書化、交渉、そして最終決定するまでの時間も短縮できました(これにより、88110バスや以前のRSCバスが採用されていなかった場合に60xの経営陣が予想していた「バス戦争」をうまく回避することができました)。注目すべきは、AppleとIBMの提携のために88110バスを採用したことで、RSCの全く異なるバス構造をベースに既にサポートASICを実装していた最初のIBM RS/6000システム設計チームの努力が犠牲になったということです。
この 60x バスは、後に 601、603、604、G3、G4、および Motorola/Freescale PowerQUICCプロセッサのさまざまなバリエーションの基本インターフェイスとして、かなり長く使用されました。

このチップは幅広いアプリケーションに対応できるよう設計されており、外部L2キャッシュと対称型マルチプロセッシングをサポートしていました。浮動小数点ユニット、整数ユニット、分岐ユニット、シーケンサユニットの4つの機能ユニットを備えていました。また、メモリ管理ユニットも搭載されていました。整数パイプラインは4段、分岐パイプラインは2段、メモリパイプラインは5段、浮動小数点パイプラインは6段でした。
1993年秋にIBMシステムで初めて発表され、IBMではPPC601、モトローラではMPC601として販売されました。動作速度は50~80MHzでした。4層のアルミニウム相互接続を備えた0.6μm CMOSプロセスを使用して製造されました。ダイのサイズは121mm 2で、280万個のトランジスタを内蔵していました。601には32KBの統合L1キャッシュがあり、これは当時のオンチップキャッシュとしては大容量と考えられていました。大容量キャッシュのおかげもあり、競合するIntel Pentiumを凌駕する、同セグメントでは高性能なプロセッサとみなされていました。PowerPC 601は、 Apple社の最初のPower Macintoshコンピュータや、IBMおよびGroupe Bull社のさまざまなRS/6000ワークステーションおよびSMPサーバーで使用されました。
IBMは、バーモント州バーリントンとニューヨーク州イーストフィッシュキルの生産施設において、601および601+マイクロプロセッサの唯一の製造業者でした。601はIBM CMOS-4sプロセス、601+はIBM CMOS-5xプロセスを採用していました。これらの601および601+プロセッサのごく一部が、モトローラのロゴと部品番号が付けられたラベルに貼り替えられ、モトローラを通じて販売されました。「Motorola MPC601」の写真が数多く存在するため、これらの事実はやや曖昧になっています。特に、モトローラの巧みなマーケティング活動の好例と言えるでしょう。601は、タイム誌の1994年度「年間最優秀製品」に選ばれ、モトローラのロゴが付けられました。

1994年には、90~120MHzで動作するPowerPC 601vまたはPowerPC 601+という改良版が発表されました。これは、4層の相互接続を備えた新しい0.5μm CMOSプロセスで製造され、ダイサイズは74mm 2でした。601+の設計は、IBMのみのチームによってCMOS-4sからCMOS-5xに再マッピングされました。設計ツールの変更や製造現場のルールの共通化による市場投入までの遅延を回避するため、601と601+はどちらもIBMシステム上でIBM EDAツールを使用して設計され、IBMのみの施設で製造されました。[ 3 ] [ 4 ] [ 5 ] [ 6 ]

PowerPC 603 は、仕様どおりに完全な 32 ビットPowerPC アーキテクチャを実装した最初のプロセッサでした。 1994 年に発表されたこのプロセッサは、デュアル発行 (分岐フォールディングにより最大 3 つ) とアウトオブオーダー実行を 2.2 W の低消費電力と 85 mm 2の小型ダイと組み合わせた最初のマイクロプロセッサの 1 つであり、当時としては先進的な設計でした。[ 7 ] [ 8 ] [ 9 ] [ 10 ]このプロセッサは、ポータブル アプリケーション向けの低コストで低消費電力のプロセッサとして設計されました。主な機能の 1 つは、電力要件を大幅に削減する省電力機能 (Doze、NAP、スリープ モード) で、スリープ モードではわずか 2 mW しか消費しません。 603 には、4 ステージのパイプラインと、整数ユニット、浮動小数点ユニット、分岐予測ユニット、ロード/ストア ユニット、システム レジストリ ユニットの 5 つの実行ユニットがあります。命令とデータ用に独立した8KBのL1キャッシュと32/64ビットの60倍速メモリバスを備え、3.8Vで最大120MHzに達する。[ 10 ] 603コアにはSMPのハードウェアサポートがなかった。

PowerPC 603は160万個のトランジスタを搭載し、IBMとモトローラによって0.5μm CMOSプロセスで製造され、4層の相互接続構造を備えていた。ダイサイズは85mm²で、80MHz動作時に2.2Wの電力を消費した。[ 10 ] [ 11 ] 603アーキテクチャは、AppleがPowerPC "G3"として販売したPowerPC 750アーキテクチャの直接の祖先である。
603はポータブルなApple Macintoshコンピュータに使われることを意図していたが、プロセッサのキャッシュが小さかったため、Appleが適切と考えるパフォーマンスで68Kエミュレーションソフトウェアを実行できなかった。結果として、Appleは低価格のデスクトップPerformaラインでのみ603を使うことを選択した。 [ 12 ] [ 13 ]これによりApple PowerBook 5300とPowerBook Duo 2300の発売が遅れ、Appleはプロセッサの改訂を待つことにした。AppleがPerforma 5200ラインで603を使ったことでプロセッサの評判が悪くなった。68Kエミュレーションのパフォーマンスの問題とは別に、Performaマシンはネットワークのパフォーマンスと安定性、バスの問題(幅、速度、競合、複雑さ)、ROMのバグ、ハードディスクのパフォーマンスなど、コンピュータの設計の他の側面に関連するさまざまな設計上の欠陥を抱えたまま出荷された。[ 14 ] [ 15 ] 68Kエミュレーション性能を除けば、5200シリーズの問題はどれも603自体に起因するものではありませんでした。むしろ、プロセッサは68Kマザーボードやその他の旧式の部品で使用できるように改造されたものでした。[ 16 ] Low End Macというサイトは、Performa 5200を史上最悪のMacと評価しています。[ 17 ] 603は様々な組み込み機器で広く使用されました。

603のパフォーマンス問題は、PowerPC 603eで解決されました。L1キャッシュは16KBの4ウェイ・セットアソシエイティブ方式のデータキャッシュと命令キャッシュに拡張されました。プロセッサのクロック速度も倍増し、200MHzに達しました。製造プロセスを350nmに縮小することで、最大300MHzの速度を実現しました。この部品はPowerPC 603evと呼ばれることもあります。603eと603evはそれぞれ260万個のトランジスタを搭載し、面積はそれぞれ98mm²と78mm²です。603evは300MHz動作時に最大6Wの消費電力を消費します。[ 18 ] [ 19 ]
PowerPC 603eは、 Power Macintosh 6500に搭載され、300MHzを実現した初の主流デスクトッププロセッサでした。603eは、160MHzから240MHzの速度のCPUを搭載した、Phase5のAmigaシリーズのコンピュータ用アクセラレータカードにも使用されました。PowerPC 603eは現在でもIBM、Freescale、 Atmel、耐放射線型RHPPCを製造しているHoneywellなどの企業によって販売されています。PowerPC 603eは、 Be Inc.のBeBoxの心臓部でもありました。BeBoxは、603が想定していなかったマルチプロセッシングシステムである点で注目に値します。IBMは、 IBM ThinkPad 800シリーズにもPowerPC 603eプロセッサを搭載していました。LeCroyは、特定のデジタルオシロスコープシリーズで、PowerPC 603eをメインプロセッサとして採用しました。[ 20 ] [ 21 ] 603eプロセッサは、イリジウム衛星電話機群の全66機にも搭載されています。各衛星には、約200MHzで動作するモトローラ/フリースケールPowerPC 603eプロセッサが7基搭載されています。カスタム603eプロセッサは、Mark 54 Lightweight Torpedoにも搭載されています。
PowerPC 603eコアは、フリースケール社によってG2に改名され、多くの組み込みPowerQUICC IIプロセッサの基盤となっており、現在も開発が続けられています。フリースケール社のPowerQUICC II SoCプロセッサはMPC82xxという名称で、450MHzに達する様々な構成で提供されています。G2という名称は、603eおよび604プロセッサのG3、G4、G5との整合性を保つためのレトロニムとしても使用されています。
Freescaleは、 PowerQUICC II Pro組み込みプロセッサに搭載されている603eコアを改良し、e300と名付けました。32KB/32KBの大容量L1キャッシュをはじめとするパフォーマンス向上策が追加されました。FreescaleのPowerQUICC II Pro SoCプロセッサはMPC83xxの名称で提供され、様々な構成で最高667MHzの速度を実現します。e300は、小型コンピュータEFIKAに搭載されているMPC5200B SoCプロセッサのコアでもあります。

PowerPC 604は1994年12月に603と同時に発表され、ワークステーションおよびエントリーレベルのサーバー向けの高性能チップとして設計され、ハードウェアで対称型マルチプロセッシングをサポートしていました。604はAppleのハイエンドシステムに広く採用されたほか、Macintoshクローン、IBMのローエンドRS/6000サーバーおよびワークステーション、Amigaアクセラレータボード、そして通信アプリケーション向けの組み込みCPUにも使用されました。
604は、 4つの命令を同時に発行できるスーパースカラプロセッサです。604は6段パイプラインと6つの実行ユニットを備え、並列動作により1サイクルあたり最大6つの命令を実行できます。2つの単純整数ユニットと1つの複素整数ユニット、1つの浮動小数点ユニット、アウトオブオーダー実行を管理する1つの分岐処理ユニット、そして1つのロード/ストアユニットを備えています。また、16KBのデータL1キャッシュと命令L1キャッシュをそれぞれ独立して備えています。外部インターフェースは、最大50MHzのクロックレートで動作する32ビットまたは64ビットの60xバスです。
PowerPC 604は360万個のトランジスタを搭載し、IBMとモトローラによって0.5μm CMOSプロセスを用いて4層の相互接続層で製造された。ダイサイズは12.4 mm x 15.8 mm(196 mm 2)で、133 MHz動作時に14~17 Wの消費電力を発生した。動作周波数は100~180 MHzであった。[ 22 ] [ 23 ] [ 24 ]

PowerPC 604eは1996年7月に発表され、条件レジスタユニットと独立した32KBのデータおよび命令L1キャッシュの追加、メモリサブシステムと分岐予測ユニットへの変更などにより、前世代機と比較して25%の性能向上を実現した。510万個のトランジスタを搭載し、IBMとモトローラによって0.35μm CMOSプロセスで製造され、5層の相互接続が採用された。ダイは148 mm 2と96 mm 2で、それぞれモトローラとIBMによって製造され、233 MHzで16~18 Wの消費電力であった。動作速度は166 MHzから233 MHzで、最大66 MHzのメモリバスをサポートした。[ 25 ] [ 26 ]
PowerPC 604ev、604r、あるいは「Mach 5」は1997年8月に発表されました。これは基本的にIBMとMotorolaが新しいプロセスで製造した604eであり、より高速で低消費電力を実現していました。ダイは47 mm²と小型で、0.25 μm CMOSプロセスで製造され、5層の相互接続層を備えていました。消費電力は250 MHzで6 Wでした。動作速度は250 MHzから400 MHzで、最大100 MHzのメモリバスをサポートしていました。
Apple 社は 1998 年に 604ev を廃止してPowerPC 750を採用しましたが、IBM 社は数年にわたって RS/6000コンピューターのエントリー モデルで 604ev を使い続けました。
PowerPC 620は、 64ビットPowerPCアーキテクチャ全体を初めて実装した製品である。603および604と並んで第二世代のPowerPCであったが、ハイエンドのワークステーションおよびサーバー市場向けに設計されていた。理論上は強力であり、当初は兄弟機種と同時に発売される予定であったが、1997年にまで延期された。実際に登場したとき、パフォーマンスは比較的低く、かなり安価な604eがそれを上回った。[ 27 ]そのため、620は大量生産されることはなく、ほとんど使用されなかった。PowerPC 620を使用したのはGroupe BullのEscala UNIXマシンだけだったが、大量出荷はなかった。ワークステーションとサーバーに使用しようと考えていたIBMは、より強力なRS64およびPOWER3 64ビットプロセッサーを待つことにした。
620はモトローラ社によって0.5μmプロセスで製造されました。690万個のトランジスタを搭載し、ダイ面積は311mm 2でした。クロック周波数は120~150MHzで動作し、消費電力は133MHzで30Wでした。後継モデルは0.35μmプロセスを採用し、200MHzまで動作可能となりました。
620 は 604 に似ていた。5 ステージのパイプライン、対称型マルチプロセッシングのサポート、実行ユニット数も同じで、ロード/ストア ユニット、分岐ユニット、FPU、および 3 つの整数ユニットがあった。[ 28 ]より大きな 32 KB の命令およびデータ キャッシュ、最大 128 MBの容量を持つ L2 キャッシュのサポート 、より多くのバッファーを持つより強力な分岐およびロード/ストア ユニットにより、620 は非常に強力であった。分岐履歴テーブルも大きくなり、より多くの命令をディスパッチできるため、プロセッサは 604 よりも効率的にアウトオブオーダー実行を処理できる。浮動小数点ユニットも 604 に比べて強化された。より高速なフェッチ サイクルとハードウェアでの主要な命令 (sqrt など) のサポートにより、より高速で幅広のデータ バスと相まって、604 の FPU よりも効率的になった。
システムバスは、6XXバスと呼ばれる、より広帯域で高速な128ビットメモリバスでした。これは、プロセッサ、キャッシュ、メモリ、I/Oがシステム制御チップの支援を受けて接続されるマルチプロセッサシステム用のシステムバスとして設計されました。32ビットと64ビットの両方のPowerPCプロセッサ、32ビットを超えるメモリアドレス、そしてNUMA環境をサポートします。POWER3、RS64、そして604ベースのRS/6000システム(「Orca」ブリッジチップ[ 29 ]を使用)でも使用されました。[ 30 ]
MX IOは6xxベースのシステムのIO接続に利用されました。チップセット(当初はヘビにちなんで名付けられました)は、6xxバスとMXバス間のブリッジ機能を備えており、MXバスと標準IOバス間のブリッジ機能も備えていました。
6XXバスは後にファブリックバスと呼ばれる分散コヒーレントバスへと進化し、MXバスはGXバス(Gはプロジェクトコード名GigaProcessorに由来)へと進化しました。どちらもPOWER4で採用されています。その後、POWER5とPOWER6ではそれぞれGX+とGX++として採用されました。GXバスはIBMのSystem zメインフレームであるz10およびz196でも使用されています。
PowerPC 602は、PowerPC 603の簡素化版で、モトローラとIBMがゲーム機向けに特別に製造し、1995年2月に発表されました。[ 31 ]より小型のL1キャッシュ(命令4KB、データ4KB)、単精度浮動小数点ユニット[ 31 ]、および縮小版の分岐予測ユニットを備えています。動作速度は50MHzから80MHzで、消費電力は66MHzで1.2Wでした。100万個のトランジスタで構成され、0.5μmのCMOSプロセスで製造され、4層の相互接続構造を備え、50mm²の大きさでした。 [ 32 ]
3DOはPowerPC 602を2基搭載したM2ゲームコンソールを開発したが[ 31 ] [ 33 ]、市販されることはなかった。
1996年10月21日、ファブレス半導体企業であるQuantum Effect Devices (QED)は、 Microprocessor ForumでPowerPC 603互換プロセッサ「PowerPC 603q 」を発表しました。名前にもかかわらず、他の603との共通点はありませんでした。これは、2年かけて開発された、ハイエンドの組み込み市場を対象とした32ビットPowerPCアーキテクチャのゼロからの実装でした。そのため、小型でシンプル、エネルギー効率が高く、強力で、より高価な603eに匹敵し、消費電力は少ないものでした。PowerPC 603qは、1つの整数ユニット、倍精度浮動小数点ユニット(FPU)、および独立した16KBの命令キャッシュと8KBのデータキャッシュを備えた、インオーダーの5ステージパイプラインを備えていました。整数ユニットはまったく新しい設計でしたが、FPUは時間を節約するためにR4600から派生しました。 0.5μmの製造プロセスを使用して69mm2の小型サイズで、 120MHzでわずか1.2Wの消費電力でした。[ 34 ] [ 35 ]
603qはモトローラ向けに設計されましたが、量産開始前にモトローラは契約を破棄しました。その結果、QEDはPowerPCライセンスを保有していなかったため、このプロセッサの販売を継続することができず、603qはキャンセルされました。
「PowerPC 613」は、モトローラが第3世代PowerPCに付けた名前のようです。[ 36 ] [ 37 ] [ 38 ] Exponential Technologyのx704プロセッサが604をはるかに凌駕する性能を発揮したことを受けて、「 PowerPC 750」に改名されたと言われています。しかし、この説を裏付ける情報源はほとんどなく、単なる憶測か、全く別のプロセッサを指している可能性があります。
PowerPC 613と同様に、「PowerPC 614」はモトローラが第3世代PowerPCに付けた名称である可能性があり、[ 36 ] [ 38 ]、後に613と同じ理由で改名されました。この部品は「PowerPC 7400」に改名されたという説もあり、モトローラは「G3」と「G4」のアーキテクチャの違いが小さいにもかかわらず、第4世代PowerPCにまで昇格させました。しかし、この説を裏付ける情報源はほとんどなく、単なる憶測か、全く異なるプロセッサを指している可能性があります。
「PowerPC 615」は、IBMが1994年に発表したPowerPCプロセッサですが、量産には至りませんでした。その主な特徴は、ダイ上にx86コアを組み込んだことで、プロセッサはPowerPCとx86命令の両方をネイティブに処理できるようになりました。[ 39 ] PowerPC 615で動作するオペレーティングシステムは、32ビットまたは64ビットのPowerPC命令、32ビットのx86命令、あるいはこれら3つの混合のいずれかを選択できます。命令の混合は、CPU内でコンテキストスイッチを必要とし、わずかなオーバーヘッドが発生します。615をサポートしていたオペレーティングシステムは、MinixとOS/2の特別開発版のみでした。[ 40 ]
これは330 mm 2 の大きさで、 IBMが0.35 μmプロセスで製造した。IntelのPentiumプロセッサとピン互換で、速度も同等だった。このプロセッサはプロトタイプとしてのみ発表され、Microsoftがこのプロセッサをサポートしなかったこともあり、プログラムは中止された。PowerPC 615に取り組んでいたエンジニアは後にTransmetaに移り、Crusoeプロセッサの開発に携わった。DigitalのFX!32技術などの動的変換ソフトウェアの開発が進歩したことが示されたため、ハードウェアリソースをネイティブパフォーマンスの向上に使用できるにもかかわらず、外部バイナリの実行に専用にすることに対して懐疑的な意見が示された。これは、変換されたバイナリのパフォーマンスにも役立つ。[ 41 ] : 94
「PowerPC 625」は、IBMが「Amazon」PowerPC-AS命令セットをベースに設計したApacheシリーズの64ビットPowerPCプロセッサの初期名称でした。後に「RS64」に改名されました。「PowerPC 625」という名称は、最終的なプロセッサには使用されませんでした。
「PowerPC 630」は、IBMがPOWERとPowerPCの命令セットを統合するために設計したハイエンド64ビットPowerPCプロセッサの初期名称でした。後に「 POWER3 」に改名されました。これはおそらく、 Appleが使用していたよりコンシューマー向けの「PowerPC」プロセッサと区別するためでしょう。
「PowerPC 641」(コードネームHabanero)は、1994年から1996年にかけてIBMが開発していたPowerPCプロジェクトであり、現在は廃止されている。604プロセッサをベースにした第3世代のPowerPCだったと推測されている。[ 42 ] [ 43 ]
の8KBという小さなキャッシュは、Mac OSソフトウェア、特に68KBエミュレーションではパフォーマンスが著しく低いことで有名だった。603eのキャッシュでさえ、高クロック時にはパフォーマンスに著しい低下を招いた。Arthurの設計目標が250MHz以上であったことを考えると、キャッシュを2倍にすることは理にかなったことだった。