Yaro

Emulation of a microcontrollers on an FPGA

Recommended Posts

Hi all,

I've a question about possibility to emulate microcontrollers on FPGAs. I place this question becouse sometimes I find C codes that are really complex and difficult to convert them to VHDL code. If there is possibility to emulate a microcontroller or a part of it inside an FPGA that would solve this problem. Another alternative it's some kind of converter of C code to VHDL code if exist.

Looking here I've found emulation of an AVR microcontroller 8 bit usable with C++ ide, it's near what I looking for, but something like ARM architecture 32bit(only becouse most of code that I use are based on this architecture).

I found only ARM microcontrollers(not emulated) embedded inside FPGA. Also I've found cores from some FPGA manufactures, but this are not open source and not portable to other FPGAs and found some open cores of microprocessor used to run linux, but it's not what i'm looking for.

Someone know where I can find more informations? It's good if it can be compatible with an IDE like done with papillio AVR.

Thank you!

Share this post


Link to post
Share on other sites

Hello Yaro, 

 

The ZPUino Soft Processor is not ARM based but it is 32 bits, has gcc support, and is built into the Papilio DesignLab software.

 

Jack.

Share this post


Link to post
Share on other sites

An open source ARM compatible core, "Amber," exists, but it's an old version of ARM and I don't know how well it fits small FPGAs.  Numerous other processors exist.  Jack has mentioned ZPUino.

 

C to VHDL conversion doesn't seem like it would be very practical for most purposes.  The two languages are doing very different things.  

 

Converting C code meant to run on one architecture, to run on another, is closer to practical.  It does have various annoyances, but they're surmountable with skill and patience. The most common issue would probably be that types such as 'int' and pointers may be different sizes than 32 bits.  But 32 bit integer types would still exist.

Share this post


Link to post
Share on other sites

Hello Yaro, 

 

The ZPUino Soft Processor is not ARM based but it is 32 bits, has gcc support, and is built into the Papilio DesignLab software.

 

Jack.

 

It's an open core? It's possibile to use this processor with FPGAs from other manufacturers? How much luts use in papilio?

Share this post


Link to post
Share on other sites

ZPUino is completely Open Source and yes you can use it with other manufactures.

http://www.alvie.com/zpuino/

 

ZPUino is the core Soft Processor that we use in the DesignLab software. So you can build a full System on Chip design with the ZPUino using the schematic editor. When you are ready you can drill down into the VHDL, to learn more please look at the tutorials at our learn page:

http://learn.gadgetfactory.net

 

Here are the ZPUino sizes for a basic, vanilla version with the bare minimum peripherals on Papilio boards:

Papilio One 250K - Uses 70% of available slices

Papilio One 500K - Uses 37% of available slices

Papilio Pro - Uses 34% of available slices

Papilio DUO - Uses 34% of available slices

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now