Subject Code: CPIT 210 Credits: 3 UNITS

Prerequisites: CPIT 201

Fall Semester, 2010
Dr. M. A. Madkour, DR. M. Khamis
emails: ; .
URL:

Description

Computer organization (sometimes also known as architecture) explores the computer hardware and firmware. Architecture is the many layers of software, firmware, and hardware which work together to provide the programmer with a productive development environment and convenient abstractions for the complex and detailed interfaces which make-up the computer.

In this class we will focus on computer hardware from a computer scientistor software engineering viewpoint. The course will give you an in-depthunderstanding of the inner-workings of modern digital computer systemsand tradeoffs present at the hardware-software interface. Students willacquire an understanding of the design process in the context of a complex hardware system and practical experience with simulation tools.

Organization

I expect that everyone will have done the reading and any assigned problems when they come to class. The reading and problems will be a point of departure for us as we try to gain a deeper understanding of the underlying issues and techniques surrounding the architecture of computer systems. I hope that you will also bring questions and ideas to class for us to discuss.

This course is based on a variety of learning modalities: lecture, discussion and exercises.We hope is that this breadth of approaches will make it easier for you to grasp the big-picture.

Prerequisites

The only prerequisite for CPIT 210 is Introduction to Computer (CPIT 201).

Exercises

Exercises will typically come from the textbook; additionally We will provide some from other sources during the course of the semester. Exercises are described by the assistant of the course during the Lab times.

Projects

During the course of the semester there will also be a couple of Hardware projects (hardware implementation is optional but simulation is obligatory).

Exams

There will be First exam, midterm and final exams for this course. Each exam time will be announced enough time before the exam.

Most of the midterm and final exam questions will follow the exercises and concepts demonstrated in lecture or lab. It will be difficult to do well on the exams without keeping-up with the reading the textbook.

Getting Help

If you have questions or need to have something explained there are lots of ways to get help. Here are some options, in no particular order:

  • Talking to one of your classmates (particularly ones that are regular to attend lectures and working seriously)
  • Stop by and see me during my office Hours declared on the door of my office.
  • Send your question to me via email

Grading

Assignments will be turned-in at the start of class on the day they are due. I will accept any assignment (exercise or project) for partial credit up to one week after the due date. They will be marked down according to how late they are but they will always count for credit. One week or more after the due date for any particular assignment I will not accept it any longer for credit.

The breakdown for how your grade will be determined is as follows:

  • Assignments/Participation15%
  • Projects 5%
  • First Exam 15%
  • Midterm Exam 20%
  • Lab 15%
  • Final Exam30%

Academic Honesty

Often you will find it useful to discuss specific problems, techniques, etc. with tutors and fellow students. The sharing of ideas is a helpful and normal part of learning, and is encouraged. In particular one of the best ways to really learn something is to teach it to other people.

However, any assignment that you turn in should be entirely your own work. It is not acceptable to ask a tutor or fellow student how to do a problem or project, and then turn in a close paraphrase. Instead, you should use other problems to aid in learning specific techniques and then apply your new knowledge to the original problem.

Course Schedule

(1.5 Hours) / Digital Systems and Binary Systems
Digital Systems, Binary Numbers, Number Base Conversion, Octal and Hexadecimal Numbers, Complements, Binary Codes, Binary addition and Subtraction
(3 Hours) / Boolean Algebra and Logic Gates
Logic gates basic Definitions, Laws of Boolean Algebra, Basic Theorems and Properties of Boolean Algebra, Boolean Functions Derivation using Product of Sums and Sum of Products, Canonical and Standard Forms.
(3 Hours) / Gate-Level Minimization
The Map Method, Four-Variable Map, Product of Sums Simplification, NAND and NOR Implementation,
(1.5 Hours) / Addition & Subtraction circuits
Half adder, Full adder, 4 Bits parallel binary adder, 4 Bits parallel binary adder/subtractor, 4 Bits binary coded Decimal adder.
(6 Hours) / Devices:
Decoder: Definition, Design, Different Uses, Examples.
Encoder: Definition, Design, Different Uses, Examples.
Multiplexer: Definition, Design, Different Uses, Examples.
Comparator: Definition, Design, Different Uses, Examples.
(3 Hours) / Sequential Circuits: SR F/F, J/K F/F, Counter, Register, Shift Register.
4.5 Hours / Top level View of computer Function(chapter 3)
Computer System Prototype, Computer Components, computer Function, Interconnection Structure, Bus interconnection, Example.
4.5 Hours / Caching (Chapter 4)
Cache Memory Principles, Elements of Cache Design, Different Types of Cache, Cache Memory management, Cache Memory Consistency.
3 Hours / Input/Output Organization (Chapter 7)
Accessing I/O Devices, Interrupts, Direct Memory Accesses, Buses, Interface Circuits
3 Hours / Arithmetic Unit (Chapter 9)
Multiplication of Positive Numbers, Signed-Operand Multiplication, Fast Multiplication, Integer division Floating-Point Numbers & Operations
4.5 Hours / Machine Instructions: Characteristics and Functions (Chapter 10)
Machine instructions, Type of Instructions, Instruction Format (zero, one two and three references instructions), programming using assembly language, Decision and Looping Instructions. Recursion, Infix and Postfix operations and Conversion
3 Hours / Addressing Modes (chapter 11)
Immediate, Direct, Indirect, Relative … etc

Labs

  • Problems on digitals electronics

Text Books:

1.Digital Logic and Computer Design, M. Morris Mano, 4th Edition, Pearson Education, 2008.

2.Computer Organization, William Stalling, 7th Edition.