FPGA General

What do you guys recommend for experimenting with FPGA's? I know very little about hardware design at this point, but with an extensive programming background I should be able to pickup VHDL or Verilog very quickly. As a hobbyist, I'd just be designing toy projects, but perhaps you guys have experience working on bigger projects and can share some ideas.

As an example, this looks very decent, and would probably last me a while, but perhaps you can shill for a better alternative.
store.digilentinc.com/nexys-4-ddr-artix-7-fpga-trainer-board-recommended-for-ece-curriculum/ (Pic related)

While I'm starting this as a question, since we do not have any FPGA or EE posts, let this serve as a general thread.

Other urls found in this thread:


Anything iCE. You can synthesise it with FOSS.

This, but to be clear it's not everything iCE. It's specifically the iCE40 chipset. It's the only FPGA with a completely FOSS verilog to bitstream toolchain.

Open source hardware? Oy vey!!! How long before that is shut down? T-t-he goyim c-can't build a RISC processor with that can they???

Software programming and stuff like VHDL and verilog while looking similar, require a different mindeset and approach of designing the code.

I have heard that, but I look forward to learning the different approach. I am a stable genius so it shouldn't be too difficult. It's 'just for fun' too, so there's no time pressure if I do go at a leisurely pace.


No one knows more about horses than me, nobody. Horses are great, don't we love horses? You know they have a lot of horses in MONTANA! Anyone from Montana here? Beautiful. You know I won Montana and Idaho in a land slide folks. I like to win. Do we like winners? Like a race horse, you ever see those horses, the ones that just win all the time. I like those horses. And we're going to keep winning like a prized race horse. Big league.


Why would someone want an FPGA board rather than a SBC with a low powered processor? I figure the latter will use more power, but I assume the other factor is because an FPGA is a lot cheaper when you manufacture a product?

Speed and ability to do things in parallel. FPGAs are not running software, they're just a collection of logic blocks and DSP units. When you write your VHDL or verilog description of the circuit, synthetizator figures out how to connect logic blocks together to realize your circuit. You can do things that takes conventonal Von Neumann processor hundreds of cycles in a single cycle on an FPGA.

What are the most common clock rates fpga can hit?

I'm curious how the Ethernet and USB ports work on that board. Are there routines you load into the FPGA to get a TCP/IP stack? Also how well can you implement numerical operations on an FPGA? Do you push the work to a FPU, or again load a routine to do it all in the FPGA?

Usual FPGA circuit will use multiple clocks depending on the requirements of the circuit. You can have some part running at 1 Hz and push data to some bus running at 100 MHz. They don't usually go above 1 GHz.

Usually manufacturer provides IP (Intellectual property) cores xilinx.com/products/intellectual-property/ef-di-25gemac.html to handle networking, otherwise you build it using state machines. Most FPGAs use special transciever interfaces to push large amounts of data (>1Tb/s).

There is no FPU on FPGA, you can implement one but you usually just send it to DSP or literary build an adder from logic gates.

Oh lordy. Sounds pricy.

I did see that Xilinx have a free WebPACK version of their ISE software which at least runs in linux, so there is that.

As a cheaper alternative, I came across this board from Terasic, which uses an Altera FPGA (owned by Intel). Are they at least comparable to Xilinx? Would a beginner even notice the difference?

No, you could learn with $15 FPGA from ebay. Problem is that there are no external devices on those boards (buttons, leds, displays, connectors) so you have to wire them yourselves. If you're interested in "programming" (which is really logic circuit design) then it's best to use kits with external devices on board. Also there is opencores.org/projects which you can use in place of IP from big companies. For learning that should be plenty of fun.

Cheers, the opencores project looks like a useful resource. I'll most certainly look for kits (terasic and diligent seem to good) to make things a bit easier. As for VHDL itself, I see this book is recommended, would you agree?

Yes, you will also want to have pic related for basics of digital circuits.

I have Mano's book which someone gave me a few years ago, but I'll keep this in mind should the other one be useless.

Tinkering with FPGAs is something I've been meaning to do for sometime. Right now I have my eye on this. It's priced much cheaper than the board OP posted and geared towards the beginner.

Analog stuff could be fun too

I recommend these boards and xilinx ise


The Mojo has a Spartan-6 chipset, Arduino microcontroller and flash along with easy yo access pin outs. It also has a very excellent beginners tutorial: embeddedmicro.com/tutorials/mojo-fpga-beginners-guide

The xilinx micro is so small you can travel with it. Both are tiny as point in fact.

Hope this helps really love my mojo.

Apologies for a dumb question, but what basic output pins do you have on a board like this? I see lots of peripherals but surely you can do basic high/low connections to a broad board, right?

All those connectors on the side (2) are GPIO pins. Pic related for more info.

Ahhh ok. Now for dumb question #2. Is it necessary to master analog circuit design before digital? I know it's not one or the other, but is there a progression which should be followed?

No, unless you're planning to design high speed circuits (GHz and beyond) or you're using analog sensors in your project (which are mostly simple circuits to implement unless you're dealing with low noise or high precision devices). Maybe, if you want to do digital audio then you'll probably have to add low-pass filter to the output (PWM sound). For general digital desigh ohm's law is pretty much all you need. You should at least be able to calculate what value resistor for LED you need. In summary, you can start with digital now and pick up analog bits as you go (most of the time you'll just do pure digital things such as: boolean algebra, karnaugh maps, state diagrams, VHDL... nothing to do with analog electronics).

Ok that's fine then. I have a good grasp on the fundamentals, but I'd have to learn / review things more complicated than basic op-amp's. In fact I have a very nice book which covers such topics, "The Art of Electronics", which sadly I have not gotten around to completing.

Is circuit design the last tech refuge of the straight white man? Seriously now, it does look like a fun unchartered territory where the poz has not set in.


Explain your moronic comment.

I have a gameboy advanced how do I mine bitcoin?

you fucking mong

Do you guys recommend getting a board with an integrated processor? As a beginner this seems like overkill, but it does seems to be the trend these boards are going with, and it doesn’t seems to add much to the price.


An FPGA keeps the Pajeets away.

kys op

Why are you even here?

You can always use a pure FPGA (say Artix 7) and lay out a soft-cpu architecture like MicroBlaze, and run applications with that. It will be slower than the integrated ARM-A9 found in the Zynq-7000 though. There's a lot of hype around the Zynq family at the moment as it does make some problems easier when built as a FPGA/CPU hybrid, especially if you want to transfer existing programming knowledge to your product design. It is also possible to ignore the ARM-A9 and still do something like MicroBlaze, but that would be strange. Perhaps one idea is to buy an entry level FPGA at the beginning and then a higher end Zynq board once you gain experience.

phone wars shitflinging and speccy dick-measuring, but you guys are pretty crap so far. Step up your game, 9gag

What the hell did I just read???

No. Look at the FPGA videos you find on youtube, nearly all of them are by some variation of Pajeet Vindalutikapopadom. Now on the plus side, these are probably top-tier Brahmin class Indians, which is fine. What you don't want are the lazy low skilled ones who poo all over an enterprise javascript project. What I have noticed, is that the the real annoyance in Holla Forums, the purple haired SJWs, are caught and contained by the Raspberry Pi filters. There's even zynq boards specially designed for Python programming, so even if they dream about advancing, there are plenty of traps preventing them from ruining electrical engineering.

Video for pic related, quite interesting.