UNIVAC I

UNIVAC I (UNIVersal Automatic Computer I、ユニバック・ワン、万能自動計算機の略)は米国で作られたビジネスアプリケーション向けとして世界初の汎用電子デジタルコンピュータ。ENIACの発明者であるジョン・プレスパー・エッカートとジョン・モークリーが中心となって設計した。彼らが設立したエッカート・モークリー・コンピュータ・コーポレーション(EMCC)で開発が開始された。資金不足に陥り、IBMに資金援助を断られ、1950年にレミントンランドが買収して販売にこぎつけた。このマシンは後継機が出るまで単にUNIVACと呼ばれた。
1号機は1951年3月31日に米国国勢調査局が契約し、その年の6月14日に納品された。米国原子力委員会用に製作した5号機は1952年の大統領選挙で結果を予測するためにCBSが使用した。わずか1%のサンプル調査でアイゼンハワーの逆転勝利を的中させたことで有名。
ENIACと比較して真空管の本数は3分の1以下の5200本。メモリには100本の水銀遅延管を使用し、10000本のダイオードを搭載していた。重量7.5トン。入出力装置には初めて磁気テープが搭載された。プログラム内蔵方式で、1秒間に10万回の加算が可能だった。
当時、コンピュータといえばUNIVACと言われるほど普及した。この機械は更にUNIVAC IIとして進化した。UNIVAC IIではメインメモリ（2000ワード）や磁気テープ外部記憶装置のバッファメモリ（60ワード）が磁気コアメモリとなり、磁気テープの記録密度は250ppi（pulse per inch）の倍密度だった。内部レジスタは超音波を結晶中で反射させその遅延時間を利用していた。1ワードは7ビットの12桁で、通常の機械命令語はその半分の6文字で構成していた。日本でも東京電力が第29号機を輸入し昭和36年～昭和43年まで、主に従量電灯計算など大量データ処理に使用された。
現在、スミソニアン博物館に第一号機が展示されている。またミュンヘンのドイッチェ博物館にも本体が展示されている。
歴史.
市場の開拓.
UNIVAC Iは比較的単純な計算とデータ処理を高速に実行するビジネス用途を目的として設計したものとしては米国初のコンピュータで、これまでの科学技術用の複雑な計算を行うコンピュータとは対照的だった。この分野はパンチカード集計機の市場であり、UNIVACはこれと競合する商品であったが、当初UNIVACにはパンチカードの入出力機能がなかった。カードに保存された大量のデータを手作業で入力しなければならず、作業コストの懸念から売り上げは伸びなかった。と、の2つのコンバータをUNIVACが別途発売したことでこの問題は修正された。しかしながらUNIVAC Iの当初の売り上げはレミントンランドの希望よりも低かった。
宣伝のためCBSと提携してUNIVAC Iに1952年大統領選挙の結果を予想させた。事前の世論調査ではアドレー・スティーブンソンが有利とされていたが、UNIVAC Iはアイゼンハワーの逆転勝利を予想した。CBSのスタッフはUNIVACが間違っていると確信しており、UNIVACは使い物にならないと考えていた。開票作業が進むとUNIVACの予想が正しかったことが明らかになり、アナウンサーがUNIVACの能力を評価したことでマシンは有名になった。これによりコンピュータに対する国民の評価が変わり、以降コンピュータによる選挙予想は選挙結果を伝える夜の報道に欠かせないものとなった。
インストール.
当初は国勢調査局、米空軍、米陸軍地図サービスなどの政府機関が顧客だった。エーシーニールセンやプルデンシャル・ファイナンシャルとも契約した。エッカート・モークリー・コンピュータ・コーポレーションがレミントンランドに買収されると、元の販売価格では安すぎて赤字になることが明らかになり、ニールセンとプレデンシャルにキャンセルを頼まなければならなくなった。
国勢調査局に販売した初号機は1951年3月31日にフィラデルフィアの3747リッジアベニューにあるエッカートモークリー部門の工場で落成式を公式に開催した。マシンは非常に繊細で壊れやすく、解体・輸送・再組み立ての困難が懸念されたことから、デモのためだけに暫定版を組み立てた物であり、完成版であるべき製品は実際には翌年の12月までインストールされなかった。この結果1952年6月に国防総省に納入された2号機の方が最初にインストールされることになった。
UNIVACのインストール 1951-1954年
UNIVAC Iの販売価格は当初15万9000ドルで、2～3台目が25万ドル。125万ドルから150万ドルになるまで値上げされた。最終的に46台が製造されて納品された。
UNIVAC Iは大学にはかなり高額で、IBMのような企業は大学にマシンを寄贈していたが、スペリー・ランドにはマシンを寄贈する経済的な余裕がなかった。それでもスペリー・ランドはUNIVAC Iシステムを1956年にハーバード大学へ、1957年にペンシルベニア大学へ、1957年にオハイオ州クリーブランドのケース産業大学に寄贈した。ケース産業大学のUNIVAC Iは1965年もまだ現役で稼働していたが、UNIVAC 1107に交換された。
技術の進歩により時代遅れになった後も一部のUNIVAC Iは長い間使われた。国勢調査局は1963年までに2台を所有しており、1台目は12年間、2台目は9年間稼働した。スペリー・ランド自身も1968年までにニューヨーク州バッファローに2台を所有していた。保険会社のライフ&カジュアルティ・オブ・テネシーは1970年まで13年以上使用した。
技術詳細.
ハードの主な特徴.
UNIVAC Iは約5,000本の真空管を搭載し、重量は16,686ポンド(7.5トン)、消費電力125kWで、2.25MHzのクロックで動作し1秒あたり約1,905個の命令を実行できた。プロセッサとメモリユニットを搭載したセントラルコンプレックスの部分だけで4.3m x 2.4m x 2.6mの大きさがあった。システム全体では35.5m²（382 ft²）の設置面積を必要とした。
メインメモリ.
メインメモリは12文字の1000ワード。数字は11桁の10進数で、これに正負の記号がついた。10ワードの水銀遅延メモリを100チャンネル組み合わせて1000ワードを実現していた。入出力バッファはそれぞれ60ワードで、10ワードの水銀遅延メモリを12チャンネル組み合わせていた。スペアとして10ワードの水銀遅延メモリが10チャンネルあった。アップグレード版ではさらに追加された7チャンネルで7本の水銀タンクの温度を制御し、さらにもう1チャンネルが10ワードのYレジスタとして用いられた。合計で126チャンネルの水銀遅延メモリがあり、7つの水銀タンクがMT、MV、MX、NT、NV、NX、GVの背面に装備された。各水銀タンクは18本の水銀チャンネルに接続された。
10ワードの水銀遅延ラインチャンネルは次の3つのセクションで構成される。
命令とデータ.
命令セットは6桁の英数字で、1ワードに2つの命令が含まれる。加算は525 µs、乗算は2150µsで処理される。オーバードライブと呼ばれる非公式の改造により条件付きながら4桁の命令を1ワードに3つ詰め込むことが可能だった(後述するIngermanのUNIVACシミュレータもこの改造に対応している)。
数字は内部的にXS3(3増し符号)によるBCD2進化10進数で、1桁は6ビットあり、英数字コードの数字がそのまま使用され、エラーチェック用に1ビットのパリティビットがあり、11桁の符号付き整数を扱えた。1～2個の例外的な命令を除いてマシン語には2進数を用いず、文字のバイナリは2進数表現であったものの、プログラマとしてはUNIVACは10進数機だった。数値演算中に数字以外の文字がデータ中に現れた場合、マシンはその文字をそのままスルーして出力し、キャリーフラグの値はその時点でリセットされて失われた。なおUNIVAC Iの加減算回路は、無視記号を-3、スペース( )を-2、マイナス記号(codice_1)を-1、アポストロフィ(codice_2)を10、アンパサンド(codice_3)を11、左括弧(codice_4)を12の数値として扱うことがあった。
入出力.
オペレータ・コンソールの他には、最大10台のUNISERVOテープドライブ、レミントンランドの電子タイプライター、テクトロニクスのオシロスコープだけがUNIVAC Iに接続できた。UNISERVOは市販品としては世界初のコンピュータ用テープドライブだった。1インチに128ビットのデータ密度で(実測転送速度は秒間7200文字)、磁性メッキ加工を施したリン青銅テープだった。UNISERVOはまたUNITYPERが出力した1インチ20ビットのテープを読み書きすることもできた。UNITYPERはタイプライターからテープに出力する独立した装置で、プログラミングや簡単なデータ編集に用いられた。UNIVACはテープの正方向と逆方向の読み書きが可能で、CPUの命令と完全に対応しており、ソートやマージなどのデータ処理を非常に高速に行えた。パンチカードからテープに変換する独立した装置で作ったテープからデータを大量に入力し、結果を別のテープへ出力し、別の独立した装置でテープのデータをプリンタに印刷した。オペレータコンソールには10進コードのスイッチが3列あり、搭載された1000ワードのメモリから好きなデータを選んでオシロスコープに表示できた。水銀遅延メモリはデータを2進数の列で記憶しており、かなりの忍耐力は求められるが、プログラマやオペレータは好きなメモリの値をスコープに継続して表示させることができ、その内容を読み取ることが可能だった。コンピュータに接続したタイプライターにより、プログラムのブレークポイントの設定、チェックポイントの設定、メモリダンプの設定などに通常は使われた。
運用の流れ.
UNIVAC Iには通常は複数の周辺機器を併用した。一般的には、磁気テープを読んで連続用紙に印刷するプリンター、パンチカードを読んでイメージデータを磁気テープに書き込むカード・テープコンバータ、磁気テープを読んでパンチカードの束を生成するテープ・カードコンバータなどが使われた。UNIVACにはオペレーティングシステムは付属していなかった。オペレータがUNISERVOにテープをセットするとプロセッサの回路が自動的にこれをロードした。入力データと出力データのテープを適当に設定してプログラムを実行した。出力されたデータは外部のプリンタに渡される。または次のデータ処理の入力として使われる一時データとなり、カード・テープコンバータが出力した別のデータに従って更新される。水銀遅延メモリは、水銀の温度によって音速にばらつきが生じるため、水銀タンクの温度が非常に厳密に管理されていた。停電が発生すると温度が安定するまで数時間かかることがあった。
信頼性.
エッカートとモークリーはデジタル論理回路の信頼性について確信を持っておらず、当時は得られる情報も限られていた。UNIVAC Iは計算回路を並列で接続して結果を比較する設計だった。実際には設計した回路の信頼性は高く、故障した部分だけがエラーを生じた。真空管の信頼性を管理するために対策が講じられていた。主力の真空管である25L6は機械に組み付ける前に大量に熱を加えて慎重にテストした。製造された真空管の半分が破棄されることはよくあることだった。技術者はテストに合格した加熱済みの真空管を、メモリ再循環アンプなど、故障を簡単に確認できる場所に設置した。ある程度の使用に耐えた成熟したゴールデン真空管を確保しておき、故障の確認が困難な場所で用いられた。突入電流や熱による真空管へのストレスを低減するため、全ての真空管のフィラメントに電力が行き渡るまで、約30分かけてコンピュータを起動した。これにより数日から数週間の連続稼働時間(MTBF)を達成した。UNISERVOにはリールからキャプスタンまでの間にテープの張力を保つのに真空カラムではなくバネと糸を用いていた。これらはよくあるエラーの原因だった。