0% found this document useful (0 votes)
37 views59 pages

Chapter 1

معمارية حاسوب

Uploaded by

nosybaahmed2
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views59 pages

Chapter 1

معمارية حاسوب

Uploaded by

nosybaahmed2
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 59

Manal Abdulelah Areqi

[email protected]
Why are we studying this course?

Programmer’s view of a
computer system

What happens in-between?


How is a computer designed using
logic gates and wires to satisfy
specific goals?

HW designer’s view of a
computer system
Digital logic as a model of
computation
Why are we studying this course?

Problem
Algorithm
SW
Program Language
Runtime System (OS)
Architecture
Organization
Logic
Circuits
Electronics
Designing Computers

All computers are more or less based on the same


basic design, the Von Neumann Architecture!
What is a Computer?
• Three key components
• Computation
• Communication
• Storage (memory)

5
Von-Neumann Computer Architecture

Model for designing and building computers, based


on the following three characteristics:
1. The computer consists of four main sub-systems:
❖Memory
❖ALU (Arithmetic/Logic Unit)
❖Control Unit
❖Input/Output System (I/O)
2. Program is stored in memory during execution.
3. Program instructions are executed sequentially.
Von-Neumann Computer Architecture) 1945(
Von-Neumann Computer Architecture
Computer Architecture
Computer Organization
• Attributes of a • Instruction set,
system visible to the number of bits used
programmer to represent various
• Have a direct impact data types, I/O
on the logical mechanisms,
execution of a techniques for
program addressing memory
Architectural
Computer
attributes
Architecture
include:

Organizational
Computer
attributes
Organization
include:
• Hardware details • The operational units
transparent to the and their
programmer, control
signals, interfaces
interconnections that
between the computer realize the
and peripherals, memory architectural
technology used specifications
Key Computer Architecture Computer Organization

Computer architecture explains Computer organization explains how a


Purpose
what a computer should do. computer works.
Computer architecture provides Computer organization provides structural
Target functional behavior of computer relationships between parts of computer
system. system.
It acts as the interface between It deals with the components of a
hardware and software. connection in a system.
Architecture involves Logic Organization involves Physical
Design
(Instruction sets, Addressing Components (Circuit design, Adders,
modes, Data types, Cache Signals, Peripherals)
optimization)
Actors in Computer architecture Actor in computer organization is
Actors
are hardware parts. performance.
Computer architecture is Computer organization is started after
designed first. finalizing computer architecture.
Order
Hierarchy of Computer Architecture
High-Level Language Programs

Application Assembly Language


Software Programs
Operating System

Compiler Firmware Instruction Set


Software/Hardware Architecture
Machine Language Program
Boundary Instr. Set Proc. I/O system

Datapath & Control


Hardware Digital Design
Circuit Design Microprogram
Layout

Logic Diagrams

Circuit Diagrams
What is Computer Organization?

Electronic Desired
Devices Behavior

The intended behavior and the workings of


the underlying electronic devices that will
actually do all the work to achieve this
behavior.
Role of General Purpose Computers

Computer
software
organization

General
Electronic Desired
Purpose
Devices Behavior
Computer
Structure and Function
• A computer is a complex system; contemporary computers
contain millions of Elementary electronic components.
• The hierarchical nature of complex systems is essential to
both their design and their description.
• A hierarchical system is a set of interrelated subsystems, each
of the latter, in turn, is hierarchical in structure until we reach
the lowest level of the elementary subsystem.

Structure: The way in which the components are interrelated.


Function: The operation of each individual component as
part of the structure.
Function
Function
There are four basic functions that a computer can
perform:
• Data processing
• Data may take a wide variety of forms and the range of processing requirements
is broad.
• Data storage
• Short-term
• Long-term
• Data movement
• Input-output (I/O) - when data are received from or delivered to a device
(peripheral) that is directly connected to the computer
• Data communications – when data are moved over longer distances, to or from a
remote device
• Control
• A control unit manages the computer’s resources and orchestrates the
performance of its functional parts in response to instructions
The
Computer:
Top- Level
Structure
I/O: moves data between the computer
and its external environment

Main memory: stores data


I/O Main
memory
System System
Bus Interconnection:
some mechanism that
provides for
CPU communication among
CPU, main memory,
and I/O
Central processing unit (CPU):
controls the operation of the computer
and performs its data processing
functions
Major structural components (CPU)
Arithmetic and Logic Unit
Registers: Provide storage (ALU): Performs the
internal to the CPU computer’s data processing
function
Registers
ALU

Internal
CPU Interconnection:
Bus
Some mechanism that
provides for
Control
Unit communication among the
control unit, ALU, and
registers
Control Unit: Controls the
operation of the CPU and hence
the computer
Multicore Computer Structure

• Central processing unit (CPU)


• Portion of the computer that fetches and executes instructions
• Consists of an ALU, a control unit, and registers
• Referred to as a processor in a system with a single processing unit
• Core
• An individual processing unit on a processor chip
• May be equivalent in functionality to a CPU on a single-CPU system
• Specialized processing units are also referred to as cores
• Processor
• A physical piece of silicon containing one or more cores
• Is the computer component that interprets and executes instructions
• Referred to as a multicore processor if it contains multiple cores
Multicore Computer Structure
Multicore Computer Structure
Cache Memory

• Multiple layers of memory between the processor


and main memory
• Is smaller and faster than main memory
• Used to speed up memory access by placing in the
cache data from main memory that is likely to be
used in the near future
• A greater performance improvement may be
obtained by using multiple levels of cache, with
level 1 (L1) closest to the core and additional levels
(L2, L3, etc.) progressively farther from the core
Computer Evolution
Computer Evolution

•Brief history of computers


•The First Generation: Vacuum tubes
•The Second Generation: Transistors
•The Third Generation: Integrated Circuits
•Later generations
•Embedded Systems
•The Internet of Things (IoT)
•Cloud Computing
Technology Advance
•Prehistory: Generations
•1st Tubes
•2nd Transistors
•3rd Integrated Circuits
•4th VLSI….
•5th Nanotubes? Optical? Quantum?
•Discrete advances in each generation
•Faster, smaller, more reliable, easier to
utilize
Computer Generations
Approximate Typical Speed
Generation Dates Technology (operations per second)
1 1946–1957 Vacuum tube 40,000
2 1957–1964 Transistor 200,000
3 1965–1971 Small and medium scale 1,000,000
integration
4 1972–1977 Large scale integration 10,000,000
5 1978–1991 Very large scale integration 100,000,000
6 1991- Ultra large scale integration >1,000,000,000
History of Computers
First Generation: Vacuum Tubes
• Vacuum tubes were used for digital logic
elements and memory
• IAS computer
• Fundamental design approach was the stored program
concept
• Attributed to the mathematician John von Neumann
• First publication of the idea was in 1945 for the EDVAC

• Design began at the Princeton Institute for Advanced


Studies
• Completed in 1952
• Prototype of all subsequent general-purpose computers
IAS Structure
•A main memory, which stores both data and
instructions.
•An arithmetic and logic unit (ALU) capable
of operating on binary data.
•A control unit, which interprets the
instructions in memory and causes them to be
executed
•Input–output (I/O) equipment operated by
the control unit
IAS
Structure
IAS Memory Formats
IAS Memory Formats
• The memory of the IAS consists of 4,096 storage
locations, called words, of 40 binary digits (bits) each.
• Both data and instructions are stored there.
• Numbers are represented in binary form, and each
instruction is a binary code.

• Each number is represented by a sign bit and a 39-bit


value.
• A word may alternatively contain two 20-bit instructions,
with each instruction consisting of an 8-bit operation
code (opcode ) specifying the operation to be performed
and a 12-bit address designating one of the words in
memory.
Registers
• Contains a word to be stored in memory or sent to the
Memory buffer I/O unit
register (MBR) • Or is used to receive a word from memory or from the
I/O unit

Memory address • Specifies the address in memory of the word to be


register (MAR) written from or read into the MBR

Instruction register • Contains the 8-bit opcode instruction being


(IR) executed

Instruction buffer • Employed to temporarily hold the right-hand


register (IBR) instruction from a word in memory

Program counter • Contains the address of the next instruction pair to


(PC) be fetched from memory

Accumulator (AC)
• Employed to temporarily hold operands and results
and multiplier of ALU operations
quotient (MQ)
Symbolic
Instruction Type Opcode Representation Description
00001010 LOAD MQ Transfer contents of register MQ to the
accumulator AC
00001001 LOAD MQ,M(X) Transfer contents of memory location X to
MQ

Data transfer
00100001

00000001
STOR M(X)

LOAD M(X)
Transfer contents of accumulator to memory
location X
Transfer M(X) to the accumulator
The IAS
00000010
00000011
LOAD –M(X)
LOAD |M(X)|
Transfer –M(X) to the accumulator
Transfer absolute value of M(X) to the
Instruction
accumulator

Unconditional
00000100
00001101
LOAD –|M(X)|
JUMP M(X,0:19)
Transfer –|M(X)| to the accumulator
Take next instruction from left half of M(X)
Set
branch 00001110 JUMP M(X,20:39) Take next instruction from right half of M(X)
00001111 JUMP+ M(X,0:19) If number in the accumulator is nonnegative,
take next instruction from left half of M(X)
0 JU If number in the
0 MP accumulator is nonnegative,
Conditional branch 0 + take next instruction from
1 M(X right half of M(X)
0 ,20:
0 39)
0
0
00000101 ADD M(X) Add M(X) to AC; put the result in AC
00000111 ADD |M(X)| Add |M(X)| to AC; put the result in AC
00000110 SUB M(X) Subtract M(X) from AC; put the result in AC
00001000 SUB |M(X)| Subtract |M(X)| from AC; put the remainder
in AC
00001011 MUL M(X) Multiply M(X) by MQ; put most significant
bits of result in AC, put least significant bits
Arithmetic
in MQ
00001100 DIV M(X) Divide AC by M(X); put the quotient in MQ
and the remainder in AC
00010100 LSH Multiply accumulator by 2; i.e., shift left one
bit position
00010101 RSH Divide accumulator by 2; i.e., shift right one
position
00010010 STOR M(X,8:19) Replace left address field at M(X) by 12
rightmost bits of AC
Address modify
00010011 STOR M(X,28:39) Replace right address field at M(X) by 12
rightmost bits of AC
History of Computers
Second Generation: Transistors
• Smaller
• Cheaper
• Dissipates less heat than a vacuum tube
• Is a solid state device made from silicon
• Was invented at Bell Labs in 1947
• It was not until the late 1950’s that fully transistorized
computers were commercially available
Second Generation Computers

•Introduced:
• More complex arithmetic and logic units and
control units
• The use of high-level programming languages
• Provision of system software that provided the
ability to:
• Load programs
• Move data to peripherals
• Libraries perform common computations
Data channels 1952 to 1964
from differences
between the IAS
computer and
this generation.
• A data channel
is an
independent I/O
module with its
own processor
and instruction
set.
• The CPU
initiates an I/O
transfer by
sending a control
signal to the data
channel,
instructing it to
execute a
sequence of
instructions in
memory.
History of Computers
Third Generation: Integrated Circuits
•1958 – the invention of the integrated
circuit
•Discrete component
• Single, self-contained transistor.
• Manufactured separately, packaged in their own
containers, and soldered or wired together onto
masonite-like circuit boards.
• Manufacturing process was expensive and
cumbersome
Microelectronics

Elements of a digital computer:


•Gates and memory cells.
•A gate is a device that implements a simple
Boolean or logical function.
•The memory cell is a device that can store 1
bit of data.
•By interconnecting large numbers of these
fundamental devices, we can construct a
computer.
Fundamental Computer Elements
Boolean Binary
Input logic Output Input storage Output
function cell

Read

Activate Write
signal

Can relate this(a)to


Gate (b) Memory cell
our four basic functions as follows:
• Data storage – provided by memory cells
• Data processing
Figure 1.10–Fundamental
provided by Computer
gates Elements
• Data movement – the paths among components are used to move
data from memory to memory and from memory through gates to
memory
• Control – the paths among components can carry control signals
Integrated Circuits

•Exploits the fact that such components as


transistors, resistors, and conductors can be
fabricated from a semiconductor such as
silicon.
•Many transistors can be produced at the same
time on a single wafer of silicon.
•Transistors can be connected with a processor
metallization to form circuits.
Wafer

Chip

Gate

Packaged
chip

Figure 1.11 Relationship


Relationship among Among Wafer,
Wafer, Chip,Chip,
and and
GateGate
t
ui
g

ed of
rc
or in

ga w
d
st rk

ci

ul l a
at n

te
gr tio
si o

’s
an w

om e
te n

r
tr irst

in ve

p r oo
In

M
F

100 bn
10 bn
1 bn
100 m
10 m
100,000
10.000
1,000
100
10
1
1947 50 55 60 65 70 75 80 85 90 95 2000 05 11

Figure 1.12 Growth in Transistor Count on Integrated Circuits


(DRAM memory)
Moore’s Law
1965; Gordon Moore – co-founder of Intel

Observed number of transistors that could be


put on a single chip was doubling every year
The pace
slowed to a Consequences of Moore’s law:
doubling Computer
every 18 The cost of
The electrical becomes
computer
months in the path length is smaller and is Reduction in
logic and Fewer
shortened, more power and
1970’s but has memory
circuitry has
increasing convenient to cooling
interchip
connections
sustained that operating use in a requirements
fallen at a
speed variety of
rate ever dramatic rate
environments
since
History of Computers
Later Generations: Semiconductor Memory
Microprocessors
Large‐scale Very large‐scale Ultra Large
integration integration Scale
(LSI): (VLSI):Millions Integration
thousands of of gates on chip. (ULSI)
gates on
chip.
Microprocessors
• The density of elements on processor chips continued to
rise
• More and more elements were placed on each chip so that fewer
and fewer chips were needed to construct a single computer
processor
• 1971 Intel developed 4004
• First chip to contain all of the components of a CPU on a single
chip
• Birth of microprocessor
• 1972 Intel developed 8008
• First 8-bit microprocessor
• 1974 Intel developed 8080
• First general purpose microprocessor
• Faster, has a richer instruction set, has a large addressing capability
Evolution of Intel Microprocessors

4004 8008 8080 8086 8088


Introduced 1971 1972 1974 1978 1979
5 MHz, 8 MHz, 10
Clock speeds 108 kHz 108 kHz 2 MHz 5 MHz, 8 MHz
MHz
Bus width 4 bits 8 bits 8 bits 16 bits 8 bits
Number of
2,300 3,500 6,000 29,000 29,000
transistors
Feature size
10 8 6 3 6
(µm)
Addressable 640 Bytes 16 KB 64 KB 1 MB 1 MB
memory

(a) 1970s Processors


Evolution of Intel Microprocessors

80286 386TM DX 386TM SX 486TM DX


CPU
Introduced 1982 1985 1988 1989
Clock speeds 6 MHz - 12.5 16 MHz - 33 16 MHz - 33 25 MHz - 50
MHz MHz MHz MHz
Bus width 16 bits 32 bits 16 bits 32 bits
Number of transistors
134,000 275,000 275,000 1.2 million
Feature size (µm) 1.5 1 1 0.8 - 1
Addressable
16 MB 4 GB 16 MB 4 GB
memory
Virtual
1 GB 64 TB 64 TB 64 TB
memory
Cache — — — 8 kB

(b) 1980s Processors


Evolution of Intel Microprocessors

486TM SX Pentium Pentium Pro Pentium II


Introduced 1991 1993 1995 1997
Clock speeds 16 MHz - 33 60 MHz - 166 150 MHz - 200 200 MHz - 300
MHz MHz, MHz MHz
Bus width 32 bits 32 bits 64 bits 64 bits
Number of 1.185 million 3.1 million 5.5 million 7.5 million
transistors
Feature size (µm) 1 0.8 0.6 0.35
Addressable
4 GB 4 GB 64 GB 64 GB
memory
Virtual memory 64 TB 64 TB 64 TB 64 TB
512 kB L1 and 1
Cache 8 kB 8 kB 512 kB L2
MB L2

(c) 1990s Processors


Evolution of Intel Microprocessors
Core 2 Duo Core i7 EE
Pentium III Pentium 4
4960X
Introduced 1999 2000 2006 2013
Clock speeds 450 - 660 MHz 1.3 - 1.8 GHz 1.06 - 1.2 GHz 4 GHz
Bus
wid 64 bits 64 bits 64 bits 64 bits
th
Number of 9.5 million 42 million 167 million 1.86 billion
transistors
Feature size (nm) 250 180 65 22
Addressable
64 GB 64 GB 64 GB 64 GB
memory
Virtual memory 64 TB 64 TB 64 TB 64 TB
Cache 512 kB L2 256 kB L2 2 MB L2 1.5 MB L2/15
MB L3
Number of cores 1 1 2 6

(d) Recent Processors


Embedded Systems

• The term embedded system refers to the use of electronics and


software within a product, as opposed to a general-purpose
computer, such as a laptop or desktop system.
• The use of electronics and software within a product
• Billions of computer systems are produced each year that are
embedded within larger devices
• Today many devices that use electric power have an embedded
computing system
• Often embedded systems are tightly coupled to their
environment
Custom
logic

Processor Memory

Human Diagnostic
interface port

A/D D/A
conversion Conversion

Actuators/
Sensors
indicators

Figure Organization
1.14 Possible Organization of an Embedded
of an Embedded SystemSystem
Differences between general purpose computers
and embedded systems:
• An interactive system, there are a variety of interfaces that enable
the system to measure, manipulate, and otherwise interact with the
external environment. Embedded systems often interact (sense,
manipulate, and communicate) with external world through sensors
and actuators.
• The human interface may be as simple as a flashing light or as
complicated as real-time robotic vision. In many cases, there is no
human interface.
• The diagnostic port may be used for diagnosing the system that is
being controlled.
• Software often has a fixed function and is specific to the
application.
• Efficiency is of paramount importance for embedded systems. They
are optimized for energy, code size, execution time, weight and
dimensions, and cost.
• The ability to field upgrade to fix bugs, to improve security, and to
add functionality, has become very important for embedded system.
Application Processors
Embedded Operating versus
Systems Dedicated Processors
• There are two general • Application processors
• Defined by the processor’s ability to
approaches to execute complex operating systems.
developing an • General-purpose in nature
embedded operating • An example is a smartphone – the
embedded system is designed to
system (OS): support numerous apps and perform a
wide variety of functions
• Take an existing OS
and adapt it for the • Dedicated processor
embedded application • Is dedicated to one or a small number
of specific tasks required by the host
• Design and implement device
an OS intended solely • Because such an embedded system is
for embedded use dedicated to a specific task or tasks, the
processor and associated components
can be engineered to reduce size and
cost.
Microprocessors

Contemporary
microprocessor chips
include multiple cores
and a substantial
amount of cache
memory.
Microcontroller
“computer on a
chip “
a
microcontroller
is a single chip
that contains the
processor, non-
volatile memory
for the program
(ROM), volatile
memory for
input and output
(RAM), a clock,
and an I/O
control unit.
The Internet of Things (IoT)
• Term that refers to the expanding interconnection of smart
devices, ranging from appliances to tiny sensors.
• Is primarily driven by deeply embedded devices.
• Generations of deployment culminating in the IoT:
• Information technology (IT)
• PCs, servers, routers, firewalls, and so on, bought as IT devices by enterprise
IT people and primarily using wired connectivity
• Operational technology (OT)
• Machines/appliances with embedded IT built by non-IT companies, such as
medical machinery, SCADA, process control, and kiosks, bought as appliances
by enterprise OT people and primarily using wired connectivity
• Personal technology
• Smartphones, tablets, and eBook readers bought as IT devices by consumers
exclusively using wireless connectivity and often multiple forms of wireless
connectivity
• Sensor/actuator technology
• Single-purpose devices bought by consumers, IT, and OT people exclusively
using wireless connectivity, generally of a single form, as part of larger system
Cloud Computing

•Internet-based computing, whereby shared


resources, software, and information are
provided to computers and other devices on-
demand, like the electricity grid.
•Cloud computing is a culmination of
numerous attempts at large-scale computing
with seamless access to virtually limitless
resources.
Alternative Information Technology Architectures

You might also like