Sunteți pe pagina 1din 26

COMPUTER

ORGANIZATION &
ARCHITECTURE (IT-209)

IT – 209 LECTURE-1 3/8/2009 1


What is this Course About?

This course is about the structure and design of


digital computers. This is commonly called
“computer architecture” – which is instruction set
architecture + hardware organization.

2
Functions of a Computer

Data Processing
Data Movement (Input/Output)
Together: Input-Process-Output model
Data Storage
Control of all these functions
Function
All computer functions are:
 Data processing
 Data storage
 Data movement
 Control
Functional view
Functions performed by a Computer

Data Movement Device


Functions performed by a Computer

Data Movement Device


Data Storage and
Retrieval
Functions performed by a Computer

Data Movement Device


Data Storage and
Retrieval
Data Processing
 From/To storage
Functions performed by a Computer

Data Movement Device


Data Storage and
Retrieval
Data Processing
 From/To storage
 From Storage to I/O
 From I/O to Storage
Hardware Components
Functional Components
Von Neumann Architecture

Memory

Central Processing Unit (CPU)


Control Arithmetic
Input Output
Unit Logic Unit

Registers
Structure - Top Level

Peripherals Computer

Central Main
Processing Memory
Unit

Computer
Systems
Interconnection

Input
Output
Communication
lines
Structure - The CPU

CPU

Computer Arithmetic
Registers and
I/O Login Unit
System CPU
Bus
Internal CPU
Memory Interconnection

Control
Unit
Structure - The Control Unit

Control Unit

CPU
Sequencing
ALU Login
Control
Internal
Unit
Bus
Control Unit
Registers Registers and
Decoders

Control
Memory
Converting Source into
Executable Files

COPYRIGHT 1998 MORGAN KAUFMANN PUBLISHERS, INC. ALL RIGHTS RESERVED


Anatomy of an Object File
References that must change Compilation information
if the program is moved to allow mapping of
Machine Code addresses to source code.
in memory.

Size and position


of other pieces. Associate addresses
Binary Data with external label.
Representation. Unresolved references.
The Concept of a Computer

Application software

Systems software

User Hardware

Operating system
compiler
assembler
Programs user
writes and runs
Execution Cycle
Instruction Obtain instruction from program storage

Fetch

Instruction Determine required actions and instruction size


Decode

Operand Locate and obtain operand data


Fetch

Execute Compute result value or status

Result Deposit results in storage for later use


Store

Next
Determine successor instruction
Instruction
Instruction Set Architecture
(ISA)
A set of assembly language instructions (ISA) provides a
link between software and hardware.
Given an instruction set, software programmers and
hardware engineers work more or less independently.
ISA is designed to extract the most performance out of
the available hardware technology.

Application

Instruction
software
Systems software

Software Hardware
set
Hardware
ISA
Defines registers
Defines data transfer modes between
registers, memory and I/O
Types of ISA: RISC, CISC, VLIW, Superscalar
Examples:
 IBM370/X86/Pentium/K6 (CISC)
 PowerPC (Superscalar)
 Alpha (Superscalar)
 MIPS (RISC and Superscalar)
 Sparc (RISC), UltraSparc (Superscalar)
Architecture & Organization

Architecture is those attributes visible to the


programmer
 Instruction set, number of bits used for data

representation, I/O mechanisms, addressing


techniques.
 e.g. Is there a multiply instruction?

Organization is how features are implemented


 Control signals, interfaces, memory

technology.
 e.g. Is there a hardware multiply unit or is it

done by repeated addition?


Computer Architecture
Architecture: System attributes that
have a direct impact on the logical
execution of a program
Architecture is visible to a
programmer:
 Instruction set
 Data representation
 I/O mechanisms
 Memory addressing
Computer Organization
Organization: Physical details that are
transparent to a programmer, such as
 Hardware implementation of an
instruction
 Control signals
 Memory technology used
.
Computer Architecture ….
Input/Output and Storage
Disks, WORM, Tape RAID

Emerging Technologies
DRAM Interleaving
Bus protocols

Coherence,
Memory L2 Cache Bandwidth,
Hierarchy Latency

L1 Cache Addressing,
VLSI Protection,
Instruction Set Architecture Exception Handling

Pipelining, Hazard Resolution, Pipelining and Instruction


Superscalar, Reordering, Level Parallelism
Prediction, Speculation,
Vector, DSP
Understanding the design techniques, machine structures, technology factors, evaluation
methods that will determine the form of computers in 21st Century

Parallelism
Technology Programming
Languages
Applications
Computer Architecture: Interface Design
• Instruction Set Design (ISA)
• Organization
• Hardware

Operating Measurement &


Systems Evaluation History
Computer Engineering
Methodology

Evaluate Existing
Implementation
Systems for
Complexity
Bottlenecks
Benchmarks
Technology
Trends
Implement Next Simulate New
Generation System Designs and
Organizations
Workloads

S-ar putea să vă placă și