ШАКТИ (микропроцессор)
Общая информация | |
---|---|
Разработано | Индийский технологический институт, Мадрас |
Общие производители | |
Архитектура и классификация | |
Приложение | SoC, платы разработки, программная платформа, Интернет вещей |
Набор инструкций | РИСК-V |
Модели |
|
SHAKTI — это инициатива с открытым исходным кодом группы Reconfigurable Intelligent Systems Engineering (RISE) Индийского технологического института в Мадрасе, направленная на разработку первого местного индийского процессора промышленного уровня. [ 1 ] Цель инициативы SHAKTI включает в себя создание процессора промышленного уровня с открытым исходным кодом, комплексной системы на микросхемах (SoC), плат для разработки и программной платформы на базе SHAKTI . Основным направлением деятельности команды являются исследования архитектуры для разработки SoC, которые будут конкурировать с коммерческими предложениями на рынке по площади, мощности и производительности. Все исходные коды SHAKTI находятся в открытом доступе по модифицированной лицензии BSD . Проект финансировался Министерством электроники и информационных технологий (MeITY) правительства Индии . [ 2 ] [ 1 ]

Процессоры
[ редактировать ]Процессоры SHAKTI основаны на RISC-V ISA. 22 или нм CMOS нм 180 В зависимости от производителя процессоры оснащены узлами с технологией FinFET .
SHAKTI включила в свой план семейство процессоров, предназначенное для различных сегментов рынка. Их можно разделить на «базовые процессоры», «многоядерные процессоры» и «экспериментальные процессоры».
Ядро классов E и C ориентировано на рынки Интернета вещей (IoT), встраиваемых систем и настольных компьютеров . Проект процессора не требует каких-либо лицензионных отчислений и находится в открытом доступе под модифицированной лицензией BSD . [ 3 ]
Ядро E-класса и C-класса реализованы на языке Bluespec SystemVerilog (BSV). [ 1 ]
Проект SHAKTI направлен на создание шести вариантов процессоров на базе RISC-V ISA.
Базовые классы процессоров
[ редактировать ]Е-класс
[ редактировать ]E-класс — это 32/64-битные микроконтроллеры, способные поддерживать все расширения RISC-V ISA, предназначенные для маломощных и маломощных компьютерных приложений. Е-класс представляет собой упорядоченный трехступенчатый конвейер с рабочей частотой менее 200 МГц на кремнии. Он позиционируется как ядро ARM M-класса ( серия Cortex-M ). Он способен работать с операционными системами реального времени, такими как FreeRTOS , Zephyr и eChronos. Сегменты рынка процессоров E-класса поддерживают смарт-карты , устройства IoT, средства управления двигателями и роботизированные платформы. [ 4 ] [ 5 ]
E-arty35T — это SoC, построенный на базе E-класса. E-arty35T SoC представляет собой однокристальный 32-битный микроконтроллер E-класса с оперативной памятью 128 КБ. Он имеет 32 контакта ввода/вывода общего назначения (GPIO) (из которых верхние 16 контактов GPIO предназначены для встроенных светодиодов и переключателей), контроллер прерываний уровня платформы (PLIC), счетчик, 2 последовательных периферийных интерфейса (SPI), 2 универсальных асинхронных приемопередатчика (UART), 1 межинтегральная схема (I2C), 6 широтно-импульсных модуляторов (ШИМ) и встроенный Xilinx Аналого-цифровой преобразователь (X-ADC). [ 6 ]
C-класс
[ редактировать ]C-класс — это класс процессоров с 64-битным контроллером, предназначенный для встраиваемых приложений среднего уровня. Ядро представляет собой высокооптимизированную шестиступенчатую упорядоченную конструкцию с поддержкой MMU и возможностью запуска таких операционных систем, как Linux и Sel4 . Он легко настраивается благодаря поддержке стандартных расширений ISA RV64GC. Он предназначен для вычислительных систем среднего уровня, работающих на частоте более 200–800 МГц. Его также можно настроить до 2 ГГц. Он позиционируется как конкурент ARM Cortex A35/A55. Область применения этого класса варьируется от встроенных систем, управления двигателями, Интернета вещей, систем хранения данных, промышленных приложений до недорогих высокопроизводительных приложений на базе Linux, таких как сети, шлюзы и т. д. [ 4 ] [ 5 ]
C-arty100T — это SoC, построенный на базе C-класса. C-arty100T SoC представляет собой однокристальный 64-битный микроконтроллер C-класса с 128 МБ оперативной памяти DDR3, 16 контактами ввода-вывода общего назначения (GPIO), контроллером прерываний уровня платформы (PLIC), счетчиком, 1 универсальным асинхронным приемником-передатчиком ( UART) и 1 межинтегральная схема (I2C). Он предназначен для рабочих нагрузок приложений среднего уровня с очень низким энергопотреблением и поддерживает дополнительную защиту памяти. [ 7 ]
I-класс
[ редактировать ]I-класс — это 64-битный процессор, предназначенный для вычислительных, мобильных, хранилищ и сетевых платформ. Его функции включают в себя выполнение вне очереди , многопоточность , агрессивное предсказание ветвей , неблокирующий кэш и глубокие этапы конвейера . Рабочая тактовая частота этого процессора составляет 1,5-2,5 ГГц. В настоящее время команда работает над внедрением атомики, прогнозированием зависимости памяти, оптимизацией окна инструкций/планировщика, реализацией некоторых функциональных блоков, анализом/прогнозами производительности, оптимизацией для достижения первой целевой частоты на частоте 1 ГГц на процессоре 22 нм. [ 5 ] [ 8 ] [ 9 ]
Многоядерные процессоры
[ редактировать ]М-класс
[ редактировать ]Процессор мобильного класса с максимум восемью ядрами, причем ядра представляют собой комбинацию ядер классов C и I. Процессоры M-класса предназначены для вычислений общего назначения, серверных и мобильных приложений начального уровня. Рабочая частота составляет до 2,5 ГГц. Он поддерживает выпуски большого размера, четырехпоточную обработку и дополнительную структуру NoC. Процессоры M-класса оптимизированы для различных целей по мощности и производительности. [ 8 ]
S-класс
[ редактировать ]S-класс — это 64-битный суперскалярный вариант , многопоточный предназначенный для настольных и корпоративных серверных приложений. Он поддерживает от 2 до 16 ядер с тактовой частотой около 1,2–3 ГГц. [ 8 ]
H-класс
[ редактировать ]H-класс — это 64-разрядный процессор, предназначенный для высокопараллельных корпоративных приложений, высокопроизводительных вычислений и аналитических приложений. Ядра могут представлять собой комбинацию классов C или I, однопоточная производительность определяет выбор ядра. H-класс имеет до 128 ядер с несколькими ускорителями на каждое ядро. [ 8 ]
Экспериментальные процессоры
[ редактировать ]Это экспериментальные/исследовательские проекты, направленные на разработку процессора с высоким уровнем безопасности и отказоустойчивости.
Т-класс
[ редактировать ]T-класс призван обеспечить дополнительную аппаратную поддержку для защиты информации от атак на основе памяти. Его конструкция ориентирована на унифицированную аппаратную платформу для предотвращения атак на пространственную и временную память. [ 10 ]
F-класс
[ редактировать ]F-класс — это отказоустойчивая версия процессора базового класса. Функции включают в себя резервные вычислительные блоки (такие как DMR и TMR), модули временного резервирования для обнаружения постоянных сбоев, конфигурации ядра с синхронизацией, схемы локализации неисправностей, ECC для критических блоков памяти и резервные структуры шин. [ 11 ]
Ленты
[ редактировать ]два процессора C-класса (кодовые названия RIMO и Risecreek ) и один процессор E-класса ( Moushik ) На данный момент выведены из эксплуатации .
RIMO
[ редактировать ]RIMO — это кодовое название SoC SHAKTI C-класса, который был записан в Лаборатории полупроводников (SCL) в Мохали с использованием технологического процесса 180 нм. Площадь 144 кв.мм. Чип протестирован на работу на частоте до 70 МГц. Чип упакован в 208-контактный керамический четырехъядерный плоский корпус (CQFP). [ 4 ]
Райскрик
[ редактировать ]CREEK — это кодовое название SoC SHAKTI C-класса, который был изготовлен на заводе Intel в Орегоне с использованием 22-нм техпроцесса FinFET. Чип площадью 16 мм² был протестирован на работу на частоте до 350 МГц. Чип упакован в 208-контактную матрицу с шариковой решеткой (BGA). [ 4 ]
Мушик
[ редактировать ]Moushik — это кодовое название SoC SHAKTI E-класса, который был записан на заводе SCL с использованием 180-нм техпроцесса. Он работает на частоте 100 МГц и разработан совместно с материнской платой Ardonyx 1.0. [ 12 ]
Особенности RIMO и Risecreek
[ редактировать ]Некоторые особенности RIMO и Risecreek заключаются в следующем:
- Пятиступенчатый 64-битный микроконтроллер, поддерживающий весь стабильный RISC-V ISA (RV64IMAFD).
- Совместим со спецификацией привилегий (v1.10) RISC-V ISA и поддерживает схему виртуализации sv39.
- Включает предиктор ветвления со стеком адреса возврата.
- многоканального прямого доступа к памяти (DMA). Конвейерные модули с плавающей запятой одинарной и двойной точности, соответствующие стандарту IEEE-754, а также поддержка
- Периферийные устройства, такие как 2 x I2C , 2 x UART , 2 x QSPI , отладчик , тесно связанная память объемом 256 КБ, 32-битные GPIO и шина расширения, которую можно подключить к FPGA . [ 4 ]
Макетные платы
[ редактировать ]Существуют платы разработки для процессоров классов E и C. Подробности о поддержке платой разных классов процессоров приведены ниже.
E-arty35T
[ редактировать ]- E-arty35 — это SoC, основанный на классе SHAKTI E [14].
- E-arty35Ti поддерживается платой Artix 7 35T.
- Имеет сокращенную версию 32-битного класса E. В него входят I, M, A и C. [ 6 ]
C-arty100T
[ редактировать ]- C-arty100 — это SoC, основанный на классе SHAKTI C.
- C-arty100Ti поддерживается платой Artix 7 100T.
- Имеет сокращенную версию 64-битного класса C. В него входят I, M, A, F, D и C. [ 7 ]
Коммерческая поддержка
[ редактировать ]Altair Engineering с июля 2021 года включила процессор E-Class в свой портфель поддержки встроенного ПО встроенных систем для своих клиентов по всему миру. [ 13 ]
Ссылки
[ редактировать ]- ^ Jump up to: а б с Вижинатан, Камакоти (ноябрь 2022 г.). «Создание микропроцессора ШАКТИ» . cacm.acm.org . Проверено 15 ноября 2022 г.
- ^ «ИИТ-Мадрас разрабатывает« первый в Индии микропроцессор Шакти » . Гаджеты NDTV 360 . 2 ноября 2018 года . Проверено 10 апреля 2020 г.
- ^ Гала, Нил; Менон, Арджун; Боддуна, Рахул; Мадхусудан, GS; Камакоти, В. (январь 2016 г.). Процессоры SHAKTI: инициатива по созданию аппаратного обеспечения с открытым исходным кодом . 2016 г. 29-я Международная конференция по проектированию СБИС и 2016 г. 15-я Международная конференция по встраиваемым системам (VLSID). стр. 7–8. дои : 10.1109/VLSID.2016.130 . ISBN 978-1-4673-8700-2 . S2CID 14815714 .
- ^ Jump up to: а б с д и «РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ СОВЕТА РАЗВИТИЯ ШАКТИ» (PDF) . ШАКТИ . Проверено 10 апреля 2010 г.
- ^ Jump up to: а б с «Шакти — индийский микропроцессор и микроконтроллер с открытым исходным кодом» . Инженерный приют . 07.04.2020 . Проверено 10 апреля 2020 г.
- ^ Jump up to: а б «Е-Класс на плате ARTY-A7-35t» . ГитЛаб . Проверено 10 апреля 2020 г.
- ^ Jump up to: а б «С-Класс на борту ARTY-A7-100t» . ГитЛаб . Проверено 10 апреля 2020 г.
- ^ Jump up to: а б с д «Процессоры» . ШАКТИ . Проверено 10 апреля 2020 г.
- ^ Ранганатан, Нитья. «Класс Шакти I: Введение» (PDF) . ШАКТИ . Проверено 10 апреля 2020 г.
- ^ «Shakti-T: процессор RISC-V с легкими расширениями безопасности» . Труды по аппаратной и архитектурной поддержке безопасности и конфиденциальности . 25 июня 2017 г. стр. 1–8. дои : 10.1145/3092627.3092629 . ISBN 9781450352666 . S2CID 207646970 . Проверено 10 апреля 2020 г.
- ^ Гупта, Сукрат; Гала, Нил; Мадхусудан, GS; Камакоти, В. (ноябрь 2015 г.). ШАКТИ-Ф: отказоустойчивая микропроцессорная архитектура . 24-й Азиатский симпозиум по тестированию IEEE (ATS), 2015 г. стр. 163–168. дои : 10.1109/ATS.2015.35 . ISBN 978-1-4673-9739-1 . S2CID 7705965 .
- ^ «Познакомьтесь с индийским микропроцессорным чипом Atmanirbhar Moushik, предназначенным для устройств Интернета вещей» . Вион . 24 сентября 2020 г. Проверено 25 сентября 2020 г.
- ^ Член парламента, Сидхарт (6 июля 2021 г.). «Индийский микропроцессор Shakti теперь является частью предложений технологического гиганта Altair» . Вион . Проверено 9 июля 2021 г.