A nice-looking hardware description language with FSM generation, simple reset generation, and more. Hackable so you can add your own constructs.
cargo install hoodlum
Add this to test.hdl
:
```rust entity Main { in clk: bit, out LED1: bit }
impl Main { def mut light: bit;
on clk.posedge {
light <= !light;
}
always {
LED1 = light;
}
} ```
And run
hoodlum test.hdl output.v
Examples are being tested with the iCEstick evaluation board and the IceStorm open source compiler toolchain. See "examples/rot" for an example that works with this board.
NOTE: I'm learning Verilog and VHDL as I go along. Feel free to suggest ideas or best practices!
Goals:
Non-goals:
Entity definitions are in entity
blocks. Logic definitions are in impl
blocks.
Variables can be one of the following types:
|
TODO: More documentation
MIT or Apache-2.0.