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

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

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

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

Примеры кода

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

учебный класс Добавлять расширяет Модуль {  вал io = IO(новый Пучок {    вал а = Вход(UInt(8.W))    вал б = Вход(UInt(8.W))    вал у = Выход(UInt(8.W))  })  io.у := io.а + io.б}

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

вал рег = RegInit(0.U(32.W))

Мультиплексор входит в состав библиотеки Chisel:

вал результат = Mux(сел, а, б)

использование

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

Смотрите также

Рекомендации

  1. ^ Bachrach, J .; Vo, H .; Richards, B .; Lee, Y .; Waterman, A .; Avižienis, R .; Wawrzynek, J .; Асанович, К. (июнь 2012 г.). «Chisel: создание оборудования на встроенном языке Scala». Материалы 49-й ежегодной конференции по автоматизации проектирования (DAC 2012). Сан-Франциско, Калифорния, США: ACM. С. 1216–25. Дои:10.1145/2228360.2228584. ISBN  978-1-4503-1199-1.
  2. ^ "Зубило". people.eecs.berkeley.edu. Калифорния, США: Калифорнийский университет в Беркли. Получено 2020-07-08.
  3. ^ Бахрах, Джонатан (ред.). «Зубило - ускорение проектирования оборудования» (PDF). RISC-V. Калифорния, США: RISC-V.
  4. ^ Асанович, Крсте; и другие. "ракетный чип". GitHub. RISC-V International. Получено 11 ноября 2016.
  5. ^ Мур, Сэмюэл К. (16.07.2018). «DARPA планирует крупный римейк американской электроники». IEEE. Получено 2020-06-10.
  6. ^ Дерек Локхарт, Стивен Твигг, Рави Нараянасвами, Джереми Кориелл, Удай Дасари, Ричард Хо, Дуг Хогберг, Джордж Хуанг, Ананд Кейн, Чинтан Каур, Тао Лю, Адриана Маджоре, Кевин Таунсенд, Эмре Тунсер (2018-11-16). Опыт создания Edge TPU с помощью Chisel. Получено 2020-06-10.

внешняя ссылка