cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
10,173 Views
Registered: ‎02-16-2008

Fpga replacing microcontrollers?

Hi,
 
I am new to the fpga world. My projects always used microcontrollers to do the processing.
 
Can a fpga be used to replace a generic microcontroller?
 
I mean from the algorithm point of view... like making a text user interface, read buttons, edit data with a lcd and generate some waveforms.
 
I plan to start my study with a small cpld and verilog. Do you have any advice?
 
Thank you.


Message Edited by future56k on 02-16-2008 05:01 PM

Message Edited by future56k on 02-16-2008 05:02 PM
0 Kudos
4 Replies
Highlighted
Explorer
Explorer
10,143 Views
Registered: ‎08-14-2007

I've never used a "generic microcontroller", but it should be possible to use an FPGA to replace one.

Depending on what your idea of "small" is, a small CPLD may not be sufficient.  You probably want a large CPLD, or a small FPGA.  I'd recommend the Spartan-3, -3E, -3A, or -3AN Starter Kits, as they offer a very inexpensive way to get started with FPGAs.

PicoBlaze is a good place to start.  It's a very simple microcontroller, and can be downloaded from the Xilinx web site at no charge.

I personally prefer VHDL, but Verilog works fine.

0 Kudos
Highlighted
Visitor
Visitor
10,137 Views
Registered: ‎02-16-2008

By "generic" I mean no specific brand or architecture.
 
The case is that I have a 64kb firmware running on a 8 bit microcontroller. I plan to move some things to a cpld... but I am wondering if it would be possible to move everything to a fpga or cpld.
 
Thank you.
 
0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
10,126 Views
Registered: ‎08-13-2007

Xilinx currently offers:
-PicoBlaze - 8-bit sequencer, occupies most of a 2C256 CPLD so it really doesn't target a small CPLD. It is very small when you consider modern FPGA sizes (1 BlockRAM + ~200 logic cells for kcpsm3 [the latest version])
-MicroBlaze - 32-bit soft processor (it is implemented in fabric logic). Supports FPGA families Virtex and newer
-PPC405 -32-bit hardened processor (dedicated logic) in Virtex-II Pro and Virtex-4 FX.
 
Here is a nice comparison between PicoBlaze and MicroBlaze:
http://www.xilinx.com/support/documentation/application_notes/xapp477.pdf (Embedded Processing and Control Solutions for Spartan-3 FPGAs)

 
I would likely steer you to a Spartan-3E or 3A starter kit and MicroBlaze (which requires our EDK tool suite for processor development).
PicoBlaze is a great solution for many aplications - but it is limited in its # of instructions and doesn't officially have a C compiler or IDE (though I know they are out there from 3rd parties). Your current code size seems to significantly exceed its default addressing size.
 
Here are some other useful resources:
 
 
http://www.xilinx.com/products/boards/s3estarter/reference_designs.htm (Spartan-3E Starter Kit Board Design Examples )
http://www.xilinx.com/products/boards/s3astarter/reference_designs.htm (Spartan-3A/3AN Starter Kit Board Design Examples)
 
Cheer,
bt


Message Edited by timpe on 02-18-2008 11:01 PM
0 Kudos
Highlighted
Xilinx Employee
Xilinx Employee
8,108 Views
Registered: ‎08-13-2007

Update...

Note that XAPP477 PicoBlaze/MicroBlaze comparison has now been removed from the website.

 

This information is now included here:

 http://www.xilinx.com/support/documentation/user_guides/ug331.pdf (Spartan-3 Generation FPGA User Guide)
  Section II - Embedding Processing and Control Solutions

 

Here is a non-technical  (and obviously unofficial) summary I've used before:

/*

PicoBlaze or MicroBlaze can both be attractive solutions but they differ in a number of important details.

 

PicoBlaze is the girl next door. I can get a date within 5 minutes, wear jeans, and have a good time. But nobody else is impressed.

 

MicroBlaze is the prom queen. I have to be smoother in how I ask her out, need to get a haircut, wash the car, and I'm not getting out of the restaurant for less than $100.  People call me the next day for details.

 

Don't ask about the PPC405 or 440 - My analogies break down there.

*/

 

bt

Message Edited by timpe on 06-27-2008 12:47 AM