1 of 19

​

Introduction of Computer System Design

​

Computer Architecture

Chester Rebeiro, IIT Madras

slides inspired / borrowed from https://www.nand2tetris.org/

2 of 19

3 of 19

Hardware Components we have built so far

ROM

A

D

Data

Memory

Program�Memory

Address Register

Data Register

4 of 19

Assembly Language Programs

5 of 19

Integrate hardware modules to

execute the program

6 of 19

Computer Architecture

7 of 19

Fetch-Execute Loop

fetch

execute

8 of 19

Building the HackCPU: Components

9 of 19

The HackCPU processor

10 of 19

Executing HackCPU Instructions

11 of 19

Executing A-instruction on the HackCPU

12 of 19

HackCPU C-type Instructions

13 of 19

Executing C-Type Instructions

14 of 19

C-Type Instruction - opcode bit

15 of 19

C-Type Instruction - opcode bit

16 of 19

Executing C-Type Instructions - comp bits

17 of 19

Executing C-Type Instructions - comp bits

18 of 19

Executing C-Type Instructions - control bits

19 of 19

Executing C-Type Instructions - control bits