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

Intel i860 (также известный как 80860 ) был RISC - микропроцессора дизайн представлен Intel в 1989 году был одним из первых попыток Intel, на совершенно новом, высокого класса архитектуры набора команд , так как не удалось Intel iAPX 432 из 1980 - х годов. Он был выпущен с большой помпой, слегка затмевая более ранний Intel i960 , который был успешным в некоторых нишах встроенных систем и который многие считали лучшим дизайном. I860 так и не добился коммерческого успеха, и проект был прекращен в середине 1990-х годов.

Реализации [ править ]

Матрица Intel i860 XR.
Умереть от Intel i860 XP.

Первой реализацией архитектуры i860 был микропроцессор i860 XR (кодовое имя N10 ), который работал на частоте 25, 33 или 40 МГц. В микропроцессоре i860 XP второго поколения (кодовое имя N11 ) добавлены страницы объемом 4 Мбайта, увеличенный объем кэш-памяти на кристалле, поддержка кеш-памяти второго уровня, более быстрые шины и аппаратная поддержка отслеживания шины для обеспечения согласованности кеш-памяти в многопроцессорных системах. Уменьшение технологического процесса для XP (с 1 микрометра до 0,8 CHMOSV ) увеличило его до 40 и 50 МГц. [1] Оба микропроцессора поддерживали один и тот же набор команд для прикладных программ.

Технические характеристики [ править ]

I860 сочетал в себе ряд уникальных в то время функций, в первую очередь его архитектуру с очень длинным командным словом (VLIW) и мощную поддержку высокоскоростных операций с плавающей запятой. [2] В проекте было установлено 32-битное ядро ALU вместе с 64-битным FPU, которое состояло из трех частей: сумматора, умножителя и графического процессора. Система имела отдельные конвейеры для ALU, сумматора с плавающей запятой и умножителя и могла передавать до трех операций за такт. (То есть две инструкции - одна целочисленная инструкция и одна инструкция умножения и накопления с плавающей запятой за такт.)

Все шины имели ширину не менее 64 бита. Например, шина внутренней памяти к кеш-памяти имела ширину 128 бит. Оба устройства имели тридцать два 32-битных регистра, но FPU использовал его набор в виде шестнадцати 64-битных регистров. Инструкции для ALU загружались по две за раз, чтобы использовать полную внешнюю шину. Intel назвала этот дизайн «64-битным микропроцессором i860». [3]

Инструкции Intel i860 работали с данными размером от 8 до 128 бит. [4]

Графический блок был уникальным для той эпохи. По сути, это было 64-битное целочисленное устройство, использующее регистры FPU как восемь 128-битных регистров. Он поддерживал ряд команд для инструкций, подобных SIMD, в дополнение к базовой 64-битной целочисленной математике. Опыт работы с i860 повлиял на функциональность MMX, которая позже была добавлена ​​в процессоры Intel Pentium .

Одной из необычных особенностей i860 было то, что конвейеры в функциональные блоки были программно доступными ( VLIW ), что требовало от компиляторов тщательного упорядочивания инструкций в объектном коде.чтобы трубопроводы оставались заполненными. В традиционных архитектурах эти обязанности выполнялись во время выполнения планировщиком на самом ЦП, но сложность этих систем ограничивала их применение в ранних проектах RISC. I860 был попыткой полностью избежать этого, переместив эту функцию за пределы чипа в компилятор. Это позволило i860 выделить больше места для функциональных блоков, улучшив производительность. В результате своей архитектуры i860 мог запускать определенные алгоритмы графики и операций с плавающей запятой с исключительно высокой скоростью, но его производительность в приложениях общего назначения страдала, и его было трудно программировать эффективно (см. Ниже).

Производительность [ править ]

На бумаге производительность для однокристального решения была впечатляющей; однако реальная производительность была совсем не такой. Одна проблема, возможно, нераспознанная в то время, заключалась в том, что пути выполнения кода трудно предсказать, а это означает, что становится чрезвычайно сложно правильно упорядочить инструкции во время компиляции . Например, инструкция по сложению двух чисел займет значительно больше времени, если данные не находятся в кеше, но программист не может узнать, есть они или нет. Если будет сделано неверное предположение, весь конвейер остановится в ожидании данных. Вся конструкция i860 основана на том, что компилятор эффективно справляется с этой задачей, что на практике оказалось практически невыполнимым. Хотя теоретически может достигать пика примерно 60-80 MFLOPS как для одинарной точности, так и длядвойная точность для версий XP [5], вручную написанный код ассемблера смог получить только около 40 MFLOPS, а большинству компиляторов было трудно получить даже 10 MFLOPS. [6] Более поздняя архитектура Itanium , также разработанная на основе VLIW, снова страдала от проблемы компиляторов, неспособных предоставить достаточно оптимизированный код.

Другой серьезной проблемой было отсутствие решения для быстрого переключения контекста . У i860 было несколько конвейеров (для частей ALU и FPU), и прерывание могло их перегрузить и потребовать их повторной загрузки. Это заняло 62 цикла в лучшем случае и почти 2000 циклов в худшем. Последнее составляет 1/20000 секунды на частоте 40 МГц (50 микросекунд), вечность для процессора. Это в значительной степени исключило i860 как процессор общего назначения.

Смерть [ править ]

По мере совершенствования компиляторов общая производительность i860 изменилась, но к тому времени большинство других RISC-проектов уже превосходили i860 по производительности.

В конце 1990-х годов Intel заменила всю свою линейку RISC разработками на базе ARM , известными как XScale . Как ни странно, число 860 с тех пор повторно использовалось для набора микросхем управления материнской платой для систем Intel Xeon (high-end Pentium ) и модели Core i7.

Энди Гроув предположил, что провал i860 на рынке был вызван тем, что Intel слишком растянулась:

Теперь у нас было два очень мощных чипа, которые мы представляли примерно в одно время: 486, в значительной степени основанный на технологии CISC и совместимый со всем программным обеспечением ПК, и i860, основанный на технологии RISC, который был очень быстрым, но совместим с ничего такого. Мы не знали, что делать. Итак, мы представили оба, полагая, что мы позволим рынку решать. ... наша двусмысленность заставила наших клиентов задуматься, что на самом деле представляет Intel, 486 или i860?

-  Энди Гроув , [7]

Приложения [ править ]

Три i860 XP-50 процессоров на печатной плате от компании Intel Paragon XP / S суперкомпьютер .

Сначала i860 использовался только в небольшом количестве суперкомпьютеров, таких как Intel iPSC / 860 . Позже Intel продавала i860 как микропроцессор для рабочих станций, где он конкурировал, в частности, с микропроцессорами на базе архитектур MIPS и SPARC . Электрический Oki OKI станция 7300/30 [8] и Stardent Vistra 800 [9] Unix рабочие станции были основаны на 40 МГц i860 XR работающих UNIX System V / i860. [10] Hauppauge 4860 [11] и Olivetti CP486 [12]включал Intel 80486 и i860 на одной материнской плате. Первоначально Microsoft разработала то, что должно было стать Windows NT на рабочих станциях на базе i860XR собственной разработки (кодовое название Dazzle ), но позже перенесла NT только на MIPS ( Microsoft Jazz ), Intel 80386 и другие процессоры. Некоторые утверждают, что обозначение NT было ссылкой на кодовое имя "N-Ten" i860XR. [13]

I860 действительно нашел применение в мире рабочих станций в качестве графического ускорителя. Он использовался, например, в NeXTdimension , где запускал урезанную версию ядра Mach с полным стеком PostScript . Однако часть проекта PostScript так и не была завершена, поэтому в итоге пришлось просто перемещать цветные пиксели. В этой роли дизайн i860 работал значительно лучше, так как основная программа могла быть загружена в кэш и сделана полностью «предсказуемой», позволяя компиляторам правильно упорядочивать. Truevision выпустила плату ускорителя на базе i860, предназначенную для использования с картами кадрового буфера Targa и Vista. Pixarсоздал специальную версию RenderMan для работы на карте, которая работает примерно в четыре раза быстрее, чем хост 386. Другим примером SGI «ы RealityEngine , который используется ряд процессоров i860XP в своей геометрии двигателя. Этот вид использования также постепенно исчез, поскольку более универсальные процессоры начали соответствовать производительности i860, а Intel переключила свое внимание на процессоры Pentium для вычислений общего назначения.

Компания Mercury Computer Systems использовала i860 в своем мультикомпьютере . От 2 до 360 вычислительных узлов будут находиться в сети жирного дерева с коммутацией каналов , причем каждый узел будет иметь локальную память, которая может быть отображена любым другим узлом. Каждый узел в этой гетерогенной системе может быть i860, PowerPC или группой из трех SHARC DSP. Хорошая производительность была получена от i860 за счет поставки клиентам библиотеки функций обработки сигналов, написанных на языке ассемблера. Аппаратные упакованы до 360 вычислительных узлов в 9U в стойке пространства, что делает его пригодным для мобильных приложений , таких как бортовая обработка радара.

В начале 1990-х годов Stratus Technologies построила серверы серии XA / R на базе i860, работающие под управлением собственной операционной системы VOS . [14]

Также в 1990-х Alliant Computer Systems построила свои серверы FX / 800 и FX / 2800 на базе i860, заменив серии FX / 80 и FX / 8, основанные на Motorola 68000 ISA. Вычислительные системы Alliant и Mercury интенсивно использовались в NASA / JPL для миссий SIR-C .

Военные США использовали i860 для многочисленных приложений аэрокосмической и цифровой обработки сигналов в качестве сопроцессора, где он использовался до конца 1990-х годов. [15]

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

  1. ^ I860 XP - второе поколение i860.
  2. ^ Кон, Лес; Маргулис, Н. (1989). «Представляем 64-разрядный микропроцессор Intel i860». Компьютерное общество IEEE: 15–30. Цитировать журнал требует |journal=( помощь )
  3. ^ Граймс, Джек; Кон, Л .; Бхарадвадж Р. (1989). «64-разрядный процессор Intel i860: универсальный процессор с возможностями 3D-графики». Компьютерное общество IEEE: 85–94. Цитировать журнал требует |journal=( помощь )
  4. ^ "Коллекция микросхем - микропроцессор i860 - Смитсоновский институт" .
  5. Олег Ю. Репин, Алексей Сергеевич Пылкин (2000). «Intel i860: 64-битный микропроцессор» . sscc.ru, ICMMG. Архивировано из оригинала на 2009-06-23 . Проверено 27 сентября 2013 .
  6. ^ DH Bailey, E. Barszcz, RA Fatoohi, HD Simon, S. Weeratunga (1990). Результаты производительности на прототипе Intel Touchstone Gamma (PDF) (отчет). Исследовательский центр НАСА Эймса. CS1 maint: использует параметр авторов ( ссылка )
  7. ^ Процессору Intel 486 исполняется 15 лет | Geek.com архивации 2008-05-25 в Wayback Machine
  8. ^ "Oki Electric OKI Station 7300/30-Компьютерный музей" .
  9. ^ «Intel i860 - отсюда туда» . 2010 г.
  10. ^ "Компьютер KUBOTA / Stardent AVSstation Titan Vistra 800" . Архивировано из оригинала на 2014-05-14 . Проверено 14 мая 2014 .
  11. ^ "GeekDot - Hauppauge 4860" .
  12. ^ "GeekDot - Olivetti CP486" .
  13. ^ Терротт, Павел (2003-01-24). «Windows Server 2003: Дорога к золоту» . Выиграй супер сайт . Архивировано из оригинала на 2011-07-20 . Проверено 2 сентября 2013 .
  14. ^ "История машин Stratus" .
  15. ^ http: //www.m militaryaerospace.com/articles/print/volume-8/issue-5/features/technology-focus/cots-board-vendors-make-their-dsp-choices.html
  • Маргулис, Нил (1990). Архитектура микропроцессора i860 . Осборн / Макгроу-Хилл. ISBN 978-0-07-881645-1.

Внешние ссылки [ править ]

  • Многие карты расширения i860
  • i860 изображения и описание .
  • Родхамел, Майкл У. " Шинный интерфейс и пейджинговые блоки микропроцессора i860 (tm) ". В Proc. Международная конференция IEEE по компьютерному дизайну, стр. 380–384, 1989.