Experimenting with FPGA open-source toolchains.
The FPGA that is developed on is the iCEstick from Lattice Semiconductor.
This expands on other FPGA open-source tools such as icestorm and iverilog among others.
A quick script is used to generate the directory structure for new modules, simply run perl create.pl <module> <project>
to create a folder with all the necessary files.
If the project is the same as the module name (i.e. you're creating a small sub-module) the project field can be omitted.
> perl create.pl module project
Creating module module files.
+- module/Makefile
+- module/module.sv
+- module/module_tb.sv
+- module/icestick.pcf
adder : Simple adder module.
count : Binary counter.
dance : LED pattern display.
git clone https://github.com/cliffordwolf/icestorm.git icestorm
cd icestorm
make
sudo make install
git clone https://github.com/cseed/arachne-pnr.git arachne-pnr
cd arachne-pnr
make
sudo make install
git clone https://github.com/cliffordwolf/yosys.git yosys
cd yosys
make
sudo make install
More information given here.
(install nodejs)
git clone https://github.com/nturley/netlistsvg
cd netlistsvg
npm install -g
brew install icarus-verilog
Download here.