README.org

August 27, 2010 ยท View on GitHub

#+TITLE: The Haskell Netlist Repository #+AUTHOR: Philip Weaver #+EMAIL: philip.weaver@gmail.com #+DATE: 2010-08-26 Thu #+DESCRIPTION: #+KEYWORDS: #+LANGUAGE: en #+OPTIONS: H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc #+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME:

  • Overview This repository holds 4 Haskell packages:
  • netlist - An abstract syntax tree (AST) for a very simple hardware description language (HDL) that corresponds to a limited subset of VHDL and Verilog.
  • verilog - An AST, parser, and pretty-printer for Verilog.
  • netlist-to-verilog - A translator from the netlist AST to Verilog AST.
  • netlist-to-vhdl - A translator from the netlist AST to VHDL concrete syntax.

Once these packages are released on [[http://hackage.haskell.org/][Hackage]], links to their packages will appear here.

There are 3 forks of the repository on github, [[http://github.com/pheaver/netlist-verilog][pheaver]], [[http://github.com/garrinkimmell/netlist-verilog][garrinkimmell]], and [[http://github.com/andygill/netlist-verilog][andygill]].

  • Installation

** Install from Hackage

This is not yet possible. Once these packages are released on [[http://hackage.haskell.org/][Hackage]], they can be installed like this:

: cabal install netlist : cabal install netlist-to-vhdl : cabal install verilog : cabal install netlist-to-verilog

** Install from git repository

Clone one of the aforementioned repositories. For example:

: git clone git://github.com/pheaver/netlist-verilog.git

Change directories into the new repository:

: cd netlist-verilog

Then, you can install each package like so:

: (cd netlist && cabal install) : (cd netlist-to-vhdl && cabal install) : (cd verilog && cabal install) : (cd netlist-to-verilog && cabal install)

  • Todo
  • Release netlist and netlist-to-vhdl packages on hackage.
  • Finish haddock documentation for verilog and netlist-to-verilog, release packages on hackage.