Future proof FPGA start board (<$300) - Page 1
Forum section: electronics / general

author: hans_ober
author_rank: Newbie
timestamp: April 29, 2018, 06:19:35 pm
content: Help me select a FPGA starter board! I'm new to FPGAs and wanted to buy a dev board to learn with.I can buy from element14 (Newark, $300 budget is because I've got some leftover credit that needs to be used).I was looking at the Arty A7 boards by Digilent, but then I noticed that the Arty Z7 which has a Zynq SoC was available for a little more. I want to buy a future proof board, something that I can use for more complex projects a little later. I've got experience with microcontrollers, so I'm looking for something that's easy to begin with (eg Arduino), but something that I can still use in a year or so (capable of complex designs eg STM32).I'm looking at starting with basic digital design at first, and will then move on to more complex stuff like soft-cores, motor control & image processing - so how many LE's & memory should the board have?I noticed that certain Zynq board come with a SDSoC voucher. For what would I need to use SDSoC (my understanding is that I can use Vivado to program the PL). Also, the SDSoc voucher increases the cost of the boards by $10, whereas buying a SDSoC license from Xilinx is ~$1000 - so I might as well get a board with the voucher if I'll need it.I can't find any definite difference between the Series 7 Spartan & Artix. Besides the differences in LE, what are the differences between these parts (hierarchy wise)?If I buy a Zynq based board like the MiniZed, Arty Z7 or Zybo Z10, would the ARM core be any additional to deal with (especially in the beginning when I'm learning)?How's the DE0 Nano Soc?I wanted to play around a bit with video, but it looks like I can use a VGA PMOD adapter on any of the Xilinx boards.

author: asmi
author_rank: Super Contributor
timestamp: April 29, 2018, 07:10:24 pm
content: If you want a future-proof board, make sure that whatever one you choose has FMC connector as no matter what peripherals are on board it's only a matter of time until you come across a chip that you'd like to connect to FPGA, but won't be able to because PMOD connectors are not suitable for anything even remotely hi-speed.

author: rstofer
author_rank: Super Contributor
timestamp: April 29, 2018, 08:47:04 pm
content: There's no such thing as 'future proof'.I like the Digilent Nexys4 DDR board for all the gadgets. I build the LC3 project (Google for it) and having 8 7-segment displays was nice. I like having pushbuttons and toggle switches. The FPGA is quite large.https://store.digilentinc.com/nexys-4-ddr-artix-7-fpga-trainer-board-recommended-for-ece-curriculum/A cheaper board with a smaller chip is the Basys3 Artix 7. I have this board as well. It uses a somewhat smaller chip but it has some built-in gadgets like 7-segment displays and toggle switches.https://store.digilentinc.com/basys-3-artix-7-fpga-trainer-board-recommended-for-introductory-users/I like the Arty 7 board for the headers but it doesn't have gadgets on board.For the Zynq related boards, here's a choicehttps://store.digilentinc.com/fpga-programmable-logic/by-technology/zynq/The Zybo Z7-20 seems interestinghttps://store.digilentinc.com/zybo-z7-zynq-7000-arm-fpga-soc-development-board/

author: hamster_nz
author_rank: Super Contributor
timestamp: April 30, 2018, 04:03:55 am
content: Quote from: rstofer on April 29, 2018, 08:47:04 pmFully agree with rstofer.Rather than "future proof" there are board that are good for leaning on, and those that are suited for advanced projects due to FPGA size, memory size or I/O capability.Unless you have a project in mind you might be better off getting a second hand "entry level" board until you decide what features you need.Even on one of these you can do very complex projects. Looking at a Basys3 board in front of me- 33,000 logic cells, 200kB of memory and 90 DSP slices - that would have been a high-end FPGA a few years ago.Still that is just a tiddler vs a Digilent Nexys Video - 200,000 logic cells, 1.5MB block RAM, 740 DSP slices, 512MB of DDR...

author: james_s
author_rank: Super Contributor
timestamp: April 30, 2018, 06:28:30 am
content: I found it took a very long time before I was anywhere close to filling up even fairly low end FPGAs. Most of my projects have been memory bound, I run out of internal block memory long before I fill the FPGA fabric, unless I connect external RAM and ROM.

author: obiwanjacobi
author_rank: Super Contributor
timestamp: April 30, 2018, 06:52:52 am
content: If you have not decided on the FPGA brand/type/model yet, I would suggest you look at the (free) tools of the different manufacturers and decide what you like best. Let that weigh in on your decision on what board to buy.

author: hamster_nz
author_rank: Super Contributor
timestamp: April 30, 2018, 07:02:13 am
content: Quote from: hans_ober on April 29, 2018, 06:19:35 pmAnswers:* I've never used SDSoC to program a Zynq, so can't provide an informed opinion. I have programmed Zynq using Vivado, and it works for me.* It looks like the current Spartan 7 are the same as Artix, without the transceivers. Or another way, if you don't intend to use the high speed transceivers than they are the same.* The only downside of the Zynq/ (or Cyclone V SoC) is that some bits are only available to the Processor, not the FPGA fabric. That can be annoying to have external connections that you can't use in the context. Apart from that, you can treat it as a regular FPGA for a lot of the time.* Programming the FPGA/CPU on a DE0-nano SoC is very much like a Zynq. The form-factor / peripherals of of the board would be the deciding factor. Forced to chose I would go Arty Z7.* Video -The Arty Z7 has HDMI in/out. The DE0 doesn't

author: SiliconWizard
author_rank: Super Contributor
timestamp: April 30, 2018, 12:47:43 pm
content: Quote from: rstofer on April 29, 2018, 08:47:04 pmI agree with that. Plus, define "future"? Is it 1 year, 2 years, 5, 10, 20? What kind of projects are you interested in? And why would you tie yourself so badly to a specific vendor/FPGA model right from the start?So I personally wouldn't recommend an expensive and too complex platform for a beginner. It doesn't make sense IMO and too many features/too complex FPGAs may distract the beginner more often than not instead of focusing on learning the basics.You can find many boards at the $100-$150 price tag (or even less) that would be more than adequate for learning purposes.Digilent boards are great.And if you're more of a hardware person than a software one, have a scope and don't care for LED displays and gadgets, you may even learn with a breakout board of some kind for like $30, for instance a Lattice MachXO2 breakout board. No problem implementing a VGA controller on those, although they have pretty limited embedded RAM. A much "beefier" solution at a very reasonable cost could also be a Numato Saturn board. Spartan 6, 64MBytes onboard DDR RAM, FTDI chip... $140.This is general suggestion. As I got it though, you'd like to buy from Element14 since you have some credit. They seem to have Lattice as well as some Digilent boards. Limited choice though. They also have the ARTY ARTIX-7 which would be great for a beginner.

author: iMo
author_rank: Super Contributor
timestamp: April 30, 2018, 01:17:28 pm
content: There are $20 Spartan6 LX16+32MB SDRAM, or Artix7-35+256MB $56 boards on the ebay to get. As a beginner I would start with that $20 one (ISE 14.7 is still a well working IDE), mastering all the fpga/verilog/vhdl stuff would take you into 2020.I would add $xxx to that $300 of EL14 credit and will buy an oscilloscope or LA

author: NorthGuy
author_rank: Super Contributor
timestamp: April 30, 2018, 02:00:29 pm
content: Quote from: imo on April 30, 2018, 01:17:28 pmISE is not maintained any more and won't support newer parts. Thus it's not that good for future proofing. I'd go with 7-series and Vivado.Zynq is substantially different. If you want Linux and lots of "power", it's a good idea to go with it. If your goal is to learn, I would rather take a regular FPGA.

author: hans_ober
author_rank: Newbie
timestamp: April 30, 2018, 03:38:15 pm
content: Off topic, but what would you get?How's the Analog Discovery 2 for $250?I might get the MiniZed @ $89, it's a single core Zynq with a smallish FPGA (compared to the others), but it's got no video out & I'll need to use the VGA PMOD.

author: rstofer
author_rank: Super Contributor
timestamp: April 30, 2018, 03:50:16 pm
content: I have both ISE and Vivado installed - no big deal.I'm right back where I started with my comment above. I want gadgets on-board. I want switches, 7-segment displays, pushbuttons, LEDs, memory (hopefully static ram) and all the gadgets necessary to build a CPU project. The Nexys4 DDR comes with a component to make the DDR appear as static ram. I haven't used it but I do like the idea that I don't have to create it!It seems to me that a new user desperately needs gadgets. They are quite useful for debugging (I run error conditions out to the LEDs and single step the logic). If you don't have gadgets, you soon have to build them because an FPGA, sitting on a board with nothing more than an LED or two, is just plain boring.I have a couple of the Artix 7 boards but they wouldn't be my first choice for building a CPU project. I NEED the memory address and memory data display or perhaps I use 3 switches to select among the 8 registers in RISC project.I have a bunch of boards but I think the Nexys4 DDR is the way to go. Once I have components written for the gadgets, I can port them to other projects. It's just a really nice board!https://store.digilentinc.com/nexys-4-ddr-artix-7-fpga-trainer-board-recommended-for-ece-curriculum/And the price fits!

author: rstofer
author_rank: Super Contributor
timestamp: April 30, 2018, 04:03:39 pm
content: Quote from: hans_ober on April 30, 2018, 03:38:15 pmThere's another thread going around about the AD2. I like it! I don't think there is anything anywhere near that price that can even come close. I have the traditional tools as well but when I want to demonstrate some principle, the AD2 is the way to do it. It also does better X-Y plots than my scope. And a 27" display is bigger than a 7" display - an important feature for aging eyes. And screen capture... Sometimes you just have to have differential inputs on a scope channel - the AD2 has it by default.Consider charging and discharging an RC circuit with a square wave. It is pretty obvious how to measure the capacitor voltage but getting the current requires measuring the voltage drop across the resistor. That is an example of where differential measurements come in quite handy. Channel 1 across the resistor, channel 2 across the capacitor. Now you can plot current and voltage as the capacitor charges and discharges with the square wave input. It seemed important at the time...The MiniZed doesn't work for me. As I stated above, I want on-board gadgets. I want a complete development board, not something where I have to build daughter boards to see my project work. Opinions vary of course.

author: hans_ober
author_rank: Newbie
timestamp: April 30, 2018, 04:14:12 pm
content: Yes, I'm interested in CPU projects, which is why I was concerned about going with a low end Zynq board and not having enough LEs to work with.I've got a couple of LEDs/buttons, so I don't need them on the FPGA board.I was looking at the specs of the Arty Z7 & Aybo Z7 (XC7020 versions), and if my math is right, the programmable logic on those parts comes pretty close in size to the Nexys. Since, they're Zynq, they also have the ARM cores to play around with.

author: james_s
author_rank: Super Contributor
timestamp: April 30, 2018, 04:52:41 pm
content: What kind of CPU projects? I have complete retro computers and 70s arcade games running on $13 dev boards. This is is one of the projects that got me started:http://searle.hostei.com/grant/Multicomp/

author: rstofer
author_rank: Super Contributor
timestamp: April 30, 2018, 06:16:47 pm
content: Of course you can build a CPU without gadgets. But you can't actually use it for much beyond a dedicated application. I also have a Nexys2 board running a version of the T80 core and PacMan. Very cool project but not exactly a usable computer. As a General Purpose Computer - running Fortran.I built a complete IBM 1130 on a Spartan 3 Starter Board and eventually ported it to a Nexys2 board. This includes the CPU, serial ports for the card reader, printer and console/keyboard along with an mbed attachment to send the plotter output to my LaserJet. This system runs the original IBM software, unchanged. In every respect, except speed, it is identical to the original. The original system ran at 400 kHz and mine runs at 50 MHz. The 1130 was the first computer I ever used - beginning back in '70. Of course I'm still in love with it!To be a system, I need displays. The accumulator is a common place for the system to present various operational and error codes. It kind of matters if you can't see a 0x2002 (waiting for keyboard input) or 0x4000 (waiting for a new job). I didn't have enough displays so I had to build an off-board 16 digit 7-segment display. I don't use this any longer but it was useful when building the project. I also had to build an off-board set of console entry switches. This kind of thing wouldn't be necessary with the Nexys4 DDR. It also wouldn't be necessary to build a separate board to hold the Compact Flash (file system) because the Nexys4 DDR has an SD card socket. If I was smart enough, I wouldn't have to use the mbed because the Nexys4 DDR has an ethernet jack. Alas, I'm not that smart... I would need to develop another soft core (ARM?) to run the ethernet stack. A Zynq might be ideal! But it would need to be a Zynq with about 4000 LUTs. More or less depending on architecture...Then there is the LC3 project (Google for it). It is most helpful to be able to display various registers and status bits while debugging individual instructions. This is a nice college grade project and during development it is most useful to be able to single-step and watch the various registers. I had 16 registers I wanted to display - it really seemed important at the time. The project is lacking any OS or file system and has only a serial connection to the PC terminal emulator. Not exactly earth shattering but an interesting introduction to RISC CPUs.I also have a ZTEX 2.01b board along with the debug board. It's nice but the FX2 stuff is pretty clubby.https://shop.ztex.de/product_info.php?products_id=87https://shop.ztex.de/product_info.php?cPath=25_26&products_id=82One thing about the Digilent boards and their Adept software, board programming is dead simple. This isn't such a concern with Vivado but for ISE I used their software rather than Impact.I want the gadgets!