Gamma 3 の内部図。左側に電源、右側に電子回路の引き出しが示されています。 | |
| 開発者 | カンパニー・デ・マシーンズ・ブル |
|---|---|
| 製品ファミリー | コンピューター |
| タイプ | プログラム可能な電子計算機(ガンマ 3、1952 年)、その後プログラム内蔵型計算機(ガンマ 3 AET および ET、1955 年) |
| 世代 | 1位 |
| 発売日 | 1952 |
| 製造中止 | 1962 |
| 販売数 | 1200以上 |
| CPU | 真空管とゲルマニウム ダイオードの引き出しがバックプレーンに差し込まれています。48 ビット、ビット シリアル プロセッサ @ 281 kHz |
| メモリ | 遅延ライン テクノロジを使用した 7 つのレジスタ (それぞれ 48 ビットまたは 12 BCD 文字)。ドラム メモリ (8192 または 16,384 ワード、49 ~ 98 kB) と 64 または 128 ワードの中間メモリ。 |
| 力 | 3kW、3x 220V入力から供給 |
| 寸法 | 155 cm x 150 cm x 68 cm |
| 質量 | 900キロ |
| 後継 | ガンマ 10 (ローエンド)、ガンマ 30 (ミッドエンド)、ガンマ 60 (ハイエンド) |
Gamma 3 は初期の電子真空管コンピュータです。フランスのパリにあるCompagnie des Machines Bull社によって設計され、1952 年にリリースされました。
もともとはIBM 604に似た電気機械式タビュレーティングマシン用の電子アクセラレータとして設計されたが、徐々に新機能が追加され、第1世代のプログラム内蔵型コンピュータ(Gamma AET、1955年、その後ET、1957年)へと進化した。[1] [2]プログラム内蔵型構成では、Gamma 3は主にIBM 650と競合した。
このマシンは10年間の販売期間を通じて、電気機械式記録装置からコンピュータへの移行を促進した。Gamma 3は商業的に成功し、最終的に1200台以上が販売され、IBMは競合製品として1401を発売した。[3] [4]
Gamma 3 の後継として、ローエンドの Gamma 10、ミッドレンジの Gamma 30、大型のハイエンドのGamma 60メインフレームが登場しました。
歴史
1950 年代まで、Compagnie des Machines Bull 社はライバルの IBM と同様に、主に在庫管理、給与計算、会計用の パンチカード集計機を販売していました。
これらのタビュレータは、電気機械装置によって駆動される一連の数字ホイールを介して算術演算を実行しました。増分、つまり加算のみがサポートされていたため、減算と乗算は特に遅くなりました。[5]
計算速度を上げ、より複雑な操作中にパンチカードの読み取りが遅れないようにするためには、電気機械的な限界を克服できるアクセラレータが必要不可欠となった。[5]
1949年以降、ブル社は車輪や電気機械式リレーを追加するよりもスイッチング速度が速い真空管に興味を持ち始めた。コンピュータは、真空管への依存をさらに減らすために、約400本の真空管、8000個のゲルマニウムダイオード、電気遅延線で作られた48ビットレジスタで構成される論理回路を使用して設計された。[6] [7]
このマシンのクロック速度は 281 kHz で[8] 、 IBM 604 の 50 kHz よりも高く、さらに重要なことに、電気機械式デバイスよりも数桁高速です。2 つの数値を加算する実行時間は 680 μs、乗算には 5.7ms かかりました。命令の実行時間は 0.6 ms から 10 ms まで変化し、平均時間は 2 ms でした。[8] [9] Gamma 3 は、接続パネル (プログラム命令がコード化されている場所) の代わりに差し込まれたケーブルを介してタブレーターに接続されました。つまり、プログラムはタブレーターではなく Gamma 3 コンピューター上に常駐して実行されるようになりました。[2]
しかしながら、ガンマ3はタブレーターと同様の取り外し可能な接続パネルを介してプログラム可能であったが、タブレーターの周辺機器であり、その逆ではなかった。さらに、電子式でバイナリであり、チューリング完全な命令セットを備えているにもかかわらず、ガンマ3にはプログラムをメモリに保存する機能がまだなかった。[6]

プログラム格納構成への第一歩は、カードプログラム(Programme Par Carte、PPC)によって実現され、接続パネルにハードワイヤードではなくパンチカードからロードされたプログラムを実行する機能が導入されました。[6] IBMはまた、604に追加されたCPC(カードプログラム計算機)拡張機能で同様の概念を試しました。[10]しかし、これにより64プログラミングステップの制限がなくなり、任意のサイズのプログラムを実行できるようになりますが、プログラムは依然としてメインメモリで実行されなかったため、実行速度はプログラムを含むパンチカードの読み取り速度に依存していました。
1955年にコンピュータは磁気ドラムの搭載という新たなアップグレードを受け、8192ワードのメモリが追加されました。これは49KB(48ビットの16ワードの8ブロックの64トラック)に相当し、[11] [12]当時としてはかなり大容量でした。ドラムにはワードごとに最大3つの命令を保存でき、最大25,000の命令を収容できました。[7]この新しいバージョンはGamma 3 AET(Armoire Extension Tambour、またはDrum Extension Cabinet)と呼ばれていました。
プログラムは、AET のメモリに 48 個の命令のグループ (「シリーズ」と呼ばれる) として保存されました。必要に応じて、シリーズはドラムから命令キャッシュとして機能する中間メモリ グループに移動され、コンピューターは各命令を 1 つずつ取得して命令レジスタに転送できました。興味深いことに、命令、特にアドレスは、他のデータと同様に、コンピューターの演算ユニット内で変更できました。この機能により、間接アドレス指定またはインデックス アドレス指定が可能になりました。[7]また、命令キャッシュにより、IBM 650 で見つかった問題も軽減されました。この問題では、ドラム上の命令の配置を最適化して、遅延によるプログラムの速度低下を防ぐ必要がありました。[13]
最後のアップグレードとして、1957年に磁気ドラムの高さが2倍になり、16,384ワード(98kB)または50,000命令に達し、オシロスコープCRTディスプレイとメモリを調べたりコードをシングルステップ実行したりするための押しボタンを備えたスタンドアロンのオペレータコンソールが組み込まれました。[14]この新しい構成は、Extension Tambourの略であるGamma 3 ETと呼ばれました。

プログラムをメモリにロードして実行する機能を備えたAETおよびET構成のGamma 3は、フランス初の商用プログラム格納式コンピュータとなった(SEAは以前にもプログラム格納式コンピュータを製造していた)。[1]タブレータは入出力デバイスとして機能するようになり、Gamma 3はフォン・ノイマン・アーキテクチャを備えた中央処理装置となった。[15]徐々に、電気機械式ユニット記録装置は電子コンピュータに取って代わられた。[16] Gamma 3 ETは、非常によく似た設計のIBM 650コンピュータの競合製品としての地位を確立した。[1] [3]
ガンマ3を受け取った最初の顧客は、1953年3月のサンテティエンヌのクレディ・リヨネでした。 [8]その後、ガンマ3と3ETは、大企業内のビジネスデータ処理と、当時台頭しつつあったCERNやCNRS [1] [17]やエア・リキードなどの科学計算の両方に使用されました。[18]
ブル社はレミントンランド・ユニバック社と提携し、60Hz電源のカスタムバージョンを製造していたにもかかわらず、アメリカでガンマ3を販売することはなかった。 [7]
ガンマ3はヨーロッパで商業的に成功し、約1200台が販売され、IBM 650を上回りました。[3]拡張されたガンマ3は競合製品に比べて非常に有利でした。メモリスペースは4倍大きく、メモリに12倍の命令を保存でき、処理速度も全体的に高速でした。[7]この成功を受けて、IBMは1401を設計しました。[3] [19]
記憶の組織化
Gamma 3 は 3 種類のメモリを実装しており、それらはすべて 48 ビット ワードまたは 12 個の BCD 文字に基づいています。
最初の種類は、CPUの心臓部にある7つのレジスタのグループです。M1は演算子メモリとも呼ばれ、アキュムレータで、加減算器が接続されています。M2は、倍精度の96ビット演算用の補助アキュムレータです。M3からM7は、共通メモリ( Mémoires Banales )と呼ばれる汎用レジスタです。これらの間の転送はM1を経由します。M0はM1にリンクされた特別なレジスタで、プログラマーは使用できません。[20]

これらの汎用レジスタに加えて、Gamma 3 は次の 6 つの内部レジスタも使用します。
- MC : 比較メモリ。このレジスタは比較命令の結果を保持します。
- MD : シフトメモリ。このシフトレジスタは、 BCD 演算と算術演算の両方に使用されます。
- MS1 : 符号メモリ。現在の算術符号を格納します。MC、MD、および MS1 はすべてアキュムレータにリンクされており、演算子メモリの一部です。
- NL : 行番号。現在はプログラム カウンターと呼ばれています。
- RNL1 / RNL2 :スタックレジスタ として機能する行番号レジスタ。
故障の原因となる電子管の数を減らすために、レジスタ(共通メモリ)にはフリップフロップの代わりに電気遅延線が使用されています。 [21]
2 番目のタイプのメモリは循環メモリと呼ばれ、バッファとして機能します。その内容はドラム メモリとの間で交換されるようになっています。循環メモリはM8からM15で示され、別の専用キャビネット (ET) 内の磁気制限遅延線を使用して実装されます。これらの 8 つのメモリはペアでグループ化され、4 つの「グループ」を形成します。グループ 0、1、2 は実行可能で「シリーズ」と呼ばれ、各シリーズは 48 個の命令を保持する命令キャッシュとして機能します。プラグボードは、使用される場合、シリーズ 3 を構成します。これは、後にワイヤード サブルーチンとして出荷される特定の拡張機能に使用されます。
グループ 3 は I/O バッファとして機能します。"Ordonnateur" (ORD) メモリ キャビネットを追加して、さらに 4 つのグループ (4 ~ 7) を追加することもできます。各グループには実行可能ではないデータが保持されます。
最後に、ドラム メモリは、コードとデータの両方をホストし、パンチ カードから供給される大きなスワッピング デバイスとして機能します。Gamma 3 では、コードはドラムからではなく、循環メモリの最初の 3 つのグループから実行されます。これにより実行速度は向上しますが、専用の命令 (「TB」) を使用してページを最初にドラムから MC メモリにスワップする必要があるため、ファー ジャンプのコストも高くなります。
ドラムは長さ15cmまたは30cmのジュラルミン製シリンダーで構成され、約2,750rpmで回転します。8ブロックの64または128トラックがあり、各ブロックにはグループが含まれているため、ドラムには最大1024シリーズ、つまり49,152の命令を保存できます。[21]記録密度は位相変調を使用して300ビット/インチに近づき、当時の記録でした。[22]
命令セット

Gamma 3命令は、オペレーションコード(TO、Type d'Opération)、アドレス(AD)、開始順序(OD、Ordre Début)、終了順序(OF、Ordre Fin )の4つの16進数で構成される16ビットワードで構成されています。TOフィールドは一般的な命令タイプを指定し、他の3つのフィールドはパラメータとして機能します。[20] ODとOFは位置を設定します。これは、バイナリモードでは数字、BCDモードでは文字になります。命令セットには合計29のニーモニックが用意されています。

当時はオートコーダと呼ばれるアセンブラも、 まだ発明されていなかったFortranのような高級言語も提供されていませんでした。代わりに、プログラマーは最初にプログラムのフローグラフを作成し、ニーモニックでそれを完成させ、テーブルを使用してニーモニックを手動でマシンコードに変換し、その結果のコードをコーディングシートに書き留めて確認してからカードにパンチしました。プログラムをドラムメモリにロードした後、プログラマーはオペレーターパネルを使用してメモリ内のデータを調べて保存し、デバッグのためにプログラムフローを制御できました。[14]
命令はETキャビネットの循環メモリにホストされた一連の形で存在し、コードはプロセッサ(ガンマ3キャビネット)によってフェッチされ、デコードされます。短いプログラムはプラグボードに配線できますが、最も一般的にはカードにパンチされ、ドラムメモリに送られ、保存されたプログラムとして実行されます。[12]
次の表は、命令とそのニーモニックおよび関連するマシン コードについて説明します。
プラグボードがシリーズ3にマッピングされたため、いくつかの拡張機能とサブルーチンは、最終的に事前配線されたプラグボードプログラムとして出荷されるようになりました。その一例は、「PDF」拡張機能(Point Decimal Flottant、またはFloating Point Decimal)で、浮動小数点数の使用を容易にするためにBDとDCCという2つの追加命令が追加されました。[23]
命令セットの完全な説明とプログラミング例は、1950年代のいくつかのプログラミングコースで今でも見つけることができます。[24] [12]
Gamma 3の後期には、リール大学のピエール・バッカス教授率いる学生チームによって高級言語が実装された。この言語、Auto-Programmation Bull (APB) は、Gamma 3アセンブリ言語の要素と、後にALGOL 60となる構造化要素を組み合わせたものだった。[25]この言語は最終的にGamma 3ユーザーグループでかなり人気を博し、後にIBM 1620に移植された。[25]
歴史的および技術的な特徴
Gamma 3はデュアルモードALUを備えており、ビジネスデータ処理用の10進モード(12文字のBCDワード)と産業および科学計算用の2進モード(48ビットワード)の両方で動作できます。CDとCBという専用命令により、2つのモードを切り替えることができます。[9]
1950年代には珍しい機能として、ガンマ3にはオプションでハードワイヤード浮動小数点ライブラリが搭載されていました。ガンマ3Mとして知られるこのモデルは科学計算を目的としていました。[9]最終的に、この機能はガンマ3ETに組み込まれました。
浮動小数点数は48ビットで表されます。最初のビットは符号に使用され、次の8ビットは指数に使用され、次の39ビットは仮数部(一般に仮数とも呼ばれる)に使用されます。[21]
1950年代後半、ルイ・ボリエ教授はフランスで初めてガンマ3 ETマシンを使った大学プログラミングコースを実施し、メーカー提供のコースから学術的な枠組みへの移行を示しました。これらのコースは現在オンラインで利用可能であり、ガンマ3シミュレーターの開発に役立っています。[24]
ガンマ3は1000台以上生産された最初のコンピュータでした。[26]
保存
ガンマ3は現在でも4台存在しています。1台はフランクフルト近郊のテクニクム博物館に展示されています。[27]もう1台は製造元であるフランスのアンジェにあるブル軍団に展示されています。 [28]もう1台はイタリアのピサにある計算機器具博物館に展示されています。[29]最後に、フランスのグルノーブルにあるACONIT博物館には、ガンマ3 ETのユニークな標本が収蔵されています。[11]
ギャラリー
-
CPUキャビネットの別のビュー
-
CPUラックの詳細
-
ブル・ガンマ3の内部
-
ガンマ3真空管電子回路のクローズアップ図
-
メモリ拡張キャビネット
-
ガンマ 3 プラグ ボード。保存されたプログラム構成では、代わりにパンチ カードからプログラムがロードされます。
-
電源
参照
参考文献
- ^ abcd 「Compagnie des Machines Bullがフランスで販売用に生産された最初のプログラム内蔵型コンピュータ、Gamma ETを発売:History of Information」www.historyofinformation.com 。 2023年7月25日閲覧。
- ^ ab "Gamma 3". www.feb-patrimoine.com . 2023年7月23日閲覧。
- ^ abcd 「1401の建築とデザインの起源」ibm-1401.info . 2023年7月23日閲覧。
- ^ Bashe, Charles J. (1986). IBM の初期のコンピュータ. MIT 出版局. pp. 461, chap.12. ISBN 9780262523936。
- ^ ab "tabulatrice BS120 Bull, chr3inf2". www.histoireinform.com . 2023年7月22日閲覧。
- ^ abc 「Compagnie des machines Bull」。www.feb-patrimoine.com 。 2023年7月22日閲覧。
- ^ abcde ルクレール、ブルーノ。 「Bull Gamma 3 ET - 計算を調整する」。www.feb-patrimoine.com 。2023 年 7 月 25 日に取得。
- ^ abc 「Compagnie des machines Bull」。www.feb-patrimoine.com 。 2023年7月22日閲覧。
- ^ abc ギュヨ、アラン (2022). 「ガンマ算術 3」(PDF)。ACONIT(フランス語)。
- ^ 「IBM アーカイブ: カードプログラム電卓」www.ibm.com 2003-01-23 2023-07-22閲覧。
- ^ ab "DBAconit V26.3". db.aconit.org . 2023年7月22日閲覧。
- ^ abc シャブロル、ジャン (1959)。クール ET-ORD (PDF) (フランス語)。
- ^ 「IBM 650」www.columbia.edu . 2023年7月26日閲覧。
- ^ ab 「オペレータコンソール、中央処理装置、ドラムメモリ、および集計機を備えた完全な Gamma ET の写真」。Federation des Equipes Bull。1957年。
- ^ ベレック、ジャン。 La mécanographie (PDF) (フランス語)。国立芸術メティエセンター (CNAM)。 13 ページ (12.1 章)。
- ^ “情報博物館 | ガンマ 3 ET”. aconit.inria.fr 。2023 年 7 月 22 日に取得。
- ^ “科学と技術の目標: L'aventure du Gamma 3 (5/10 - année 2018)”. www.echosciences-grenoble.fr 。2023 年 7 月 22 日に取得。
- ^ 「低温プラントの設計における電子デジタルコンピュータの応用」 。 2023年12月19日閲覧。
- ^ 「Information Technology Industry TimeLine」www.feb-patrimoine.com . 2023年7月22日閲覧。
- ^ ab Ponsard, Christophe (2023). エミュレーションによるBull GAMMA 3第一世代コンピューターの理解(PDF) . FOSDEM 23.
- ^ abc Baumann, Arnaud. ドキュメンテーション拡張 Bull-Gamma 3 (PDF) . IMAG. pp. chap. 5.1.
- ^ Leclerc, Bruno (1990 年 1 月)。「ガンマ 2 からガンマ ET へ: Bull における電子計算の誕生」。Annals of the History of Computing。12 (1): 5–22。doi : 10.1109 /MAHC.1990.10010。ISSN 0164-1239 。保存された信号は、自己同期型の
位相変調モードでした。ビット密度は 300 ビット/インチに近く、当時の最新技術を 50% 以上上回っていました。
- ^ Bull、Compagnie des machine (1952)。 「CNUM - M14926 : ガンマ 3、電子計算機」。CNAM-MUSEE CM0.4-BUL 。2023-08-06に取得。
- ^ ボリエット、ルイ。 「プログラム ガンマ ET コース」(PDF)。グルノーブル大学 - 数学アップリケ(フランス語)。
- ^ ab Mounier-Kuhn, Pierre (2014). 「フランスにおける Algol: ユニバーサル プロジェクトから組み込み文化へ」. IEEE Annals of the History of Computing . 36 (4): 6–25. doi :10.1109/MAHC.2014.50. ISSN 1058-6180.
- ^ Leclerc, Bruno (1990 年 1 月)。「ガンマ 2 からガンマ ETまで: Bull における電子計算の誕生」。Annals of the History of Computing。12 (1): 5–22。doi : 10.1109 /MAHC.1990.10010。ISSN 0164-1239 。
- ^ 「第一世代の真空管計算機:BULL GAMMA 3 - technikum29」。www.technikum29.de 。 2023年7月22日閲覧。
- ^ オクガール (2016-04-30). 「アンジェ、ドピュイ 56 アン、ブル ピオニエ アン エレクトロニーク !」。Des Mauges en Anjou ... (フランス語) 。2023 年 7 月 22 日に取得。
- ^ “MUSEO DEGLI STRUMENTI PER IL CALCOLO - I Grandi Calcolatori: Gamma 3 BULL”. www.fondazionegalileogalilei.it 。2023-07-30に取得。
外部リンク
- 技術仕様と指示セット
- ガンマ3の3D視覚化
- プラグボードプログラミングシミュレーター
- オンラインガンマ3 ETシミュレーター
- FOSDEM: エミュレーションによる Bull GAMMA 3 第一世代コンピューターの理解
- ACONIT ウェブサイトの Gamma 3 の説明
- ガンマ 3、Fédération des Équipes Bull の説明
- Technikum ウェブサイトの Bull Gamma 3
