METE 3350U: Microprocessors and Digital Systems
Course Description

Introduction to digital systems: Boolean algebra; truth tables; combinational logic; logic gates; sequential logic; flipflops, counters, memory circuits; and logic circuit analysis. Basic structure of a computer; assembly-language and high level language programming; machine language and step-by-step instruction execution and debugging; digital I/O; analog to digital conversion; interrupt handling and flow from reset, operating systems; hardware implementation of an addressing map; bus interface and memory timing; state-of-the art microprocessors: features and characteristics.
The detailed topics and content of the course are as follows (subject to change with notice):
- Introduction to digital systems, Numbers systems, Arithmetic and Codes.
- Boolean Algebra, Combinational logic: Logic gates, Truth tables
- Flip flops , Counters, Memory Elements, and Registers.
- Analysizing and Designing Logic circuits.
- Basic Structure of Computers and Introduction to Microcontrollers Structured Programming and C-Programming Review.
- Microcontrollers Structure, Hardware Configuration & Memory Systems Assembly Language Programming.
- Analog-Digital Interfacing, Clock and Timer System Exceptions – Resets and Interrupts.
- Communication and peripheral Interface Systems.Microcontroller-based Control Systems.
Course Outline: | Course Outline |
Textbook: | David Harris and Sarah Harris, Digital Design and Computer Architecture, 2nd Edition, Morgan Kaufmann, 2012. Textbook |
Note: ***. | |
Course TA(s): | Kavian Khosravinia (Office hours: by appointment throught email: kavian.khosravinia@ontariotechu.net) |
Omid Ahmadi Khiyavi (Office hours: by appointment throught email: omid.ahmadikhiyavi@ontariotechu.net) | |
Lab TA(s): | Tyler Parsons (Office hours: by appointment throught email: tyler.parsons1@ontariotechu.net) |
Time and Location
Lectures | Section 001 | Tuesdays: 1:10 pm to 4:00 pm Thursdays: 1:10 pm to 4:00 pm |
Labs | Section 002 | Mondays: 1:10 pm to 3:00 pm |
Section 003 | Wednesdays: 1:10 pm to 3:00 pm | |
Tutorials | Section 005 | Mondays: 9:10 am to 11:00 am |
Course Notes
Item | Title | Material |
---|---|---|
Lecture 1 | Course Overview and Introduction | |
Lecture 2 | Number Systems | |
Lecture 3 | Logic Gates and Boolean Algebra | |
Lecture 4 | Combinational Logic Design (Part 1) | |
Lecture 5 | Combinational Logic Design (Part 2) | |
Lecture 6 | Sequential Logic Design | |
Lecture 7 | Finite State Machines (Part 1) | |
Lecture 8 | Finite State Machine (Part 2) | |
Lecture 9 | Hardware Description Language | |
Lecture 10 | Arithmetic Circuits | |
Lecture 11 | Number Systems | |
Midterm Exam |
In-class Exam |
May 31, 2022 from 1:10 pm to 3:10 pm |
Lecture 12 | Sequential Buidling Blocks, Memory Arrays and Logic Arrays | |
Lecture 13 | Machine Language | |
Lecture 14 | Assembly Language | |
Lecture 15 | Microarchitecture | |
Lecture 16 | Memory and IO Systems | |
Lecture 17 | Digital System Implementation | |
Lecture 18 | Course Review |
Labs
Homework
Homework 1 | Homework 1 |
Homework 2 | Homework 2 |
Homework 3 | Homework 3 |
Homework 4 | Homework 4 |
Homework 5 | Homework 5 |