Каждый микропроцессор построен на архитектуре набора инструкций (ISA), которая определяет высокоуровневые функции, используемые для выполнения вычислительных операций с цифровыми данными. ISA является одним из основных компонентов ЦПУ, определяющим, как программное обеспечение будет взаимодействовать с аппаратным обеспечением. Она, по сути, определяет команды таким образом, чтобы машина могла их понять, и обычно включает инструкции для операций с памятью, обработки данных, арифметических операций, логических операций и операций управления потоком. ISA также определяет, как инструкции хранятся, кодируются и доступны.
Доминирующими ISA за последние два десятилетия были x86, x64 и ARM, все из которых способствовали принятию персональных и встроенных вычислений на уровнях, которые мы видим сегодня. Хотя ARM является одной из наиболее используемых архитектур процессоров, новый конкурент с открытым исходным кодом завоевывает поддержку в полупроводниковой промышленности. Этой альтернативной архитектурой является RISC-V (произносится как «риск пять»), и она была принята сообществом открытого исходного кода и производителями полупроводников как альтернатива архитектурам ARM и x86/x64.
Хотя мы не ожидаем, что архитектуры Intel x86/x64 или ARM скоро исчезнут, RISC-V представляет собой привлекательную альтернативу с открытым исходным кодом. Теперь некоторые производители полупроводников поддерживают реализации RISC-V в своих ПЛИС, и сообщество открытого исходного кода ответило волной IP-продуктов и библиотек производителей, чтобы ускорить разработку. В этой статье мы рассмотрим некоторые из самых последних продуктов на базе RISC-V, выпущенных на рынок производителями полупроводников.
RISC-V - это ISA с открытым исходным кодом, которая может использоваться для определения основных низкоуровневых манипуляций с цифровыми данными, реализуемых в ядре микропроцессора. Спецификация использует набор из 49 инструкций, совместимых с 32-битными реализациями в аппаратном обеспечении. Ширина слова может использоваться на 64 бита с набором из 14 расширяющих инструкций или до 128 бит (в теории). Как спецификация с открытым исходным кодом, основной набор инструкций и дополнительные расширения могут быть настроены, удалены или полностью переписаны для создания настраиваемой или высокоспецифичной архитектуры процессора для использования в новых чипах.
Разработка RISC-V началась в 2010 году (в лаборатории Par Lab Беркли), создатели RISC-V затем основали SiFive, компанию по IP ядрам процессоров. Компания предоставила первую полностью открытую архитектуру ядра процессора на базе RISC-V. Архитектура может использоваться в качестве базовой спецификации для проектирования архитектуры цифровой логики, реализующей ISA RISC-V и любые дополнительные пользовательские функции.
Создание пользовательского прикладного процессора на RISC-V предоставляет разработчикам отличный путь к созданию нового процессора на пользовательском кремнии или к созданию реконфигурируемого процессора на FPGA. Разработка логики с использованием RISC-V на FPGA приносит свои преимущества благодаря настраиваемости и реконфигурируемости платформ FPGA, а также их высокой вычислительной плотности. Для встроенных приложений, требующих большего, чем RTOS, ядра RISC-V могут быть портированы для поддержки дистрибутивов Linux.
Разработчики RISC-V могут использовать набор инструкций и его аппаратную реализацию двумя возможными способами: для разработки пользовательских логических схем на новом дизайне чипа или для реализации специализированной логики на FPGA. Отрасль только начинает использовать RISC-V в качестве основной архитектуры для дизайнов микроконтроллеров, но эти компоненты пока не доступны в масштабе.
В настоящее время диапазон коммерчески доступных процессоров, поддерживающих RISC-V, ограничен FPGA, где RISC-V поддерживается с IP производителя. На данный момент, разработка на FPGA является отличным вариантом для системных разработчиков, как с точки зрения прототипирования, так и в плане проектирования пользовательского прикладного оборудования, которое сильно оптимизировано для работы с большими вычислительными нагрузками.
Платформа PolarFire от Microchip является флагманской FPGA платформой компании на базе RISC-V, где часть готового процессора построена непосредственно из межсоединительной ткани FPGA. Линейка продуктов PolarFire включает в себя множество компонентов и номеров частей, все из которых нацелены на минимальное потребление энергии с высокой вычислительной плотностью во встроенных приложениях. Этот FPGA SoC может быть сильно настроен с использованием Libero SoC Design Suite, и основной IP доступен для использования на платформе PolarFire. С точки зрения аппаратных возможностей, система может поддерживать трансиверы 12.7 Gbps и PCIe 2 I/O.
Efinix - это меньший по размеру производитель полупроводников, но они приняли RISC-V в своем IP производителя с двумя продуктами SoC для Trion и Titanium.
Sapphire SoC - Эта реализация RISC-V является пользовательской конфигурацией с необязательным контроллером памяти (DDR или HyperRAM) и множеством интерфейсов (до 32 GPIO, 3 мастера I2C, 3 мастера SPI и 3 UART) встроенных в ядро устройства.
Edge Vision SoC - Эта библиотека предназначена для приложений встроенного зрения и включает стандартные интерфейсы для систем в этой области приложений. Дополнительные пользовательские функции, такие как специализированные блоки DSP или манипуляции с данными, могут быть добавлены к этому IP с помощью инструментов разработчика.
Продукты для разработки доступны для обеих линеек продуктов, чтобы помочь пользователям начать работу с новой платформой, например, Trion T20 MIPI D-PHY/CSI-2 Dev Kit для приложений визуализации.
Bluespec Inc., официальный партнер по разработке для Xilinx, теперь поддерживает реализацию 32-битных ядер RISC-V на FPGA от Xilinx. Этот SoC IP предназначен для приложений, требующих одноядерного процессора, работающего под управлением Linux на FPGA. RISC-V RV32IMAC SCL поддерживает базовые целочисленные инструкции RISC-V (I), целочисленное умножение и деление (M), атомарные (A) и сжатые инструкции (C), инструкции для работы с одинарной и двойной точностью (FD). Пользователи могут реализовать IP-ядра Bluespec RISC-V 32IM на FPGA от Xilinx, используя стандартный набор инструментов разработки в среде Vivado IDE.
Преимущество использования оборудования от крупного производителя, такого как Xilinx, заключается в уровне поддержки открытого исходного кода и разработанных продуктов, доступных для создания встроенного приложения. Широкий портфель IP от Xilinx может быть использован вместе с архитектурой основной логики, определенной в RSIC-V, для создания настраиваемой аппаратной реализации. Как пример, ядро Freedom E310 от SiFive может быть запрограммировано на разработочную платформу Arty A7 от Digitlent с использованием Arduino IDE.
Другие компании недавно анонсировали продукты, связанные с использованием ядер RISC-V в новых полупроводниковых изделиях. Эти продукты предназначены быть чем-то близким к процессорам для приложений, которые все еще предлагают некоторую универсальность программирования через встроенное приложение. Среди недавних анонсов продуктов:
Специфические продукты для конкретных приложений (ASSPs) от Renesas, линейка продуктов на базе RISC-V, предназначенная для сочетания универсальной обработки с специфичностью приложений.
Picocom PC802 5G NR SoC, специфический процессор для малых ячеек 5G NR, взаимодействующий с радио-блоками через O-RAN Open Fronthaul eCPRI или JESD204B.
Intel теперь будет поддерживать RISC-V через свое новое подразделение услуг литейного производства, позволяя компаниям без собственного производства создавать дизайны, совместимые с возможностями обработки кремния от Intel.
Предстоящая RISC-V-базированная микросхема ускорителя ИИ от Kneron предназначена для обеспечения автономности беспилотных автомобилей, поддерживая системы ADAS 1 и 2 уровней ADAS.
Разработка микросхем - это сложная дисциплина, но использование открытого набора инструкций, такого как RISC-V, в качестве рамочной структуры разработки - отличный способ ускорить проектирование архитектуры чипа. Задача для логического дизайнера состоит в том, чтобы создать логические схемы, представляющие инструкции, определенные в спецификации RISC-V. Для микроконтроллера или MPU это непростая задача, требующая большого опыта; это не то, что дизайнер обычно делает в одиночку.
Однако для FPGA существует множество реализаций RISC-V, которые можно использовать для быстрого создания высоко расширяемой архитектуры, включающей пользовательские функции. Это то, над чем производственные инструменты и сообщество открытого кода потратили значительное количество времени, и теперь есть множество ядер RISC-V, которые можно использовать в разработке FPGA. Чтобы начать, ознакомьтесь с некоторыми из этих репозиториев на GitHub:
Это лишь небольшой разрез того, что доступно, на GitHub вы найдете еще много открытых репозиториев, полезных для различных FPGA. Кроме того, для разработчиков FPGA, заинтересованных в работе над ISA, RISC-V International запустила Программу обучения партнеров RISC-V. Разработчики могут глубже понять преимущества открытого сотрудничества и расширить свои знания о RISC-V.
Великолепная часть архитектуры RISC-V заключается в том, что ее можно модифицировать и продавать на открытом рынке. На данный момент фаблесс-стартапы в области полупроводников предлагают свои основные IP на основе ISA RISC-V для лицензирования другим компаниям по бизнес-модели, аналогичной ARM. Аналогично, компании делают доступными для покупки и использования в FPGA от крупных производителей полупроводников свои производственные IP. По мере появления на рынке компонентов на базе RISC-V мы можем ожидать, что они будут предлагать высокие уровни специфичности для передовых приложений.
Когда вы будете готовы начать выбор FPGA, программируемых SoC и других компонентов для вашей новой системы, убедитесь, что вы используете расширенные функции поиска и фильтрации на Octopart, чтобы найти все необходимые компоненты для передовых проектов. Используя поисковую систему электроники Octopart, вы получите доступ к актуальным данным о ценах дистрибьюторов, инвентаризации частей и спецификациям компонентов, и все это доступно в удобном интерфейсе. Посмотрите нашу страницу с интегральными схемами, чтобы найти необходимые компоненты.
Оставайтесь на связи с нашими последними статьями, подписавшись на нашу рассылку.