Lecture 13: Exceptions and Interrupts
|
|
- Colleen Hood
- 5 years ago
- Views:
Transcription
1 Lectre 13: Eceptions and Interrpts S 10 L13 1 James C. Hoe Dept of ECE, CU arch 1, 2010 Annoncements: Handots: Spring break is almost here Check grades on Blackboard idterm 1 graded Handot #9: Lab 3 (on Blackboard) Eceptions and Interrpts A systematic way to handle eceptional conditions that are relatively rare, bt mst be detected and acted pon qickly instrctions may fail and cannot complete eternal I/O devices may need servicing qantm epiration in a time shared system Option 1: write every program with continos checks (a.k.a. polling) for every possible contingency acceptable for simple embedded systems (toaster) Option 2: write normal programs for the best case scenario where nothing nsal happens detect eceptional conditions in HW transparently transfer control to an eception handler that knows how to resolve the condition and then back to yor program S 10 L13 2
2 Interrpt Control Transfer An interrpt is an nplanned fnction call to a system rotine (aka, the interrpt handler) Unlike a normal fnction call, the interrpted thread cannot anticipate the control transfer or prepare for it in any way Control is later retrned to the main thread at the interrpted instrction The control transfer to the interrpt handler and back mst be 100% transparent to the interrpted thread!!! i 1 H 1 i 2 H 2 i 3. H n S 10 L13 3 Types of Interrpts S 10 L13 4 Synchronos Interrpts (a.k.a. eceptions) eceptional conditions tied to a particlar instrction e.g. illegal opcode, illegal operand, virtal memory management falts the falting instrction cannot be finished no forward progress nless handled immediately Asynchronos Interrpts (a.k.a. interrpts) eternal events not tied to a particlar instrction I/O events, timer events some fleibility on when to handle it cannot postpone forever or things start to fall on the floor System Call/Trap Instrction an instrction whose only prpose is to raise an eception whatever for?
3 Interrpt Sorces S 10 L13 5 l devices.) CPU interrpt control logic datapath failed instrctions system call instrctions Eceptions, a.k.a. synchronos interrpts IRQ lines from eterna (I/O, DA, timers, etc. Interrpts, a.k.a. asynchronos interrpts eternal interrpts Virtalization and Protection S 10 L13 6 odern OS spports time shared mltiprocessing bt each ser level process still thinks it is alone each process sees a private set of ser level architectral states that can be modified by the serlevel instrction set each process cannot see or maniplate (directly) state and devices otside of this abstraction OS implements and manages a critical set of fnctionality keep low level details ot of the ser level process protect the ser level process from each other and itself Do yo want to access/manage harddisk directly? Do yo trst yor bddy or yorself to access the harddisk directly?
4 Privilege Levels S 10 L13 7 The OS mst somehow be more powerfl to create and maintain sch an abstraction, hence a separate privileged (akaprotectedor or kernel) mode additional architectral states and instrctions, in particlar those controlling virtalization/ protection/isolation the kernel code rnning in the privileged mode has access to the complete bare hardware system ser level level state and instrctions privileged level hypervisor level for virtalizing mltiple OSs Control and Privilege Transfer S 10 L13 8 User level code never rns in the privileged mode Processor enters the privileged mode only on interrpts ser code srrenders control to a handler in the OS kernel The handler restores privilege level back to ser mode before retrning control to the ser code i 1 i 2 i 3 H 1 H 2. H n
5 S 10 L13 9 Implementing Interrpts Precise Interrpt/Eception Seqential Code Semantics Overlapped Eection S 10 L13 10 i 1 i 2 i 1 : i 2 : i 3 : i 3 A precise interrpt appears (to the interrpt handler) to take place eactly between two instrctions older instrctions finished completely yonger instrctions as if never happened on synchronos interrpts, eection stops jst before the falting instrction
6 S 10 L13 11 Stopping and Restarting a Pipeline t 0 t 1 t 2 t 3 t 4 t 5 t 6 t 7 t 8 t 9 t 10 IF I 0 I 1 I 2 I 3 I 4 I h I h+1 I h+2 I h+3 ID I 0 I 1 I 2 I 3 I h I h+1 I h+2 EX I 0 I 1 I 2 I h I h+1 E I 0 I 1 I 2 I h WB I 0 I 1 I 2 What if I 0, I 1, I 2, I 3 and I 4 all generate eceptions in t 4? How wold things look different for asynchronos interrpts? S 10 L13 12 Eception Sorces in Different Stages IF instrction memory address/protection falt ID illegal opcode trap to SW emlation of nimplemented instrctions system call instrction (a SW reqested eception) EX invalid reslts: overflow, divide by zero, etc E data memory address/protection falt WB nothing can stop an instrction now We can associate async interrpts (I/O) with any instrction/stage we like
7 Pipeline Flsh for Eceptions S 10 L13 13 IF.Flsh ID.Flsh EX.Flsh Hazard detection nit ID/EX WB 0 EX/E IF/ID Control 0 EX Case 0 WB E/WB WB PC 4 Instrction memory Shift left 2 Registers = Ecept PC ALU Data memory Sign etend Figre from [P&H CO&D, COPYRIGHT 2004 Elsevier. ALL RIGHTS RESERVED.] Forwarding nit carry PC in the pipeline with each inst. new pipeline flsh points S 10 L13 14 IPS Interrpt Architectre
8 IPS Interrpt Architectre S 10 L13 15 Privileged system control registers Eception Program Conter (EPC, CR14): which instrction i did we stop on Interrpt Case Register (CR 13): what cased the interrpt Interrpt Stats Register (CR 12): enable and disable interrpts, set privilege modes Loaded atomatically on interrpt transfer events Also accessed by the move from/to co processor 0 instrction: mfc0 Ry, CR and mtc0 Ry, CR Figres from [P&H CO&D, COPYRIGHT 2004 Elsevier. ALL RIGHTS RESERVED.] IPS Interrpt Architectre S 10 L13 16 On an interrpt transfer, the CPU hardware saves the interrpt address to EPC can t jst leave frozen in the PC: overwritten immediately can t se r31 as in a fnction call: need to save ser vale In general, CPU hardware mst saves any sch information that cannot be saved and restored in software by the interrpt handler (very few sch things) For eample, the GPR can be managed in SW by the interrpt handler sing a callee saved convention however, r26 and r27 are reserved by convention to be available to the kernel immediately at the start and the end of an interrpt handler
9 Interrpt Servicing S 10 L13 17 On an interrpt transfer, the CPU hardware records the case of the interrpt in a privileged registers (Interrpt Case Register) Option 1: Control is transfer to a pre fied defalt interrpt handler address this initial handler eamines the case and branches to the appropriate handler sbrotine to do the work this address is protected from ser level process so one cannot jst jmp or branch to it Option 2: Vectored Interrpt a bank of privileged registers to hold a separate specialized handler address for each interrpt sorce On an interrpt, hardware transfer control directly to the appropriate handler to save interrpt overhead IPS ses a 7 instrction handler for TLB miss Eample of Cases S 10 L13 18 Figre from [P&H CO&D, COPYRIGHT 2004 Elsevier. ALL RIGHTS RESERVED.]
10 Handler Eamples S 10 L13 19 On asynchronos interrpts, device specific handlers are invoked to service the I/O devices On eceptions, kernel handlers are invoked to either correct the falting condition and contine the program (e.g., emlate the missing FP fnctionality, pdate virtal memory management), or signal back to the ser process if a ser level handler fnction is registered, or kill the process if the eception cannot be corrected System call is a special kind of fnction call from ser process to kernel level service rotines Retrning from Interrpt Software restores all architectral state saved at the start of the interrpt rotine S 10 L13 20 IPS32 ses a special jmp instrction (ERET) to atomically restore the atomatically saved CPU states restore the privilege level jmp back to the interrpted address in EPC IPS R2000 sed a pair of instrctions jr r26 // jmp to a copy of EPC in r26 rfe // restore from eception mode // mst be sed in the delay slot!!
11 Branch Delay Slot and RFE What if the falting address is a branch delay slot? simply jmping back to the falting address won t contine correctly if the preceding branch was taken we didn t save enogh information to do the right thing IPS s soltion the CPU HW makes a note (in the Case register) if the falting address captred is in a delay slot in these cases, the handler retrns to the preceding branch instrction which gets eected twice (as the last instrction before and first instrction after) Generally harmless ecept JALR r31 eplicitly disallowed by the IPS ISA think abot what wold happen in that case S 10 L13 21 An Etremely Short Handler S 10 L13 22 _handler_shortest: # no prologe needed... short handler body... # can se only r26 and r27 # interrpt not re enabled for # something really qick # epiloge mfc0 r26,epc jr 26 rfe # get falting PC # jmp to retry falting PC # restore from eception mode Note: Yo can find more eamples in the book CD. If yo are really serios abot it, take a look inside Lin sorce. It is not too hard to figre ot once yo know what to look for.
12 A Short Handler _handler_short: # prologe addi sp, sp 08 # allocate stack space (8 byte) sw r8, 00(sp) # back p r8 and r9 for se in body sw r9, 04(sp) # S 10 L short handler body... # can se r26, r27, and r8, r9 # interrpt not re enabled # epiloge lw r8, 00(sp) # restore r8, r9 lw r9, 04(sp) # addi sp, sp, 08 # restore stack pointer mfc0 r26,epc # get EPC j r26 # jmp to retry EPC rfe # restore from eception mode Nesting Interrpts S 10 L13 24 On an interrpt control transfer, frther asynchronos interrpts are disabled atomatically another interrpt wold overwrite the contents of the EPC and Interrpt Case and Stats Registers the handler mst be careflly written to not generate synchronos eceptions itself dring this window of vlnerability For long rnning handlers, interrpt mst be re enabled to not missed additional interrpts the handler mst save the contents of EPC/Case/Stats to memory (stack) before re enabling asynchronos interrpt once interrpts are re enabled, EPC/Case/Stats is clobbered by the net interrpt (contents appear to change for no reason)
13 Interrpt Priority S 10 L13 25 Asynchronos interrpt sorces are ordered by priorities higher priorities interrpts are more timing critical if mltiple interrpts are triggered, the handler handles the highest priority interrpt first Interrpts from different priorities can be selectively disabled by setting the mask in the Stats register (actally a SW convention in IPS) When servicing a particlar priority interrpt, the handler only re enable higher priority interrpts higher priority interrpt won t get delayed Re enabling same/lower priority interrpts may lead to an infinite loop if a device interrpts repeatedly Nestable Handler _handler_nest: # prologe addi sp, sp, 08 # allocate stack space for EPC mfc0 r26, epc # get EPC sw r26, 00( 00(sp) # store EPC onto stack sw r8, 04(sp) # allocate a register for se later addi r26, r0, 0405 # set interrpt enable bit mtc0 r26, stats # write into stats reg S 10 L interrptible # cold free p more registers longer handler body... # to stack if needed # epiloge addi r8, r0, 0404 mtc0 r8, stats ld r26, 00(sp) ld r8, 04(sp) addi sp, sp, 08 j r26 rfe # clear interrpt enable bit # write into stats reg # get EPC back from stack # restore r8 # restore stack pointer # jmp to retry EPC # restore from eception mode
Lecture 11: Interrupt and Exception. James C. Hoe Department of ECE Carnegie Mellon University
18 447 Lecture 11: Interrupt and Exception James C. Hoe Department of ECE Carnegie Mellon University 18 447 S18 L11 S1, James C. Hoe, CMU/ECE/CALCM, 2018 Your goal today Housekeeping first peek outside
More informationCS 153 Design of Operating Systems
CS 153 Design of Operating Systems Spring 18 Lectre 3: OS model and Architectral Spport Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Last time/today
More informationExceptions and interrupts
Eceptions and interrpts An eception or interrpt is an nepected event that reqires the CPU to pase or stop the crrent program. Eception handling is the hardware analog of error handling in software. Classes
More informationTDT4255 Friday the 21st of October. Real world examples of pipelining? How does pipelining influence instruction
Review Friday the 2st of October Real world eamples of pipelining? How does pipelining pp inflence instrction latency? How does pipelining inflence instrction throghpt? What are the three types of hazard
More informationChapter 3 & Appendix C Pipelining Part A: Basic and Intermediate Concepts
CS359: Compter Architectre Chapter 3 & Appendi C Pipelining Part A: Basic and Intermediate Concepts Yanyan Shen Department of Compter Science and Engineering Shanghai Jiao Tong University 1 Otline Introdction
More informationEXAMINATIONS 2010 END OF YEAR NWEN 242 COMPUTER ORGANIZATION
EXAINATIONS 2010 END OF YEAR COPUTER ORGANIZATION Time Allowed: 3 Hors (180 mintes) Instrctions: Answer all qestions. ake sre yor answers are clear and to the point. Calclators and paper foreign langage
More informationReview. A single-cycle MIPS processor
Review If three instrctions have opcodes, 7 and 5 are they all of the same type? If we were to add an instrction to IPS of the form OD $t, $t2, $t3, which performs $t = $t2 OD $t3, what wold be its opcode?
More informationEXAMINATIONS 2003 END-YEAR COMP 203. Computer Organisation
EXAINATIONS 2003 COP203 END-YEAR Compter Organisation Time Allowed: 3 Hors (180 mintes) Instrctions: Answer all qestions. There are 180 possible marks on the eam. Calclators and foreign langage dictionaries
More informationProf. Kozyrakis. 1. (10 points) Consider the following fragment of Java code:
EE8 Winter 25 Homework #2 Soltions De Thrsday, Feb 2, 5 P. ( points) Consider the following fragment of Java code: for (i=; i
More informationThe single-cycle design from last time
lticycle path Last time we saw a single-cycle path and control nit for or simple IPS-based instrction set. A mlticycle processor fies some shortcomings in the single-cycle CPU. Faster instrctions are not
More informationThe extra single-cycle adders
lticycle Datapath As an added bons, we can eliminate some of the etra hardware from the single-cycle path. We will restrict orselves to sing each fnctional nit once per cycle, jst like before. Bt since
More informationPipelining. Chapter 4
Pipelining Chapter 4 ake processor rns faster Pipelining is an implementation techniqe in which mltiple instrctions are overlapped in eection Key of making processor fast Pipelining Single cycle path we
More information1048: Computer Organization
48: Compter Organization Lectre 5 Datapath and Control Lectre5B - mlticycle implementation (cwli@twins.ee.nct.ed.tw) 5B- Recap: A Single-Cycle Processor PCSrc 4 Add Shift left 2 Add ALU reslt PC address
More informationThe final datapath. M u x. Add. 4 Add. Shift left 2. PCSrc. RegWrite. MemToR. MemWrite. Read data 1 I [25-21] Instruction. Read. register 1 Read.
The final path PC 4 Add Reg Shift left 2 Add PCSrc Instrction [3-] Instrction I [25-2] I [2-6] I [5 - ] register register 2 register 2 Registers ALU Zero Reslt ALUOp em Data emtor RegDst ALUSrc em I [5
More informationChapter 6: Pipelining
CSE 322 COPUTER ARCHITECTURE II Chapter 6: Pipelining Chapter 6: Pipelining Febrary 10, 2000 1 Clothes Washing CSE 322 COPUTER ARCHITECTURE II The Assembly Line Accmlate dirty clothes in hamper Place in
More informationReview: Computer Organization
Review: Compter Organization Pipelining Chans Y Landry Eample Landry Eample Ann, Brian, Cathy, Dave each have one load of clothes to wash, dry, and fold Washer takes 3 mintes A B C D Dryer takes 3 mintes
More information1048: Computer Organization
8: Compter Organization Lectre 6 Pipelining Lectre6 - pipelining (cwli@twins.ee.nct.ed.tw) 6- Otline An overview of pipelining A pipelined path Pipelined control Data hazards and forwarding Data hazards
More informationPART I: Adding Instructions to the Datapath. (2 nd Edition):
EE57 Instrctor: G. Pvvada ===================================================================== Homework #5b De: check on the blackboard =====================================================================
More informationLecture 7. Building A Simple Processor
Lectre 7 Bilding A Simple Processor Christos Kozyrakis Stanford University http://eeclass.stanford.ed/ee8b C. Kozyrakis EE8b Lectre 7 Annoncements Upcoming deadlines Lab is de today Demo by 5pm, report
More informationLecture 9: Microcontrolled Multi-Cycle Implementations
8-447 Lectre 9: icroled lti-cycle Implementations James C. Hoe Dept of ECE, CU Febrary 8, 29 S 9 L9- Annoncements: P&H Appendi D Get started t on Lab Handots: Handot #8: Project (on Blackboard) Single-Cycle
More informationOverview of Pipelining
EEC 58 Compter Architectre Pipelining Department of Electrical Engineering and Compter Science Cleveland State University Fndamental Principles Overview of Pipelining Pipelined Design otivation: Increase
More informationCS 251, Winter 2019, Assignment % of course mark
CS 25, Winter 29, Assignment.. 3% of corse mark De Wednesday, arch 3th, 5:3P Lates accepted ntil Thrsday arch th, pm with a 5% penalty. (7 points) In the diagram below, the mlticycle compter from the corse
More informationQuiz #1 EEC 483, Spring 2019
Qiz # EEC 483, Spring 29 Date: Jan 22 Name: Eercise #: Translate the following instrction in C into IPS code. Eercise #2: Translate the following instrction in C into IPS code. Hint: operand C is stored
More informationEnhanced Performance with Pipelining
Chapter 6 Enhanced Performance with Pipelining Note: The slides being presented represent a mi. Some are created by ark Franklin, Washington University in St. Lois, Dept. of CSE. any are taken from the
More informationComputer Architecture
Compter Architectre Lectre 4: Intro to icroarchitectre: Single- Cycle Dr. Ahmed Sallam Sez Canal University Spring 25 Based on original slides by Prof. Onr tl Review Compter Architectre Today and Basics
More informationCS 251, Winter 2018, Assignment % of course mark
CS 25, Winter 28, Assignment 4.. 3% of corse mark De Wednesday, arch 7th, 4:3P Lates accepted ntil Thrsday arch 8th, am with a 5% penalty. (6 points) In the diagram below, the mlticycle compter from the
More informationCS 153 Design of Operating Systems Spring 18
CS 153 Design of Operating Systems Spring 18 Midterm Review Midterm in class on Friday (May 4) Covers material from arch spport to deadlock Based pon lectre material and modles of the book indicated on
More informationComputer Architecture
Compter Architectre Lectre 4: Intro to icroarchitectre: Single- Cycle Dr. Ahmed Sallam Sez Canal University Based on original slides by Prof. Onr tl Review Compter Architectre Today and Basics (Lectres
More informationCS 153 Design of Operating Systems Spring 18
CS 153 Design of Operating Systems Spring 18 Lectre 8: Threads Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Processes P1 P2 Recall that Bt OS A process
More informationThe multicycle datapath. Lecture 10 (Wed 10/15/2008) Finite-state machine for the control unit. Implementing the FSM
Lectre (Wed /5/28) Lab # Hardware De Fri Oct 7 HW #2 IPS programming, de Wed Oct 22 idterm Fri Oct 2 IorD The mlticycle path SrcA Today s objectives: icroprogramming Etending the mlti-cycle path lti-cycle
More informationComputer Architecture Chapter 5. Fall 2005 Department of Computer Science Kent State University
Compter Architectre Chapter 5 Fall 25 Department of Compter Science Kent State University The Processor: Datapath & Control Or implementation of the MIPS is simplified memory-reference instrctions: lw,
More informationLecture 10: Pipelined Implementations
U 8-7 S 9 L- 8-7 Lectre : Pipelined Implementations James. Hoe ept of EE, U Febrary 23, 29 nnoncements: Project is de this week idterm graded, d reslts posted Handots: H9 Homework 3 (on lackboard) Graded
More informationLecture 6: Microprogrammed Multi Cycle Implementation. James C. Hoe Department of ECE Carnegie Mellon University
8 447 Lectre 6: icroprogrammed lti Cycle Implementation James C. Hoe Department of ECE Carnegie ellon University 8 447 S8 L06 S, James C. Hoe, CU/ECE/CALC, 208 Yor goal today Hosekeeping nderstand why
More informationComputer Architecture. Lecture 6: Pipelining
Compter Architectre Lectre 6: Pipelining Dr. Ahmed Sallam Based on original slides by Prof. Onr tl Agenda for Today & Net Few Lectres Single-cycle icroarchitectres lti-cycle and icroprogrammed icroarchitectres
More informationEEC 483 Computer Organization
EEC 83 Compter Organization Chapter.6 A Pipelined path Chans Y Pipelined Approach 2 - Cycle time, No. stages - Resorce conflict E E A B C D 3 E E 5 E 2 3 5 2 6 7 8 9 c.y9@csohio.ed Resorces sed in 5 Stages
More informationReview Multicycle: What is Happening. Controlling The Multicycle Design
Review lticycle: What is Happening Reslt Zero Op SrcA SrcB Registers Reg Address emory em Data Sign etend Shift left Sorce A B Ot [-6] [5-] [-6] [5-] [5-] Instrction emory IR RegDst emtoreg IorD em em
More informationWhat do we have so far? Multi-Cycle Datapath
What do we have so far? lti-cycle Datapath CPI: R-Type = 4, Load = 5, Store 4, Branch = 3 Only one instrction being processed in datapath How to lower CPI frther? #1 Lec # 8 Spring2 4-11-2 Pipelining pipelining
More information1048: Computer Organization
48: Compter Organization Lectre 5 Datapath and Control Lectre5A - simple implementation (cwli@twins.ee.nct.ed.tw) 5A- Introdction In this lectre, we will try to implement simplified IPS which contain emory
More informationCSE 141 Computer Architecture Summer Session I, Lectures 10 Advanced Topics, Memory Hierarchy and Cache. Pramod V. Argade
CSE 141 Compter Architectre Smmer Session I, 2004 Lectres 10 Advanced Topics, emory Hierarchy and Cache Pramod V. Argade CSE141: Introdction to Compter Architectre Instrctor: TA: Pramod V. Argade (p2argade@cs.csd.ed)
More informationEEC 483 Computer Organization. Branch (Control) Hazards
EEC 483 Compter Organization Section 4.8 Branch Hazards Section 4.9 Exceptions Chans Y Branch (Control) Hazards While execting a previos branch, next instrction address might not yet be known. s n i o
More informationCS 251, Spring 2018, Assignment 3.0 3% of course mark
CS 25, Spring 28, Assignment 3. 3% of corse mark De onday, Jne 25th, 5:3 P. (5 points) Consider the single-cycle compter shown on page 6 of this assignment. Sppose the circit elements take the following
More informationHardware Design Tips. Outline
Hardware Design Tips EE 36 University of Hawaii EE 36 Fall 23 University of Hawaii Otline Verilog: some sbleties Simlators Test Benching Implementing the IPS Actally a simplified 6 bit version EE 36 Fall
More informationChapter 6 Enhancing Performance with. Pipelining. Pipelining. Pipelined vs. Single-Cycle Instruction Execution: the Plan. Pipelining: Keep in Mind
Pipelining hink of sing machines in landry services Chapter 6 nhancing Performance with Pipelining 6 P 7 8 9 A ime ask A B C ot pipelined Assme 3 min. each task wash, dry, fold, store and that separate
More informationInstruction fetch. MemRead. IRWrite ALUSrcB = 01. ALUOp = 00. PCWrite. PCSource = 00. ALUSrcB = 00. R-type completion
. (Chapter 5) Fill in the vales for SrcA, SrcB, IorD, Dst and emto to complete the Finite State achine for the mlti-cycle datapath shown below. emory address comptation 2 SrcA = SrcB = Op = fetch em SrcA
More informationCS 153 Design of Operating Systems Spring 18
CS 53 Design of Operating Systems Spring 8 Lectre 2: Virtal Memory Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Recap: cache Well-written programs exhibit
More informationChapter 6: Pipelining
Chapter 6: Pipelining Otline An overview of pipelining A pipelined path Pipelined control Data hazards and forwarding Data hazards and stalls Branch hazards Eceptions Sperscalar and dynamic pipelining
More informationSolutions for Chapter 6 Exercises
Soltions for Chapter 6 Eercises Soltions for Chapter 6 Eercises 6. 6.2 a. Shortening the ALU operation will not affect the speedp obtained from pipelining. It wold not affect the clock cycle. b. If the
More information4.13 Advanced Topic: An Introduction to Digital Design Using a Hardware Design Language 345.e1
.3 Advanced Topic: An Introdction to Digital Design Using a Hardware Design Langage 35.e.3 Advanced Topic: An Introdction to Digital Design Using a Hardware Design Langage to Describe and odel a Pipeline
More informationCS 153 Design of Operating Systems Spring 18
CS 153 Design of Operating Systems Spring 18 Lectre 9: Synchronization (1) Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Cooperation between Threads
More informationWinter 2013 MIDTERM TEST #2 Wednesday, March 20 7:00pm to 8:15pm. Please do not write your U of C ID number on this cover page.
page of 7 University of Calgary Departent of Electrical and Copter Engineering ENCM 369: Copter Organization Lectre Instrctors: Steve Noran and Nor Bartley Winter 23 MIDTERM TEST #2 Wednesday, March 2
More informationCS 153 Design of Operating Systems
CS 53 Design of Operating Systems Spring 8 Lectre 6: Paging Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Some slides modified from originals by Dave
More informationEMC ViPR. User Guide. Version
EMC ViPR Version 1.1.0 User Gide 302-000-481 01 Copyright 2013-2014 EMC Corporation. All rights reserved. Pblished in USA. Pblished Febrary, 2014 EMC believes the information in this pblication is accrate
More informationComp 303 Computer Architecture A Pipelined Datapath Control. Lecture 13
Comp 33 Compter Architectre A Pipelined path Lectre 3 Pipelined path with Signals PCSrc IF/ ID ID/ EX EX / E E / Add PC 4 Address Instrction emory RegWr ra rb rw Registers bsw [5-] [2-6] [5-] bsa bsb Sign
More informationCS 153 Design of Operating Systems Spring 18
CS 153 Design of Operating Systems Spring 18 Lectre 15: Virtal Address Space Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian OS Abstractions Applications
More informationEE 457 Unit 8. Exceptions What Happens When Things Go Wrong
1 EE 457 Unit 8 Exceptions What Happens When Things Go Wrong 2 What are Exceptions? Exceptions are rare events triggered by the hardware and forcing the processor to execute a software handler HW Interrupts
More informationInstruction Pipelining is the use of pipelining to allow more than one instruction to be in some stage of execution at the same time.
Pipelining Pipelining is the se of pipelining to allow more than one instrction to be in some stage of eection at the same time. Ferranti ATLAS (963): Pipelining redced the average time per instrction
More informationPS Midterm 2. Pipelining
PS idterm 2 Pipelining Seqential Landry 6 P 7 8 9 idnight Time T a s k O r d e r A B C D 3 4 2 3 4 2 3 4 2 3 4 2 Seqential landry takes 6 hors for 4 loads If they learned pipelining, how long wold landry
More informationLab 8 (All Sections) Prelab: ALU and ALU Control
Lab 8 (All Sections) Prelab: and Control Name: Sign the following statement: On my honor, as an Aggie, I have neither given nor received nathorized aid on this academic work Objective In this lab yo will
More informationCAPL Scripting Quickstart
CAPL Scripting Qickstart CAPL (Commnication Access Programming Langage) For CANalyzer and CANoe V1.01 2015-12-03 Agenda Important information before getting started 3 Visal Seqencer (GUI based programming
More informationCS 251, Winter 2018, Assignment % of course mark
CS 25, Winter 28, Assignment 3.. 3% of corse mark De onday, Febrary 26th, 4:3 P Lates accepted ntil : A, Febrary 27th with a 5% penalty. IEEE 754 Floating Point ( points): (a) (4 points) Complete the following
More informationComputer Architecture Lecture 6: Multi-cycle Microarchitectures. Prof. Onur Mutlu Carnegie Mellon University Spring 2012, 2/6/2012
8-447 Compter Architectre Lectre 6: lti-cycle icroarchitectres Prof. Onr tl Carnegie ellon University Spring 22, 2/6/22 Reminder: Homeworks Homework soltions Check and stdy the soltions! Learning now is
More informationWhat are Exceptions? EE 457 Unit 8. Exception Processing. Exception Examples 1. Exceptions What Happens When Things Go Wrong
8. 8.2 What are Exceptions? EE 457 Unit 8 Exceptions What Happens When Things Go Wrong Exceptions are rare events triggered by the hardware and forcing the processor to execute a software handler Similar
More informationEEC 483 Computer Organization
EEC 483 Compter Organization Chapter 4.4 A Simple Implementation Scheme Chans Y The Big Pictre The Five Classic Components of a Compter Processor Control emory Inpt path Otpt path & Control 2 path and
More informationPutting the dynamic into software security testing
Ptting the dynamic into software secrity testing Detecting and Addressing Cybersecrity Isses V1.1 2018-03-05 Code ahead! 2 Atomated vlnerability detection and triage + = 3 How did we get here? Vector was
More informationCSE Introduction to Computer Architecture Chapter 5 The Processor: Datapath & Control
CSE-45432 Introdction to Compter Architectre Chapter 5 The Processor: Datapath & Control Dr. Izadi Data Processor Register # PC Address Registers ALU memory Register # Register # Address Data memory Data
More informationPOWER-OF-2 BOUNDARIES
Warren.3.fm Page 5 Monday, Jne 17, 5:6 PM CHAPTER 3 POWER-OF- BOUNDARIES 3 1 Ronding Up/Down to a Mltiple of a Known Power of Ronding an nsigned integer down to, for eample, the net smaller mltiple of
More informationTdb: A Source-level Debugger for Dynamically Translated Programs
Tdb: A Sorce-level Debgger for Dynamically Translated Programs Naveen Kmar, Brce R. Childers, and Mary Lo Soffa Department of Compter Science University of Pittsbrgh Pittsbrgh, Pennsylvania 15260 {naveen,
More informationExceptions and Interrupts
Exceptions and Interrupts Unexpected events (asynchronous interrupt) requiring change in flow of control (different ISAs use the terms differently) exception Arises within the CPU e.g., undefined opcode,
More informationNotes Interrupts and Exceptions. The book uses exception as a general term for all interrupts...
08 1 Interrupts and Exceptions 08 1 Notes The book uses exception as a general term for all interrupts...... in these notes interrupt is used as the general term...... and a narrower definition is used
More informationMaking Full Use of Multi-Core ECUs with AUTOSAR Basic Software Distribution
Making Fll Use of Mlti-Core ECUs with AUTOSAR Basic Software Distribtion Webinar V0.1 2018-09-07 Agenda Motivation for Mlti-Core AUTOSAR Standard: SWC-Split MICROSAR Extension: BSW-Split BSW-Split: Technical
More informationVirtuOS: an operating system with kernel virtualization
VirtOS: an operating system with kernel virtalization Rslan Nikolaev, Godmar Back SOSP '13 Proceedings of the Twenty-Forth ACM Symposim on Oper ating Systems Principles 이영석, 신현호, 박재완 Index Motivation Design
More informationEE 109 Unit 17 - Exceptions
EE 109 Unit 17 - Exceptions 1 2 What are Exceptions? Any event that causes a break in normal execution Error Conditions Invalid address, Arithmetic/FP overflow/error Hardware Interrupts / Events Handling
More informationCSSE232 Computer Architecture I. Mul5cycle Datapath
CSSE232 Compter Architectre I Ml5cycle Datapath Class Stats Next 3 days : Ml5cycle datapath ing Ml5cycle datapath is not in the book! How long do instrc5ons take? ALU 2ns Mem 2ns Reg File 1ns Everything
More informationThere 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 informationAn Introduction to GPU Computing. Aaron Coutino MFCF
An Introdction to GPU Compting Aaron Cotino acotino@waterloo.ca MFCF What is a GPU? A GPU (Graphical Processing Unit) is a special type of processor that was designed to render and maniplate textres. They
More informationCS 153 Design of Operating Systems
CS 153 Design of Operating Systems Spring 18 Lectre 17: Advanced Paging Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Some slides modified from originals
More informationCS 153 Design of Operating Systems
CS 53 Design of Operating Systems Spring 8 Lectre 9: Locality and Cache Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Some slides modified from originals
More informationCOPYRIGHTED MATERIAL. Recording Macros and Getting Started with VBA. Part 1
Part 1 Recording Macros and Getting Started with VBA Chapter 1: Recording and Rnning Macros in the Office Applications Chapter 2: Getting Started with the Visal Basic Editor Chapter 3: Editing Recorded
More informationLecture 8: Data Hazard and Resolution. James C. Hoe Department of ECE Carnegie Mellon University
18 447 Lecture 8: Data Hazard and Resolution James C. Hoe Department of ECE Carnegie ellon University 18 447 S18 L08 S1, James C. Hoe, CU/ECE/CALC, 2018 Your goal today Housekeeping detect and resolve
More informationInstruction Level Parallelism. ILP, Loop level Parallelism Dependences, Hazards Speculation, Branch prediction
Instruction Level Parallelism ILP, Loop level Parallelism Dependences, Hazards Speculation, Branch prediction Basic Block A straight line code sequence with no branches in except to the entry and no branches
More informationEE 109 Unit 15 Subroutines and Stacks
1 EE 109 Unit 15 Subroutines and Stacks 2 Program Counter and GPRs (especially $sp, $ra, and $fp) REVIEW OF RELEVANT CONCEPTS 3 Review of Program Counter PC is used to fetch an instruction PC contains
More information4.13. An Introduction to Digital Design Using a Hardware Design Language to Describe and Model a Pipeline and More Pipelining Illustrations
.3 An Introdction to Digital Design Using a Hardware Design Langage to Describe and odel a Pipeline and ore Pipelining Illstrations This online section covers hardware description langages and then gives
More informationPIPELINING. Pipelining: Natural Phenomenon. Pipelining. Pipelining Lessons
Pipelining: Natral Phenomenon Landry Eample: nn, rian, Cathy, Dave each have one load of clothes to wash, dry, and fold Washer takes 30 mintes C D Dryer takes 0 mintes PIPELINING Folder takes 20 mintes
More informationOutline. A pipelined datapath Pipelined control Data hazards and forwarding Data hazards and stalls Branch (control) hazards Exception
Outline A pipelined datapath Pipelined control Data hazards and forwarding Data hazards and stalls Branch (control) hazards Exception 1 4 Which stage is the branch decision made? Case 1: 0 M u x 1 Add
More informationThe Operating System (OS) MicroComputer Engineering OperatingSystem slide 1!
The Operating System (OS) MicroComputer Engineering OperatingSystem slide 1! The Operating System (OS) P1:! Editor! P2: Compiler! P3:! Quake! Arena! Operating System! MIPS! At any one time the processor
More informationPOLITECNICO 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 informationLecture 2: RISC V Instruction Set Architecture. Housekeeping
S 17 L2 1 18 447 Lecture 2: RISC V Instruction Set Architecture James C. Hoe Department of ECE Carnegie Mellon University Housekeeping S 17 L2 2 Your goal today get bootstrapped on RISC V RV32I to start
More informationEITF20: Computer Architecture Part2.2.1: Pipeline-1
EITF20: Computer Architecture Part2.2.1: Pipeline-1 Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Pipelining Harzards Structural hazards Data hazards Control hazards Implementation issues Multi-cycle
More informationEITF20: Computer Architecture Part2.2.1: Pipeline-1
EITF20: Computer Architecture Part2.2.1: Pipeline-1 Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Pipelining Harzards Structural hazards Data hazards Control hazards Implementation issues Multi-cycle
More informationAnimating the Datapath. Animating the Datapath: R-type Instruction. Animating the Datapath: Load Instruction. MIPS Datapath I: Single-Cycle
nimating the atapath PS atapath : Single-Cycle npt is either (-type) or sign-etended lower half of instrction (load/store) op offset/immediate W egister File 6 6 + from instrction path beq,, offset if
More informationFull 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 informationHakim Weatherspoon CS 3410 Computer Science Cornell University
Hakim Weatherspoon CS 3410 Computer Science Cornell University The slides are the product of many rounds of teaching CS 3410 by Deniz Altinbuken, Professors Weatherspoon, Bala, Bracy, and Sirer. C practice
More informationReview. How to represent real numbers
PCWrite PC IorD Review ALUSrcA emread Address Write data emory emwrite em Data IRWrite [3-26] [25-2] [2-6] [5-] [5-] RegDst Read register Read register 2 Write register Write data RegWrite Read data Read
More informationCS 153 Design of Operating Systems
CS 153 Design of Operating Systems Spring 18 Lectre 25: Dynamic Memory (1) Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Some slides modified from originals
More informationEITF20: Computer Architecture Part2.2.1: Pipeline-1
EITF20: Computer Architecture Part2.2.1: Pipeline-1 Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Pipelining Harzards Structural hazards Data hazards Control hazards Implementation issues Multi-cycle
More informationComputer System Architecture Midterm Examination Spring 2002
Computer System Architecture 6.823 Midterm Examination Spring 2002 Name: This is an open book, open notes exam. 110 Minutes 1 Pages Notes: Not all questions are of equal difficulty, so look over the entire
More informationLecture 2: RISC V Instruction Set Architecture. James C. Hoe Department of ECE Carnegie Mellon University
18 447 Lecture 2: RISC V Instruction Set Architecture James C. Hoe Department of ECE Carnegie Mellon University 18 447 S18 L02 S1, James C. Hoe, CMU/ECE/CALCM, 2018 Your goal today Housekeeping get bootstrapped
More informationCS 153 Design of Operating Systems Spring 18
CS 153 Design of Operating Systems Spring 18 Lectre 11: Semaphores Instrctor: Chengy Song Slide contribtions from Nael Ab-Ghazaleh, Harsha Madhyvasta and Zhiyn Qian Last time Worked throgh software implementation
More informationLecture 11: IPv6. CSE 123: Computer Networks Alex C. Snoeren. HW 2 due FRIDAY
Lectre 11: IPv6 CSE 123: Compter Networks Alex C. Snoeren HW 2 de FRIDAY IP Address Problem (1991) Address space depletion In danger of rnning ot of classes A and B Why? Class C too small for most organizations
More informationProf. Kavita Bala and Prof. Hakim Weatherspoon CS 3410, Spring 2014 Computer Science Cornell University. See P&H 2.8 and 2.12, and A.
Prof. Kavita Bala and Prof. Hakim Weatherspoon CS 3410, Spring 2014 Computer Science Cornell University See P&H 2.8 and 2.12, and A.5 6 compute jump/branch targets memory PC +4 new pc Instruction Fetch
More information