Fpga101: Digital System Design Using Verilog And Python
Published 1/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1000.14 MB | Duration: 2h 49m
Published 1/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1000.14 MB | Duration: 2h 49m
From Verilog basics to building a miniature of Google's TPU
What you'll learn
Understand the fundamentals of Verilog and FPGA.
Understand RTL design, including combinational logic, sequential logic, FSM, and FSMD.
Interface the digital circuit on the FPGA to an ARM processor.
Build a miniature Google's TPU.
Requirements
Fundamentals of digital circuits and programming will give an added advantage.
Description
FPGAs are often used to implement digital signal processing applications that require computation acceleration. FPGAs are also used to verify digital circuits before taping them out into silicon chips, called application-specific integrated circuits (ASICs). The Verilog/VHDL hardware description language (HDL) is used to describe the digital circuits, both for FPGA and ASIC targets. This course focuses on the Verilog language.This course teaches the fundamentals of building digital circuits with Verilog. Four topics of fundamental digital circuits are explained: combinational logic, sequential logic, finite state machines (FSM), and finite state machines with data paths (FSMD). Three more topics about integrating the digital circuit on the FPGA into an ARM processor are explained. At the end of the course, a final project on how to build a miniature Google TPU is explained.In the final project, you are going to learn the methodology design of an accelerator for a neural network based on a matrix multiplication core. Matrix multiplication is used in engineering for many applications. Once you get familiar with the methodology, then you should be able to apply the methodology design to any design that you want.After finishing the course, you will receive a certified certificate of completion. A complete Udemy 30-day money-back guarantee if you are not satisfied with this course, allowing you to study with no risk.See you within the course.
Overview
Section 1: Introduction
Lecture 1 Introduction
Lecture 2 Source Code
Section 2: Design Flow
Lecture 3 Verilog I
Lecture 4 FPGA Chip
Lecture 5 Vivado Installation
Lecture 6 Simulation Flow
Lecture 7 Compilation Flow
Section 3: Combinational Circuits
Lecture 8 Verilog II
Lecture 9 Combinational Circuits Modeling
Lecture 10 Combinational Circuits Testing
Section 4: Sequential Circuits
Lecture 11 Verilog III
Lecture 12 Sequential Circuits Modeling I
Lecture 13 Sequential Circuits Modeling II
Lecture 14 Sequential Circuits Testing
Section 5: State Machine Circuits
Lecture 15 FSM Circuits Modeling
Lecture 16 FSMD Circuits Modeling
Lecture 17 FSMD Circuits Testing
Section 6: Zynq Architecture
Lecture 18 Zynq Introduction
Lecture 19 Simple GPIO Testing
Section 7: Basic Hardware Software Design
Lecture 20 Stream DMA PE System
Lecture 21 Block Memory PE System
Section 8: A Miniature Google's TPU
Lecture 22 Neural Network Architecture
Lecture 23 RTL Design of Systolic Processor
Lecture 24 SoC and Software Design
Anyone interested in learning the fundamentals of digital system design.