Catalog Description:
-
CPE/CS 390A. Microprocessor Systems
Lecture:
-
Implementation of digital systems using microprocessors. The architecture and operation of microprocessors are examined in detail along with I/O interfaces, interrupts, DMA, and software design techniques. Specialized controller chips for interrupts, DMA, arithmetic processing, graphics, and communications are discussed.
Laboratory:
-
Hardware and software design of digital systems using microprocessors. Design experiments concerned with bus interface, memory decoding, serial communications, and programming ports. Experiments with DMA transfer and interrupt control performed on industry-standard microcomputer systems. Co-requisite: CpE/CS 390.
Prerequisite:
Textbooks:
- Daniel J. Pack & Steven F. Barrett, Microcontroller Theory and Applications: HC12 & S12, Second Edition, Pearson Prentice Hall, ISBN 978-0-13-615205-7, 2008
- (optional) H-W. Huang, MC68HC12: An Introduction, Thomson Delmar Learning, ISBN 0-7668-3448-4, 2003
- (optional) Wayne Wolf, Computers as Components: Principles of Embedded Computing Systems Design, Morgan Kaufmann Publishers, ISBN 1-55860-541-X, 2000
Goals:
-
This course is designed to provide students with a broad knowledge of contemporary microprocessor (and digital signal processor) components useful for various embedded and other systems applications. In addition, through the laboratory component of the course, students will gain hands-on experience with the programming (using assembly language) and interfacing of these microprocessors to external components including sensors. Techniques for design and analysis of programs are presented to illustrate the relationships among higher level programming languages, assembly languages and machine-code. Advanced topics are chosen to highlight contemporary views of VLSI microprocessors. Two example processors are the ARM microprocessor (a versatile RISC microprocessor developed for general embedded systems applications) and the SHARC digital signal processor (an example of a contemporary, computationally optimized variant of the more traditional microprocessor architecture).
-
Upon completion of this course, the student will be able to apply state-of-the-art microprocessors and microcontrollers to real-world problems, including control-intensive applications and computation-intensive applications.
Prerequisites by Topic:
- Basic digital logic
- High level programming language
- Electrical circuits
Grading:
- Lecture: 75% (homework 30% mid-term 30% final 40%)
- Lab: 25%
Lecture homework:
-
There are regular homework assignments. Homework is usually due one week after being assigned. Homework must be done independently. Check the homework tab for details.
Attendance is expected and is considered when determining the final grade for the course.
Lecture Schedule:
|
Week
|
Lecture
|
Date
|
Topic
|
|
1
|
1
|
7/12
|
Introduction to HC12 microcontroller: CPU registers, instruction set & addressing modes, instruction execution cycles
|
|
1
|
2
|
7/14
|
Assembly language program structure; writing programs to do arithmetic operations
|
2
|
3
4
|
7/19
|
Program loops; instructions for conditional branch, comparison, variable initialization, shift and rotate
Advanced assembly programming: data structures and subroutine calls
|
2
|
5
6
|
7/21
|
Finish Advanced assembly programming
Interrupt / exception handling
|
3
|
7
|
7/26
|
Basic I/O concepts; parallel I/O techniques & programming, D/A Converter, Parallel Ports; Midterm Review
|
3
|
|
7/28
|
Midterm Exam
|
4
|
8
|
8/02
|
Timer functions: Timer Counter register, input capture, output-compare, real-time interrupt, PWM.
|
4
|
9
|
8/04
|
Asynchronous transmission, RS232 standard, serial communication interface (SCI)
|
5
|
11 & 12
|
8/09
|
Analog/Digital converter
|
5
|
10
|
8/11
|
Serial peripheral interface (SPI)
|
|
6
|
|
8/16
|
Final Review
|
6
|
|
8/18
|
Final Exam
|
|