There are a few pieces of software which we have used for our development activities. Whenever possible, we use free software for our activities, as this is our strong preference. Alas, that is not always possible, as some functions are only available in proprietary form. A good example is the software required to develop the programming files for the CPLDs used in these boards. We were fortunate to have a sales representative who provided us a complementary license for the required software (Thank you, Jim Covey and CSR Electronics!) but that in no way makes it free. There is no free software for programming those CPLDs. Furthermore, it has to be hosted on Windows. Sigh…

Operating System: GNU/Linux

GNU/Linux Distribution: Red Hat Fedora Electronic Lab (FEL) – a Fedora GNU/Linux distro plus a complete electronics setup using free software design tools. Most tools used by the free software and free hardware communities are included (e.g. Alliance, Archimedes, ARM/AVR/PIC cross compilers, Eclipse, Electric ASIC tools, gEDA, gerber tools, circuit simulators, Verilog tools, VHDL tools, etc.). Both an installable and live CD version are available.

Schematic and PCB layout software: Eagle (proprietary) hosted on GNU/Linux is our current recommendation. For simple projects, two free alternatives exist: gEDA (GNOME based, GPL) and KiCad (KDE based, GPL) but, so far, neither has proven usable or stable enough for complex designs. We look forward to being able to recommend one of the two free programs over Eagle someday but, until then, Eagle gets the job done with far less pain than either gEDA or KiCad. (perhaps if the two groups combined their efforts into one project, they’d make faster progress?)

PAL, CPLD, FPGA Development Tools: Not much to recommend here as most tools are still proprietary. For now it may be necessary to use vendor-specific proprietary tools in order to develop free hardware. FLOSS elements to replace some parts of the proprietary tool chains are slowly being developed however. One good place to start looking is Tim Edwards’ Open Circuit Design. Also see Wolfgang Spraul’s fpgatools for the Xilinx XC6SLX9.