Chisel (язык программирования)

редактировать
Создание оборудования на встроенном языке Scala (Chisel)
Chisel (ProgrammingLanguage) Logo.svg
Разработчик Калифорнийский университет, Беркли
Язык реализацииScala
Веб-сайтwww.chisel-lang.org

Конструирование оборудования на встроенном языке Scala (Chisel) - это язык описания оборудования с открытым исходным кодом (HDL). для описания цифровых схем на уровне передачи регистров. Chisel основан на Scala как встроенный DSL. Chisel наследует объектно-ориентированные и функциональные аспекты Scala для описания цифрового оборудования. Использование Scala как основы позволяет описывать генераторы схем.

Схемы, описанные в Chisel, могут быть преобразованы в описание в Verilog для синтеза и моделирования.

Содержание
  • 1 Примеры кода
  • 2 Использование
  • 3 См. Также
  • 4 Ссылки
  • 5 Внешние ссылки
Примеры кода

Простой пример, описывающий схему сумматора и демонстрирует организацию компонентов в Moduls с портами ввода и вывода:

class Add extends Module {val io = IO (new Bundle {val a = Input (UInt (8.W)) val b = Input (UInt (8.W)) val y = Output (UInt (8.W))}) io.y: = io.a + io.b}

32-битный регистр со значением сброса 0:

val reg = RegInit (0.U (32.W))

Мультиплексор является частью библиотеки Chisel:

val result = Mux (sel, a, b)
Использование

Хотя Chisel пока что не является основным языком описания оборудования, он был исследован несколькими компаниями и учреждениями. Наиболее распространенное использование Chisel - это реализация набора команд RISC-V, чипа Rocket с открытым исходным кодом. DARPA упоминает Chisel как технологию повышения эффективности проектирования электроники, при которой небольшие проектные группы выполняют более крупные проекты. Google использовал Chisel для разработки блока обработки тензора для края.

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-14 13:00:08
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте