Computer Organization and ASSEMBLY LANGUAGE

Slides:



Advertisements
Similar presentations
CPU Structure and Function
Advertisements

Damian BrowneLuis PabonPedro Tovar The operation of a computer in executing a program consists of a sequence of Instruction Cycles, with one machine.
PART 5: (2/2) Processor Internals CHAPTER 15: CONTROL UNIT OPERATION 1.
Computer Organization and Architecture
Chapter 12 CPU Structure and Function. CPU Sequence Fetch instructions Interpret instructions Fetch data Process data Write data.
Computer Organization and Architecture
Computer Organization and Architecture
CSCI 4717/5717 Computer Architecture
Computer Organization and Architecture The CPU Structure.
Chapter 12 Pipelining Strategies Performance Hazards.
Pipelining Fetch instruction Decode instruction Calculate operands (i.e. EAs) Fetch operands Execute instructions Write result Overlap these operations.
Chapter 16 Control Unit Implemntation. A Basic Computer Model.
Chapter 12 CPU Structure and Function. Example Register Organizations.
RICARFENS AUGUSTIN JARED COELLO OSVALDO QUINONES Chapter 12 Processor Structure and Function.
Group 5 Alain J. Percial Paula A. Ortiz Francis X. Ruiz.
CH12 CPU Structure and Function
Lecture 13 - Introduction to the Central Processing Unit (CPU)
Edited By Miss Sarwat Iqbal (FUUAST) Last updated:21/1/13
CPU Design and PipeliningCSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: CPU Operations and Pipelining Reading: Stallings,
Presented by: Sergio Ospina Qing Gao. Contents ♦ 12.1 Processor Organization ♦ 12.2 Register Organization ♦ 12.3 Instruction Cycle ♦ 12.4 Instruction.
ECE 456 Computer Architecture Lecture #14 – CPU (III) Instruction Cycle & Pipelining Instructor: Dr. Honggang Wang Fall 2013.
Fetch-execute cycle.
CSE 241 Computer Organization Lecture # 8 Ch. 7 Control Unit Dr. Tamer Samy Gaafar Dept. of Computer & Systems Engineering.
COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE Lecture 21 & 22 Processor Organization Register Organization Course Instructor: Engr. Aisha Danish.
Processor Structure and Function Chapter8:. CPU Structure  CPU must:  Fetch instructions –Read instruction from memory  Interpret instructions –Instruction.
Question What technology differentiates the different stages a computer had gone through from generation 1 to present?
PART 4: (1/2) Central Processing Unit (CPU) Basics CHAPTER 12: P ROCESSOR S TRUCTURE AND F UNCTION.
Control Unit Operations Chapter10:. What is Control Unit (CU)?(1)  Part of a CPU or other device that directs its operation.  Tells the rest of the.
Processor Organization
Structure and Role of a Processor
CPU Design and Pipelining – Page 1CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: CPU Operations and Pipelining Reading:
Functions of Processor Operation Addressing modes Registers i/o module interface Memory module interface Interrupts.
Chapter 12 Processor Structure and Function. Central Processing Unit CPU architecture, Register organization, Instruction formats and addressing modes(Intel.
Chapter 11 CPU Structure and Function
Basic Processor Structure/design
Lecture 13 - Introduction to the Central Processing Unit (CPU)
William Stallings Computer Organization and Architecture 8th Edition
Chapter 9 a Instruction Level Parallelism and Superscalar Processors
Micro-Operations A computer executes a program Fetch/execute cycle
William Stallings Computer Organization and Architecture
William Stallings Computer Organization and Architecture 7th Edition
Chapter 15 Control Unit Operation
Processor Organization and Architecture
Central Processing Unit
Processor Organization and Architecture
MARIE: An Introduction to a Simple Computer
William Stallings Computer Organization and Architecture 7th Edition
The Little Man Computer
Chapter 14 Control Unit Operation
William Stallings Computer Organization and Architecture 8th Edition
Computer Architecture
CPU Structure and Function
Chapter 11 Processor Structure and function
A Top-Level View Of Computer Function And Interconnection
Instruction execution and ALU
Computer Architecture
Presentation transcript:

Computer Organization and ASSEMBLY LANGUAGE Lecture 23 & 24 Instruction Cycle Instruction Pipelining Course Instructor: Engr. Aisha Danish

Instruction Cycle Revision Stallings Chapter 3 35

Instruction Cycle Fetch: Read the next instruction from memory into the processor. Execute: Interpret the opcode and perform the indicated operation. Interrupt: If interrupts are enabled and an interrupt has occurred, save the current process state and service the interrupt

The Indirect Cycle The execution of an instruction may involve one or more operands in memory, each of which requires a memory access Further, if indirect addressing is used, then additional memory accesses are required We can think of the fetching of indirect addresses as one more instruction stages As shown in Figure 12.4, the main line of activity consists of alternating instruction fetch and instruction execution activities After an instruction is fetched, it is examined to determine if any indirect addressing is involved If so, the required operands are fetched using indirect addressing Following execution, an interrupt may be processed before the next instruction fetch.

Instruction Cycle with Indirect

Instruction Cycle State Diagram

The Indirect Cycle May require memory access to fetch operands Indirect addressing requires more memory accesses Can be thought of as additional instruction subcycle

Data Flow (Instruction Fetch) Depends on CPU design In general: Fetch PC contains address of next instruction Address moved to MAR Address placed on address bus Control unit requests memory read Result placed on data bus, copied to MBR, then to IR Meanwhile PC incremented by 1

Data Flow (Data Fetch) IR is examined If indirect addressing, indirect cycle is performed Right most N bits of MBR transferred to MAR Control unit requests memory read Result (address of operand) moved to MBR

Data Flow (Fetch Diagram)

Data Flow (Indirect Diagram)

Data Flow (Execute) May take many forms Depends on instruction being executed May include Memory read/write Input/Output Register transfers ALU operations

Data Flow (Interrupt) Simple Predictable Current PC saved to allow resumption after interrupt Contents of PC copied to MBR Special memory location (e.g. stack pointer) loaded to MAR MBR written to memory PC loaded with address of interrupt handling routine Next instruction (first of interrupt handler) can be fetched

Data Flow (Interrupt Diagram)

Prefetch Fetch accessing main memory Execution usually does not access main memory Can fetch next instruction during execution of current instruction Called instruction prefetch 36

Improved Performance But not doubled: Fetch usually shorter than execution Prefetch more than one instruction? Any jump or branch means that prefetched instructions are not the required instructions Add more stages to improve performance 37

Pipelining Fetch instruction Decode instruction Calculate operands (i.e. EAs) Fetch operands Execute instructions Write result Overlap these operations 38

Two Stage Instruction Pipeline

Timing Diagram for Instruction Pipeline Operation 39

The Effect of a Conditional Branch on Instruction Pipeline Operation 40

Six Stage Instruction Pipeline