clash-ghc: CAES Language for Synchronous Hardware

[ bsd2, hardware, library, program ] [ Propose Tags ]

CλaSH (pronounced ‘clash’) is a functional hardware description language that borrows both its syntax and semantics from the functional programming language Haskell. The CλaSH compiler transforms these high-level descriptions to low-level synthesizable VHDL, Verilog, or SystemVerilog.

Features of CλaSH:

This package provides:

Prelude library: http://hackage.haskell.org/package/clash-prelude


[Skip to Readme]
Versions [faq] 0.2.1, 0.2.2, 0.2.2.1, 0.2.2.2, 0.3, 0.3.0.1, 0.3.0.2, 0.3.0.3, 0.3.1, 0.3.2, 0.3.3, 0.4, 0.4.1, 0.5, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5, 0.5.6, 0.5.7, 0.5.8, 0.5.9, 0.5.10, 0.5.11, 0.5.12, 0.5.13, 0.5.14, 0.5.15, 0.6, 0.6.1, 0.6.2, 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7, 0.6.8, 0.6.9, 0.6.10, 0.6.11, 0.6.12, 0.6.13, 0.6.14, 0.6.15, 0.6.16, 0.6.17, 0.6.18, 0.6.19, 0.6.20, 0.6.21, 0.6.22, 0.6.23, 0.6.24, 0.7, 0.7.0.1, 0.7.1, 0.7.2, 0.99, 0.99.1, 0.99.2, 0.99.3 (info)
Change log CHANGELOG.md
Dependencies array (>=0.4 && <0.6), base (>=4.3.1.0 && <5), bifunctors (>=4.1.1 && <5.4), bytestring (>=0.9 && <0.11), clash-lib (>=0.6.16 && <0.7), clash-prelude (>=0.10.8 && <0.11), clash-systemverilog (>=0.6.6 && <0.7), clash-verilog (>=0.6.6 && <0.7), clash-vhdl (>=0.6.12 && <0.7), containers (>=0.5.4.0 && <0.6), deepseq (>=1.3.0.2 && <1.5), directory (==1.2.*), filepath (>=1.3 && <1.5), ghc (>=7.10.1 && <7.12), ghc-typelits-extra (==0.1.*), ghc-typelits-natnormalise (>=0.3 && <0.5), hashable (>=1.1.2.3 && <1.3), haskeline (>=0.7.0.3 && <0.8), lens (>=4.0.5 && <4.15), mtl (>=2.1.1 && <2.3), process (==1.2.*), text (>=0.11.3.1 && <1.3), time (>=1.4.0.1 && <1.6), transformers (>=0.4.2 && <0.5), unbound-generics (>=0.1 && <0.4), unix (>=2.7.1 && <2.8), unordered-containers (>=0.2.1.0 && <0.3), Win32 (>=2.3.1 && <2.4) [details]
License BSD-2-Clause
Copyright Copyright © 2012-2016 University of Twente
Author Christiaan Baaij
Maintainer Christiaan Baaij <christiaan.baaij@gmail.com>
Category Hardware
Home page http://www.clash-lang.org/
Bug tracker http://github.com/clash-lang/clash-compiler/issues
Source repo head: git clone https://github.com/clash-lang/clash-compiler.git
Uploaded by ChristiaanBaaij at Tue Jun 7 13:43:24 UTC 2016
Distributions NixOS:0.99.3
Executables clash
Downloads 27291 total (1511 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2016-11-24 [all 2 reports]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for clash-ghc-0.6.18

[back to package description]

clash-ghc - Haskell/GHC front-end for the CλaSH compiler

  • See the LICENSE file for license and copyright details
  • Contains code from the GHC compiler, see the LICENSE_GHC file for license and copyright details pertaining to that code.

CλaSH - A functional hardware description language

CλaSH (pronounced ‘clash’) is a functional hardware description language that borrows both its syntax and semantics from the functional programming language Haskell. The CλaSH compiler transforms these high-level descriptions to low-level synthesizable VHDL, Verilog, or SystemVerilog.

Features of CλaSH:

  • Strongly typed (like VHDL), yet with a very high degree of type inference, enabling both safe and fast prototying using consise descriptions (like Verilog).

  • Interactive REPL: load your designs in an interpreter and easily test all your component without needing to setup a test bench.

  • Higher-order functions, with type inference, result in designs that are fully parametric by default.

  • Synchronous sequential circuit design based on streams of values, called Signals, lead to natural descriptions of feedback loops.

  • Support for multiple clock domains, with type safe clock domain crossing.

Support

For updates and questions join the mailing list clash-language+subscribe@googlegroups.com or read the forum