← Back to results

Chisel (programming language) - Wikipedia Jump to conten

t Main menu Main menu move to sidebar hide Navigation Main page Contents Current events Random article About Wikipedia Contact us Contribute Help Learn to edit Community portal Recent changes Upload file Special pages Search Search Appearance Donate Create account Log in Personal tools Donate Create account Log in Contents move to sidebar hide (Top) 1 Code examples 2 Use 3 See also 4 References 5 External links Toggle the table of contents Chisel (programming language) 5 languages Català فارسی Français Italiano 日本語 Edit links Article Talk English Read Edit View history Tools Tools move to sidebar hide Actions Read Edit View history General What links here Related changes Upload file Permanent link Page information Cite this page Get shortened URL Print/export Download as PDF Printable version In other projects Wikidata item Appearance move to sidebar hide From Wikipedia, the free encyclopedia Open-source hardware description language (HDL) Constructing Hardware in a Scala Embedded Language (Chisel) Paradigms Multi-paradigm : concurrent , functional , imperative , object-oriented Family Scala Developer University of California, Berkeley First appeared June 2012 &#59; 14 years ago  ( 2012-06 ) Stable release 7.6.0 / December 20, 2025 &#59; 6 months ago  ( 2025-12-20 ) Typing discipline Inferred , static , strong , structural Scope Lexical (static) Implementation language Scala Platform Java virtual machine (JVM) JavaScript ( Scala.js ) LLVM ( Scala Native ) (experimental) License Apache License 2.0 Website www .chisel-lang .org Chisel (an acronym for Constructing Hardware in a Scala Embedded Language [ 1 ] ) is an open-source hardware description language (HDL) used to describe digital electronics and circuits at the register-transfer level . [ 2 ] [ 3 ] Chisel is based on Scala as a domain-specific language (DSL). Chisel inherits the object-oriented and functional programming aspects of Scala for describing digital hardware. Using Scala as a basis allows describing circuit generators. High quality, free access documentation exists in several languages. [ 4 ] Circuits described in Chisel can be converted to a description in Verilog for synthesis and simulation . Code examples [ edit ] A simple example describing an adder circuit and showing the organization of components in Module with input and output ports: 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 } A 32-bit register with a reset value of 0: val reg = RegInit ( 0 . U ( 32 . W )) A multiplexer is part of the Chisel library: val result = Mux ( sel , a , b ) Use [ edit ] Although Chisel is not yet a mainstream hardware description language, it has been explored by several companies and institutions. The most prominent use of Chisel is an implementation of the RISC-V instruction set, the open-source Rocket chip. [ 5 ] Chisel is mentioned by the Defense Advanced Research Projects Agency ( DARPA ) as a technology to improve the efficiency of electronic design, where smaller design teams do larger designs. [ 6 ] Google has used Chisel to develop a Tensor Processing Unit for edge computing . [ 7 ] Some developers prefer Chisel as it requires one-fifth as much code and is much faster to develop than Verilog. [ 8 ] Circuits described in Chisel can be converted to a description in Verilog for synthesis and simulation using a program named FIRRTL. [ 9 ] [ better source needed ] See also [ edit ] Computer programming portal Free and open-source software portal VHDL Verilog SystemC SystemVerilog References [ edit ] ^ Bachrach, J.; Vo, H.; Richards, B.; Lee, Y.; Waterman, A.; Avižienis, R.; Wawrzynek, J.; Asanović, K. (June 2012). "Chisel: constructing hardware in a Scala embedded language" . Proceedings of the 49th Annual Design Automation Conference (DAC 2012) . San Francisco, California, US: Association for Computing Machinery (ACM). pp.  1216– 25. doi : 10.1145/2228360.2228584 . ISBN   978-1-4503-1199-1 . ^ "Chisel" . people.eecs.berkeley.edu . California, U.S.: University of California, Berkeley . Archived from the original on 2021-10-16 . Retrieved 2020-07-08 . ^ Bachrach, Jonathan (ed.). "Chisel: Accelerating Hardware Design" (PDF) . RISC-V . California, U.S.: RISC-V International. ^ Schoeberl, Martin (August 30, 2019). Digital Design with Chisel (in English, Chinese, Japanese, and Vietnamese) (2nd ed.). Kindle Direct Publishing. ISBN   978-1689336031 . ^ Asanović, Krste ; et al. "rocket-chip" . GitHub . RISC-V International . Retrieved 11 November 2016 . ^ Moore, Samuel K. (2018-07-16). "DARPA Plans a Major Remake of U.S. Electronics" . IEEE Spectrum . Institute of Electrical and Electronics Engineers (IEEE) . Retrieved 2020-06-10 . ^ Derek Lockhart, Stephen Twigg, Ravi Narayanaswami, Jeremy Coriell, Uday Dasari, Richard Ho, Doug Hogberg, George Huang, Anand Kane, Chintan Kaur, Tao Liu, Adriana Maggiore, Kevin Townsend, Emre Tuncer (2018-11-16). Experiences Building Edge TPU with Chisel . Retrieved 2020-06-10 . ^ "XiangShan open-source 64-bit RISC-V processor to rival Arm Cortex-A76 - CNX Software" . CNX Software - Embedded Systems News . 2021-07-05 . Retrieved 2022-03-26 . ^ "Chisel/FIRRTL Hardware Compiler Framework" . Retrieved 2022-09-08 . External links [ edit ] Official website Chisel 3 on GitHub Chisel 's channel on YouTube v t e Programmable logic Concepts ASIC SoC FPGA Logic block CPLD EPLD PLA PAL GAL PSoC Reconfigurable computing Xputer Soft microprocessor Circuit underutilization High-level synthesis Hardware acceleration Hardware description languages Verilog A AMS VHDL AMS VITAL SystemVerilog DPI SystemC AHDL Handel-C Lola PSL UPF PALASM ABEL CUPL C to HDL Flow to HDL MyHDL ELLA Chisel Companies Accellera Achronix AMD Aldec Arm Cadence Infineon Intel Lattice Microchip Technology Nvidia NXP Siemens Synopsys Texas Instruments Products Hardware iCE Stratix Virtex Software Intel Quartus Prime Xilinx ISE Vivado ModelSim VTR Simulators Intellectual property Proprietary ARC ARM Cortex-M LEON LatticeMico8 MicroBlaze PicoBlaze Nios Nios II Open-source JOP LatticeMico32 OpenCores OpenRISC 1200 Power ISA Libre-SOC Microwatt RISC-V Retrieved from " https://en.wikipedia.org/w/index.php?title=Chisel_(programming_language)&oldid=1328884818 " Categories : University of California, Berkeley Hardware description languages Science and technology in California Hidden categories: CS1 Chinese-language sources (zh) CS1 Japanese-language sources (ja) CS1 Vietnamese-language sources (vi) Articles with short description Short description matches Wikidata All articles lacking reliable references Articles lacking reliable references from September 2022 Official website different in Wikidata and Wikipedia This page was last edited on 22 December 2025, at 10:02  (UTC) . Text is available under the Creative Commons Attribution-ShareAlike 4.0 License ; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy . Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc. , a non-profit organization. Privacy policy About Wikipedia Disclaimers Contact Wikipedia Legal & safety contacts Code of Conduct Developers Statistics Cookie statement Mobile view Search Search Toggle the table of contents Chisel (programming language) 5 languages Add topic