The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

SYLLABUS • 1. INTRODUCTION TO COMPUTER ARCHITECTURE – Organization and architecture – Historical perspective of Computer architecture: ISA,

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by , 2017-01-18 01:30:04

Introduction to COMPUTER ARCHITECTURE - unitbv.ro

SYLLABUS • 1. INTRODUCTION TO COMPUTER ARCHITECTURE – Organization and architecture – Historical perspective of Computer architecture: ISA,

Introduction to

COMPUTER
ARCHITECTURE

Goals and learning objectives

• Introduction in computers’ architecture and organization;
the course will focus on the computer

– system buses
– memory system
– computer arithmetic and related structures for data-path
– I/O system
– parallel processing basics and specific architecture.

• Classification and exemplification of modern computer
architectures

COMPUTER ARCHITECTURE 3

Link to download slides

Professor Mihai ROMANCA

Course web page:
http://etc.unitbv.ro/~romanca/C-Arc/

(Or IESC -> DEC -> Members -> Romanca Mihai)

Electronics and Computers Department
email: [email protected]

COMPUTER ARCHITECTURE 2

Goals and learning objectives

• At the end of this course the student will be able to:

– define and describe different computer architectures

– describe the operation of different hardware subsystems

– use acquired information (together with data sheets and application
notes) for installation, repairing or design different interfaces to
computers.

– analyze and compare different high performance computer system.

• Some of the topics usually included in Computer
Architecture lectures and describing the Input / Output
system are brief discussed in our lectures because these
topics are the subject of another course in the next study
year: Interfaces and Peripheral

COMPUTER ARCHITECTURE 4

SYLLABUS

• 1. INTRODUCTION TO COMPUTER
ARCHITECTURE

– Organization and architecture

– Historical perspective of Computer architecture: ISA,
organization, implementation, architecture classification

– System buses: bus structure, multiple bus hierarchies, arbitration,
timings.

– Measuring performance: Evaluation of computer performance,
comparison between different machines, Metrics, different
benchmarks, Amdahl’s Law for compute the performance
improvement

COMPUTER ARCHITECTURE 5

SYLLABUS

• 3. INPUT-OUTPUT ORGANIZATION

– Input-Output Interface, isolated versus
memory-mapped IO

– Asynchronous data transfer, strobe control,
handshaking

– Modes of transfer, priority interrupt arbitration:
controlled by CPU, by Programmable Interrupt
Controllers, and by daisy-chaining.

COMPUTER ARCHITECTURE 7

SYLLABUS

• 2. MEMORY ORGANIZATION

– Memory hierarchy, main characteristics.

– Main memory: ROM, static RAM, dynamic RAM

– Auxiliary memory - main components (will be studied at the
Interfaces and Peripherals Course).

– Cache memory , mappings, writing into cache

– Memory management: static and dynamic allocation,
segmentation, paging and page translation, memory protection

– Virtual memory , address space and memory space, address
mapping using pages, associative memory page table, page
replacement

COMPUTER ARCHITECTURE 6

SYLLABUS

• 4. INTRODUCTION IN PARALLEL PROCESSING
ARCHITECTURES

– Advanced pipelining; Branch prediction, out-of-order execution,
predicated execution, speculative execution, data speculation;

– VLIW Architectures, organization, advantages and limitations;
– Vector processor architecture, vector processing and vector

operations;
– Introduction to multiprocessor architecture, characteristics of

multiprocessors, multithreading, classification of architectures
for parallel processing

COMPUTER ARCHITECTURE 8

REFERENCES

• Hayes P. John, Computer Architecture and Organisation, McGrow Hill
Comp., 1988.

• Mano M., Computer System Architecture, Prentice-Hall Inc. 1993.

• Romanca, M., Calculatoare – Arhitectură şi organizare, Ed.
Universităţii Transilvania, Braşov, 2004;

• Patterson, D., Hennessy, J., Computer Architecture - A Quantitative
Approach, second edition, Morgan Kaufmann Publishers, Inc. 1996;

• Stallings, William, Computer Organization and Architecture, 5th
edition, Prentice Hall International, Inc., 2000.

• Tanenbaum, A., Structured Computer Organization, 4th ed., Prentice-
Hall Inc. 1999.

COMPUTER ARCHITECTURE 9

HISTORICAL PERSPECTIVE OF
COMPUTERS

• 1944 – ENIAC (The Electronic Numerical
Integrator and Calculator )

– The first completely electronic, operational general-purpose
machine built using vacuum tubes.

– Designed and built by Eckert and Mauchly at the University of
Pennsylvania during 1943-45.

– 30 tons, 72 square meters, 200KW
– Performance : Read in 120 cards per minute; Addition took 200 µs;

Division 6 ms;
– Application: Ballistic calculations

COMPUTER ARCHITECTURE 11

ASSESSMENT FORMS

Colloquy written 80%

Laboratory Effective work in the 10%
computer network

Attendance 10%

A successful final qualification is conditioned by obtaining at 10
least the grade of 5 both to the final examination and to the
laboratory evaluation. If your mark at the final exam is higher
than 9,50 the percents for the final qualification are: 90 / 10 / 0
(final mark do not consider course attendance)

COMPUTER ARCHITECTURE

HISTORICAL PERSPECTIVE OF
COMPUTERS

• 1947: William Shockley, John Bardeen and Walter Brattain
of Bell Laboratories invent the transistor.

• 1958: Jack Kilby and Robert Noyce invent the integrated
circuit. Kilby was awarded the Nobel Prize in Physics in
2000 for his work

• 1960-1970, Mainframe computers used primarily by
large organizations for critical applications, bulk data
processing such as census,, industry and consumer
• Large: size, power consumption, cooling

COMPUTER ARCHITECTURE 12

HISTORICAL PERSPECTIVE OF

COMPUTERS

• 1970, Minicomputers, is a class of smaller computers that developed
in the mid-1960s and sold for much less than mainframe and mid-size
computers from IBM and its direct competitors.

• Minicomputers: machine initially focused on applications in
scientific laboratories, but rapidly branching out as the technology of
time-sharing - multiple users sharing a computer interactively
through independent terminals - became widespread

• 1971, Intel introduced the first microprocessor, the Intel 4004.

• 1973: Robert Metcalfe, a member of the research staff for Xerox,
develops Ethernet for connecting multiple computers and other
hardware

COMPUTER ARCHITECTURE 13

HISTORICAL PERSPECTIVE OF
COMPUTERS

• 1980s and 1990s - the introduction of many commercial
parallel computers with multiple processors.

• Intel followed suit by introducing the first of the most
popular microprocessor, the 80x86 series.

• PCs from Compaq, Apple, IBM, Dell, and many others,
soon became pervasive, and changed the face of computing

• The number of processors in a single machine ranged from
several in a shared memory computer to hundreds of
thousands in a massively parallel system

COMPUTER ARCHITECTURE 15

HISTORICAL PERSPECTIVE OF
COMPUTERS

• 1977 The birth of the first personal computer (PC) Apple
computer series

• 1981: The first IBM personal computer, code-named
“Acorn,” is introduced

– It uses Microsoft’s MS-DOS operating system. It has an Intel chip,
two floppy disks and an optional color monitor.

• 1990: Tim Berners-Lee, a researcher at CERN, the high-
energy physics laboratory in Geneva, develops HyperText
Markup Language (HTML), giving rise to the World
Wide Web.

COMPUTER ARCHITECTURE 14

COMPUTER PROGRESS (1)

• The rapid rate of improvements in
computers has come both from:

– Developing the semiconductor technology

• See Moore Low

– Innovations in organization and design of
computer machines

COMPUTER ARCHITECTURE 16

Computer technology progress

Integration Technology Typical number Typical functions
of devices
SSI Bipolar Gates, Flip-flops
MSI Bipolar & MOS 10-20 Adders, Counters
LSI Bipolar & MOS 50-100 ROM, RAM
VLSI Mostly CMOS 100-10,000 Processors
WSI CMOS 10,000-5,000,000 DSP, Special
>5,000,000 purposes IC

COMPUTER ARCHITECTURE 17

BROAD CLASSIFICATION OF TODAY
COMPUTER CATEGORIES

• Desktops

– Examples: PCs, workstations
– Metrics: latency (graphics & IO)

• Servers - to provide file and computing services.

– Examples: Web, database servers
– Metrics: throughput, reliability, scalability

• Embedded Systems

– Examples:PDAs, cell phones, ATMs
– Metrics: complexity, power, latency

COMPUTER ARCHITECTURE 19

Computer technology progress (2)

• Generalization of high-level language programming
reduced the need for object-code compatibility.

• Creation of standardized, vendor-independent operating
systems, lowered the cost and risk of bringing out a new
architecture.

• These changes made it possible to successfully develop a
new set of architectures, called RISC (Reduced
Instruction Set Computer) architectures, in the early 1980s.

– The RISC-based machines focused the attention of designers on two
critical performance techniques, the exploitation of instruction-level
parallelism (initially through pipelining and later through multiple
instruction issue) and the use of caches (initially in simple forms and later
using more sophisticated organizations and optimizations).

COMPUTER ARCHITECTURE 18

Computer system

• A computer system consists usually of a computer and its
peripherals.

• Computer organisation:

– CPU (datapath and control path)
– Main memory
– Input output system (link with external devices - peripherals)

• Computer peripherals include

– Input devices (keyboard, mouse, secondary memories)
– Output devices (display, speakers, secondary memories, printer).

COMPUTER ARCHITECTURE 20

General organization of a uni-processor
computer

• Flux of the information controlled by CPU on two paths:

– control path - the brain of the processor. Control tells the datapath,
memory and I/O devices what to do according to the wishes of the
instructions of a program.

– datapath - the brawn of the processor. The datapath performs
transfers and arithmetic/logic operations

CPU Registers Computer
ALU
data
Instructions Main memory

Control Unit

address and command 21
COMPUTER ARCHITECTURE

von Neumann / Harvard Arch.

COMPUTER ARCHITECTURE 23

STRUCTURE

COMPUTER ARCHITECTURE 22

COMPUTER ARCHITECTURE

• Computer architecture

– Instruction Set Architecture
– Implementation

• Organization
• Hardware

COMPUTER ARCHITECTURE 24

Instruction Set Architecture

• Interface between the hardware and the lowest
level software.

• ISA includes anything programmers need to know
to make a binary machine language program work
correctly, including instructions, registers, I/O
devices, memory addressing and so on.

• ISA permits that two different machines (different
implementation, costs, and performance) to run
the same software if they have the same defined
ISA

COMPUTER ARCHITECTURE 25

The von Neumann Architecture
(defined in 1945)

The principles:

• Data and instructions are both stored in the main memory

– stored program concept

• The content of the memory is addressable by location (without regard
to what is stored in that location: data or code);

• Instructions are executed sequentially (from one instruction to the
next, in order of their location in memory) unless the order is explicitly
modified.

• The computer contains the following subsystems: input / output
system, memory, control unit, arithmetic/logic unit (ALU);

• von Neumann computers are general purpose computers.

• Computers based on von Neumann Architecture are sequential
computers.

COMPUTER ARCHITECTURE 27

Implementation

• Organization includes the high-level aspects of a
computer's design, such as the memory system, the bus
structure, the internal CPU design, etc. Two machines can
have the same ISA but different organizations

• Hardware is used to refer to the specifics of a machine.
This would include the detailed logic design,
semiconductor technology, and the packaging technology
of the machine

COMPUTER ARCHITECTURE 26

A structural representation of a GPC
(von Neumann Architecture)

Computer system - "stored program" concept

Input Input Main Output Output
devices system Memory system devices

ID 28

Control ALU &
Unit (CU) Registers

CPU
Computer

COMPUTER ARCHITECTURE

Central Processing Unit

• The primary function of a CPU is to execute the instructions fetched
from the main memory.

• An instruction tells the CPU to perform one of its basic operations (an
arithmetic or logic operation, to transfer a data from/to main memory,
etc.).

• The Control Unit (CU) is the one which interprets (decodes) the
instruction to be executed and which "tells" the different other
components what to do.

• The CPU includes a set of registers that are temporary storage devices
typically used to hold intensively used data and intermediate results.

• Each instruction is performed as a sequence of steps - instruction
cycle

COMPUTER ARCHITECTURE 29

Control unit

• Control unit (CU) is the “brain” of the processor

• CU control - synchronize all the elements inside the CPU
and the interface to the external datapath

Instruction Control Unit Control signals internal
Register to the CPU

Status and Control signals on
condition Flags the system bus

Signals from
the system bus

Clock 31
COMPUTER ARCHITECTURE

Instruction cycle view

A simple view of the A refined view of the
instruction cycle: instruction cycle:

Instruction Instruction
fetch fetch

Instruction Instruction
execute decode

Operand
fetch

To run a program, CPU have a cyclic Instruction
operation in executing every execute
instruction

COMPUTER ARCHITECTURE 30

Processing unit
(ALU & Registers)

• Arithmetic and logic unit (ALU) performs arithmetic or
logic operations with operands addressed by Control Unit

• Before processing, the operands are stored in a set of
general purpose registers used as temporary memory

• CPU registers are a local, high-speed memory

– The set of general purpose registers can be used, however, to store
addressing information to access data memory

• Depending on the result of operations carried out, ALU set
some (condition) flags in a special register, as feedback to
the CU.

COMPUTER ARCHITECTURE 32

MAIN (INTERNAL) 33
MEMORY

d bits
Adress 0
Adress 1

Adress k

Adress 2a-1-1
Adress 2a-1

COMPUTER ARCHITECTURE

Peripherals

• Input (peripheral) devices - receive information from
external world (through different sensors) and transform
the physical nature and representation format of
information ↔ compatible with voltage levels specific to
computer.

• Output device - inverse / opposite function to input
devices. Process data from computer and transform the
information in the format acceptable for the output device.

COMPUTER ARCHITECTURE 35

Input / Output system

• Input / Output system - addressable places (ports)
through the computer exchange information with
external world. The system comprise circuits for:

– change the format of data (serial / parallel)

– temporarily store data (latch)

– verify / check the correctness (validity) of data
transferred

– synchronization between peripheral and CPU because
of the large differences in the operation speed.

– decoding logic

COMPUTER ARCHITECTURE 34


Click to View FlipBook Version