Sciweavers

DAC
2012
ACM

Chisel: constructing hardware in a Scala embedded language

11 years 7 months ago
Chisel: constructing hardware in a Scala embedded language
In this paper we introduce Chisel, a new hardware construction language that supports advanced hardware design using highly parameterized generators and layered domain-specific hardware languages. By embedding Chisel in the Scala programming language, we raise the level of hardware design abstraction by providing concepts including object orientation, functional programming, parameterized types, and type inference. Chisel can generate a high-speed C++-based cycleaccurate software simulator, or low-level Verilog designed to map to either FPGAs or to a standard ASIC flow for synthesis. This paper presents Chisel, its embedding in Scala, hardware examples, and results for C++ simulation, Verilog emulation and ASIC synthesis. Categories and Subject Descriptors B.6.3 [Logic Design]: [Design Aids – automatic synthesis, hardware description languages] General Terms Design, Languages, Performance Keywords CAD
Jonathan Bachrach, Huy Vo, Brian Richards, Yunsup
Added 29 Sep 2012
Updated 29 Sep 2012
Type Journal
Year 2012
Where DAC
Authors Jonathan Bachrach, Huy Vo, Brian Richards, Yunsup Lee, Andrew Waterman, Rimas Avizienis, John Wawrzynek, Krste Asanovic
Comments (0)