Computer organization
and architecture
Course Objective
Describe the general organization and architecture of computers.
Identify computers’ major components and study their functions.
Introduce hardware design issues of modern computer architectures.
Build the required skills to read and research the current literature in
computer architecture.
Learn assembly language programming.
Why we Study this Course?
You want to be a computer scientist
It makes you a better programmer
Performance: programming is more than just getting the answer
It's fun to learn how things work
You may need to buy a computer someday
Textbooks And Helping material
“Computer Organization,” by Carl Hamacher, Zvonko Vranesic and
Safwat Zaky. Fifth Edition McGraw-Hill, 2002.
“SPARC Architecture, Assembly Language Programming and C,” Richard
P. Paul, Prentice Hall, 2000.
Computer organization and Design :The Hardware/Software Interface, 5th Edition, By
Patterson and Hennessy
Computer organization and architecture Designing for Performance
tenth edition
William Stallings
Course topics
Basic concepts, overall organization. fetch/execute cycle, basic addressing
modes, instruction sequencing, assembly language and stacks. CISC vs. RISC
architectures.
instruction set architecture and ARM instruction set architecture
Single-bus CPU, Multiple-bus CPU Hardware control, and Microprogrammed
control.
Integer arithmetic and floating-point arithmetic.
Memory hierarchy, Primary memory, Cache memory, virtual memory.
I/O device addressing, I/O data transfers, Synchronization, DMA,
Interrupts, Channels, Bus transfers, and Interfacing.
Disk systems.
Grading System
3 assignment
3 Quiz
Mid and Final ( Grading policy as per university criteria)
Presentation or projects or new idea relevant to subject in proposal format
Organization and architecture
In describing computers, a distinction is often made between computer
architecture and computer organization. Although it is difficult to give
precise definitions
for these terms, a consensus exists about the general areas covered by each.
A computer system, like any system, consists of an interrelated set of
components.
The system is best characterized in terms of structure—the way in which
components are interconnected, and function—the operation of the individual
components.
Computer System Components
Computer system: Major components are processor, memory, I/O.
Processor: Major components are control unit, registers, ALU, and instruction
execution unit.
Control unit: Provides control signals for the operation and coordination of all
processor components.
I/O devices: Key Board, muse, joy stick etc etc…….
What is Structure and Function?
A computer is a complex system; contemporary computers contain millions of
elementary electronic components.
Structure: The way in which the components are interrelated.
Function: The operation of each individual component as part of the structure.
Function
■ Data processing: Data may take a wide variety of forms, and the range of processing
requirements is broad. However, we shall see that there are only a few
fundamental methods or types of data processing.
■ Data storage: Even if the computer is processing data on the fly the computer
must temporarily store at least those pieces of data that are being worked on
at any given moment. Thus, there is at least a short-term data storage function.
Equally important, the computer performs a long-term data storage function.
Files of data are stored on the computer for subsequent retrieval and update.
■ Data movement: The computer’s operating environment consists of devices
that serve as either sources or destinations of data. When data are received
from or delivered to a device that is directly connected to the computer, the
process is known as input–output (I/O), and the device is referred to as a
peripheral. When data are moved over longer distances, to or from a remote
device, the process is known as data communications.
■ Control: Within the computer, a control unit manages the computer’s
resources and orchestrates the performance of its functional parts in response
to instructions.
Structure
We now look in a general way at the internal structure of a computer. We begin
with a traditional computer with a single processor
■ Central processing unit (CPU): Controls the operation of the computer and
performs its data processing functions; often simply referred to as processor.
■ Main memory: Stores data.
■ I/O: Moves data between the computer and its external environment.
■ System interconnection: Some mechanism that provides for communication
among CPU, main memory, and I/O. A common example of system
interconnection is by means of a system bus, consisting of a number of
conducting wires to which all the other components attach.
Computer Organization VS Architecture
What is it?
computer architecture
programmer's view of the machine data
representation and operations
computer organization
structural relationships not visible to the
programmer
multicore computer structure
Computers generally have multiple processors. When these processors all reside
on a single chip each processing unit (consisting of a control unit, ALU, registers, and perhaps cache) is called a core.
■ Central processing unit (CPU): That portion of a computer that fetches and
executes instructions. It consists of an ALU, a control unit, and registers.
In a system with a single processing unit, it is often simply referred to as a
processor.
■ Core: An individual processing unit on a processor chip. A core may be
equivalent in functionality to a CPU on a single-CPU system. Other specialized
processing units, such as one optimized for vector and matrix operations, are also
referred to as cores.
■ Processor: A physical piece of silicon containing one or more cores. The
processor is the computer component that interprets and executes instructions. If
a processor contains multiple cores, it is referred to as a multicore
processor.