EC 271 – Computer Organization
Course lecturer :
Prof. Dr. Mohamed Rizk
Course assistant :
Eng. Rana M. Salem
Eng. Allaa Hussien
Course objectives :
1. Upon completing the course, student will learn
• Computer abstraction and techniques.
• Instruction language of computer.
• Arithmetic for computer.
• Assessing and understanding performance.
• The processor data path and control.
• Enhancing performance with pipelining.
• Large and fast memory hierarchy.
• Storage, network and other peripherals.
2. Student will be able to
• Understand principles of computer organization.
• Design of arithmetic unit.
• Design of control unit.
• Design serial processor.
• Design of memory hierarchy.
• Design ASICs using VHDL.
• Write a behavioral model of the circuit functionality, and then synthesize the VHDL description into hardware realization in CPLD or FPGA.
• Develop self-checking test benches.
Course description :
This course is concerned with the fundamentals of computer design, instruction set design, assessing and understanding performance, processor micro-architecture: data-path design, multi-cycle design, exceptions, microprogramming, and micro-architecture of a recent processor. The second goal is to learn pipelined design, memory hierarchy and design, I/O design, and buses and interfacing.
Course assessment :
Year Work 30%
Mid Term 20%
Final Exam 50%
Recommended text books :
David A. Patterson and Hennessy .John L, “Computer Organization and Design, Software Interface /Hardware”, 4th Edition 2011, Elsevier.
Recommended refrences :
John L. Hennessy, David A. Patterson, ” Computer Architecture A Quantitative Approach”, Fourth Edition, 2007, Elsevier, Morgan Kaufmann.