C-Compiler for free VHDL controller core ?

Hi !

I would like to use a free microcontroller core on my Spartan 3 FPGA.

There are quite some free cores available, but I would like to know what everybody is using. It would be great if the free core would be supported by gcc or some other free C-Compiler.

I also need a UART, so what I am searching for is:

  • free FPGA controller core (with UART)
  • C-Compiler supporting it

Do you know if something like this is available ? It is not practical for a non-professional to license a controler core and tool-chain, or ?

TIA Peter

Reply to
Peter Winkler
Loading thread data ...

Maybe an OpenRISC?

They have a GCC port for the chip on freecores.org, though the simplest config on my XC3S200 would use up ~75% of it!

-Isaac

Reply to
Isaac Bosompem

That's an option that should work. The OP mentioned a microcontroller, so that case I'd expect an AVR clone would be good enough (I think I've seen them around but regardless it would not be hard to reproduce). GCC supports AVR quick nicely.

Another all time favorite is MIPS for which GCC have had well tested support for quite a while.

The best alternative however is likely the microblaze clone aeMB which is a better fit for FPGAs and has good GCC support. However, license issues aren't not entirely clear, but for non-commercial use I wouldn't worry.

There. I'm sure there are other excellent choices. No, ARM is not one of them :-)

Tommy

Reply to
Tommy Thorn

choices

  • Pico(Paco)Blaze
  • AVR
  • C16 from opencores
  • aeMB is not fully compliant as MicroBlaze i have tested with assembly programs but some commands are wrong, so its not ready for c compiler

if you have S400 or larger than you can use some 32 bit cores, in S200 it is getting very tight with 32 bit processors (commercial MicroBlaze is ok in S200)

if you are looking to have full normal GCC support the there are no so many options :( LEON3 smallest system fits s400

Antti

Reply to
Antti

The gr16/32 CPUs are very old and designed in Verilog, but you might still find them useful.

I think Jan Gray ported LCC to the architecture and also had a complete SoC example with UART and everything.

Speaking of aaMB, did they actaully looked if it FITS into an apa150 when they wrote the docs??

Reply to
burn.sir

Thanks for your suggestions ! I think I will have a look at these two:

I very much like AVR controllers, so maybe it is a good idea to look at this core. And there is also WinAVR. I hope I can get it to run on my XC3S200.

Don't you think it is somewhat strange, that there are so few options for a soft prozessor for hobby stuff ? Is it so much work to design a soft core ? Not sure, but looking at the AVR core from opencores, it seems development was stopped in 2003 and only a limited number of I/O lines are available. However, I am very glad that it exists at all ... ;)

P.

Reply to
Peter Winkler

schrieb im Newsbeitrag news: snipped-for-privacy@e56g2000cwe.googlegroups.com...

you mean "aeMB" ? the original author did very little testing and the core is not full, it does do lots of instructions ok, but I think it messes up with delay slots and link register I think it should fit into APA150 but I havent run that synthesis

but just out curiosity i peeked into my trashbox and did run synthesis of NIOS-II clone for Lattice XP3:

605 slices - 39% :) hum maybe I should continue the work on that

Antti

Reply to
Antti Lukats

"Peter Winkler" schrieb im Newsbeitrag news: snipped-for-privacy@4ax.com...

it does exist and does work I have done some work with it

1) I think i had made verilog version of it 2) tried to use better io peripheral bus system that would be configurable 3) one time had it integrated into Xilinx EDK ! 4) I have a special toplevel that works as Atmel appnote AVR910 compatible programmer

in the opencores version there is base address of one port wrong and yes the development is pretty much stopped

an no its not hard to write a processor ip-core not at all but having full infra-structure, peripheral bus and compiler support, and debuf support is what makes it more complex task

Antti

Reply to
Antti Lukats

That may be a little bit too large for me :)

Reply to
Peter Winkler

There's PIC and Z80 clones on opencores.org. The sdcc compiler could be used for them.

Philipp

Reply to
Philipp Klaus Krause

"Peter Winkler" skrev i meddelandet news: snipped-for-privacy@4ax.com...

You may want to check Atmels Patent portfolio. Have heard claims that it is impossible to replicate the core without violating some patents. Don't know if anyone would bother about hobbyist use of the OpenCore version. You can still download the core which is a positive sign, but I really do not know.

--
Best Regards,
Ulf Samuelsson
This is intended to be my personal opinion which may,
or may not be shared by my employer Atmel Nordic AB
.
Reply to
Ulf Samuelsson

Thanks for all your input.

I think it makes most sense for me to have a closer look at PicoBlaze.

Is there a good place for PicoBlaze designs apart from the Xilinx PicoBlaze home ? I mean some kind of community like avrfreaks or the piclist ? A place to ask stupid newbie questions, you know ;)

P.

Reply to
Peter Winkler

You should also look at the extended variant :

formatting link

plus rhere are good links on this page.

-jg

Reply to
Jim Granville

Hi Peter, if you want to use Picoblaze, then why you don't try the free C compiler for Picoblaze? you can download for free on

formatting link

Next week please check on my website for the next release of the compiler.

Best regards, Francesco

Reply to
Francesco

I will definitely do that, thanks :)

P.

Reply to
Peter Winkler

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.