Bendix G-15
Bendix G-15は、ベンディックス社が1956年にリリースしたコンピュータ。科学技術計算や工業関係での使用を指向した製品である。
5フィート×3フィート×3フィートほどのサイズで、950ポンドの重量であった。周辺機器を含まない基本システムの価格は49,500ドル。平均的なシステム構成の価格は約6万ドルであった。レンタル価格は月額1,485ドル。1963年、コントロール・データ・コーポレーション(CDC)がベンディックス社のコンピュータ部門を買収してから、シリーズは徐々に廃止されていった。
G-15の主任設計者ハリー・ハスキーは、かつてイギリスでアラン・チューリングの下でACEの開発に従事し、その後1950年代にはSWACを開発した経験がある。設計の大部分は彼がカリフォルニア大学バークレー校や他の大学の教授をしていた時代になされた。G-15プロジェクトに関わったベンディックス社の技術者にはデービッド・エバンスがいる。彼は後にコンピュータグラフィックスに関する業績で有名となり、アイバン・サザランドと共にエバンスサザランド社を設立した。
アーキテクチャ
電子式コンピュータの黎明期に多く見られた遅延記憶装置を使用した機種と同様の、ビット直列逐次型であるが、かのチューリングが関与したACEの影響による、磁気ドラムメモリを利用した「recirculating delay line memory」がアーキテクチャ上の最も著しい特徴である。
磁気ドラムメモリは、磁性体が塗布あるいは蒸着された円筒の表面にトラックが並んでいる。本機のドラムメモリでは、レジスタとして使用するトラックについては、各トラックに読出しヘッドと書込みヘッドが存在し、常に、ビット列を読み出しては必要であればそれを加工し、即座に書き戻す、というようになっている。これがrecirculating delay line memoryである（日本語では、再生循環レジスタなどと呼ばれている）。トラック上の情報量が遅延線の長さに相当し、読み込みヘッドと書き込みヘッドの距離と回転速度によって決定される。何もなければデータは変更無しに書き戻されるが、データのうち必要なセクションがこの部分を通過するタイミングでデータを書き換えることで、コンピュータとしての動作（計算など）を行う、という仕掛である。
この方式では、任意の長さの「遅延線」を生成することが可能である。108ワード×20本の長い遅延線以外に、いくつかの4ワードの短い遅延線も備えていた。この短い遅延線は長い遅延線が1周する間に27周するので、高速なアクセスが可能である。アキュムレータさえも磁気ドラムメモリ上に実装されており、3本のダブルワードのアキュムレータと1本のシングルワードのアキュムレータを備えていた。アキュムレータを磁気ドラムメモリ上に配置することでフリップフロップを節約し、真空管の本数を削減している。
この設計の結果、他の磁気ドラムメモリを主記憶にも使用したコンピュータと違って（遅くなるが、コンピュータを安価にするためにそのようなコンピュータもあった）、G-15は、停止すると以上で説明したようなレジスタについてはその内容を保持できない。内容が保持されるトラックは工場で設定されるタイミング補正用の2つのトラックだけである。2つあるのはバックアップのためで、読み取りヘッド部分に故障が発生するとトラックの内容が消えてしまうことがあったのである。
G-15の逐次性は演算回路や制御回路の設計にもある。加算器は一度に1ビットだけ計算される（これは他のビット直列逐次型のコンピュータと同様。具体的な加算の方法は加算器#直列加算器を参照）。命令も同時にフリップフロップに保持しなければならないビット数がなるべく最小になるように設計されていた。
G-15は180個の真空管と300個のゲルマニウムダイオードを使用している。磁気ドラムメモリの容量は29ビットワードで2,160ワード分である。平均メモリアクセス時間は14.5ミリ秒だが、プログラムを注意深く設計すればこの時間を劇的に減らすことができる（全ての命令に「次に実行すべき命令のアドレス」というフィールドが付いているので、タイミング良く読み出せるアドレスに次々と命令を置くことで、最適化できる）。メモリアクセス時間を除いた加算にかかる時間は270μ秒である。単精度乗算には2,439μ秒、倍精度乗算には16,700μ秒かかった。
周辺機器
G-15の主な出力機器はタイプライターであり、数字(および小文字のuからzまで)は1秒間に10文字、通常の英数字は1秒間に3文字印字できる性能であった。もともと記憶装置の容量が小さいので、コンピュータは数字だけを出力するようにして、事前に罫線などが印刷された紙をタイプライターにセットして使用した。もっと高速なタイプライターも使用可能である。
高速光電式紙テープ(16進で毎秒250桁のPR-1、および毎秒400文字のPR-2)がプログラムを読み込むのに(場合によってはデータの保存にも)使われ、操作の容易なカートリッジ型の紙テープも使われた。磁気テープと異なり、紙テープ上のデータは108ワード以下のブロック単位に読み込まれる。カートリッジは複数ブロックを保持でき、最大2500ワードの容量がある(約10Kバイト)。
G-15には出力用にオプションで高速紙テープさん孔装置(PTP-1、毎秒60文字)を装備できるが、標準のさん孔装置は毎秒17文字(毎秒510バイト)の性能であった。
オプションのAN-1(Universal Code Accessory)には35-4 Friden Flexowriter(テレタイプ端末)とHSR-8紙テープ読み取り装置とHSP-8紙テープさん孔装置が含まれる。機械式装置であり、毎秒110文字まで処理することができた。
CA-1(Punched Card Coupler)は2台までの IBM 026 カードパンチ機を接続してパンチカードを毎秒17桁読み取り(毎分12枚)、毎秒11桁(毎分8枚)パンチすることが可能である。もっと高価なCA-2では毎分100枚程度の速度にパンチカードを処理可能であった。
PA-3ペンプロッターは、1インチあたり200インクリメント(ピクセルに相当)で、最大100フィートまでの紙の上で毎秒1インチの速度で描画可能であった。オプションの引き込み可能なペンホルダーを使えば、線をなぞって戻る必要がなくなる。
MTA-2は最大4台の1/2インチ磁気テープ装置を接続でき、テープには最大30万ワード格納できる(ブロック長は108ワード以下)。読み書きの速度は毎秒430桁、双方向検索速度は毎秒2500文字である。
DA-1微分解析機は微分方程式を解くのに使われた。108個の積分器と108個の定数乗算器を持ち、毎秒34回更新される。
ソフトウェア
逐次型メモリのマシンに特有の問題として、記憶媒体の待ち時間の問題がある。命令やデータは必ずしも常に利用可能ではなく、最悪の場合あるアドレスのデータを読み取るのにドラムが一周するのを待たなければならない。この問題への対処方法をベンディックス社は「minimum-access coding; 最小アクセスコーディング」と呼んだ。各命令には次に実行すべき命令のアドレスが付属しており、プログラマは命令が完了したときに読み取りヘッドの位置に来ているアドレスに次の命令を配置することができる。データも同様の手法で分散配置される。このため、コーディング用紙には全アドレスの番号が振ってある表が付属していて、プログラマは命令の配置をその表を使って行った。
アセンブリ言語は、1950年代終盤に最小アクセスコーディングのためのルーチンを含めて登場した。他にもスーパーバイザープログラム、Intercom(UNIVACの Speedcodeに似た浮動小数点インタプリタ)、ALGOL 58 に基づいた代数言語があった。ユーザーは自分でツールを開発し、土木工学者の間ではIntercomの改造版が流通したという。
浮動小数点数はソフトウェアで実装されている。Intercomなどの言語により、浮動小数点数を扱う仮想マシンが容易にプログラムできた。Intercom の命令は数値的に6桁か7桁であり、逐次的に格納された(つまり、最小アクセスコーディングになっていない)。高速性よりも利便性を優先していたのである。Intercom 1000 では倍精度もオプションで扱えた。
G-15の意義
G-15は、インタラクティブな Intercom システムを備えていたことから世界初のパーソナルコンピュータと呼ばれることもある。ただし、LINCやPDP-8のようなミニコンピュータがパーソナルコンピュータの起源とする者もいる。いずれにしても G-15 は低コストで専任操作員が不要であったため、ユーザーはマシンを占有して使用することが多かった。
G-15 は 400台以上製造された。うち 300台はアメリカ合衆国内で使用され、他はオーストラリアやカナダなどの海外に輸出された。主に土木工学関係で使用された。一部のマシンは生き残り、世界中の博物館に収容されている。
ハスキーは最後に生産された金メッキのフロントパネルを装備したG-15を受け取った。
日本への影響
G-15は日本に最初に輸入されたコンピュータでもある。1957年、座席予約システムを検討開始した国鉄鉄道技術研究所に導入され、マルスシステムのアーキテクチャに影響を与えた。また、三菱電機は1958年にG-15を輸入しており、後のコンピュータ開発の基礎となった。
東京理科大学近代科学資料館には G-15 が展示されている。国内で常設展示されている唯一の真空管コンピュータである(部分展示は他にもある)。