Chisel

Chisel

Informations
Dernière version 6.6.0 ()[1]Voir et modifier les données sur Wikidata
Dépôt github.com/chipsalliance/chisel3Voir et modifier les données sur Wikidata
Type Langage de description de matériel
Langage dédiéVoir et modifier les données sur Wikidata
Licence Licence Apache 2.0Voir et modifier les données sur Wikidata
Site web www.chisel-lang.orgVoir et modifier les données sur Wikidata

Chisel est un langage informatique open-source de description matériel basé sur Scala.

Chisel, pour Constructing Hardware in Scala Embedded Language, permet de décrire des circuits électroniques numériques au niveau du transfert de registres (RTL). Chisel hérite des propriétés objet et fonctionnel de Scala pour décrire du matériel. L'utilisation de Scala comme base permet de se servir de Chisel comme un générateur de circuits électroniques.

Il existe également TL-Chisel, l'équivalent en Chisel de TL-Verilog (Transaction-Level Verilog).

Les circuits décrits en Chisel sont directement convertibles en Verilog pour la synthèse et la simulation.

Exemple

Un exemple simple de circuit additionneur.

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
}

Utilisation

Bien que Chisel ne soit pas un langage de description matériel majeur, il a été utilisé par de nombreuses entreprises et institutions pour la conception de composants électroniques. Le plus connu des usages de Chisel est celui du Rocket chip[2], un microprocesseur RISC-V [3]développé initialement par l'université de Berkeley.

L'Académie chinoise des sciences a également utilisé Chisel pour développer le processeur sous licence libre (licence Mulan v2, accepté OSI) d'architecture RISC-V nommé Xiangshan. Les développeurs disent ainsi obtenir un code cinq fois plus petit qu'en Verilog et un temps de développement inférieur[4],[5].

Notes et références

  1. « Release 6.6.0 », (consulté le )
  2. chipsalliance/rocket-chip, CHIPS Alliance, (lire en ligne)
  3. (en-US) « RISC-V International », sur RISC-V International (consulté le )
  4. (en) Jean-Luc Aufranc, « XiangShan open-source 64-bit RISC-V processor to rival Arm Cortex-A76 », sur CNX-Software,
  5. (zh) 包云岗, « 首届 RISC-V 中国峰会 2021 年 6 月 21 日起在上海举行,有什么值得关注的地方? », sur 知乎

Bibliographie

  • (en) Yunsup Lee, RISC-V “Rocket Chip” SoC Generator in Chisel, UC Berkeley, HPCA, (lire en ligne)
  • (en) Martin Schoeberl, Digital Design with Chisel, Kindle Direct Publishing, (OCLC 1137574045)
  • (en) Farzad Fatollahi-Fard, David Donofrio, George Michelogiannakis et John Shalf, OpenSoC Fabric: On-Chip Network Generator: Using Chisel to Generate a Parameterizable On-Chip Interconnect, eScholarship, University of California, (OCLC 1137574045, lire en ligne)
  • (en) Paul Lennon et Gahan, « A Comparative Study of Chisel for FPGA Design », dans 29th Irish Signals and Systems Conference (ISSC), IEEE, , 1-6 p. (ISBN 978-1-5386-6046-1)
  • Jean Bruant (OVHcloud), Pierre-Henri Horrein (OVHcloud), Olivier Muller (Univ. Grenoble Alpes, CNRS, Grenoble INP1,TIMA,Grenoble), Tristan Groleat (OVHcloud) et Frederic Petrot (Univ. Grenoble Alpes, CNRS, Grenoble INP1,TIMA,Grenoble), « (System)Verilog to Chisel Translation for Faster Hardware Design », dans 2020 International Workshop on Rapid System Prototyping (RSP), IEEE, , 1-7 p. (ISBN 978-1-7281-8466-1)
  • Zhinan Li (Beijing University of Post and Telecommunications), Yijie Chen (Beijing University of Post and Telecommunications) et Di Zhao (The Institute of Computing Technology of the Chinese Academy of Sciences), « A Method of Verification in Chisel Based Deep Learning Accelerator Design », dans 2020 IEEE International Conference on Information Technology,Big Data and Artificial Intelligence (ICIBA), IEEE, 789-792 p. (ISBN 978-1-7281-5224-0)

Liens externes