[Milkymist-devel] Milkymist tools in FEL

Sébastien Bourdeauducq sebastien at milkymist.org
Wed Oct 6 19:30:17 CEST 2010


Thank you very much for your enthusiasm getting the Milkymist tools
into FEL :)

Following our phone call this Monday, here is the list of what we need
(in no particular order). I have listed all the "special" stuff, you
probably have some of it already.
* The latest UrJTAG, with Michael Walle's patches merged and FJMEM for
  Spartan-6. These patches add free software support for configuring
  the FPGA on our boards and reprogramming the flash. The patches have
  been merged upstream into UrJTAG. Michael: do we need anything
  special for out-of-the-box FJMEM support, or is it included in the
  stock UrJTAG installation?
* Michael's modified OpenOCD [1], not merged upstream yet. This enables
  in-circuit JTAG debugging of the Milkymist SoC.
* Michael's modified QEMU [2] with LM32 and Milkymist support, not
  merged upstream yet.
* lm32-elf toolchain (including GCC, Binutils and GDB). I recommend GCC
  4.5.1 that has the LM32 support included and a reasonable amount of
  bugs. No patches are needed for these tools, they work as released by
  the FSF. Newlib is not needed for this toolchain, which makes this
  item independent of the licensing discussion you had lately [2]. This
  toolchain is used for building the Milkymist BIOS, the demo renderer
  and the experimental uClinux kernel. All those come with their own
  built-in libc.
* Scilab [4], used for building the demo renderer. The GUI is not
  needed for our purposes.
* Lemon parser generator [5] (you may already have this one).
* RE2C [6] (same comment).
* An easy to configure/pre-installed TFTP server (same comment) for
  netbooting the board.
* lm32-rtems toolchain, which uses newlib so I hope the licensing
  discussions [3] can be settled soon. Again, I recommend the GCC 4.5.1
  based toolchain. There are already Fedora RPM packages available at
  the RTEMS FTP [7] (browse around for SRPMS and other versions) and
  you can see [8] for generic build instructions.
* An installation of the modified RTEMS [9] (not fully merged upstream
  yet) built for Milkymist.
* The flterm serial terminal and firmware download program [10].
* libGD [11] and its development headers (you most probably already have
  this) that we use in the software build process and through VPI in
  some Verilog test benches that process images.
* FTDI libraries [12] (probably already included) for using Yanjun Luo's
  Milkymist One JTAG adapter [13] with UrJTAG.
* Native (x86) clang (LLVM), used for building some host-side tools in
  the build process.
* SRecord [14].
* xxd hexdump command.

Phew! I hope I have not forgotten anything. Anyway, I'll be happy to
install FEL and try to build Milkymist stuff and use the JTAG tools to
check that nothing is missing :)
If all of this sounds too much for you, I can prioritize the list.

There are no FPGA tools (except maybe the JTAG programmer), those are
proprietary and non-redistributable and there are no serious free
equivalents. You already have the Verilog simulators that we use
(Icarus Verilog + GPL Cver) and GTKWave.


[1] http://git.serverraum.org/?p=mw/openocd-lm32.git;a=summary
[2] http://git.serverraum.org/?p=mw/qemu-lm32.git;a=summary
[4] http://fedoraproject.org/wiki/SIGs/SciTech/Scilab
[5] http://www.hwaci.com/sw/lemon/
[6] http://re2c.org/
[7] ftp://ftp.rtems.org/pub/rtems/linux/4.11/fedora/14/i386/
[9] http://github.com/fallen/rtems-milkymist
[10] http://github.com/lekernel/milkymist/blob/master/tools/flterm.c
[11] http://www.libgd.org/Main_Page
[12] http://www.intra2net.com/en/developer/libftdi/
[13] http://lekernel.net/blog/?p=1266
[14] http://srecord.sourceforge.net/

More information about the Devel mailing list