Введение

Проектирование микропроцессора на базе RISC Intel i960 (или 80960) стало популярным в начале 1990-х годов как встраиваемый микроконтроллер. Он стал самым продаваемым процессором в этом сегменте, наряду с конкурирующим AMD 29000. Несмотря на свой успех, Intel прекратила маркетинг i960 в конце 1990-х годов в результате соглашения с DEC, по которому Intel получила права на производство процессора StrongARM. В настоящее время процессор продолжает использоваться в некоторых военных приложениях.

Происхождение

Проектирование i960 началось в ответ на провал дизайна Intel iAPX 432 в начале 1980-х годов. iAPX 432 был разработан для прямой аппаратной поддержки языков высокого уровня, таких как Ada и Lisp, которые использовали размеченную, защищенную память со сборкой мусора. Из-за сложности набора команд, многочиповой реализации и конструктивных недостатков, iAPX 432 был значительно медленнее других процессоров того времени. В 1984 году Intel и Siemens начали совместный проект, получивший название BiiN, для создания высокопроизводительной, отказоустойчивой, объектно-ориентированной компьютерной системы, программируемой исключительно на Ada. Многие участники первоначальной команды i432 присоединились к этому проекту, хотя новым ведущим архитектором был приглашен Гленфорд Майерс из IBM. Целевым рынком для систем BiiN были пользователи, требовавшие высокой надежности, такие как банки, промышленные системы и атомные электростанции. Основным вкладом Intel в систему BiiN стал новый дизайн процессора, вдохновленный концепцией защищенной памяти из i432. Новый дизайн должен был включать ряд функций для повышения производительности и устранения проблем, приведших к неудаче i432. Первые процессоры 960 достигли финальной стадии разработки, известной как taping out, в октябре 1985 года и были отправлены в производство в том же месяце, а первые работоспособные чипы поступили в конце 1985 и начале 1986 года. Проект BiiN в конечном итоге провалился из-за рыночной конъюнктуры, и процессор 960 остался без применения. Майерс попытался спасти разработку, выделив несколько подмножеств полной архитектуры, созданной для системы BiiN. Он пытался убедить руководство Intel продвигать i960 (тогда еще известный как "P7") как процессор общего назначения, как замену Intel 80286 и i386 (которые также прошли taping out в том же месяце, что и первый i960), так и на развивающемся рынке RISC для систем Unix, включая предложение Стиву Джобсу для использования в системе NeXT. Майерсу не удалось убедить руководство Intel поддержать i960 как процессор общего назначения или Unix, но чип нашел спрос на ранних высокопроизводительных 32-битных встраиваемых системах. Ведущим архитектором i960 был специалист по суперскалярности Фред Поллак, который также был главным инженером Intel iAPX 432 и ведущим архитектором чипа i686, Pentium Pro.

80960MC

i960MC включал в себя все функции оригинальной системы BiiN, но они просто не были указаны в спецификациях, что заставило некоторых задуматься, почему i960MC был таким большим и имел так много контактов – 53 из 132 помечены как "без подключения". Более поздние версии i960, такие как серия 80960Jx, имеют более типичное количество контактов "без подключения" и используют больше контактов питания и земли, а вместо этого имеют дополнительные вводы-выводы. Однако эти контакты "без подключения" фактически не соединены внутри и не связаны с набором функций BiiN – кремниевый кристалл внутри не имеет для них площадок для подключения. 80960MC содержит встроенный блок управления памятью и поддерживает отказоустойчивые системы в сочетании с модулем расширения шины M82965 от Intel. Оба чипа соответствуют стандарту MIL STD 883C. Оба чипа стали доступны в первом квартале 1989 года по цене 2400 и 1700 долларов США соответственно. Образцы для расширенного температурного диапазона стали доступны в августе 1988 года. Он содержит 32 32-битных регистра, 512-байтный кэш инструкций, кэш стековых фреймов, высокоскоростную 32-битную мультиплексированную шину с пакетной передачей и контроллер прерываний. Он также имеет 256 векторов прерываний и 32 уровня приоритета прерываний. Считается, что он был первой одночиповой сверхскалярной реализацией RISC. Серия C включала только одно арифметико-логическое устройство (АЛУ), но могла одновременно отправлять и выполнять арифметическую инструкцию, обращение к памяти и инструкцию ветвления, и поддерживать две инструкции в цикл при определенных обстоятельствах. Первые выпущенные версии работали на частоте 33 МГц, а Intel рекламировала чип как способный к 66 MIPS. Микроархитектура i960CA была разработана в 1987–1988 годах и официально представлена 12 сентября 1989 года. Позже, в мае 1992 года, появился i960CF, который включал больший кэш инструкций (4 КБ вместо 1 КБ) и добавил 1 КБ кэша данных, но по-прежнему не имел блока обработки чисел с плавающей точкой (FPU) или блока управления памятью (MMU).

80960MX

80960MX — это суперскалярная реализация архитектуры Extended, выполняющая до трех инструкций за такт, обеспечивая стабильную производительность в 25 VAX MIPS. Он реализовывал 32-битный стандарт ISA, разработанный совместной рабочей группой по промышленной авиации (JIAWG). Первоначально он поставлялся в корпусе с 348 выводами в виде керамической решетки, а позже – в виде кристаллов. i960 MX поддерживает объектно-ориентированное программирование. 33-й теговый бит позволял различать 32-битное слово данных и 32-битный указатель на память, что предотвращало использование поддельных указателей для доступа к защищенным областям памяти.

80960Jx

80960Jx – это процессор для встраиваемых приложений. Он оснащен 32-битной мультиплексированной шиной адреса/данных, кэшем инструкций и данных, 1 КБ оперативной памяти на кристалле, контроллером прерываний и двумя независимыми 32-битными таймерами. Функции тестируемости 80960Jx включают режим ONCE (эмуляция на схеме) и сканирование по границе (JTAG).

80960ХА, 80960ХД, 80960ХТ

Процессоры 80960Hx обеспечивали повышенную производительность по сравнению с вариантами Cx за счет умножителя тактовой частоты, увеличенного кэша инструкций объемом 16 КБ и кэша данных объемом 4 КБ, а также наличия GMU (Guarded Memory Unit – блок защиты памяти). Вариант HD имел внутренний умножитель тактовой частоты 2x, а версия HT – 3x, что позволяло увеличить производительность без изменения скорости внешней шины.

80960ВХ

Объявленный в октябре 1998 года, встроенный процессор i960VH PCI отличался 32-битной шиной PCI с частотой 33 МГц и ядром процессора i960JT с частотой 100 МГц. Ядро также включало 16 КБ кэша инструкций, 4 КБ кэша данных и 1 КБ встроенной оперативной памяти. Среди других особенностей ядра – два 32-битных таймера, программируемый контроллер прерываний, интерфейс I²C и двухканальный контроллер прямого доступа к памяти (DMA).

80960Rx

Процессоры 80960Rx позиционировались как процессоры ввода-вывода и включали в себя реализацию шины PCI (версии 2.1 или 2.2 в зависимости от модификации), а также ядро 80960Jx. Они могли использоваться на материнских платах для реализации PCI-устройств непосредственно на плате, а также на платах расширения PCI. Модификации RM/RN/RS использовали ядро JT с утроением частоты шины относительно ядра для достижения внутренней тактовой частоты 100 МГц, в то время как модификация RD использовала ядро JF с удвоением частоты для достижения 66 МГц. Модификация RP имела ядро JF, работающее на частоте шины 33 МГц.

Спецификации варианта

+ 5 В ЧастиНомер модели Тактовая частота ядра Тактовая частота шины Множитель iCache dCache Напряжение Сокет 80960MC 20,25 МГц 20,25 МГц 1.0x 0,5 КБ нет 5.0 В PGA 132 80960SA 10,12,16,20 МГц 10,12,16,20 МГц 1.0x 0,5 КБ нет 5.0 В 80 PQFP,84 PLCC 80960SB 10,16 МГц 10,16 МГц 1.0x 0,5 КБ нет 5.0 В 80 PQFP,84 PLCC 80960KA 10,20,25 МГц 10,20,25 МГц 1.0x 0,5 КБ нет 5.0 В 132 PQFP,132 PGA 80960KB 16,20,25 МГц 16,20,25 МГц 1.0x 0,5 КБ нет 5.0 В 132 PQFP,132 PGA 80960CA 16,25,33 МГц 16,25,33 МГц 1.0x 1 КБ нет 5.0 В 168 PGA,196 PQFP 80960CF 25,33,40 МГц 25,33,40 МГц 1.0x 4 КБ 1 КБ 5.0 В 168 PGA,196 PQFP

+ 3.3 В ЧастиНомер модели Тактовая частота ядра Тактовая частота шины Множитель iCache dCache Напряжение Сокет 80960JA 16,25,33 МГц 16,25,33 МГц 1.0x 2 КБ 1 КБ 3.3 В 132 PQFP,132 PGA 80960JF 25,33 МГц 25,33 МГц 1.0x 4 КБ 2 КБ 3.3 В 132 PQFP,132 PGA 80960JD 33,40,50,66 МГц 16,20,25,33 МГц 2.0x 4 КБ 2 КБ 3.3 В 132 PQFP,132 PGA 80960JS 25,33 МГц 25,33 МГц 1.0x 16 КБ 4 КБ 3.3 В 132 PQFP,132 PGA,196 MPBGA 80960JC 50,66 МГц 25,33 МГц 2.0x 16 КБ 4 КБ 3.3 В 132 PQFP,132 PGA,196 MPBGA 80960JT 75,100 МГц 25,33 МГц 3.0x 16 КБ 4 КБ 3.3 В 132 PQFP,132 PGA,196 MPBGA 80960HA 25,33,40 МГц 25,33,40 МГц 1.0x 16 КБ 8 КБ 3.3 В 168 PGA,208 PQ4 80960HD 50,66,80 МГц 25,33,40 МГц 2.0x 16 КБ 8 КБ 3.3 В 168 PGA,208 PQ4 80960HT 75 МГц 25 МГц 3.0x 16 КБ 8 КБ 3.3 В 168 PGA,208 PQ4

+ PCI I/O Процессорные вариантыНомер модели Тактовая частота ядра Тактовая частота шины Множитель iCache dCache Версия PCI Напряжение Сокет 80960RP 33 МГц 33 МГц 1.0x 4 КБ 2 КБ PCI 2.1 3.3 В 352 PBGA 80960RD 66 МГц 33 МГц 2.0x 4 КБ 2 КБ PCI 2.1 3.3 В 352 PBGA 80960VH 100 МГц 33 МГц 3.0x 16 КБ 4 КБ PCI 2.1 3.3 В 324 PBGA 80960RM/N 100 МГц 33 МГц 3.0x 16 КБ 4 КБ PCI 2.1 3.3 В 540 PBGA 80960RS 100 МГц 33 МГц 3.0x 16 КБ 4 КБ PCI 2.2 3.3 В 540 PBGA 80302/3 100 МГц 66 МГц 1.5x 16 КБ 4 КБ PCI 2.2 3.3 В 540 PBGA

Конец разработки

Intel пыталась укрепить позиции i960 на рынке контроллеров устройств ввода-вывода с помощью стандарта I2O, но это не принесло ощутимого успеха, и работы по проекту в конечном итоге были прекращены. К середине 1990-х годов его соотношение цены и производительности уступило конкурентам, предлагавшим более современные чипы, а Intel так и не выпустила версию с пониженным энергопотреблением, пригодную для использования в системах на батарейном питании. В 1990 году команда i960 была перенаправлена на работу во "втором эшелоне", параллельно над будущими реализациями i386 — в частности, над процессором P6, который впоследствии стал Pentium Pro. Проект i960 передали другой, более скромной команде разработчиков, что фактически означало прекращение его дальнейшей разработки.

Текущий статус

Некоторые процессоры ввода-вывода i960, такие как 80303, включают встроенный аппаратный XOR-двигатель для RAID-алгоритмов. Они используются в качестве контроллеров для высокопроизводительных, поддерживающих RAID, SCSI-дисковых массивов, адаптеров-хост, а также высококлассных SCSI и DSSI систем Digital Equipment/Compaq/HP и, в конечном итоге, автономных RAID-контроллеров серии Fibre Channel HSx. Чип i960RS также является основой контроллера AAR 2400A от Adaptec, который использует четыре стандартных параллельных диска ATA для создания доступной отказоустойчивой системы хранения RAID 5 для небольших ПК-серверов и рабочих станций. i960 также использовался в некоторых коммутаторах Brocade Fibre Channel для работы операционной системы Fabric OS. Архитектура i960 также применяется в игровых автоматах. В настоящее время они встречаются в семействе IGT Stepper S2000 и семействе видео i960. Он также использовался в качестве основного процессора знаменитой серии аркадных плат Model 2 от Sega. По сообщениям, в многорежимной радиолокационной станции (МРЛ) легкого истребителя HAL Tejas ВВС Индии используется i960. HAL Tejas был принят на вооружение в 2015 году. Индийская организация космических исследований (ISRO) использует этот чип в бортовых компьютерах своих ракет-носителей. Процессор i960 также применяется в платах интерфейса автоматической помощи в радиолокационном планировании (ARPA) в радарах производства Kelvin Hughes. Чип использовался в некоторых терминалах HP X. Некоторые контроллеры SATA RAID используют IOP (Intelligent I/O Processor) Intel 80303, который объединяет мост PCI-PCI, контроллер памяти и ядро процессора 80960JT 100. Чип также использовался в широкополосном модеме Alcatel Lucent 1000 ADSL.