C-Compiler for free VHDL controller core ?

Apr 08, 2006 14 Replies

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


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

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

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

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??

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.

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

"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

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

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

Philipp

"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 .

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.

You should also look at the extended variant :

formatting link

plus rhere are good links on this page.

-jg

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

I will definitely do that, thanks :)

P.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required