Digital Systems: From Logic Gates to Processors (Coursera)

Digital Systems: From Logic Gates to Processors (Coursera)

This course gives you a complete insight into the modern design of digital systems fundamentals from an eminently practical point of view. Unlike other more "classic" digital circuits courses, our interest focuses more on the system than on the electronics that support it. This approach will allow us to lay the foundation for the design of complex digital systems.

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

You will learn a set of design methodologies and will use a set of (educational-oriented) computer-aided-design tools (CAD) that will allow you not only to design small and medium size circuits, but also to access to higher level courses covering so exciting topics as application specific integrated circuits (ASICs) design or computer architecture, to give just two examples.
Course topics are complemented with the design of a simple processor, introduced as a transversal example of a complex digital system. This example will let you understand and feel comfortable with some fundamental computer architecture terms as the instruction set, microprograms and microinstructions.

After completing this course you will be able to:

  • Design medium complexity digital systems.
  • Understand the description of digital systems using high-level languages such as VHDL.
  • Understand how computers operate at their most basic level (machine language).

Syllabus

WEEK 1
All you need to know to start the course
We have collected here everything you need to know before starting the course.
This week is divided into three sections:

  • The first is the one you're reading about now and includes a number of general explanations about how the course will run and about the virtual machine you should install on your computer to answer the different quizzes .
  • The second (Previous knowledge: A review) presents a series of tests you can use to check your level of knowledge about numbering systems and the use of pseudocode to describe algorithms.
  • The third block contains the first real topic of the course: What Digital Systems are?

Previous knowledge: A review
Check your knowledge about binary and hexadecimal numbering systems, and the description of algorithms using a pseudocode.
What Digital Systems are?
This module is an introduction to Digital Systems. Here you will find:

  1. A set of videos_L covering issue 1 and the corresponding exercises,
  2. Two videos_P introducing the processor that we will design along the course, and
  3. Some video-based explanations; a wiki and some FAQs about how VerilUOC_Desktop tool functions.

You will have to use VerilUOC_Desktop in the next module.
Read the "Lesson Index" in the "Index and PDF files" section and the "README" in the VerilUOC_Desktop section for more information.

WEEK 2
Combinational Circuits (I)
This module introduces combinational circuits, logic gates and boolean algebra, all of them items necessary to design simple combinational circuits.
Read the "Index of lessons" for more information.
To solve the exercises in this module you will need to use VerilUOC_Desktop. Look at the module "VerilUOC_Desktop tools" to learn how to use it.
VerilUOC_Desktop tools
From this week you will need to use VerilUOC_Desktop to do some of the exercises in the quizzes. VerilUOC_Desktop is a software package based on Logisim, enhanced with a number of modules to enable:

  • Enter Boolean equations (BoolMin),
  • Enter digital circuits and check them according the problem statement (VerilCirc), and
  • Enter chronograms (time-charts) and check that they are correct (VerilChart).

This section contains two videos explaining how these three tools work. By now you only need to use VerilCirc and BoolMin, so if you are pushed for time, you might postpone VerilChart for later. Obviously, it is impossible to cover in these two videos all eventualities you can find while working with VerilUOC_Desktop tools. In case of doubt, look at the VerilUOC_Desktop wiki, look at the FAQs or post your problems in the forums. There are specific forums for VerilCirc, BoolMin and VerilChart.

WEEK 3
Combinational circuits (II)
We continue the study of combinational circuits. While in the previous module we were working on the classical design techniques of combinational circuits, this one is focused on other issues such as a brief introduction to computer aided design tools (CAD tools), or the direct synthesis of combinational circuits from its algorithmic description.
Read the "Lesson index" for more information.
To solve the exercises in this module VerilUOC_Desktop is needed. Remember that the "VerilUOC_Desktop" section in module 2 contains all the information you need about this tool.

WEEK 4
Arithmetic components + Introduction to VHDL
Arithmetic circuits are an essential part of many digital circuits and thus deserve a particular treatment.

  1. The first part of this module presents some implementations of the basic arithmetic operations. Only operations with naturals (non-negative integers) are considered.
  2. The second part of this module introduces the basics of VHDL with the goal of providing enough knowledge to understand its usage throughout this course and start developing basic hardware models.

WEEK 5
Sequential circuits (I)
This is the first module dedicated to Sequential Circuits (Digital Systems with Memory).
To solve the quizzes you will need VerilUOC_Desktop.
Remember that the first week includes a complete description of VerilUOC_Desktop. In particular, VerilChart is presented in the second video.

WEEK 6
Sequential circuits (II)
This second module dedicated to Sequential Circuits deals with particular sequential circuits that are building blocks of larger circuits, namely registers, counters and memory blocks.

WEEK 7
Sequential circuits III and Finite State Machines
This module deals with two topics:

  • In previous lessons, the relation between algorithms (programming language structures) and combinational circuits has been commented. This relation also exists between algorithms and sequential circuits. We will explore this relation in the current module.
  • The second topic we will see is the definition and VHDL modelling of Finite State Machines.

WEEK 8
Implementation of digital systems
This last module presents some basic information about manufacturing technologies, as well as about implementation strategies, and synthesis and implementation tools.
Course Summary and farewell

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

Related Courses

Outsmarting intermittency (Coursera) Coursera
École Polytechnique

Outsmarting intermittency (Coursera)

Solar and wind offer clean and renewable ways to produce large amounts of electricity. They have boomed over the last few years, evolving from an eco-daydream to a major market and showing unprecedented growth rates. Yet, installing solar panels and wind turbines is by no means the end of the story. The electrical grid, which connects production means to the end-users’ sockets, is not a simple electron pipe. It is the beating heart of our electricity system and ensures its stability. Solar and wind raise specific challenges for the grid, and these challenges will have to be tackled if we want to deploy larger amounts of renewable sources.

Sep 28th 2026
4 Weeks
Fundamentals of Audio and Music Engineering: Part 1 Musical Sound & Electronics (Coursera) Coursera
University of Rochester

Fundamentals of Audio and Music Engineering: Part 1 Musical Sound & Electronics (Coursera)

In this course students learn the basic concepts of acoustics and electronics and how they can applied to understand musical sound and make music with electronic instruments. Topics include: sound waves, musical sound, basic electronics, and applications of these basic principles in amplifiers and speaker design.

Sep 28th 2026
5-12 Weeks
Sistemas Digitales: De las puertas lógicas al procesador (Coursera) Coursera
Universitat Autònoma de Barcelona

Sistemas Digitales: De las puertas lógicas al procesador (Coursera)

En este curso aprenderemos los fundamentos del diseño de los circuitos digitales actuales, siguiendo una orientación eminentemente práctica. A diferencia de otros cursos más "clásicos" de Circuitos Digitales, nuestro interés se centrará más en el Sistema que en la Electrónica que lo sustenta. Este enfoque nos permitirá sentar las bases del diseño de Sistemas Digitales complejos.

Sep 28th 2026
5-12 Weeks
Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course) (Coursera) Coursera
Hebrew University of Jerusalem

Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course) (Coursera)

In this project-centered course* you will build a modern computer system, from the ground up. We’ll divide this fascinating journey into six hands-on projects that will take you from constructing elementary logic gates all the way through creating a fully functioning general purpose computer. In the process, you will learn - in the most direct and constructive way - how computers work, and how they are designed.

Sep 14th 2026
5-12 Weeks
Introduction to FPGA Design for Embedded Systems (Coursera) Coursera
University of Colorado Boulder

Introduction to FPGA Design for Embedded Systems (Coursera)

Programmable Logic has become more and more common as a core technology used to build electronic systems. By integrating soft-core or hardcore processors, these devices have become complete systems on a chip, steadily displacing general purpose processors and ASICs. In particular, high performance systems are now almost always implemented with FPGAs. This course will give you the foundation for FPGA design in Embedded Systems along with practical design skills.

Sep 21st 2026
4 Weeks
Internet of Things: Multimedia Technologies (Coursera) Coursera
University of California, San Diego

Internet of Things: Multimedia Technologies (Coursera)

Content is an eminent example of the features that contributed to the success of wireless Internet. Mobile platforms such as the Snapdragon™ processor have special hardware and software capabilities to make acquisition, processing and rendering of multimedia content efficient and cost-effective.

Sep 14th 2026
3 Weeks
3D Printing Software (Coursera) Coursera
University of Illinois at Urbana-Champaign

3D Printing Software (Coursera)

This course will demonstrate how to use 3D printing software to create digital designs that can be turned into physical objects. It will also demonstrate how 3D scanners work to turn physical objects into digital designs. This course is hands-on in nature and will provide step-by-step instructions to guide you through two popular 3D modeling programs, Tinkercad and Fusion 360.

Sep 21st 2026
5-12 Weeks
Electrones en Acción: Electrónica y Arduinos para tus propios Inventos (Coursera) Coursera
Pontificia Universidad Católica de Chile

Electrones en Acción: Electrónica y Arduinos para tus propios Inventos (Coursera)

Este curso introduce al alumno a la electrónica y los Arduinos, comenzando desde lo más básico de un circuito eléctrico y finalizando con el diseño de circuitos de baja complejidad empleando dispositivos electrónicos programables. Durante el curso los alumnos aprenderán los fundamentos básicos de la electricidad y de la electrónica, conocerán los diferentes bloques empleados en el diseño de un circuito electrónico, aprenderán las bases del diseño de circuitos analógicos y digitales, y serán introducidos a la programación de estos últimos empleando la plataforma Arduino.

Sep 21st 2026
4 Weeks
Rapid Prototyping of Embedded Interface Designs (Coursera) Coursera
University of Colorado Boulder

Rapid Prototyping of Embedded Interface Designs (Coursera)

Rapid Prototyping is the second of three classes in the Embedded Interface Design (EID) specialization, an online version of the on-campus EID class taught in graduate embedded systems design. This course is focused on rapid prototyping of devices and systems and the related methods, practices, and principles that will help ensure your embedded interface designs are what your users both need and want.

Sep 21st 2026
4 Weeks
Real-Time Mission-Critical Systems Design (Coursera) Coursera
University of Colorado Boulder

Real-Time Mission-Critical Systems Design (Coursera)

Upon completion of this course the learner will know the difference between systems you can bet your life on (mission critical) and those which provide predictable response and quality of service (reliable). This will be achieved not only by study of design methods and patterns for mission critical systems, but also through implementation of soft real-time systems and comparison to hard real-time. Methods of verification to determine ability to meet mission critical as well as soft real-time requirements will be learned so that the learner can properly assess risk, reliability and impact of failure in real-time systems.

Sep 21st 2026
4 Weeks
Equivalent Circuit Cell Model Simulation (Coursera) Coursera
University of Colorado Boulder,University of Colorado System

Equivalent Circuit Cell Model Simulation (Coursera)

In this course, you will learn the purpose of each component in an equivalent-circuit model of a lithium-ion battery cell, how to determine their parameter values from lab-test data, and how to use them to simulate cell behaviors under different load profiles.

Sep 21st 2026
5-12 Weeks