Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Компьютеры серии GEC 4000 в Центре разработки GEC Computers Dunstable, 1991 г.
Передняя панель GEC 4080 [1]

ГЭК 4000 была серия из 16 / 32-битных миникомпьютеров производства ГЭЦ Computers Ltd в Великобритании в 1970 - х, 1980 - х и начале 1990 - х годов.

История [ править ]

Компания GEC Computers была образована в 1968 году как бизнес-подразделение конгломерата GEC . Он унаследовал от Elliott Automation стареющую серию Elliott 900 и нуждался в разработке новой линейки систем. Были определены три диапазона, известные как альфа, бета и гамма. Alpha появилась первой и стала 8-битным миникомпьютером GEC 2050 . Затем последовала бета-версия и стала GEC 4080. Гамма так и не была разработана, поэтому некоторые из ее расширенных функций были впоследствии возвращены в 4080. Основным разработчиком GEC 4080 был доктор Майкл Меллиар-Смит и главный конструктор 4060 и 4090 был Питер Макли.

Системы серии 4000 были разработаны и изготовлены в Великобритании в офисе GEC Computers в Борехамвуде в Элстри-Уэй. Разработка и производство перенесены на новые фабрики компании в Вудсайд Эстейт, Данстейбл в конце 1970-х годов. В 1979 году компания GEC Computers была удостоена Королевской награды за технические достижения за разработку серии 4000, в частности Nucleus. [2] К 1991 году количество производимых систем сокращалось, производство было переведено на завод GPT в Бистоне, Ноттингемшир , а разработка вернулась в Борехамвуд. Последние системы были произведены примерно в 1995 году, хотя в 2018 году все еще работает несколько систем GEC 4220, техническое обслуживание которых обеспечиваетTelent и некоторые GEC 4310 работали до 2013 года.

Ядро [ править ]

Аппаратное обеспечение и микропрограммное обеспечение серии GEC 4000 включают новаторское предприятие, известное как Nucleus . [3] Nucleus реализует ряд функций, которые чаще всего реализуются в ядре операционной системы , и, следовательно, операционные системы, работающие на системах серии GEC 4000, не нуждаются в непосредственном предоставлении этих функций. Прошивка Nucleus не может быть перепрограммирована каким-либо кодом, работающим в системе, и это сделало системы особенно привлекательными для ряда приложений безопасности.

Nucleus выполняет: [4]

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

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

Набор инструкций [ править ]

Серия 4000 имеет набор инструкций CISC . Он имеет 8-битные байты , обратный порядок байтов , память с байтовой адресацией , арифметику с дополнением до двух и формат с плавающей запятой с основанием 16 и избыточными 64 (такой же, как IBM System / 360 ). [5]

Номера моделей ниже 4090 - это 16-битные процессоры, а номера моделей от 4090 и выше - смешанные 16-битные и 32-битные. Это относится к размерам указателей, доступных для программ. Все системы поддерживают 16-битные указатели, которые известны как адресация CST (Current Segment Table). 32-разрядные системы также поддерживают 32-разрядные указатели, известные как адресация PAS (страничное адресное пространство). У каждого процесса есть PAST (таблица доступных для программы сегментов), в которой перечислены сегменты системной памяти, к которым программе разрешен доступ. Адресация CST позволяет отображать четыре записи PAST по адресам 0, 16 КБ, 32 КБ и 48 КБ, обеспечивая адресное пространство 16 бит / 64 КБ. Программы, которые используют более 64 КБ памяти, должны явно отображать записи PAST, которые им требуются в любой момент, в свои 4 записи CST,хотя Nucleus автоматически отображает различные сегменты кода в CST. Адресация PAS позволяет программам рассматривать свое адресное пространство как плоское 32-битное адресное пространство, при этом последовательные записи PAST появляются каждые 16 КБ, а Nucleus автоматически выполняет сопоставление сегментов записи PAST. 32-битные системы поддерживают смешивание адресов CST и PAS в одном процессе. Все инструкции имеют ширину 16 бит, за исключением некоторых инструкций адресации PAS, которые имеют длину 32 бита. Инструкции можно запускать только из адресного пространства CST.за исключением некоторых 32-битных инструкций по адресации PAS. Инструкции можно запускать только из адресного пространства CST.за исключением некоторых 32-битных инструкций по адресации PAS. Инструкции можно запускать только из адресного пространства CST.

32-битный регистр A является основным регистром-накопителем. Также существует 32-битный регистр B, который чаще всего используется вместе с регистром A как 64-битный регистр BA для операций с плавающей запятой двойной точности. 16-разрядный регистр X используется в основном для индексации массива, а два 16-разрядных регистра Y и Z используются в качестве 16-разрядных указателей. 16-битный регистр L указывает на функциональные локальные данные, а регистр G всегда содержит ноль, который может использоваться как 16-битный глобальный указатель, а также 8-битное, 16-битное или 32-битное нулевое значение. 16-битный регистр S (последовательность) указывает на следующую инструкцию, которую нужно выполнить. 8-битный регистр EC содержит биты кода состояния. (Отчасти это проиллюстрировано в гораздо более простом наборе команд GEC 2050.) Регистр «ключей», доступный только для чтения, позволяет программам считывать значение, установленное на тумблерах на передней панели операционным персоналом. 32-битного регистра указателя PAS не существует - 32-битные указатели PAS находятся в памяти в 16-битном адресном пространстве CST, и доступ к ним осуществляется с помощью 16-битного указателя. Для стека нет поддержки набора инструкций . Есть ряд регистров, недоступных для программ, которые используются Nucleus, например, регистры аппаратных сегментов, которые указывают на четыре CST текущего процесса, главный сегмент и сегменты PAS, а также на системные таблицы.

Набор команд содержит инструкции, которые управляют регистром-регистром, хранилищем-регистром, регистром-хранилищем и хранилищем-хранилищем. Существует набор инструкций по манипулированию строками, которые работают с переменной длиной сохранения, копирования, сравнения или сканирования шаблона. Существует ряд инструкций Nucleus для таких задач, как отправка сообщения другому процессу или периферийному устройству, получение сообщения или прерывания, изменение записи CST, указывающей на другой сегмент, доступный процессу, и т. Д.

4080 имеет двухэтапный конвейер команд . Это становится четырехступенчатым конвейером для 4220, самой производительной системы в серии. Системы начального уровня 415x и 4x6x имеют только одноступенчатый конвейер.

Нормальный режим работы ЦП называется Full Nucleus . Все системы также поддерживают ограниченный режим работы, называемый базовым тестом . В режиме базового тестирования Nucleus отключен, ввод-вывод выполняется по-другому, и может работать только одна программа, ограниченная нижними 64 КБ хранилища, но все остальные инструкции, не относящиеся к ядру и не относящиеся к PAS, работают нормально. Этот режим используется очень рано во время загрузки для настройки системных таблиц, необходимых Nucleus, до выполнения инструкции Switch Full Nucleus . После того, как система перешла в режим Full Nucleus, она не может вернуться в режим базового тестирования без вмешательства оператора с передней панели, что приводит к прекращению работы любой работающей операционной системы. Базовый тестовый режим также используется для запуска определенного тестового программного обеспечения (отсюда и название).

Ввод / вывод [ править ]

Конструкция 4000 I / O основана на нескольких процессорах ввода / вывода, известных как IOP , каждый из которых взаимодействует между хранилищем и набором контроллеров ввода / вывода. IOP контролируются функцией Nucleus в ЦП, но после запуска события ввода-вывода они работают автономно без взаимодействия с ЦП до завершения ввода-вывода. Нормальный интерфейс IOPs может каждый поддерживает до 255 или 256 одновременных операций ввода / вывода, каждый на отдельном пути. Контроллеры ввода-вывода на каждом IOP будут занимать один или несколько способов, в зависимости от того, сколько одновременных операций ввода-вывода им необходимо обработать. IOP контролирует каждый доступ к основному хранилищу, разрешая доступ только к последовательным ячейкам памяти, определенным для операции ввода-вывода, которую Way выполняет в настоящее время. Более ранние IOP выполняли доступ к хранилищу шириной 8 и 16 бит с пакетным режимом для выполнения до 8 передач вместе для контроллеров ввода-вывода с более высокой пропускной способностью. Более поздние IOP добавили доступ к хранилищу шириной 32 бита.

Во всех системах есть хотя бы один IOP. В 4080 этот первый IOP назывался базовым каналом мультиплексора [6].или BMC, а передняя панель 4080 обеспечивает управление как CPU, так и BMC. Системы начального уровня 415x и 4x6x имеют свой первый IOP (Integral Multiplexer Channel, или IMC), интегрированный в прошивку Nucleus, и, таким образом, операции ввода-вывода на IMC оказали некоторое влияние на производительность ЦП, хотя системы 4x6x могли иметь внешние IOP. добавлен. Инструкции ввода-вывода Nucleus серии 4000 и системные таблицы допускают до 8 операций ввода-вывода в секунду, хотя большинство моделей серии 4000 имеют некоторые аппаратные ограничения, которые уменьшают это. Системы 408x имели хранилище с 4 портами, причем ЦП и первый IOP совместно использовали один из них, а к остальным портам хранилища было подключено до трех дополнительных IOP. (Ранняя документация показывает, что эти дополнительные порты хранилища также были предназначены для подключения дополнительных процессоров,хотя это не была конфигурация, которая когда-либо продавалась с использованием процессоров 4080). Более поздние модели имели больше портов для магазинов, в зависимости от того, сколько плат портов для магазинов можно было встроить в систему. 4190 может поддерживать полный набор из восьми операций ввода-вывода в секунду, а 4190D поддерживает восемь операций ввода-вывода в секунду с двумя процессорами.

Некоторые часто используемые контроллеры ввода / вывода являются интервал таймера , системной консоли контроллера, перфоленты читатель и пробивные контроллеры, построчной печати контроллер (все это использование одного пути), ряд SMD (и более ранних версий диска интерфейс шины) дисковые контроллеры для управления до четырех приводов (все с использованием двух способов), контроллеры магнитных лент Pertec PPC для до четырех ленточных накопителей ½ дюйма и ряд многопортовых синхронных и асинхронных последовательных коммуникацийконтроллеры (с использованием от 4 до 32 способов). Плата цифрового ввода / вывода (с использованием четырех способов) обычно использовалась для прямого взаимодействия управления процессом и для обеспечения быстрой параллельной связи между системами. Также был доступен контроллер ящиков CAMAC (опять же, используемый для интерфейса управления технологическим процессом). Шина нормального интерфейса, к которой подключаются эти контроллеры, является опубликованным интерфейсом [7], и многие клиенты также создали свои собственные контроллеры для своих собственных конкретных требований к управлению процессом. Более ранний миникомпьютер GEC 2050 использовал 8-битную версию нормального интерфейса, и большинство контроллеров ввода-вывода можно было использовать в обоих диапазонах систем.

Все IOP, разработанные и построенные в 1970-х годах, обеспечивали одну и ту же шину обычного интерфейса для контроллеров ввода-вывода, и контроллеры ввода-вывода обычно могли использоваться в любом из них. В 1980-х годах было разработано несколько более специализированных IOP. Директор прямого доступа к памяти (DMAD) IOP позволил создать новый тип контроллера ввода-вывода, который имел больше свободы для доступа к основной памяти и позволил разработать более интеллектуальные контроллеры связи. SCSI IOP генерироваться шиной SCSI для подключения более современных дисков, а также включает интегрированный интервальный таймер, контроллер системной консоли, календарь и часы , так что дополнительный Нормальный интерфейс IOP и отдельные контроллеры не требуются поддерживать только эти функции.

Клиенты [ править ]

Пользователям систем серии ГЭК 4000 включены многие британские физики университета и инженерных отделов, центральный вычислительный сервис University College London (Евклид) и Кильского университета , в JANET академической / исследовательской сети X.25 коммутации позвоночнике, Rutherford-Appleton Laboratory , [8] Daresbury Лаборатория , Харвелла Лаборатория , НКР , Метеобюро , CERN , ICI , British Telecom , SIP (итальянская телекоммуникационный ), и Плесся .British Steel Corporation и BHP Steel использовали их для управления в реальном времени сталепрокатными заводами, British Rail и Лондонским метрополитеном для планирования движения поездов в режиме реального времени, London Fire Brigade и Durham Fire Brigade для систем управления и контроля. Компьютеры контролировали большинство мировых национальных систем Videotex , в том числе сервис Prestel viewdata .

В лаборатории Резерфорда-Эпплтона система GEC 4000 использовалась для управления синхротроном и инжекторами, которые использовались для источника нейтронного расщепления ISIS до 1998 года.

GEC 4080M использовался в качестве центрального процессора для радарной системы злополучного самолета дальнего радиолокационного обнаружения Nimrod AEW.3 . [9]

Центральная электрогенерирующая Совет использовал ГЭК 4080 процессоров в трех из центров управления сетями. Известные как GI74, они использовались для сбора данных с подстанций и отображения их на настенных схемах и табличных дисплеях.

Модели [ править ]

Было выпущено несколько вариантов процессора GEC 4000, в том числе (в примерном хронологическом порядке):

  • 4080 : оригинальная модель 1973 года с 64–256 КБ оперативной памяти
  • 4082 : 4080 с объемом памяти до 1 МБ
  • 4070 : модель начального уровня без чередования памяти
  • 4085 : 4082 с полупроводниковой памятью
  • 4060 модели начального уровня на основе: AMD Am2900 BIT-ломтик процессоры
  • 4062 / 4065 : 4060 поддерживает до 1 MiB памяти
  • 4080M : компактный усиленный 4080 для военного применения
  • 4090 : на базе Am2900 с 32-разрядными расширениями адресации и до 4 МБ памяти
  • 4190 : исправленный 4090 с памятью до 16 МБ
  • 4180 : более дешевая и медленная версия 4190 (без кеша памяти, без блока быстрого умножения)
  • 4060M : компактный корпус повышенной прочности 4060 для военного применения
  • 4160 : 4065 с 32-разрядными расширениями адресации 4090
  • 4150 : настольный 4160
  • 4162 : 4160 с DMAD IOP для контроллеров высокоскоростной связи
  • 4195 : компактный 4190
  • 4185 : более дешевая и медленная версия 4195 (без кеша памяти, без блока быстрого умножения)
  • 4151 : стоечное 4150
  • 4190D : двухпроцессорный 4190
  • 4193 : 4195 со SCSI IOP, заменяющим стандартный интерфейс IOP по умолчанию
  • 4220 : Повторная реализация 4190 с использованием технологии процессоров вентильных матриц.
  • 4310 : Система на базе Motorola 88100 MVME187, эмулирующая GEC 4220

Программное обеспечение [ править ]

Для серии GEC 4000 было доступно несколько операционных систем, в том числе:

  • COS : основная операционная система, для бездисковых систем реального времени
  • DOS : Дисковая операционная система, для систем реального времени, предоставляющая файловую систему и средства подкачки
  • OS4000 : многопользовательская система, поддерживающая пакетное и интерактивное использование, а также обработку транзакций
  • SCP-2 : Многоуровневая безопасность безопасной операционной системы ( DOD A1 / B3 )

Доступные языки программирования включают Babbage ( язык ассемблера высокого уровня ), FORTRAN IV , CORAL 66 , ALGOL , APL и BASIC .

См. Также [ править ]

  • GEC серии 63
  • 8-битный миникомпьютер GEC 2050

Ссылки [ править ]

  • 25 лет серии GEC 4000
  • "Семейство GEC 4000", какой компьютер? , Май 1979 г.
  • "GEC 4000 Computer", Центр истории вычислительной техники - Музей компьютеров
  1. ^ "Управление и мониторинг центрального процессора" (PDF) . GEC 4000 Компьютер . Декабрь 1977 . Проверено 15 июня 2009 года .
  2. ^ "Компьютеры GEC выигрывают Премию Квинса" (PDF) . 21 апреля 1979 . Проверено 15 января 2011 года .
  3. ^ "Руководство по ядру центрального процессора" (PDF) . GEC 4000 Компьютер . Декабрь 1977 . Проверено 15 июня 2009 года .
  4. ^ П.Дж. Деннинг, «Письмо президента ACM: компьютерная архитектура: некоторые старые идеи, которые еще не реализованы», Коммуникации ACM , 24 (9), 1981, стр. 553.
  5. ^ "Набор команд центрального процессора (GEC 4080)" (PDF) . GEC 4000 Компьютер . Декабрь 1977 . Проверено 15 июня 2009 года .
  6. ^ "Основной канал мультиплексора ЦП" (PDF) . GEC 4000 Компьютер . Декабрь 1977 . Проверено 15 июня 2009 года .
  7. ^ «Руководство пользователя по аппаратному обеспечению - Интерфейсы (GEC 4080)» (PDF) . GEC 4000 Компьютер . Апрель 1977 г. С. 4–25 . Проверено 15 июня 2009 года .
  8. ^ "Последний из британских мини" . Информационный бюллетень по инженерным вычислениям . Проверено 7 января 2017 года .
  9. ^ "BAe Nimrod AEW 3" . spyflight.co.uk . Архивировано из оригинального 2 -го мая 2012 года . Проверено 17 мая 2009 года .