Bluespec, Inc. is a semiconductor tool design company co-founded by Prof.
ArvindArvind is the Johnson Professor of Computer Science and Engineering in the Computer Science and Artificial Intelligence Laboratory at the Massachusetts Institute of Technology. His research work includes verification of large-scale digital systems. He is a distinguished alumnus of the Indian...
of MIT in June 2003. Arvind had previously founded Sandburst in 2000, which specialized in producing chips for
10G-bit EthernetThe 10 Gigabit Ethernet or 10GE or 10GbE or 10 GigE standard was first published in 2002 as IEEE Std 802.3ae-2002 and is the fastest of the Ethernet standards...
routerA router is a networking device whose software and hardware are usually tailored to the tasks of routing and forwarding information. For example, on the Internet, information is directed to various paths by routers....
s; for this task, Arvind had developed the Bluespec language, a high-level
functionalIn computer science, functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data. It emphasizes the application of functions, in contrast to the imperative programming style, which emphasizes changes in state...
hardware descriptionIn electronics, a hardware description language or HDL is any language from a class of computer languages and/or programming languages for formal description of electronic circuits, and more specifically, digital logic...
programming languageA programming language is an artificial language designed to express computations that can be performed by a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine, to express algorithms precisely, or as a mode of human...
which was essentially
HaskellHaskell is a standardized, general-purpose purely functional programming language, with non-strict semantics and strong static typing. It is named after logician Haskell Curry.- History :...
extended to handle chip design and
electronic design automationElectronic Design Automation is the category of tools for designing and producing electronic systems ranging from printed circuit boards to integrated circuits. This is sometimes referred to as ECAD or just CAD...
in general. The main designer and implementor of Bluespec was
Lennart AugustssonLennart Augustsson is a Swedish computer scientist. He was previously a lecturer at the Computing Science Department at Chalmers University of Technology...
.
Bluespec, Inc. is a semiconductor tool design company co-founded by Prof.
ArvindArvind is the Johnson Professor of Computer Science and Engineering in the Computer Science and Artificial Intelligence Laboratory at the Massachusetts Institute of Technology. His research work includes verification of large-scale digital systems. He is a distinguished alumnus of the Indian...
of MIT in June 2003. Arvind had previously founded Sandburst in 2000, which specialized in producing chips for
10G-bit EthernetThe 10 Gigabit Ethernet or 10GE or 10GbE or 10 GigE standard was first published in 2002 as IEEE Std 802.3ae-2002 and is the fastest of the Ethernet standards...
routerA router is a networking device whose software and hardware are usually tailored to the tasks of routing and forwarding information. For example, on the Internet, information is directed to various paths by routers....
s; for this task, Arvind had developed the Bluespec language, a high-level
functionalIn computer science, functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data. It emphasizes the application of functions, in contrast to the imperative programming style, which emphasizes changes in state...
hardware descriptionIn electronics, a hardware description language or HDL is any language from a class of computer languages and/or programming languages for formal description of electronic circuits, and more specifically, digital logic...
programming languageA programming language is an artificial language designed to express computations that can be performed by a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine, to express algorithms precisely, or as a mode of human...
which was essentially
HaskellHaskell is a standardized, general-purpose purely functional programming language, with non-strict semantics and strong static typing. It is named after logician Haskell Curry.- History :...
extended to handle chip design and
electronic design automationElectronic Design Automation is the category of tools for designing and producing electronic systems ranging from printed circuit boards to integrated circuits. This is sometimes referred to as ECAD or just CAD...
in general. The main designer and implementor of Bluespec was
Lennart AugustssonLennart Augustsson is a Swedish computer scientist. He was previously a lecturer at the Computing Science Department at Chalmers University of Technology...
. Bluespec is
partially evaluatedIn computing, partial evaluation is a technique for several different types of program optimization by specialization. The most straightforward application is to produce new programs which run faster than the originals but are guaranteed to behave in the same way...
(to convert the Haskell parts) and compiled to the TRS. The justification behind writing chip designs in Bluespec is that it leads to shorter, more abstract, and verifiable (provably correct)
source codeIn computer science, source code is any collection of statements or declarations written in some human-readable computer programming language...
, as well as type-checked numeric code. Bluespec, Inc. claims greater than 50% improvements compared to conventional methods of design. It also comes with a System Verilog frontend.
Bluespec has two product lines. Primarily for
ASICASIC may refer to:* Application-specific integrated circuit, an integrated circuit customized for a particular use, rather than intended for general-purpose use* ASIC programming language, a dialect of BASIC...
and FPGA hardware designers and architects, Bluespec is delivering
ESLElectronic System Level design and verification is an emerging electronic design methodology that focuses on the higher abstraction level concerns first and foremost. The term Electronic System Level or ESL Design was first defined by Gartner Dataquest, a leading EDA-industry-analysis firm, on...
synthesis with no compromise (speed and area)
RTLIn integrated circuit design, register transfer level description is a way of describing the operation of a synchronous digital circuit...
. Bluespec is the only ESL synthesis solution for control logic, complex datapaths and algorithms. For
SystemCSystemC is a set of C++ classes and macros which provide an event-driven simulation kernel in C++ . SystemC makes it possible to simulate concurrent processes, each described using plain C++ syntax...
users, Bluespec has delivered high-level ESL Synthesis abstractions to SystemC. Bluespec integrates seamlessly into Cadence, Synopsys, Mentor and Magma flows, including verification, debug and synthesis, without requiring new methodologies or tools.
The first Bluespec workshop
http://csg.csail.mit.edu/bluespec/ was held on August 13, 2007 at MIT.