Academics / Courses / DescriptionsCOMP_ENG 346: Microprocessor System Design
Quarter Offered
Spring : MTWF 10-10:50 ; GhenaPrerequisites
COMP_ENG 203 and COMP_ENG 205Description
Structure and timing of typical microprocessors. Sample microprocessor families. Memories, UARTS, timer/counters, serial devices and related devices. MUX and related control structures for building systems. Interrupt programming. Hardware/software design tradeoffs.
- This course fulfills the Systems breadth requirement.
REQUIRED TEXTS: None
REFERENCE TEXTS: 1. Device data sheets 2. Distributor catalogues
COURSE INSTRUCTOR: Prof. Branden Ghena
COURSE COORDINATOR: Prof. Josiah Hester
COURSE GOALS: The goal is to teach students how to design, build and program embedded systems.
PREREQUISITES BY TOPIC:
- basic digital integrated circuits - AND/OR/NOT gates, latches, demultiplexor
- basic structure of a processor - arithmetic registers, address registers, basic addressing modes
- basic assembly language programming
DETAILED COURSE TOPICS
- Week 1: Microcontrollers. 8051 pinout and electrical characteristics.
- Week 2: Connecting to external RAM and program. Latches and demultiplexors.
- Week 3: Ports. Onboard special functions – interrupts, timers, serial I/O.
- Week 4: Special functions continued. Timing analysis.
- Week 5: 8051 assembly programming, emulators.
- Week 6: Introduction to a typical microprocessor - 8086. Basic 8086 control signals - DEN, DTR. Bi-directional bus drivers. 8224 clock circuit. 2- and 4-byte bus systems.
- Week 7: Interrupt structure and the 8259 Interrupt Controller. Priority interrupt systems
- Week 8: DMA.
- Week 9: I 2 C buses and devices.
- Week 10: Multibus and shared bus structures - 8289.
COMPUTER USAGE: Students use PCs to assemble and emulate programs before burning into E/EPROMs. Students use device programmers to generate 2764/2864 program chips for their projects.
LABORATORY PROJECTS: Four labs starting from a simple micro-controller system on a breadboard and leading to a small-scale embedded application that uses most of the typical features (timers, serial IO, ADC/DAC, etc.) built into micro-controllers.
GRADES:
- Homework - 10 %
- Labs Assignments - 30 %
- Midterm Exam - 30 %
- Endterm Exam - 30 %
COURSE OBJECTIVES: When a student completes this course, s/he should be able to:
- Design an embedded system, including both hardware and software.
- Decide what level of sophistication the microprocessor needs to have and what additional devices are needed based on the features of the application.
- Determine how to connect the microprocessor, memories, and extra devices into a working system.
- Read device-timing diagrams for processors, memories, and the like, and determine device timing compatibility.
- Read device data sheets and pinout descriptions and understand how to wire the devices together.
- Build an embedded system, both hardware and software, using DMA and/or interrupts.
- Understand how to use auxiliary circuits, like latches, bus drivers and demultiplexors, to build a system.
- Understand how to use UARTS, DAC/ADC devices, serial devices, timer/counter devices and similar devices.
- Design the software and coordinate the software and the hardware into an integrated working system.
- Identify and communicate the privacy, security, and sustainability aspects of a particular embedded system, as well as design the software and hardware considering these factors.
ABET CONTENT CATEGORY: 100% Engineering (Design component).