Loongson (кит. трад. 龍芯, упр. 龙芯, пиньинь Lóngxīn, палл. Лунсинь, драконовое ядро)[1] — линейка MIPS-совместимых процессоров общего назначения, а также название китайской бесфабричной компании (Loongson Technology), которая их разрабатывает. Альтернативное название процессоров — Godson[2], происходит от технического наименования[3].
В ранних реализациях процессоров не хватало четырех инструкций запатентованных MIPS Technologies (US4814976A, Unlighted Load Store), таким образом Китай пытался избежать юридических проблем[4][5].
Позже, соглашение с американской MIPS Technologies было заключено Институтом компьютерных технологий Китайской академии наук. Европейская STMicroelectronics приобрела лицензию MIPS у американцев для Loongson[6][7][8], в результате чего процессоры могли позиционироваться, как основанные на MIPS и MIPS-совместимые, а не просто MIPS-подобные. В дальнейшем китайский институт купил лицензии на использование MIPS32 и MIPS64 напрямую у MIPS Technologies[9].
На базе процессоров Loongson планировалось собирать персональные компьютеры Longmeng и Sinomanic.
Разработка процессоров Godson, основанных на архитектуре MIPS, была начата под руководством Ху Вэйу[кит.] (Hu Weiwu) Институтом компьютерных технологий Китайской академии наук в 2001 году. Целью проекта называли создание «высокопроизводительных микропроцессоров общего назначения»[2], это была часть плана «Сделано в Китае», который должен был быть реализован к 2025 году[10]. Разработку пытались финансово поддержать в 10-й и 11-й «пятилетках» Китая[11].
Исследования[12] показали, что процессор Godson-2 (2005) являлся попыткой скопировать популярный американский процессор MIPS R10000 1995 года от компании MIPS Technologies, но производитель не имел лицензии на реализацию архитектуры MIPS.
В марте 2006 года на выставке Computex 2006 в Тайбэе было объявлено о работах по созданию на основе процессора Godson-2 прототипа персонального компьютера Longmeng («Сон дракона»). В сентябре 2006 года было объявлено о разработке версии Loongson-2E (Godson-2E), поддерживающей набор команд 64-битной MIPS III и работающей на частоте 1 ГГц. Директор Института компьютерных технологий Академии наук КНР Ли Гоцзе (李国杰) рассказывал журналистам, что скачок в возможностях между вариантами 1 и 2В процессора был двукратным, а между 2В, 2С и 2Е — трёхкратным. Он заявлял, что в среднем возможности их процессора удваиваются каждый год, то есть в 2 раза быстрее, чем по «Закону Мура», и что КНР сумеет «объединить серию небольших прорывов в один большой скачок».
В 2010 году компания была коммерциализирована как отдельная организация[10]. Поскольку Loongson является бесфабричной, процессоры для неё изготавливает и продает европейская компания STMicroelectronics[10][13], она же первоначально и приобрела для Loongson лицензию у MIPS Technologies[7].
В 2022 году Китай ввёл запрет на поставки процессоров Loongson в Россию и другие страны[14].
Первое поколение, Loongson I, представляет собой процессор с 32-битной MIPS архитектурой, работающий на частоте 266 МГц. Ориентирован на встраиваемые системы, например, такие как кассовые терминалы, где не требуется высокая производительность и 64-разрядность. Впервые увидел свет в 2002 году.
Второе поколение, Loongson II — это семейство MIPS III совместимых[3][15] 64-разрядных процессоров. Изначально работал на частоте 500 МГц. Версия процессора 2Е (2006) рассчитана на увеличенную тактовую частоту 1 ГГц. Версия процессора Godson-2F (2007) работает на частоте 1,2 ГГц.
26 декабря 2007 года Китай объявил о намерении построить суперкомпьютер на основе этих процессоров. Команда создателей под руководством академика Чэнь Голяна (陈国良), профессора Университета науки и техники Китая, планировала использовать 330 процессоров Godson-2F. Размеры суперкомпьютера должны были приблизительно соответствовать размерам бытового холодильника, стоимость не должна была превышать 800 000 юаней.
Поздние версии процессоров получили поддержку MIPS64 благодаря общему с Loongson 3 ядру GS464[16].
Поколение Loongson III — это первые процессоры Loongson, имеющие несколько ядер[17].
Процессоры были изначально разработаны для использования LoongISA - т.е. MIPS64 ISA с дополнительными расширениями[17]. Дизайнеры также попытались оптимизировать двоичную трансляцию кода архитектуры Intel x86[3].
Архитектура MIPS64 Release 2 с расширенным набором инструкций была реализована[16][18] в процессорах Loongson 3A2000 (2015 год) в рамках ядра GS464E[16].
LoongArch была продемонстрирована в 2021 году с выходом Loongson 3 5000 серии. Разработчик из компании Loongson описывает[19] её как RISC архитектуру «немного похожую на MIPS или RISC-V. Она включает в себя урезанную 32-битную (LA32R), стандартную 32-битную (LA32S) и 64-битную (LA64) версии».
LoongArch часто называют форком архитектуры MIPS64r6 из-за отсутствия изменений в списках инструкций[20][21][22].
Издание The Register в ноябре 2021 предположило, что компания Loongson взяла части архитектур MIPS и RISC-V, а также дополнительные инструкции, и смешала их в гибридную архитектуру для процессора 3A5000[23].
В конце 2023 года вышли процессоры Loongson 4 поколения. Обновление принесло удвоение максимального количества ядер, увеличение объёма кэш памяти, существенное увеличение производительности.
В 2024 году анонсирован выход процессоров Loongson 5 поколения, выпуск в 2025 году. Обновление принесёт удвоение максимального количества ядер, рост частот, увеличение производительности, переход на более современный техпроцесс 7 нанометров, возможно внедрение более современного типа памяти DDR5.
Имя | Модель | Частота [МГц] |
Архитектура Версия |
Год | Ядер | Процесс [нм] |
Транзисторов [млн.] |
Размер кристалла [мм²] |
Потребление [Вт] |
Кэш L1I/L1D [КБ] |
Кэш L2 [КБ] |
Кэш L3 [MB] |
Производительность |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Godson-1 | 1 | 200 | MIPS 32-bit | 2002 | 1 | 180 | 4 | 18,8 | 1 | 8/8 | нет | нет | 19/25 [SPEC CPU2000] |
Godson-2 | 2B | 250 | MIPS-III 64-bit | 2003 | 1 | 180 | 32 | 32 | 3 | 32/32 | нет | нет | 52/58 [SPEC CPU2000] |
2C | 450 | MIPS-III 64-bit | 2004 | 1 | 180 | 13.5 | 41,54 | 41.5 | 64/64 | нет | нет | 159/114 [SPEC CPU2000] | |
STLS2E | 1000 | MIPS-III 64-bit | 2006 | 1 | 90 | 47 | 36 | 7 | 64/64 | 512 | нет | 503/503 [SPEC CPU2000] | |
STLS2F | 1200 | MIPS-III 64-bit | 2007 | 1 | 90 | 51 | 43 | 5 | 64/64 | 512 | нет | -- | |
L2G | 1000 | MIPS64 | 2010 | 1 | 65 | -- | 53,54 | 4 | 64/64 | 1024 | нет | -- | |
Godson-3 | STLS3? | 1000 | MIPS64 | 2009 | 4 | 65 | 400+ | 173,8 | 10 | 64/64 | 2048 | нет | -- |
Loongson 3A1000[24] | STLS3? | 1000 | MIPS64 (GS464) | 2010 | 4 | 65 | -- | -- | 15 | 64/64 | 4096 | нет | 16 GFLOPS пиковой производительности[24] |
Godson-3b[25] | STLS3? | 1000 | MIPS64 | 2011 | 8 | 65 | 600+ | 300 | 40 | 64/64 | 2x2048 | нет | 128 GFLOPS пиковой производительности |
Loongson 3B1500[25][26] | 1200 | MIPS64 (GS464) | 2015 | 8 | 32 | 1140 | 182 | 30/60[27] | 64/64 | 8x128 | 8 | 150 GFLOPS пиковой производительности[26] | |
Loongson 3A2000[28][29] | 800-1000 | MIPS64 (GS464E) | 2014 | 4 | 40 | -- | -- | 15 | 64/64 | 4х256 | 4 | 16 GFLOPS пиковой производительности[29] | |
Loongson 3B2000[30] | 800-1000 | MIPS64 (GS464E) | 2014 | 4 | 40 | -- | -- | 15 | 64/64 | 4х256 | 4 | До 16 GFLOPS | |
Loongson 3A3000(3B3000)[31][32] | 1350-1500 | MIPS64 (GS464E) | 2016 | 4 | 28 | -- | -- | 30(30) | 64/64 | 4х256 | 8 | До 24 GFLOPS[31] 11 int / 10 fp по тесту SPEC CPU2006[33] | |
Loongson 3A4000(3B4000)[34][35] | 1500-2000 | MIPS64 (GS464v) | 2019 | 4 | 28 | 64 | -- | 30-50[36] | 64/64 | 4х256 | 8 | До 128 GFLOPS на частоте 2 ГГц[34] ~20 очков по SPEC CPU2006[37] | |
Loongson 3A5000(3B5000)[38] | 2000-2500 | loongarch64 (GS464V) | 2021 | 4-32 | 12 | -- | 142 | 35-300 | 64/64 | 4x256 | 16 | До 160 GFLOPS на частоте 2.5 ГГц | |
Loongson 3C5000L (3C5000L-LL) | 2000-2200 | loongarch64 (GS464V) | 2021 | 16 | 12 | -- | 529 | 130 | ? | 32 | 560 GFLOPS | ||
Loongson 3A6000(3E6000) | 2000-2500 | loongarch664 | 2023 | 4-64 | 12 | -- | 116 | 30-80 | 256 | 256 | 16 | 240 GFLOPS - 3,8 TFLOPS(?) | |
Loongson 3A7000(3E7000) | 2500-3500 | loongarch664 | 2025 | 4-128 | 7 | -- | -- | -- | -- | -- | -- | 300 GFLOPS - 9,6 TFLOPS(?) |
Следует заметить, что Godson несовместим с набором команд x86, и использует модифицированный набор MIPS, с заменой некоторых команд на аналогичные, разработанные Институтом компьютерных технологий.
Для работы на этом процессоре были портированы Debian GNU/Linux, gNewSense, Gentoo Linux, Red Flag Linux, NetBSD[39], OpenBSD[40]. Велась работа по подготовке версии Slackware Linux; также в рамках проекта Google Summer of Code 2010 закончилась работа по портированию FreeBSD[41][42].
С некоторой информацией о практическом использованием можно ознакомиться в блогах «My CPU is Loongson»[43] и «CinnamonPirate»[44].
Операционные системы, спроектированные для работы только на архитектуре x86, на Godson работать не могут (десктопные операционные системы Microsoft, такие как MS-DOS или Microsoft Windows). Тем не менее, операционная система Windows CE, ориентированная на компактные и встраиваемые устройства, была портирована на процессор[45].