Jump to content
  • 0

Help needed with FPGA programming


Joshua_S

Question

Hello guys,

Some time ago I've watched a talk of the nand2tetris course/project. If you've never heard of it you can check it out here: http://www.nand2tetris.org/Basically it is a course designed to build a computer from the very ground up. It starts with logic gates and goes all the way up to programming a small game project (hence the name nand2tetris).

I've always been curious about doing something with FPGA hardware, but never had any idea of a feasible, yet interesting-result-yielding project. Well, as you can probably guess, up until now that is.

 

During my university days I attended an FPGA workshop and I've read some stuff about the hardware components and the available course material such as Basic Introduction and Design flow of Programmable Logic Device FPGA. If you need to pick up something relating to the PLD or FPGA, you can check it out here: http://www.apogeeweb.net/article/67.html. So I think I kind of have an idea about the difficulty of the project. But since everything I've been reading just made me more excited, I decided I absolutely want to give this a shot. Now there's a lot of FPGA information out there, so I'm surely still missing a lot of important information, but I would like to get started and think the best way to learn is to actually experiment with a real FPGA instead of wasting too much time with HDL simulations only to become used to functions that aren't going to synthesize on the board anyway.

 

So I now would like to ask you about some things I'm still unsure about and would like to have clarified before buying an expensive development kit. I've read several articles about Altera and Xilinx and right now my choice would be a Spartan 3E Starter Board - this one to be exact: https://store.digilentinc.com/spartan-3e-starter-board-limited-time/

The main questions I'm having right now:

  • Is there a general reason that would argue against getting the Spartan E3 board?
  • I actually have no idea how powerful an FPGA really is, but assuming it's running on Cyclone II hardware, it probably should run on a Spartan 3 as well? Or is that in itself already a stupid question, as FPGA comparison doesn't work so easily?
  • In general, who is more newbie-friendly, Altera or Xilinx? (I've worked with VHDL before, which I think is Xilinx, right? Altera's Quartus is probably very similar?)
  • From how I understand the FPGA toolchain, in the above linked offer there should be everything included to get me going. right? 

 I also have this second candidate: http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,400,836&Prod=ATLYS

  • Maybe I'm an idiot, but as I read the offer, *only* the board is sold? I.e., in contrast to the first offer, I would need additional stuff to get something running on the board?
  • It also strikes me as a mayor drawback that there is not really an output option besides a few LEDs. which for me would be very annoying; I'm already unhappy about the board linked before *only* having a small display (which in itself, however, is awesome to have of course).
  • This might also be a stupid question: I remember from back in the FPGA workshop I mentioned that getting a number-display to run is not that hard at all. How much more effort is it to get something displayed on a screen (either an attached one or a PC screen accessed via one of the available ports)?

And as a final question: I've also seen some very much smaller boards than the ones linked here, that are also much cheaper. Are the boards I'm looking it overkill for what I'd like to do with them? Or does actually the contrary hold, and such a project wouldn't even run on one of the smaller boards available?

 

Regards,

Joshua

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

@Joshua_S,

My first piece of advice would be that you avoid anything less than an Artix FPGA.  There are users of the Spartan 3's and spartan 6's out there who need those out of date boards, you don't.  You might even enjoy a Spartan 7 board--I just haven't tried any of them.  Even better, the newer Artix-7 boards will run faster ...

If not the Atlys or Spartan 3E dev board, then what?  My next recommendation might be the Arty.  While it doesn't have the VGA display, it's otherwise ideally suited for building a soft-core processor.  It has a network port, and a DDR3 SDRAM, and four PMod ports.  One of those ports could easily connect to an SD-Card and you'd have all the peripherals necessary to experiment with building a soft-core processor.  You can see my own efforts here if you are interested.

If you really want the video capability, then perhaps you'd like to examine the Nexys 4 DDR or Nexys Video boards?  The Nexys 4 DDR supports VGA, and the Nexys Video board support HDMI.  You might notice the Basys3 board supports video as well.  However, while I love my Basys3 board, I would not recommend it for any soft processor plus video work--it just doesn't enough memory from a screen buffer anywhere.

Just my two cents.

Dan

Link to comment
Share on other sites

+1 on above - consider Spartan 3 as obsolete.

If I may offer some opinion / advice: If you can afford it, stop reading now, order any cheap board and spend a couple of weeks learning basic Verilog / VHDL.
Don't bother looking for the "one board to rule them all", consider the first one disposable.

You don't actually need hardware, the Vivado design flow works up to the point where the bitstream (binary FPGA image) is ready.

I haven't touched Quartus for a while so I can't comment on Xilinx-vs-Altera. I've got one Altera board in my "collection", it requires paid IP to access the memory controller / softcore CPU so it's collecting dust. Back then, their board distributor had a problem with shipping fees and Xilinx did not.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...