FPGA General

Joseph Edwards
Joseph Edwards

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:

clifford.at/icestorm/
latticesemi.com/icestick
github.com/bqlabs/icestudio
xilinx.com/products/intellectual-property/ef-di-25gemac.html
terasic.com.tw/cgi-bin/page/archive.pl?CategoryNo=17&Language=English&No=830&PartNo=1
opencores.org/projects
store.digilentinc.com/basys-3-artix-7-fpga-trainer-board-recommended-for-introductory-users/
store.digilentinc.com/analog-discovery-2-student-bundle/
embeddedmicro.com/mojo-v3.html
xilinx.com/products/boards-and-kits/1-3i2dfk.html
embeddedmicro.com/tutorials/mojo-fpga-beginners-guide
store.digilentinc.com/zybo-z7-zynq-7000-arm-fpga-soc-development-board/
youtube.com/watch?v=UeatDM-sp8U

Ian Foster
Ian Foster

Anything iCE. You can synthesise it with FOSS.
clifford.at/icestorm/
latticesemi.com/icestick
github.com/bqlabs/icestudio

Joseph Moore
Joseph Moore

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.

Joshua King
Joshua King

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???

Brayden Ortiz
Brayden Ortiz

but with an extensive programming background I should be able to pickup VHDL or Verilog very quickly
Software programming and stuff like VHDL and verilog while looking similar, require a different mindeset and approach of designing the code.

Lincoln Smith
Lincoln Smith

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.

William Powell
William Powell

stable genius

What?

Wyatt Hall
Wyatt Hall

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.

Michael Wilson
Michael Wilson

Oh.

Easton Martin
Easton Martin

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?

Connor Martin
Connor Martin

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.

Nicholas Foster
Nicholas Foster

What are the most common clock rates fpga can hit?

Leo Cooper
Leo Cooper

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?

Hunter Richardson
Hunter Richardson

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.

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?
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).

Do you push the work to a FPU, or again load a routine to do it all in the FPGA
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.

Daniel Nelson
Daniel Nelson

The Xilinx 10G/25G Ethernet MAC/PCS is provided in netlist form to licensed Ethernet customers only.
Oh lordy. Sounds pricy.
Vivado Design Suite
$2995

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?
terasic.com.tw/cgi-bin/page/archive.pl?CategoryNo=17&Language=English&No=830&PartNo=1

Matthew Bell
Matthew Bell

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.

Nolan Roberts
Nolan Roberts

(checked)
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?

Henry Adams
Henry Adams

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

Joseph Foster
Joseph Foster

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.

Brody Ortiz
Brody Ortiz

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.
store.digilentinc.com/basys-3-artix-7-fpga-trainer-board-recommended-for-introductory-users/

Analog stuff could be fun too
store.digilentinc.com/analog-discovery-2-student-bundle/

Jack Hernandez
Jack Hernandez

I recommend these boards and xilinx ise

embeddedmicro.com/mojo-v3.html
xilinx.com/products/boards-and-kits/1-3i2dfk.html

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.

Levi Nguyen
Levi Nguyen

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?

Matthew Cooper
Matthew Cooper

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

William Jenkins
William Jenkins

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?

Michael Williams
Michael Williams

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).

David Flores
David Flores

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.

Daniel Campbell
Daniel Campbell

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.

William Barnes
William Barnes

t. someone who has no idea about programming nor (analog nor digital) circuit design

David Lee
David Lee

Explain your moronic comment.

Josiah Bailey
Josiah Bailey

I have a gameboy advanced how do I mine bitcoin?

Noah Wood
Noah Wood

advanced
you fucking mong

Alexander Howard
Alexander Howard

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.

store.digilentinc.com/zybo-z7-zynq-7000-arm-fpga-soc-development-board/

Jeremiah Rivera
Jeremiah Rivera

An FPGA keeps the Pajeets away.

Benjamin Brown
Benjamin Brown

buying into the silicon jew
kys op

John Butler
John Butler

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.

Joshua Wilson
Joshua Wilson

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

Parker Ramirez
Parker Ramirez

What the hell did I just read???

Gabriel Bennett
Gabriel Bennett

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.
youtube.com/watch?v=UeatDM-sp8U