FPGARelated.com
Forums

Soft Processors and Licensing

Started by Alexander Kane May 6, 2011
Just a bit about the project I'm working on: Have an FPGA gathering
and manipulating data, and we need a processor to run the show and to
send the data over a network.  At the moment we are planning on using
a soft-processor.  Still early stages in the project and and I'm
currently deciding between Cyclone and Spartan.  I haven't had any
experience with either Nios II or MicroBlaze (and I believe that these
are the only real options out there if you want strong community and/
or professional support).

Anyway, what's really confusing me is the licensing issues.  I know
these questions have been asked before but I'm still confused.

I understand that to use the MicroBlaze processor you either need to
purchase the ISE Embedded Edition or purchase Platform Studio and the
Embedded Development Kit (and use it with ISE WebPACK).  However from
what I can find out it says that you're free to put MicroBlaze
processors on as many devices as you wish so long as they remain on
site.  I can't find any information about what type of license you
need to include MicroBlaze in a product being sold.

In the case of Nios II, you can use and develop with the Nios II with
the Quartus II Web Edition because it comes with the OpenCore license
that lets you use IP on an Altera FPGA so long as your development
board is plugged in to the PC (I assume it doesn't matter who's
hardware you use).  The e variant you can use for free, but the other
variants require a license to work when disconnected.  The license you
need is IP-NIOS, and though I can't find an official price listing
anywhere I've seen $US500 being mentioned on forums... and presumably
this allows you to sell as many products as you wish with Nios II
processors on them?

I've stated a whole bunch of assumptions here and I'd appreciate it if
someone could tell me if I'm on the right track.
Any advice on choosing between MicroBlaze and Nios II, or is there
another option I'm missing?
My company wants to spend as little as possible on licensing and/or
development tools (this is their first time using an FPGA in a
product), but my time is effectively free to them (I'm there under a
research grant).  That said, I know the free way is usually the hard
way so if I can make a compelling case for them to spend money it may
make my life a lot easier.
"Alexander Kane" <ajpkane@gmail.com> wrote in message 
news:f1f230a8-d528-48f4-9db5-ac5700e6b2bb@17g2000prr.googlegroups.com...
> I've stated a whole bunch of assumptions here and I'd appreciate it if > someone could tell me if I'm on the right track. > Any advice on choosing between MicroBlaze and Nios II, or is there > another option I'm missing? > My company wants to spend as little as possible on licensing and/or > development tools (this is their first time using an FPGA in a > product), but my time is effectively free to them (I'm there under a > research grant). That said, I know the free way is usually the hard > way so if I can make a compelling case for them to spend money it may > make my life a lot easier.
1) You will have a lot of headaches using Xilinx EDK. MicroBlaze is not a softcpu to start with. 2) You can use LatticeMico32 softcpu (which is free) on Altera or Xilinx FPGAs. E.g. check the opensource project "Milkymist", they're running LM32 softcpu on Spartan-6. 3) You can use Nios II/e (economy), which is also free, but I am not sure it could handle network speeds. Anyway, I would definitely go for Altera, but if You're interested in Xilinx devices, then go to MIlkymist page. They've developed memory controller + ethernet mac + many other cores.
On May 6, 5:11=A0pm, Alexander Kane <ajpk...@gmail.com> wrote:
> Just a bit about the project I'm working on: Have an FPGA gathering > and manipulating data, and we need a processor to run the show and to > send the data over a network. =A0At the moment we are planning on using > a soft-processor. =A0Still early stages in the project and and I'm > currently deciding between Cyclone and Spartan. =A0I haven't had any > experience with either Nios II or MicroBlaze (and I believe that these > are the only real options out there if you want strong community and/ > or professional support). > > Anyway, what's really confusing me is the licensing issues. =A0I know > these questions have been asked before but I'm still confused. > > I understand that to use the MicroBlaze processor you either need to > purchase the ISE Embedded Edition or purchase Platform Studio and the > Embedded Development Kit (and use it with ISE WebPACK). =A0However from > what I can find out it says that you're free to put MicroBlaze > processors on as many devices as you wish so long as they remain on > site. =A0I can't find any information about what type of license you > need to include MicroBlaze in a product being sold. > > In the case of Nios II, you can use and develop with the Nios II with > the Quartus II Web Edition because it comes with the OpenCore license > that lets you use IP on an Altera FPGA so long as your development > board is plugged in to the PC (I assume it doesn't matter who's > hardware you use). =A0The e variant you can use for free, but the other > variants require a license to work when disconnected. =A0The license you > need is IP-NIOS, and though I can't find an official price listing > anywhere I've seen $US500 being mentioned on forums... and presumably > this allows you to sell as many products as you wish with Nios II > processors on them? > > I've stated a whole bunch of assumptions here and I'd appreciate it if > someone could tell me if I'm on the right track. > Any advice on choosing between MicroBlaze and Nios II, or is there > another option I'm missing? > My company wants to spend as little as possible on licensing and/or > development tools (this is their first time using an FPGA in a > product), but my time is effectively free to them (I'm there under a > research grant). =A0That said, I know the free way is usually the hard > way so if I can make a compelling case for them to spend money it may > make my life a lot easier.
You have misunderstood what a "site license" means. This means that the software or IP can be used within the limited physical distance of the license server and not within a national or world basis for the company that purchased the license. The final bitstream can be shipped world wide. Ed McGettigan -- Xilinx Inc.
You have misunderstood what a "site license" means. This means that
the software or IP can be used within the limited physical distance of
the license server and not within a national or world basis for the
company that purchased the license.

The final bitstream can be shipped world wide.
----------------------------------------------------------------------

So companies, that has HQ/support/testing in USA, but most programmers in 
e.g. India, can't share the same licence server? Even through VPN? It is 
basically possible, but out of the licence?


> You have misunderstood what a "site license" means. This means that > the software or IP can be used within the limited physical distance of > the license server and not within a national or world basis for the > company that purchased the license. > > The final bitstream can be shipped world wide.
Thanks for clearing this up for me.
> 1) You will have a lot of headaches using Xilinx EDK. MicroBlaze is not a > softcpu to start with. > 2) You can use LatticeMico32 softcpu (which is free) on Altera or Xilinx > FPGAs. E.g. check the opensource project "Milkymist", they're running LM32 > softcpu on Spartan-6. > 3) You can use Nios II/e (economy), which is also free, but I am not sure it > could handle network speeds. > > Anyway, I would definitely go for Altera, but if You're interested in Xilinx > devices, then go to MIlkymist page. They've developed memory controller + > ethernet mac + many other cores.
In regards to point (1) this is obviously your opinion, I was wondering if anyone else would like to comment on this. I am aware that LatticeMico32 is free, but I understand that an optimised version is available for Lattice FPGAs (so it would make sense to use it with a Lattice FPGA), whereas to use it on other FPGAs you have to deal with a Verilog dump. I'm just a little weary of learning Verilog while working on this project. Furthermore I have heard that the community support for LatticeMico32 is poor. Also is someone able to confirm about pricing for Nios II? (see first post)
On May 8, 3:28=A0am, "scrts" <mailsoc@[remove@here]gmail.com> wrote:
> You have misunderstood what a "site license" means. This means that > the software or IP can be used within the limited physical distance of > the license server and not within a national or world basis for the > company that purchased the license. > > The final bitstream can be shipped world wide. > ---------------------------------------------------------------------- > > So companies, that has HQ/support/testing in USA, but most programmers in > e.g. India, can't share the same licence server? Even through VPN? It is > basically possible, but out of the licence?
If the developers are in India then the licenses should be based in India. In most cases support and testing roles would have no need for licenses to the EDK or IP cores. This is really a conversation that is best suited for your Sales person than the internet. Ed McGettigan -- Xilinx Inc.
> You have misunderstood what a "site license" means. This means that > the software or IP can be used within the limited physical distance of > the license server and not within a national or world basis for the > company that purchased the license.
I presume this is to stop multi-national companies having _one_ license to cover wordwide development? (This isn't really a practical proposition but is the extreme case) Nial
On May 8, 10:26=A0pm, Alexander Kane <ajpk...@gmail.com> wrote:
> > You have misunderstood what a "site license" means. This means that > > the software or IP can be used within the limited physical distance of > > the license server and not within a national or world basis for the > > company that purchased the license. > > > The final bitstream can be shipped world wide. > > Thanks for clearing this up for me. > > > 1) You will have a lot of headaches using Xilinx EDK. MicroBlaze is not=
a
> > softcpu to start with. > > 2) You can use LatticeMico32 softcpu (which is free) on Altera or Xilin=
x
> > FPGAs. E.g. check the opensource project "Milkymist", they're running L=
M32
> > softcpu on Spartan-6. > > 3) You can use Nios II/e (economy), which is also free, but I am not su=
re it
> > could handle network speeds. > > > Anyway, I would definitely go for Altera, but if You're interested in X=
ilinx
> > devices, then go to MIlkymist page. They've developed memory controller=
+
> > ethernet mac + many other cores. > > In regards to point (1) this is obviously your opinion, I was > wondering if anyone else would like to comment on this.
I think he may be getting MicroBlaze mixed up with PicoBlaze or even the PowerPC versions of the Vertex CPUs. To the best of my knowledge both PicoBlaze and MicroBlaze CPUs are soft cores. The MicroBlaze is fully synthesized while the PicoBlaze is structural HDL which instantiates the LUTs and FFs rather than inferring them. But that does not make the PicoBlaze CPU a hard core.
> I am aware that LatticeMico32 is free, but I understand that an > optimised version is available for Lattice FPGAs (so it would make > sense to use it with a Lattice FPGA), whereas to use it on other FPGAs > you have to deal with a Verilog dump. =A0I'm just a little weary of > learning Verilog while working on this project. =A0Furthermore I have > heard that the community support for LatticeMico32 is poor.
I've never dug into the details of the Lattice Micro32, but what do you mean by Verilog "dump"? Verilog is actually q
> Also is someone able to confirm about pricing for Nios II? (see first > post)
On May 9, 1:06=A0pm, rickman <gnu...@gmail.com> wrote:
> On May 8, 10:26=A0pm, Alexander Kane <ajpk...@gmail.com> wrote: > > > > > > You have misunderstood what a "site license" means. This means that > > > the software or IP can be used within the limited physical distance o=
f
> > > the license server and not within a national or world basis for the > > > company that purchased the license. > > > > The final bitstream can be shipped world wide. > > > Thanks for clearing this up for me. > > > > 1) You will have a lot of headaches using Xilinx EDK. MicroBlaze is n=
ot a
> > > softcpu to start with. > > > 2) You can use LatticeMico32 softcpu (which is free) on Altera or Xil=
inx
> > > FPGAs. E.g. check the opensource project "Milkymist", they're running=
LM32
> > > softcpu on Spartan-6. > > > 3) You can use Nios II/e (economy), which is also free, but I am not =
sure it
> > > could handle network speeds. > > > > Anyway, I would definitely go for Altera, but if You're interested in=
Xilinx
> > > devices, then go to MIlkymist page. They've developed memory controll=
er +
> > > ethernet mac + many other cores. > > > In regards to point (1) this is obviously your opinion, I was > > wondering if anyone else would like to comment on this. > > I think he may be getting MicroBlaze =A0mixed up with PicoBlaze or even > the PowerPC versions of the Vertex CPUs. =A0To the best of my knowledge > both PicoBlaze and MicroBlaze CPUs are soft cores. =A0The MicroBlaze is > fully synthesized while the PicoBlaze is structural HDL which > instantiates the LUTs and FFs rather than inferring them. =A0But that > does not make the PicoBlaze CPU a hard core. > > > I am aware that LatticeMico32 is free, but I understand that an > > optimised version is available for Lattice FPGAs (so it would make > > sense to use it with a Lattice FPGA), whereas to use it on other FPGAs > > you have to deal with a Verilog dump. =A0I'm just a little weary of > > learning Verilog while working on this project. =A0Furthermore I have > > heard that the community support for LatticeMico32 is poor. > > I've never dug into the details of the Lattice Micro32, but what do > you mean by Verilog "dump"? =A0Verilog is actually q
I seem to have fat fingered this post before I was done typing. Verilog is actually quite easy to pick up. If the code is already written I would not expect it to be at all hard to compile. What do you mean when you say there is an "optimized" version for Lattice devices? Do you mean they have a pre-compiled version?
> > Also is someone able to confirm about pricing for Nios II? (see first > > post)
Can't help you there. Wouldn't it be a good idea to talk to Altera for pricing? Rick
> I am aware that LatticeMico32 is free, but I understand that an > optimised version is available for Lattice FPGAs (so it would make > sense to use it with a Lattice FPGA), whereas to use it on other FPGAs > you have to deal with a Verilog dump.
Not true. The RTL is available and it's the same code for any FPGA (apart from the memories). Cheers, Jon