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 |