SPARC (Scalable Processor ARChitecture — масштабируемая архитектура процессора) — архитектура RISC-микропроцессоров, первоначально разработанная в 1985 году компанией Sun Microsystems.
Архитектура SPARC является открытой. Это значит, что: Архитектура системы команд SPARC опубликована как стандарт IEEE 1754—1994; Спецификации SPARC доступны по лицензии любой компании или частному лицу и дают возможность разрабатывать свои собственные решения; Развитием архитектуры SPARC занимается независимая некоммерческая организация SPARC International, Inc., основанная в 1989 году. Членство в SPARC International открыто для всех желающих.
Для производства процессоров с архитектурой SPARC достаточно закупить у SPARC International лицензию на архитектуру системы команд (99 $) и разработать свою реализацию архитектуры либо закупить готовую реализацию (что несколько дороже).
Существовало три основные ревизии архитектуры SPARC: версии 7, 8 и 9. Иногда UltraSPARC серии T выделяются как отдельные архитектуры UltraSPARC Architecture 2005 и 2007.
Версия 8 архитектуры SPARC описывает 32-разрядный микропроцессор, тогда как версия 9 — 64-разрядный.
Архитектура SPARCv7 Примерно в 1983—1986 годах в Sun разрабатывался проект «Sunrise». Изначально в рамках проекта создавался сопроцессор для обработки чисел с плавающей запятой для систем на базе процессоров 680x0. Затем было принято решение доработать его до процессора общего назначения, были добавлены чип целочисленного устройства, чипы MMU, ввода-вывода, контроллер памяти. Создание микропроцессорного комплекта было закончено в 1986 году. Перед выпуском в 1987 году первых рабочих станций (Sun 4) с его использованием проект был переименован в SPARC. Архитектура в значительной степени была основана на проектах Berkeley RISC-I и RISC-II; основные отличия от MIPS (Stanford) заключались в регистровом окне и конвейере. При проектировании SunRise в качестве консультанта привлекался профессор Дэвид ПаттерсонDavid Weaver, Introduction to UltraSPARC Architecture // June 2009 slide 3,5-8SPARC Timeline // SPARC International 1984
Позже данная версия архитектуры получила номер SPARC v7 и стала первой публичной версией SPARC.
ISA Sparc v7 (по реализации ERC32).
Краткое описание: Mark Smotherman, , A Programmer’s View of the SPARC Architecture (Version 7)
Архитектура SPARCv8 Архитектура SPARCv8 описана в книге:
Архитектура SPARCv9 Архитектура SPARCv9 описана в книге:
Реализации архитектуры
Реализации SPARCv8 реализации Texas Instruments; реализации v8: MicroSPARC; LEON2 — открытая реализация архитектуры SPARCv8; R100 R150 R500 R500S реализация МЦСТ.
Реализации SPARCv9 Процессоры UltraSPARC; OpenSPARC — открытое RTL-описание на языке Verilog процессора UltraSPARC T1Overview of OpenSPARC Resources SPARC64 — реализация Fujitsu, используется в семействе серверов Primepower; R1000, R2000 — реализация от МЦСТ.
Характеристики микропроцессоров SPARC
Данная таблица содержит спецификации на некоторые процессоры SPARC: тактовую частоту (МГц), версию архитектуры, год выпуска, количество потоков (потоков на ядро, умноженных на количество ядер), технологический процесс (микрометров), количество транзисторов (миллионов), площадь кристалла (кв. мм), количество контактов, потребляемую мощность (ватт), напряжение питания и размеры кэшей данных, инструкций, а также L2 и L3 (килобайт).
Название Модель Частота, (МГц) Версия архитектуры Год Всего потоков Техн. процесс, (µm) Транзисторов, (млн) Площадь кристалла, (мм²) Кол-во контактов Потребляемая мощность, (Вт) Напряжение питания, (В) L1 D-кэш, (Кб) L1 I-кэш, (Кб) L2 кэш, (Кб) L3 кэш, (Кб)SPARC(различные).14,28—40V71987-19921×1=10,8—1,3~0,1—1,8--160—256----0—128 (unified)nonenoneMB8690016,67V719871×1=11,2------------------microSPARC I (Tsunami)TI TMS390S1040—50V819921×1=10,80,8225?2882,5524nonenoneSuperSPARC I (Viking)TI TMX390Z50 / Sun STP102033—60V819921×1=10,83,1--29314,3516200-2048noneSPARCliteFujitsu MB8683x66—108V8E19921×1=1------144—176--2,5/3,31—161—16nonenonehyperSPARC (Colorado 1)Ross RT620A40—90V819931×1=10,51,5------5?08128-256nonemicroSPARC II (Swift)Fujitsu MB86904 / Sun STP101260—125V819941×1=10,52,323332153,3816nonenonehyperSPARC (Colorado 2)Ross RT620B90—125V819941×1=10,41,5------3,308128-256noneSuperSPARC II (Voyager)Sun STP102175—90V819941×1=10,83,1299--16--16201024-2048nonehyperSPARC (Colorado 3)Ross RT620C125—166V819951×1=10,351,5------3,308512-1024noneTurboSPARCFujitsu MB86907160—180V819951×1=10,353,013241673,51616512noneUltraSPARC I (Spitfire)Sun STP1030143—167V919951×1=10,475,2315521303,31616512-1024noneUltraSPARC I (Hornet)Sun STP1030200V919981×1=10,425,2265521--3,31616512-1024nonehyperSPARC (Colorado 4)Ross RT620D180—200V819961×1=10,351,7------3,31616512noneSPARC64Fujitsu (HAL)101—118V919951×1=10,4--297+163+142286503,8128128----SPARC64 IIFujitsu (HAL)141—161V919961×1=10,35--202+103+84286643,3128128----SPARC64 IIIFujitsu (HAL) MBCS70301250—330V919981×1=10,2417,6240----2,564648192--UltraSPARC IIs (Blackbird)Sun STP1031250—400V919971×1=10,355,4149521252,516161024 or 4096noneUltraSPARC IIs (Sapphire-Black)Sun STP1032 / STP1034360—480V919991×1=10,255,4126521211,916161024—8192noneUltraSPARC IIi (Sabre)Sun SME1040270—360V919971×1=10,355,4156587211,91616256—2048noneUltraSPARC IIi (Sapphire-Red)Sun SME1430333—480V919981×1=10,255,4--587211,916162048noneUltraSPARC IIe (Hummingbird)Sun SME1701400—500V920001×1=10,18 Al----370131,5-1,71616256noneUltraSPARC IIi (IIe+) (Phantom) --550—650V920021×1=10,18 Cu----37017,61,71616512noneSPARC64 GPFujitsu SFCB81147400—810V920001×1=10,1830,2217----1,81281288192--SPARC64 IVFujitsu MBCS80523450—810V920001×1=10,13----------1281282048--UltraSPARC III (Cheetah)Sun SME1050600V920011×1=10,18 Al293301368531,664328192noneUltraSPARC III (Cheetah)Sun SME1052750—900V920011×1=10,13 Al29--1368--1,664328192noneUltraSPARC III Cu (Cheetah+)Sun SME10561002—1200V920011×1=10,13 Cu292321368801,664328192noneUltraSPARC IIIi (Jalapeno)Sun SME16031064—1593V920031×1=10,1387,5206959521,364321024noneSPARC64 V (Zeus)Fujitsu1100—1350V9/JPS120031×1=10,13190289269401,21281282048--SPARC64 V+ (Olympus-B)Fujitsu1650—2160V9/JPS120041×1=10,094002972796511281284096--UltraSPARC IV (Jaguar)Sun SME11671050—1350V920041×2=20,136635613681081,35643216384noneUltraSPARC IV+ (Panther)Sun SME1167A1500—2100V920051×2=20,092953361368901,16464204832768UltraSPARC T1 (Niagara)Sun SME19051000—1400V9 / UA 200520054×8=320,093003401933721,38163072noneSPARC64 VI (Olympus-C) Fujitsu2150—2400V9/JPS220072×2=40,09540422--120--1281285120noneUltraSPARC T2 (Niagara 2)Sun SME1908A1000—1400V9 / UA 200720078×8=640,0655033421831951,1—1,58164096noneUltraSPARC T2 Plus (Victoria Falls)Sun SME1910A1200—1600V9 / UA 2007 2008 8×8=640,0655033421831 — — 8164096noneUltraSPARC T2Sun T52401200-1600V9 / UA 2007 2008 ???58,45— ? — ———noneSPARC64 VII (Jupiter) Fujitsu2400—2880V9/JPS2(?)20082×4=80,065600445--135--64646144noneUltraSPARC RK (Rock)Sun SME18322300V9 / UA__?__20092×16=320,065?3962326??3232 + 8 predecoded bits2048?SPARC64 VIIIfx (Venus)??V9TBA8 ядер0,045??????325120?SPARC T3 (Rainbow Falls)Oracle1650V920108x16=1280,040???????6144?R1000 (1891ВМ6Я)МЦСТ1000V9/JPS120114 ядра0,090180128115620 (14)1,0; 1,8; 2,532162048нет Название Модель Частота, (МГц) Версия архитектуры Год Всего потоков Техн. процесс, (µm) Транзисторов, (млн) Площадь кристалла, (мм²) Кол-во контактов Потребляемая мощность, (Вт) Напряжение питания, (В) L1 D-кэш, (Кб) L1 I-кэш, (Кб) L2 кэш, (Кб) L3 кэш, (Кб)
Операционные системы, работающие на SPARC SunOS Solaris OpenSolaris FreeBSD OpenBSD NetBSD MirOS BSD NEXTSTEP RTEMS Linux Inferno OS
В 1993 году компания Intergraph предприняла попытку портировать Windows NT на архитектуру SPARC, но позже проект был отменён.
29 апреля 2014 года было опубликовано сообщение, что поддержка архитектуры SPARC удалена из на тот момент тестируемой ветки Debian — 8.0. Возможно, она будет удалена и из unstable ветки.
Реализации с открытым кодом LEON, 32-битная однопоточная реализация SPARC V8, разработанная исключительно для использования в космосе. Исходный код написан на VHDL и лицензирован под GPL. OpenSPARC T1, выпущенная в 2006, 64-битная, 32-поточная реализация, удовлетворяющая UltraSPARC Architecture 2005 и SPARC V9. Исходный код написан на Verilog и лицензирован под разными лицензиями. OpenSPARC T2, выпущенная в 2008, 64-битная, 64-поточная реализация, удовлетворяющая UltraSPARC Architecture 2007 и SPARC V9. Исходный код написан на Verilog и лицензирован под разными лицензиями.
Суперкомпьютеры По состоянию на июнь 2011 самым быстрым суперкомпьютером в рейтинге TOP500 признан «K computer» компании Fujitsu, он собран из 68 544 восьмиядерных процессоров SPARC64 VIIIfx и его мощность составляет 8,16 Пфлопс, пиковая — 8,77 Пфлопс. Интересно, что построение этой машины в таком варианте ещё не было завершено. Так, в ноябре 2011 года K Computer был достроен и количество процессоров достигло 88 128, а производительность системы на тесте Linpack достигла 10,51 Пфлопс. Таким образом, «K computer» стал первым в истории суперкомпьютером, преодолевшим рубеж в 10 Пфлопс. Пиковое быстродействие комплекса достигает 11,28 квадриллиона операций с плавающей запятой в секунду.
По состоянию на июль 2009 только один суперкомпьютер на процессорах SPARC включён в список самых быстрых компьютеров TOP500. Находящийся на 28-м месте суперкомпьютер Fujitsu FX1 использует четырёхъядерные микропроцессоры SPARC64 VII 2,52 ГГц и имеет производительность 121 282 GFLOPS. Он установлен в Японском агентстве аэрокосмических исследований. В ноябре 2002 года микропроцессоры SPARC использовались в 88 из 500 (17,60 %)Processor Family share for 11/2002 | TOP500 Supercomputing Sites самых мощных компьютеров, однако с тех пор потеряли популярность, будучи заменены на процессоры от IBM, Intel и AMD.
См. также RISC OpenSPARC Sun Microsystems
Примечания Комментарии
Источники
Ссылки
SunSource.net SPARC International, Inc. SPARC-HOWTO
FX1 Key Features & Specifications A Third-Generation 65nm 16-Core 32-Thread Plus 32-Scout-Thread CMT SPARC(R) Processor Technical SPARC CPU Resources
Категория:SPARC Категория:Sun Microsystems