Microprocessor-Based Design Spring 2013
EECE4534 Syllabus
Microprocessor-Based Design – Tentative Syllabus
EECE4534 + Lab EECE4535, Spring 2013
Instructor: Prof. Gunar Schirner
Office: 328 Dana Research Center
Northeastern University
Phone: +1 (617) 373 5707
Email: schirner@ece.neu.edu
Please use a Northeastern email ID for communication and include “EECE4534”
in the subject. Both help categorizing the email.
Teaching Assistant:
TBD
Email:
Lectures: Tuesday, Friday 1:35pm – 3:15pm
Location: TBD map
Laboratory: TBA: schedule will be determined during first lecture
Location: 009 Hayden Hall
Web page: on Blackboard, plus online forum on blackboard Discussion Board
Office Hours: Tuesday, Friday, 3:30pm – 4:30pm , 328DA
Course Overview
Embedded systems are omnipresent in our environment, e.g. implementing media players, cell
phones, or realizing complex control systems in a car. The majority of embedded systems use one
or more microprocessors for control and data processing, which is assisted by some generic or
specialized hardware. A successful computer engineer needs to be well versed in both software
and hardware aspects to master the design and implementation of such complex embedded
systems.
This course (EECE 4534) will introduce you to practical microprocessor-based system design
issues, such as system specification, understanding hardware capabilities (e.g. embedded
processor organization; addressing modes; memory hierarchy; parallel and serial bus protocols),
hardware/software co-design aspects, mastering hardware/software interfaces and the design of
device drivers.
The course is tightly integrated with the mandatory laboratory (EECE 4535) in which you have
the opportunity to practically realize the theoretic aspects of the lecture. The lab has two parts.
The first portion gradually introduces you to embedded systems through a set of ready made
exercises (e.g. light dimmer, controlling a servo motor, voice recorder, real-time voice
transmission). These exercises require you to design, construct, and debug hardware and software
(C and some assembly) that runs on a common embedded platform using the BlackFin BF527
microprocessor. The second portion of the lab allows you to explore a project of your own
Gunar Schirner 1 v 1.2
Microprocessor-Based Design Spring 2013
EECE4534 Syllabus
choosing within a team. Each team will specify, design and implement a complete embedded
system, integrating hardware and software.
Topics
Intro, Organization, Syllabus
Embedded System Overview
o Characteristics, Challenges, Requirements
From Requirements to a Modular Maintainable Implementation
o SYSTEMatic Engineering
o Embedded System Specification, Models of Computation (MoC)
FSM + StateCharts / Process Models
o Modular Design in C
o Layered Architecture
Embedded Systems Architecture
o Generic + Blackfin Architecture
Embedded Processing
o Synchronization (e.g. Interrupts)
o Operation Modes
o Power Management
Communication Systems
o Common parallel and serial bus systems
o Topology, Arbitration, Synchronization
Memory Hierarchy for Performance Improvement
o Caches, Scratch Pad, DMA
Embedded Systems in a Loop
o Sensors
o Analog to Digital Conversion
o Control Algorithm
o Digital to Analog Conversion
o Actuators
Embedded Computation Optimizations
Prerequisites
EECE 3324 - Computer Architecture and Organization
Working knowledge of C, algorithms and data structures. A review of basic C
programming is highly recommended. See for example “Thinking in C”.
Textbooks
Frederick M. Cady , Microcontrollers and Microcomputers Principles of Software
and Hardware Engineering , Second Edition. Oxford University Press, ISBN 978-0-19-
537161-1
Resources on the web, see Course Material on Blackboard
Recommended Additional Books
Peter Marwedel, Embedded System Design, Springer, 2006, ISBN 978-0-387-29237-3
Frank Vahid, Tony Givargis, Embedded System Design: A Unified
Hardware/Software Introduction, Wiley, Oct. 2001, ISBN 978-0471386780 link
Gunar Schirner 2 v 1.2
Microprocessor-Based Design Spring 2013
EECE4534 Syllabus
Wayne Wolf, Computers as Components, 2nd Edition, Morgan Kaufmann, 2008 link
Reference
Michael Barr, Programming Embedded Systems in C and C++, O'Reilly, 1999.
Online available at: Safaribooks
Kernighan; Dennis M. Ritchie, The C Programming Language (2nd ed.), Prentice Hall,
ISBN 0-13-110362-8 link
Homework Assignments
This course will include weekly or bi-weekly homework assignments. The homework
assignments will be discussed in class and distributed on blackboard. Although discussion with
your class mates is encouraged, you are expected to solve the homework assignments on your
own. Please refer to the Academic Honesty section for details. Homework solutions will be
collected via blackboard. They are due on 12 noon on the due date. The submission site will
automatically close based on the blackboard server’s time. Late assignments can not be accepted
and will receive 0 points.
Labs
The course is tightly integrated with the mandatory laboratory (EECE 4535). Every student must
have a lab partner to work during the labs. The grades for the lab reports are shared by weight.
The first lab (since it is shorter) is shared equally. Each student must author two of the remaining
lab reports, and co-author the other two. An authored lab report counts in full, whereas a co-
authored counts 1/4th. Hence you have a chance for distinguishing yourself with your report, but
are still co-responsible for your partners report.
Project
This course will include a final project about an embedded design project of your own choosing.
Each student group is expected to complete an individual project and must include a
comprehensive final report. The project report is due at the start of finals week. Intermediate
milestones and deadlines will be defined. The details of the final project will be discussed in class.
Midterm
We will have a closed book midterm in class on TBA.
Final
The course will have a project final. It consists of two portions:
1. Project presentation and demonstration in last week of classes
2. Final report due in finals week
Grading
Both the EECE 4534 – Lecture and EECE 4535 – Lab receive identical grades as both
components are tightly integrated. The weight distribution is as follows:
Homework Assignments: 15%
Midterm: 30%
Gunar Schirner 3 v 1.2
Microprocessor-Based Design Spring 2013
EECE4534 Syllabus
Pre-lab Assignments: 10%
Lab Reports: 15%
Project: 30%
No makeup exams will be given. If you miss the midterm, or final you will receive 0 points.
Depending on the overall performance, this will either lead to a “I” or “F” grade.
Late submissions will receive 0 points from the time the reference solution has been posted.
Otherwise, a late penalty applies dependent on the submission delay as following:
< 01 hour 5%
< 24 hours 15%
< 48 hours 30%
< 72 hours 50%
>= 72 hours 100%
Academic Honesty
Plagiarism, cheating, and any form of unauthorized collaboration will not be tolerated and will be
handled in accordance with University policies described in the Student Handbook. You are
expected to be familiar with the University's policies about academic honesty:
http://www.northeastern.edu/osccr/academichonesty.html.
Although students are encouraged to discuss some homework assignments and work together to
develop a deeper understanding of the topics presented in this course, submission of others’ work,
efforts, or ideas as your own is not permitted. Each student is expected to prepare and submit
his/her own programs, reports, drawings, and other materials unless otherwise designated as
collaborative work.
Copying and sharing of student work such as computer files, documents, spreadsheets, or
drawings is not allowed. If multiple students’ work is suspiciously similar, a penalty may be
assessed to all students involved. If a situation arises in which you are uncertain whether
cooperation with another student would constitute cheating or some other violation of the honor
code, please ask the instructor for guidance and clarification of these rules. Any evidence of
cheating will be referred to the Office of Student Conduct.
[Thanks to Prof. Leeser for the academic honesty policy.]
Other Class Policies
For questions about class material including assignments, please use the Discussion Board on
Blackboard. You may get an answer sooner, and it gives your fellow classmates the opportunity
also benefit from your learning experience. I highly encourage you to read the Discussion Board
and also answer questions to help your classmates.
The issuance of incomplete grades will strictly follow the College of Engineering guidelines. An
incomplete will only be given for missed work at the end of the term due to illness. A request for
an incomplete grade must be made two weeks before the final.
Enjoy the course!
Please contact me if you find any errors or have any constructive suggestions.
Gunar Schirner 4 v 1.2