Today's beginner FPGA board - Page 1
Forum section: electronics / beginners

author: DrMag
author_rank: Regular Contributor
timestamp: December 11, 2014, 04:55:52 pm
content: I'd like to get started with FPGA's. There are so many choices out there, I thought I might ask some experts. Currently I'm leaning to either the Spartan-6 (using aMojo v3, though there are other good candidates) or the Artix 7 (using aBasys 3). The on-board peripherals of the Basys are convenient, but could be in a sense limiting, so that's not really the concern. My main concern is which platform would make more sense for someone just getting started--the newer or the older? I have no use for the Arduino capabilities of the Mojo, so one idea I've had would be to learn on the Basys, then design and build my own Mojo-like board, but it seems most beginner-oriented tutorials I can find are geared toward a Spartan.I've considered going Altera, with something like theDE0 Nano, but it seems Xilinx is more commonly used at my place of employment. Perhaps that's a misconception, though, since one of my projects I know used an Igloo device.Were I to go with a Xilinx FPGA, which would you suggest?

author: jeremy
author_rank: Super Contributor
timestamp: December 11, 2014, 05:30:44 pm
content: I have the Nexys 4 and it's great, so I suppose the basys would be good too. Only thing that sucks about these dev boards is the lack of a decent high speed data transfer interface to the PC via USB.

author: tggzzz
author_rank: Super Contributor
timestamp: December 11, 2014, 05:52:22 pm
content: You would probably benefit from defining what you want to do with the board.If you want high-speed interaction between a computer and the programmable logic, consider a Zynq board (e.g. MicroZed).If you want a lot of data, get a board that has on-board memory.If you want high-speed I/O, make sure the board has a decent connector (preferably impedance controlled) and plenty of evenly-distributed GND pins (most "amateur boards" don't).If you want to do the equivalent of "hello world", then get a board with plenty of on-board peripherals/LEDs/switches.

author: belasajgo
author_rank: Contributor
timestamp: December 11, 2014, 07:49:30 pm
content: My first FPGA development board was the Altera DE1 board, my second board was the Xilinx Spartan 3E board. I like the Altera board more than the Xilinx board, the same is with the software, I like that from Altera more than that from Xilinx. I also think that the FPGAs from Xilinx are more commonly used.When choosing your board, you must think about what you (will) need. I wanted to have many inputs and outputs to connect different things to the boards, that's why I bought the DE1 from Altera and the Spartan 3E from Xilinx. For getting started with FPGAs, I would probably suggest to a beginner to buy one of the low-cost development boards like the DE0 / DE0 Nano boards from Altera or the Basys / Nexys boards from Xilinx. Then after you have some experience with FPGAs, you can buy a better board (then you will know what you need).I was also a complete beginner when I bought my Altera DE1 board, at that time did the DE0 boards not exist. I am happy I started learning with an Altera board, because even with experience using the Altera FPGA software, I found it more difficult to work with the Xilinx software.Development boards with Altera FPGA you can find at Terasic (www.terasic.com), development boards with Xilinx FPGA you can find at Digilent (www.digilentinc.com). I have no experience with other FPGA brands, but I also found some interesting development boards with Igloo FPGAs.

author: Rigby
author_rank: Super Contributor
timestamp: December 12, 2014, 03:06:36 pm
content: If you're just starting, and you already have general electronics experience, then I would recommend either then DE0-Nano, or the Lattice MachX02 breakout board.For Xilinx, the dev boards just don't seem anywhere nearly as useful to me, when I look myself at which to buy. Mojo board, perhaps; as it's mostly just a breakout board for the Spartan 6.If you don't like ISE, you can also use PlanAhead, which is installed with ISE. Apparently, PlanAhead is what the newer Vivado suite is based on.

author: DrMag
author_rank: Regular Contributor
timestamp: December 12, 2014, 06:01:52 pm
content: Thanks for the replies. A few responses to clarify:I do have electronics experience, and have done a lot of work with microcontrollers, so I'm only starting with FPGAs.Tggzz, my interests lie in remote sensing applications (particularly satellites), so it sounds like I'd want a combination of lots of memory and lots of high speed I/O. From prior experience, I know that any dev board can't be an end-all solution, so purchasing a board would be primarily to learn how to work with FPGAs. If the dev board doesn't fit an application later, I don't mind (and maybe even welcome) having to develop a specialized board myself.Rigby, why does the DE0-Nano seem more useful to you?Jeremy, is there much difference between the Spartan and Artix devices in terms of programming? E.g., can I get by easily enough reading tutorials geared for a Spartan while working with an Artix?

author: Rigby
author_rank: Super Contributor
timestamp: December 12, 2014, 06:20:34 pm
content: The DE0-Nano is a great little starter board.It's got a large number of gates for the price.It doesn't have a whole pile of peripherals on board that you're not going to use, such as huge arrays of switches and 7-segment LEDs, but a few that you likely will use, such as onboard SDRAM and 8 discreet LEDs that you can use for whatever you like.LOTS of broken out pins so that you CAN easily add the IO peripherals that you DO want to use.Very small, easily powered over USB alone.

author: tggzzz
author_rank: Super Contributor
timestamp: December 12, 2014, 06:31:30 pm
content: Quote from: DrMag on December 12, 2014, 06:01:52 pmA major distinction between the Spartan and other devices is the development environment. AFAIK an explicit choice needs to be made between ISE (old) and Vivado (new). Be aware learning which butttons to press on the tools is non-trivial.Another distinction is that the newer devices have more capable i/o especially w.r.t. SERDES, but do verify the details of voltages and SERDES "standards" match your requirements.Designing your own FPGA board for the larger devices is not for the faint-hearted - expect to need 6-10 layers and athoroughunderstanding of the manufacturer's app notes. Seriously consider getting the core system on a module, and then adding just your own i/o on carrier boards - that should be sufficient to satisfy any curiosity (but maybe not production!). Of course, if designing and debugging FPGA/DRAM/SRAM interests you, then feel free to make your own boardSeriously have a look at the MicroZedfamilyof boards, and look athttp://www.trenz-electronic.de/for a different range. Those will enable you to scope out the lie of the land, and help crystallise your thoughts.Personally I would suspect that the Zynq's combination of ARM+FPGA on the same chip would be valuable to you. Don't forget to ensure decent layout and connectors for high-speed signal integrity.

author: Rigby
author_rank: Super Contributor
timestamp: December 12, 2014, 10:32:32 pm
content: Altera has FPGA + ARM devices as well. I agree with everything in the above post, also.

author: janoc
author_rank: Super Contributor
timestamp: December 12, 2014, 11:08:39 pm
content: The Papilio (http://papilio.cc/) is a pretty good as a dev board.I have the One and Pro and they are decent little boards. The Logic Start Megawing and the free book that comes with it is a pretty good starting point. There is plenty of documentation and examples around for these too.

author: MacAttak
author_rank: Unknown
timestamp: December 15, 2014, 02:40:17 am
content: Mojo v2 was useful for me to learn the basics of FPGA. The 8 onboard LED's are handy for simple indicators without needing to add any external hardware. It does lack external memory, which is something I would have liked to have. There is an add-on board with 32MB of sdram, but I've not used it.One thing that I like about the LX9 spartan is that *IF* I ever did manage to make something worthy of becoming a real product, I know that it could fit within a QFP package. I'm just a mere amateur and it's lots easier to deal with routing pins from a QFP than a BGA... and the LX9 used in the Mojo is the largest LU count spartan that is offered in QFP format.

author: hamster_nz
author_rank: Super Contributor
timestamp: December 15, 2014, 03:43:55 am
content: Unless you have a solid project in mind, buy a board that has the features you initially want to play with, and focus on learning the tech with minimal distraction. Maybe the best thing would be to find the material that suits your learning style, and then get the board that works with that material.It is very unlikely that your first board will be ideally suited to a big project, unless you have a really good idea of what you want to implement or the board is over-speced for what you need. Seriously consider getting a very low end board to get started with, one which is USB powered makes it as simple as plugging in a cable.Just don't get a Digilent Basys2, the board is very old, the FPGA small I think it is only in production because of the course material based around it. It also has a very poor oscillator on it. The Nexys range are great.Perhaps one of the biggest disappointments for low end boards is the FPGA <-> Host bandwidth. If you require more than fast RS232 can supply then choose carefully!It usually turns out that whichever toolset you learn with you will most likely stick with. I learnt on Xilinx ISE and find that better than Altera's Quartus or Xilinx's Vivado, but then Quartus fans feel the opposite. It's a bit like programming IDEs, by the time you have played with three or four you will start to see them as being pretty much equivalent and you focus on tasks not the IDE.I really like my new Basys3, even if it forces me to use Vivado tools. The Artix7 FPGA is fast, relatively large (comparable to the Altera one ona the DE-0 Nano), and the board has lots of simple I/O to play with. The DE-0 has DIP switches and a couple of "must use a biro" push-buttons - enough for config settings for a CPU but not that easy to play with.Oh, and trust me, as a beginner you will not get SDRAM working outside of a SoC design - you will need a lot of study, experience and troubleshooting skills to get that far.

author: Kjelt
author_rank: Super Contributor
timestamp: December 15, 2014, 07:58:03 am
content: What is your experience with VHDL, simulation of FPGA's/CPLD's?Call me old fashioned but you don't start learning FPGA's by starting with a satelite big time project and see where you get stuck that will be a steep learning curve ending up in a huge success but odds are it is gonna end in a big frustration.My advice start small get the hang of it and work your way up from there.So what toolsuite and programmers/debuggers do you have access to (or through your company), Altera or Xilinx? Choose that one since buying a toolset is expensive.Than choose a small device preferably a CPLD and start making some small subdesigns in VHDL from your large design. Start playing and learning from it till you feel confident enough that the circuits that you design simulate ok and work ok and check the timing between the two. Than you're ready to go looking for a nice FPGA board

author: awallin
author_rank: Frequent Contributor
timestamp: December 15, 2014, 08:34:19 am
content: Quote from: janoc on December 12, 2014, 11:08:39 pmPipistrello has the same pinout as Papilio/PapilioPro for the wings, but a larger Spartan6 LX45 fpga (BGA footprint, not so nice for DIY..)http://pipistrello.saanlima.com

author: Scrts
author_rank: Frequent Contributor
timestamp: December 15, 2014, 10:27:33 am
content: I've bought the SoCKit from Altera, which was 249USD and it's just great! Has everything I need and will need in the future: from basic VGA output and audio in/out up to high-end transceiver stuff plus dual core ARM. The FPGA is the biggest in the family and has lots of internal memory for signaltap to put as many samples as possible. I'd say I'm really happy with the board that has so much stuff on it. Bare board with lots of PMOD connectors requires lots of time to create custom boards to interface them to the FPGA.

author: janoc
author_rank: Super Contributor
timestamp: December 15, 2014, 11:03:29 am
content: Quote from: awallin on December 15, 2014, 08:34:19 amYou get Spartan 6 LX9 on the Papillio Pro board. Papillio One has Spartan 3E. Pipistrello also costs double ($84 vs $155).