Ich fasse hier meine Recherchen zusammen bezueglich Free Software Werkzeugen zur Programmierung und Rekonfiguration von FPGAs:
Fuer Xilinx:
Die Tools von Xilinx koennen anstatt der rohen FPGA Firmware auch einen low-level Code namens XDL ausgeben. Dieser ist menschenlesbar und wurde reverse-engineered:
http://rapidsmith.sourceforge.net/ basiert auf Java, unterstuetzt Artix 7 and Zynq, Virtex 7 and Kintex7, Spartan 2, Spartan 2E, Spartan 3, Spartan 3A, Spartan 3ADSP, Spartan 3E, Virtex, Virtex E, Virtex 2, and Virtex 2 Pro
http://torc-isi.sourceforge.net/ in C++ geschrieben, unterstuetzt Virtex, VirtexE, Virtex2, Virtex2 Pro, Virtex4, Virtex5, Virtex6, Virtex6L, Virtex7,Spartan3E, Spartan6, and Spartan6L devices.
http://openpr-vt.sourceforge.net/OpenPR/OpenPR.html basierend auf Torc erlaubt dieses Tool die Erzeugung rechteckiger Bloecke die schnell zu einen laufenden FPGA hinzugeladen werden koennen.
Fuer Lattice: Neuerdings (Stand 2015) wurde vom Projekt Icestorm die FPGAs der Firma Lattice iCE40 HX1K-TQ144 und der iCE40 HX8K-CT256 reverse engineered: http://www.clifford.at/icestorm/ .
VHDL Simulation:
Alliance https://soc-extras.lip6.fr/en/alliance-abstract-en/ http://www.cc.toin.ac.jp/sc/palacios/openbook/vlsie.pdf
FreeHDL http://freehdl.seul.org/