stringtranslate.com

Эллиотт 803

Детали от Elliott 803B

Elliott 803 — небольшой среднескоростной транзисторный цифровой компьютер, производившийся британской компанией Elliott Brothers в 1960-х годах. Всего было построено 211 штук. [1]

История

Серия 800 началась с модели 801, единственной испытательной машины, построенной в 1957 году. Модель 802 была серийной моделью, но в период с 1958 по 1961 год было продано только семь машин. Недолговечная модель 803A была построена в 1959 году и впервые поставлена ​​в 1960 году; Модель 803B была построена в 1960 году и впервые поставлена ​​в 1961 году.

В 1960 году клиентам было доставлено более 200 компьютеров Elliott 803 по цене около 29 000 фунтов стерлингов за штуку [2] (примерно эквивалентно 710 000 фунтов стерлингов в 2021 году [3] ). Большинство продаж приходилось на версию 803B с большим количеством параллельных путей внутри, большим объемом памяти и аппаратными операциями с плавающей запятой.

Elliott 803 был компьютером, использовавшимся в ISI-609, первой в мире системе управления технологическим процессом или промышленным производством , в которой 803 был регистратором данных . Для этой цели он использовался на первом в США ядерном реакторе двойного назначения — N-Reactor .

В значительном количестве британских университетов был Elliott 803. [4]

Впоследствии Эллиотт разработал (1963) гораздо более быстрый и совместимый с программным обеспечением Elliott 503 .

Сохранились два полных компьютера Elliott 803. Один принадлежит Музею науки в Лондоне, но не выставлен на всеобщее обозрение. Второй принадлежит Национальному музею вычислительной техники (TNMoC) в Блетчли-парке , полностью функционален, и посетители этого музея могут регулярно видеть его в работе. [5] [6]

Описание оборудования

Модель 803 представляет собой транзисторную побитовую машину ; 803B имеет больше параллельных внутренних путей. Он использует память на ферритовом магнитном сердечнике на 4096 или 8192 слов по 40 бит, содержащих 39 бит данных с четностью . [7] Центральный процессор (ЦП) размещен в одном шкафу высотой, шириной и глубиной 56 на 66 на 16 дюймов (142 на 168 на 41 см). Схема основана на печатных платах, причем схемы довольно просты, и большая часть сигналов передается по проводам. Существует второй шкаф примерно вдвое меньшего размера, используемый для источника питания, который необычно основан на большой никель-кадмиевой батарее с зарядным устройством, ранней форме источника бесперебойного питания . Третий шкаф (того же размера, что и силовой шкаф) содержит дополнительную рабочую память на машинах с 8192 хранилищами слов. Имеется пульт управления оператора , телетайп Creed , а также высокоскоростной считыватель перфоленты и перфоратор для ввода/вывода , использующий 5-дорожечный телекод Эллиотта, а не Бодо . Лента читается со скоростью 500 символов в секунду и перфорируется со скоростью 100 символов в секунду. Консоль оператора длиной около 60 дюймов позволяет вводить инструкции низкого уровня вручную для манипулирования адресами и данными, а также запускать, останавливать и управлять машиной: имеется громкоговоритель (импульсный от верхнего бита регистра команд ) , который позволяет оператор, чтобы оценить статус вычисления. Для системы требуется кондиционер , потребляющий около 3,5 кВт мощности в минимальной конфигурации. Минимальная установка весила около 1800 фунтов (820 кг). [8]

Устройство для работы с магнитной пленкой 35 мм

Опционально доступно запоминающее устройство на необычной системе магнитной ленты на основе стандартной 35-миллиметровой пленки, покрытой оксидом железа (производства Kodak ). В то время он использовался киноиндустрией для записи звуковых дорожек. Фабрика Эллиота в Борехамвуде находилась недалеко от киностудии Элстри, что объясняет использование 35-миллиметровых носителей со звездочкой. На 1000-футовых барабанах содержалось 4096 блоков по 64 слова в каждом (4096 x 64 x 39 = 10 223 616 бит или эквивалент примерно 1,3 мегабайта).

Еще одна необычная особенность — использование магнитных сердечников не только для памяти, но и в качестве логических элементов. Эти логические ядра имеют 1, 2 или 3 входные обмотки, триггер (чтение) и выходную обмотку. В зависимости от полярности импульсы тока во входных обмотках либо намагничивают сердечник, либо гасят друг друга. Намагниченное состояние сердечника указывает на результат булевой логической функции. Две фазы тактовой частоты , обозначенные как альфа и бета, используются для запуска (сброса в ноль) альтернативных ядер. Изменение единицы на ноль создает импульс на выходной обмотке. Ядра, которые получают альфа-триггерные импульсы (альфа-ядра), имеют входы, подаваемые от вентилей, которые срабатывают на бета-фазе (бета-ядра). Транзисторы в то время были дорогими, и каждому логическому элементу требовался только один для усиления импульса выходной обмотки; однако один транзистор управляет входами небольшого количества (обычно 3) других ядер. Если необходимо управлять более чем тремя входами, каждое ядро ​​может управлять еще двумя транзисторами.

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

Инструкции и данные основаны на 39-битной длине слова с двоичным представлением в арифметике с дополнением до 2 . Набор команд работает с одним адресом и одним регистром аккумулятора, а также дополнительным вспомогательным регистром для умножения и деления целых чисел двойной длины. Хотя считается, что команды деления длины и извлечения квадратного корня были доступны только в процессорах 803, предназначенных для приложений управления технологическими процессами, было обнаружено, что в оставшемся рабочем процессоре 803B эти инструкции включены, вероятно, потому, что он использовался компанией-разработчиком программного обеспечения для разработки реальных приложений. приложения для управления временем и процессами. Инструкция состоит из 6-битного функционального поля (обычно представленного в восьмеричном формате ) и 13-битного адреса. Это дает 64 инструкции, организованные в 8 групп по 8 инструкций. 13-битное поле адреса памяти дает адресный диапазон в 8192 слова. Эти 19-битные инструкции упакованы по два в слово с дополнительным 39-м битом между ними, так называемой B-строкой или B-цифрой (термин является наследием компьютера Ferranti Mark 1 , где A-линия представляла аккумулятор). и B-линия — модификатор инструкций, оба хранятся на трубке Вильямса ). Установка цифры B приводит к добавлению содержимого адреса памяти первой инструкции ко второй инструкции во время выполнения, обеспечивая индексацию, косвенную адресацию и другие модификации инструкций во время выполнения. Битовое время составляет 6 микросекунд, переходы выполняются за 288 микросекунд, а простые арифметические инструкции — за 576 микросекунд. Операции с плавающей запятой занимают несколько миллисекунд. IO прямой. Прерывания не использовались стандартными периферийными устройствами и не документировались в руководстве по программированию.

В следующих описаниях A и N представляют аккумулятор и буквальный адрес, a и n представляют (начальное) содержимое аккумулятора и адресуемое место хранения, а a' и n' - результирующее содержимое.

Группы инструкций 0–3

Это арифметика с фиксированной запятой с 4 различными комбинациями операнда и места назначения результата:

Группа инструкций 4

Группа 4 – условные и безусловные переходы. Функции 40–43 переходят к первой инструкции пары, а 44–47 — ко второй.

Группа инструкций 5

Группа 5 — это команды умножения, деления и сдвига. Некоторые из них используют 38-битный вспомогательный регистр (AR – содержимое обозначается ar), который можно рассматривать как расширение аккумулятора на наименее значимом конце. При умножении и делении a/ar рассматривается как дробь со знаком от -1 до одного младшего бита меньше +1. Несмотря на то, что в Справочнике 803 говорится: «Все нечетные функции в группе 5 очищают AR», функция 57 не очищает его.

Группа инструкций 6

Группа 6 — инструкции с плавающей запятой (если установлен модуль с плавающей запятой).

Числа с плавающей запятой представляются в 39-битном слове или в аккумуляторе следующим образом (от старшего к наименее значимому концу):

Ноль всегда представлен всеми 39 битами нуля.

Обратите внимание, что проверка на ноль и проверка на отрицательные инструкции перехода одинаково действительны для операций с плавающей запятой.

Все эти инструкции очищают вспомогательный регистр.

Группа инструкций 7

Группа 7 — это ввод/вывод, за исключением группы 73, которая используется для связи с подпрограммами. Гораздо более полное описание функций группы 7 есть в ссылке «Наше компьютерное наследие».

Управление цифровым плоттером:

Вход в подпрограмму по адресу N обычно осуществляется следующей последовательностью:

73 ССЫЛКА: 40 Н

Обратный адрес сохранен в месте ссылки (обычно в месте перед началом подпрограммы (например, N-1)).

и возвращается, используя последовательность:

00 ССЫЛКА / 40 1

Пример программы

В качестве примера ниже приведены начальные инструкции , жестко закрепленные в ячейках 0–3 и используемые для загрузки двоичного кода с бумажной ленты в память. В соответствии с соглашением 803 он записывается с двумя инструкциями в каждой строке, представляющими содержимое одного слова. Двоеточие или косая черта между ними представляют собой цифровое значение B, равное нулю или единице соответственно.

0: 26 4 : 06 0 Очистить позицию 4; Очистить А 1: 22 4 / 16 3 Приращение лок 4; Сохраните A в ячейке (3 + содержимое ячейки 4) и очистите A. 2: 55 5 : 71 0 Сдвиг влево A 5 раз; Прочитайте ленту и «или» в A. 3: 43 1 : 40 2 Перейти к позиции 1, если арифметическое переполнение; Перейти к локации 2

В этой очень простой программе следует отметить несколько моментов:

(Значения данных для обернутых ячеек 0–3 должны быть равны нулю, поскольку значения счетчиков 8192, 8193 и т. д. изменяют B-модифицированную вторую половину ячейки 1 с инструкции 16 на 17, которая вместо этого устанавливает a в n - a. его очистки, как того требует внутренний цикл.)

Прерывания

У 803 есть малоизвестная функция прерывания. Хотя он не упоминается в руководстве по программированию и не используется ни одним из стандартных периферийных устройств, работа логики прерываний описана в руководствах по аппаратному обеспечению 803, а логика показана в схемах обслуживания 803 (Диаграмма 1: LB7 Gb). . Прерывания, вероятно, используются в основном в сочетании с пользовательскими интерфейсами, предоставляемыми как часть систем управления процессами ARCH в реальном времени. Поскольку все инструкции ввода и вывода приводят к тому, что 803 становится «занятым», если входные данные недоступны или если устройство вывода не завершило предыдущую операцию, прерывания не нужны и не используются для управления стандартными периферийными устройствами.

Повышение входного сигнала прерывания на компьютере вызывает перерыв в выполнении следующим образом: как только машина находится в подходящем состоянии (в частности, когда она не «занята» и только в определенных состояниях цикла выборки/выполнения), следующая инструкция пара извлекается из ячейки памяти 5 без изменения регистра управления последовательностями (SCR). Ожидается, что ячейка 5 будет содержать стандартную пару инструкций входа в подпрограмму (73 LINK: 40 N – см. выше), позволяющую сохранить адрес выполнения перед прерыванием (все еще в SCR) для последующего возврата. Предполагается, что внешнее оборудование, вызывающее прерывание, воздерживается от вызова другого прерывания до тех пор, пока первое не будет подтверждено какой-либо подходящей инструкцией ввода/вывода, чтобы предотвратить вложение прерываний. Компилятор Алгола не считает ячейку 5 зарезервированной, хотя это может быть больше связано с непригодностью Алгола для приложений управления процессами, чем с указанием на то, что прерывания никогда не рассматриваются как основная функция.

Составители

Начальные инструкции, описанные выше как пример программы, по сути, являются основным загрузчиком, который обычно используется для чтения вторичного загрузчика, известного как T23 , который добавляется ко всем лентам с программой. T23 обеспечивает более гибкие возможности загрузки программ, включая проверку суммы загруженного кода.

Программы с машинным кодом записываются в восьмеричном/десятичном представлении, приведенном выше в примере программы, и загружаются элементарным ассемблером, известным как процедура ввода перевода . Он не имеет средств символической адресации, но вместо этого позволяет разбивать источник на блоки , которые можно перемещать вручную, чтобы обеспечить расширение или сжатие предыдущего блока в разработке. Существует также автокод для простых задач программирования, позволяющий ускорить разработку программ без необходимости знания машинного кода. Он не имеет средств перевода формул и требует, чтобы все вычисления сводились к серии присваиваний с не более чем одним оператором в правой части.

803B с 8192 словами памяти способен запускать компилятор Эллиотта АЛГОЛ , [9] основное подмножество языка Алгол60, способное загружать и запускать несколько программ АЛГОЛа подряд. В основном это было написано Тони Хоаром , нанятым Эллиоттом в качестве программиста в августе 1960 года. Хоар рассказывает о некоторых из своих опытов в Elliotts в своей лекции на премию Тьюринга Ассоциации вычислительной техники (ACM) 1980 года .

803B в Национальном музее вычислительной техники теперь работает достаточно хорошо, чтобы снова запустить этот компилятор . На YouTube есть короткое видео о компиляции и запуске простой программы.

Участие НКР

Модель 803 имела торговую марку NCR-Elliott 803, когда NCR продавала ее для коммерческого использования. В это время Elliott Automation также производила/монтировала NCR 315 в Борехамвуде.

Вычисление своими руками

Elliott 803 (а позже Elliott 4100) использовались в компьютерном бюро совместного предприятия NCR-Elliott «Computer Workshop». Уникальной особенностью этого бюро было то, что оно проводило трехдневные курсы, на которых обучали своих клиентов писать собственные программы, и их часто передавали в дар библиотеке программ, которые можно было использовать. Клиенты приезжали в Борехамвуд (а позже и в Гринфорд), чтобы сами управлять компьютерами – ранний пример персональных компьютеров. Цены за час составляли 8 фунтов стерлингов (эквивалент 196 фунтов стерлингов в 2021 году) с 9:00 до 17:00, 6 фунтов стерлингов (эквивалент 147 фунтов стерлингов в 2021 году) с 17:00 до полуночи и 4 фунта стерлингов (эквивалент 98 фунтов стерлингов в 2021 году) с полуночи. до 9 утра. [3]

Наиболее популярные приложения были в гражданском строительстве и архитектуре для структурного анализа, выемки и насыпи, коррекции геодезических работ и составления объемов работ.

Приложения

Следующими были 803 пользователя: [2]

Небольшое количество подержанных 803-х попало в школы Великобритании.

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

Рекомендации

  1. Лавингтон, Саймон (19 мая 2011 г.). Движущиеся цели: автоматизация Эллиотта и заря компьютерной эпохи в Великобритании, 1947–67. Springer Science & Business Media . п. 662. ИСБН 9781848829336.
  2. ^ ab «Версия 3, ноябрь 2011 г. E3X1, Списки поставок и приложения для компьютеров серии Elliott 800 и 503» (PDF) . Архивировано из оригинала (PDF) 2 апреля 2012 года . Проверено 13 апреля 2012 г.
  3. ^ ab Данные по инфляции индекса розничных цен Великобритании основаны на данных Кларка, Грегори (2017). «Годовой ИРЦ и средний заработок в Великобритании с 1209 года по настоящее время (новая серия)». Измерительная ценность . Проверено 11 июня 2022 г.
  4. ^ Робертс, Горонви (6 марта 1967 г.). «Компьютеры». Парламентские дебаты (Хансард) . ХК . Проверено 8 июля 2017 г.
  5. ^ «Мэйнфреймы и большие системы». ТНМОК. Архивировано из оригинала 14 февраля 2014 года . Проверено 9 ноября 2018 г.
  6. ^ Новости Elliott 803, еще несколько интересных фактов из архива и несколько щедрых пожертвований в придачу. Архивировано 17 июля 2018 г. в Wayback Machine , 19 сентября 2010 г., Национальный музей вычислительной техники.
  7. ^ «Справочная информация: Обзор европейских компьютеров, часть 3 (заключительная часть) - Великобритания - NCR Co.: National-Elliott 803» (PDF) . Компьютеры и автоматизация . 9 (4): 27 апреля 1960 г. Проверено 5 сентября 2020 г.
  8. ^ Масса центрального процессора (680), блока питания (380 + 200 [зарядное устройство]), станции бумажной ленты (450?), клавиатуры (66?):
    • «Моделирование Elliott 803 – Содержание». elliott803.sourceforge.net . Дополнительная документация: Эллиотт 803 Факты, стр. 2.[ необходима проверка архива ]
      • «Некоторые старые компьютеры». Members.iinet.net.au .
      • Зарядное устройство: «Восстановление компьютера, выпуск 3». cs.man.ac.uk.
  9. ^ Первис, Билл (5 октября 2005 г.). «Эллиотт 803 Алгол».
  10. ^ Наука и яйцо, также известная как автоматизация цыплят: наука помогает яйцу, дата выпуска: 02.12.1962 - British Pathé
  11. ^ Журнал Британского компьютерного общества iTNOW, «празднуем 60-летие», лето 2017 г., стр. 49 doi: 1093/itnow/bwx049 www.bcs.org/itnow
  12. ^ Описано в «Биофизических лабораториях Королевского колледжа Лондонского университета» (1964), HMSO, стр. 9–11.
  13. ^ "Первоначальный компьютер был установлен в Португалии 50 лет назад" . 19 декабря 2011 г.
  14. ^ Гумберт, Пит. «Практическое применение для школьных интранетов».
  15. ^ Эллиотт 803, Первый компьютер, который я запрограммировал, Создан 1 декабря 2003 г.

дальнейшее чтение

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