Not long ago I discovered GitHub, the social coding website. Basically its a place where you can share your code and manage open source projects online. I think it’s mainly used by non-HDL programmers but the concept is not language specific so I figured it would be a good place to share FPGA designs. Gradually I will bring all the source code of all our tutorials onto GitHub so that people can more easily share it, modify it and contribute to it.

To start things off, I’ve uploaded the most popular project (at this time): Microblaze 16×2 LCD Driver.

Here’s the GitHub repository: Microblaze 16×2 LCD Driver on GitHub

Here’s how it’s organized:

  1. Each project will have its own repository.
  2. The first folder within the repository will be the name of the hardware platform (eg. ML505, XUPV5, XUPV2P, etc).
  3. The second folder will be the name of the software and the version number (eg. edk10-1, ise10-1, etc).
  4. After that, we will use the same folder structure as used by the software used, whether it be EDK, ISE or whatever.

As a new GitHub user, I admit that this might not be the best layout and I’m open to suggestions so by all means let me know in the comments if you see any problems with this.

Here’s what I want you to do:

  1. Get on GitHub if you are not already.
  2. Share FPGA developer projects with your friends and colleagues.
  3. Contribute to FPGA developer projects. What can you contribute?
    • If you make a project work on a different hardware platform, add your code to the repository.
    • If you make a project work in a different version of EDK/ISE/etc, add your code to the repository.
    • If you can improve on a project, fork it and start a new one.

In general, I want you to share, learn and enjoy!


Jeff is passionate about FPGAs, SoCs and high-performance computing, and has been writing the FPGA Developer blog since 2008. As the owner of Opsero, he leads a small team of FPGA all-stars providing start-ups and tech companies with FPGA design capability that they can call on when needed.

Facebook Twitter LinkedIn