|Instructor:||S. Y. Cheung|
|Office:||North Decatur Bldg 140|
|Office Hours:||MWF 3-4 PM|
|Text:||Structured Computer Organization|
|by Andrew S. Tanenbaum.|
After examining the CPU and memory structures, we will discuss the micro programming level, where micro programs are used to implement more complex machine instructions using simpler instructions (much like a subroutine call). After this, we will examine the communication between the different parts of the computer: how do the CPU, memory and I/O devices communicate ? We will examine the use of address, data and control buses and study ``bus protocols''. We will learn about the two types of buses: synchronous and asynchronous, and we will see that the CPU uses different communication methods for communicating with the memory and an I/O device due to difference in speed. This will lead us into study programmed I/O and interrupt I/O. The above constitute the core material in CS355. The remainder of the course will discuss advance techniques in computer architecture -- these techniques are the ``bells and whistles'' added to the computer to make it run faster. Topics covered include pipelining, register windows, cache memory, virtual memory, and if time allows: multiprocessors.
Once you have used up your two extensions, you cannot turn in any assignment late. You should however turn in your incomplete assignment for partial credit.
Students will be graded partially on the basis of their programming assignments. These programming assignments are to be treated as examinations, and are expected to be your individual work. While discussions with other students in the course may be permitted or encouraged by your instructor, you should write your program yourself. The mathlab representatives are available to explain error messages, discuss briefly technical details with which you may not be familiar, and give short suggestions as to how you might detect logic errors. The reps should not, however be asked to write part or all of your program. Your instructor (and any teaching assistants assigned to the course) will be glad to help you to the extent that he or she feels reasonable.
Submissions based on other students solutions in prior offerings of the course specifically violate these guidelines, as do submissions prepared with the help of an outside "tutor".
You should take precautions to protect the confidentiality of your work: preserve the secrecy of your password, do not make files or directories sharable, pick up your printouts promptly and dispose of printouts where they will not tempt other students. All work should be done either in the class directory of your ITD account (preferred) or in your "priv" directory (only if you do not have a class directory).
All submissions should include a comment statement near the top of the program of the form:
THIS CODE IS MY OWN WORK, IT WAS WRITTEN WITHOUT CONSULTING A TUTOR OR CODE WRITTEN BY OTHER STUDENTS - your name
Cases of apparent plagiarism or collusion will be referred to the Honor Council.