Thanks for the link, Max. I'm always looking for cheap (in the USA) reliable FPGA boards, preferably Xilinx. The current winner for my purposes appears to be the Papilio One 250K at US$38.
Logitraxx isn't the one I need, but it looks like a pretty nice project. However, I am disturbed when I see text like this in a Kickstarter:
Easy to Learn – Easy to Use
With a basic understanding of Boolean logic, VHDL, or Verilog, you'll be on your way to programming your first FPGA in minutes.
FPGAs are not easy to learn, or easy to use well. There's a pretty steep learning curve -- Duane Benson gave an excellent talk on this subject at last year's ESC AKA "design west" called "FPGAs: I know nothing... yet."
So unless by "in minutes" they mean "in N minutes where N is a surprisingly large number", it makes me wonder what else the Kickstarteur may be exaggerating. Heck, it takes tens of minutes just to install Webpack.
Definitely so FPGAs can be daunting depending on the application and design. So, my statement is meant in the spirit of the graduated complexity of FPGA design. They can be very complex and yet for simple tasks, the design and execution is also simple. For instance I had just received the boards back from assembly and needed a picture for the campaign page. And so I had not even hooked up the motors yet. I wrote something as simple as "hedlights <= not lightsens;" then assigned some pins and hit the synthesis. After programming the FPGA, boom I had headlights working and ready for the photo.
The Logitraxx main purpose is to introduce FPGAs to the embedded world that typically designs with MCUs or ARM and might be unfamiliar with FPGAs though their design applications increasingly could greatly benefit from the use of them. That's been something I have been running into more often with my design services. And so Logitraxx is a learning tool that is meant to be fun, and to encourage FPGA design while learning at the gadget level that has similar traits that MCU based gadgets may have.
Albiet after the "many" minutes it takes to install the webpack tool :~)
So far, the soft cores have a reputation of too big and too slow. As Max said, the MCU has a very fast clock, but is too slow or inefficient, whatever. Having to access a memory to load registers and store the result serializes the function by definition.
Changing behavior by loading a new program is an advantage of MCU. FSMs were also mentioned as many can run in parallel. FPGA takes longer to reconfigure than just reloading memory.
A memory and a counter can be an FSM. A basic C program is an FSM as the source line numbers can be used as states and the memory outputs as control signals. Yeah, I know horizontal micro-code is about 50 years old. It still works.
Parse the C source to generate memory content, load, execute. Run and debug the C code first is a good idea.
Logitraxx reconfigures FPGA which looks great as educational tool. Auto coded FSMs are just an easy way to control/change behaviour.
For computation, the true dual port RAM can deliver both operands to the ALU per clock cycle, so load the data and go.