Hi guys,
I know a few of you have submitted patches to the Milkymist branch
(fork?) of the LatticeMico32 CPU core. What is unclear is how these
patches are licensed...
For instance -- there's a fairly early changeset in Git which adds a
Spartan6-optimised multiplier. This is unquestionably GPLv3, like the
rest of the Milkymist codebase -- it has a GPL header, and is apparently
a ground-up re-implementation of one of the LM32's Verilog modules.
But there's a grey area -- what about all the patches which clean up the
LM32 code base, add JTAG support for non-Lattice chips, and so forth? Do
these fall under the original Lattice licence, GPL, or some cruel hybrid
of the two?
The reason I ask is because I'm maintaining a local set of IP cores for
use in my own projects (admittedly not on Lattice FPGAs -- I mostly use
Altera parts, though sometimes sneak in a Xilinx part or two here and
there). One of these cores is a heavily patched version of LM32 V3.6,
with several clean-ups and bug-fixes to allow it to be used with
non-Lattice HDL synthesizers and silicon.
My intent is to make the HDL publicly available, along with some tools
and documentation to ease the creation of LM32-based SoCs. What I don't
want is to end up with a mishmash of GPL and non-GPL code, and no idea
what's what...
At the moment, I have a bugfixed version of the Size Adapter from
opencores, a custom SDRAM controller, and some basic firmware which can
boot the LM32 and do an SDRAM test... It won't change the world or
redefine computing, but it's a nice starting point! :)
Thanks,
--
Phil.
phil...@philpem.me.uk
http://www.philpem.me.uk/
_______________________________________________
http://lists.milkymist.org/listinfo.cgi/devel-milkymist.org
IRC: #milkymist@Freenode
Twitter: www.twitter.com/milkymistvj
Ideas? http://milkymist.uservoice.com