CSE477 Goals/syllabus/workload/grading/policies
Catalog Data
CSE 477 Digital System Design (4) Students
use the laboratory to design, simulate, construct, and debug a substantial
project that includes hardware, software, and communication components.
Lectures focus on use of embedded processors in digital system design and
interfacing techniques. Writing and debugging of real-time reactive software
emphasized. Prerequistes: CSE378 and CSE467.
Course Goals
-
To tie together the computer engineering curriculum
via the design of a complete embedded system comprising hardware, software,
and communication components.
-
To learn engineering design practices including requirements
generation, technical documentation, design reviews, verbal presentation,
and product demonstration.
-
To learn how to evaluate tradeoffs in technical design, and
thereby make good engineering decisions.
-
To develop a complete product from design to implementation
to debugging.
-
To gain appreciation for software issues in embedded systems.
-
To understand basic microcontrollers and how to use them
in embedded system design.
-
To gain familiarity with basic serial and parallel communication
methods.
-
To work toward a common goal in a team environment.
Course Syllabus
-
Introduction to embedded systems
-
Microprocessors and microcontrollers
-
Basic organization
-
Address/data bus
-
Memories
-
I/O ports
-
Timing subsystems
-
Interrupt handling
-
Interfacing techniques
-
Basic I/O ports
-
Interactions involving time
-
Memories
-
Interface support devices
-
Polling
-
Interrupts and interrupt handling
-
Communication methods
-
Serial
-
Parallel
-
Basic wireless schemes
-
Error correction
-
Flow control
-
Microcontroller software issues
-
Interrupt handling
-
Device drivers
-
Multi-tasking
-
Operating systems for embedded applications
-
Practical issues
-
Printed-circuit boards
-
High-speed signaling
-
Clock routing/switching/enabling
-
Design experiences
-
Case studies of previous projects
-
Industry perspectives
-
Research directions
Workload
This course comprises the following elements:
-
Lectures: Approximately 10 formal lectures and 2 guest/industry
lectures. We will use the remaining lecture slots for design reviews
and project presentations.
-
Reading: We will provide all reading material.
-
Assignments: One laboratory assignment to familiarize you
with the XESS XSV-300 boards and embedded microcontrollers.
-
Design reviews: 2 technical packages (preliminary and final
design packages) that describe your project in sufficient detail for another
team to completely evaluate your design.
-
Reviewer evaluations: 2 reviewer evaluations, where your
team evaluates another team's preliminary and final design packages.
-
Class presentations: 4 class presentations, comprising
(1) your preliminary design, (2) your review of another team's preliminary
design, (3) your final design, and (4) your review of another team's final
design.
-
Lab presentations: 1, to demonstrate your completed project.
-
Product brochure: A web-based product brochure.
-
Project report: A *complete* package comprising all the technical
details of your project and the user's manual
-
Exams: None
-
Final: None
This course is a capstone design course for the Computer
Engineering Program. Its purpose is to tie together the material from other
courses in the design, construction, and debugging of a complete embedded
system.
Embedded-system design is difficult and time consuming.
Start your projects *immediately*. Spending an hour or two per day on this
class will maximize your efficiency. You will work this way in the real
world—you cannot cram a three-month design into one night—so you may as
well work this way now. Plus, you will understand the material better,
and waste less time.
Software tools consume more time then they should. We
have chosen tools that are easy to use, but undoubtedly there will be a
startup cost. Read the manuals, work together, and do not spend countless
hours making no progress. Ask for help.
All turn-in for this class will be electronic. We
will assign a web page for each project team, where you will post your
design packages, reviewer comments, final report, brochure, etc. For those
of you who are taking CSE477 concurrently with TC333, the TC instructor
has asked that you post your design reviews and final project in Word format,
so she can edit your writeups easily. Your writing must be clear and concise.
We will not waste time trying to decipher poor writing.
Grading
We will determine your course grade as follows:
-
0%: Laboratory assignment. But...you must complete
this assignment and get TA signoff to pass the class.
-
15%: preliminary design package
-
10%: written analysis of another team's preliminary design
package
-
5%: preliminary design presentations (your package,
and your review of another team's package)
-
15%: final design package
-
10%: written analysis of another team's final design package
-
5%: final design presentations (your package, and
your review of another team's package)
-
10%: demonstration of your completed project
-
5%: project brochure
-
25%: project report
Please see the class schedule
for assignment due dates and times.
Class participation is very important to CSE477. We need
you in the classroom for your classmates' design presentations. The
instructor reserves the right to adjust your final grade based on class
attendence/participation.
We will grade all your assignments numerically. At the
end of the term, we will sum the total points, normalize the sum (choose
X and Y), and assign a final numeric grade as follows:
We will round up or down using standard conventions: 3.84
--> 3.8; 3.85 --> 3.9
Collaboration
One objective of this course is for you to acquire experience
working as a member of a team. There will be 3 students in each project
group. Pick your partners carefully and ensure that you are compatible
in terms of personality, objectives, and study habits. However, a team
assignment does not mean that each student learns only 1/3 of the project
material. There is a simple rule you must follow when working in a team:
Each of you should be able to answer any question about the project. We
will ask questions during the project presentations, to ensure that you
have followed this rule. In addition, in each and every writeup, we want
to see (1) the author's name for each and every section of the writeup,
and (2) a statement about each person's precise role in the design and
realization of the project.
Cheating
Cheating is a very serious offense. If caught cheating, you
can expect a failing grade and initiation of a cheating case in the University
system. Basically, cheating is an insult to the instructor, the department
and major program, and, most importantly, to the person doing the cheating.
Just don't.
If you are in doubt about what might constitute cheating,
either don't do it or send the instructor an email
describing the situation.
Comments to: cse477-webmaster@cs.washington.edu