Digital design with FPGAs (Coursera)

Digital design with FPGAs (Coursera)

Welcome to the Digital design with FPGAs course! We are glad to see you as a student of our course! The course will be of interest to a wide audience: undergraduate and graduate students in the field of digital signal processing and the development of digital devices, specialists who plan to start developing digital devices.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

The FPGAs are extremely powerful to implement computationally demanding algorithms. Gigabits per second broadband signal processing for 5G systems, cryptography, hash generation, radar applications and ASIC prototyping - all the industry areas, where high computational load is present are subjects to apply FPGAs.
In this course you will start from the very basics of digital design and then in parallel (as supposed by the parallel nature of FPGAs) will improve the skills in theory, language (VHDL), IDE features and digital signal processing implementation. The course includes theory and labs on basic combinatorial and sequential logic, examples of various approaches for DSP algorithms implementation, techniques for high speed or low area development, design analysis tools and best coding practices.
In the learning process, you:
— Learn the basic theory of digital devices
— Learn VHDL language for FPGA programming
— Learn how to work with Vivado IDE
— Get practical skills for FPGA programming

What You Will Learn

  • Implement digital devices in FPGAs, using Xilinx Vivado IDE and VHDL
  • Simulate the behavior of your digital device, using your testbench and Vivado Simulator
  • Analyze the implemented device in terms of resources, throughput, latency and maximum clock frequency

Syllabus

WEEK 1
Combinational logic
In this part we consider the basic building blocks for logic functions implementation: various combinational logic. Also we start with VHDL language key syntax constructions and perform 4 labs with Xilinx FPGA Artix7, using Vivado IDE.

WEEK 2
Sequential logic
In this part we introduce basic storage elements, which allow to create sequential logic blocks and finally - any synchronous digital device. We continue learning VHDL syntax constructs. Four labs more appear in this part.

WEEK 3
Fixed-point and floating-point numbers
In this part fixed- and floating-point numbers representation and operations on them are considered. This is important for deeper understanding on what goes with numbers inside FPGA. Two labs and more VHDL syntax constructs appear in this part too.

WEEK 4
FPGA specific
In this part we have deeper view on the processes, which occur incide FPGAs. We consider several advanced topics about static timing analysis, metastability, resetes and overall performance and resource consumption. Finally we summarise with general ideas about development for FPGAs. We also have two final labs here.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Digital Signal Processing 2: Filtering (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Digital Signal Processing 2: Filtering (Coursera)

Digital Signal Processing is the branch of engineering that, in the space of just a few decades, has enabled unprecedented levels of interpersonal communication and of on-demand entertainment. By reworking the principles of electronics, telecommunication and computer science into a unifying paradigm, DSP is a the heart of the digital revolution that brought us CDs, DVDs, MP3 players, mobile phones and countless other devices.

Oct 12th 2026
3 Weeks
Digital Manufacturing: Introduction and Smart Design (Coursera) Coursera
L&T EduTech

Digital Manufacturing: Introduction and Smart Design (Coursera)

This course has been created for Mechanical, Manufacturing, and Mechatronics Engineers. The "Digital Manufacturing and Industry 4.0" course is intended for those who want to comprehend and navigate the transformative concepts and technologies that shape modern Industry. Throughout this course, participants will learn about the fundamental principles of digital manufacturing, the path to Industry 4.0, and the emerging technology that drives smart design and production processes through three modules.

Sep 28th 2026
3 Weeks
Developing FPGA-accelerated cloud applications with SDAccel: Practice (POK) Polimi OPEN KNOWLEDGE
Politecnico di Milano

Developing FPGA-accelerated cloud applications with SDAccel: Practice (POK)

This course, which is the fourth one of a “series”, is for anyone passionate about practicing how to develop FPGA-accelerated applications with SDAccel. This course will present several scenarios where the workloads require more performance than can be obtained even by using the fastest CPUs. This scenario is turning cloud and data center architectures toward accelerated computing.

Available
5-12 Weeks
FPGA computing systems: A Bird’s Eye View on Reconfigurable Computing (POK) Polimi OPEN KNOWLEDGE
Politecnico di Milano

FPGA computing systems: A Bird’s Eye View on Reconfigurable Computing (POK)

This course is the first one of a “series”, aimed at providing a structured understanding on how the FPGAs are working and of the rationale behind the choice of them to implement a desired system. This course is for anyone passionate in learning how a hardware component can be adapted at runtime to better respond to users/environment needs.

Available
4 Weeks
Introducción al diseño de hardware con Verilog (edX) EdX
Galileo University,GalileoX

Introducción al diseño de hardware con Verilog (edX)

Aprende el lenguaje de descripción de hardware Verilog, utilizado en la industria en el diseño de hardware digital y microprocesadores a la medida. En la actualidad, el hardware de soporte en sistemas digitales se suele diseñar en un solo circuito integrado FPGA (Field Programmable Gate Array), en parte debido al abundante espacio físico que ocuparía una implementación con varios circuitos integrados dedicados para este fin.

Self Paced
Self-Paced
FPGA computing systems: Background knowledge and introductory materials (Coursera) Coursera
Politecnico di Milano

FPGA computing systems: Background knowledge and introductory materials (Coursera)

This course is for anyone passionate in learning how a hardware component can be adapted at runtime to better respond to users/environment needs. This adaptation can be provided by the designers, or it can be an embedded characteristic of the system itself. These runtime adaptable systems will be implemented by using FPGA technologies.

Oct 5th 2026
4 Weeks
Audio Signal Processing for Music Applications (Coursera) Coursera
Stanford University,Universitat Pompeu Fabra

Audio Signal Processing for Music Applications (Coursera)

In this course you will learn about audio signal processing methodologies that are specific for music and of use in real applications. We focus on the spectral processing techniques of relevance for the description and transformation of sounds, developing the basic theoretical and practical knowledge with which to analyze, synthesize, transform and describe audio signals in the context of music applications.

Sep 14th 2026
5-12 Weeks
Developing FPGA-accelerated cloud applications with SDAccel: Practice (Coursera) Coursera
Politecnico di Milano

Developing FPGA-accelerated cloud applications with SDAccel: Practice (Coursera)

This course is for anyone passionate about learning how to develop FPGA-accelerated applications with SDAccel! The more general purpose you are, the more flexible you are and the more kinds of programs and algorithms you can execute on your underlying computing infrastructure. All of this is terrific, but there is no free food and this is happening, quite often, by losing in efficiency.

Oct 12th 2026
4 Weeks