CSc 4110/6110 Introduction to Embedded Systems Laboratory
Phys 4110 Introduction to Embedded Systems Laboratory
Spring 2020
Tentative Syllabus
Classroom: CS400
Time: TR 12:45 pm - 2:30 pm
Instructor: Dr. Michael Weeks
Computer Science Department
Office: 25 Park Place, room 754
Office Hours: Wednesdays 1-2:55 p.m.
web-page: http://hallertau.cs.gsu.edu/~mweeks/csc4110
phone (404) 413-5722 (it does not accept texts)
Teaching Assistant: Saidarao Chirumamilla
TA's office hours: 11:45AM - 12:45PM and 4:30 PM - 5:30 (tuesdays and thursdays)
TA's office: CSc department (25 Park Place), Room 646
TA's e-mail address: csaidarao1 @ student.gsu.edu
CSc 4110/6110. Introduction to Embedded Systems Laboratory (4)
(Same as Phys 4110.) Four hours lecture per week.
Prerequisites: Phys 3500 (Physics majors) or CSc 3320 (CSc majors)
Topics taken from: review of basic logic functions;
automatic systems; microprocessor-based systems and applications;
embedded system software survey; microprocessor based applications;
digital communications; embedded systems programming; and
mobile security labware
Final Exam time slot
Tuesday, April 28, 2020, 10:45 - 13:15
Books
Main Text:
David E. Simon,
An Embedded Software Primer, Addison-Wesley,
2002, ISBN 0-201-61569-X.
Read Simon's book as we cover it.
- We will cover the chapters in the same order as they appear in the
book.
- We will cover chapters 1-8.
- You may want to read Chapter 9 early, since it applies to homeworks.
- Chapter 10 will be covered if time permits.
- Chapter 11 will not be covered, but you are expected to read it.
Other References that you might find useful:
-
We will discuss transistors and logic devices in the first few classes.
The first chapter of this book should be helpful, if you want more information:
Neil H. E. Weste and David Harris,
CMOS VLSI Design: A Circuits and Systems Perspective,
third edition, Addison Wesley, 2005.
- K. N. King,
Java Programming - From The Beginning,
Norton, 2000, ISBN 0-393-97437-5.
Chapter 12 covers the Abstract Window Toolkit.
You should use this book if your semester project uses Java.
- Daniel W. Lewis,
Fundamentals of Embedded Software: Where C and Assembly Meet,
Prentice-Hall, 2002.
If you use a PC for your project, this book will be very helpful.
- Aaron Hillegass,
Cocoa(R) Programming for Mac(R) OS X (3rd Edition),
Addison-Wesley, 2008.
This is another resource for programming on a Mac.
Mr. Hillegass spoke at a recent GSU ACM chapter meeting.
- Erica Sadun,
The iPhone Developer's Cookbook,
Addison Wesley, 2009, ISBN-13: 978-0321555458.
Prerequisites:
Computer Science majors: CSc 3320
Physics majors: Phys 3500
Objectives:
This course
introduces students to principles, methodologies, and procedures for embedded
systems. The goal is to learn how to bring hardware (microprocessors, sensors,
displays, etc.) and software (programming language, operating system, etc.)
together to specify, design, and implement system solutions to producing
whole, complete products.
Topics
-
Basic logic functions (review): gates, flip-flops, latches and registers,
counters, decoders, and sequencers.
-
Automatic systems: clocks, timing signals, sequential operations.
-
Microprocessor-based systems: microprocessors as electronic devices.
-
Embedded systems software survey: microkernel operating systems, programming
environments.
-
Microprocessor and microcomputer-based applications: analog-to-digital
and digital-to-analog conversions, data acquisition and sampling, process
control.
-
Digital communications: serial and parallel data transfer.
-
User devices such as personal digital assistants, cellular telephones,
and watches.
- Ethics and technology, along with concerns about privacy, security,
and the impact on the quality of life. For example, cell phones provide
a service most people cannot live without, yet they interrupt talks,
make movies less enjoyable at theaters, and contribute to injuries and
fatalities by distracted drivers.
We will also cover these labs from the
NSF TUES Collaborative Research: Real World Relevant Security Labware for Mobile Threat Analysis and Protection Experience grant,
Prabir Bhattacharya (PI):
-
Threats of Lost or Stolen Mobile Devices
- Backup: Protect mobile data before it is lost or stolen
- Encryption: Protect mobile data before it is lost or stolen
- Remote lock and wipe: Protect mobile device after it is lost or stolen
-
Unauthorized Mobile Resource Access
- Authentication: Single Sign-on
- Authentication: Two Factor Authentication
Format:
Approximately 4 hours of the course contact time will be in lectures.
Several
technology lab assignments* and one project are planned. There will be
two
tests scheduled. Any pop-quizzes will factor into the test average.
Grading:
Each assignment will be performed and data will be collected jointly
by two-student teams. On each assignment, each student will individually
analyze and interpret the data and will individually write a report. There
will be a team project at the end of the course that synthesizes the assignment
procedures and course content learned. This project will be developed jointly
by all student members of a team.
Graduate students will be assigned one or more research papers
to read, and will be graded on their review of the material. The grade
for the review will be factored in the assignment grade as a 7th assignment.
If time permits, a class presentation may be required on this assignment.
In addition, graduate students may be asked additional questions on the
tests, and may have additional work on the assignments.
Deliverable Weight CSc/Phys 4110:
-
20% Assignment Reports* (approximately 4)
-
40% Quizzes (approximately 4, weighted equally)
-
40% Project (including frequent progress updates)
Deliverable Weight CSc 6110:
-
25% Assignment Reports* (approximately 4) +
Paper review (this may also include a presentation on the paper, time permitting)
-
35% Quizzes (approximately 4, weighted equally)
-
40% Project (including frequent progress updates)
A previous semester of this class used this formula
and another semester, with quizzes (each out of 20 points, thus *5):
,
where B2 is attendance, C2:F2 are 20 point quizzes, G2:J2 are Labs, K2 = ProjectDeliverable, L2 = ProjectUpdate, M2 = ProjectUpdateFeedback, N2 = ProjectFinalPresentation, O2 = ProjectFinalFeedback.
All scores are out of 100 except for quizzes, and the relative weights are
shown in the formula (so you can see that ProjectDeliverable is worth one-tenth of the ProjectUpdate).
to calculate grades for 4110 students.
This may vary by semester according to the deliverables, the weights
(see Deliverable Weight section) may be
adjusted from one semester to another, and may vary by the
way grades are entered. For example, Quiz1 scores were entered as 0 to 10,
while Test1 and Test2 were entered as 0 to 100, thus 210 is the maximum
for the sum of quizzes and tests.
Notes:
-
There will be a presentation session, where
you will show a video that you made about your project, then we will ask you
questions.
-
Unless otherwise specified in class, the homeworks are due two weeks after
being assigned.
- Demonstrations may be required of the homeworks. For example, part of
your homework grade may be based on you showing the Teaching Assistant
that your solution works.
* The assignments may include other homeworks, such as
research papers, word problems,
programming exercises, in-class presentations, etc.