PA-RISC

これはこのページの過去の版です。Melan (会話 | 投稿記録) による 2005年9月30日 (金) 05:05個人設定で未設定ならUTC)時点の版 (英語版から翻訳)であり、現在の版とは大きく異なる場合があります。

(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

PA-RISC(ぴーえーりすく)は ヒューレット・パッカード社(HP)のSystems & VLSI Technology Operationが開発したマイクロプロセッサ アーキテクチャである。

その名前にも含まれているようにRISCアーキテクチャの実装であり、PAはPrecision Architectureの略である。 また、HP/PAつまりHewlett Packard Precision Architectureと呼ばれることもある。 PAはHPの本社があるパロアルトにも関係があるかもしれない。

1980年代終盤、HPはCISCのCPUを使った3つのコンピュータシリーズを製造していた。 ひとつはSilicon-on-sapphire (SOS)技術を使ったHP独自のCPUをベースに設計されたUNIXワークステーションHP 9000である。 もうひとつは、アポロコンピュータ社を買収した際に得たモトローラ68000ファミリを使ったUNIXワークステーション。 さらにHPの設計した16ビットCPUをベースとしたミニコンピュータHP3000シリーズがあった。 HPはこれらのマシンをPA-RISCを用いてひとつのRISC CPUファミリをベースとしたマシンに統合しようとしていた。

PA-7000シリーズ

初期のPA-RISCチップは32ビットであった。 1980年代終盤、最初のPA-RISCチップがHP3000シリーズの新しいマシン930と950に使われた。 これらのマシンは当時、開発した研究所の名前をとってSpectrumと呼ばれた。 OSはMPE/ixが動作した。 HP 9000シリーズもすぐにPA-RISCプロセッサを導入し、OSはHP製UNIXHP-UXであった。

PA-RISCプロセッサ上に移植された他のオペレーティング・システムとしては、 MachLinuxOpenBSDNetBSDNEXTSTEP、そしてリリースされなかったWindows NTがある。

PA-RISCの興味深い点は、そのシリーズのほとんどがL2キャッシュを持たなかったことである。 その代わり大きな一次キャッシュを使っているが、以前は別チップをバスで接続していたが、現在は内蔵している。 PA-7100LCとPA-7300LCだけがL2キャッシュを持つ。 もうひとつPA-RISC独自と言えるのは7100LCで初めて導入された"Multimedia Acceleration eXtensions(MAX)"形式のマルチメディア命令(SIMD)である。

PA-8000シリーズ

1996年、64ビットのPA-RISC 2.0アーキテクチャが設計され、PA-8000がリリースされた。 PA-8000は10個の機能ユニットを持ち、先進的なパイプラインシステムを搭載していた。 また、命令キャッシュをふたつに分け、長期保持のキャッシュと短期保持のキャッシュを設けた。 1997年にリリースされたPA-8200はPA-8000とほぼ同じであるが、分岐予測機能が改善され、TLBミスヒット率が低減され、大容量高速キャッシュを持っていた。

PA-8500では1.5Mバイトの一次キャッシュをチップ上に組み込み、大きな性能向上を実現した。 また、同時にDDRバスを導入し、最大2GB/sのメモリバンド幅を実現した。 分岐予測のための履歴テーブルは2倍の2048エントリとなり、TLBは120エントリから160エントリに拡張された。

8600は8500の高クロック版であり、"quasi-LRU instruction cache eviction policy"(擬似LRU命令キャッシュ入れ替えポリシー)を採用している。 8700は8600をさらに高クロックにして、2.25MBの一次キャッシュを持っている。 また、擬似LRU命令キャッシュ入れ替えポリシー(訳注:命令キャッシュの中で最も使われていないエントリを見つけて入れ替える方式。本当に使用頻度を記録するのは至難なので「擬似」的に使用頻度を決める)とデータプリフェッチ機能(ロード命令を実行する前に、メモリから読み込んでくる)を備えている。 一次キャッシュは大容量であるもののあまり速くなく、性能の足かせとなった。 しかし、プロセスのサイズを考慮するとHPが内蔵したキャッシュのサイズは印象的である。

PA-8800(コードネームMako)は2つの独立したマクロプロセッサをひとつのダイに組み込んでいる。 そして、ひとつのチップで2ウェイのSMPを構成する。 8800内の各プロセッサは1.5Mバイトの一次キャッシュを持つが、HPは一次キャッシュのみというポリシーをやめて32MBの外部L2キャッシュをサポートした。 外部バスは6.4GB/sのItanium2のバスを採用し、PA-RISCとItaniumに共通のサーバデザインを採用した。

PA-8900は8800によく似ているが、L2キャッシュを64MBまで拡張し、キャッシュエラー検出や訂正などの機能を強化した。 噂されていたような8800のダイ縮小版ではない。これがPA-RISCシリーズの最後のマイクロプロセッサである。

HP社の方針と思われるが、PA-RISCは高性能であるものの周辺を含めたシステムとしての販売のみを行ってきたため、MIPSのように広く使われることはなかった。PA-RISCは間もなくその役目を終えるが、MIPSのように組み込みプロセッサとして残ることはないだろう。

モデルの変遷

モデル 別名 登場年 周波数[MHz] メモリバス[MB/s] プロセス[μm] トランジスタ[百万個] ダイサイズ[mm2] 電力[W] Dキャッシュ[k] Iキャッシュ[k] L2キャッシュ ISA
PCX-S PA-7000 1989 66 ? 1.0 0.58 201.6 ? 256 256 -- 1.1a
PCX-T PA-7100 1992 33-100 ? 0.8 0.85 196 ? 2048 1024 -- 1.1b
PCX-T PA-7150 1994 125 ? 0.8 0.85 196 ? 2048 1024 -- 1.1b
PCX-T' PA-7200 1994 120 960 0.55 1.26 210 30 1024 2048 -- 1.1c
PCX-L PA-7100LC 1994 60-100 ? 0.75 0.9 201.6 7-11 -- 1 2MB 1.1d
PCX-L2 PA-7300LC 1996 132-180 ? 0.5 9.2 260.1 ? 64 64 1-8MB 1.1e
PCX-U PA-8000 1996 160-180 960 0.5 3.8/4.5? 338/347? ? 1024 1024 -- 2.0
PCX-U+ PA-8200 1997 200-240 960 0.5 3.8/4.5? 338/347? ? 2048 2048 -- 2.0
PCX-W PA-8500 1998 300-440 1920 0.25 140 467 ? 1024 512 -- 2.0
PCX-W+ PA-8600 2000 480-552 1920 0.25 140 467 ? 1024 512 -- 2.0
PCX-W2 PA-8700(+) 2001 625-875 1920 0.18 186 304 ? 1536 768 -- 2.0
Mako PA-8800 2003 900-1000 6400 0.13 300 361 ? 768/core 768/core 32MB 2.0
? PA-8900 2005 1000-1100 6400 0.13 ? ? ? 768/core 768/core 64MB 2.0

注:ISAとは命令セットアーキテクチャ(Instruction Set Architecture)

外部リンク

  • OpenPA.net 分かりやすいPA-RISCチップとコンパイラに関する情報
  • PA-RISC Linux PA-RISC向けLinux移植に関するサイト