流すデータについて共通APIを定めた
1982年1月、IEEEはIEEE-728をリリースする。タイトルは"Recommended Practice For Code And Format Conversions for use with ANSI/IEEE STD 488-1978, IEEE Standard Digital Interface for Programmable Instrumentation"である。これはなにを規定しているかと言うと、IEEE-488の上で送受信されるデータフォーマットの規定である。
当初はIEEE-488と異なる番号が付いていたこの規格だが、IEEE-488の方は番号をIEEE-488.1/1987と変更して1987年6月に標準化され、一方IEEE-782の方は1992年6月にIEEE-488.2/1992となった。この2つの規格がどう違うのか? というのが下の画像である。
電気機械的な接続の規定がA、メッセージ交換のフォーマットを定めたのがB、主要なコマンド類をまとめたのがC、デバイス固有の機能がDになる。
IEEE-488.1はA、つまり電気機械的な接続の規約のみを取り扱い、その上でデータフォーマットや、よく使われる機器(測定器、プロッター、etc...)用の共通APIを定めたのがIEEE-488.2というわけだ。このIEEE-488.2が出てきたことで、ある程度まではGPIB用の標準的なソフトウェア、つまりデバイスドライバーを書けるようになった。
この後もIEEE-488は進化する。2023年10月にEmersonに買収されて現在はEmersonの一部門になっているのだが、測定器で有名なNational Instrumentsという会社はやはり広範にGPIBを自社の製品に利用していたが、最大1MB/秒では新しい測定器でのデータサンプリングに間に合わないケースが出てきた。
そこでGPIBと後方互換性を持ちつつ、最大8MB/秒まで転送速度を上げたHS-488という独自規格と、これをサポートするコントローラーを発表するとともに、そのHS-488をIEEEの標準化にかける。結局この8MB/秒の仕様はIEEE-488.1/2003として標準化されている。
このIEEE-488.1/488.2はそれぞれIECでもIEC 60625-1/60625-2として標準化されたが、最終的に2004年にIEEE/IEC 60488-1とIEEE/IEC 60488-2として2つの組織の共通の仕様となった。
時代とともに転送速度がボトルネックになる
ここまでがんばりつつも、現実問題として1980年代後半からGPIBのシェアは次第に減り始めた。まず1MB/秒という速度は、ある種の測定器にとっては残念ながら十分とは言えなかった。
こうした機器の中には、より高速な転送速度を可能にするSCSI I/Fを搭載したものもあるし、1990年代後半にPCIをベースとしたPXI(PCI eXtensions for Instrumentation)が登場すると、特に速度が必要な計測器はこちらをベースにシステムを組んでしまい、もうGPIBが必要なくなってしまった。計測モジュールとホストモジュールをPXIで接続して1つのシステムにしたからだ。
またGPIBでは機器の区別のためにユニークなアドレスを割り振る必要があるが、これの自動割り振りはついに実現しなかった。このため、手作業で各機器のディップスイッチやロータリースイッチでアドレスを設定しなければならなかった。
当然このアドレスはソフトウェア側の変更も必要になるので、一度設定したら二度と変更しないような構成はともかく、ちょくちょく機器が変わる構成ではこの変更作業がバカにならない労力だった。
ホットプラグ/アンプラグも最後まで登場しなかった。したがって機器の着脱があると、そのたびにシステム再起動が必要になった。またスタッカブルなコネクターも、なにかあるたびに外してつないで……がかなりの労力になった。2つや3つでも、長時間使っていると重みと振動で緩んできたりするので、こちらの配慮も大変だった。
しかも1990年末からUSBが登場すると、性能的にも使い勝手的にも「USBでいいじゃん」という話になってくるのは否めない。まだGPIBを使う計測器やテスト装置の類は市場に若干残っており、それもあってUSB GPIBコンバーターが販売されている(例:https://www.amazon.co.jp/dp/B00DDDF9IO/)が、ホスト(つまりPC)側からは完全に駆逐されてしまったのがGPIBである。
とはいえ、まだ例えばPCI Express対応 高速型GPIB通信ボードがあるので、使おうと思えば使えるのだが。
週刊アスキーの最新情報を購読しよう
本記事はアフィリエイトプログラムによる収益を得ている場合があります