0% found this document useful (0 votes)
2 views

Module 1A [19-10-2024]

The document outlines the course 'Computer Organization & Architecture (CSE 214)' for Spring 2025, taught by Dr. Md. Tarek Habib. It covers fundamental concepts of computer architecture, including its evolution, organization, and the distinction between architecture and organization. Key topics include the history of computers, the structure of the IAS computer, and the five classic components of a computer.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Module 1A [19-10-2024]

The document outlines the course 'Computer Organization & Architecture (CSE 214)' for Spring 2025, taught by Dr. Md. Tarek Habib. It covers fundamental concepts of computer architecture, including its evolution, organization, and the distinction between architecture and organization. Key topics include the history of computers, the structure of the IAS computer, and the five classic components of a computer.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 62

Spring 2025

Computer Organization &


Architecture (CSE 214)

Topic – 1A: Basic Concepts and


Computer Evolution
Course Teacher:
+
Dr. Md. Tarek Habib
Assistant Professor
Department of Computer Science and
Engineering
Reference Book

• “Computer Organization and Architecture


– Design for Performance,” W. Stallings,
10th Edt., Prentice Hall.

☞ Chapter 1
+
+ Topic Contents
• Organization and Architecture [Sec. – 1.1]

• Structure and Function [Sec. – 1.2]

• A Brief History of Computers [Sec. – 1.3]

• The Evolution of the Intel x86 Architecture

[Sec. – 1.4]

• Embedded Systems [Sec. – 1.5]


+
Computer Architecture
■ is the science and art of designing computing platforms (hardware,
interface, system SW, and programming model)

■ to achieve a set of design goals


■ E.g., highest performance on earth on workloads X, Y, Z
■ E.g., longest battery life at a form factor that fits in your pocket with cost <
$$$ CHF
■ E.g., best average performance across all known workloads at the best
performance/cost ratio
■ …

■ Designing a supercomputer is different from designing a smartphone 🡪 But,


many fundamental principles are similar

4
+
Different Platforms, Different Goals

Source: http://www.sia-online.org (semiconductor industry association) 5


+
Different Platforms, Different Goals

Source: https://iq.intel.com/5-awesome-uses-for-drone-technology/ 6
+
Different Platforms, Different Goals

Source: http://sm.pcmag.com/pcmag_uk/photo/g/google-self-driving-car-the-guts/google-self-driving-car-the-guts_dwx8.jpg 7
+
Different Platforms, Different Goals

Source: https://fossbytes.com/wp-content/uploads/2015/06/Supercomputer-TIANHE2-china.jpg 8
+
What is Computer Architecture?

■ The science and art of designing, selecting, and


interconnecting hardware components and
designing the hardware/software interface to
create a computing system that meets functional,
performance, energy consumption, cost, and other
specific goals.

9
Why Study Computer
+
Architecture?
■ Enable better systems: make computers faster, cheaper, smaller, more
reliable, …
■ By exploiting advances and changes in underlying technology/circuits

■ Enable new applications


■ Life-like 3D visualization 20 years ago? Virtual reality?
■ Self-driving cars?
■ Personalized genomics? Personalized medicine?

■ Enable better solutions to problems


■ Software innovation is built on trends and changes in computer architecture
■ > 50% performance improvement per year has enabled this innovation

■ Understand why computers work the way they do

10
+
The Transformation Hierarchy

Problem
Algorithm
Program/Languag
e
System Software
Computer Architecture SW/HW Interface Computer Architecture
(expanded view) (narrow view)
Micro-architecture
Logic
Devices
Electrons

11
+
The Transformation Hierarchy…

Problem
Algorithm
Program/Languag User
e

Runtime System
(VM, OS, MM)
ISA
Microarchitecture
Logic
Circuits
Electrons

12
Computer Architecture
Computer Organization

■ In describing computers, a distinction is often


made between computer architecture and
computer organization.
■ Although it is difficult to give precise definitions
for these terms, a consensus exists about the
general areas covered by each.

13
Computer Architecture
Computer Organization
■ Computer architecture refers to those attributes of a
system visible to a programmer or, put another way, those
attributes that have a direct impact on the logical
execution of a program.

■ A term that is often used interchangeably with computer


architecture is instruction set architecture (ISA).
■ An ISA is a protocol that defines how a computing
machine appears to a machine language programmer or
compiler.

■ It defines instruction formats, instruction opcodes,


registers, instruction and data memory; the effect of
executed instructions on the registers and memory; and14
Computer Architecture
Computer Organization
■ Computer organization refers to the operational
units and their interconnections that realize the
architectural specifications.
■ Examples of architectural attributes include the
instruction set, the number of bits used to represent
various data types (e.g., numbers, characters), I/O
mechanisms, and techniques for addressing memory.
■ Organizational attributes include those hardware
details transparent to the programmer, such as control
signals; interfaces between the computer and
peripherals; and the memory technology used.
15
Computer Architecture
Computer Organization
■ For example, it is an architectural design issue
whether a computer will have a multiply instruction.
■ It is an organizational issue whether that instruction
will be implemented by a special multiply unit or by a
mechanism that makes repeated use of the add unit of
the system.
■ The organizational decision may be based on the
anticipated frequency of use of the multiply
instruction, the relative speed of the two approaches,
and the cost and physical size of a special multiply
unit.
16
Computer Architecture
Computer Organization
•Attributes of a system visible •Instruction set, number of
to the programmer bits used to represent various
•Have a direct impact on the data types, I/O mechanisms,
logical execution of a techniques for addressing
program memory

Architectural
Computer
attributes
Architecture
include:

Organizational
Computer
attributes
Organization
include:

•Hardware details transparent •The operational units and


to the programmer, control their interconnections that
signals, interfaces between realize the architectural
the computer and peripherals, specifications
memory technology used

17
+
The Five Classic Components of a
Computer
■ Input (mouse, keyboard, …)
■ Output (display, printer, …) Input
■ Memory
■ main (DRAM), cache (SRAM)
■ secondary (disk, Outpu
CD, DVD, …) t
Processor
■ Datapath
Processor
Control
■ Control (CPU) Memory
10010100101100
00101001010100
00
01
11110111011001
10
10010100101100
00
10010100101100
Datapath 00
10010100101100
00
+
The Five Classic Components of a
Computer
+ History of Computers
First Generation: Vacuum Tubes

■ Vacuum tubes were used for digital logic elements and memory

■ A vacuum tube, also called a valve in British English, is an


electronic device used in many older model radios, television sets,
and amplifiers to control electric current flow.
■ IAS computer
■ The fundamental design approach was the stored-program concept
■ Attributed to the mathematician John von Neumann

■ The first publication of the idea was in 1945 for the EDVAC
■ Design began at the Princeton Institute for Advanced Studies (IAS)
■ Completed in 1952
■ Prototype of all subsequent general-purpose computers
20
+
Vacuum cube computers

21
+
IAS computer at the Smithsonian
National Museum of American History

22
+
John von Neumann with the IAS
Computer

23
+ History of Computers
First Generation: Vacuum Tubes

■ Figure 1.6 shows the structure of the IAS computer.


■ It consists of
■ 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

24
+ History of Computers
First Generation: Vacuum Tubes

■ With rare exceptions, all of today’s computers have


this same general structure and function and are
thus referred to as von Neumann machines.

25
+ Figure 1.6

26
+ History of Computers
First Generation: Vacuum Tubes

■ 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.
■ Figure 1.7 illustrates these formats.

27
+ History of Computers
First Generation: Vacuum Tubes

■ 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 (numbered
from 0 to 4095).

28
+
Figure 1.7

29
+ History of Computers
First Generation: Vacuum Tubes

■ There is no universal definition of the term word.


■ In general, a word is an ordered set of bytes or bits
that is the normal unit in which information may be
stored, transmitted, or operated within a given
computer.
■ Typically, if a processor has a fixed-length
instruction set, then the instruction length equals the
word length.

30
+ History of Computers
First Generation: Vacuum Tubes

■ The control unit operates the IAS by fetching


instructions from memory and executing them one
at a time.
■ We explain these operations with reference to
Figure 1.6.
■ This figure reveals that both the control unit and the
ALU contain storage locations, called registers,
defined here.

31
+ History of Computers
First Generation: Vacuum Tubes

■ Memory buffer register (MBR): Contains a word to


be stored in memory or sent to the I/O unit, or is
used to receive a word from memory or from the I/O
unit.
■ Memory address register (MAR): Specifies the
address in memory of the word to be written from or
read into the MBR.
■ Instruction register (IR): Contains the 8-bit
opcode instruction being executed.
32
+ History of Computers
First Generation: Vacuum Tubes

■ Instruction buffer register (IBR): Employed to


hold temporarily the right-hand instruction from a
word in memory.
■ Program counter (PC): Contains the address of the
next instruction pair to be fetched from memory.
■ Accumulator (AC) and multiplier quotient (MQ):
Employed to hold temporarily operands and results
of ALU operations. For example, the result of
multiplying two 40-bit numbers is an 80-bit number;
the most significant 40 bits are stored in the AC and
the least significant in the MQ. 33
+ History of Computers
First Generation: Vacuum Tubes

■ The IAS operates by repetitively performing an


instruction cycle, as shown in Figure 1.8.
■ Each instruction cycle consists of two subcycles.
■ During the fetch cycle, the opcode of the next
instruction is loaded into the IR and the address
portion is loaded into the MAR.
■ This instruction may be taken from the IBR, or it can
be obtained from memory by loading a word into
the MBR, and then down to the IBR, IR, and MAR.
34
+ History of Computers
First Generation: Vacuum Tubes

■ Once the opcode is in the IR, the execute cycle is


performed.
■ Control circuitry interprets the opcode and executes
the instruction by sending out the appropriate
control signals to cause data to be moved or an
operation to be performed by the ALU.

35
+ Figure 1.8

36
+ History of Computers
First Generation: Vacuum Tubes

■ The IAS computer had a total of 21 instructions,


which are listed in Table 1.1.
■ These instructions can be grouped as follows:
■ Data transfer: Move data between memory and ALU
registers or between two ALU registers.
■ Unconditional branch: Normally, the control unit executes
instructions in sequence from memory. This sequence can
be changed by a branch instruction, which facilitates
repetitive operations.
■ Conditional branch: The branch can be made dependent
on a condition, thus allowing decision points. 37
+ History of Computers
First Generation: Vacuum Tubes

■ …
■ Arithmetic: Operations performed by the ALU.
■ Address modify: Permits addresses to be computed in the
ALU and then inserted into instructions stored in memory.
This allows a program considerable addressing flexibility.

38
+ History of Computers
First Generation: Vacuum Tubes

■ Table 1.1 presents instructions (excluding I/O


instructions) in a symbolic, easy-to-read form.
■ In binary form, each instruction must conform to the
format of Figure 1.7b.
■ The opcode portion (first 8 bits) specifies which of
the 21 instructions is to be executed.
■ The address portion (remaining 12 bits) specifies
which of the 4,096 memory locations is to be
involved in the execution of the instruction.
39
Table 1.1 The IAS Instruction Set
+ Instruction
Type Symbolic
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 location X

Data transfer 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

00001101 JUMP M(X,0:19) Take next instruction from left half of M(X)
Unconditional
branch 00001110 JUMP M(X,20:39) Take next instruction from right half of M(X)

00001111 JUMP + M(X,0:19) Take next instruction from right half of M(X)
Conditional
Branch 00010000 JUMP + M(X,20:39) If number in the accumulator is nonnegative, take next
instruction from right half of M(X)

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
Arithmetic
in AC, put least significant bits 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; that is, shift left one bit position

00010101 RSH Divide accumulator by 2; that is, shift right one position

00010010 STOR M(X,8:19) Replace left address field at M(X) by 12 rightmost bits
of AC
Address

40
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
■ The transistor is a solid-state device, made from
silicon, which is smaller, cheaper, and generates less
heat than a vacuum tube, can be used in the same way
as a vacuum tube to construct computers.

■ Was invented at Bell Labs in 1947

■ It was not until the late 1950’s that fully transistorized


computers were commercially available

41
+
Table 1.2
Computer Generations
■ It has become widely accepted to classify computers into
generations based on the fundamental hardware technology
employed.
■ The generation-wise advances in fundamental hardware
technology, i.e. integrated circuit (IC) technology employed,
are shown in Table 1.2.

42
+
Second Generation Computers

■ Introduced:
■ More complex arithmetic and logic units and
control units
■ The use of high-level programming languages
■ Provision of system software which provided the
ability to:
■ Load programs
■ Move data to peripherals
■ Libraries perform common computations
History of Computers
Third Generation: Integrated Circuits
■ 1958 – the invention of the integrated circuit

■ An integrated circuit (IC), sometimes called a chip or


microchip, is a semiconductor wafer on which thousands or
millions of tiny resistors, capacitors, diodes, and transistors are
fabricated. It is an integrated system of multiple miniaturized
and interconnected components embedded into a thin
substrate of semiconductor material (usually silicon crystal).

■ The two most important members of the third generation were


the IBM System/360 and the DEC PDP-8.

44
45
46
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

Consequences of Moore’s law:


The pace slowed to a
doubling every 18
months in the 1970’s but
has sustained that rate The cost of
The electrical Computer becomes
computer logic Reduction in
ever since and memory
path length is smaller and is more
power and Fewer interchip
shortened, convenient to use in
circuitry has a variety of cooling connections
increasing
fallen at a environments requirements
operating speed
dramatic rate

47
Evolution of Intel Microprocessors

(a) 1970s Processors


48
Evolution of Intel Microprocessors

(b) 1980s Processors


49
Evolution of Intel Microprocessors

(c) 1990s Processors


50
Evolution of Intel Microprocessors

(d) Recent Processors


51
Evolution of Intel Microprocessors: Required
Terminology

■ Clock speed: The speed at which a microprocessor can


execute the instructions is called the clock speed. The
clock speed is the number of cycles the processor
executes per second. We measure it in megahertz (MHz) or
gigahertz (GHz).

■ Feature size: Feature size, which is measured in


nanometers today, is either the minimum distance between
the source and drain on a MOS transistor or half the
distance between cells in a dynamic RAM chip (known as
"DRAM half pitch").

52
+
The Evolution of the Intel x86
Architecture
■ Two processor families are the Intel x86 and the ARM
(Advanced RISC Machine) architectures.

■ Current x86 offerings represent the results of decades of


design effort on complex instruction set computers
(CISCs)

■ An alternative approach to processor design is the reduced


instruction set computer (RISC)

■ ARM architecture is used in a wide variety of embedded


systems and is one of the most powerful and best-designed
RISC-based systems on the market.

53
Highlights of the Evolution of the
Intel Product Line:
8080 8086 80286 80386 80486
• World’s first • A more powerful • Extension of the • Intel’s first 32-bit • Introduced the use
general-purpose 16-bit machine 8086 enabling machine of much more
microprocessor • Has an instruction addressing a • First Intel sophisticated and
• 8-bit machine, cache, or queue, 16-MB memory processor to powerful cache
8-bit data path to that prefetches a instead of just support technology and
memory few instructions 1MB multitasking sophisticated
• Was used in the before they are instruction
first personal executed pipelining
computer (Altair) • The first • Also offered a
appearance of the built-in math
x86 architecture coprocessor
• The 8088 was a
variant of this
processor and
used in IBM’s
first personal
computer
(securing the
success of Intel

54
Highlights of the Evolution of the
Intel Product Line:
Pentium
• Intel introduced the use of superscalar techniques, which allow multiple instructions to execute in parallel

Pentium Pro
• Continued the move into superscalar organization with aggressive use of register renaming, branch prediction, data flow
analysis, and speculative execution

Pentium II
• Incorporated Intel MMX technology, which is designed specifically to process video, audio, and graphics data efficiently

Pentium III
•Incorporated additional floating-point instructions
•Streaming SIMD Extensions (SSE)

Pentium 4
• Includes additional floating-point and other enhancements for multimedia

Core
• First Intel x86 micro-core

Core 2
• Extends the Core architecture to 64 bits
• Core 2 Quad provides four cores on a single chip
• More recent Core offerings have up to 10 cores per chip
• An important addition to the architecture was the Advanced Vector Extensions instruction set
+
Embedded Systems
■ 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
■ This can give rise to real-time constraints imposed by the
need to interact with the environment
■ Constraints such as required speeds of motion, required
precision of measurement, and required time durations,
dictate the timing of software operations
■ If multiple activities must be managed simultaneously this
imposes more complex real-time constraints
57
+
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


and marked by the use of billions of embedded
devices

58
+
Firmware
■ Firmware is simply nothing more than
software, but in a hardware device, not in
a computer.
■ Firmware is a type of software that is
written to a hardware device's
non-volatile memory.
■ Firmware is installed directly onto a
piece of hardware during
manufacturing.
■ It is used to run user programs on the
device and can be considered the
software that enables hardware to run. 59
+
Firmware…

■ Firmware may be written into read-only


memory (ROM), erasable programmable
read-only memory (EPROM), or flash
memory.
■ Today, firmware exists in everything
from smartphones to IoT devices.
■ It is often included in devices not
traditionally thought of as having
computer control.
60
+
Firmware: Why Firmware Updates
Are Important
■ Firmware updates are often issued to fix bugs, prevent firmware
hacks, roll out new features, improve security, or interact with
new media.
■ Firmware updates consist of code that tells the hardware how to
behave in a new or modified way.
■ Some examples of firmware updates include the following:
■ A CD writer gains the ability to burn a new type of disk.
■ A router gets an update that improves its performance and
stability.
■ A motherboard manufacturer releases a BIOS update that
enables the motherboard to support new processors. BIOS is
motherboard firmware. 61
+ End of 1A
Basic Concepts and
Computer Evolution
Chapter 1

THANKS

62

You might also like