DocumentCode
3647602
Title
Chisel: Constructing hardware in a Scala embedded language
Author
Jonathan Bachrach;Huy Vo;Brian Richards;Yunsup Lee;Andrew Waterman;Rimas Avižienis;John Wawrzynek;Krste Asanović
Author_Institution
EECS Department, UC Berkeley
fYear
2012
fDate
6/1/2012 12:00:00 AM
Firstpage
1212
Lastpage
1221
Abstract
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 cycle-accurate 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.
Keywords
"Hardware","Hardware design languages","Generators","Registers","Wires","Vectors","Finite impulse response filter"
Publisher
ieee
Conference_Titel
Design Automation Conference (DAC), 2012 49th ACM/EDAC/IEEE
ISSN
0738-100X
Print_ISBN
978-1-4503-1199-1
Type
conf
DOI
10.1145/2228360.2228584
Filename
6241660
Link To Document