What will you in the Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course) Course
Digital Logic and Boolean Algebra: Understand the fundamentals of digital logic and how Boolean functions can be implemented using logic gates.
Hardware Description Language (HDL): Learn to specify gates and chips using HDL and simulate their behavior using a hardware simulator.
Building a Computer System: Construct a modern computer system from the ground up, starting with elementary logic gates and culminating in a fully functioning general-purpose computer.
Assembler Development: Develop an assembler capable of translating human-readable low-level instructions into machine code.
System Design and Implementation: Gain insights into system design, computer architecture, and the implementation of various components of a computer system.
Program Overview
Module 1: Introduction
⏳ Duration: ~1 hour
Course overview and the roles of abstraction and implementation in systems design.
Introduction to Boolean algebra and the concept of building a computer from the ground up.
Module 2: Boolean Functions and Gate Logic
⏳ Duration: ~5 hours
Implementing Boolean functions using logic gates.
Specifying gates and chips using HDL.
Simulating and testing 15 elementary logic gates.
Module 3: Building an Arithmetic Logic Unit (ALU)
⏳ Duration: ~5 hours
Constructing adders and an ALU to perform arithmetic and logical operations.
Understanding the ALU as the calculating brain of the computer.
Module 4: Memory and Registers
⏳ Duration: ~5 hours
Designing memory systems and registers.
Implementing RAM and understanding memory hierarchy.
Module 5: The Hack Computer
⏳ Duration: ~5 hours
Integrating the ALU and memory to build the Hack computer.
Understanding the architecture and functionality of the Hack computer.
Module 6: Machine Language and Assembler
⏳ Duration: ~5 hours
Learning the Hack machine language.
Developing an assembler to translate assembly code into machine code.
Get certificate
Job Outlook
High Demand: Understanding computer systems from the ground up is valuable in various roles, including hardware engineering, embedded systems, and low-level programming.
Career Advancement: Skills gained from this course can lead to opportunities in system design, computer architecture, and software development.
Industry Relevance: Applicable across industries that require a deep understanding of computer systems and architecture.
Specification: Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course)
|
