Simple Hardware Description Language

Welcome to SHDL!

This project explores the possibility of embedding a hardware description language in plain old C (SHDL stands
for "Simple Hardware Description Language"). I snarfed the idea from the famous book "Structure and Interpretation
of Computer Programs" by Abelson and Sussman; they used Scheme for this purpose.

I have included two design examples: the inevitable traffic light controller and three different implementations
of the simplified MIPS CPU as used by Patterson and Hennessy in their book "Computer Organization & Design:
The Hardware/Software Interface" (without floating point instructions). The traffic light controller is finished,
as well as the single-cycle CPU implementation. The multi-cycle and the pipelined CPU implementations are missing.

Starting with version 0.2 we can provide a transliteration of the programs into Java.

If you want to see simulation results displayed graphically, you have to install a viewer for VCD (value change dump)
files, such as e.g. gtkwave.