Course:

CMPE 310: Systems Design and Programming.
Sections 0101, 0102 and 0103.
Spring 2005. 4 credits.

Course Instructor:

Chintan Patel, Research Asst. Prof., Computer Science & Electrical Engineering
Office: ITE 322, Telephone: 410-455-3963
Home Page: http://www.cs.umbc.edu/~cpatel2/
Office Hours: M&W 11:00-12:30pm or by appointment
Teaching Assistants: Mohammed ElShoukry
Jay Sheth
Dhruva Acharrya (Hardware Project)
TA Office Hours: TBA.

Text:

Barry B. Brey, "The Intel Microprocessors, 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium and Pentium Pro Processor, Pentium II, Pentium III and Pentium 4 Architecture, Programming and Interfacing", Sixth Edition, Prentice Hall (2003).

Supplementary texts:

Muhammad Ali Mazidi and Janice Gillispie Mazidi, "The 80x86 IBM PC and Compatible Computers (Volumes I&II), Assembly Language, Design, and Interfacing", Third Edition, Prentice Hall (2000).
John Uffenback, "The 80x86 Family, Design, Programming and Interfacing", Third Edition, Prentice Hall (2002).

Lab Supplementary Text:

Bob Neveln, "Linux Assembly Language Programming",Prentice Hall PTR (2000)

Course Description:

This course introduces Intel 80x86 assembly language and the basic architecture of the Intel microprocessor. We will discuss register architecture, segmentation and paging, hardware specs and support chipsets for the 8086 processor.There are two exams and labs will focus on assembly language programming and hardware projects.

Grading:

The distribution of weights for the exams, homeworks and projects is as follows:
Midterm
20%
Final
25%
Programming Projects/ Labs/ Homeworks
50%
Class Participation/Quiz/ In-class exercise
5%

No incompletes will be given, except as required by university policy for truly exceptional circumstances. The final exam is cumulative. However, material covered after the second exam will be emphasized.

NOTE: Cheating at any time in this course will cause you to fail the course.

By enrolling in this course, each student assumes the responsibilities of an active participant in UMBC's scholarly community in which everyone's academic work and behavior are held to the highest standards of honesty. Cheating, fabrication, plagiarism, and helping others to commit these acts are all forms of academic dishonesty, and they are wrong. Academic misconduct could result in disciplinary action that may include, but is not limited to, suspension or dismissal. To read the full Student Academic Conduct Policy, consult the UMBC Student Handbook, the Faculty Handbook, or the UMBC Policies section of the UMBC Directory [or for graduate courses, the Graduate School website].

The following is taken from the UMBC Student Handbook:

DEFINITIONS OF ACADEMIC MISCONDUCT

Academic misconduct may include but is not limited to the following:

Cheating: knowingly using or attempting to use unauthorized material, information, or study aids in any academic exercise.
Fabrication: Intentional and unauthorized falsification or invention of any information or citation in an academic exercise.
Facilitating Academic Dishonesty: Intentionally or knowingly helping or attempting to help another commit an act of academic dishonesty.
Plagiarism: Knowingly representing the words or ideas of another as one's own in any academic exercise, including works of art and computer-generated information/images.

POLICY FOR RESOLVING CASES OF ACADEMIC MISCONDUCT

Individual faculty members have the right and responsibility to deal directly with any cases of academic misconduct which arise in their courses. Instances of academic misconduct may be identified in one of two ways. If a faculty member believes a student has committed an act of academic misconduct--for example, by direct observation of student behavior, by comparing the contents of an assignment with that submitted by another student, or by reviewing notated sources or references--the faculty member, in consultation with the Chair of the Academic Conduct Committee, will assess the student's alleged misconduct and the faculty member's options. If a student believes that academic misconduct has occurred, the student will notify either the faculty member or the Chair of the Academic Conduct Committee.

It is particularly important that the Chair of the Academic Conduct Committee be consulted. The Chair can provide knowledge and insight for the faculty member. Communication of instances of academic misconduct also protects the integrity of the university by providing a means of recording infractions that may be repeated by a particular student, or which may prove endemic to a particular course or department. Consultation with the Chair of the Academic Conduct Committee provides a formal record of the infraction and resolution, protecting the student, professor, and university should any questions later arise.

The student will have the opportunity to respond to an accusation of academic misconduct.
Tentative Course Outline
Date
Topic
Week1
Introduction
Week1
Intel Microprocessor History and Overview
Week2
Intel Architecture Basics
Week2
Intel Register Architecture: Basics
Week3
8086/8088 Hardware Specs
Week3
8086/8088 Hardware Specs
Week4
Bus Timing
Week4
Memory Interface
Week5
Memory Interface
Week5
Memory Interface
Week6
Spring Break
Week6
Spring Break
Week7
Memory Interface
Week7
Midterm exam
Week8
Basic I/O
Week7
Basic I/O
Week9
Basic I/O
Week9
Interrupts
Week10
Interrupts
Week10
Direct Memory Access
Week11
Direct Memory Access
Week11
Disk Storage and Video
Week12
Disk Storage and Video
Week12
Bus Interface
Week13
Bus Interface
Week13
OS Fundamentals
Week14
Segmentation and Paging
Week14
Protected Mode Addressing
Week15
Paging
Week15
Advanced Topics
Finals
Final Exam Week

Note: Changes/Additions to this schedule will be posted on my website

http://www.cs.umbc.edu/~cpatel2/