Skip to content
0:00 / 0:00

#fpga#latticeice40#verilog

Introduction to FPGA Part 1 - What is an FPGA? | Digi-Key Electronics

DigiKey

226K subscribers • 7 videos on Hallway

YouTube
  • Recommended by 5 people: 5 in engineering communities.
  • A classic. People kept recommending it from 2022 to 2026.
  • Presented by Shawn Hymel
  • Linked in the descriptionShawnHymel/introduction-to-fpgaFPGAwars/apioYosysHQ/nextpnr
  • Made by the vendor. The company whose product it covers made or sponsored it.

Beginner. No background in the topic needed.

623K views4 years ago5 recommendations

HardwareEmbedded systemsElectronics

Shawn Hymel explains what a Field-Programmable Gate Array is, how it differs from microcontrollers, and its basic design flow.

A field-programmable gate array (FPGA) is an integrated circuit (IC) that lets you implement custom digital circuits. You can use an FPGA to create optimized digital logic for things like digital signal processing (DSP), machine learning, and cryptocurrency mining. Because of the FPGA’s flexibility, you can often implement entire processors using its digital logic. You can find FPGAs in consumer electronics, satellites, and in servers used to perform specialized calculations. In this series, we will see how an FPGA works and demonstrate how to create custom digital logic using the Verilog hardware description language (HDL). In this first episode, we examine why you might use an FPGA over other solutions, such as a microcontroller. Additionally, we present several example FPGA applications and cover the basic design flow for creating a digital design in an FPGA. A written version of this video can be found here: digikey.com/en/maker/projects/introduction-to-fpga-part-1-wh… All code examples and solutions for this series can be found here: github.com/ShawnHymel/introduction-to-fpga You will need an iCE40 development board for this series. Any of the boards supported by apio github.com/FPGAwars/apio#supported-boards should work. That being said, I recommend the iCEstick digikey.com/en/products/detail/lattice-semiconductor-corpora… , which is what I will use in the videos. You will also need a breadboard, jumper wires, and some pushbuttons. An FPGA is made up of many programmable logic blocks (PLBs) that can be configured and connected together to create a large number of digital circuits. You create your desired digital circuit using an HDL (we will use Verilog). The synthesis tool converts your HDL into a gate-level representation of the circuit. The place-and-route tool converts that representation into actual configuration information for your particular FPGA. Throughout the series, we will use the apio tool github.com/FPGAwars/apio to manage the build and upload process. Apio relies on underlying tools to complete these steps: - Synthesis: yosyshq.net/yosys/ - Simulation: gtkwave.sourceforge.net/ - Place and route: github.com/YosysHQ/nextpnr - Package: icepack as part of Project IceStorm: github.com/YosysHQ/icestorm - Upload: iceprog as part of Project IceStorm: github.com/YosysHQ/icestorm Many times, a microcontroller, microprocessor, or graphics processing unit (GPU) is capable of accomplishing the job. However, you sometimes need custom digital logic for your particular application, which is where an FPGA can be helpful. Here are some potential applications: - Parallel I/O operations - Data acquisition (DAQ) - Specialized computations - Custom processor Note: while yosys officially supports Verilog-2005, you can find other open source tools capable of synthesiz

Why it's here

5 people recommend this

What people say. Highly recommended as the go-to beginner-friendly video series for getting started with FPGAs.

Moments people linked to

u/Kaisha001in r/FPGA • Recommends

On “Best entertaining YouTubers to learn FPGA programming?”

I love Shawn Hymel, he has a great set of tutorials: [video

u/wotupfooin r/FPGA • Recommends

On “FPGA purchase for a project.”

…ile (in my case a digitized audio wav file) to make fake inputs to feed to the logic. Eventually I'll put it on the iCEstick but there is no point until it's working. I would also have to build the rest of the electronics to get the real audio to the FPGA. Digikey blog - Introduction to FPGA Part 1 - What is an FPGA? The YouTube series link - [video…

u/maredsous10in r/FPGA • Recommends

On “What is an FPGA?”

…istory** Three Ages of FPGAs: A Retrospective on the First Thirty Years of FPGA TechnologyWhere are things headed? Larger FPGAs and more system on a chip approaches where the FPGA fabric is part of a larger system of hard silicon IP. https://ieeexplore.ieee.org/document/7086413 www.youtube.com/watch?v=4ntXSyOhlBY [video The History of the FPGA: The Ultimate Flex [video Xilinx Xcell Magazine FPGA History Topical https://www.xilinx.com/publications/archives/xcell/Xcell32.pdf **More Videos** [video ] [video **More Written Word** https://digilent.com/blog/what-is-an-fpga/ https://www.fpga4fun.com/FPGAinfo1.html h…

u/Kaisha001in r/FPGA • Recommends

On “I am new plz help me out”

Shawn Hymel has a wonderful series on videos for beginners. Either just learning, a hobbyist, or just curious. [video
2View on Reddit

u/maredsous10in r/FPGA • Recommends

On “Best bottom-up books to learn?”

# Bebop to the Boolean Boogie *See if this book works for you. Clive doesn't use all the same naming conventions.* **Past Comment** *https://www.reddit.com/r/FPGA/comments/1fywl7f/comment/lqzlh4y/* **Videos** [video **Quick Survey of Abstractions** https://ocw.mit.edu/courses/6-002-circuits-and-electronics-spring-2007/resources/lecture-1/ **VLSI Resources** The Handbook of Digital CMOS Circuits, Technology and Systems provides a good bottom up survey. https://www.amazon.com/Handbook-Digital-Technology-Circuits-ystems/dp/3030371948 Book Slides https://www.electrontube.co/ (NO LONGER AVAILABLE) Electron Tube (Companion Video Presentations) [video Professor Adam Teman's has…

u/rubetzin r/FPGA • Recommends

Gear for a YouTube course Dear all, Out of curiousity I decided to acquire basic skills of FPGA application through this playlist: [video The funny bowtie guy suggests that I get an ICE40 stick that is unfortunately out of stock and will not likely come back with all this chip shortage. Could you suggest a not so expensive alternative evaluation board with the same FPGA? Your help is much appreciated.

u/evplasmamanin r/FPGA • Recommends

On “Getting Started with FPGAs”

I just got in to FPGAs because of a project for a client. Digi-Key has some great tutorials on YouTube to get started with the the Lattice Ice40 chips. [video It’s a great weekend project to get your feet wet and the dev board they use in the examples is only $50.

u/beaverbaitin r/FPGA • Mentions

On “VoIP on FPGA”

Here are a couple of things I found when I looked real quick. FPGA Implementation of VOIP - M van den Braak VOIP Project: System Design - Columbia University These are not step-by-step instructions but if you are in university for something technical they should give you a rough idea of the software/hardware stack required to operate SIP/VOIP. There is some decent information on the IEEE Explore website as well like these white papers explaining the use of a Virtex5 FPGA circuit to build an IP-PBX. I do a lot of work with SIP and I am no expert in FPGA but these are the places I would start. Understanding how SIP/VOIP works is going to be vital if you want to pursue the project at all.…

u/chris_insertcoinin r/FPGA • Mentions

On “Which YouTube channels show a good introduction to FPGA programming? ”

link to this video This is a nice playlist by Digikey. The videos are very beginner friendly.

u/zerobaseddigitalin r/FPGA • Mentions

On “Beginner FPGA Resource I Wish I Had”

…t a lot of vendors will have similar IP for the basics. * For education purposes, I like Vivado because I think their tools to visualize the schematics created from your VHDL/Verilog code is really helpful to a beginner (videos 5 and 6). * DigiKey made a great introduction to FPGA series using the iCE40 board. The first video in that series is at [video * There are cheaper boards using AMD chips. I use the Zynq because I want the integrated ARM processor, but the Arty S7 from Digilent or Adiuvo's Explorer board (not yet released, but crazy to get UltraScale+ boards with gigabit transceivers for $100 when it does come out) are other options…