The Evolution In And Around FPGA As You Know It

September 12, 2016 10:02 am Published by 2 Comments


Dear Readers,

Gradually, the time when we don’t need to subject embedded beginners to AVRs and PICs is coming. At a rapid pace, FPGA development platforms are becoming ever more capable and far less expensive. Playing around with both ARMs and FPGAs, Eric Brombaugh decided to combine these two loves into a single board that’s capable of a lot.


This board is fittingly called an STM32F303 + ice5 development board, and does exactly what it says on the tin. There’s an STM32F303 on board providing a 32-bit CPU running at 72 MHz, 48 kB of SRAM, a quarter meg of Flash, and enough peripherals to keep anyone happy. The FPGA side of this board is a Lattice iCE5 with about 3k Look Up Tables (LUTs), and one time programmable non-volatile config memory.

The connections between the ARM and FPGA include a dedicated SPI port, and enough GPIOs to implement full-duplex I2S and a USART. Like all good projects, [Eric] has shared all the files, schematics, and BOMs required to make this board your very own reality, and has provided a few links to the development toolchains. While the FPGA is from Lattice’s ice40 family, it’s not supported by the Open Source Project Icestorm toolchain. Still, it’s a very capable board for ARM and FPGA development.

To be fair, even the ATmegas aren’t perfect when it comes to compatibility. I’ve gotten bitten by the fact that even though the ATmega88 and ATmega328 are supposed to be simple variations on the same part (they have only a single datasheet), there some differences there. There’s also probably much more of a difference between the ATmegaX8 and the other ATmegas, and even more of a difference with their other lines (XMEGA, AVR32).

universal development board fpga

For the ATmegas, people seem to have somewhat standardized on the ATmegaX8, which keeps things simple. For the STM32, people seem to be pretty split between the different lines, which leads to a large amount of incompatible projects out there. Even if you’re just trying to focus on a single chip, the family incompatibilities can hurt you even if you’re not trying to port code — it means that the STM32 “community” ends up being fragmented more than it potentially could be, with lots of incompatible example code out there. It means the community for any particular chip is essentially smaller due to the fragmentation.

One of the most interesting aspects of the STM32 family is its extensiveness; it’s very compelling to think that you can switch up and down this line, either within a project or for different projects, with relatively little migration cost. It’s exciting to think that with one ramp-up cost, you gain access to both $1.58 microcontrollers and 168MHz microcontrollers.

All these advancements and many more are there to completely change how FPGA developments happen in near future .

[ Take a walkthrough our courses]

Tune into this space for more! Till then happy training .

references from

Tags: ,

Categorised in:

This post was written by admin


Leave a Reply

Your email address will not be published. Required fields are marked *