stringtranslate.com

Булл Гамма 3

Gamma 3 был ранним электронным ламповым компьютером . Он был разработан компанией Compagnie des Machines Bull в Париже , Франция, и выпущен в 1952 году.

Первоначально разработанный как электронный ускоритель для электромеханических табуляторных машин , аналогичный IBM 604 , он постепенно совершенствовался новыми функциями и превратился в компьютер первого поколения с хранимой программой (Gamma AET, 1955, затем ET, 1957). [1] [2] В своих конфигурациях с хранимой программой Gamma 3 в основном конкурировал с IBM 650 .

В течение десяти лет своей доступности эта машина способствовала переходу от электромеханического оборудования для записи единиц к компьютерам. Gamma 3 имела коммерческий успех, в конечном итоге было продано более 1200 единиц и побудило IBM выпустить 1401 в качестве конкурента. [3] [4]

На смену Gamma 3 пришли Gamma 10 более низкого класса, Gamma 30 среднего класса и большой высокопроизводительный мэйнфрейм Gamma 60 .

История

До 1950-х годов компания Compagnie des Machines Bull, как и ее конкурент IBM, в основном занималась продажей перфокарточных табуляторов для управления запасами, расчета заработной платы и бухгалтерского учета.

Эти табуляторы выполняли арифметические операции посредством серии цифровых колес, приводимых в движение электромеханическим устройством. Поддерживалось только приращение, а значит, и сложение, что делало вычитание и умножение особенно медленными. [5]

Для увеличения скорости вычислений и избежания задержек считывания перфокарт при более сложных операциях потребовался ускоритель, способный преодолеть электромеханические ограничения. [5]

Начиная с 1949 года компания Bull Company заинтересовалась электронными лампами из- за их скорости переключения по сравнению с добавлением колес и электромеханических реле . Компьютер был разработан с использованием логических схем, включающих около 400 электронных ламп, 8000 германиевых диодов и 48-битных регистров, сделанных из электрических линий задержки, чтобы еще больше снизить зависимость от электронных ламп. [6] [7]

Машина имеет тактовую частоту 281 кГц, [8] что выше, чем 50 кГц IBM 604, и, что более важно, на несколько порядков быстрее, чем электромеханические устройства. Время выполнения для сложения двух чисел составляло 680 мкс, в то время как умножение занимало 5,7 мс. Длительность выполнения инструкций варьировалась от 0,6 мс до 10 мс, со средним временем 2 мс. [8] [9] Gamma 3 был подключен к табулятору через кабель, подключенный вместо его соединительной панели (где были закодированы инструкции программы); таким образом, программа теперь находилась и запускалась на компьютере Gamma 3, а не на табуляторе. [2]

Тем не менее, хотя Gamma 3 можно было программировать через съемную соединительную панель, похожую на панели табуляторов, она оставалась периферийным устройством табулятора, а не наоборот. Кроме того, несмотря на то, что Gamma 3 была электронной, двоичной и имела полный по Тьюрингу набор инструкций, она все еще не могла хранить программы в памяти. [6]

Производство агрегатов Gamma 3 на заводе Bull's Angers во Франции в 1950-х годах.

Первый шаг к конфигурации хранимой программы был сделан с помощью Card Program (Programme Par Carte, PPC), которая предоставила возможность выполнять программу, загруженную с перфокарт, а не жестко подключенную к панели подключения. [6] IBM также экспериментировала с похожей концепцией с расширением CPC (Card Programmed Calculator), добавленным к 604. [10] Однако, хотя это сняло бы ограничение в 64 шага программирования и позволило бы запускать программы произвольного размера, программы по-прежнему не выполнялись в основной памяти, поэтому скорость их выполнения зависела от скорости считывания перфокарт, содержащих программу.

Компьютер подвергся новой модернизации в 1955 году с включением магнитного барабана , добавив 8192 слова памяти, что эквивалентно 49 кБ (64 дорожки по 8 блоков по 16 слов по 48 бит), [11] [12] довольно щедрое количество для того времени. На барабане можно было хранить до трех инструкций на слово, что позволяло разместить до 25 000 инструкций. [7] Эта новая версия была названа Gamma 3 AET (Armoire Extension Tambour или Drum Extension Cabinet).

Программы хранились в памяти AET группами по 48 инструкций, называемых «сериями». При необходимости серия перемещалась из барабана в промежуточную группу памяти, действующую как кэш инструкций, что позволяло компьютеру извлекать каждую инструкцию одну за другой и переносить их в свой регистр инструкций. Интересно, что инструкции, в частности адреса, можно было изменять в арифметическом устройстве компьютера, как и любые другие данные. Эта возможность проложила путь для косвенной или индексированной адресации. [7] Кэш инструкций также смягчил проблему, обнаруженную в IBM 650, которая требовала оптимизации расположения инструкций на барабане, чтобы предотвратить замедление программы из-за его задержки. [13]

В качестве последнего обновления в 1957 году высота магнитного барабана была увеличена вдвое, достигнув 16 384 слов (98 кБ) или 50 000 инструкций, а также была включена автономная консоль оператора с дисплеем осциллографа на ЭЛТ и кнопками для проверки памяти и пошагового выполнения кода. [14] Эта новая конфигурация получила название Gamma 3 ET, что означает Extension Tambour.

Полная система Gamma ET на выставке SICOB в Париже, конец 1950-х годов. На переднем плане видна консоль оператора и две табуляторные машины. На заднем плане — шкафы ЦП и памяти.

Благодаря возможности загружать и выполнять программы в памяти, Gamma 3 в конфигурациях AET и ET стал первым французским коммерческим компьютером с хранимой программой (хотя SEA создавала компьютеры с хранимой программой и раньше). [1] Табулятор теперь служил устройством ввода-вывода, в то время как Gamma 3 стал центральным процессором с архитектурой Фон Неймана . [15] Постепенно электромеханическое записывающее оборудование уступило место электронным компьютерам. [16] Gamma 3 ET позиционировал себя как конкурент компьютера IBM 650, который имел очень похожую конструкцию. [1] [3]

Первым клиентом, получившим Gamma 3, стал Crédit Lyonnais в Сент-Этьене в марте 1953 года. [8] Впоследствии Gamma 3 и 3 ET использовались как для обработки бизнес-данных в крупных компаниях, так и для научных расчетов, в частности, в тогда еще только появлявшихся CERN и CNRS [1] [17] или Air Liquide . [18]

Компания Bull никогда не продавала Gamma 3 в Америке, несмотря на партнерство с Remington Rand - Univac и наличие специальной версии с источником питания 60 Гц. [7]

Gamma 3 имела коммерческий успех в Европе, было продано около 1200 единиц, что превзошло продажи IBM 650. [3] Расширенная Gamma 3 очень выгодно отличалась от своего конкурента: объем памяти был в четыре раза больше, и она могла хранить в памяти в двенадцать раз больше инструкций, в то время как скорость обработки была в целом выше. [7] Этот успех побудил IBM разработать в ответ 1401. [3] [19]

Организация памяти

В Gamma 3 реализовано три типа памяти, все из которых основаны на 48-битных словах или 12 символах BCD.

Первый тип — это группа из семи регистров в сердце ЦП. M1 , также называемый памятью оператора, — это аккумулятор , к которому подключен сумматор-вычитатель, а M2 — это вспомогательный аккумулятор для двойной точности, 96-битной арифметики. M3M7 — это регистры общего назначения, называемые общими запоминающими устройствами ( Mémoires Banales ). Передача данных между ними осуществляется через M1. M0 — это специальный регистр, связанный с M1 и недоступный программисту. [20]

Структура компьютера Gamma 3 из курса программирования 1950-х годов. Блоки кода и данные из групп памяти барабанной подачи (нижняя половина). Первые три группы (0,1,2) являются исполняемыми и называются Сериями. Серия 3 отображается на плату подключения, а Группа 3 служит буфером ввода-вывода. Затем машинный код из Серии извлекается из памяти, декодируется и выполняется (верхняя половина).

Помимо этих общих регистров, Gamma 3 также использует шесть внутренних регистров:

Чтобы уменьшить количество электронных ламп, которые являются обычным источником сбоев, в регистрах (обычных запоминающих устройствах) вместо триггеров используются электрические линии задержки . [21]

Второй тип памяти известен как циркулирующие памяти, которые действуют как буферы, поскольку их содержимое должно обмениваться с памятью барабана и обратно. Циркулирующие памяти, обозначенные от M8 до M15 , реализованы с использованием магниторестриктивных линий задержки в отдельном, выделенном шкафу (ET). Эти восемь памяти сгруппированы попарно, образуя четыре «группы». Группы 0, 1 и 2 являются исполняемыми и называются «сериями», причем каждая серия служит кэшем инструкций, содержащим 48 инструкций. Коммутационная панель, когда используется, составляет серию 3. Это позже будет использоваться для определенных расширений, поставляемых как проводные подпрограммы.

Группа 3 действует как буфер ввода-вывода. Также может быть добавлен шкаф памяти "Ordonnateur" (ORD), предоставляющий четыре дополнительные группы (от 4 до 7), каждая из которых содержит данные, ни одна из которых не является исполняемой.

Наконец, память барабана служит большим устройством подкачки, размещающим как код, так и данные, и питаемым от перфокарт. На Gamma 3 код выполняется не из барабана, а из первых трех групп циркулирующих запоминающих устройств. Хотя это увеличивает скорость выполнения, это также делает дальние переходы более затратными, поскольку страница должна быть сначала перенесена из барабана в память MC с помощью специальной инструкции («TB»).

Барабан состоит из дюралюминиевого цилиндра длиной 15 или 30 см, вращающегося со скоростью около 2750 об/мин. Он вмещает 64 или 128 дорожек по 8 блоков, каждый из которых содержит группу, поэтому барабан может хранить до 1024 серий или 49 152 инструкций. [21] Плотность записи приближалась к 300 бит на дюйм с использованием фазовой модуляции, что было рекордом на то время. [22]

Набор инструкций

Оригинальная кодовая таблица 1959 года. Она помогает преобразовать мнемонику в машинный код. Например, инструкция CB преобразуется в TO=1,AD=15

Инструкция Gamma 3 состоит из 16-битного слова, составленного из четырех шестнадцатеричных чисел: кода операции ( TO , Type d'Opération ), адреса ( AD ), начального порядка ( OD , Ordre Début ) и конечного порядка ( OF , Ordre Fin ). Поле TO определяет общий тип инструкции, в то время как три других поля действуют как параметры. [20] OD и OF задают позиции , которые могут быть либо цифрами в двоичном режиме, либо символами в режиме BCD. Всего в наборе инструкций предусмотрено 29 мнемоник.

Пример программы на листе кодирования. В первом столбце показаны метки и переходы. В следующих столбцах показаны регистр программы (NL), мнемоника, содержимое регистра сдвига (MD) и содержимое первых четырех регистров.

Изначально не было ни ассемблера, который в те дни часто называли автокодером , ни языков высокого уровня, таких как Fortran , которые еще не были изобретены. Вместо этого программист сначала создавал блок-схему программы, дополнял ее мнемоникой, вручную преобразовывал мнемонику в машинный код с помощью таблицы, затем записывал полученный код на листе кодирования для проверки перед тем, как нанести его на карты. После загрузки программы в память барабана панель оператора позволяла программисту проверять и вносить данные в память, а также управлять потоком программы для целей отладки. [14]

Инструкции находятся в серии , размещенной в циркулирующих запоминающих устройствах ET-шкафа, где код извлекается и декодируется процессором (шкаф Gamma 3). Короткие программы могут быть подключены к коммутационной плате, хотя чаще всего они будут пробиты на картах и ​​загружены в память барабана для выполнения в качестве сохраненной программы. [12]

В следующей таблице описаны инструкции с их мнемоникой и соответствующим машинным кодом:

Поскольку коммутационная панель была сопоставлена ​​с серией 3, некоторые расширения и подпрограммы в конечном итоге стали поставляться как предварительно смонтированные программы коммутационной панели. Одним из таких примеров было расширение 'PDF' ( Point Decimal Flottant , или Floating Point Decimal), которое добавляло две дополнительные инструкции: BD и DCC для облегчения использования чисел с плавающей точкой. [23]

Полное описание набора инструкций вместе с примерами программирования до сих пор можно найти в некоторых курсах программирования 1950-х годов. [24] [12]

В последние дни Gamma 3, язык высокого уровня был реализован группой студентов под руководством профессора Пьера Бахуса из Университета Лилля . Этот язык, Auto-Programmation Bull (APB), смешивал элементы языка ассемблера Gamma 3 со структурированными элементами того, что впоследствии стало ALGOL 60. [ 25] В конечном итоге он оказался довольно популярным в группе пользователей Gamma 3 и позже был портирован на IBM 1620. [25 ]

Исторические и технические особенности

Gamma 3 имеет двухрежимный ALU , способный работать как в десятичном режиме (12-символьные слова BCD ) для обработки бизнес-данных, так и в двоичном режиме (48-битные слова) для промышленных и научных вычислений. Некоторые специальные инструкции, CD и CB, позволяют переключаться между двумя режимами. [9]

Как необычная функция для 1950-х годов, Gamma 3 опционально оснащалась библиотекой с плавающей точкой. Эта модель, известная как Gamma 3M, была предназначена для научных расчетов. [9] В конечном итоге эта возможность была встроена в Gamma 3 ET.

Числа с плавающей точкой представлены 48 битами. Первый бит используется для знака, следующие восемь бит используются для экспоненты, а следующие 39 бит используются для мантиссы ( также обычно называемой мантиссой). [21]

В конце 1950-х годов профессор Луи Болье провел первые университетские курсы программирования во Франции с использованием машин Gamma 3 ET, ознаменовав переход от курсов, предоставляемых производителем, к академической структуре. Эти курсы теперь доступны онлайн и сыграли важную роль в создании симуляторов Gamma 3. [24]

Gamma 3 был первым компьютером, произведенным в количестве более тысячи единиц. [26]

Сохранение

Четыре образца Gamma 3 все еще существуют. Один выставлен в музее Technikum недалеко от Франкфурта, [27] другой в Fédération des Équipes Bull в Анжере , Франция, где он был изготовлен, [28] и еще один в Museo degli Strumenti per il Calcolo в Пизе , Италия. [29] Наконец, в музее ACONIT в Гренобле , Франция, хранится уникальный образец Gamma 3 ET. [11]

Галерея

Смотрите также

Ссылки

  1. ^ abcd "Compagnie des Machines Bull запускает Gamma ET, первый компьютер с хранимой программой, произведенный для продажи во Франции: история информации". www.historyofinformation.com . Получено 25.07.2023 .
  2. ^ ab "Gamma 3". www.feb-patrimoine.com . Получено 2023-07-23 .
  3. ^ abcd "Истоки архитектуры и дизайна 1401". ibm-1401.info . Получено 2023-07-23 .
  4. ^ Баше, Чарльз Дж. (1986). Первые компьютеры IBM . MIT Press. стр. 461, гл. 12. ISBN 9780262523936.
  5. ^ ab "tabulatrice BS120 Bull, chr3inf2". www.histoireinform.com . Получено 2023-07-22 .
  6. ^ abc "Compagnie des machines Bull". www.feb-patrimoine.com . Получено 2023-07-22 .
  7. ^ abcde Леклерк, Бруно. «Бычья Гамма 3 ET — Вы рассчитываете по ординату». www.feb-patrimoine.com . Проверено 25 июля 2023 г.
  8. ^ abc "Compagnie des machines Bull". www.feb-patrimoine.com . Получено 2023-07-22 .
  9. ^ abc Гайо, Ален (2022). «Арифметика гаммы 3» (PDF) . АКОНИТ (на французском языке).
  10. ^ "Архивы IBM: Программируемый карточный калькулятор". www.ibm.com . 2003-01-23 . Получено 2023-07-22 .
  11. ^ ab "DBAconit V26.3". db.aconit.org . Получено 2023-07-22 .
  12. ^ abc Шаброль, Жан (1959). Cours ET-ORD (PDF) (на французском языке).
  13. ^ "IBM 650". www.columbia.edu . Получено 2023-07-26 .
  14. ^ ab "Изображение полной Gamma ET, включающей консоль оператора, центральный процессор, барабанную память и табуляторы". Federation des Equipes Bull . 1957.
  15. ^ Беллек, Жан. La mécanographie (PDF) (на французском языке). Национальный центр искусств и ремесел (CNAM). стр. 13 (глава 12.1).
  16. ^ "Музей добродетели информатики | Гамма 3 ET" . aconit.inria.fr . Проверено 22 июля 2023 г.
  17. ^ «Destin d'objets Scientific et Techniques: L'aventure du Gamma 3 (5/10 - год 2018 г.)» . www.echosciences-grenoble.fr . Проверено 22 июля 2023 г.
  18. ^ "ПРИМЕНЕНИЕ ЭЛЕКТРОННОГО ЦИФРОВОГО ВЫЧИСЛИТЕЛЬНОГО КОМПЬЮТЕРА ПРИ ПРОЕКТИРОВАНИИ НИЗКОТЕМПЕРАТУРНЫХ УСТАНОВОК" . Получено 2023-12-19 .
  19. ^ "Information Technology Industry TimeLine". www.feb-patrimoine.com . Получено 22 июля 2023 г.
  20. ^ ab Ponsard, Christophe (2023). Понимание компьютера Bull GAMMA 3 первого поколения посредством эмуляции (PDF) . FOSDEM 23.
  21. ^ abc Бауманн, Арно. Расширение документации Bull-Gamma 3 (PDF) . IMAG. стр. гл. 5.1.
  22. ^ Леклерк, Бруно (январь 1990 г.). «От Gamma 2 до Gamma ET: рождение электронных вычислений в Булле». Annals of the History of Computing . 12 (1): 5–22. doi :10.1109/MAHC.1990.10010. ISSN  0164-1239. Сохраненный сигнал находился в самосинхронизирующемся фазово-модулированном режиме. Плотность битов была близка к 300 битам на дюйм, что на 50% выше тогдашнего уровня техники.
  23. ^ Bull, Compagnie des Machines (1952). «CNUM - M14926: Гамма 3, электронный калькулятор». CNAM-MUSEE CM0.4-BUL . Проверено 6 августа 2023 г.
  24. ^ аб Боллиет, Луи. «Курс программирования Gamma ET» (PDF) . Университет Гренобля - Прикладная математика (на французском языке).
  25. ^ 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.
  26. ^ Леклерк, Бруно (январь 1990 г.). «От Gamma 2 до Gamma ET: рождение электронных вычислений в Булле». Annals of the History of Computing . 12 (1): 5–22. doi :10.1109/MAHC.1990.10010. ISSN  0164-1239.
  27. ^ "Первое поколение калькулятора ламп: BULL GAMMA 3 - technikum29". www.technikum29.de . Получено 22.07.2023 .
  28. ^ Окгалл (30 апреля 2016 г.). «Анжер, от 56 лет, Bull pionnier en électronique!». Des Mauges en Anjou ... (на французском языке) . Проверено 22 июля 2023 г.
  29. ^ "MUSEO DEGLI STRUMENTI PER IL CALCOLO - I Grandi Calcolatori: Gamma 3 BULL" . www.fondazionegalileogalilei.it . Проверено 30 июля 2023 г.

Внешние ссылки