PowerPC G4はPowerPCの第4世代マイクロプロセッサを呼ぶものとして、Apple Computerによって使われた名称である。モトローラ及びモトローラから分離したフリースケールのプロセッサPowerPC 74xxシリーズに対して、Appleはこの名前を使うようになった。

Macコンピュータのシリーズ、PowerBook G4やiBook G4のようなノートPCや、Power Mac G4やPower Mac G4 CubeのようなデスクトップPCは、このプロセッサの名前からとっている。PowerPC G4はまた、eMacや初代Xserve、初代Mac mini、そしてG5プロセッサ採用前の液晶iMacにも使われた。

Appleは、IBMが開発した64bitプロセッサであるPowerPC 970を採用してから、デスクトップモデルについてはG4シリーズの採用を終了した。G4を採用した最後のデスクトップモデルはMac miniであった。G4を採用した最後のノートPCはiBook G4である。

本来、組み込み向けが用途の中心であり、ルータやスイッチ等のネットワーク機器、プリンターエンジンなどで利用され、過去に採用されていたMacintosh向けよりも大量に出荷されている。

## PowerPC 7400

7400(コードネームはMax)は1999年夏の終わりにデビューし、G4という愛称をつけられた最初のプロセッサであった。このチップは350MHzから500MHzの間で動作し、1,050万トランジスタを含んでおり、モトローラのHiPerMOS6プロセスを使って製造された。チップのダイサイズは83mmで銅配線技術を使用している。

モトローラはAppleに対して500MHzまでの動作クロックの製品を出荷すると約束していたが、初期の歩留まりは非常に悪かった。このことにより、AppleはPower Mac G4の500MHzモデルの広告を取り消さざるを得なかった。Power Macシリーズは400、450、500MHzのクロックを突然350、400、450MHzに落とした。Appleとモトローラの関係には溝ができ、これによりAppleはIBMに対してモトローラの7400シリーズの製品歩留まりを上げるのを助けてくれるように頼んだと報じられた。500MHzモデルは2000年2月16日に再度採用された。

### 設計

AppleとIBMと緊密に協力する中で、7400の大部分はモトローラにより設計が行われていた。G4アーキテクチャは、PowerPC G3プロセッサにAltiVecと呼ばれる (AppleはVelocity Engineと呼称している) 128bitのベクタプロセッシングユニットを加えたものとなった。AIM allianceの3番目のメンバーであるIBMは、従来よりサマーセットデザインセンターでモトローラと共同でPowerPCプロセッサを設計していたが、IBMはベクタプロセッシング (SIMD) ユニットを必要とは考えていなかったので、G4チップを製造することはなかった。

AltiVecユニットを用いると、7400マイクロプロセッサは4並列単精度 (32bit) 浮動小数点演算ないし、16並列8bit、8並列16bit、4並列32bitの整数演算を1サイクルで行うことができる。さらに、このベクタプロセッシングユニットはスーパースカラ構造を持っており、2つのベクタ演算操作を同時に行うことができる。この特徴はAltiVecユニットを利用するように設計されたアプリケーションを使う場合に、当時のIntelのx86マイクロプロセッサに対して、パフォーマンスを上げることができた。エフェクトやオブジェクトの軌跡をレンダリングする際にAltiVecユニットを利用すると高速化されるAdobe Photoshopや、AltiVecユニットを利用することでオンザフライでファイルのインポートや変換を行うAppleのiLifeアプリケーションスイートはアプリケーションの一例である。

7400のPowerPCプロセッサとしての基本的な仕様やマイクロアーキテクチャの多くはPowerPC 750のものを踏襲しており、AltiVecのサポートが加えられた点以外は大きく変わっていない。その中でも数少ない改良点として挙げられるのが対称型マルチプロセッシング (SMP) のサポートとFPUの改良である。7400は、改良されたキャッシュコヒーレンシープロトコル (MERSI) により、SMPをサポートするよう機能強化されている。また、7400のFPUはPowerPC 604のFPUをベースとして開発されたものを搭載している。これは、604のFPUがPowerPC 750のFPUよりも倍精度演算命令のレイテンシが小さく、クロック当たりおよそ25%高速であったためである。

## PowerPC 7410 "Nitro"

PowerPC 7410は7400と同じ設計であったが、200nmの代わりに180nmで製造された。7400と同じく1,050万トランジスタを搭載している。これは2001年1月9日に初代PowerBook G4でデビューした。

このチップはキャッシュの全量ないし半分を「高速なメインメモリ」として使う機能が追加されている。これは、キャッシュを指定のプロセッサの物理アドレス空間に割り当てることができるというものである。この機能はMercury Computer Systemsのような組み込みベンダによって使われた。

## PowerPC 7450 "Voyager"

PowerPC 7450は、G4プロセッサにおいて最初の(そして唯一の)大きな設計変更が行われたものである。チップには3,300万トランジスタ搭載され、7400/7410から大きく増加している。主な変更点は以下の通り。

7450は2001年1月9日に、733MHzのPower Mac G4に採用された。なお、PowerPC 7451は7450と同等の機能を持つマイナーチェンジ版であり、7441は7451からL3キャッシュのインターフェイスを省いたものである。

7400/7410に対して大きな改良が行われた745x/744x系列のプロセッサをG4eもしくはG4+と呼ぶことがあるが、これは公式のものではない。

## PowerPC 7445/7455 "Apollo 6"

PowerPC 7455で、オンチップキャッシュバスがより広い256ビットになり、180nmのSOIプロセスで製造された。これはAppleにとって1GHzの壁を越えた最初のプロセッサだった。7445は同じチップでL3キャッシュインタフェースを除いたものである。7455はAmigaOne XE G4で採用された。

## PowerPC 7447/7457 ""Apollo 7"

2005年初頭、AppleのG4シリーズの中で出荷されたもっとも高速なプロセッサはMPC 7447Bであり、これは1.67GHzで動作するもので、2005年1月のPowerBook G4に採用された。5,800万トランジスタからなる7447は7450/55からほんの少し改良された。これは512KBのオンチップL2キャッシュを持ち130nmで製造され、その後低消費電力化される。7447Aでは、DFS(動的周波数変更)と共にサーマルダイオードも集積し、フリースケールは少しだけクロックを上げることができた。7457はL3キャッシュインタフェースを追加されたものである。

Power Mac G4とPower Mac G4 Cubeをアップグレードするのに7457を使う企業は、Giga Designs社とDaystar Technology社(OWCが買収。iMac G4アップグレードに7457を唯一使っていた)とPowerlogix社のみであった。Pegasosコンピュータもまた7447を使ってPegasos-II/G4を販売していた。

## PowerPC 7448 "Apollo 8"

MPC7448は7447が進化したもので、本質的に1MBのL2キャッシュと200MHzのFSBを持つ、90nmで製造された7447の高速かつ低消費電力版である。フリースケールの新しい標準コアであるe600はこれらの機能を備えている。Daystar社は、2GHzまで動作する、アルミニウムPowerBook G4に対する7448アップグレードキットを出荷している。

## 将来

### e600

745xに見られる多重化バスインタフェースによって、帯域が抑えられているという問題が思い起こされる。また、フリースケールのSoCチップの商品ラインアップ計画と対照的だと思わせる。このラインアップは、シングルないしデュアルのe600コアを用いRapidIOやPCI Expressを通してより速いシステムインタフェースと接続できる。またIO同士を667MHzで動作する多重化バスで接続し、コアとDDR/DDR2メモリコントローラは非同期マルチプロセッサをサポートする。このアーキテクチャはフリースケールのMPC8641およびMPC8641Dプロセッサモデルで登場し、2005年の10月にリビジョン1.0としてテープアウト、2006年中頃に特定顧客向けにサンプル出荷される。商品化されるのは2007年初頭を予定され、出荷時のコアクロックは1-1.5GHz、メモリクロックは400-600MHzを予定している。

### e700

2004年、フリースケールは新しい処理能力の高いコアであるe700を発表した。これまで公表された2、3の詳細情報から、このコアはe600とよく似ていて、64bitプロセッサで、3GHzないしそれ以上のクロックで動作し、MPC87xxと名づけられている。