My First FPGA DevKit - Page 1
Forum section: electronics / projects

author: Shenandoah
author_rank: Regular Contributor
timestamp: June 21, 2013, 08:11:14 pm
content: Hello,And this is my first but not last post hereFirst please excuse my knowledge since I'm a self-taught EE and still learning stuff.I've project in mind that uses FPGAs. I was looking for an affordable devkit that I can stick my FPGA chip on it without having to solder it. I really cannot find one.I'm okay with Xilinx or ALTERA. Any suggestions?Help appreciated.

author: fpga
author_rank: Regular Contributor
timestamp: June 21, 2013, 08:31:26 pm
content: This topic has already been heavily debated on other posts.For Altera look at Terasic, for Xilinx look at Digilent.If you are beyond college years, look up Arrow Electronics and Avnet for their upcomming training seminars. It's the quickest and cheapest way to get a jump start.First find good tutorials, examples, and training material before choosing a development board. Then when choosing a well supported development board, choose one with all of the interfaces and headers you are interested in. It is unlikely would be able to make much use of discrete BGA or TQFP devices and a solderless breadboard or point to point wiring.

author: Shenandoah
author_rank: Regular Contributor
timestamp: June 21, 2013, 08:52:57 pm
content: Thanks for the info. I was looking at something very basic, not prototype boards that I can use with any FPGA chip. Price range less than $300.So after programming an FPGA I need to desolder it...the pins will look ugly anyway...

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: June 21, 2013, 09:21:54 pm
content: Quote from: Shenandoah on June 21, 2013, 08:52:57 pmYou clearly need to do some more research....

author: Dajgoro
author_rank: Frequent Contributor
timestamp: June 21, 2013, 10:29:00 pm
content: QuoteIf you want to use a single chip for multiple experiments, then just buy a Mercury module.It is a small nice module that fits in a 64pin dip package, so you just solder a socket on your experiment and then you place the module in it. Nice thing about it is that it has 3.3 to 5V level converters, so you don't have to worry about that, and it also has an integrated a/d converter, ram chip, and a flash for booting the FPGA. It has a usb connector for programming, so you don't even have to buy a JTAG cable.I have it, and it is a very neat solution for getting a proper FPGA in a though hole version for doing some experiments. It costs 59$, which is much less than 300$.http://micro-nova.com/mercury

author: lgbeno
author_rank: Frequent Contributor
timestamp: June 21, 2013, 10:37:35 pm
content: Terasic de0 nano (altera cyclone 4) is a great kit for people of all skill levels and its about $100. You won't be be able to desolder it though.

author: FrankBuss
author_rank: Unknown
timestamp: June 22, 2013, 01:17:34 am
content: Quote from: Shenandoah on June 21, 2013, 08:52:57 pmUsually FPGAs are volatile, so you can't program it like a flash. They need an external flash or a microcontroller to program it (or external JTAG programmer) each time you power it up. And of course with most development board you'll get FPGAs in BGA cases, would be very difficult to desolder it and then solder it again.But most FPGAs are also available in TQFP, so all you need is a TQFP to DIP adapter (cheap at eBay) and a JTAG programmer for it, if you want to use it in on a breadboard. And soldering a TQFP chip on your own PCBs is easy, too.But maybe better to buy one of the mentioned dev board, if you are new to FPGA development. I have a DE0 nano, and you can just connect the headers with jumper wires to anything you want.

author: vvanders
author_rank: Regular Contributor
timestamp: June 22, 2013, 03:18:35 am
content: I've heard good things about the Nano.Lattice also makes a couple nice cheap boards. You can pick up their XP2 board for $40 which is hard to beat. Comes with RS232 over USB, SPI flash, parallel SRAM and ton of headers.

author: fpga
author_rank: Regular Contributor
timestamp: June 22, 2013, 03:29:07 am
content: Guys, I think Shenandoah was joking about desoldering after programming the FPGA.I took a quick look athttp://micro-nova.com/mercuryand it looks great for hobby and prototype purposes. Plus you can't get much cheaper than $59.But I would not recommend it as a first board if you are just starting out because the single example they provide is very limited. I think that Terasic and Digilent provide much more extensive examples and tutorials. Once you've done a few designs of your own, then it looks like a nice little board for doing projects.

author: free_electron
author_rank: Super Contributor
timestamp: June 22, 2013, 07:54:03 am
content: What the hell is everybody blabbering about ?Cplds and fpga are programmed in-system. All you need is 4 wires.The fpga has a dedicated 4 wires to comnect to its configuration eeprom. You hook up the programmer to those 4 wires , click 'program' select the file and the rest is magic.If you buy the terasic cheapest eval board, the programmer is on it. There is a little 10 pin header on the side that brings out the signals. Apply a small flatcable, flick a switch on the board to enable the external prog mode and you are done. Or you buy the 50$ standalone programmer or a 9$ clone from ebay that does both xilinx, altera , lattice and also acts as a usbee , salae or other non authorised logic grabber..

author: Shenandoah
author_rank: Regular Contributor
timestamp: June 22, 2013, 07:05:19 pm
content: Has anyone used FPGA chip in a project such as a simple calculator, that does not use the devKit/board only the chip plugged in your own circuit?

author: Dajgoro
author_rank: Frequent Contributor
timestamp: June 22, 2013, 07:37:21 pm
content: QuoteI had to make a simple calculator as part of a lab at college, but we had Spartan3 dev boards.Actually there is no difference if it is a dev board or a home brew contraption. You will only need to write the ucf file, and from there on it is business as usual.

author: fpga
author_rank: Regular Contributor
timestamp: June 22, 2013, 08:30:05 pm
content: Quote from: Shenandoah on June 22, 2013, 07:05:19 pmFPGAs are a poor choice for implementing applications like calculators which involve sequential computation but don't need the parallelism, deterministic timing, and speed of FPGAs. Calculators, or applications that need slow human interfaces and slow but complex calculation are best implemented using MCUs. Yes, you can implement an MCU within an FPGA or do all of the computation in parallel logic, but the result will be far more expensive, power inefficient, and complex than using an MCU.Ideal applications for FPGAs are where you do need parallelism, deterministic timing, and speed for which MCUs are poor choices. These applications include interfaces, bus bridges, translation from one protocol to another at line speed, signal processing, precise timing, parallel computation, etc.Past projects I've done included data acquisition boards where the timing of the front end muxes, gain, offset, A/D converter, FIFO were timed to achieve optimal performance with minimal switching noise, parsing Ethernet TCP/IP packets in parallel logic, custom DDR SDRAM interface with scatter-gather DMA, multi-channel galvonometer vectoring with laser timing and modulation, mimicking 6521 PIAs interfaced to a legacy 6502 based instrument with EPI interface to an ARM Cortex-M3 MCU, PCIe interface with DMA, peripheral implementing stepper motor control with encoder position feedback, proprietary parallel and serial bus interfaces with scatter-gather DMA, and so on. All of these applications would be very inefficient to implement with normal processors if even possible.A good advanced FPGA project for students has always been to implement a VGA controller. A VGA controller requires maintaining accurate timing, DMA, state machines and also possibly configuration, control, and status. Faults and successful implementation are very observable. A very useful addition would be to implement it with an SPI interface, which would permit you to easily reuse it with MCUs. Many educational DevKits have the VGA connector with either onboard DAC or resistor network.

author: nctnico
author_rank: Super Contributor
timestamp: June 23, 2013, 12:38:22 am
content: Quote from: Shenandoah on June 22, 2013, 07:05:19 pmYes. A dev. kit only serves as a stepping stone.

author: FrankBuss
author_rank: Unknown
timestamp: June 23, 2013, 01:06:26 am
content: Quote from: Shenandoah on June 22, 2013, 07:05:19 pmI've used a CPLD for my Universal C64 Cartridge:http://www.ohwr.org/projects/c64cartridge/wikiAs explained by "fpga", using a FPGA (or CPLD) for a calculator doesn't make sense.

author: Shenandoah
author_rank: Regular Contributor
timestamp: June 25, 2013, 02:26:26 pm
content: NiceI'm thinking of making a simple integer calculator using FPGA just for learning purpose, or a simple uP with a minimal instruction set.Now my understanding is that FPGAs are programmed after they are plugged on the PCB, or is it before using the devkit? What's the standard circuit to interface with FPGA, connecting it to memeory and LED display, e.g?Thanks.

author: FrankBuss
author_rank: Unknown
timestamp: June 25, 2013, 02:33:05 pm
content: See the datasheet of the FPGAs. Usually they have just a RAM, no flash, so when you turn off the power, the program is lost. Most provide 3 ways for programming: with an external SPI flash, with JTAG and with a microcontroller (same interface as the SPI interface, but the clock is generated by the microcontroller).As written by others in this thread, maybe you should start with a FPGA dev kit before you create your own PCB. Use some jumper wires from the dev kit to connect it to a LED display and other hardware you want to access.