SPARC
SPARC (Scalable Processor ARChitecture, масштабируемая архитектура процессора) — это архитектура системы команд (ISA) с сокращённым набором команд (RISC), разработанная компанией Sun Microsystems в 1985 году. SPARC ориентирована на высокопроизводительные вычисления, серверы и рабочие станции, отличается высокой масштабируемостью, поддержкой многопроцессорности и открытостью спецификаций. Архитектура была одной из ключевых в эпоху расцвета Unix-систем и оказала значительное влияние на развитие RISC-процессоров.
История
Разработка и первые реализации
Архитектура SPARC была создана в 1985 году группой инженеров Sun Microsystems под руководством Роберта Гарнера. Первый процессор, реализующий SPARC, — SPARC V7 (MB86900) — был выпущен в 1987 году с тактовой частотой 20–40 МГц. Он использовался в рабочих станциях Sun-4 и серверах Sun. В 1988 году была представлена версия V8, а в 1992 году — 64-разрядная V9, которая стала основой для последующих поколений.
Развитие и лицензирование
В 1989 году Sun Microsystems передала управление архитектурой некоммерческой организации SPARC International, которая занималась стандартизацией и лицензированием. Это позволило другим компаниям, таким как Texas Instruments, Fujitsu, Toshiba и Cypress Semiconductor, производить процессоры SPARC. В 1990-х годах SPARC доминировала на рынке серверов и рабочих станций под управлением Solaris (ОС от Sun). Однако с ростом популярности x86-архитектуры и процессоров Intel Xeon доля SPARC начала снижаться.
Современное состояние
В 2010 году Oracle Corporation приобрела Sun Microsystems. Oracle продолжила выпуск процессоров SPARC (серии T и M) и серверов на их основе, но к 2017 году прекратила разработку новых поколений, сосредоточившись на облачных решениях. В 2019 году Oracle выпустила последний процессор SPARC M8. Сейчас архитектура SPARC используется в основном в унаследованных системах и специализированных нишах, таких как авиакосмическая промышленность, где применяются процессоры LEON (реализация SPARC V8) благодаря устойчивости к радиации.
Архитектура
Основные принципы
SPARC относится к RISC-архитектурам, что подразумевает:
- Фиксированная длина инструкций: все команды имеют длину 32 бита (в V8) или 32/64 бита (в V9).
- Регистровые окна: для ускорения вызова функций используется набор регистровых окон (от 8 до 32), которые перекрываются, позволяя передавать параметры без копирования в память.
- Трёхадресная система: большинство инструкций работают с двумя исходными регистрами и одним регистром результата.
- Конвейерная обработка: архитектура оптимизирована для глубоких конвейеров, что повышает тактовую частоту.
Регистровые окна
Одной из ключевых особенностей SPARC является механизм регистровых окон. Процессор имеет 128–256 физических регистров, разделённых на окна (обычно 8–32). Каждое окно состоит из входных, локальных и выходных регистров. При вызове функции окно сдвигается, что позволяет избежать сохранения регистров в стеке. Это ускоряет вызовы функций, но увеличивает сложность аппаратной реализации.
Система команд
SPARC V9 поддерживает:
- 32-битные и 64-битные целочисленные операции.
- Арифметику с плавающей запятой (IEEE 754).
- Векторные инструкции (VIS — Visual Instruction Set) для мультимедиа.
- Условное выполнение и ветвления с задержками (branch delay slots).
- Поддержка многопроцессорности через когерентность кэша и протоколы MESI.
Классификация процессоров SPARC
По поколениям
- SPARC V7 (1987–1992): 32-битные, до 40 МГц, использовались в Sun-4.
- SPARC V8 (1992–1995): 32-битные, до 200 МГц, поддержка мультипроцессорности, включая microSPARC и SuperSPARC.
- SPARC V9 (1995–настоящее время): 64-битные, поддержка VIS, многопоточности (Chip Multithreading), включает серии UltraSPARC, SPARC T и SPARC M.
По производителям
- Sun/Oracle: UltraSPARC I–III, SPARC T1–T8, SPARC M5–M8.
- Fujitsu: SPARC64 V–IX, использовались в серверах Fujitsu и суперкомпьютерах (например, K computer).
- Texas Instruments: microSPARC, SuperSPARC.
- Cobham Gaisler: LEON (радиационно-стойкие для космоса).
Применение
Серверы и рабочие станции
Основное применение SPARC — серверы и рабочие станции под управлением Solaris. В 1990-х и 2000-х годах они широко использовались в корпоративных центрах обработки данных, финансовых учреждениях и телекоммуникациях. Например, серверы Sun Fire E25K с процессорами UltraSPARC III обеспечивали высокую надёжность и масштабируемость.
Суперкомпьютеры
Архитектура SPARC применялась в ряде суперкомпьютеров. Наиболее известный — японский K computer (2011 год, Fujitsu SPARC64 VIIIfx), который занимал первое место в рейтинге TOP500 с производительностью 10,5 петафлопс. Также SPARC использовалась в системах Cray и NEC.
Космическая и авиационная промышленность
Процессоры LEON (SPARC V8) благодаря радиационной стойкости используются в спутниках, космических аппаратах и авионике. Например, LEON3 применяется в европейских спутниках Galileo и космических телескопах (Gaia). В России процессоры LEON используются в системе ГЛОНАСС и некоторых спутниках.
Встраиваемые системы
SPARC также применяется во встраиваемых системах, требующих высокой производительности и надёжности, например, в сетевых маршрутизаторах и промышленных контроллерах.
Критика и ограничения
- Высокая сложность регистровых окон: механизм окон увеличивает площадь кристалла и энергопотребление, что делает SPARC менее эффективной для мобильных устройств.
- Закрытость экосистемы: несмотря на открытые спецификации, основная часть ПО (Solaris) была проприетарной, что ограничивало распространение.
- Конкуренция с x86: процессоры Intel Xeon и AMD Opteron постепенно вытеснили SPARC из серверного сегмента благодаря более низкой стоимости и большей экосистеме.
- Прекращение разработки Oracle: после 2017 года Oracle не выпускала новых процессоров, что привело к стагнации архитектуры.
Интересные факты
- SPARC стала первой коммерческой RISC-архитектурой, получившей широкое распространение.
- Процессор UltraSPARC T1 (2005 год) был одним из первых коммерческих процессоров с аппаратной многопоточностью (8 потоков на ядро).
- Архитектура SPARC вдохновила создание открытой RISC-V, которая использует некоторые принципы SPARC, но с упрощённой реализацией.
Источники
- SPARC International. «The SPARC Architecture Manual: Version 9». 1994.
- Hennessy, J. L., Patterson, D. A. «Computer Architecture: A Quantitative Approach». 5th ed. Morgan Kaufmann, 2011.
- Sun Microsystems. «UltraSPARC III Processor User’s Manual». 2001.
- Fujitsu. «SPARC64 VIIIfx Processor Specifications». 2010.
- Cobham Gaisler. «LEON3 Processor User’s Manual». 2019.
- Oracle Corporation. «SPARC M8 Processor Overview». 2019.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →