cpu and its execution of instruction

27

Upload: baabtracom-first-coding-school-in-india

Post on 06-May-2015

280 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: CPU and its execution of instruction
Page 2: CPU and its execution of instruction

Disclaimer: This presentation is prepared by trainees of baabtra as a part of mentoring program. This is not official document of baabtra –Mentoring PartnerBaabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt . Ltd

Page 3: CPU and its execution of instruction
Page 4: CPU and its execution of instruction

CPU AND ITS EXECUTION OF INSTRUCTION

Jaseena A [email protected]/Jaseena

Muhammed A Ptwitter.com/usernamein.linkedin.com/in/profilename9539443588

Page 5: CPU and its execution of instruction

WHAT IS CPU?

Central Processing Unit

Brain of every computer

Two main components: - ALU

- Control unit

Page 6: CPU and its execution of instruction

COMPONENTS OF CPU

ALU -Arithmetic and Logical Unit

-Performs all arithmetic and logical operations.

Control Unit

- Extracts instruction from memory, decodes and executes them

- Calls ALU whenever necessary.

Page 7: CPU and its execution of instruction

REGISTERS

Registers are temporary memory units that store words.

The registers are located in the processor, instead of in RAM.

Some registers are PC, AC, IR, Index register, AMASK, MAR, and MDR, General purpose register, Data register and Process status register.

Page 8: CPU and its execution of instruction

Program Counter: Stores the address of the macro instruction currently being executed.

Accumulator: Stores a previously calculated value or a value loaded from the main memory.

Instruction Register: Stores a copy of the instruction loaded from main memory (Instruction being executed currently).

REGISTERS(CONTD..)

Page 9: CPU and its execution of instruction

REGISTERS(CONTD..)Address Mask: When the CPU needs to know the

address of a target word that an instruction is using, the AMASK is AND'ed with the instruction to eliminate the opcode, leaving only the desired address.

 Memory Address Register: This register contains the address of the place the CPU wants to work with in the main memory. It is directly connected to the RAM chips on the motherboard.

Page 10: CPU and its execution of instruction

REGISTERS(CONTD….) Process status register:

This register contains the various information about the cpu.

Data register:A register used in microcomputers to temporarily store data being transmitted to or from a peripheral device.

General purpose registers:-A general purpose register is a memory cell.-Each general purpose register has a unique name-It is used to store intermediate result of complex computation

Page 11: CPU and its execution of instruction

REGISTERS(CONTD…) MDR(Memory data register)

-It is the register that contains the data to be stored in the computer storage or data after a fetch from the computer storage.-It acts like a buffer and holds anything that is copied from the memory ready for the processor to use it,

Index register:-A hardware element which holds a number that can be added to (or, in some cases, subtracted from) the address portion of a computer instruction to form an effective address. -An index register in a computer's CPU is a processor register used for modifying operand addresses during the run of a program.

Page 12: CPU and its execution of instruction

HOW CPU COMMUNICATES?

Page 13: CPU and its execution of instruction

Pathway that interconnect CPU to all the other components on the motherboard

Two types:

-Internal

-External The lines or pins of a bus are of three types: -Data

-Address

-Control

SYSTEM BUS

Page 14: CPU and its execution of instruction

Address - the components pass memory addresses to one another over the address bus.

Control - used to send out signals to coordinate and manage the activities of the motherboard components.

Data - transferred between peripherals, memory and the CPU. Obviously, the data bus can be a very busy pathway.

SYSTEM BUS(CONTD..)

Page 15: CPU and its execution of instruction

INSTRUCTION

Single operation of a processor defined by the processor instruction set.

An instruction has two components:

opcode operand

Eg: ADD Ro 100

Page 16: CPU and its execution of instruction

INSTRUCTION TYPES Instructions can be divided into six groups:

-Data transfer eg: MOV, LOAD

-Arithmetic eg: ADD, SUB, DIV

-Logical eg: AND, OR, NOT

-System-control eg: STOP

-I/O eg: IN and OUT

-Program Control

Page 17: CPU and its execution of instruction

Program control can be divided into:

-Unconditional Branch eg:JMP NEXT % Jump to the label NEXT

-Conditional Branch

eg: JZ LABEL % jump to label if current value in AC is ZERO -Subroutine call eg: CALL SUB

-Interrupt handling eg:TRAP

INSTRUCTION TYPES

Page 18: CPU and its execution of instruction

INSTRUCTION CYCLE

Page 19: CPU and its execution of instruction

1. Load the address of next instruction in the PC into the MAR.So that the control unit can fetch the instruction from the right part

of the memory.2. Copy the instruction/data that is in the memory address

given by the MAR into the MDR.MDR is used whenever anything is to go from the CPU to main

memory, or vice versa. 3. Increment the PC by 1.

So that it contains the address of the next instruction, assuming that the instructions are in consecutive locations.

4. Load the instruction/data that is now in the MDR into the IR.Thus the next instruction is copied from memory -> MDR -> IR.

1.FETCH

Page 20: CPU and its execution of instruction

2.DECODE

1. Contents of IR split into operation code and address if present e.g. store, add or jump instructions.

2. Decode the instruction that is in the IR

Page 21: CPU and its execution of instruction

3.EXECUTE• If the instruction is a jump instruction then

Load the address part of the instruction in the IR into the PC.

• If the instruction is an input / load (directly) instruction then

take data input and place in accumulator.

• If the instruction is a load (from memory) instruction.Copy address part of the instruction (to load from) in the IR into MAR.Copy data from memory address held in MAR to MDR.Copy data in MDR into accumulator

Page 22: CPU and its execution of instruction

• If the instruction is a store instruction then:Copy address part of the instruction (to store in) in the IR into

MAR.Copy data in accumulator to MDR.Copy data in MDR into memory address held in MAR.

• If the instruction is arithmetic then:Copy address part of the instruction (of number to perform

arithmetic operation) in the IR into MAR.Copy number from memory address held in MAR into MDR.Perform operation to number in accumulator (accumulator will

now hold the result).

EXECUTE(CONTD..)

Page 23: CPU and its execution of instruction

• If the instruction is an output (from memory) instruction then:

Copy address part of part of the instruction (of data to output) in IR into MAR.

Output contents of MDR.

EXECUTE(CONTD…)

Page 24: CPU and its execution of instruction

4.STORE THE OUTPUT

Result of calculations in cpu stored in main memory or sent to output devices.

Program Counter could be updated to a new address

Page 25: CPU and its execution of instruction

AN EXAMPLE

Page 26: CPU and its execution of instruction

If this presentation helped you, please visit our page facebook.com/baabtra and like it.

Thanks in advance.

www.baabtra.com | www.massbaab.com |www.baabte.com

Page 27: CPU and its execution of instruction

Contact Us

Emarald Mall (Big Bazar Building)Mavoor Road, Kozhikode,Kerala, India.Ph: + 91 – 495 40 25 550

NC Complex, Near Bus StandMukkam, Kozhikode,Kerala, India.Ph: + 91 – 495 40 25 550

Start up VillageEranakulam,Kerala, India.

Email: [email protected]