[Haskell-cafe] FPGA / Lava and haskell

Matthew Naylor mfn-haskell-cafe at cs.york.ac.uk
Thu Jul 10 08:44:22 EDT 2008

Hi Marc,

> The Chalmers Lava homepage tells abouta Xilinx version which should
> be merged in soon. But on the xilinx homepage there was no reference
> to neither Lava nor haskell..
> I'm thinking about designing a similar tool to www.combimouse.com.

you also might consider using a PIC or some such microcontroller for
this kind of project.  I don't think there is a Haskell library for
PIC programming, but it would be fun to make one!  For somewhat
related work, see issues 6 and 7 of The Monad.Reader
(http://www.haskell.org/haskellwiki/The_Monad.Reader), especially
Russell O'Conner's article.  As mentioned in issue 7, I did use Lava
to program an RCX microcontroller, but in general the techniques I
used are much better suited to hardware.  Also, there is "PICBIT: A
Scheme System for the PIC Microcontroller" by Marc Feeley
(http://www.iro.umontreal.ca/~feeley/papers/sw03.pdf) which might be
of interest.

Regarding Lava, there is a version on Satnam Singh's website
(http://raintown.org/lava/).  I use Emil Axelsson's version of
Chalmers Lava (http://www.cs.chalmers.se/~emax/darcs/Lava2000/) that
works with the latest GHC.  I made some mods to target the Xilinx
toolset and to provide very basic support for block RAMs
(http://www.cs.york.ac.uk/fp/darcs/reduceron2/Lava2000/).  I wish I
had time to work more on this, and make it more accessible to others!
Nevertheless, Chalmers Lava as it stands is already very usable.  It
is also very hacker-friendly, so I can recommend diving in!

As an aside: I'm currently finishing off a document about my uses of
Lava and its capabilities/weaknesses.  Hopefully this will be
publicly available soon.


More information about the Haskell-Cafe mailing list