Learn to program a FPGA using Verilog and VHDL

Some weeks ago I bought a TinyFPGA BX which uses the Lattice iCE40. The iCE40 is the first FPGA where the bitsteam was reverse engineered and a complete open source tool-chain is available.

Unfortunately the complete tool-chain is not available for openSUSE. There is the project hardware:FPGA in the build service but it lacks some parts, e.g. nextpnr and GHDL. Luckily most parts - if not all - are available in home projects.

The project has three goals:

  • Learn Verilog and VHDL

  • Extend hardware:FPGA so that the complete tool-chain for the TinyFPGA BX is available - both for Verilog and VHDL

  • Let the world know about hardware:FPGA

Resources

Progress

Using the OBS project home:javispedro:fpgatools it was easy to get started with some tutorials (e.g. vhdlwhiz). I created simple programs, e.g. blinking and pulsing LEDs, both in Verilog and VHDL and even mixing them. I also managed to use the PLL to get higher frequencies, e.g. 50 MHz from the 16 MHz oscillator of the board. For VHDL I also created test-benches and viewed the results in gtkwave.

Looking for hackers with the skills:

fpga verilog vhdl software-definded-hardware

This project is part of:

Hack Week 20

Activity

  • 9 months ago: aschnell added keyword "software-definded-hardware" to this project.
  • 9 months ago: aschnell removed keyword software-definedhardware from this project.
  • 9 months ago: aschnell added keyword "software-definedhardware" to this project.
  • 9 months ago: radolin liked this project.
  • 9 months ago: aschnell added keyword "fpga" to this project.
  • 9 months ago: aschnell added keyword "verilog" to this project.
  • 9 months ago: aschnell added keyword "vhdl" to this project.
  • 9 months ago: mbrugger liked this project.
  • 9 months ago: aschnell started this project.
  • 9 months ago: aschnell liked this project.
  • All Activity

    Comments

    Be the first to comment!

    Similar Projects

    ECL monochrome monitor signal to HDMI with a FPGA (ULX3S) by tsbogend

    Some of my old workstations (Sun3, Apollo DN3x0...