インターグラフクリッパー C4 (C400) CPU | |
| デザイナー | |
|---|---|
| ビット | 32ビット |
| 紹介された | 1986 |
| デザイン | RISCのような |
Clipperアーキテクチャは、フェアチャイルド セミコンダクターが設計した32 ビットRISCのような命令セット アーキテクチャです。このアーキテクチャは市場で大きな成功を収めることはなく、 Clipper プロセッサを使用して主要な製品ラインを作成したコンピュータメーカーはIntergraphとHigh Level Hardwareのみでしたが、Opus Systems は、パーソナル メインフレーム シリーズの一部として Clipper に基づく製品を販売しました。[1] Clipper アーキテクチャを使用した最初のプロセッサはフェアチャイルドによって設計および販売されましたが、それらを担当していた部門は 1987 年に Intergraph に売却されました。Intergraph は、自社のシステムで使用するために Clipper プロセッサの開発を継続しました。[2]
Clipper アーキテクチャは、以前のCISCアーキテクチャに比べて簡素化された命令セットを使用していましたが、当時の他の RISC プロセッサよりも複雑な命令がいくつか組み込まれていました。これらの命令は、Clipper CPU 内のいわゆるマクロ命令ROMに実装されていました。この方式により、Clipper は他の RISC CPU よりもコード密度がいくらか高くなりました。
バージョン


フェアチャイルドが製造した最初の Clipper マイクロプロセッサは C100 で、1986 年に発売されました。その後、1988 年に Intergraph からより高速な C300 が発売されました。Clipper の最終モデルは 1990 年に発売された C400 で、大幅に再設計されて高速化され、浮動小数点レジスタが追加されました。C400 プロセッサは、スーパースカラー命令ディスパッチとスーパーパイプライン操作という 2 つの主要なアーキテクチャ技術を組み合わせて、新しいレベルのパフォーマンスを実現しました。
当時の多くのプロセッサはスーパースカラー命令ディスパッチかスーパーパイプライン操作のいずれかを使用していましたが、クリッパーC400は両方を使用した最初のプロセッサでした。[3]
インターグラフは、C5として知られる後継のクリッパープロセッサ設計に着手したが、これは完成もリリースもされなかった。しかし、C5用にいくつかの高度なプロセッサ設計技術が考案され、インターグラフはこれらに関する特許を取得した。これらの特許は、オリジナルのクリッパー特許とともに、インテルやその他の企業に対するインターグラフによる特許侵害訴訟の根拠となっている。[4]

他の多くのマイクロプロセッサとは異なり、Clipper プロセッサは実際には複数の異なるチップのセットでした。C100 と C300 は、整数ユニットと浮動小数点ユニットの両方を含む中央処理装置 1 つと、データ用と命令用の2 つのキャッシュおよびメモリ管理ユニット (CAMMU) の 3 つのチップで構成されています。CAMMU には、キャッシュ、変換ルックアサイド バッファ、メモリ保護と仮想メモリのサポートが含まれています。C400 は、整数 CPU、FPU、MMU、キャッシュ ユニットの 4 つの基本ユニットで構成されています。最初のバージョンでは、CPU と FPU にそれぞれ 1 つのチップを使用し、MMU とキャッシュ ユニットに個別の要素を使用していましたが、後のバージョンでは、MMU とキャッシュ ユニットが 1 つの CAMMU チップに統合されました。
レジスタと命令セット
Clipper には、16 個の整数レジスタ (R15 はスタック ポインタとして使用されます)、16 個の浮動小数点レジスタ (初期の実装では 8 個に制限されていました)、プログラム カウンタ (PC)、ALU および FPU ステータス フラグとトラップ イネーブルを含むプロセッサ ステータス ワード (PSW)、および外部割り込みイネーブル、ユーザー/スーパーバイザ モード、およびアドレス変換制御ビットを含むシステム ステータス ワード (SSW) があります。
ユーザー モードとスーパーバイザ モードには、整数レジスタのバンクが別々にあります。割り込み処理は、PC、PSW、および SSW をスタックに保存し、PSW をクリアし、メモリ トラップ ベクターから PC と SSW をロードすることで構成されます。
Clipper はロード/ストア アーキテクチャであり、算術演算ではレジスタまたは即値オペランドのみを指定できます。基本命令「パーセル」は 16 ビットです。オペコードが 8 ビット、ソース レジスタが 4 ビット、デスティネーション レジスタが 4 ビットです。即値オペランド形式では、1 つまたは 2 つの後続命令パーセルで 16 ビット (符号拡張) または 32 ビットの即値オペランドを指定できます。プロセッサは即値オペランドを含めて一律にリトル エンディアンです。
加算、減算、ロード (クイックをレジスタに移動)、NOT (クイックの補数をレジスタに移動) 用に、4 ビットの符号なしオペランドを使用した特別な「クイック」エンコーディングが提供されます。
ロード/ストアおよび分岐命令のアドレス指定モードは次のとおりです。すべての変位は符号拡張されます。
- (Rn)、d12(Rn)、d32(Rn): 0、12、または32ビットの変位を持つレジスタ相対
- d16(PC), d32(PC): PC相対
- d16、d32: 絶対
- [Rx](Rn)、[Rx](PC): レジスタまたは PC 相対インデックス。インデックス レジスタはスケールされません。
通常の論理演算と算術演算に加えて、プロセッサは以下をサポートします。
- 32×32→32ビットの乗算、除算、剰余(符号付きおよび符号なし)
- 64 ビットのシフトと回転、偶数/奇数レジスタ ペアの操作
- 32×32→64ビット拡張乗算
- 整数レジスタのプッシュ/ポップ(プリデクリメントでストア、ポストインクリメントでロード)
- サブルーチン呼び出し(PC をプッシュし、オペランドのアドレスを PC に移動)
- サブルーチンからの戻り(スタックから PC をポップ)
- アトミックメモリのロードと msbit の設定
- 監督者の罠
より複雑なマクロ命令により、次のことが可能になります。
- 複数の整数レジスタ R n –R14をプッシュ/ポップする
- 複数の浮動小数点レジスタをプッシュ/ポップする D n –D7
- ユーザーレジスタR0~R15のプッシュ/ポップ
- 割り込みからの復帰(SSW、PSW、PCをポップ)
- バイト文字列を初期化する(R1から始まるメモリにR2のR0コピーを保存する)
- 文字を移動し、文字を比較します (長さは R0、ソースは R1、宛先は R2)
ほとんどの命令では任意のスタック ポインター レジスタを指定できますが、ユーザー レジスタの保存/復元を除き、複数レジスタ操作では R15 のみを使用できます。
IntergraphのClipperシステム

Intergraph は、サーバーとワークステーションの両方を含む、数世代の Clipper システムを販売しました。これらのシステムには、InterAct、InterServe、および InterPro 製品ラインが含まれ、主にCAD市場をターゲットにしていました。
フェアチャイルドは、クリッパーで使用するために、 UNIX System Vのバージョンである CLIX オペレーティングシステムを推進しました。インターグラフは、クリッパーベースのシステムに CLIX を採用し、開発を続けました。これは、これらのシステムで使用できる唯一のオペレーティングシステムでした。インターグラフは、クリッパーシステム用のMicrosoft Windows NTのバージョンに取り組んで公開デモンストレーションを行いましたが、この取り組みはリリース前に中止されました。[5]インターグラフは、クリッパー製品ラインを中止することを決定し、代わりに Windows NT を搭載したx86システムの販売を開始しました。
参考文献
- ^ 「Opus Systemsがシリーズ300 Unixワークステーションを発表」。Computerworld 、 1987年3月4日、p.41 。 2022年6月23日閲覧。
- ^ Weisberg, David (2008). 「エンジニアリング設計革命: エンジニアリングの実践を永遠に変えた人々、企業、コンピューターシステム」(PDF) 。第 14 章。2016 年 3 月 4 日時点のオリジナルよりアーカイブ(PDF) 。2016 年6 月 26 日閲覧。
- ^ CPU コレクション。「Intergraph Clipper C4」。
- ^ Flynn, Laurie (2004年3月31日). 「IntergraphとIntelがチップ紛争で和解」. The New York Times . 2015年6月19日時点のオリジナルよりアーカイブ。 2016年6月26日閲覧。
- ^ Simpson, Nik (2000 年 1 月 15 日). 「Re: Intergraph Interact 340」.ニュースグループ: comp.sys.intergraph. Usenet: Sg0g4.34$Ek.5695@newsin1.ispchannel.com.
- Fairchild Semiconductor Corporation (1987)。CLIPPER 32 ビット マイクロプロセッサ:ユーザーズ マニュアル。Prentice-Hall。ISBN 0-13-138058-3。
- Walter Hollingsworth、Howard Sachs、Alan Jay Smith (1989)。「CLIPPER プロセッサ: 命令セットアーキテクチャと実装」。Communications of the ACM。32 ( 2): 200–219。doi : 10.1145 /63342.63346。S2CID 13239029。
- Walter Hollingsworth、Howard Sachs、Alan Jay Smith (1987 年 2 月 11 日)。Fairchild CLIPPER: 命令セット アーキテクチャとプロセッサ実装(PDF) (技術レポート)。UCB/CSD。87/ 329。2011 年 3 月 22 日閲覧。
- James Cho、Alan Jay Smith、Howard Sachs (1986 年 4 月)。Fairchild CLIPPER プロセッサのメモリ アーキテクチャとキャッシュおよびメモリ管理ユニット(PDF) (技術レポート)。UCB/CSD。86/289。2011年 3 月 22 日閲覧。
- Howard Sachs、 Harlan McGhan、Lee Hanson、Nathan Brookwood (1991)。「Clipper C400 アーキテクチャにおける設計と実装のトレードオフ」IEEE Micro。11 ( 3 ): 18–21、74–80。doi : 10.1109 /40.87566。S2CID 8895269。
- インターグラフの歴史
- Clipper™ 32 ビット マイクロプロセッサ モジュール命令セット(PDF)、Fairchild、1985 年 10 月、 2020 年 7 月 11 日取得
- Clipper™ 32 ビット マイクロプロセッサ: CLIPPER アーキテクチャの概要(PDF)、Fairchild、1986 年 5 月、 2020 年 7 月 11 日に取得
- Clipper™ C100 32 ビット コンピュート エンジン データ シート(PDF)、Intergraph、1987 年 12 月、 2020 年 7 月 11 日取得
