Эволюция и современное состояние архитектуры MIPS


PDF версия

В статье описана история развития архитектуры MIPS от ее рождения до настоящего времени. Дается описание основных возможностей специализированных расширений архитектуры. Приводятся основные характеристики IP-ядер, предоставляемых компанией MIPS Technologies, Inc. Рассматриваются наиболее интересные продукты, разработанные другими компаниями на основе MIPS-архитектуры. Затронуты вопросы нарушения интеллектуальной собственности и действия MIPS Technologies, Inc. по защите своих прав.

Рождение

В 1981 г. команда Стендфордского университета, возглавляемая Джоном Хенесси (John Hennesy) начала работу над проектом, который впоследствии привел к появлению первого MIPS-процессора. Базовая концепция заключалась в значительном повышении производительности за счет существенного упрощения архитектуры процессора, в основу которой была положена идея конвейеризации. При этом была решена проблема блокировок или вынужденных остановок конвейера, называемых interlocks, которая считалась главным препятствием распространению идеи конвейерного вычисления. Именно это свойство и дало название архитектуре MIPS: Microprocessor without Interlocked Pipeline Stages. Такая идеология потребовала исключить много полезных инструкций, требующих нескольких тактов на выполнение, однако общая производительность системы существенно увеличилась за счет повышения рабочей частоты процессора.
В 1984 г. Джон Хенесси покинул Стенфордский университет и основал компанию MIPS Computer Systems. В 1985 г. на рынок был выпущен первый коммерческий микропроцессор R2000, а в 1988 г. — его улучшенная версия R3000. Эти 32-разрядные процессоры в основном применялись в рабочих станциях компании Silicon Graphics Inc. (SGI). В 1991 г. MIPS Computer Systems разработала 64-разрядный микропроцессор R4000, который стал первым коммерческим 64-разрядным RISC-микропроцессором, однако при выводе его на рынок возникли финансовые проблемы. Для сохранения компании и данного проекта в 1992 г. фирма SGI, для которой проект R4000 был жизненно важен, купила копанию MIPS Computer Systems, впоследствии переименованную в MIPS Technologies, Inc. (MTI).
На заре своего развития архитектура MIPS обеспечивала высокую производительность и существенный выигрыш по сравнению с традиционными CISC-процессорами. За счет этого микропроцессоры MIPS позиционировались как высокопроизводительные и применялись в мощных рабочих станциях, в первую очередь графических станциях производства SGI. Помимо SGI, станции на базе MIPS производили Olivetti, Siemens-Nixdorf, Acer, DEC, NEC и др. [1]. На эти станции были портированы как собственные операционные системы типа IRIX (SGI), RISC/OS (MIPS), так и широко распространенные ОС — Linux, Unix, Microsoft Windows NT, Windows CE. Однако в конце 90-х гг. процессоры архитектуры х86 сделали резкий рывок в производительности, и количество продаваемых станций резко упало. В результате компания MIPS Technologies практически полностью покинула рынок рабочих станций и настольных компьютеров и сосредоточила свои усилия на продаже лицензий на IP-ядра собственной архитектуры для рынка встраиваемых систем.

Эволюция архитектуры

С момента своего появления в 1985 г. архитектура MIPS непрерывно развивалась. Вслед за спецификацией MIPS-I, на основе которой разработаны процессоры R2000 и R3000, появилась спецификация MIPS-II, реализованная в микропроцессоре R6000. В 1992 г. была представлена 64-битная версия архитектуры MIPS-III, впервые реализованная в микропроцессорах серии R4000, на смену которой пришли версии MIPS-IV (микропроцессор R8000) и MIPS-V. Такое обилие версий архитектуры создавало путаницу у потребителей и проблемы с переносом системного ПО, поэтому в 1999 г. MIPS Technologies представила две базовые спецификации архитектуры, покрывающие все предыдущие: MIPS32, основанную на MIPS-I,-II c элементами MIPS-III, которой должны соответствовать все новые 32-разрядные микропроцессоры, и архитектуру MIPS64, являющуюся надмножеством MIPS32 и распространяющуюся на 64-разрядные микропроцессоры.
Помимо этого, для повышения потребительских свойств процессорных ядер был разработан целый набор расширений архитектуры, оптимизированный для определенного класса задач (ASE — Application Specification Ex­ten­sion). Ниже приведено краткое описание данного набора расширений [2].
MIPS 3D — является расширением архитектуры MIPS64, предназначенным для работы с 3D-графикой. Команды этого расширения позволяют ускорить работу алгоритмов цифровой обработки сигналов над данными с плавающей запятой.
MIPS16e — представляет собой подмножество 16-разрядных команд для снижения требований к памяти. Расширение позволяет разработчикам встраиваемых систем уменьшить размер памяти, требуемой для хранения программ. Экономия может составить до 40% по сравнению с традиционной 32-рязрядной реализацией. Кроме этого, применение MIPS16e позволяет снизить энергопотребление, повышает вероятность попадания в кэш-память при сохранении общей производительности.
SmartMIPS — данный набор команд создан для поддержки широкого набора алгоритмов шифрования, например RSA, DES, AES, elliptic curve и др., и позволяет реализовать их без дополнительного аппаратного ускорителя, экономя площадь кристалла и общую стоимость.
MIPS MT — это расширение позволяет в полной мере использовать преимущества многопоточной работы. MTI утверждает, что на ряде приложений многопоточность позволяет достичь 90% занятости процессора и обеспечивает до 40% повышения производительности без изменения программного кода при незначительном (около 6—10%) увеличении площади кристалла.
MIPS DSP — это расширение направлено на ускорение обработки сигналов и работы с аудио-/видеоданными. Реализация расширения набора инструкций добавляет всего 5—10% площади кристалла, при этом дает до 300% увеличения производительности ряда приложений.
CorExtend — данная опция предоставляет пользователю возможность самостоятельно расширять стандартный набор команд спецификаций MIPS32 или MIPS64 собственными командами, включение которых производится с помощью системы разработки CoWare’s CORXpert Personality Kit [3]. Данная возможность особенно востребована при построении системы под ограниченный набор задач с определенными алгоритмами работы.

Семейство IP-ядер

На текущий момент компания MIPS Technologies предлагает для лицензирования достаточно большой набор 64- и 32-разрядных IP-ядер [4, 5].
64-разрядное семейство представлено двумя ядрами, появившимися в 2001 г., а именно MIPS64_5K и MIPS64_20K.
Ядро MIPS64_5K поставляется в двух вариантах: MIPS_5Кс без арифметического сопроцессора и MIPS_5Kf, содержащего сопроцессор вещественной арифметики. Реализованное по технологическому процессу 0,13 мкм, это семейство позволяет достичь 350 МГц в наихудшем варианте эксплуатации по температуре и напряжению питания и обеспечивает производительность 1,4 DMIPS/МГц.
Ядро MIPS64_20Kc, в отличие от всех других, поставляемых как синтезируемая RTL-модель (soft-блок), выпускается в виде законченной топологии (hard-блок) и имеет реализации для большинства крупнейших микроэлектронных фабрик. Его арифметический сопроцессор дополнен графическим расширением MIPS 3D. Реализованное по оптимизированному по энергопотреблению технологическому процессу 0,13 мкм, ядро позволяет достичь частоты 533 МГц в наихудших условиях и производительности в 1,7 DMIPS/МГц. На момент выхода на рынок ядро являлось лидером по производительности из всех лицензируемых IP-ядер.
Эти 64-разрядные ядра нашли широкое применение у потребителей, однако за прошедшее с 2001 г. время компания не представила ни одного нового 64-разрядного ядра, направив все усилия на развитие семейства 32-разрядных ядер. В настоящее время данное семейство совершенствуется в нескольких направлениях, как показано на рисунке 1.

 

++++++++++++++++++++++++++++++++++++++++++++++++

Рис. 1. Направление развития 32-разрядных синтезируемых IP-ядер с архитектурой MIPS [5]

В нижнем сегменте представлена группа ядер серии 4К, оптимизированных по площади кристалла и энергопотреблению и обеспечивающих высокую производительность. Серия представлена ядрами MIPS_4KE, MIPS_4KSd и MIPS_M4K. Все ядра этой группы имеют традиционный пятиэтапный конвейер. Ниже приведены отличительные особенности каждого из ядер данного сегмента.
Ядро MIPS32_4K, представленное в 1998 г., предлагается в трех исполнениях: MIPS_4Kp имеет упрощенное устройство умножения и ограниченный по функциям диспетчер памяти MIPS_4Km с ускоренным устройством умножения/деления и MIPS_4Kс с улучшенным диспетчером памяти. В настоящее время предлагается усовершенствованная версия MIPS_4KE, которая отличается от предшественника поддержкой расширения MIPS_16e и возможностью расширения системы команд пользователем.
Ядро MIPS32_4KSd, появившееся в 2001 г., обладает возможностями серии 4КЕ, а также поддерживает расширения SmartMIPS.
Ядро MIPS32_M4K, представленное в 2002 г., имеет встроенный конфигурируемый интерфейс с внешней памятью для систем без кэш-памяти. Эта возможность необходима для устройств, требующих предсказуемое время выполнения в сочетании с малой площадью кристалла.
После 2002 г. развитие нижнего сегмента приостановилось, и акцент сместился на развитие ядер среднего сегмента, в котором предлагаются IP-ядра серий MIPS_24K, MIPS_24KE и MIPS_34K.
Ниже приведены отличительные особенности каждого из ядер данного сегмента.
Ядро MIPS32_24К, представленное в 2004 г. позиционировалось как наиболее производительное в классе 32-разрядных синтезируемых процессорных ядер. В 2005 г. появилась улучшенная версия ядра — MIPS32_24KE, поддерживающая расширение MIPS-DSP. За счет поддержки этого расширения ядро MIPS32_24KE позволяет добиться двукратного повышения производительности на ряде приложений при минимальном увеличении площади и мощности потребления. Ядро представлено в двух версиях — MIPS32_24KEc и MIPS32_24KEf, отличающихся тем, что последняя cодержит арифметический сопроцессор.
Ядро MIPS32_34K, представленное в 2005 г., поддерживает расширение MIPS_MT и позиционируется как первое ядро для встраиваемых применений, реализующее многопоточность, что позволяет повысить общую производительность на 20…40% по сравнению с ядром MIPS32_24K за счет минимального увеличения площади кристалла. Ядро представлено в двух версиях — MIPS32_34Kc и MIPS32_34Kf, отличающихся тем, что последняя cодержит арифметический сопроцессор.
После 2005 г. компания достаточно долго не представляла новых разработок, пока в 2007 г. не объявила о выходе ядра MIPS32_74K, которое позиционировалось как первое в отрасли синтезируемое IP-ядро, преодолевшее рубеж 1 ГГц с использованием только стандартного маршрута проектирования, стандартных библиотек и стандартного техпроцесса 65 нм. Суперскалярное ядро MIPS32_74К реализует расширение MIPS_DSP, что позволяет увеличить производительность на задачах сигнальной обработки до 60% по сравнению с ядрами, не использующими подобного расширения. При реализации по стандартному техпроцессу 65 нм TSMC достигнута частота 1,1 ГГц и производительность на целочисленных операциях 2,0 DMIPS/МГц. Ядро представлено в двух версиях — MIPS32_74Kc и MIPS32_74Kf, отличающихся тем, что последняя поддерживает операции с плавающей запятой.
И наконец, в 2008 г. было объявлено о выходе ядра MIPS32_1004К, которое компания называет когерентной процессорной системой (Coherent Processing System). Она позиционируется как первая в отрасли многопоточная процессорная IP-система, которая может содержать 1—4 ядра, каждое из которых поддерживает многопоточный режим работы. При реализации по стандартному техпроцессу 65 нм TSMC достигнута частота 800 МГц и производительность на целочисленных операциях 1,6 DMIPS/МГц на каждое ядро. Система представлена в двух версиях — MIPS32_1004Kc и MIPS32_1004Kf, отличающихся тем, что последняя поддерживает операции с плавающей запятой.
В таблице 1 представлены основные характеристики 32-разрядных синтезируемых IP-ядер, предлагаемых к лицензированию.

Табл. 1. Характеристики IP-ядер с архитектурой MIPS32

Модель

4K

4KSd

4KE

M4K

24К

24KЕ

34K

74K

1004K

Год выпуска

1998

2001

2001

2002

2004

2005

2005

2007

2008

Длина конвейера

5

8

9

15

9

MIPS DSP

  —

+

+

+

+

MIPS MT

SmartMIPS

+

MIPS 16e

  +

CoreExtend

Достигаемая частота, МГц (процесс, нм)

167 (180)

211 (130)

420 (90)

200…414 (90)

730 (65)

775 (65)

700 (65)

1100 (65)

800 (65)

Потребляемая мощность, мВт/МГц

1,3…2,2

0,29

0,15…0,26

0,04…0,15

0,21

0,22

0,3

0,53

0,5/ядро

Занимаемая ядром площадь, мм2 (процесс, нм)

1,4…2,5 (180)

1,0 (130)

0,65…1,2 (90)

0,12…0,53 (90)

0,83 (65)

0,886 (65)

0,92 (65)

1,7 (65)

3,8 (65)

Производительность, DMIPS/МГц

1,5

1,6

1,5

1,55

1,7…1,9

2,0

1,55/ядро

Достижения лицензиатов MIPS

Лицензии на синтезируемые IP-ядра с MIPS-архитектурой приобрели более 250-ти компаний по всему миру, среди которых имеются ведущие производители электронных приборов. Ниже приводится информация по наиболее значимым на текущий момент достижениям MIPS-лицензиатов.

Компания Broadcom Corporation

Компания Broadcom Corporation [6] входит в 20 крупнейших мировых поставщиков полупроводниковых приборов с оборотом почти 4 млрд. долл. в 2007 г. Компания является не только разработчиком микропроцессоров, но также и производителем конечного оборудования. Основной рынок — высокопроизводительное коммуникационное и сетевое оборудование, а также сотовые телефоны. На сегодняшний день самым мощным микропроцессором в распоряжении компании является BCM1480, разработанный в 2004 г. и включающий в себя 4 ядра с архитектурой MIPS64, работающих на частоте до 1,2 ГГц, и набор периферийных устройств, ориентированных на коммуникационные и сетевые применения. Следует отметить, что данный процессор не обновлялся с 2004 г., что для микроэлектронной отрасли — достаточно большой интервал.

Компания Cavium Networks

Компания Cavium Networks [7] с годовым оборотом около 100 млн. долл. представляет на рынок несколько семейств микропроцессоров собственной разработки на базе MIPS-архи­тектуры для сетевых и коммуникационных применений, систем хранения данных и защиты информации. Среди клиентов компании — более 100 потребителей, включая всех ведущих производителей сетевого и коммуникационного оборудования.
Наибольшую производительность предоставляют микропроцессоры семейства OCTEON PLUS. Флагман семейства — разработанный в 2007 г. микропроцессор CN5860 — содержит 16 суперскалярных ядер с архитектурой MIPS64, работающих на частоте до 900 МГц, что обеспечивает производительность до 28,8 млрд операций в секунду. Помимо этого кристалл содержит аппаратные реализации алгоритмов шифрования, компрессии/декомпрессии, ускорения протокола TCP, средства обеспечения качества передачи пакетов (QoS).

Компания RMI Corporation

Компания RMI Corporation [8, 9], ранее известная как Raza Microelectronics, Inc., является одним из наиболее успешных лицензиатов MIPS. Компания специализируется на производстве микропроцессоров для широкого спектра встраиваемых устройств, в т.ч. для сетевого оборудования, устройств шифрования данных, коммутаторов беспроводного доступа и т.д.
Компания развивает несколько семейств MIPS-процессоров, среди которых можно выделить семейство многоядерных многопоточных микропроцессоров серии XLR собственной разработки, позиционируемых для сетевых применений, и семейство микропроцессоров серии Alchemy, более ориентированное на мультимедийные приложения.
Семейство микропроцессоров Al­che­my досталось RMI в 2006 г. от компании AMD, которая, в свою очередь, купила его у компании Alchemy Semiconductor. Базовый микропроцессор Au1200 содержит 32-разрядное MIPS-ядро, блок DSP для работы с видеоинформацией и широкий набор периферийных устройств. Максимальная частота 500 МГц, при этом потребление составляет всего 500 мВт. Основное применение — персональные медиаплееры и цифровые медиа адаптеры.
Наиболее мощный представитель семейства XLR — разработанный в 2005 г. микропроцессор XLR700 — содержит во-
семь ядер с архитектурой MIPS64, каждое из которых может обслуживать четыре потока задач, работающих на частоте до 1,2 ГГц. Также микропроцессор содержит широкий набор устройств, таких как развитый блок шифрования данных, несколько портов гигабитного Ethernet и т.д.

Компания SiCortex

В конце 2007 г. ранее малоизвестная компания SiCortex, Inc. объявила о выпуске настольного суперкомпьютера SC5832 на основе микропроцессора с архитектурой MIPS64 собственной разработки [10]. В состав микропроцессора входят шесть 64-разрядных ядер, два контроллера памяти и контроллер внешнего интерфейса PCI Express. Рабочая частота — 500 МГц, потребляемая мощность 15 Вт, что на порядок меньше традиционных для таких систем 250 Вт. Суперкомпьютер SC5832 способен выполнять шесть трлн. операций в секунду, занимая при этом кабинет втрое меньшего размера и потребляя в 10 раз меньше энергии, чем традиционный кластер той же производительности.

Клоны архитектуры — Lexra, Loongson

Архитектура MIPS оказалась настолько удачной, что нашлись желающие разделить успех лидера. В 1997 г. компания Lеxra разработала собственное IP-ядро, способное выполнять все команды архитектуры MIPS-I, за исключением четырех команд невыровненной передачи lwl, lwr, swl, swr. Реализовать их было невозможно без нарушения патента 4,814,976, которым владела MIPS Technologies. Ядро было устроено таким образом, что когда подобные команды встречались в программном коде, происходило прерывание и команда эмулировалась программными средствами. Данное ядро было представлено общественности как MIPS-совместимое. Вначале бизнес Lexra развивался достаточно успешно, и ее IP-ядра, которые по многим параметрам превосходили аналогичные ядра MTI и стоили существенно дешевле, приобрели около 40 компаний, наиболее известные из которых — Realtek и Analog Devices [11]. Естественно, MIPS Technologies не могла спокойно наблюдать за потерей рынка и инициировала ряд судебных разбирательств. Суд признал правоту владельца, и Lexra была вынуждена уйти из данного бизнеса, а ее лицензиаты должны были приобрести лицензии MIPS Technologies [12].
Другим примером разработки микропроцессора, использующего систему команд MIPS без покупки лицензии у владельца, можно назвать семейство микропроцессоров китайской разработки серии Loongson (также встречаются названия Godson и Dragon). В 2002 г. компания BLX IC Design Corporation, созданная на базе Института компьютерной технологии Китайской Академии наук, разработала 32-разрядный MIPS-подобный микропроцессор Loongson-1 с частотой 266 МГц. Этот микропроцессор соответствовал 32-разрядному подмножеству MIPS-III архитектуры за исключением четырех команд невыровненной передачи, защищаемых патентом №976. Семейство достаточно бурно развивается: в настоящий момент выпускается 64-разрядная версия под именем Godson-2F с частотой 1,2 ГГц. Готовится выпуск следующего поколения микропроцессора, названного Godson-3, который, как ожидается, будет содержать четыре 64-разрядных MIPS-ядра, работающих на частоте 1,0 ГГц при технологии изготовления 65 нм. Производительность кристалла оценивается в 80 ГФлопс при ориентировочном энергопотреблении всего 20 Вт. Предполагается, что этот микропроцессор станет основой масштабной программы китайского правительства по созданию к 2010 г. суперкомпьютера производительностью более 1 ПФлопс.
Поскольку компания BLX не имела лицензии от владельца архитектуры, утверждая, что не нарушает патентов, а MTI активно возражала, легальный статус данной серии был не вполне понятен компьютерной общественности, учитывая опыт Lexra. Этот вопрос постоянно сопровождал все публикации по данной серии микропроцессоров. В итоге в марте 2007 г. компания STMicroelectronics купила лицензию у MIPS Technologies и заключила соглашение с BLX, по которому STMicroelectronics будет заниматься производством и распространением микропроцессоров семейства Godson от своего имени [13].
Следует отметить, что срок действия патента №976 истек 23-го декабря 2006 г., и это обстоятельство формально позволяет проектировать и продавать процессоры с архитектурой MIPS-I без лицензии, при условии, что они не будут позиционироваться как MIPS-совместимые, чтобы не нарушать права на торговую марку. Однако в настоящий момент таких прецедентов не известно. Также следует иметь в виду, что ряд новых команд, введенных в спецификации MIPS32, MIPS64, а также в расширения архитектуры, имеет основательную защиту патентами MTI, что делает прямое копирование современной архитектуры MIPS невозможным.

Рыночные позиции и перспективы

Отличительным свойством MIPS-архитектуры является способность обеспечить высокую производительность при относительно простом ядре, что означает возможность реализации с меньшим размером кристалла и, соответственно, с меньшей стоимостью конечного продукта. Благодаря этому, а также наличию богатого набора программного обеспечения, MIPS-процессоры нашли широкое применение на рынке встраиваемых систем. Так, в 1997 г. микропроцессоры с MIPS-архитектурой доминировали на рынке 32-разрядных RISC-микропроцессоров для встроенных систем с объемом производства в 44 млн. шт., почти в два раза превосходя ближайшего конкурента — семейство SuperH (23,5 млн. шт.) и более чем в четыре раза — семейство ARM (10 млн. шт.) [14]. Из наиболее известных успешных проектов с применением MIPS-процессоров можно назвать игровые консоли Nintendo 64, Sony PlayStation, Sony PlayStation 2 и Sony PSP, которые долгие годы обеспечивали MTI солидные лицензионные отчисления.
Однако к настоящему времени архитектура с объемом выпуска в 2007 г. порядка 400 млн. кристаллов в год [15] уступила место лидера архитектуре ARM, имеющей обьем выпуска в 2007 г. порядка 3 млрд. кристаллов [16]. Последняя захватила наиболее массовые сегменты рынка устройств со сверхнизким энергопотреблением, таких как сотовые телефоны, MP3-плееры, GPS-приемники и т.д. Тем не менее процессоры с MIPS-архитектурой продолжают лидировать в таких секторах как кабельные и DSL-модемы (95 и 52% рынка, соответственно), кабельные и спутниковые телевизионные приставки (76 и 30% рынка, соответственно), схемы для цифрового ТВ (59% рынка), DVD-проигрыватели (70%), сетевые концентраторы и коммутаторы (40%), принтеры (62%) и т.д. [17].
Для усиления своих позиций компания предпринимает серьезные шаги по расширению бизнеса. Так, в конце 2007 г. была заключена сделка по покупке португальской компании Chipidea Microelectronica, специализирующейся в области разработки аналоговых и цифро-аналоговых IP-ядер. С этого момента MIPS Technologies позиционирует себя как мирового лидера в данном сегменте рынка, к которому относятся радиочастотные приемники, блоки управления энергопитанием, аналого-цифровые и цифро-аналоговые преобразователи, комплексные решения для устройств WiMax, WiFi, контроллеров Blue-ray и т.д. [18].
В настоящее время компания MIPS Technologies считает своим основным конкурентным преимуществом то, что пользователю предлагается не просто набор IP-ядер, а целая экосистема, объединяющая в едином маршруте проектирования процессорные IP-ядра с возможностью расширения набора команд, аналоговые и цифро-аналоговые IP-блоки, широчайший набор прикладного и системного ПО, стандартные средства разработки программных и аппаратных решений, что в итоге позволяет разработчикам создавать современные конкурентоспособные изделия в короткие сроки, с меньшим риском и за меньшую стоимость [17].

 

Литература

Оставьте отзыв

Ваш емейл адрес не будет опубликован. Обязательные поля отмечены *