ECE Home Page ECSE426, Microprocessor Systems

Microprocessor-based systems are at the heart of virtually all modern industrial, consumer and service sector equipment. They have the unique distinction of being both the most widely used engineering objects, while providing the means to create the most complex systems.

This course teaches necessary skills for building embedded processor-based systems, including the completion of a large-scale engineering project. The background knowledge taught in ECSE426 covers the basics of modern processor and system architectures, advanced use of tools such as assemblers, C compilers and debuggers in embedded systems, as well as the methods for peripherals interfacing and networking.

INSTRUCTOR: Prof. Zeljko Zilic ( zeljko@ece.mcgill.ca), McConnell Engineering Building, Room 536.

LECTURES: Tuesday, 14:35-15:55 p.m.; Room TR2110

COURSE AIM: By the end of the course, you should:
(1) understand the organization and design principles behind modern microprocessor-based systems;
(2) be proficient in assembly and high-level (C language) programming for embedded systems;
(3) understand the performance impact of the embedded software, including the energy and memory-limited design techniques;
(4) know how to connect peripheral devices and networking interfaces, and how to write programs for the efficient interface use;
(5) have experience in developing a realistic embedded system solution through teamwork;

RECOMMENDED TEXTBOOKS:
A. Tanenbaum, Structured Computer Organization, Prentice-Hall, 1999.
C. Nagy, Embedded System Design using the TI MSP430 Series, Elsevier Science, 2003.
B. Shriver and B. Smith, The Anatomy of a High-Performance Microprocessor, IEEE Computer Society Press, 1998.

COURSE CONTENT & Preliminary LECTURE SCHEDULE:

Week  Lecture Topics  Lab 
Jan. 2 Course introduction 
Jan. 9  Instruction Set Architecture, lab intro. 
Jan. 16 Assembler, C, linker   Lab. 1: Assembler Programming 
Jan. 23 Processor Microarchiteture  Lab. 1: Assembler Programming and C Programming 
Jan. 30 Embedded Processors  Lab. 2: Simple hardware interfacing 
Feb. 6 IO, processor interfacing Lab. 2: Hardware interfacing, External hardware 
Feb. 13  Buses, PCI Lab. 3: Interfacing and interrupts 
Feb. 27 Embedded OS primitives  Lab. 3: Interfacing, interrupts and Flash 
Mar. 6 Real-time OS
Mar. -Apr.  Project

GRADING SCHEME:  Laboratory exercises: 48%.  Quizzes: 12%.   Project: 40%

McGill University values academic integrity. Students must understand the meaning and consequences of cheating, plagiarism and other academic offences under the Code of Student Conduct and Disciplinary Procedures ( http://www.mcgill.ca/integrity ). If you have a disability please contact the instructor to arrange a time to discuss your situation. It would help if you contact the Office for Students with Disabilities at 514-398-6009 before you do this. "Additional policies governing academic issues which affect students can be found in Chapter One of the Student Rights and Responsibilities Handbook