Musings, Courses, & Projects by Rob Marano

ECE 251 Spring 2025 Weekly Course Notes

<- back to syllabus


Week(s) Dates Topic
1, 2 1/21, 1/28 Hardware Modeling with Software (Verilog HDL) HDL
3 2/4 Wrap-up Verilog; Computer Abstraction & Stored Program Concept
4, 5 2/11, 2/18 Instructions —The Language & Grammar of Computers
6, 7 2/25, 3/4 Intro to Assembly Language Programming — MIPS CPU
8 3/11 Midterm Exam
9, 3/18 Arithmetic for Computers
10, 11, 12 3/25, 4/1, 4/22 The Processor — Data Path & Control
13, 14 4/29, 5/6 Interrupts; Memory Hierarchies (Caching)
15 5/13 Final Exam
15 5/16 Group Final Project due no later than 5pm ET this day

Follow the link above to the respective week’s materials below.


Week 1 — Jan 21 — Hardware Modeling with Verilog HDL — Part 1

Topics

  1. Intro to logic design using Verilog HDL
  2. Logic elements
  3. Expressions
  4. Modules and ports

Topic Deep Dive

See notes_week_01

Software Installation

Homework Assignment

See hw-01; solution

Week 2 — 1/28 — Hardware Modeling — Part 2

Topics

  1. Built-in primitives
  2. User-defined primitives
  3. Dataflow modeling

Topic Deep Dive

See notes_week_02

Homework Assignment

See hw-02.md; solution

Week 3 — 2/4 — Verilog; Computer Abstraction & Stored Program Concept

Topics

  1. Verilog: Parameterization; Built-in primitives; User-defined primitives; Dataflow modeling
  2. Stored Program Concept
  3. History of computer architecture and modern advancements

Topic Deep Dive

See notes_week_03

Reading Assignment

Week 4 — 2/11 — Instructions —The Language & Grammar of Computers — Part 1

Topics

  1. Recap: Stored Program Concept, and the history of computer architecture and modern advancements
  2. The alphabet, vocabulary, grammar of computers
    1. 1s and 0s as the alphabet
    2. compute and memory instructions as the vocabulary
    3. implementation of compute and memory instructions as the grammar
  3. Introducing the instructions of a computer delivered by the architecture
    1. Operations of the computer hardware
    2. Operands of the computer hardware
    3. Signed and unsigned numbers
    4. Representing instructions in the computer
    5. Logical operations

Topic Deep Dive

See notes_week_04

Reading Assignment

Week 5 — 2/18 — Instructions —The Language & Grammar of Computers — Part 2

Topics

  1. Instructions for making decisions
  2. Supporting procedures (aka functions) in computer hardware
  3. Begin converting our instructions to control logic for computation and memory storage.

Topic Deep Dive

See notes_week_05

Software Installation

Reading Assignment

NOTE: Check our shared Teams drive for these files too as well as the installation for our software.

<- back to syllabus