MIPS (後のMIPSアーキテクチャーと区別するためにStanford MIPSとも呼ばれる)は、Microprocessor without Interlocked Pipeline Stagesの略であり、John L. Hennessyがスタンフォード大学で1981年から1984年に行なった研究プロジェクトである。 MIPSは、現在、縮小命令セットコンピューター(RISC)と呼ばれる命令セットアーキテクチャー(ISA)の一種を調査し、VLSI半導体技術を使ってマイクロプロセッサーとして実装し、最適化コンパイラーを組み合わせて使うことの効果を示した。 MIPSは、IBM 801とBerkeley RISCと合わせて、1980年代中盤にRISCテクノロジーを開拓し、一般化させた3つの研究プロジェクトの1つである。

MIPSがコンピューティングへ与えたインパクトにより、Hennessyは、IEEEフォン・ノイマンメダルを2000年に与えられた(デイビッド・パターソンと共同で)。 また、Association for Computing Machinery (ACM)により、エッカート・モークリー賞を2001年に与えられた。 IEEE Computer Societyによりシーモア・クレイ賞を再びデイビッド・パターソンと共同で2001年に与えられている。 2017年にはACMにより、チューリング賞を与えられた。

MIPSプロジェクトは、IBM (801)とカリフォルニア大学バークレー校 (RISC)における類似するプロジェクトに反応して、1981年に開始された。 MIPSはHennessyと彼の指導する大学院生によって、1984年に終了するまで実施された。 1984年にHennessyはMIPS Computer Systemsを設立し、MIPSプロジェクトで開発した技術を商業化した。

1985年には、MIPS Computer Systemsは、MIPSと呼ばれる新しい命令セットアーキテクチャーと最初の実装であるR2000マイクロプロセッサーを発表した。 商業的なMIPS命令セットアーキテクチャーとその実装は、組み込みコンピューター、パーソナルコンピューター、ワークステーション、サーバー、スーパーコンピューターに、広く使われるようになった。 2021年の時点でMIPSアーキテクチャーの所有者であるミップス・テクノロジーズは、RISC-Vに注力しMIPSアーキテクチャーの開発を終了させた。 1980年代後半には、MIPS-Xと呼ばれる後継プロジェクトが、スタンフォード大学でHennessyにより実施された。

32ビットアーキテクチャーとして、MIPS命令セットアーキテクチャーは、32ビットのアドレッシングとデータ操作をサポートしていた。 またロード/ストアアーキテクチャーである。 つまり全てのメモリーへのアクセスは、ロードとストアの各命令を使い、メインメモリーと32本の汎用レジスター(GPR)の間で、コピーする必要がある。 例えば、整数演算といった他の全ての命令は、GRPの上で行なわれる。 MIPS命令セットアーキテクチャーは、コントロールフロー、整数演算、論理演算を持っていた。 全ての命令は32ビット長である。 パイプラインストールを最小化するため、ロードとストア以外の全ての命令は、1クロックサイクルで実行される。 整数の乗算と除算の命令は存在せず、浮動小数点の演算もなかった。 MIPSアーキテクチャーでは、遅延スロット付き5ステージパイプラインにより発生するハザードは、全て命令の並びを工夫することで対応する必要があった。 コンパイラーは正しくない演算結果をもたらすハザードを防止するために命令をスケジュールした。 同時に、生成されたコードの実行時間を最短にするようにした。 全てのハザードをソフトウェアに見せるという決断は、クリティカルパスを最小化することで、パフォーマンスを最大化するように誘導する意図があった。 MIPSマイクロプロセッサーは、NMOSロジックであった。

脚注

参考文献