I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC...

27
I/O Memory Reg File ALU Program Counter Instruction Register Control Intercon nect Control 1) PC contains mem address of Instruction, 2) From memory, instr. loaded into IR reg 3) Control decodes instruction causing load, store, or arithmetic/logic operation 4) PC is then incremented, offset, or a new address is loaded

Transcript of I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC...

Page 1: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

I/O

Memory

Reg File

ALU

Program Counter

Instruction Register

Control

Interconnect Control

1) PC contains mem address of Instruction, 2) From memory, instr. loaded into IR reg3) Control decodes instruction causing load,

store, or arithmetic/logic operation4) PC is then incremented, offset, or a new

address is loaded (today start pg. 9)

Page 2: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Processor components

• The program counter (PC) register holds thememory address of the current

instruction• The instruction register (IR) holds the current

instruction• General purpose registers hold data and

addresses• Control circuits and the arithmetic and logic

unit (ALU) fetch and execute instructions

Page 3: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.
Page 4: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Fetching and executing instructions

Example: Load R2, LOC

The processor control circuits do the following:

• Send address in PC to memory; issue Read• Load instruction from memory into IR• Increment PC to point to next instruction• Send address LOC to memory; issue Read• Load word from memory into register R2

Page 5: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Handling I/O devices

An application program can:

• Read data (such as a keyboard character)from an input device

• Write data (such as letter character)to an output display screen

• Sense the readiness of an input or output (I/O) device to perform a transfer

Page 6: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Interrupts

A device ( such as an alarm indicator) can raisean interrupt signal to cause a serviceprogram to be executed

The interrupt signal causes the processor tosuspend the current program and execute aninterrupt-service program

Page 7: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Numbers

A 32-bit integer in positional binary notation hasits bits labeled as:

B = b31 b30 . . . b1 b0

If bit bi = 1, then 2i is added into the sum that

determines the value of B

Page 8: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Endianess

• A big-endian machine stores the most significant byte first—at the lowest byte address—while a little-endian machine stores the least significant byte first. Below, a 16-bit integer is stored at memory location 8000.

Contents Address Byte Value

bitsb7,b6,b5,b4,b3,b2,b1,b0

8001 0x32

0x3210, 16-bit int 8000 0x10

Page 9: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Numbers

For signed integers, the leftmost bit alwaysindicates the sign:

0 for positive1 for negative

There are three ways to represent signed integers:• Sign and magnitude• 1’s complement• 2’s complement

Page 10: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.
Page 11: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

2’s-complement integers

2’s-complement representation is used incurrent computers

Consider a four-bit signed integer example:The value +5 is represented as:

0 1 0 1To form the value -5, complement all bits of

0 1 0 1 to obtain 1 0 1 0and then add 1 to obtain

1 0 1 1

Page 12: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Addition

Examples of adding 4-bit numbers

0 0 0 1 +1 0 1 0 0 +4+ 0 1 011 + +5 + 1 0 1 0 + -6

-------------- -------- ------------- ------0 1 1 0 +6 1 1 1 0 -2

Page 13: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Subtraction

Form the 2’s-complement of the subtrahend andthen perform addition

1 1 1 0 -2 1 1 1 0 - 1 0 1 1 - -5 + 1 011 0 01

------------ ------ -------------- +3 0 0 1 1

Page 14: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Overflow

Two examples of overflow; that is, when the answer does not fit in the number range

0 1 1 0 +6 1 1 1 0 -2 + 011 0 0 + +4 11 0 0 1 + -7

------------ ------ ---------- ------

1 0 1 0 +10 0 1 1 1 -9

Page 15: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Sign extension

Extend 4-bit signed integers to 8-bit signedintegers

0 1 0 1 0 0 0 0 0 1 0 1

1 1 1 0 1 1 1 1 1 1 1 0

Page 16: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Character encoding

American Standard Code for InformationInterchange (ASCII)uses 7-bit codes

Examples:character code

A 1 0 0 0 0 0 17 0 1 1 0 1 1 1+ 0 1 0 1 0 1 1

Page 17: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Floating-point numbers

32-bit signed numbers have a limited range

Integers (with their binary point fixed at theright end) have a magnitude up to 1010

Fractions (with their binary point fixed just afterthe sign bit) have a magnitude down to 10-10

Page 18: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Floating-point numbers

A larger range can be obtained by letting the binary point “float” to the left or right

< ……………..1 1 0 1 0 1……………… >

Arithmetic unit operations automatically adjustthe binary point as computation proceeds

Page 19: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Floating-point numbers

A floating-point number can be represented in a 32-bit word as follows:

1 bit for the sign of the number8 bits for a signed exponent to a base of 2

23 significant bits in the form 1.xx….x

The value represented is:+/- 1.xx….x X 2exp

Page 20: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Floating-point (FP) numbers

• IEEE standard 754-2008 definesrepresentation and operations forfloating-point numbers

• The 32-bit single-precision format is:

A sign bit: S (0 for +, 1 for -)An 8-bit signed exponent: E (base = 2)A 23-bit mantissa fraction magnitude: M

Page 21: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

FP numbers

• The value represented is

+/- 1.M x 2E

• E is actually encoded as E’ = E + 127

which is called an excess-127representation

Page 22: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

FP numbers• Example of 32-bit number representation:

0 10000101 0110 …S E’ M

• Value represented (with E = E’ – 127 = 133 – 127 = 6):

+ 1.0110 x 26

• This is called a normalized representation,with the binary point to the right ofthe first significant bit

Page 23: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.
Page 24: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Performance

How quickly can a program be executed ?Some factors:

• Speed of electronic circuits in the processor• Access times to the cache and main memory• Design of the instruction set• Number of operations that can be done at the

same time (parallelism)

Page 25: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Parallelism

Multiple processors, called cores, can befabricated on a single VLSI chip

The cores can execute different parts of a program at the same time

A large number of multi-core processors withmultiple caches and memory modulescan be organized into a multiprocessorsystem to execute programs at the same time

Page 26: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Historical perspective

• Up to the 1940s: mechanical devices,electromechanical relay devices

• First generation computers, 1945-1955:vacuum tube circuits, magnetic core

memories

Page 27: I/O Memory Reg File ALU Program Counter Instruction Register Control Interconnect Control 1)PC contains mem address of Instruction, 2)From memory, instr.

Historical perspective• Second generation, 1955-1965:

transistor circuitry, magnetic disk data storage

• Third generation, 1965-1975:integrated circuits for processors and memory

• Fourth generation, 1975-present:microprocessors on a single VLSI chip,personal computers, embedded systems,very high performance multiprocessors