EdX

Introduction to RISC-V (edX)

Introduction to RISC-V (edX)

Discover various aspects of RISC-V, including technical aspects, specifications and the community ecosystem. RISC-V is a free and open instruction set architecture (ISA) enabling a new era of processor innovation through open standard collaboration. This course will guide you through the various aspects of understanding the RISC-V community ecosystem, the RISC-V specifications, and some technical aspects of working with RISC-V.

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

This course is designed for RISC-V enthusiasts, hardware and software developers, and technology hobbyists interested in how an open source ISA is breaking down barriers and opening up opportunities in the microprocessor world.
While this course will not teach you everything you need to know about how to design your own RISC-V processor, it will help experienced developers understand what is different about RISC-V from other architectures, and give you a clear path to getting started with RISC-V in any area of the computer industry. More than that, we will show you how to work within the RISC-V community so you can understand what exists, what is coming soon, and how you can help us make the magic happen. The course showcases a series of assembly language code examples for you to get familiar with the technical aspects of the ISA and assembly language.

What you'll learn

  • Describe the nature, history, and ongoing practices of RISC-V as a technology, an international organization, and a community of developers and implementers.
  • Describe the technical aspects of the RISC-V ISA.
  • Put the RISC-V ISA into action with a simulator running simple assembly language applications.
  • Choose the right development tool for your next RISC-V related project.

Syllabus

Welcome!
Chapter 1: Getting to Know RISC-V
Chapter 2: Exploring the RISC-V Instruction Set Architecture
Chapter 3: Hands-On RISC-V Assembly Language
Chapter 4: RISC-V Development Tools
Chapter 5: Meeting the Demands of Today's Computing
Final Exam (Verified track only)

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

Related Courses

DevOps: Foundations and tools (edX) EdX
Universidad Anáhuac,AnahuacX

DevOps: Foundations and tools (edX)

Learn essential Linux & Unix to efficiently manage applications from the command line. Meet the basics of source code management with Git and Github. Also, go over the pillars of DevOps like Continuous Integration/Continuous Deployment, the paradigm shift in systems management with Infrastructure as Code and the creation of containers to assure the CI/CD pipeline.

Self Paced
Self-Paced
Malware Analysis and Assembly Language Introduction (edX) EdX
IBM

Malware Analysis and Assembly Language Introduction (edX)

This course introduces the processes and methods for conducting malware analysis of different file types and describes how Assembly Language is used to analyze malware. Malicious software, or malware, is typically delivered over a network and is designed to cause disruption to a computer, client, server, or network. Disruptions can include leaked private information, unauthorized access to information or systems, blocked user access, interference with security and privacy, or numerous other variations of attacking systems.

Self Paced
Self-Paced
Principles of Computing (Part 2) (Coursera) Coursera
Rice University

Principles of Computing (Part 2) (Coursera)

This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class.

Nov 2nd 2026
4 Weeks
Secure Software Development: Verification and More Specialized Topics (edX) EdX
Linux Foundation,LinuxFoundationX

Secure Software Development: Verification and More Specialized Topics (edX)

Learn how to verify software for security, and take a deeper dive into the basics of applying threat models and cryptography. Modern software is under constant attack, but many software developers have never been told how to effectively counter those attacks. This course works to solve that problem, by explaining the fundamentals of developing secure software.

Self Paced
Self-Paced
Building a RISC-V CPU Core (edX) EdX
Linux Foundation,LinuxFoundationX

Building a RISC-V CPU Core (edX)

Create a RISC-V CPU with modern open source circuit design tools, methodologies, and microarchitecture, all from your browser. Building a RISC-V CPU Core is designed for anyone with a technical inclination who is interested in learning more about hardware. Whether you are new to digital logic or are a seasoned veteran, students will take away new skills that can be applied immediately. No prior knowledge of digital logic design is required.

Self Paced
Self-Paced
Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) (Coursera) Coursera
Hebrew University of Jerusalem

Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) (Coursera)

In this project-centered course you will build a modern software hierarchy, designed to enable the translation and execution of object-based, high-level languages on a bare-bone computer hardware platform. In particular, you will implement a virtual machine and a compiler for a simple, Java-like programming language, and you will develop a basic operating system that closes gaps between the high-level language and the underlying hardware platform.

Nov 9th 2026
5-12 Weeks
Software Construction: Object-Oriented Design (edX) EdX
The University of British Columbia,UBCx

Software Construction: Object-Oriented Design (edX)

Learn how to design large software systems that solve real-world problems using object-oriented design techniques. By the end of the course, you will have a solid foundation in Java and Object-Oriented Design, as well as many software development concepts that can be applied to any language.

Self Paced
Self-Paced