YoVDO

FPGA for Software Developers

Offered By: code::dive conference via YouTube

Tags

Code::Dive Courses C++ Courses Computer Architecture Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore FPGA programming for software developers in this comprehensive conference talk from code::dive 2017. Delve into boolean logic, D flip-flops, and FPGA architecture. Learn about open-source tools, computer components, and Verilog programming concepts including blocks, assignments, and control structures. Discover how to implement an ALU, design a state machine, and create memory operations. Gain insights into instruction fetching, decoding, and execution. Examine testing methodologies, hardware connections, and practical applications using development boards. Acquire essential knowledge to bridge the gap between software development and FPGA programming.

Syllabus

Introduction
Why we are here?
Boolean logic
Boolean operations
D Flip-Flop
What is FPGA ?
Logic block
How do we program FPGA?
Open source tools
What does computer consists of ?
Architecture
Instruction set 2/2
Inputs and outputs
Registers
Initial block
Always block
Condition check
Non-blocking assignment
Parallel execution
Begin - end block
Case
Continuous assignment
Local parameters / Constants
ALU - Arithmetic operations
ALU - Bitwise logic operations
ALU - Shift operations
ALU- Rotate operations
ALU - Flags and result
Other operations
Wires
Using modules
Main state machine
Instruction fetch
Instruction decoding
MOV instruction
Conditional compiling
Using ALU module 1/2
Memory operations 1/2
Main implementation
Icestudio
Test program
Test bench
Text output
C++ for testing 2/2
Connecting with hardware
Board definition file
Go Board
More info


Taught by

code::dive conference

Related Courses

Computer Architecture
Princeton University via Coursera
Introduction to Computer Architecture
Carnegie Mellon University via Independent
Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course)
Hebrew University of Jerusalem via Coursera
计算机系统基础(一) :程序的表示、转换与链接
Nanjing University via Coursera
Computer Architecture
Indian Institute of Technology Madras via Swayam