Course Syllabus

advertisement
Tafila Technical University
Faculty of Engineering
Electrical Engineering Department
0107343
Computer Organization and Architecture
Instructor:
Dr. Abdel Ilah Alshbatat
Tel:
0775299050
E-mail:
abdnoor80@yahoo.com
Time:
11-12.30 Monday, Wednesday
Office Hours:
MW 9.30 – 11
Credit Hours:
3.0
2010
Course Description
Computer architecture is the science and art of selecting and interconnecting hardware
components to create a computer that meets functional, performance and cost goals. This
course introduces the basic principles and hardware structures of a modern programmable
computer. We will learn, for example, the Structural organization and hardware design of
digital computers. Processing and control units, arithmetic algorithms, input-output systems,
and memory systems
Textbook
1. A.S. Tanenbaum, Structured Computer Organization 5th ed., Prentice Hall, Upper Sable
River, NJ, 2006. ISBN 0-13-148521-0.
Supplemental Textbooks/Materials:
1. John Wakerly, Digital Design Principles and Practices, Third Edition Updated,
Prentice Hall, Upper Sable River, NJ, 2001. ISBN: 0-13-089896-1.
2. D.A. Patterson and J.L. Hennessy, Computer Organization and Design: The
Hardware/Software Interface, 2nd Ed., Morgan Kaufmann Publishers, Inc., San
Francisco, CA, 1998, ISBN 1-55860-428-6.
3. M.J. Murdocca and V.P. Heuring, Principals of Computer Architecture, Prentice Hall,
Upper Sable River, NJ, 2000. ISBN 0-201-43664-7.
Prerequisites by Topic:
1. Binary, octal, decimal, and hexadecimal number representations and arithmetic.
2. Character, integer, and floating point representations.
3. Fundamental digital logic design, including simple gates, Boolean algebra, combinatorial
logic, and sequential logic.
4. Prior introduction to computer architecture, including register files, ALUs, memory access,
and instruction sets.
5. Prior introduction to and programming experience with a computer assembly language and a
high-level programming language.
Course Objectives:
1. To demonstrate the application of discrete mathematics, number theory, Boolean algebra, and
simple digital design to the field of computers and computer architecture.
2. Provide a comparative overview of multiple computer processors, peripheral devices,
instruction set architectures, and operating systems to identify key functional and
performance aspects.
3. Provide the ability to analyze processor, microcontroller, and computer structures, interpret the
various aspects as required for a specific system using computers or applications, and
determine the appropriate class of hardware, firmware, and software that can meet desired
needs.
4. Provide the ability and a structured approach to the study, analyze, and assessment of novel
and next generation computers, processors, and microcontrollers as they are introduced in the
future.
Topics:
1. Historical perspective of computer architectures and their evolution into current families of
computers.
2. Computer system components and organization: processors, primary memory, secondary
memory, and input/output ports and devices.
3. Digital logic elements in computer design: numerical representations, basic circuits, memory,
CPU and busses, input and outputs
4. Microarchitecture level structures and design for implementations of data paths, definable
operations and instructions, and various performance options and improvements.
5. Instruction set architecture for programming: ISA overview, data types, formats, addressing,
instruction types, and flow control
6. Operating system machine functions and instructions used to support applications
programming: virtual memory, virtual I/O, and process management.
7. Assembly language constructs, translation into machine language and support for software
module linking and loading.
8. An overview of parallel computer architectures and design issues.
Evaluation:
3. Two tests
4. Final examination
25% each
50%
Exams: There will be two mid-term exams; they will be given during the regular class. The final
Exam will be scheduled by the university. A missed exam will result in a grade of zero
unless you received prior approval, or you immediately produce written documentation of an
unavoidable emergency beyond your control that caused you to miss it. If your excuse is
approved, you will be given a makeup exam.
Learning Outcomes:
1. An understanding of the history, applications, and importance of computers in society.
2. The knowledge of how previous engineering science curricula have been applied in the field
of computers and computer architecture.
3. The ability to identify and analyze the function and operation of processor, microcontroller,
and computer components and structures.
4. The ability to perform basic computer system component designs, architect a virtual computer
based on the component designs, design and simulate micro-instructions for processor core
micro-operations, define an instruction set architecture and assembly language for the virtual
computer, analyze the performance of the virtual computer and identify a range of
performance enhancements.
5. The ability to assess computer system architectures and implementations in order to identify
and solve computer operational or performance problems.
6. A knowledge of contemporary issues related to the architecture, design, implementation and
use of computers.
Homework
There will be homework at the end of each chapter. All will be graded, and returned to you. The
homework must be done independently.
Attendance: Attendance at every class is expected. All material covered in class, whether in lecture
or examples, is testable. You are responsible for everything discussed in lecture.
Exam Date: To be assigned later
Download