アイビーエム650 | 1954

 



IBM 650マグネティックドラムデータ処理機は、1950年代中頃にIBMによって製造された初期のデジタルコンピュータです。これは世界初の大量生産されたコンピュータであり、約2,000台が生産され、最後の1台は1962年に完成しました。また、最初のコンピュータとして意味のある利益を上げた機種でもあります。最初の650は1954年12月に設置され、1950年代で最も人気のあるコンピュータとなりました。

650は、科学やビジネス目的のIBM 701やIBM 702コンピュータに対して、遅くて安価な代替品としてビジネス、科学、エンジニアリングのユーザーに提供されました。また、IBM 604のような計算用パンチカード機からコンピュータに移行するユーザーにもマーケティングされました。

比較的低コストでプログラミングが容易だったため、650は潜水艦の乗員パフォーマンスのモデリングから、高校や大学の学生のプログラミング教育まで、さまざまなアプリケーションの先駆けとして使用されました。IBM 650は大学で非常に人気があり、学生たちはここでプログラミングを学びました。

650は1953年に発表され、1956年には最大4つのディスクストレージユニットを追加したIBM 650 RAMACとして強化されました。1959年の裸のIBM 650コンソールの購入価格は150,000ドルで、2023年の価値に換算すると約1,500,000ドルに相当します。650およびそのコンポーネントユニットへのサポートは1969年に終了しました。

650は二アドレスのバイキュイニャリコーディング十進コンピュータで(データとアドレスは十進法)、メモリは回転するマグネティックドラムにありました。文字サポートは、入出力ユニットがパンチカードのアルファベットおよび特殊文字エンコーディングを二桁の十進コードに変換することによって提供されました。

650は125 kHzのクロック周波数で動作し、加算や減算は1.63ミリ秒、乗算は12.96ミリ秒、除算は16.90ミリ秒で実行できました。650の平均速度は、1命令あたり約27.6ミリ秒、つまり約40命令/秒と推定されました。

ドナルド・クヌースの著書『コンピュータプログラミングの芸術』シリーズは、650に捧げられています。

歴史
最初の650は1954年12月8日にボストンのジョン・ハンコック相互生命保険会社の管理部門に設置されました。

IBM 7070(10桁の符号付き十進単語、1958年発表)は、「650および[IBM] 705の共通後継機」となることが期待されていました。IBM 1620(可変長十進、1959年導入)は市場の下位をターゲットにしました。UNIVACソリッドステート(2アドレスコンピュータ、符号付き10桁の十進単語)は、1958年12月にスぺリー・ランドから発表され、650に対抗しました。これらのいずれも650との互換性を持つ命令セットはありませんでした。

ハードウェア
基本的な650システムは3つのユニットから構成されていました:

  • IBM 650コンソールユニット:マグネティックドラムストレージ、真空管を用いた算術装置、オペレーターのコンソールを収容。
  • IBM 655パワーユニット
  • IBM 533またはIBM 537カードリードパンチユニット:IBM 533は読み取りとパンチ用のフィードが分かれており、IBM 537は1つのフィードを持ち、同じカードに読み取りとパンチが可能。

重さは5,400~6,263ポンド(約2.7~3.1トン)でした。

オプションユニット

  • IBM 46テープからカードパンチ、モデル3
  • IBM 47テープからカード印刷パンチ、モデル3
  • IBM 355ディスクストレージユニット:ディスクユニットを持つシステムはIBM 650 RAMACデータ処理システムと呼ばれました。
  • IBM 407会計機
  • IBM 543カードリーダーユニット
  • IBM 544カードパンチユニット
  • IBM 652制御ユニット(マグネティックテープ、ディスク)
  • IBM 653ストレージユニット(マグネティックテープ、ディスク、コアストレージ、インデックスレジスタ、浮動小数点演算)
  • IBM 654補助アルファベティックユニット
  • IBM 727マグネティックテープユニット
  • IBM 838照会ステーション

メインメモリ
回転ドラムメモリは、1,000、2,000、または4,000ワードのメモリを提供し、アドレスは0000から0999、1999、または3999まででした。各ワードは10のバイキュイニャリコーディング十進数字を持ち、符号付き10桁の数または5文字を表します(バイキュイニャリコーディングの数字を7ビットと考えると、4000ワードは約35キロバイトに相当します)。ドラム上のワードは、ドラム周囲のバンドに整理され、各バンドには50ワードがあり、20、40、または80バンドがそれぞれのモデルに対応しています。ドラムの回転中に読み書きヘッドの下を通過する際にワードがアクセスされます(回転速度は12,500 rpm、非最適化の平均アクセス時間は2.5 ms)。このタイミングのため、各命令の第二アドレスは次の命令のアドレスでした。プログラムは、前の命令の実行が完了したときに即座にアクセス可能なアドレスに命令を配置することで最適化できました。IBMは、プログラマーが命令とデータの配置を追跡できるように、10列と200行のフォームを提供しました。その後、粗い最適化を行うアセンブラSOAP(Symbolic Optimal Assembly Program)が提供されました。

LGP-30、ベンディックスG-15およびIBM 305 RAMACコンピュータも真空管とドラムメモリを使用しましたが、IBM 650とは大きく異なります。

ドラムから読み込まれた命令はプログラムレジスタに送られ(現在の用語では命令レジスタ)、ドラムから読み込まれたデータは10桁のディストリビュータを通過します。650には20桁のアキュムレーターがあり、10桁の下部と上部のアキュムレーターに共通の符号がありました。算術演算は1桁の加算器で行われ、コンソール(10桁のスイッチ、1つの符号スイッチ、10のバイキュイニャリ表示灯)、ディストリビュータ、下部および上部アキュムレーターはすべてアドレス指定可能でした。

IBM 653ストレージユニット
オプションのIBM 653ストレージユニットは、1955年5月3日に導入され、最終的に5つの機能を提供しました:

  • マグネティックテープコントローラー(IBM 727マグネティックテープユニット用)(10の追加操作コード)
  • ディスクストレージコントローラー(1956年のIBM 355ディスクストレージユニット用の新機能)(5の追加操作コード)
  • アドレス9000から9059の60ワードのマグネティックコアメモリ。この小型高速メモリは、アクセス時間が96μsで、回転ドラムに対して26倍の改善がありました。この機能は5つの操作コードを追加し、テープおよびディスクI/Oのバッファとして必要でした。60ワードは、プログラムが内部ループやテーブルルックアップを高速化するために使用することもできました。
  • 3つの4桁のインデックスレジスタ(アドレス8005から8007);ドラムアドレスは2000、4000、6000を加えることによってインデックス付けされ、コアアドレスは0200、0400または0600を加えることによってインデックス付けされました。システムに4000ワードのドラムがある場合、インデックス付けは、インデックスレジスタAの最初のアドレスに4000を加え、インデックスレジスタBの2番目のアドレスに4000を加え、インデックスレジスタCの2つのアドレスにそれぞれ4000を加えることで行われました(4000ワードシステムのインデックス付けは最初のアドレスのみに適用されました)。4000ワードシステムは、ドラムメモリ用のトランジスタ化された読み書き回路を必要とし、1963年以前に利用可能でした(18の追加操作コード)。
  • 浮動小数点 – 算術命令は、8桁の仮数と2桁の特性(オフセット指数)をサポートしました – MMMMMMMMCC、±0.00000001E-50から±0.99999999E+49の範囲を提供します(7の追加操作コード)。

命令セット
650の命令は、2桁の操作コード、4桁のデータアドレス、および4桁の次の命令のアドレスから構成されていました。基本的なマシンでは符号は無視されましたが、オプション機能を持つマシンでは使用されました。ベースマシンには44の操作コードがあり、オプションとして浮動小数点、コアストレージ、インデックスレジスタ、追加のI/Oデバイスのための追加の操作コードが提供されました。すべてのオプションがインストールされると、97の操作コードが存在しました。

テーブルルックアップ(TLU)命令は、参照された10桁のワードを同じドラムバンドの48の連続ワードと高等価比較し、次のバンドに切り替えることができました。この機能は、1963年における1,000倍速いバイナリーマシンに対して約3分の1の速度(IBM 7040の1,500マイクロ秒に対して650では5,000マイクロ秒)で46エントリをルックアップすることができました。オプションのテーブルルックアップイコール命令も、同様の性能を持っていました。

読み込み(RD)命令は、数値データの80カラムカードを10のメモリワードに読み込みます。数字の分配はカードリーダーの制御パネルの配線によって決定されました。533リーダーパンチユニットのアルファベティックデバイスを使用する場合、数値カラムとアルファベットカラムの組み合わせ(最大30のアルファベットカラム)を読み込むことができました。拡張機能により、より多くのアルファベットカラムを読み込むことが可能でしたが、10ワード(ワードごとに5文字)しかドラムに保存されないため、確実に50を超えることはできませんでした。

이 블로그의 인기 게시물

콜러서스 컴퓨터 [Colossus computer | December 1943]

NTDS [Naval Tactical Data System | 1961]

에니악 [ENIAC | December 10, 1945]