Processor design is the design engineering task of creating a processor, a key component of computer hardware. It is a subfield of computer engineering (design, development and implementation) and electronics engineering (fabrication). The design process involves choosing an instruction set and a certain execution paradigm (e.g. VLIW o...
Processor design is the design engineering task of creating a processor, a key component of computer hardware. It is a subfield of computer engineering (design, development and implementation) and electronics engineering (fabrication). The design process involves choosing an instruction set and a certain execution paradigm (e.g. VLIW o...
Module 1.1: Introduction to the Course
45mModule 1.2: CMOS Transistors and Gates
45mModule 1.3: Basic Gates
45mModule 1.4: Building Gates Using Simulator
45mModule 1.5: Hierarchical Design and Verification
45mModule 1.6: Building Blocks of a Digital Computer
45mModule 2.1: Binary Number Systems
22mModule 2.2: Signed Number Systems
22mModule 2.4: Binary Adder Circuits
19mModule 2.5: Building the ALU of HACK
26mModule 2.6: HACK ALU Functionality
10mModule P1: Tips for Project P01
22mModule 3.1: Sequential Logic Design
10mModule 3.2: Latches and Flipflops
28mModule 3.3: The Memory Hierarchy
42mModule 3.4: Design of Program Counter
14mModule 3.5: Introduction to Computer Organization: The HACK Instruction Set Architecture (ISA)
1h 72 minModule 3.6 Memory Mapped I/O
15mModule P2: Tips for Projects P02 and P03
22mModule P3: Tips for Project 04
35mModule P4: Tips for Project 04
18mThe HACK Computer
7mThe Data Memory
7mThe HACK CPU - A Deep Dive: Part 2
7mThe HACK CPU - A Deep Dive: Part 1
7mThe HACK Microarchitecture
7mIntroduction to Computer Architecture
7mProject 06 - Demonstration
8mAssembler: Pass 2
8mAssembler: Pass 1
8mThe Assembler Construction
8mUnderstanding the Working of Assembler
8mAssembler: Symbol Table Construction
8mDeep Understanding of VM ISA using VM Emulator
50mProject 07: Demo
50mProject 07: VM ISA to HACK Mnemonic Translation
50mVirtual Machines - What and Why?
50mThe VM Instruction Set Architecture
50mThe execution of a VM Program
50mHow powerful is the VM?
50mProject 08: Implementation tips in a Nut Shell
16mHandling Static Variables
16mProject 08: Translation of Program Flow and Function Call to HACK Mnemonic
16mWorking of the Virtual Machine
16mImplementation of Function Call
16mVirtual Machine II - Program flow commands and Introduction to Function Calls
16mIntroduction to The JACK Programming Language
15mProject 09: Basic Steps
15mUnderstanding Syntax of JACK using Examples
18mProject 09: More Examples
18mThe JACK Syntax - Language Specification
18mApplication Development using JACK
18mTesting the Correctness?
8mThe Token Analyzer
8mCompiler for JACK: Parsing the JACK Program
8mThe JACK Grammar
8mProject 10: Compiler for JACK - Part-1 Demo
8mJACK Compiler: Lexical Analysis - Tokenization
8mThe Jack Compiler - Handling Flow of Control
18mThe Jack Compiler - Handling Objects
18mThe Jack Compiler - Handling Arrays
18mThe Jack Compiler - Handling Expressions
18mThe Jack Compiler - Handling Variables
18mThe Jack Compiler - Back-end Introduction
18mThe Jack Compiler Backend: Code Generation - 4
8mThe Jack Compiler Backend: Code Generation - 2
8mThe Jack Compiler Backend: Code Generation - 3
8mThe Jack Compiler Backend: Code Generation - 1
8mThe Jack Compiler Backend: Populating the Class and Subroutine Symbol tables.
8mThe Jack Compiler Backend: An XML guided approach
8mConcluding Remarks
1mProject - 12: One sample journey from Jack to Hack
1mUnderstand the Operating System - Compiler Interactions
1mJack Compiler: Code Generation - 7
1mJack Compiler: Code Generation - 6
1mJack Compiler: Code Generation - 5
1m