ECE 390
COMPUTER
ENGINEERING II
SPRING 2006
INSTRUCTOR:
Dr. Zbigniew Kalbarczyk: kalbar@crhc.uiuc.edu
Office: 267 Coordinated Science
Laboratory;
1308 W. Main, Urbana
Phone:
(217) 244 7110
Office hours: Thursday, 1:00 p.m. to
3:00 p.m. and by appointment
TEACHING ASSISTANTS:
PREREQUISITE:
- ECE 290
or CS 231 or consent of instructor.
- Students
may not receive credit for both ECE 390 and CS 232.
COURSE OBJECTIVES:
- Course
goals:
- To
understand the principles and techniques of machine-level programming.
- To
design and implement complex programs.
- To
learn to use computers for real time data acquisition and control of
input-output devices.
- To
develop teamwork skills
- Detailed
instructional objectives are available online.
LECTURES: 119 Material Science and Engineering Bld. Tuesdays and Thursdays, 10:30 a.m. to 11:50 a.m.
- Lecture
notes are available on-line from the ECE 390 Web site.
- These
notes serve as an outline for the course, not as a substitute for
regular classroom attendance. Additional discussions, clarifications, and
examples are provided in the classroom.
LABORATORY: 238 Everitt Lab.
Phone: 333-9591
- Your
blue key card provides 24-hour access to the laboratory, except during
official university holidays and breaks. Access will end on Reading Day.
- The
instructor and TAs will be in the laboratory according to the schedule
posted on-line.
- Lab
etiquette:
- Cleanliness:
Keep food and drinks away from the machines. Put trash in wastebaskets.
- Thrift:
Use the printer sparingly. On-line homework assignments are not meant to
be printed on paper.
- Safety:
Do not prop the door open at night or on weekends.
- Manners:
Use headphones when listening to music.
WEB SITE: http://courses.ece.uiuc.edu/ece390/
- The
ECE 390 Web site contains important information about the course.
- Course
Information: Announcements, exam, homework, and machine problem due
dates.
- Homework:
Homework assignments are posted and graded on-line.
- Machine
Problems: Machine problem assignments are available on-line.
- Grades:
Your grades will be posted in the ECE 390 online gradebook.
COMMUNICATION AND NEWS: WebBoard
- Every
student must have Internet access, a Web browser, and an e-mail account.
- Engineering
students have logins on the Engineering Workstation Laboratory machines.
- Web browsers
and telnet are installed on the machines in the laboratory.
- Every
student must set an Active Directory password at http://accounts.ad.uiuc.edu/ in
order to access ECE 390 assignments and resources.
- The
ECE 390 WebBoard, Web site, and schedule are
accessible via http://my.ece.uiuc.edu.
- You
should read the ECE 390 WebBoard every day
for important information about the course.
- Help
with assignments
- Updated
deadlines
- WebBoard etiquette: You may read and
post announcements, questions, answers, and comments about any aspect of
the course. Complaints must include constructive suggestions. Flaming and
personal attacks are unacceptable. Compliments and public recognition of
good deeds are always welcome.
EXAMINATIONS:
- There
will be two midterm examinations and a final examination
- Copies
of examinations from previous semesters are available online in the
"Resources" area of the course Web site.
- See
the schedule
for scheduled exam dates.
HOMEWORK:
- Assigned
approximately every other week.
- Submitted
and graded on-line via the ECE 390 Web site.
- May
be resubmitted for higher credit until 11:59 p.m. on the due date.
- See
the schedule
for scheduled assignments and due dates.
- There
is no credit for late homework.
MACHINE PROBLEMS:
- Deadlines:
To receive full credit for a machine problem you must demonstrate your
correctly working program to a TA or the instructor by 5:00 p.m. on the
day that the machine problem is due. For a submission after the deadline,
10% per weekday (Monday through Friday) will be deducted.
- Subroutines:
You will be given library versions of subroutines that you are assigned to
write. You may use these library versions to help you develop your own
program. If you are unable to complete all of the assigned subroutines,
then you may use a library version of a subroutine, with loss of credit.
There will be no credit for programs that do not work at all.
- Bonus
Points: You are encouraged to turn in your programs early. Beginning
with MP1, you will be awarded one extra point for each weekday the program
is early. You may earn a maximum of five bonus points (five days early).
Bonus points are worth just as much as normal points. Bonus points can
offset subtractions for deficiencies in style, modularity, and
documentation.
- See
the schedule
for scheduled due dates.
- Start
Early: There are fewer machines in the lab than students in the class.
Long waits to use a computer or demonstrate a program can be avoided if
you start and finish your machine problems promptly.
GRADING:
- ECE
390 grades are based on a 1000-point scale. A student's total score is
computed as the sum of the raw points earned on the homework, machine
problems, exams, and final project, with caps on the raw points earned on
the homework and machine problems.
- The
approximate allocation of points to assignments is shown in the table
below.
|
|
Homework
|
Machine Problems
|
MP Bonus Points
|
Exams
|
|
0
|
20
|
20
|
|
|
|
1
|
20
|
60
|
5
|
140
|
|
2
|
20
|
70
|
5
|
140
|
|
3
|
20
|
70
|
5
|
|
|
4
|
20
|
70
|
5
|
|
|
5
|
20
|
|
|
|
|
6
|
20
|
|
|
|
|
Final
|
|
110
|
|
220
|
|
Subtotal
|
140
|
420
|
500
|
|
Maxima
|
100
|
400
|
500
|
|
Total
|
1000 points
|
- Course
Grades: Plus and minus grades will be assigned using cutoffs
calculated in two different ways. For each grade, the lower of the two
calculated cutoffs will be used. Each grade cutoff may be lowered further,
but will not be raised.
- First
method: A-plus = 967, A = 934, A-minus = 900, B-plus = 867, B = 834,
B-minus = 800, C-plus = 767, C = 734, C-minus = 700, D-plus = 676, D =
634, D-minus = 600, F = less than 600
- Second
method: Calculated relative to the average of the total scores of the top
10% of the class
- Minimum
A-minus = 95% x Avg(Top 10%)
- Minimum
B-minus = 85% x Avg(Top 10%)
- Minimum
C-minus = 75% x Avg(Top 10%)
- For
example, if your total score is 891, then you would be guaranteed a B-plus
or higher grade. If 95% of the average of the top 10% of the class is 887,
then you would receive an A-minus.
SPECIAL CONCERNS:
- If
you have any concerns about factors such as a disability or a religious
practice that may interfere with the successful completion of a course
requirement by its deadline, please contact the instructor in advance.
- Requests
for time extensions on machine problems and excuses for missed
examinations will be considered only if accompanied by documentation from
a physician or an omnipotent dean.
ACADEMIC INTEGRITY:
- The
faculty of the Department of Electrical and Computer Engineering expects
all students to conduct their academic work with the high ethical
standards of the engineering profession.
- Except
for group assignments, each machine problem, homework assignment, and exam
must represent your own work. You may help other students by discussing
assignments, but you must not copy anyone else's solution. Violations of
these standards of academic integrity will result in appropriate
disciplinary action.
- For
group assignments, expectations for individual accountability will be
stated.
TEXTS AND SUPPLIES:
- Required
Materials
- ECE
390 Laboratory Notes. (Available through IEEE Student Branch, Room
243 Everitt Lab early in the semester)
- Key
Card. If you already have a blue key card, then by registering for ECE
390, you will have access to the lab. If you do not have a key card, see
Kara MacGregor, Room 153 Everitt
Lab.
- On-line
Materials
- Recommended
Books
- D.
W. Lewis, Fundamentals of Embedded Software, Prentice Hall, 2002.
- W.
S. Humphrey, Introduction to the Personal Software Process,
Addison-Wesley, 1997.
- D.
Kushner, Masters of Doom, Random House, 2003.
- Other
Books (on reserve at Grainger Library)
- P.
Abel, IBM PC Assembly Language Programming, 5th ed., Prentice
Hall, 2001.
- B.
B. Brey, The Intel Microprocessors 8086/8088
- Pentium, Merrill (MacMillan)
- J.
Duntemann, Assembly Language Step By Step,
2nd ed., Wiley.
- W.
B. Giles, Assembly Language Programming for the Intel 80XXX Family,
Macmillan, 1991.
- R.
L. Gray, Macro Assembler Programming for the IBM PC and Compatibles,
Macmillan, 1989.
- H.
Hahn, Assembler Inside and Out, Osborne-McGraw Hill, 1992.
- R.
E. Haskell, Introduction to Computer Engineering- Logic Design and the
8086 Microprocessor, Prentice Hall, 1993.
- K.
R. Irvine, Assembly Language for Intel-Based Computers, 3rd ed.,
Prentice Hall, 1999.
- Pentium
Family User's Manual, Volume 3: Architecture and Programming Manual,
Intel Corporation, 1995.
- J.
Sanchez and M. Canton, Numerical Programming the 387, 486, and Pentium,
McGraw-Hill, 1995.
- Other
Resources: http://courses.ece.uiuc.edu/ece390/resources/
- Copies
of exams from previous semesters are available online via this Web page.
- The
locked cabinet in the ECE 390 lab has a small collection of reference
books on programming and interfacing. Please ask the TAs for access to
the cabinet.