0% found this document useful (0 votes)
6 views41 pages

Computer Architecture Overview and Evolution

The document provides an overview of computer architecture and organization, detailing the evolution from vacuum tubes to integrated circuits and modern multicore systems. It explains the distinction between computer architecture (what a computer can do) and organization (how it does it), along with the hierarchical structure of computer components. Key topics include instruction set architecture, memory hierarchy, and the historical development of computing technology.

Uploaded by

refsen00
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)
6 views41 pages

Computer Architecture Overview and Evolution

The document provides an overview of computer architecture and organization, detailing the evolution from vacuum tubes to integrated circuits and modern multicore systems. It explains the distinction between computer architecture (what a computer can do) and organization (how it does it), along with the hierarchical structure of computer components. Key topics include instruction set architecture, memory hierarchy, and the historical development of computing technology.

Uploaded by

refsen00
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

CSE309 - Computer Architecture and

Organization

Basic Consepts and Evolution


Topics

• Organization and architecture • Embedded systems


• Structure and function • The Internet of things
• Brief history of computers • Embedded operating
• The First Generation: Vacuum tubes systems
• The Second Generation: Transistors • Application processors
versus dedicated processors
• The Third Generation: Integrated • Microprocessors versus
Circuits microcontrollers
• Later generations • Embedded versus deeply
embedded systems
• The evolution of the Intel x86
architecture • ARM architecture
• ARM evolution
• Cloud computing • Instruction set architecture
• Basic concepts • ARM products
• Cloud services
Organization and Architecture

Computer architecture Computer organization

The parts that are visible to programmer The details at the level of hardware

Consists of; Consists of;


• Instruction Set Architecture (ISA) • Buses, control unit, ALU (Arithmetic Logic
• Data types and sizes Unit)
• Addressing modes • Memory hierarchy (caches, RAM, disk
• Register set access)
• Memory architecture (e.g., Von • Pipeline structure
Neumann or Harvard) • Parallel processing, control signals
• I/O systems • How the actual hardware is implemented
What can this computer do? How does this computer take the commands?
What commands does it understand? How this commands run physically?
Example

The task is adding → ADD


The registers are R1, R2 and R3
The job is R1 = R2 + R3

Architecture (What to do?) Organization (How to do?)


1. ADD, R1, R2, R3 Instruction is fetched from RAM
2. R2 + R3 is calculated ALU performs the addition
3. Result is written to R1 Control signal initiates write to R1 register
Stucture and Function

Computers have hierarchical system

The operation of each individual The way in which the components


component as part of the structure. are interrelated.
Function Structure
Running programs CPU, ALU, control unit, registers
Storing data RAM, hard disk, cache, addressing unit
Receiving input Keyboard, mouse, USB controller
Producing output Monitor, printer, sound card
Performing I/O operations I/O controllers, data buses
Stucture and Function - Structure
A simple single-processor computer (Fig 1.1)

• CPU – the brain of the computer


• Main memory – stores data
• I/O – moves data between computer and external
enviroment
• System bus – communication mechanism
between the CPU, I/O and main memory
Stucture and Function - Structure

A simple single-processor computer

• Control unit – Controls the operation of the CPU and


hence the computer.
• Arithmetic and logic unit (ALU) – Performs the
computer’s data processing functions.
• Registers – Provides storage internal to the CPU.
• Internal bus – (= CPU interconnection) Some
mechanism that provides for communication among
the control unit, ALU, and registers.
In summary;
• The CPU is the command execution center of the computer.
• It performs operations, moves data, makes decisions, and
controls processes.
• Every line of code you write is ultimately processed step by
step by the CPU.

4 main tasks; • Fetch


• Decode
• Execute
• Store
Stucture and Function – Multicore computer structure

single processor in a single computer → multiple processors in a single computer

When these processors are located on a single


chip, the term multicore computer is used

And here, each processing unit is called a core.

consisting of a control unit, ALU, registers, and perhaps cache


Multicore Computer Structure (Fig 1.2) Cache memory

= multiple layers of memory


between the processor and main memory

It is smaller and faster than main memory

It is used to speed up memory access by placing in


the cache data from main memory

A greater performance by using multiple levels of cache

L1 (level1) is the closest to the core


L2 and L3 are progressively farther from the core
A real life example Intel 3420 chipset is an I/O
controller for direct memory
Motherboard with two Intel Quad-Core Xeon processor chips (Fig 1.3)
access operations between
Interfaces for DDR (double data peripheral devices and main
rate) main memory chips memory

Serial ATA (SATA) sockets for


connection to disk memory

USB sockets for


peripheral
devices

Ethernet controller and


PCI-Express slots for a high-end display Ethernet ports for network
adapter and for additional peripherals connections.
A processor chip for the IBM zEnterprise EC12 (zEC12) mainframe computer

We see that this chip has six cores, or processors.

SC → storage control → handles cache


management and maintains coherence

MC → memory controller → controls access


to memory external to the chip

GX → Global/Group eXchange → controls the


interface to the channel adapters accessing
the I/O (i.e. chip-to-chip communication,
cache coherency)

zEnterprise EC12 Processor Unit (PU) Chip Diagram (Fig 1.4)


A processor chip for the IBM zEnterprise EC12 (zEC12) mainframe computer

ISU (instruction sequence unit)


IFU (instruction fetch unit)
IDU (instruction decode unit)
LSU ( load-store unit)
XU (translation unit)
FXU ( fixed-point unit)
BFU (binary floating-point unit)
DFU (decimal floating-point unit)
RU (recovery unit)
COP (dedicated co-processor)
I-cache
L2 control
Data-L2
zEnterprise EC12 Core Layout (Fig 1.5) Instr-L2
A Brief History of Computer

• First generation Vacuum tubes

• Second generation Transistors

• Third generation Integrated circuits

• Later generations
A Brief History – The first generation
The First Generation: Vacuum Tubes
Vacuum tubes were used for digital logic elements and memory
Vacuum tubes contain electrodes for controlling electron flow and
were used in early computers as a switch or an amplifier.

ENIAC - EDVAC - IAS Computer


IAS Computer (von Neumann machines):
• known as the stored-program concept
• Prototype of all subsequent general-purpose computers
• The first publication of the idea was in a 1945 proposal by
von Neumann for a new
• computer, the EDVAC (Electronic Discrete Variable
Computer).
• Design began in the Institute for Advanced Studies (IAS,
Princeton) in 1946
• Completed in 1952
Central processing unit (CPU)
central arithmetical part of the device
Arithmetic-logic unit (CA)

AC MQ

Input-
Arithmetic-logic output
circuits
equipment
(I, O)

MBR
R: outside recording medium of the device

Instructions
Informtaion transfer
and data from R to specific parts
Instructions
C and M
and data
M(0)
M(1)
M(2)
M(3) PC IBR
M(4) AC: Accumulator register
MQ: multiply-quotient register
MBR: memory buffer register
IBR: instruction buffer register
MAR IR PC: program counter
MAR: memory address register
Main
IR: insruction register
memory
(M)
Control
Control
Memory signals
circuits
M(4092)
M(4093)
M(4095)
Program control unit (CC) central control
Addresses

Structure of IAS Computer (Fig 1.6)


Figure 1.6 IAS Structure
4096 storage locations (words)

0 1 39

+5 → 0 0000000000000000000000000000000000000101
-5 → 1 0000000000000000000000000000000000000101

sign bit (a) Number word

left instruction (20 bits) right instruction (20 bits)

0 8 20 28 39

opcode (8 bits) address (12 bits) opcode (8 bits) address (12 bits)

(b) Instruction word


Also enables to store two
instructions in a word.
Figure 1.7 IAS Memory Formats
IAS Memory Formats (Fig. 1.7)
Symbolic
I nstruction 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
00100001 STOR M(X) Transfer contents of accumulator to memory
Data transfer location X
The IAS Instruction Set (Table 1.1) 00000001 LOAD M(X) Transfer M(X) to the accumulator
00000010 LOAD –M(X) Transfer –M(X) to the accumulator
00000011 LOAD |M(X)| Transfer absolute value of M(X) to the
accumulator
00000100 LOAD –|M(X)| Transfer –|M(X)| to the accumulator
0 1 39 Unconditional 00001101 JUMP M(X,0:19) Take next instruction from left half of M(X)
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)
(a) Number word 0 JU If number in the
sign bit
0 MP accumulator is nonnegative,
Conditional branch 0 + take next instruction from
1 M(X right half of M(X)
left instruction (20 bits) right instruction (20 bits) 0 ,20:
0 39)
0
0 8 20 28 39 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
opcode (8 bits) address (12 bits) opcode (8 bits) address (12 bits)
00001000 SUB |M(X)| Subtract |M(X)| from AC; put the remainder
in AC
(b) Instruction word 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
Figure 1.7 IAS Memory Formats 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
A Brief History – The second generation
The Second Generation: Transistors

• Smaller
• Cheaper
• generates less heat than a vacuum tube
• The use of the transistor defines the second generation of
computers
• more complex arithmetic and logic units and control units,
• the use of high-level programming languages
• and the provision of system software
✓ Load programs
✓ Move data to peripherals
✓ Libraries perform common computations
A data channel is an independent I/O
module with its own processor and
instruction set.

In a scenario of I/O transfer


1. CPU send signal to data channel to execute the instruction
which are in the memory
2. Data channel performs the task indedepently of the CPU
3. When the task finished, data channel sends signal to CPU

So,

the CPU can focus on other tasks without dealing


with I/O operations.

An IBM 7094 Configuration (Fig 1.9)


The multiplexor is the central
termination point for data
channels, the CPU, and memory.

When the CPU and data channel


want to access to the memory, the
multiplexor schedules this access
to the memory.

An IBM 7094 Configuration (Fig 1.9)


A Brief History – The third generation
The Third Generation: Integrated Circuits
The self-contained transistors are developed → called
discreate component
refers to an integrated or packaged unit
a small single structure that combines a transistor + necessary
components (such as resistors, etc.)

These types of transistors are more compact, require less assembly,


and can perform a specific function entirely on their own.

This concept is considered a precursor to integrated circuits.


Integrated circuits (IC) are used in the third generation of computers.

Meaning that many transistors and other components are combined on a single chip.
Integrated circuits → started microelectronics the reduction in size of digital electronic circuits

Two fundamental components of a computer. By interconnecting large


numbers of these fundamental devices, we can construct a computer.
Data storage, movement, processing, and
control functions must be carried out by a
computer. Boolean Binary
Input logic Output Input storage Output
function cell
These are done by gate and memory cell.

Read

Activate Write
signal
Component Function Example
(a) Gate (b) Memory cell
Processing data Addition,
Gate Fundamental Computer Elements (Fig 1.10)
(arithmetic/logic) comparison
Figure 1.10 Fundamental Computer Elements
Memory Storing data (at the RAM, register,
Cell bit level) cache cell

controls data flow stores 1 bit of data


• 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.

Structure of wafer, chip and gate (Fig 1.11)


Moore’s law
propounded by Gordon Moore, cofounder of
Intel, in 1965

1. The cost of computer logic and memory circuitry has fallen at a dramatic rate.

2. The electrical path length is shortened, increasing operating speed.

3. The computer becomes smaller, making it more convenient to place in a variety of


environments.

4. There is a reduction in power and cooling requirements.

5. With more circuitry on each chip, there are fewer interchip connections.
PDP-8

central-switched architecture

PDP-8 Bus Structure (Fig 1.13)


An IBM Configuration (Fig 1.9)
PDP-8 used a structure that became virtually universal for microcomputers: the bus structure.
• There are 96 separate signal paths.
• These paths carry control, address, and data signals.
• All components use the same bus, so their use can be controlled by the CPU.
A Brief History – Later generations

Table 1.2
Approximate Typical Speed
Generation Dates Technology (operations per second)
1 1946–1957 Vacuum tube 40,000 The first generation
2 1957–1964 Transistor 200,000 The second generation
3 1965–1971 Small and medium scale 1,000,000 The third generation
integration
4 1972–1977 Large scale integration 10,000,000
5 1978–1991 Very large scale integration 100,000,000 Later generations
6 1991- Ultra large scale integration >1,000,000,000

Large-scale integration (LSI) more than 1,000 components can be placed on a single integrated circuit chip.
Very-large-scale integration (VLSI) achieved more than 10,000 components per chip.
Ultra-large-scale integration (ULSI) chips can contain more than one billion components.

Important developments have been occured in the memory and processors.


Semiconductor memory

Smaller and faster machines


with larger memory sizes.

Magnetic-core memory Semiconductor memory


• Fast • Faster,
• But expensive, bulky and • Smaller
destructive readout • No destructive readout
• Cheaper
Microprocessors

• The density of elements on processor chips continued to Microprocessors


rise
• More and more elements were placed on each chip so that All components of the CPU housed on a single chip
fewer and fewer chips were needed to construct a single
computer processor
What's Inside a Microprocessor?
• 1971 Intel developed 4004 • ALU (Arithmetic Logic Unit) → Performs arithmetic
• First chip to contain all of the components of a CPU on a and logical operations.
single chip • Control Unit → Interprets instructions and directs
• Birth of microprocessor other components.
• Registers → Temporary storage areas for data.
• 1972 Intel developed 8008
• Data and Address Buses → Provide communication
• First 8-bit microprocessor with memory and other units.
• 1974 Intel developed 8080
• First general-purpose microprocessor
• Faster, has a richer instruction set, has a large addressing
capability
Two important computer architectures

Intel x86 ARM

Processor desing: complex instruction set com- Processor desing: reduced instruction set
puters (CISCs) computer (RISC)

mainframes , servers, game-computers embedded systems


Intel Product Line

Intel has ranked as the number one maker of microprocessors


for non-embedded systems for decades.

Today, most desktop and laptop computers are still based on


this architecture.

In addition to Intel, companies like AMD and VIA also produce


x86-compatible processors.

[Link]
x86 ARM
Feature CISC RISC
Number of Instructions Very high (100+ instructions) Low (30–50 instructions)
Instruction Length Variable Fixed
Performance Can be slower Faster, pipeline-friendly
Power Consumption Can be high Low (suitable for mobile devices)
Complexity Complex hardware Simple hardware
Usage Areas PCs, servers Mobile, embedded, IoT
Embedded Systems
Camera

An embedded system is a special-purpose computer system designed to perform a Smart TV


specific task or a limited set of tasks.

It is often as part of a larger system.

ATMs
• Dedicated function: Unlike general-purpose computers, embedded systems usually perform Airbag control unit
one specific task.
• Real-time capability: Can be designed to meet strict timing requirements (e.g., car braking
systems).
• Compact and efficient: Small in size and consumes low power.
• Hardware-software integration: Typically contains a microcontroller (MCU) or microprocessor
(CPU).
Blood pressure monitors

Inductrial rbotic arms


Sense, manipulate and communicate

Custom
logic

Processor Memory

The unit which the system


interacts with the user.
Human Diagnostic The diagnostic port is used for diagnosing
interface port the system and the computer.

A/D D/A
conversion Conversion

Actuators/
Sensors
indicators

Possible Organization of an Embedded System (Fig 1.14)


Internet of Things (IoT)

Internet of Things (IoT) is a technology concept that enables physical devices to connect to
the internet and exchange data with each other and with systems.

IoT is a network of devices equipped with internet-connected sensors, software, and other technologies.

The goal create smarter, more automated, and efficient systems.

• Information technology (IT) → such as PCs, servers, routers, firewalls


• Operational technology (OT) → such as medical machinery, SCADA, process control,
and kiosks
• Personal technology → such as smartphones, tablets, and eBook
• Sensor/actuator technology → generally of a single form, as part of larger systems
Some important terminologies

Application Processors versus Dedicated Processors

• used for special-purpose


• used for general-purpose
• i.e. processor in heartbeat measurement device
• i.e. pocessors in smartphones
• The embedded system is designed to dedicated to one
• The embedded system is designed to support numerous
or a small number of specific tasks required by the host
apps and perform a wide variety of functions.
device

Microprocessors versus Microcontrollers

all CPU elements on a single chip CPU, RAM, ROM, I/O units, and a clock on a single chip

Embedded Systems versus Deeply Embedded Systems

• user interaction and program modifiability are possible • user interaction and program modifiability are usually not
• power consumption is important but not critical done
• i.e. smartwatch, printer, TV • power consumption is important and critical, must be low
• i.e. Pacemaker, airbag control unit
ARM architecture

ARM is a family of RISC-based microprocessors and


microcontrollers designed by ARM Holdings,
Cambridge, England.

i.e. Cortex-A53, Cortex-M4


ARM chips are high-speed processors Two types of ARM licences;
• Processor licence
Small in size the customer buys the rights to use ARM-supplied design in
Low power requirements their own chips
• Processor architecture licence
the customer buys the rights to design their own processor
compliant with ARM’s architecture.

i.e. ARMv8, ARMv9


EFM32 microcontroller from Silicon Labs (Fig 1.16)

a typical microcontroller built with the Cortex-M3

ARM-supplied processor design


Cloud computing

Cloud computing is a technology that provides access to computer and technology resources over
the internet.

Company Computer / Office Cloud Data Center

Server in the Physical servers


Office (local)

Without internet, you can Accesses resources internet.


only use this much power. It is easy to scale and manage.

Instead of purchasing, setting up and you can rent and use the resources located in large
managing your own physical hardware and secure data centers that are accessible via the
such as servers, storage, software, or internet
networking infrastructure
A cloud service provider (CSP) maintains computing
and data storage resources that are available over the
Internet or private networks.

Three cloud service models:

• SaaS → i.e. Gmail, dropbox, Google docs

• PaaS → i.e. Google App Engine, Heroku

• IaaS → i.e. Amazon EC2 (AWS), Microsoft Azure

Virtual Machines, Google Compute Engine

Alternative cloud service model applications (Fig 1.17)


Read chapter 1

Computer Organization and Architecture,


Designing for Performance, by William Stallings,
10th Global Edition, Pearson, 2016

You might also like