| |
| 作成年 | 1972年[ 1 ] |
|---|---|
| スピード | 8 MB/秒 |
| スタイル | 平行 |
| Webサイト | 標準 |

GPIB(汎用インタフェースバス)またはHP-IB(ヒューレット・パッカード・インタフェースバス)は、短距離デジタル通信用の8ビット並列マルチマスター・インタフェースバス仕様です。元々はヒューレット・パッカード社によって開発され、IEEE 488.1-2003で標準化されました。その後、いくつかの標準規格の対象となりました。このバスは元々、自動試験装置を接続するために開発されましたが、初期のマイクロコンピュータ、特にコモドールPETの周辺機器バスとしても成功を収めました。コンピュータ用途では、IEEE 488は新しい標準規格に大きく置き換えられましたが、試験装置では依然として使用されています。
1960年代、ヒューレット・パッカード(HP)は、デジタルマルチメータやロジックアナライザなど、様々な自動試験計測機器を製造していました。同社は、計測機器とコントローラ(コンピュータと他の計測機器)間の相互接続を容易にするために、HPインタフェースバス(HP-IB)を開発しました。 [ 2 ] HPのこの部門は後に(1999年頃) 、アジレント・テクノロジーズとして分社化され、2014年にはアジレントの計測部門がキーサイト・テクノロジーズとして分社化されました。[ 3 ] [ 4 ]
当時の技術では、シンプルなパラレルバスと複数の個別制御線を使用することで、バスの実装は比較的容易でした。例えば、HP 59501電源プログラマとHP 59306Aリレーアクチュエータはどちらも、マイクロプロセッサを必要とせずに TTLで実装された比較的シンプルなHP-IB周辺機器でした。
HPはHP-IB特許を他のメーカーにわずかなライセンス料で供与しました。これは汎用インターフェースバス(GPIB)として知られるようになり、自動化機器および産業用計測機器制御の事実上の標準となりました。GPIBの普及に伴い、様々な標準化団体によって標準化されました。
1975年、IEEEはGPIBバスを「プログラマブル計測器用標準デジタルインタフェース」(IEEE 488)として標準化しました。これは1978年に改訂され、IEEE 488-1978となりました。 [ 5 ]この規格は1987年に改訂され、IEEE 488.1(IEEE 488.1-1987)として再指定されました。これらの規格では、GPIBの機械的、電気的、および基本的なプロトコルパラメータが規定されていましたが、コマンドやデータのフォーマットについては何も規定されていませんでした。
1987年、IEEEは標準コード、フォーマット、プロトコル、および共通コマンド(IEEE 488.2)を導入しました。これは1992年に改訂されました。[ 6 ] IEEE 488.2は、基本的な構文とフォーマット規則に加え、デバイスに依存しないコマンド、データ構造、エラープロトコルなどを規定しました。IEEE 488.2はIEEE 488.1を置き換えることなく、それを基盤として構築されました。機器はIEEE 488.2に従わなくてもIEEE 488.1に準拠することができます。
IEEE 488.1はハードウェアを定義し、IEEE 488.2はプロトコルを定義しましたが、計測器固有のコマンドに関する標準はまだ存在していませんでした。例えばマルチメータのような同じクラスの計測器を制御するコマンドは、メーカーやモデルによって異なっていました。
アメリカ空軍[ 7 ]、そして後にヒューレット・パッカードも、これを問題として認識しました。1989年、HPはテスト計測言語(TML)[ 8 ]またはテストおよび計測システム言語(TMSL)[ 9 ]を開発しました。これは、1990年に業界標準として導入されたプログラマブル計測器用標準コマンド(SCPI) [ 10 ]の前身です。SCPIは標準的な汎用コマンドと、対応するクラス固有のコマンドを持つ一連の計測器クラスを追加しました。SCPIはIEEE 488.2構文を必須としていましたが、他の(IEEE 488.1以外の)物理トランスポートも許可していました。
IECはIEEE と並行して独自の規格 IEC 60625-1 および IEC 60625-2 (IEC 625) を開発しましたが、後にIEC 60488-2に置き換えられました。
ナショナルインスツルメンツは、IEEE 488.1(当初はHS-488として知られていた)の下位互換性のある拡張規格を導入しました。この拡張規格では最大データレートが8MB/sに向上しましたが、バスに接続されるデバイスの数が増えるとレートは低下します。これは2003年にHPの反対を押し切って規格(IEEE 488.1-2003)に組み込まれました[ 11 ] 。 [ 12 ] [ 13 ]
2004年に、IEEEとIECはそれぞれの規格を「デュアルロゴ」IEEE/IEC規格IEC 60488-1(プログラマブル計測器用標準デジタルインタフェースの高性能プロトコル規格 - パート1:一般)[ 14 ]に統合し、 IEEE 488.1/IEC 60625-1に代わるものであり、IEC 60488-2、パート2:コード、フォーマット、プロトコル、および共通コマンド[ 15 ]は、IEEE 488.2/IEC 60625-2に代わるものである。[ 16 ]
IEEE 488 は、 16 本の信号線 (双方向データ転送に 8 本、ハンドシェイクに 3 本、バス管理に 5 本) と 8 本のグランド リターン ラインを 使用する8 ビットの電気的に並列なバスです。
バスは0から30までの5ビットのプライマリデバイスアドレスを31個サポートし、バス上の各デバイスに固有のアドレスを割り当てます。[ 17 ] [ 18 ]
この規格では、最大15台のデバイスが、ケーブル総長20メートル(66フィート)までの単一の物理バスを共有できます。物理トポロジーは、リニアまたはスター(分岐)型です。[ 19 ]アクティブエクステンダーを使用すると、より長いバスが可能になり、理論上は1つの論理バスに最大31台のデバイスを接続できます。
制御機能とデータ転送機能は論理的に分離されており、コントローラは1つのデバイスを「トーカー」として、1つまたは複数のデバイスを「リスナー」として指定できます。これらのデバイスはデータ転送には関与しません。複数のコントローラが同じバスを共有することも可能ですが、一度に「コントローラ・イン・チャージ」となることができるのは1つだけです。[ 20 ]
オリジナルのプロトコルでは、転送にはインターロックされた3線式のReady-Valid-Acceptedハンドシェイクが用いられます。[ 21 ]最大データレートは約1MB/秒です。後にHS-488拡張版が発行され、ハンドシェイク要件が緩和され、最大8MB/秒まで転送速度が向上しました。バス速度は、最も遅いデバイスによって決定されます。[ 22 ]
IEEE 488は、アンフェノール社設計の24ピンマイクロリボンコネクタを規定しています。マイクロリボンコネクタはD字型の金属シェルを備えていますが、Dサブミニチュアコネクタよりもサイズが大きいです。セントロニクス社がプリンタに使用していた36ピンマイクロリボンコネクタにちなんで、「セントロニクスコネクタ」と呼ばれることもあります。
IEEE 488コネクタの特徴の一つは、片側にオス、もう片側にメスを備えた「双頭型」設計が一般的であることです。これにより、コネクタを積み重ねて簡単にデイジーチェーン接続できます。機械的な制約により、積み重ねられるコネクタの数は4つ以下に制限されますが、コネクタを物理的に支えるなどの回避策でこれを回避できる場合があります。
これらは、6-32 UNK [ 23 ](現在ではほとんど廃止されている)またはメートル法のM3.5×0.6ねじで固定されます。この規格の初期版では、互換性のないUTSねじとの混同を避けるため、メートル法のねじは黒く塗るべきであると提案されていました。しかし、1987年の改訂では、メートル法のねじが普及したため、この方法は不要とされました。[ 24 ]
IEC 60625規格では、25ピンDサブミニチュアコネクタ( IBM PC互換機のパラレルポートに使用されているものと同じ)の使用が規定されています。このコネクタは、既存の24ピンコネクタに比べて市場で大きな支持を得ることができませんでした。

| 関数 | 略語 | 説明と例 | |
|---|---|---|---|
| ソースハンドシェイク | SH | 1 | 完了 |
| アクセプターハンドシェイク | ああ | 1 | 完了 |
| 基本的な話し手 | T | 5 | シリアルポールに応答し、リスンアドレスを受信するとトークを停止し、トークのみの機能を持つ |
| 6 | リスンアドレスを受信するとトークを停止します。トークのみは行いません。 | ||
| 7 | シリアルポールなし、リスンアドレスを受信するとトークを停止、トークのみ機能 | ||
| 拡張トーカー | TE | 0 | 長時間話さない |
| 基本的なリスナー | L | 3 | 聞くだけモード。トークアドレスを受信すると聞くのをやめる。 |
| 4 | トークアドレスを受信した場合は聞き取りを停止します | ||
| 拡張リスナー | ル | 0 | 拡張リスナーなし |
| サービスリクエスト | SR | 0 | サービスリクエスト機能なし |
| 1 | 完了 | ||
| リモート-ローカル | RL | 0 | ローカルロックアウトなし |
| 1 | 完了 | ||
| 並行投票 | PP | 0 | パラレルポールに応答しない |
| デバイスクリア | DC | 1 | 完了 |
| デバイストリガー | DT | 0 | デバイストリガー機能なし |
| 1 | 完了 | ||
| コントローラ | C | 0 | コントローラー機能なし |
| E | 1 | オープンコレクタ駆動エレクトロニクス | |
| 2 | 3つの州のドライバー | ||

HPの設計者は、IEEE 488を汎用コンピュータの周辺機器インターフェースとして具体的に設計したわけではなく、計測機器に重点が置かれていました。しかし、HPの初期のマイクロコンピュータが周辺機器(ディスクドライブ、テープドライブ、プリンタ、プロッタなど)用のインターフェースを必要とした際、HP-IBはすぐに利用可能であり、その目的に容易に適応させることができました。
HP-IBを採用していたHP社製コンピュータ製品には、HPシリーズ80、HP 9800シリーズ、[ 26 ] HP 2100シリーズ、[ 27 ] HP 3000シリーズ[ 28 ]などがある。RS -232通信インタフェースを採用していなかったHP社製コンピュータ周辺機器も、HP 7935のようなディスクシステムを含め、HP-IBを採用していた。1980年代のHP社製高性能ポケット電卓の一部、例えばHP-41やHP-71Bシリーズなどは、オプションのHP-IL /HP-IBインタフェースモジュールを介してIEEE 488機能も備えていた。
他のメーカーも、 Tektronix 405xシリーズなどのコンピュータに GPIB を採用しました。
コモドールPET(1977年発売)シリーズのパーソナルコンピュータは、IEEE 488バスを使用して周辺機器を接続していましたが、カードエッジコネクタは非標準でした。コモドールのその後の8ビットマシンは、IEEE 488に基づいたプロトコルを持つシリアルバスを採用していました。 [ 29 ]コモドールはVIC-20 [ 30 ]とコモドール64 [ 31 ]用にIEEE 488カートリッジを販売しました。コモドール64周辺機器のサードパーティサプライヤー数社は、PETシリーズと同様のカードエッジコネクタにIEEE 488由来のインターフェースを備えたC64用カートリッジを製造しました。[ 32 ]
最終的に、周辺機器アクセスに関しては、 SCSIなどのより高速で完全な標準がIEEE 488 に取って代わりました。
電気的には、IEEE 488は、個別のロジックまたはマイクロコントローラで実装可能なハードウェアインターフェースを採用していました。このハードウェアインターフェースにより、異なるメーカーのデバイスが単一のホストと通信できるようになりました。各デバイスがバスプロトコルに必要な非同期ハンドシェイク信号を生成するため、低速デバイスと高速デバイスを1つのバス上に混在させることができました。データ転送速度は比較的遅いため、インピーダンス整合や終端といった伝送線路の問題は考慮されません。バスとデバイス間のガルバニック絶縁は不要だったため、グラウンドループによってノイズやデータ損失が発生する可能性がありました。
IEEE 488コネクタとケーブルは物理的に頑丈で、ネジで固定されていました。物理的に大きく頑丈なコネクタは産業用や実験室の設備では有利でしたが、パーソナルコンピュータなどの用途ではコネクタのサイズとコストがネックとなっていました。
電気的および物理的なインターフェースは明確に定義されていましたが、当初は標準コマンドセットがありませんでした。異なるメーカーのデバイスでは、同じ機能に対して異なるコマンドが使用される場合がありました。[ 33 ]コマンドプロトコル標準の一部は、 1990年のStandard Commands for Programmable Instruments (SCPI)まで標準化されていませんでした。実装オプション(例えば、送信終了時の処理)は、IEEE 488.2以前のデバイスにおける相互運用性を複雑にする可能性があります。
USB、FireWire、Ethernetといった最近の規格は、インターフェース機器のコスト低下を背景に、より複雑な規格を実装し、より広い帯域幅を実現しています。多導体(パラレルデータ)コネクタとシールドケーブルは、RS-232、RS-485、USB、FireWire、Ethernetといったシリアルデータ転送規格で使用可能なコネクタやケーブルよりも本質的に高価でした。量販店向けのパーソナルコンピュータや周辺機器(プリンタやスキャナなど)でIEEE 488を実装しているものはほとんどありませんでした。
コントローラー: 3260A マーク付きカードリーダー;
9820A
電卓 (11144A インターフェースキット付き)
ラフリー、ドナルド・C. (1972年10月). 「プログラマブル計測器のための共通デジタルインターフェース:システムの進化」(PDF) .ヒューレット・パッカード・ジャーナル. 24 (2): 8– 11.
1990年、IEEE 488.2仕様にStandard Commands for Programmable Instrumentation (SCPI)文書が含まれていました。
プライマリアドレスは0~30の範囲の数値です。
0~30の範囲の任意のアドレスを使用できます。
デイジーチェーンまたはスター型トポロジーで接続
既存のケーブルの中には、インチねじ(6-32UNK)を使用しているものもあります。
以前の版にあったメートルねじに関する「参考情報」は、IEEE 488ではメートルねじの使用が一般的であるため削除されました。したがって、メートルねじであることを目立たせるために、そのような部品を黒色でコーティングするという推奨も不要とみなされます。
{{citation}}:引用は一般的なタイトルを使用します (ヘルプ)およびHP2000コンピュータ用HP-IBインターフェース
3000シリーズ900用CIO HP-IBインターフェース
ID*ID