PowerPC 970
このため、PowerPCのリトルエンディアンモードを使用していたマイクロソフトのVirtual PCは設計を変更しなければならず、発売が遅れることとなった。
IBMのブレードサーバ用モジュールであるJS20/JS21といくつかのローエンドワークステーション、System pサーバはPowerPC 970を利用している。このプロセッサはマーキュリー社の Momentum XSA-200のようなハイエンド組み込みシステムでもまたいくつか使われた。PowerPC 970は、しばしばマイクロソフトの Xbox 360に採用されているIBMの Xenonのコア、もしくはCellのPower Processing Element(PPE)と同じであると誤解されることがある。しかし、両者のマイクロアーキテクチャはPowerPC 970とは完全に異なり、単にVMX命令に対応した64ビットPowerPCであるという仕様が共通しているにすぎない。
PowerPC 970では、複雑な命令をデコード時に複数の内部命令(86ビット長)に分解して実行するアプローチをとっている。そのため、パイプラインのデコード段は4段と、通常のRISCプロセッサと比較すると長い。2つまでの内部命令で表現可能なPowerPC命令についてはハードウェアデコーダで処理することができるが、それより多くの内部命令を必要とする命令についてはマイクロコードROMで処理される。
デコードされた命令はグループに纏められて処理される。グループには5つのスロット(スロット0-4)が用意されており、最大5つの内部命令がスロット0からプログラム順に格納される。ただし、スロット4は分岐命令専用であり、デコードされた命令の中に分岐命令が存在しない場合はグループに含まれるのは最大4命令となる。また、同様にスロット0や1のみに格納できる命令もあり、プログラム順に格納した際にこれらの命令がうまく該当するスロットに入らない場合、代わりにNOPがスロットに入り調整が行われる。そのため、プログラム側で命令を上手に並べない限り、5命令/サイクルというピーク性能を維持し続けるのは難しい。
ディスパッチはグループ単位で行われる。そのため、対応する命令キューに空きがない等の理由でディスパッチ不可能な命令がグループの中に1つでも存在すると、グループに含まれる全ての命令はディスパッチ不可能になりストールしてしまう。ディスパッチされたグループは後述するGlobal Completion Tableに登録され、各スロットの命令は各演算器の命令キューに入り待機状態となる。この際にレジスタ・リネーミングも行われ、各命令のオペランドは物理レジスタファイルにマッピングされる。