Декабрь Светлячок
Разработчик | Digital Equipment Corporation Центр системных исследований |
---|---|
Тип | с общей памятью Асимметричная многопроцессорная рабочая станция |
Операционная система | Таос, В (операционная система) |
Память | 4 МБ – 128 МБ |
Отображать | Монохромный дисплей с разрешением 1024 на 768 пикселей. |
Вход | Клавиатура и мышь |
Firefly рабочей была с общей памятью асимметричной многопроцессорной станцией , разработанной Центром системных исследований , исследовательской организацией в составе Digital Equipment Corporation . Первая построенная версия содержала до семи микропроцессоров MicroVAX 78032 . Кэш каждого из микропроцессоров сохранял согласованное представление одной и той же основной памяти с помощью алгоритма когерентности кэша , протокола Firefly . Во второй версии Firefly использовались более быстрые микропроцессоры CVAX 78034. Позже он был представлен как продукт DEC как VAXstation 3520/3540 под кодовым названием Firefox .
Описание оборудования
[ редактировать ]Firefly представлял собой асимметричный многопроцессорный специализированный стоечный компьютер, поскольку только один из микропроцессоров имел доступ к интерфейсу Q-Bus , который реализовывал подсистему ввода-вывода.
Процессоры
[ редактировать ]Firefly содержал плату основного процессора и ноль, одну, две или три платы вторичного процессора. Эти процессорные платы имели размер 8 на 10 дюймов. Плата основного процессора содержала микропроцессор, его сопроцессор с плавающей запятой и кэш, а также логику управления Q-Bus. Каждая плата вторичного процессора содержала по два микропроцессора, их сопроцессоры с плавающей запятой и кэши. В первоначальных процессорных платах Firefly использовался микропроцессор MicroVAX 78032 и сопроцессор MicroVAX 78132 с плавающей запятой, но в более поздних системах Firefly использовались более быстрые микропроцессоры CVAX 78034 , CVAX Floating Point Chips (сопроцессоры с плавающей запятой). Платы процессора обменивались данными друг с другом и с памятью через MBus. Компоненты, использованные в процессорных платах оригинального Firefly, были такими же, как те, которые изначально были разработаны для системы MicroVAX II. Первоначально система была разработана для использования процессоров Motorola 68010 в рамках этой общей архитектуры. [1]
Кэши в Firefly были напрямую сопоставлены для простоты и поддержки многопроцессорности; они использовали протокол Firefly для обеспечения согласованности кэша. Кэши на платах процессора MicroVAX имели емкость 16 КБ (4096 4-байтовых строк) и были реализованы с помощью одиннадцати SRAM по 2 КБ (4 бита на 4096 слов) и двадцати транзисторно-транзисторной логики устройств (TTL). Логика управления кэшем была реализована с помощью пятнадцати устройств, в основном состоящих из устройств программируемой логики массива (PAL). Кэши на процессорных платах CVAX различались только емкостью: 64 КБ (16 384 4-байтовых строки) и были реализованы с помощью SRAM объемом 8 КБ (4 бита на 16 384 слова).
Память
[ редактировать ]Процессоры Firefly взаимодействовали с основной памятью через свои индивидуальные кэши и через MBus. Память реализовывалась в виде от одного до четырех модулей памяти, подключаемых к MBus. Оригинальный Firefly имел главный модуль памяти емкостью 4 МБ и до трех подчиненных модулей памяти той же емкости объемом от 4 до 16 МБ. Более поздние системы Firefly использовали модуль памяти емкостью 32 МБ, для памяти объемом от 32 до 128 МБ. Время доступа к памяти в исходном Firefly на базе MicroVAX составляло 400 нс, а в версии CVAX время доступа к памяти составляло 200 нс.
ввод/вывод
[ редактировать ]Устройства ввода-вывода подключались к системе через Q-Bus, 22-битное адресное пространство которого отображалось в 24-битное адресное пространство памяти Firefly с помощью регистров сопоставления, управляемых главным процессором. Устройства использовали прямой доступ к памяти (DMA) для доступа к памяти через кэш главного процессора. Устройствами ввода-вывода Firefly были: контроллер монохромного дисплея (MDC), буферный контроллер для магнитных дисков, RQDX3 и контроллер Ethernet DEQNA .
Хотя DEC использовала существующие компоненты для большей части системы ввода-вывода, контроллер дисплея был разработан специально для Firefly инженерами проекта, которые считали, что ни один из существующих продуктов не соответствует их требованиям к производительности. Было два контроллера дисплея: один обеспечивал цветную графику, а другой — монохромную графику. Эти контроллеры работали, проверяя рабочую очередь, установленную в памяти, с использованием DMA, обеспечивая полностью симметричный доступ к оборудованию дисплея для всех процессоров.
Контроллер монохромного дисплея (MDC) размещался на плате, вдвое меньшей, чем платы процессора, и был способен достигать разрешения 1024 на 768 пикселей. Он содержал 16-битный микропроцессор Am29116 с тактовой частотой 10 МГц и памятью 10 КБ, содержащую 2048 40-битных слов памяти микроинструкций. Буфер кадра размером 1024 на 1024 пикселей был реализован с помощью VRAM , три четверти которого использовались для хранения растрового изображения дисплея , а остальная часть была доступна диспетчеру дисплея или использовалась для кэширования шрифтов.
Микропроцессор 29116 периодически проверял рабочую очередь, установленную в памяти, с помощью DMA и выполнял команды из этой очереди. Команды выполняли операции BitBlt внутри буфера кадра, между системной памятью и буфером кадра, а также использовались для рисования символов из кэша шрифтов.
Аппаратное обеспечение дисплея также обеспечивало интерфейс для клавиатуры и мыши. Шестьдесят раз в секунду MDC записывал в память положение мыши и незакодированное растровое изображение, представляющее состояние клавиатуры. В результате реализации MDC в качестве устройства ввода-вывода Firefly поддерживал несколько контроллеров дисплея в одной системе, подключенных к нескольким мониторам.
Программное обеспечение
[ редактировать ]Два варианта Firefly использовали системное программное обеспечение под названием , которое состояло из нескольких компонентов, таких как Taos операционная система , использующая микроядро Nub Topaz и Trestle оконная система . Одной из особенностей Taos было то, что он поддерживал интерфейс двоичных вызовов Ultrix , позволяя существующим двоичным файлам Ultrix, скомпилированным для MicroVAX, запускать немодифицированный образ на Firefly. В отличие от Ultrix, Topaz поддерживал процессы с несколькими потоками, которые могли охватывать несколько процессоров, а система Taos могла одновременно запускать приложения Ultrix и Topaz. Modula-2+ ( расширенный язык Modula-2 ) использовался для программирования Topaz и его приложений.
Stanford V (операционная система) также поддерживал Firefly в конфигурации с одним процессором CVAX и четырьмя процессорами Microvax-II в шасси BA123 и графикой QVSS–VCB01.
См. также
[ редактировать ]- Протокол Firefly — протокол согласованности кэша, используемый Firefly.
Ссылки
[ редактировать ]- ^ Такер, Чарльз (22 сентября 1984 г.). Рабочая станция Firefly (PDF) (Технический отчет). Центр исследования цифровых систем . Проверено 21 ноября 2021 г.
Внешние ссылки
[ редактировать ]- Пол Р. МакДжонс и Гаррет Ф. Сварт, « Развитие системного интерфейса UNIX для поддержки многопоточных программ », 28 сентября 1987 г.
- Чарльз П. Такер, Лоуренс К. Стюарт, Эдвин Х. Саттертуэйт-младший (30 декабря 1987 г.). «Firefly: Многопроцессорная рабочая станция» (PDF) .
{{cite web}}
: CS1 maint: несколько имен: список авторов ( ссылка ) Альтернативный URL - Многопроцессорная рабочая станция
- Описательное сообщение компьютера о продукте VAX3520/40 Firefox Firefly