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. Other References that you might find useful:
  1. 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.
  2. 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.
  3. 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.
  4. Aaron Hillegass, Cocoa(R) Programming for Mac(R) OS X (3rd Edition), Addison-Wesley, 2008.
  5. This is another resource for programming on a Mac. Mr. Hillegass spoke at a recent GSU ACM chapter meeting.
  6. 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

  1. Basic logic functions (review): gates, flip-flops, latches and registers, counters, decoders, and sequencers.
  2. Automatic systems: clocks, timing signals, sequential operations.
  3. Microprocessor-based systems: microprocessors as electronic devices.
  4. Embedded systems software survey: microkernel operating systems, programming environments.
  5. Microprocessor and microcomputer-based applications: analog-to-digital and digital-to-analog conversions, data acquisition and sampling, process control.
  6. Digital communications: serial and parallel data transfer.
  7. User devices such as personal digital assistants, cellular telephones, and watches.
  8. 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):
  1. 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
  2. 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:

Deliverable Weight CSc 6110:

A previous semester of this class used this formula
=((Lab1+Lab2+Lab3+Lab4)/4)*0.2 + ((Test1+Test2+Quiz1)/2.1)*0.5 + ((Proposal/10 + Feedback1/5 + Update + Feedback2/5 + Final)*100/250)*0.3
and another semester, with quizzes (each out of 20 points, thus *5):
=((Q1+Q2+Q3+Q4)*5/4)*0.5 + ((L1+L2+L3+L4)/4)*0.2 + ((Proposal/10 + Update + Feedback1/5 + Final + Feedback2/5)*100/250)*0.3
=((C2+D2+E2+F2)*5/4)*0.4 + ((G2+H2+I2+J2)/4)*0.2 + ((K2/10 + L2 + M2/5 + N2 + O2/5)*100/250)*0.4, 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:

* The assignments may include other homeworks, such as research papers, word problems, programming exercises, in-class presentations, etc.