Chapter 12. CPU Structure and Function. Yonsei University

Size: px
Start display at page:

Download "Chapter 12. CPU Structure and Function. Yonsei University"

Transcription

1 Chapter 12 CPU Structure and Function

2 Contents Processor organization Register organization Instruction cycle Instruction pipelining The Pentium processor The PowerPC processor 12-2

3 CPU Structures Processor organization Fetch instructions CPU reads an instruction from memory Interpret instructions The instruction is decoded to determine what action is required Fetch data The execution may require reading data from memory or an I/O module Process data The execution may require performing arithmetic or logical operation on data Write data The result of an execution may require writing data to memory or I/O module 12-3

4 CPU With The System Bus Processor organization 12-4

5 Internal Structure of the CPU Processor organization 12-5

6 Registers Register organization CPU must have some working space (temporary storage) Called registers Number and function vary between processor designs One of the major design decisions Top level of memory hierarchy 12-6

7 Registers Register organization User-visible registers Enable to minimize main memory references Control and status registers Enable the control unit to control the operation of the CPU Enable OS programs to control the execution of programs 12-7

8 User Visible Registers Register organization General Purpose Data Address Condition Codes 12-8

9 General Purpose Registers Can be assigned to a variety of functions May be true general purpose May be restricted May be used for data or addressing Register organization Make them general purpose Increase flexibility and programmer options Increase instruction size & complexity Make them specialized Smaller (faster) instructions Less flexibility 12-9

10 Data Registers Register organization Accumulator Only to hold data Cannot be employed in the calculation of an operand address 12-10

11 Address Registers Register organization Segment May be somewhat general purpose May be devoted to a particular addressing mode 12-11

12 Examples of Address Registers Register organization Segment pointers In a machine with segmented addressing, it holds the address of the base of the segment There may be multiple registers Index registers Used for indexed addressing May be autoindexed Stack pointer If there is user-visible stack addressing, then typically the stack is in memory and there is a dedicated register that points to the top of the stack This allows implicit addressing

13 How Many GP Registers? Register organization Between 8-32 Fewer = more memory references More does not reduce memory references and takes up processor real estate See also RISC 12-13

14 How big? Register organization Large enough to hold full address Large enough to hold full word Often possible to combine two data registers C programming double int a; long int a; 12-14

15 Design Issues Whether to use completely general purpose registers or to specialize their use The number of registers, either general purpose or data plus address, to be provided Register length Register that must hold addresses obviously must be at least long enough to hold the largest address Register organization 12-15

16 Condition Code Registers Register organization Sets of individual bits that set by the CPU hardware as the result of operations e.g. result of last operation was zero Condition code bits are collected into one or more registers Usually form part of a control register Can be read (implicitly) by programs e.g. Jump if zero Cannot be altered by programmers 12-16

17 Control & Status Registers Register organization CPU registers that are employed to control the operation of the CPU Program Counter Contains the address of an instruction to be fetched Instruction Register Contains the instruction most recently fetched Memory Address Register Contains the address of a location in memory Memory Buffer Register Contains a word of data to be written to memory or the word most recently read

18 Program Status Word Register organization Status Information Conditional code plus other status information 12-18

19 Flag of PSW Register organization Sign : Contains the sign bit of the result of the last arithmetic operation Zero : Set when the result is 0 Carry : Set if an operation resulted in a carry into or borrow out of a high-order bit Equal : Set if a logical compare result is equality Overflow : Used to indicate arithmetic overflow Interrupt enable/disable : Used to enable or disable interrupts Supervisor : Indicate whether the CPU is executing in supervisor or user mode 12-19

20 Other Registers Register organization Pointers to a block of memory containing additional status information (Process control blocks) Interrupt Vectors register System stack pointer If a stack is used, a system stack pointer is needed Page table pointer In virtual memory system Registers for the control of I/O operations 12-20

21 Design Issues Register organization Operating system support Certain types of control information are of specific utility to the operating system Allocation of control information between registers and memory Common to dedicate thousands words of memory for control purposes How much control information should be in registers and how much in memory 12-21

22 Example Register Organizations Register organization 12-22

23 Instruction Cycle Instruction cycle 12-23

24 Indirect Cycle Instruction cycle May require memory access to fetch operands Indirect addressing requires more memory accesses Can be thought of as additional instruction subcycle 12-24

25 Instruction Cycle Instruction cycle 12-25

26 Instruction Cycle with Indirect Alternating instruction fetch and instruction execution activities After an instruction is fetched, examine if any indirect addressing is involved If so, the required operands are fetched Following execution, an interrupt may be processed before the next instruction fetch Instruction cycle 12-26

27 Instruction Cycle State Diagram Instruction cycle 12-27

28 Data Flow - Instruction Fetch Instruction cycle 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

29 Data Flow - Fetch Cycle Instruction cycle 12-29

30 Data Flow - Data Fetch Instruction cycle 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 12-30

31 Data Flow - Indirect Cycle Instruction cycle 12-31

32 Data Flow - Execute Instruction cycle May take many forms Depends on instruction being executed May include Memory read/write Input/Output Register transfers ALU operations 12-32

33 Data Flow - Interrupt Instruction cycle Simple and 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 12-33

34 Data Flow - Interrupt Cycle Instruction cycle 12-34

35 Two-stage Instruction Pipeline Instruction pipelining 12-35

36 Instruction Pipelining - Prefetch Instruction pipelining Fetch accessing main memory Execution usually does not access main memory Can fetch next instruction during execution of current instruction Called instruction prefetch or fetch overlap 12-36

37 Improved Performance Instruction pipelining Doubling of execution ratio is unlikely : Fetch usually shorter than execution Prefetch more than one instruction? Any jump or branch means that prefetched instructions are not the required instructions To reduce the time loss, when a conditional branch instruction is passed, fetch stage fetches the next instruction in memory after branch instruction If the branch is not taken, no loss Else, the fetched instruction must be discarded and a new instruction fetched Add more stages to improve performance 12-37

38 Pipelining Instruction pipelining Fetch instruction (FI) Read the next expected instruction into a buffer Decode instruction (DI) Determine the opcode and the operand specifiers Calculate operands (CO) Calculate effective address of each source operand Fetch operands (FO) Fetch each operand from memory Execute instruction (EI) Perform the operation and store the result Write operand (WR) 12-38

39 Timing of Pipeline Instruction pipelining 12-39

40 Timing of Pipeline Instruction pipelining Six stages of the pipeline This will not always be the case All stages can be performed in parallel Particularly assumed that there is no memory conflict The desired value may be in cache : Memory conflict won t slow down the pipeline 12-40

41 Limiting Factors Instruction pipelining Memory conflict if the cache is not used Unequal duration of stages There will be some waiting involved at stages The conditional branch instruction can invalidate several instruction fetches A similar unpredictable event is an interrupt 12-41

42 Conditional Branch in a Pipeline Instruction pipelining 12-42

43 Limiting Factors Instruction pipelining The CO stage depends on the contents of a register that could be altered by a previous instruction that is still in the pipeline Other such register and memory conflicts could occur 12-43

44 6-stage CPU Instruction Pipeline Instruction pipelining 12-44

45 Alternative Pipeline Depiction Instruction pipelining 12-45

46 Speed & The Number of Stages Instruction pipelining At each stage, overhead is involved in moving data from buffer to buffer and in performing various preparation and delivery functions This overhead can lengthen the total execution time of a single instruction This is significant when sequential instructions are logically dependent, either through heavy use of branching or through memory access dependencies The amount of control logic increases enormously with the number of stages The logic controlling the gating between stages is more complex than the stages being controlled 12-46

47 Pipeline Performance Instruction pipelining Cycle time Time needed to advance a set of instructions one stage through the pipeline [ ] i + d = m + d τ = max τ τ 1 i k τm k d = maximum stage delay = number of stages in the instruction pipeline = time delay of a latch 12-47

48 Pipeline Performance Instruction pipelining In general, the time delay d is equivalent to a clock pulse and Suppose that n instructions are processed Total time required Tk Speedup factor τm >> d Tk = [ k + ( n 1) ]τ S k = T T 1 k = nkτ = nk [ k + ( n 1) ] τ k + ( n 1) 12-48

49 Speedup Factors Number of instructions Instruction pipelining 12-49

50 Speedup Factors Number of stages Instruction pipelining 12-50

51 Dealing with Branches Instruction pipelining Until the instruction is actually executed, it is impossible to determine whether the branch will be taken or not Multiple Streams Prefetch Branch Target Loop buffer Branch prediction Delayed branching 12-51

52 Multiple Streams Instruction pipelining Replicate the initial portions of the pipeline and allow the pipeline to fetch both instructions, making use of two streams Two problems with this approach Contention delays for access to the registers and to memory Additional branch instructions may enter the pipeline before original branch decision is resolved Each such instruction needs an additional stream Despite these drawbacks, this strategy can improve performance 12-52

53 Prefetch Branch Target Instruction pipelining The target of the branch is prefetched in addition to the instruction following the branch Keep the target until the branch is executed If the branch is taken, the target has already been prefetched Used by IBM 360/

54 Loop Buffer Instruction pipelining A small, very-high-speed memory maintained by fetch stage of the pipeline and containing the n most recently fetched instructions, in sequence If a branch is to be taken, the hardware first checks whether the branch target is within the buffer If so, the next instruction is fetched from the buffer Very good for small loops or jumps 12-54

55 Benefits of Loop Buffer Instruction pipelining With the use of prefetching, the loop buffer will contain some instruction sequentially ahead of the current instruction fetch address If a branch occurs to a target a few locations ahead of the address of the branch instruction, the target will already be in the buffer Useful for the rather common occurrence of IF- THEN and IF-THEN-ELSE sequences Well suited to dealing with loops, or iterations 12-55

56 Loop Buffer Instruction pipelining 12-56

57 Branch Prediction Instruction pipelining Static approaches Do not depend on the execution history up to the time of the conditional branch instruction Predict never taken Predict always taken Predict by opcode Dynamic approaches Do depend on the execution history Improve the accuracy of prediction by recording the history of conditional branch instructions Taken/not taken switch Branch history table 12-57

58 Static Approaches Predict never taken Assume that jump will not happen Always fetch next instruction & VAX 11/780 VAX will not prefetch after branch if a page fault would result (O/S v CPU design) Predict always taken Conditional branches are taken more than 50% Assume that jump will happen Always fetch target instruction Predict by Opcode Some instructions are more likely to result in a jump than others Success rate > 75% Instruction pipelining

59 Dynamic Approaches Instruction pipelining Taken/Not taken switch History bits : One or more bits can be associated with each conditional branch instruction that reflects the recent history of the instruction History bits are kept in temporary high-speed storage Associate some history bits with any conditional branch instruction that is in a cache When the instruction is replaced in the cache, its history is lost Maintain a small table for recently executed branch instruction with one or more bits in each entry Good for loops 12-59

60 Dynamic Approaches Instruction pipelining Taken/Not taken switch (with a single bit) With a single bit, it s only recorded whether the last execution of this instruction resulted in a branch or not Disadvantages Used in the case of a conditional branch instruction that is almost always taken, such as a loop instruction Error in prediction will occur twice : once on entering the loop and once on exiting 12-60

61 Dynamic Approaches Instruction pipelining Taken/Not taken switch (with two bits) With two bits, it can be recorded the result of the last two instances of the execution of the associated instruction and a state in some other fashion If the last two branches of the given instruction have taken the same path, the prediction is to take that path again If the prediction is wrong, it remains the same the next time the instruction is encountered If the prediction is wrong again, the next prediction will be to select the opposite path 12-61

62 Branch Prediction Flowchart Instruction pipelining 12-62

63 Branch Prediction State Diagram Instruction pipelining 12-63

64 Dynamic Approaches Instruction pipelining Drawback of the use of history bits If the decision is made to take the branch, the target instruction cannot be fetched until the target address is decoded Greater efficiency could be achieved if the instruction fetch could be initiated as soon as the branch is made 12-64

65 Dynamic Approaches Instruction pipelining Branch history table A small cache memory associated with the instruction fetch stage of the pipeline Each entry in the table consists The address of a branch instruction Some number of history bits that record the state of use of that information Information about the target instruction This yields a shorter instruction fetch time, but a greater table compared with storing the target address 12-65

66 Predict Never Taken Strategy Instruction pipelining 12-66

67 Branch History Table Instruction pipelining 12-67

68 Delayed Branch Instruction pipelining Possible to improve pipeline performance by automatically rearranging instructions so that branch instructions occur later than actually desired Do not take jump until you have to Rearrange instructions 12-68

69 Intel Pipelining Instruction pipelining Fetch : instructions are fetched from the cache or from the external memory and placed into one of the two 16-byte prefetch buffers Decode stage1 : All opcode and addressingmode information is decoded Decode stage2 : This stage expands each opcode into control signals for ALU Execute : This stage includes ALU operations, cache access and register update Write back : If needed, this stage updates registers and status flags modified during the preceding execution stage

70 Intel Pipelining Fetch From cache or external memory Put in one of two 16-byte prefetch buffers Fill buffer with new data as soon as old data consumed Average 5 instructions fetched per load Independent of other stages to keep buffers full Decode stage 1 Opcode & address-mode info At most first 3 bytes of instruction Can direct D2 stage to get rest of instruction Decode stage 2 Expand opcode into control signals Computation of complex address modes Execute ALU operations, cache access, register update Writeback Update registers & flags Results sent to cache & bus interface write buffers Instruction pipelining

71 No Data Delay of Instruction pipelining No delay introduced into the pipeline when a memory access is required 12-71

72 Pointer Load Delay of Instruction pipelining A delay for values used to compute memory address 12-72

73 Pointer Load Delay of The processor accesses the cache in the EX stage of the first instruction and stores the value retrieved in the register during the WB stage The next instruction needs that register in the D2 stage When the D2 stage lines up with the WB stage of the previous instruction, bypass signal paths allow the D2 stage to have access to the same data being used by the WB stage for writing, saving one pipeline stage Instruction pipelining 12-73

74 Branch Instruction Timing Instruction pipelining Assume that the branch is taken 12-74

75 Branch Instruction Timing Instruction pipelining The compare instruction updates condition codes in the WB stage and bypass paths make this available to the EX stage of the jump instruction at the same time In parallel, the processor runs a speculative fetch cycle to the target of the jump during the EX stage of the jump instruction If the processor determines a false branch condition, it discards this prefetch and continues execution with the next sequential instruction 12-75

76 Pentium Processor Registers Pentium processor 12-76

77 EFLAGS Register Pentium processor 12-77

78 EFLAGS Register Pentium processor 6 condition codes 7 flags that may be referred to as control bits Trap flag (TF) Interrupt enable flag (IF) Direction flag (DF) I/O privilege flag (IOPL) Resume flag (RF) Alignment check (AC) Identification flag (ID) 12-78

79 Control Registers Pentium processor 12-79

80 Control Registers Pentium processor Flags Protection enable (PE) Monitor coprocessor (MP) Emulation (EM) Task switched (TS) Extension type (ET) Numeric error (NE) Write protect (WP) Alignment mask (AM) Not write through (NW) Cache disable (CD) Paging (PG) 12-80

81 Control Register 4 (CR4) Pentium processor Nine additional control bits Virtual-8086 mode extension Protected-mode virtual interrupts Time stamp disable Debugging extensions Page size extensions Physical address extension Machine check enable Page global enable Performance counter enable 12-81

82 MMX Register Mapping Pentium processor MMX uses several 64 bit data types Use 3 bit register address fields 8 registers No MMX specific registers Aliasing to lower 64 bits of existing floating point re gisters 12-82

83 MMX Registers Pentium processor 12-83

84 Features of MMX Registers Pentium processor For MMX operations, the floating-point registers are accessed directly The first time that an MMX instruction is executed after any floating-point operations, the FP tag word is marked valid The EMMS(Empty MMX state) instruction sets bits of the FP tag word to indicate that all registers are empty The programmer insert this instruction at the end of an MMX code block so that subsequent FP operations function properly When a value is written to an MMX register, bits[79:64] of the corresponding register are set to all ones 12-84

85 Interrupt Processing Interrupts and exceptions Pentium processor Interrupt vector table Interrupt handling 12-85

86 Interrupts Generated by a signal from hardware May occur at random times during the execution of a program Pentium processor Two sources of interrupts Maskable interrupts Processor doesn t recognize a maskable interrupt unless the interrupt enable flag(if) is set Nonmaskable interrupts Recognition of such interrupts cannot be prevented 12-86

87 Exceptions Pentium processor Generated from software Provoked by the execution of an instruction Two sources of exceptions Processor-detected exceptions Results when the processor encounters an error while attempting to execute an instruction Programmed exceptions These are instructions that generate an exception 12-87

88 Exception and Interrupt Vector Pentium processor 12-88

89 Interrupt Vector Table Pentium processor Every type of interrupt is assigned a number This number is used to index into the interrupt vector table If more than one exception or interrupt is pending, the processor services them in a predictable order The order of priority Class1 : Traps on the previous instruction Class2 : External interrupts Class3 : Faults from fetching next instruction Class4 : Faults from decoding the next instruction Class5 : Faults on executing an instruction 12-89

90 Interrupt Handling Pentium processor When an interrupt occurs and is recognized by the processor If the transfer involves a change of privilege level, the current stack segment register and the current extended stack pointer register are pushed onto the stack The current value of the EFLAGS register is pushed onto the stack Both the interrupt and trap flags are cleared The current code segment pointer and the current instruction pointer are pushed onto the stack If the interrupt is accomplished by an error code, the error code is pushed onto the stack The interrupt vector contents are fetched and loaded into the CS and IP or EIP registers 12-90

91 PowerPC G3 Block Diagram PowerPC processor 12-91

92 User-Visible Registers PowerPC processor 12-92

93 Register Organization PowerPC processor Fixed-point unit General bit general-purpose registers These may be used to load, store and manipulate data operands and also be used for register indirect addressing Exception register Includes 3 bits that report exceptions in integer arithmetic operations 12-93

94 PowerPC Register Formats PowerPC processor 12-94

95 Register Organization PowerPC processor Floating-point unit contains additional uservisible registers General bit general-purpose registers These may be used for all floating-point operations Floating-point status and control register Includes bits that control the operation of the floating-point unit and bits that record the status resulting from floating-point operations 12-95

96 FP Status and Control Register PowerPC processor 12-96

97 Register Organization PowerPC processor Branch processing unit Conditional register 8 4-bit condition code fields Link register Can be used in a conditional branch instruction for indirect addressing of the target address Also used for call/return behavior Count The count register can be used to control an iteration loop 12-97

98 Condition Register Interpretation of Bits in Condition Register PowerPC processor 12-98

99 PowerPC Interrupt Table PowerPC processor 12-99

100 Interrupt Processing PowerPC processor Machine state register Fundamental to the interruption of a program is the ability to recover the state of the processor at the time of the interrupt

101 Machine State Register PowerPC processor

102 Interrupt Handling PowerPC processor When interrupts occurs, the following sequence takes place The processor places the address of the instruction to be executed next in the Save/Restore Register 0 (SRR0) The processor copies machine state information from the MSR to the SRR1 The MSR is set to a hardware-defined value specific to the interrupt type The processor transfers control to the appropriate interrupt handler

CPU Structure and Function

CPU Structure and Function Computer Architecture Computer Architecture Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr nizamettinaydin@gmail.com http://www.yildiz.edu.tr/~naydin CPU Structure and Function 1 2 CPU Structure Registers

More information

UNIT- 5. Chapter 12 Processor Structure and Function

UNIT- 5. Chapter 12 Processor Structure and Function UNIT- 5 Chapter 12 Processor Structure and Function CPU Structure CPU must: Fetch instructions Interpret instructions Fetch data Process data Write data CPU With Systems Bus CPU Internal Structure Registers

More information

CPU Structure and Function

CPU Structure and Function CPU Structure and Function Chapter 12 Lesson 17 Slide 1/36 Processor Organization CPU must: Fetch instructions Interpret instructions Fetch data Process data Write data Lesson 17 Slide 2/36 CPU With Systems

More information

CPU Structure and Function. Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition

CPU Structure and Function. Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition CPU Structure and Function Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition CPU must: CPU Function Fetch instructions Interpret/decode instructions Fetch data Process data

More information

William Stallings Computer Organization and Architecture. Chapter 11 CPU Structure and Function

William Stallings Computer Organization and Architecture. Chapter 11 CPU Structure and Function William Stallings Computer Organization and Architecture Chapter 11 CPU Structure and Function CPU Structure CPU must: Fetch instructions Interpret instructions Fetch data Process data Write data Registers

More information

William Stallings Computer Organization and Architecture 8 th Edition. Chapter 12 Processor Structure and Function

William Stallings Computer Organization and Architecture 8 th Edition. Chapter 12 Processor Structure and Function William Stallings Computer Organization and Architecture 8 th Edition Chapter 12 Processor Structure and Function CPU Structure CPU must: Fetch instructions Interpret instructions Fetch data Process data

More information

William Stallings Computer Organization and Architecture

William Stallings Computer Organization and Architecture William Stallings Computer Organization and Architecture Chapter 11 CPU Structure and Function Rev. 3.2.1 (2005-06) by Enrico Nardelli 11-1 CPU Functions CPU must: Fetch instructions Decode instructions

More information

Processing Unit CS206T

Processing Unit CS206T Processing Unit CS206T Microprocessors The density of elements on processor chips continued to rise More and more elements were placed on each chip so that fewer and fewer chips were needed to construct

More information

Processor Structure and Function

Processor Structure and Function WEEK 4 + Chapter 14 Processor Structure and Function + Processor Organization Processor Requirements: Fetch instruction The processor reads an instruction from memory (register, cache, main memory) Interpret

More information

Chapter 14 - Processor Structure and Function

Chapter 14 - Processor Structure and Function Chapter 14 - Processor Structure and Function Luis Tarrataca luis.tarrataca@gmail.com CEFET-RJ L. Tarrataca Chapter 14 - Processor Structure and Function 1 / 94 Table of Contents I 1 Processor Organization

More information

William Stallings Computer Organization and Architecture 10 th Edition Pearson Education, Inc., Hoboken, NJ. All rights reserved.

William Stallings Computer Organization and Architecture 10 th Edition Pearson Education, Inc., Hoboken, NJ. All rights reserved. + William Stallings Computer Organization and Architecture 10 th Edition 2016 Pearson Education, Inc., Hoboken, NJ. All rights reserved. 2 + Chapter 14 Processor Structure and Function + Processor Organization

More information

Author : Dalbir Singh, Computer Science Deptt. CPU Structure and Functions. 1. Processor Organization

Author : Dalbir Singh, Computer Science Deptt. CPU Structure and Functions. 1. Processor Organization Author : Dalbir Singh, Computer Science Deptt. CPU Structure and Functions 1. Processor Organization To understand the organization of the CPU, let us consider the requirements placed on the CPU, the things

More information

Q.1 Explain Computer s Basic Elements

Q.1 Explain Computer s Basic Elements Q.1 Explain Computer s Basic Elements Ans. At a top level, a computer consists of processor, memory, and I/O components, with one or more modules of each type. These components are interconnected in some

More information

UNIT V: CENTRAL PROCESSING UNIT

UNIT V: CENTRAL PROCESSING UNIT UNIT V: CENTRAL PROCESSING UNIT Agenda Basic Instruc1on Cycle & Sets Addressing Instruc1on Format Processor Organiza1on Register Organiza1on Pipeline Processors Instruc1on Pipelining Co-Processors RISC

More information

GUJARAT TECHNOLOGICAL UNIVERSITY MASTER OF COMPUTER APPLICATION SEMESTER: III

GUJARAT TECHNOLOGICAL UNIVERSITY MASTER OF COMPUTER APPLICATION SEMESTER: III GUJARAT TECHNOLOGICAL UNIVERSITY MASTER OF COMPUTER APPLICATION SEMESTER: III Subject Name: Operating System (OS) Subject Code: 630004 Unit-1: Computer System Overview, Operating System Overview, Processes

More information

ASSEMBLY LANGUAGE MACHINE ORGANIZATION

ASSEMBLY LANGUAGE MACHINE ORGANIZATION ASSEMBLY LANGUAGE MACHINE ORGANIZATION CHAPTER 3 1 Sub-topics The topic will cover: Microprocessor architecture CPU processing methods Pipelining Superscalar RISC Multiprocessing Instruction Cycle Instruction

More information

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015 Advanced Parallel Architecture Lesson 3 Annalisa Massini - 2014/2015 Von Neumann Architecture 2 Summary of the traditional computer architecture: Von Neumann architecture http://williamstallings.com/coa/coa7e.html

More information

Chapter 16. Control Unit Operation. Yonsei University

Chapter 16. Control Unit Operation. Yonsei University Chapter 16 Control Unit Operation Contents Micro-Operation Control of the Processor Hardwired Implementation 16-2 Micro-Operations Micro-Operations Micro refers to the fact that each step is very simple

More information

Pipelining, Branch Prediction, Trends

Pipelining, Branch Prediction, Trends Pipelining, Branch Prediction, Trends 10.1-10.4 Topics 10.1 Quantitative Analyses of Program Execution 10.2 From CISC to RISC 10.3 Pipelining the Datapath Branch Prediction, Delay Slots 10.4 Overlapping

More information

Computer Organization and Technology Processor and System Structures

Computer Organization and Technology Processor and System Structures Computer Organization and Technology Processor and System Structures Assoc. Prof. Dr. Wattanapong Kurdthongmee Division of Computer Engineering, School of Engineering and Resources, Walailak University

More information

Module 5 - CPU Design

Module 5 - CPU Design Module 5 - CPU Design Lecture 1 - Introduction to CPU The operation or task that must perform by CPU is: Fetch Instruction: The CPU reads an instruction from memory. Interpret Instruction: The instruction

More information

COMPUTER ORGANIZATION AND DESI

COMPUTER ORGANIZATION AND DESI COMPUTER ORGANIZATION AND DESIGN 5 Edition th The Hardware/Software Interface Chapter 4 The Processor 4.1 Introduction Introduction CPU performance factors Instruction count Determined by ISA and compiler

More information

William Stallings Computer Organization and Architecture

William Stallings Computer Organization and Architecture William Stallings Computer Organization and Architecture Chapter 16 Control Unit Operations Rev. 3.2 (2009-10) by Enrico Nardelli 16-1 Execution of the Instruction Cycle It has many elementary phases,

More information

Running Applications

Running Applications Running Applications Computer Hardware Central Processing Unit (CPU) CPU PC IR MAR MBR I/O AR I/O BR To exchange data with memory Brain of Computer, controls everything Few registers PC (Program Counter):

More information

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015 Advanced Parallel Architecture Lesson 3 Annalisa Massini - Von Neumann Architecture 2 Two lessons Summary of the traditional computer architecture Von Neumann architecture http://williamstallings.com/coa/coa7e.html

More information

Instruction Pipelining Review

Instruction Pipelining Review Instruction Pipelining Review Instruction pipelining is CPU implementation technique where multiple operations on a number of instructions are overlapped. An instruction execution pipeline involves a number

More information

Exception Handling. Precise Exception Handling. Exception Types. Exception Handling Terminology

Exception Handling. Precise Exception Handling. Exception Types. Exception Handling Terminology Precise Handling CprE 581 Computer Systems Architecture Reading: Textbook, Appendix A Handling I/O Internal s Arithmetic overflow Illegal Instruction Memory Address s Protection violation Data alignment

More information

Digital System Design Using Verilog. - Processing Unit Design

Digital System Design Using Verilog. - Processing Unit Design Digital System Design Using Verilog - Processing Unit Design 1.1 CPU BASICS A typical CPU has three major components: (1) Register set, (2) Arithmetic logic unit (ALU), and (3) Control unit (CU) The register

More information

RISC & Superscalar. COMP 212 Computer Organization & Architecture. COMP 212 Fall Lecture 12. Instruction Pipeline no hazard.

RISC & Superscalar. COMP 212 Computer Organization & Architecture. COMP 212 Fall Lecture 12. Instruction Pipeline no hazard. COMP 212 Computer Organization & Architecture Pipeline Re-Cap Pipeline is ILP -Instruction Level Parallelism COMP 212 Fall 2008 Lecture 12 RISC & Superscalar Divide instruction cycles into stages, overlapped

More information

Part One provides a background and context for the remainder of this book.

Part One provides a background and context for the remainder of this book. M01_STAL6329_06_SE_C01.QXD 2/13/08 1:48 PM Page 6 PART ONE Background Part One provides a background and context for the remainder of this book. This part presents the fundamental concepts of computer

More information

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION Introduction :- An exploits the hardware resources of one or more processors to provide a set of services to system users. The OS also manages secondary memory and I/O devices on behalf of its users. So

More information

Main Points of the Computer Organization and System Software Module

Main Points of the Computer Organization and System Software Module Main Points of the Computer Organization and System Software Module You can find below the topics we have covered during the COSS module. Reading the relevant parts of the textbooks is essential for a

More information

There are different characteristics for exceptions. They are as follows:

There are different characteristics for exceptions. They are as follows: e-pg PATHSHALA- Computer Science Computer Architecture Module 15 Exception handling and floating point pipelines The objectives of this module are to discuss about exceptions and look at how the MIPS architecture

More information

MARIE: An Introduction to a Simple Computer

MARIE: An Introduction to a Simple Computer MARIE: An Introduction to a Simple Computer Outline Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution. Understand a simple

More information

PIPELINE AND VECTOR PROCESSING

PIPELINE AND VECTOR PROCESSING PIPELINE AND VECTOR PROCESSING PIPELINING: Pipelining is a technique of decomposing a sequential process into sub operations, with each sub process being executed in a special dedicated segment that operates

More information

UNIT-II. Part-2: CENTRAL PROCESSING UNIT

UNIT-II. Part-2: CENTRAL PROCESSING UNIT Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:

More information

Micro-Operations. execution of a sequence of steps, i.e., cycles

Micro-Operations. execution of a sequence of steps, i.e., cycles Micro-Operations Instruction execution execution of a sequence of steps, i.e., cycles Fetch, Indirect, Execute & Interrupt cycles Cycle - a sequence of micro-operations Micro-operations data transfer between

More information

Basic Execution Environment

Basic Execution Environment Basic Execution Environment 3 CHAPTER 3 BASIC EXECUTION ENVIRONMENT This chapter describes the basic execution environment of an Intel Architecture processor as seen by assembly-language programmers.

More information

UNIT 2 PROCESSORS ORGANIZATION CONT.

UNIT 2 PROCESSORS ORGANIZATION CONT. UNIT 2 PROCESSORS ORGANIZATION CONT. Types of Operand Addresses Numbers Integer/floating point Characters ASCII etc. Logical Data Bits or flags x86 Data Types Operands in 8 bit -Byte 16 bit- word 32 bit-

More information

2.5 Address Space. The IBM 6x86 CPU can directly address 64 KBytes of I/O space and 4 GBytes of physical memory (Figure 2-24).

2.5 Address Space. The IBM 6x86 CPU can directly address 64 KBytes of I/O space and 4 GBytes of physical memory (Figure 2-24). Address Space 2.5 Address Space The IBM 6x86 CPU can directly address 64 KBytes of I/O space and 4 GBytes of physical memory (Figure 2-24). Memory Address Space. Access can be made to memory addresses

More information

Chapter 2: Instructions How we talk to the computer

Chapter 2: Instructions How we talk to the computer Chapter 2: Instructions How we talk to the computer 1 The Instruction Set Architecture that part of the architecture that is visible to the programmer - instruction formats - opcodes (available instructions)

More information

MARIE: An Introduction to a Simple Computer

MARIE: An Introduction to a Simple Computer MARIE: An Introduction to a Simple Computer 4.2 CPU Basics The computer s CPU fetches, decodes, and executes program instructions. The two principal parts of the CPU are the datapath and the control unit.

More information

The CPU and Memory. How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram:

The CPU and Memory. How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram: The CPU and Memory How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram: 1 Registers A register is a permanent storage location within

More information

There are four registers involved in the fetch cycle: MAR, MBR, PC, and IR.

There are four registers involved in the fetch cycle: MAR, MBR, PC, and IR. CS 320 Ch. 20 The Control Unit Instructions are broken down into fetch, indirect, execute, and interrupt cycles. Each of these cycles, in turn, can be broken down into microoperations where a microoperation

More information

Memory Models. Registers

Memory Models. Registers Memory Models Most machines have a single linear address space at the ISA level, extending from address 0 up to some maximum, often 2 32 1 bytes or 2 64 1 bytes. Some machines have separate address spaces

More information

Class Notes. Dr.C.N.Zhang. Department of Computer Science. University of Regina. Regina, SK, Canada, S4S 0A2

Class Notes. Dr.C.N.Zhang. Department of Computer Science. University of Regina. Regina, SK, Canada, S4S 0A2 Class Notes CS400 Part VI Dr.C.N.Zhang Department of Computer Science University of Regina Regina, SK, Canada, S4S 0A2 C. N. Zhang, CS400 83 VI. CENTRAL PROCESSING UNIT 1 Set 1.1 Addressing Modes and Formats

More information

Hardware and Software Architecture. Chapter 2

Hardware and Software Architecture. Chapter 2 Hardware and Software Architecture Chapter 2 1 Basic Components The x86 processor communicates with main memory and I/O devices via buses Data bus for transferring data Address bus for the address of a

More information

Chapter 4. MARIE: An Introduction to a Simple Computer

Chapter 4. MARIE: An Introduction to a Simple Computer Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.

More information

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad Introduction to MS-DOS Debugger DEBUG In this laboratory, we will use DEBUG program and learn how to: 1. Examine and modify the contents of the 8086 s internal registers, and dedicated parts of the memory

More information

Superscalar Processors

Superscalar Processors Superscalar Processors Superscalar Processor Multiple Independent Instruction Pipelines; each with multiple stages Instruction-Level Parallelism determine dependencies between nearby instructions o input

More information

POLITECNICO DI MILANO. Exception handling. Donatella Sciuto:

POLITECNICO DI MILANO. Exception handling. Donatella Sciuto: POLITECNICO DI MILANO Exception handling Donatella Sciuto: donatella.sciuto@polimi.it Interrupts: altering the normal flow of control I i-1 HI 1 program I i HI 2 interrupt handler I i+1 HI n An external

More information

The Purpose of Interrupt

The Purpose of Interrupt Interrupts 3 Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is a hardware-initiated

More information

Chapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics

Chapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics Chapter 4 Objectives Learn the components common to every modern computer system. Chapter 4 MARIE: An Introduction to a Simple Computer Be able to explain how each component contributes to program execution.

More information

8086 Interrupts and Interrupt Responses:

8086 Interrupts and Interrupt Responses: UNIT-III PART -A INTERRUPTS AND PROGRAMMABLE INTERRUPT CONTROLLERS Contents at a glance: 8086 Interrupts and Interrupt Responses Introduction to DOS and BIOS interrupts 8259A Priority Interrupt Controller

More information

icroprocessor istory of Microprocessor ntel 8086:

icroprocessor istory of Microprocessor ntel 8086: Microprocessor A microprocessor is an electronic device which computes on the given input similar to CPU of a computer. It is made by fabricating millions (or billions) of transistors on a single chip.

More information

Operating System Control Structures

Operating System Control Structures Operating System Control Structures Information about the current status of each process and resource Tables are constructed for each entity the operating system manages 26 Memory Tables Allocation of

More information

Computer System Overview OPERATING SYSTEM TOP-LEVEL COMPONENTS. Simplified view: Operating Systems. Slide 1. Slide /S2. Slide 2.

Computer System Overview OPERATING SYSTEM TOP-LEVEL COMPONENTS. Simplified view: Operating Systems. Slide 1. Slide /S2. Slide 2. BASIC ELEMENTS Simplified view: Processor Slide 1 Computer System Overview Operating Systems Slide 3 Main Memory referred to as real memory or primary memory volatile modules 2004/S2 secondary memory devices

More information

Chapter 13 Reduced Instruction Set Computers

Chapter 13 Reduced Instruction Set Computers Chapter 13 Reduced Instruction Set Computers Contents Instruction execution characteristics Use of a large register file Compiler-based register optimization Reduced instruction set architecture RISC pipelining

More information

Minimizing Data hazard Stalls by Forwarding Data Hazard Classification Data Hazards Present in Current MIPS Pipeline

Minimizing Data hazard Stalls by Forwarding Data Hazard Classification Data Hazards Present in Current MIPS Pipeline Instruction Pipelining Review: MIPS In-Order Single-Issue Integer Pipeline Performance of Pipelines with Stalls Pipeline Hazards Structural hazards Data hazards Minimizing Data hazard Stalls by Forwarding

More information

6x86 PROCESSOR Superscalar, Superpipelined, Sixth-generation, x86 Compatible CPU

6x86 PROCESSOR Superscalar, Superpipelined, Sixth-generation, x86 Compatible CPU 1-6x86 PROCESSOR Superscalar, Superpipelined, Sixth-generation, x86 Compatible CPU Product Overview Introduction 1. ARCHITECTURE OVERVIEW The Cyrix 6x86 CPU is a leader in the sixth generation of high

More information

Lecture 5: Instruction Pipelining. Pipeline hazards. Sequential execution of an N-stage task: N Task 2

Lecture 5: Instruction Pipelining. Pipeline hazards. Sequential execution of an N-stage task: N Task 2 Lecture 5: Instruction Pipelining Basic concepts Pipeline hazards Branch handling and prediction Zebo Peng, IDA, LiTH Sequential execution of an N-stage task: 3 N Task 3 N Task Production time: N time

More information

Lecture 4: Instruction Set Design/Pipelining

Lecture 4: Instruction Set Design/Pipelining Lecture 4: Instruction Set Design/Pipelining Instruction set design (Sections 2.9-2.12) control instructions instruction encoding Basic pipelining implementation (Section A.1) 1 Control Transfer Instructions

More information

Microprocessor Architecture

Microprocessor Architecture Microprocessor - 8085 Architecture 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration

More information

CC411: Introduction To Microprocessors

CC411: Introduction To Microprocessors CC411: Introduction To Microprocessors OBJECTIVES this chapter enables the student to: Describe the Intel family of microprocessors from 8085 to Pentium. In terms of bus size, physical memory & special

More information

MICROPROCESSOR ALL IN ONE. Prof. P. C. Patil UOP S.E.COMP (SEM-II)

MICROPROCESSOR ALL IN ONE. Prof. P. C. Patil UOP S.E.COMP (SEM-II) MICROPROCESSOR UOP S.E.COMP (SEM-II) 80386 ALL IN ONE Prof. P. C. Patil Department of Computer Engg Sandip Institute of Engineering & Management Nashik pc.patil@siem.org.in 1 Architecture of 80386 2 ARCHITECTURE

More information

Chapter 3. Top Level View of Computer Function and Interconnection. Yonsei University

Chapter 3. Top Level View of Computer Function and Interconnection. Yonsei University Chapter 3 Top Level View of Computer Function and Interconnection Contents Computer Components Computer Function Interconnection Structures Bus Interconnection PCI 3-2 Program Concept Computer components

More information

Chapter 4. Chapter 4 Objectives. MARIE: An Introduction to a Simple Computer

Chapter 4. Chapter 4 Objectives. MARIE: An Introduction to a Simple Computer Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.

More information

Computer System Overview

Computer System Overview Computer System Overview Operating Systems 2005/S2 1 What are the objectives of an Operating System? 2 What are the objectives of an Operating System? convenience & abstraction the OS should facilitate

More information

eaymanelshenawy.wordpress.com

eaymanelshenawy.wordpress.com Lectures on Memory Interface Designed and Presented by Dr. Ayman Elshenawy Elsefy Dept. of Systems & Computer Eng.. Al-Azhar University Email : eaymanelshenawy@yahoo.com eaymanelshenawy.wordpress.com Chapter

More information

Processors. Young W. Lim. May 12, 2016

Processors. Young W. Lim. May 12, 2016 Processors Young W. Lim May 12, 2016 Copyright (c) 2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version

More information

Control unit. Input/output devices provide a means for us to make use of a computer system. Computer System. Computer.

Control unit. Input/output devices provide a means for us to make use of a computer system. Computer System. Computer. Lecture 6: I/O and Control I/O operations Control unit Microprogramming Zebo Peng, IDA, LiTH 1 Input/Output Devices Input/output devices provide a means for us to make use of a computer system. Computer

More information

Instruction Pipelining

Instruction Pipelining Instruction Pipelining Simplest form is a 3-stage linear pipeline New instruction fetched each clock cycle Instruction finished each clock cycle Maximal speedup = 3 achieved if and only if all pipe stages

More information

Pipelining and Vector Processing

Pipelining and Vector Processing Pipelining and Vector Processing Chapter 8 S. Dandamudi Outline Basic concepts Handling resource conflicts Data hazards Handling branches Performance enhancements Example implementations Pentium PowerPC

More information

Instruction Pipelining

Instruction Pipelining Instruction Pipelining Simplest form is a 3-stage linear pipeline New instruction fetched each clock cycle Instruction finished each clock cycle Maximal speedup = 3 achieved if and only if all pipe stages

More information

Computer organization by G. Naveen kumar, Asst Prof, C.S.E Department 1

Computer organization by G. Naveen kumar, Asst Prof, C.S.E Department 1 Pipelining and Vector Processing Parallel Processing: The term parallel processing indicates that the system is able to perform several operations in a single time. Now we will elaborate the scenario,

More information

Chapter 1 Computer System Overview

Chapter 1 Computer System Overview Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Ninth Edition By William Stallings Operating System Exploits the hardware resources of one or more processors Provides

More information

Chapter 11. Instruction Sets: Addressing Modes and Formats. Yonsei University

Chapter 11. Instruction Sets: Addressing Modes and Formats. Yonsei University Chapter 11 Instruction Sets: Addressing Modes and Formats Contents Addressing Pentium and PowerPC Addressing Modes Instruction Formats Pentium and PowerPC Instruction Formats 11-2 Common Addressing Techniques

More information

1.Explain with the diagram IVT of 80X86. Ans-

1.Explain with the diagram IVT of 80X86. Ans- 1.Explain with the diagram IVT of 80X86 In 8086 1 kb from 00000 to 003ff are reserved for interrupt routine as shown in figure known as interrupt vector. It supports 256 interrupt procedures containing

More information

Chapter 1 Computer System Overview

Chapter 1 Computer System Overview Operating Systems: Internals and Design Principles Chapter 1 Computer System Overview Seventh Edition By William Stallings Objectives of Chapter To provide a grand tour of the major computer system components:

More information

Chapter 4. The Processor

Chapter 4. The Processor Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified

More information

Full Datapath. Chapter 4 The Processor 2

Full Datapath. Chapter 4 The Processor 2 Pipelining Full Datapath Chapter 4 The Processor 2 Datapath With Control Chapter 4 The Processor 3 Performance Issues Longest delay determines clock period Critical path: load instruction Instruction memory

More information

Top-Level View of Computer Organization

Top-Level View of Computer Organization Top-Level View of Computer Organization Bởi: Hoang Lan Nguyen Computer Component Contemporary computer designs are based on concepts developed by John von Neumann at the Institute for Advanced Studies

More information

DC57 COMPUTER ORGANIZATION JUNE 2013

DC57 COMPUTER ORGANIZATION JUNE 2013 Q2 (a) How do various factors like Hardware design, Instruction set, Compiler related to the performance of a computer? The most important measure of a computer is how quickly it can execute programs.

More information

MICROPROCESSOR MICROPROCESSOR ARCHITECTURE. Prof. P. C. Patil UOP S.E.COMP (SEM-II)

MICROPROCESSOR MICROPROCESSOR ARCHITECTURE. Prof. P. C. Patil UOP S.E.COMP (SEM-II) MICROPROCESSOR UOP S.E.COMP (SEM-II) 80386 MICROPROCESSOR ARCHITECTURE Prof. P. C. Patil Department of Computer Engg Sandip Institute of Engineering & Management Nashik pc.patil@siem.org.in 1 Introduction

More information

Computer Architecture and Organization. Instruction Sets: Addressing Modes and Formats

Computer Architecture and Organization. Instruction Sets: Addressing Modes and Formats Computer Architecture and Organization Instruction Sets: Addressing Modes and Formats Addressing Modes Immediate Direct Indirect Register Register Indirect Displacement (Indexed) Stack Immediate Addressing

More information

MICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN

MICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN MICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN ROAD MAP SDK-86 Intel 8086 Features 8086 Block Diagram 8086 Architecture Bus Interface Unit Execution Unit 8086 Architecture 8086 Programmer s Model Flag Register

More information

CSE 410. Operating Systems

CSE 410. Operating Systems CSE 410 Operating Systems Handout: syllabus 1 Today s Lecture Course organization Computing environment Overview of course topics 2 Course Organization Course website http://www.cse.msu.edu/~cse410/ Syllabus

More information

East Tennessee State University Department of Computer and Information Sciences CSCI 4717 Computer Architecture TEST 3 for Fall Semester, 2005

East Tennessee State University Department of Computer and Information Sciences CSCI 4717 Computer Architecture TEST 3 for Fall Semester, 2005 Points missed: Student's Name: Total score: /100 points East Tennessee State University Department of Computer and Information Sciences CSCI 4717 Computer Architecture TEST 3 for Fall Semester, 2005 Section

More information

Architecture of 8085 microprocessor

Architecture of 8085 microprocessor Architecture of 8085 microprocessor 8085 consists of various units and each unit performs its own functions. The various units of a microprocessor are listed below Accumulator Arithmetic and logic Unit

More information

Instruction Set Principles and Examples. Appendix B

Instruction Set Principles and Examples. Appendix B Instruction Set Principles and Examples Appendix B Outline What is Instruction Set Architecture? Classifying ISA Elements of ISA Programming Registers Type and Size of Operands Addressing Modes Types of

More information

CSC 553 Operating Systems

CSC 553 Operating Systems CSC 553 Operating Systems Lecture 1- Computer System Overview Operating System Exploits the hardware resources of one or more processors Provides a set of services to system users Manages secondary memory

More information

CPE300: Digital System Architecture and Design

CPE300: Digital System Architecture and Design CPE300: Digital System Architecture and Design Fall 2011 MW 17:30-18:45 CBC C316 Arithmetic Unit 10032011 http://www.egr.unlv.edu/~b1morris/cpe300/ 2 Outline Recap Chapter 3 Number Systems Fixed Point

More information

Major Requirements of an OS

Major Requirements of an OS Process CSCE 351: Operating System Kernels Major Requirements of an OS Interleave the execution of several processes to maximize processor utilization while providing reasonable response time Allocate

More information

Blog -

Blog - . Instruction Codes Every different processor type has its own design (different registers, buses, microoperations, machine instructions, etc) Modern processor is a very complex device It contains Many

More information

Interrupts. Chapter 20 S. Dandamudi. Outline. Exceptions

Interrupts. Chapter 20 S. Dandamudi. Outline. Exceptions Interrupts Chapter 20 S. Dandamudi Outline What are interrupts? Types of interrupts Software interrupts Hardware interrupts Exceptions Interrupt processing Protected mode Real mode Software interrupts

More information

Chapter 17. Microprogrammed Control. Yonsei University

Chapter 17. Microprogrammed Control. Yonsei University Chapter 17 Microprogrammed Control Contents Basic Concepts Microinstruction Sequencing Microinstruction Execution TI 8800 Applications of Microprogramming 17-2 Introduction Basic Concepts An alternative

More information

Computer Architecture

Computer Architecture Computer Architecture Lecture 1: Digital logic circuits The digital computer is a digital system that performs various computational tasks. Digital computers use the binary number system, which has two

More information

Topics in computer architecture

Topics in computer architecture Topics in computer architecture Sun Microsystems SPARC P.J. Drongowski SandSoftwareSound.net Copyright 1990-2013 Paul J. Drongowski Sun Microsystems SPARC Scalable Processor Architecture Computer family

More information

Chapter 3 : Control Unit

Chapter 3 : Control Unit 3.1 Control Memory Chapter 3 Control Unit The function of the control unit in a digital computer is to initiate sequences of microoperations. When the control signals are generated by hardware using conventional

More information

Chapter 4. Chapter 4 Objectives

Chapter 4. Chapter 4 Objectives Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.

More information