Bluespec
Bluespec, Inc. is an American semiconductor tool design company co-founded by Massachusetts Institute of Technology (MIT) professor Arvind in June 2003 and based in Framingham, Massachusetts. Arvind had formerly founded Sandburst in 2000, which specialized in producing chips for 10 Gigabit Ethernet (10GE) routers, for this task.[1][2] Bluespec has two product lines which are primarily for application-specific integrated circuit (ASIC) and field-programmable gate array (FPGA) hardware designers and architects. Bluespec supplies high-level synthesis (electronic system-level (ESL) logic synthesis) with register-transfer level (RTL). The first Bluespec workshop was held on August 13, 2007, at MIT.[3]
Bluespec SystemVerilog
Bluespec
Paradigm | Functional |
---|---|
Family | Verilog, Haskell |
Developer | Bluespec Inc. |
Stable release | Version 2022.01
/ January 2022[4] |
Scope | HDL |
Filename extensions | .bsv |
Website | bluespec |
Major implementations | |
Bluespec Compiler (BSC); Toy Bluespec Compiler | |
Dialects | |
SystemVerilog (BSV), Haskell (BH, or "Bluespec Classic") |
Arvind had developed the Bluespec language named Bluespec SystemVerilog (BSV), a high-level functional programming hardware description programming language which was essentially Haskell extended to handle chip design and electronic design automation in general.[5] The main designer and implementor of Bluespec was Lennart Augustsson. Bluespec is partially evaluated (to convert the Haskell parts) and compiled to the term rewriting system (TRS). It comes with a SystemVerilog frontend.[6] BSV is compiled to the Verilog RTL design files.
Tools
BSV releases are shipped with the following hardware development kit:[7]: 7
- BSV compiler
- The compiler takes BSV source code as input and generates a hardware description for either Verilog or Bluesim as output. It was opensourced by Bluespec inc. in 2020 under New BSD License terms.
- Libraries
- BSV is shipped with a set programming idioms and hardware structures
- Verilog modules
- Several primitive BSV elements, such as first in, first out (FIFOs) and processor registers, are expressed as Verilog primitives.
- Bluesim
- A cycle simulator for BSV designs.
- Bluetcl
- A collection of Tcl extensions, scripts, and packages to link into a Bluespec design.
References
- "Arvind elected as India National Academy of Sciences Foreign Fellow". MIT News. 2014-12-23.
- Maffei, Lucia (2023-02-09). "Form D Friday: Lexington blood tech startup raises $13.2M". American City Business Journals.
- "The First Bluespec Workshop". csg.csail.mit.edu. Retrieved 2019-05-04.
- Bluespec Compiler: README.md, B-Lang, 2022-11-04, retrieved 2022-11-15
- "[it] is basically Haskell with some extra syntactic constructs for the term rewriting system (TRS) that describes what the hardware does. The type system has been extended with types of numeric kind." pg 43 of Hudak, Jones, et al. 2007
- Hudak, Jones, et al. 2007
- Bluespec SystemVerilog User Guide, Bluespec inc., November 24, 2008
- Hudak, Paul (Yale University); Hughes, John (Chalmers University); Peyton Jones, Simon (Microsoft Research); Wadler, Philip Wadler (University of Edinburgh) (June 9–10, 2007). "A history of Haskell: being lazy with class". HOPL III: Proceedings of the third ACM SIGPLAN conference on History of programming languages. San Diego, California: Association for Computing Machinery. pp. 12-1–12-55. doi:10.1145/1238844.1238856.
[it] is basically Haskell with some extra syntactic constructs for the term rewriting system (TRS) that describes what the hardware does. The type system has been extended with types of numeric kind.
- Peyton Jones, Simon (June 2007). A History of Haskell: being lazy with class. Microsoft Research (Report).