Linear types for circuit design in Haskell/Clash

This page summarizes the projects mentioned and recommended in the original post on /r/haskell

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • clash-spaceinvaders

    Intel 8080-based Space Invaders arcade machine implemented on an FPGA, written in CLaSH

  • The largest repo of public Clash code is probably https://github.com/gergoerdi/clash-spaceinvaders What’s nice about it in my view is that it takes a really Haskell-centric approach (as apposed to a write-verilog-in-Haskell approach)

  • VELDT-getting-started

    Where Lions Roam: Haskell & Hardware on VELDT

  • In terms of not just code, but also text, https://github.com/standardsemiconductor/VELDT-getting-started is a really great tutorial

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • contranomy

  • There are at least two RISCV implementations: - non-pipelined: https://github.com/christiaanb/contranomy - pipelined: https://github.com/adamwalker/clash-riscv

  • clash-ghc

    Haskell to VHDL/Verilog/SystemVerilog compiler

  • Interfacing with 3rd party IP remains non-trivial... we have: 1. Clash’s extensible primitives, http://hackage.haskell.org/package/clash-prelude-1.2.5/docs/Clash-Tutorial.html#g:14, but that only works for tiny IP as you have to provide a Haskell model 2. An alpha-version of Verilog co-simulation: https://github.com/clash-lang/clash-compiler/tree/master/clash-cosim, it’s VPI-based, tested with iVerilog and ModelSim, and might/should support encrypted IP through modelsim 3. Using Verilator to speed up Clash simulation, https://github.com/gergoerdi/clashilator, which might be retoolable for Verilog co-sim; but not for encrypted vendor IP 4. We’re working on a cocotb-based co-simulation, but we haven’t decided on open-sourcing it yet

  • ICFP2020_Bluespec_Tutorial

    Tutorial on hardware design using Bluespec BH (Bluespec Classic) for Haskell programmers at ACM ICFP 2020 conference

  • I watched recently another talk, on Bluespec Haskell ( https://www.youtube.com/watch?v=JCxE3JQAXY0 / https://github.com/rsnikhil/ICFP2020_Bluespec_Tutorial ), and it seems that BH takes a really different approach from Clash. I wonder what you make of it. I have no clue about circuits, but it seems that they impose way more higher-order organisation on the circuit. (I know this isn't linear types related, but still).

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Clash: A Functional Hardware Description Language

    2 projects | news.ycombinator.com | 27 Dec 2023
  • Clash (Haskell) for ASIC design

    1 project | /r/chipdesign | 7 Oct 2023
  • Building a Networked Key-Value-Store on an FPGA

    1 project | news.ycombinator.com | 19 Jun 2023
  • Ask HN: Choice of HDL for an FPGA Project

    1 project | news.ycombinator.com | 8 Feb 2023
  • Baud rate 1.5% lower than expected, is this normal?

    1 project | /r/FPGA | 19 Dec 2022