0% found this document useful (0 votes)
22 views26 pages

Chapter1 2024 P

Uploaded by

Elias Derese
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)
22 views26 pages

Chapter1 2024 P

Uploaded by

Elias Derese
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/ 26

Outline

 Computer Architecture and Organization


 Computer Architecture - Classical View
 Computer Organization
 Computer Architecture - Modern View
 Evolution in the Computer System
 Evolution of Computers
 Von Neumann Model
 Programming in Hardware vs Programming in Software
 Fifth Generation Computers
 Reading Assignment
 Evolution of Intel and ARM Microprocessors

2
Computer Architecture - Classical View
 A term coined by IBM Engineers in the early 1960’s
 Used to refer to programmer visible portion of IBM 360 computer
 Quite a Novel Idea at that time --- though not NOW
 Family of computers having same architecture should be able to run the same software
 Their definition nowadays equivalent to Instruction Set Architecture (ISA)

 Instruction Set Architecture (ISA)


 Those attributes of a computer system that are visible to a low-level (machine)
language programmer, or
 Those attributes that have a direct impact on the logical execution of a program
 ISA attributes
 Instruction sets
 Data representation – number of bits used to represent various data types (e.g.
numbers, characters)
 Input/Output mechanisms
 Memory addressing techniques

Computer Architecture and Organization (CoEng4091) - Tinbit A. 3


Computer Architecture - Classical View
 Instruction Set Architecture (ISA) …
 Serves as a boundary between the software and hardware
 Provides a consistent interface to the software across hardware
generations
 Allowed manufacturers to innovate and fine-tune the hardware for performance
without worrying about breaking the existing software base
 Provides the mechanism by which the software tells the hardware what
should be done

 Studying computer architecture helps us to answer the question


 How do I design a computer?

Computer Architecture and Organization (CoEng4091) - Tinbit A. 4


Computer Architecture - Classical View
 Instruction Set Architecture (ISA) …
 Popular Instruction Set Architectures
 ISAs of 1970’s
 IBM 360/370, Intel 8086, Motorola 68000, DEC’s VAX
 Intel’s 8086 laid the foundation to the popular 80x86 architecture
 Recent General Purpose (RISC) ISAs used in desktop, server and PMD
 MIPS (MIPS64 R6) , Power ISA (Power v3.0), SPARC (SPARCv9), and
ARMv8
 Recent Embedded (RISC) ISAs used in embedded applications
 ARM Thumb2, RISC V compressed (RV64GC), microMIPS
(microMIPS64)
 Families of ARM processors are popular in PMD class of computers
(Personal Mobile Devices includes Tablets, Smartphones)

Computer Architecture and Organization (CoEng4091) - Tinbit A. 5


Computer Organization
 Also known as Microarchitecture
 Includes the high-level design aspects of a computer
 The structure of a particular hardware implementation of an ISA
 Refers to the operational units and their interconnections that realize the architectural
specifications
 Those hardware attributes that are transparent to the programmer

 Organizational Attributes
 Control signals, Interfaces between the computer and peripherals
 Device implementations technologies
 Memory technology
 The memory system, The memory interconnect
 Design of the internal (high-level) structure of the processor
 Pipelining, Superscalar, Number and type of Functional Units in the Processor

 Helps us to answer the question


 How does a computer work?

Computer Architecture and Organization (CoEng4091) - Tinbit A. 6


Computer Organization…
 Microarchitectures used in some of Intel’s Processors
P5:Used in the original Pentium P6:Used in Pentium Pro, II, III Pentium 4

Computer Architecture and Organization (CoEng4091) - Tinbit A. 7


Computer Organization…
 Microarchitecture of a “Simple Computer”

Computer Architecture and Organization (CoEng4091) - Tinbit A. 8


Computer Architecture - Modern View
 Implementation of a computer has two components
 High level design aspect --- Organization
 Detailed low level design aspect --- Hardware
 Refers to the specifics of a computer, including the detailed logic design, the electronic
technology employed and the packaging technology of the computer
 Encompasses the various physical design aspects of the computer

 Contemporary view of the term architecture covers all three aspects of computer
design
 Instruction set architecture, organization(microarchitecture), and hardware

 Computer Architecture - Modern View


 Designing the organization and hardware to meet functional requirements and goals
 Functional requirements
 Application area, Level of software compatibility, Operating system requirements, Standards
 Goals
 Price, power, performance, and availability goals

Computer Architecture and Organization (CoEng4091) - Tinbit A. 9


ISA vs Organization
Processors ISA Microarchitecture
Intel core i7 Have similar ISA; Have different organization;
vs Both implement Different pipeline and cache organization
AMD Opteron 80x86 ISA
Intel Pentium 4 Have similar ISA; Have different organization;
Vs Both implement Different pipeline and cache organization
AMD Opteron 64 80x86 ISA

Pentium 4 Have similar ISA; Have different organization;


vs Both implement Different pipeline and cache organization
Pentium III 80x86 ISA

Computer Architecture and Organization (CoEng4091) - Tinbit A. 10


ISA vs Organization vs Hardware
Processors ISA Microarchitecture Hardware/low level design
aspect
Intel core i7 vs Have similar ISA Have Similar Have different LLD;
Intel Xeon E2 Microarchitecture Have Different clock rates and memory
system;
Making Xeon E7 more effective for server
computer

Intel Pentium 4 Have similar ISA Have Similar Have different LLD;
Vs Microachitecture Have Different clock rates and memory
Mobile Pentium 4 system;
Making Mobile Pentium 4 more effective
for low end computers
Pentium II vs Have similar ISA Have Similar Have different LLD;
Celeron Microachitecture Have Different clock rates and memory
system;
Making Celeron more effective for low
end computers

Computer Architecture and Organization (CoEng4091) - Tinbit A. 11


Distinctions between
Computer Organization and Architecture
 People in the fields of computer science and computer engineering
hold differing opinions
 No clear cut as which concept exactly pertains to which one
 The terms has also evolved over time, as technology advances

 Bottom Line
 Neither computer organization nor computer architecture can stand
alone. They are interrelated and interdependent
 We can truly understand each of them only after we comprehend both
of them
 Our comprehension of computer organization and architecture
ultimately leads to a deeper understanding of computers and
computation

Computer Architecture and Organization (CoEng4091) - Tinbit A. 12


Evolution of Computers
 Categorized into Generation
 First Generation (1945-1955) --- Vacuum Tubes
 Vacuum Tube Machines – E.g. ENIAC, EDSAC, IAS, IBM 709
 Second Generation (1955-1965) --- Transistors
 Transistorized Machines – E.g. IBM 7094 & 1401, DEC’s PDP-1 & PDP-8
 Third Generation (1965-1980) --- Integrated Circuits (ICs)
 Mainframe computers – E.g. IBM System/360, IBM System/370
 Minicomputers – e.g. DEC’s PDP-11
 Forth Generation (1980- ?) --- Very Large Scale Integrated Circuits (VLSI)
 Microcomputer era – E.g. IBM PC, Apple Macintosh
 Fifth Generation --- ?
 --- ?
 --- ?

Computer Architecture and Organization (CoEng4091) - Tinbit A. 13


First Generation - ENIAC
 ENIAC (Electronic Numerical Integrator and
Calculator)
 The first fully operational electronic general
purpose computer ever built by human; 18,000
vacuum tubes, weighs 30 tons, 1500 relays,
140KW
 Had 20 registers (each capable of holding 10
digit decimal number)
 ENIAC was decimal/ not binary
 Each digit represented by 10 vacuum tubes
 Used punched cards to store a data
 Funded by US Army, during World War II,
become operational/disclosed in 1946
 Primarily to be used for computing artillery firing
tables, trajectories for new ballistic missiles
 Shortened the time from 20 hours to 30 seconds
 Finished late to be used for the war, used for
other tasks
 To analyze the feasibility of hydrogen bombs

Computer Architecture and Organization (CoEng4091) - Tinbit A. 14


First Generation - ENIAC…
 Programming ENIAC
 Programming was synonymous with connecting wires to plugs
 No layered architecture existed
 Programming a computer was as much of a feat of electrical
engineering
 Programming ENIAC done manually by
 Setting up 6000 multi-position switches
 Plugging up a multitude of sockets with jumper cables
 Reprogramming required from half hour to a whole day
 Data were provided on punched cards
 Input data was received from an IBM punch-card reader and the output of
computations was sent to a card punch machine
 The ENIAC was limited primarily by a small amount of storage and
tedious programming

Computer Architecture and Organization (CoEng4091) - Tinbit A. 15


Von Neumann Model
 While working on ENIAC, Principal Engineers/Designers of ENIAC (Eckert, Mauchly)
conceived of an easy way to change the behavior of their calculating machine, for
their next version machine, that would forever end the tedium of rewiring the
system each time it had a new problem to solve, or an old one to debug

 Noticed that the programming process could be facilitated if programs are stored as
numbers in the computer memory along with data
 Stored-Program Computer was born

 Another member of the group John Von Neumann (Hungary-German


Mathematician)
 Crystalized the ideas, wrote a memo proposing a stored-program computer called
EDVAC
 Von Neumann’s role in writing up the ideas, in generalizing them, and in thinking
about the programming aspects was critical in transferring the ideas to a wider
audience

Computer Architecture and Organization (CoEng4091) - Tinbit A. 16


Programming in Hardware vs Software
 Basic components of a Computer
 At the very basic level only two fundamental types of components
are required
 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 one bit of data
 By interconnecting large numbers of these fundamental devices, we
can construct a computer

Computer Architecture and Organization (CoEng4091) - Tinbit A. 17


Programming in Hardware vs Software…
 Programming in Hardware
 The process of connecting the various components in the desired
configuration (to perform a particular computation)
 A form of programming --- can be called Programming in Hardware
 The resulting “program” is in the form of hardware, called hardwired
program
 The customized hardware
 Constructed to perform a particular computation
 Accepts data and produces results

Computer Architecture and Organization (CoEng4091) - Tinbit A. 18


Programming in Hardware vs Software…
 Programming in Software
 Given a general-purpose configuration of arithmetic and logic functions
that will perform various functions/computations on data depending on
the control signals applied to it
 Instead of rewiring the hardware, the programmer needs to supply a
new set of control signals
 The control signals could be generated by part of the hardware that
interprets a code/instruction and generates corresponding control signals

 Programming is now much easier


 Instead of rewiring the hardware for each new computation/program,
all we need to do is provide a new sequence of codes
 The sequence of codes/instructions called Software and the process of
developing the sequence of instructions to perform particular
computation
 Called Programming/ Programming in Software
 Each code is, in effect, an instruction, and part of the hardware
interprets each instruction and generates control signals
 The system accepts data and control signals and produces results

Computer Architecture and Organization (CoEng4091) - Tinbit A. 19


Von Neumann Model - Stored Program Computer
 Features of Von Neumann Machines
 The clear portioning of the computing engine into the following
components
 ALU, Control Unit, Memory, Input/Output
 This architecture is known as the Von Neumann architecture

 The idea to keep a program in the memory and read instructions


from it, rather than hardwiring the program
 Sequential execution
 A concept that a single instruction should be fetched and executed
from a common memory – “a one thing at a time” approach
 With rare exceptions, all of today’s computer have this same
general structure and function and are referred to as
 Von Neumann machines

Computer Architecture and Organization (CoEng4091) - Tinbit A. 20


Von Neumann Model - Stored Program Computer…
 Original von Neumann machine diagram (left), modified
diagram (right)

Computer Architecture and Organization (CoEng4091) - Tinbit A. 21


Harvard Architecture
 Alternative a slightly modified architecture called Harvard
architecture
 Have separate path for data and instruction
 Stores instructions and data in different memories

Computer Architecture and Organization (CoEng4091) - Tinbit A. 22


Non Von Neumann Machines
 Machines that don’t have characteristics stated in von Neumann
Architecture - have different model of computation
 Non Von Neumann machines
 Machines showing non-Von Neumanness
 Many non–von Neumann machines are designed for special purposes
 Digital Signal Processors (DSPs) and Media Processors

 A number of different subfields fall into the non–von Neumann category,


including
 Neural networks, cellular automata, cognitive computers, quantum
computation (a combination of computing and quantum physics), dataflow
computation, and parallel computers
 These all have something in common - the computation is distributed
among different processing units that act in parallel

Computer Architecture and Organization (CoEng4091) - Tinbit A. 23


Fifth Generation
 What technology mark beginning of fifth generation ?
 Different Answers
 Low-Power and Invisible Computers
 Everywhere and embedded in everything - invisible
 Will be part of the framework of daily life
 More of a paradigm shift than a specific new architecture
 The acceptance of parallel processing and the use of networks and single-user
workstations ?
 Quantum computing ?
 Generation of Neural network
 DNA
 DNA Storage, DNA Computing
 Optical computing systems
 It’s possible that we won’t be able to define the fifth generation until we have
advanced into the sixth or seventh generations, and whatever those eras will
bring

Computer Architecture and Organization (CoEng4091) - Tinbit A. 24


Reading Assignment
 Evolution of Intel Microprocessors
 Evolution of ARM Microprocessors

Computer Architecture and Organization (CoEng4091) - Tinbit A. 25


End of Chapter 1

Computer Architecture and Organization (CoEng4091) - Tinbit A. 26

You might also like