Computer Architecture Lecture 5: ISA Wrap-Up and Single-Cycle Microarchitectures

Size: px
Start display at page:

Download "Computer Architecture Lecture 5: ISA Wrap-Up and Single-Cycle Microarchitectures"

Transcription

1 8-447 Compter Architectre Lectre 5: ISA Wrap-Up and Single-Cycle icroarchitectres Prof. Onr tl Carnegie ellon University Spring 22, /25/22

2 Homework Was de Wednesday! 34 received 2

3 Reminder: Homeworks for Net Two Weeks Homework De onday Jan 28, right before lectre Trn in via AFS (hand-in directories) IPS warmp, ISA concepts, basic performance evalation Homework 2 Will be assigned net week. Stay tned 3

4 Reminder: Lab Assignment De net Friday (Feb ), at the end of Friday lab A fnctional C-level simlator for a sbset of the IPS ISA Stdy the IPS ISA Ttorial TAs will cover this in Lab Sessions this week 4

5 A Note on Lab and Homework Dates Intended dates are on yor syllabs a=syllabs mtl-s3.pdf We will try to stick to them. Last year s website can provide yo a good lookahead into what is coming res 5

6 Readings for Net Lectre P&P, Revised Appendi C icroarchitectre of the LC-3b Appendi A (LC-3b ISA) will be sefl in following this P&H, Appendi D apping Control to Hardware Optional arice Wilkes, The Best Way to Design an Atomatic Calclating achine, anchester Univ. Compter Inagral Conf., 95. 6

7 Review of Last Lectre: ISA Tradeoffs Comple vs. simple instrctions: concept of semantic gap Use of translation to change the tradeoffs Fied vs. variable length, niform vs. non-niform decode Nmber of registers What is the benefit of translating comple instrctions to simple instrctions before eecting them? In hardware (a la Intel, AD)? In software (a la Transmeta)? Which ISA is easier to etend: fied length or variable length? How can yo have a variable length, niform decode ISA? 7

8 Review: 86 vs. Alpha Instrction Formats 86: Alpha: 8

9 Review: ISA-level Tradeoffs: Nmber of Registers Affects: Nmber of bits sed for encoding register address Nmber of vales kept in fast storage (register file) (arch) Size, access time, power consmption of register file Large nmber of registers: + Enables better register allocation (and optimizations) by compiler fewer saves/restores -- Larger instrction size -- Larger register file size 9

10 ISA-level Tradeoffs: Addressing odes Addressing mode specifies how to obtain an operand of an instrction Register Immediate emory (displacement, register indirect, indeed, absolte, memory indirect, atoincrement, atodecrement, ) ore modes: + help better spport programming constrcts (arrays, pointerbased accesses) -- make it harder for the architect to design -- too many choices for the compiler? any ways to do the same thing complicates compiler design Wlf, Compilers and Compter Architectre, IEEE Compter 98

11 86 vs. Alpha Instrction Formats 86: Alpha:

12 86 register indirect absolte register + displacement register 2

13 86 indeed (base + inde) scaled (base + inde*4) 3

14 X86 SIB-D Addressing ode 86 anal Vol., page see corse resorces on website Also, see Section and

15 X86 anal: Sggested Uses of Addressing odes 86 anal Vol., page see corse resorces on website Also, see Section and

16 X86 anal: Sggested Uses of Addressing odes 86 anal Vol., page see corse resorces on website Also, see Section and

17 Other Eample ISA-level Tradeoffs Condition codes vs. not VLIW vs. single instrction Precise vs. imprecise eceptions Virtal memory vs. not Unaligned access vs. not Hardware interlocks vs. software-garanteed interlocking Software vs. hardware managed page falt handling Cache coherence (hardware vs. software) 7

18 Back to Programmer vs. (icro)architect any ISA featres designed to aid programmers Bt, complicate the hardware designer s job Virtal memory vs. overlay programming Shold the programmer be concerned abot the size of code blocks fitting physical memory? Addressing modes Unaligned memory access Compile/programmer needs to align data 8

19 IPS: Aligned Access SB byte-3 byte-2 byte- byte- byte-7 byte-6 byte-5 byte-4 LSB LW/SW alignment restriction: 4-byte word-alignment not designed to fetch memory bytes not within a word bondary not designed to rotate naligned bytes into registers Provide separate opcodes for the infreqent case A B C D LWL rd 6(r) LWR rd 3(r) byte-6 byte-5 byte-4 D byte-6 byte-5 byte-4 byte-3 LWL/LWR is slower Note LWL and LWR still fetch within word bondary 9

20 X86: Unaligned Access LD/ST instrctions atomatically align data that spans a word bondary Programmer/compiler does not need to worry abot where data is stored (whether or not in a word-aligned location) 2

21 X86: Unaligned Access 2

22 Aligned vs. Unaligned Access Pros of having no restrictions on alignment Cons of having no restrictions on alignment Filling in the above: an eercise for yo 22

23 Implementing the ISA: icroarchitectre Basics 23

24 How Does a achine Process Instrctions? What does processing an instrction mean? Remember the von Nemann model A = Architectral (programmer visible) state before an instrction is processed Process instrction A = Architectral (programmer visible) state after an instrction is processed Processing an instrction: Transforming A to A according to the ISA specification of the instrction 24

25 The Process instrction Step ISA specifies abstractly what A shold be, given an instrction and A It defines an abstract finite state machine where State = programmer-visible state Net-state logic = instrction eection specification From ISA point of view, there are no intermediate states between A and A dring instrction eection One state transition per instrction icroarchitectre implements how A is transformed to A There are many choices in implementation We can have programmer-invisible state to optimize the speed of instrction eection: mltiple state transitions per instrction Choice : A A (transform A to A in a single clock cycle) Choice 2: A A+S A+S2 A+S3 A (take mltiple clock cycles to transform A to A ) 25

26 A Very Basic Instrction Processing Engine Each instrction takes a single clock cycle to eecte Only combinational logic is sed to implement instrction eection No intermediate, programmer-invisible state pdates A = Architectral (programmer visible) state at the beginning of a clock cycle Process instrction in one clock cycle A = Architectral (programmer visible) state at the end of a clock cycle 26

27 A Very Basic Instrction Processing Engine Single-cycle machine Combinational Logic A Net Seqential Logic (State) A What is the clock cycle time determined by? What is the critical path of the combinational logic determined by? 27

28 Remember: Programmer Visible (Architectral) State [] [] [2] [3] [4] Registers - given special names in the ISA (as opposed to addresses) - general vs. special prpose [N-] emory array of storage locations indeed by an address Program Conter memory address of the crrent instrction Instrctions (and programs) specify how to transform the vales of programmer visible state 28

29 Single-cycle vs. lti-cycle achines Single-cycle machines Each instrction takes a single clock cycle All state pdates made at the end of an instrction s eection Big disadvantage: The slowest instrction determines cycle time long clock cycle time lti-cycle machines Instrction processing broken into mltiple cycles/stages State pdates can be made dring an instrction s eection Architectral state pdates made only at the end of an instrction s eection Advantage over single-cycle: The slowest stage determines cycle time Both single-cycle and mlti-cycle machines literally follow the von Nemann model at the microarchitectre level 29

30 Instrction Processing Cycle Instrctions are processed nder the direction of a control nit step by step. Instrction cycle: Seqence of steps to process an instrction Fndamentally, there are si phases: Fetch Decode Evalate Address Fetch Operands Eecte Store Reslt Not all instrctions reqire all si stages (see P&P Ch. 4) 3

31 Instrction Processing Cycle vs. achine Clock Cycle Single-cycle machine: All si phases of the instrction processing cycle take a single machine clock cycle to complete lti-cycle machine: All si phases of the instrction processing cycle can take mltiple machine clock cycles to complete In fact, each phase can take mltiple clock cycles to complete 3

32 Instrction Processing Viewed Another Way Instrctions transform Data (AS) to Data (AS ) This transformation is done by fnctional nits Units that operate on data These nits need to be told what to do to the data An instrction processing engine consists of two components Datapath: Consists of hardware elements that deal with and transform data signals fnctional nits that operate on data hardware strctres (e.g. wires and mes) that enable the flow of data into the fnctional nits and registers storage nits that store data (e.g., registers) Control logic: Consists of hardware elements that determine control signals, i.e., signals that specify what the datapath elements shold do to the data 32

33 Single-cycle vs. lti-cycle: Control & Data Single-cycle machine: Control signals are generated in the same clock cycle as data signals are operated on Everything related to an instrction happens in one clock cycle lti-cycle machine: Control signals needed in the net cycle can be generated in the previos cycle Latency of control processing can be overlapped with latency of datapath operation We will see the difference clearly in microprogrammed mlti-cycle microarchitectre 33

34 any Ways of Datapath and Control Design There are many ways of designing the data path and control logic Single-cycle, mlti-cycle, pipelined datapath and control Single-bs vs. mlti-bs datapaths See yor homework 2 qestion Hardwired/combinational vs. microcoded/microprogrammed control Control signals generated by combinational logic verss Control signals stored in a memory strctre Control signals and strctre depend on the datapath design 34

35 Flash-Forward: Performance Analysis Eection time of an instrction {CPI} {clock cycle time} Eection time of a program Sm over all instrctions [{CPI} {clock cycle time}] {# of instrctions} {Average CPI} {clock cycle time} Single cycle microarchitectre performance CPI = Clock cycle time = long lti-cycle microarchitectre performance CPI = different for each instrction Average CPI hopeflly small Clock cycle time = short Now, we have two degrees of freedom to optimize independently 35

36 A Single-Cycle icroarchitectre A Closer Look 36

37 Remember Single-cycle machine Combinational Logic AS Net Seqential Logic (State) AS 37

38 Let s Start with the State Elements Data and control inpts n P C In s tr c tio n o n r y R e g is te r n m b e rs A d d D a ta re g iste r d a ta 5 S m re g iste r 2 R e g is te rs re g iste r d a ta d a ta 2 R e g D a ta A L c tio n m e m o r y b. P ro g ra m c o n te r c. A d d e r a. R e g iste rs b e m In str c tio n a d d r e s s In str c tio n m e m o r y In s tr c tio n A d d re s s P C d a ta D a ta m e m o ry d a ta A d d S m 6 S ig n e te n d a. In str c tio n m e m o r y b. P ro g ra m c o n te r e m c. A d d e r **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] a. D a ta m e m o ry n it 38 b. S ig n -e te n

39 For Now, We Will Assme agic memory and register file Combinational read otpt of the read data port is a combinational fnction of the register file contents and the corresponding read select port Synchronos write the selected register is pdated on the positive edge clock transition when write enable is asserted Cannot affect read otpt in between clock edges Can affect read otpt at clock edges (bt who cares?) Single-cycle, synchronos memory Contrast this with memory that tells when the data is ready i.e., Ready bit: indicating the read or write is done 39

40 Instrction Processing 5 generic steps (P&H) IF Instrction fetch (IF) Instrction decode and register operand fetch (ID/RF) Eecte/Evalate memory address (EX/AG) emory operand fetch (E) Store/writeback reslt (WB) D a ta R e g is ter # WB P C A d d re s s In s tr c tio n R e gis te rs A L U In s tr c tion m e m ory ID/RF R e g is ter # R e g is ter # EX/AG A d dre s s D a ta m e m ory D ata E **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 4

41 What Is To Come: The Fll Datapath Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m ALU Src Reg P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r bcond Z e ro A L U A L U re s lt A d d re ss d ata D ata m e m o ry d ata Instrction [5 ] S ig n e te n d A L U co n tro l ALU operation In str ction [5 ] **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] JAL, JR, JALR omitted 4

42 Single-Cycle Datapath for Arithmetic and Logical Instrctions 42

43 R-Type ALU Instrctions Assembly (e.g., register-register signed addition) ADD rd reg rs reg rt reg achine encoding 6-bit rs 5-bit rt 5-bit rd 5-bit 5-bit ADD 6-bit R-type Semantics if E[PC] == ADD rd rs rt GPR[rd] GPR[rs] + GPR[rt] PC PC

44 ALU Datapath A d d 4 P C a d d re ss In s tr c tio n m e m o ry In s tr ctio n In str c tio n 25:2 2:6 5: re g is te r re g is te r 2 R e g is te rs re g is te r d a ta d a ta d a ta 2 3 A L U o p e ra tio n Z e ro A L U A L U re s lt R e g if E[PC] == ADD rd rs rt GPR[rd] GPR[rs] + GPR[rt] PC PC + 4 **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] IF ID EX E WB Combinational state pdate logic 44

45 I-Type ALU Instrctions Assembly (e.g., register-immediate signed additions) ADDI rt reg rs reg immediate 6 achine encoding ADDI 6-bit rs 5-bit rt 5-bit immediate 6-bit I-type Semantics if E[PC] == ADDI rt rs immediate GPR[rt] GPR[rs] + sign-etend (immediate) PC PC

46 Datapath for R and I-Type ALU Insts. A d d 4 P C a d d re ss In s tr c tio n m e m o ry In s tr ctio n 25:2 2:6 In s tr c tio n 5: RegDest isitype re g is te r re g is te r 2 R e g is te r s re g is te r d a ta R e g d a ta d a ta S ig n e te n d 3 A L U ALUSrc isitype A L U o p e r a tio n Z e r o A L U re s lt A d d re s s d a ta e m D a ta m e m o e m if E[PC] == ADDI rt rs immediate GPR[rt] GPR[rs] + sign-etend (immediate) PC PC + 4 **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] IF ID EX E WB Combinational state pdate logic 46

47 Single-Cycle Datapath for Data ovement Instrctions 47

48 Load Instrctions Assembly (e.g., load 4-byte word) LW rt reg offset 6 (base reg ) achine encoding LW 6-bit base 5-bit rt 5-bit offset 6-bit I-type Semantics if E[PC]==LW rt offset 6 (base) EA = sign-etend(offset) + GPR[base] GPR[rt] E[ translate(ea) ] PC PC

49 LW Datapath A d d P C a d d re ss In s tr c tio n m e m o ry 4 In s tr ctio n In s tr c tio n RegDest isitype re g is te r re g is te r 2 R e g is te r s re g is te r d a ta R e g d a ta d a ta S ig n e te n d add 3 A L U ALUSrc isitype A L U o p e r a tio n Z e r o A L U res lt A d d re s s d a ta A d d re s s d a ta D a ta d a ta m e m o ry D a ta d a ta e m m e m o ry e m e m e m a. D a ta m e m o ry n it 6 b. S i if E[PC]==LW rt offset 6 (base) EA = sign-etend(offset) + GPR[base] GPR[rt] E[ translate(ea) ] PC PC + 4 IF ID EX E WB Combinational state pdate logic 49

50 Store Instrctions Assembly (e.g., store 4-byte word) SW rt reg offset 6 (base reg ) achine encoding SW 6-bit base 5-bit rt 5-bit offset 6-bit I-type Semantics if E[PC]==SW rt offset 6 (base) EA = sign-etend(offset) + GPR[base] E[ translate(ea) ] GPR[rt] PC PC + 4 5

51 SW Datapath A d d P C a d d re ss In s tr c tio n m e m o ry 4 In s tr ctio n In s tr c tio n RegDest isitype re g is te r re g is te r 2 R e g is te r s re g is te r d a ta R e g d a ta d a ta S ig n e te n d add 3 A L U ALUSrc isitype A L U o p e r a tio n Z e r o A L U res lt A d d re s s d a ta A d d re s s d a ta D a ta d a ta m e m o ry D a ta d a ta e m m e m o ry e m e m e m a. D a ta m e m o ry n it 6 b. S i if E[PC]==SW rt offset 6 (base) EA = sign-etend(offset) + GPR[base] E[ translate(ea) ] GPR[rt] PC PC + 4 IF ID EX E WB Combinational state pdate logic 5

52 Load-Store Datapath A d d P C a d d re ss In s tr c tio n m e m o ry 4 In s tr c tio n In s tr ctio n RegDest isitype re g is te r re g is te r 2 R e g is te r s re g is te r d a ta R e g!isstore d a ta d a ta S ig n e te n d add 3 A L U ALUSrc isitype A L U o p e r a tio n Z e r o A L U re s lt A d d re s s d a ta isstore e m D a ta m e m o ry isload d a ta e m **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 52

53 Datapath for Non-Control-Flow Insts. A d d P C a d d re ss In s tr c tio n m e m o ry 4 In s tr c tio n In s tr ctio n RegDest isitype re g is te r re g is te r 2 R e g is te r s re g is te r d a ta R e g!isstore d a ta d a ta S ig n e te n d 3 A L U ALUSrc isitype A L U o p e r a tio n Z e r o A L U re s lt A d d re s s d a ta isstore e m D a ta m e m o ry isload d a ta e m emtoreg isload **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 53

54 Single-Cycle Datapath for Control Flow Instrctions 54

55 Unconditional Jmp Instrctions Assembly J immediate 26 achine encoding J 6-bit immediate 26-bit J-type Semantics if E[PC]==J immediate 26 target = { PC[3:28], immediate 26, 2 b } PC target 55

56 Unconditional Jmp Datapath isj PCSrc concat P C a d d re ss In s tr c tio n m e m o ry **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 4 A d d In s tr c tio n In s tr ctio n? re g is te r re g is te r 2 R e g is te r s re g is te r d a ta R e g d a ta d a ta S ig n e te n d X 3 X A L U ALUSrc A L U o p e r a tio n Z e r o A L U re s lt A d d re s s d a ta e m D a ta m e m o ry d a ta e m if E[PC]==J immediate26 PC = { PC[3:28], immediate26, 2 b } What abot JR, JAL, JALR? 56

57 Conditional Branch Instrctions Assembly (e.g., branch if eqal) BEQ rs reg rt reg immediate 6 achine encoding BEQ 6-bit rs 5-bit rt 5-bit immediate 6-bit I-type Semantics (assming no branch delay slot) if E[PC]==BEQ rs rt immediate 6 target = PC sign-etend(immediate) 4 if GPR[rs]==GPR[rt] then PC target else PC PC

58 Conditional Branch Datapath (For Yo to Fi) watch ot PCSrc 4 A d d P C + 4 fro m in str c tio n d a ta p a th A d d S m B ra n c h ta rg e t S h ift concat P C a d d re ss In s tr c tio n m e m o ry In s tr ctio n In s tr c tio n re g is te r re g is te r 2 R e g is te rs re g is te r d a ta d a ta d a ta 2 le ft 2 sb 3 A L U o p e r a tio n T o b ra n c h A L U bcond Z e ro c o n tro l lo g ic R e g S ig n e te n d **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] How to phold the delayed branch semantics? 58

59 Ptting It All Together Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m ALU Src Reg P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r bcond Z e ro A L U A L U re s lt A d d re ss d ata D ata m e m o ry d ata Instrction [5 ] S ig n e te n d A L U co n tro l ALU operation In str ction [5 ] **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] JAL, JR, JALR omitted 59

60 We did not cover the following slides in lectre. These are for yor preparation for the net lectre.

61 Single-Cycle Control Logic 6

62 Single-Cycle Hardwired Control As combinational fnction of Inst=E[PC] 3 6-bit 3 opcode 6-bit 3 opcode 6-bit rs 5-bit rs 5-bit 2 2 rt 5-bit rt 5-bit immediate 26-bit 6 6 rd 5-bit immediate 6-bit shamt 5-bit 6 fnct 6-bit R-type I-type J-type Consider All R-type and I-type ALU instrctions LW and SW BEQ, BNE, BLEZ, BGTZ J, JR, JAL, JALR 62

63 Single-Bit Control Signals When De-asserted When asserted Eqation RegDest GPR write select according to rt, i.e., inst[2:6] GPR write select according to rd, i.e., inst[5:] opcode== ALUSrc 2 nd ALU inpt from 2 nd GPR read port 2 nd ALU inpt from signetended 6-bit immediate (opcode!=) && (opcode!=beq) && (opcode!=bne) emtoreg Steer ALU reslt to GPR write port steer memory load to GPR wr. port opcode==lw GPR write disabled GPR write enabled (opcode!=sw) && RegWrite (opcode!=b) && (opcode!=j) && (opcode!=jr)) JAL and JALR reqire additional RegDest and emtoreg options 63

64 Single-Bit Control Signals When De-asserted When asserted Eqation emread emory read disabled emory read port retrn load vale opcode==lw emwrite emory write disabled emory write enabled opcode==sw PCSrc bit immediate jmp According to PCSrc 2 net PC is based on 26- target PCSrc 2 net PC = PC + 4 net PC is based on 6- bit immediate branch target (opcode==j) (opcode==jal) (opcode==b) && bcond is satisfied JR and JALR reqire additional PCSrc options 64

65 ALU Control case opcode select operation according to fnct ALUi selection operation according to opcode LW select addition SW select addition B select bcond generation fnction don t care Eample ALU operations ADD, SUB, AND, OR, XOR, NOR, etc. bcond on eqal, not eqal, LE zero, GT zero, etc. 65

66 R-Type ALU Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] ALU Src Reg R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r A L U bcond Z e ro A L U re s lt A d d re ss d ata D ata m e m o ry d ata Instrction [5 ] In str ction [5 ] S ig n e te n d A L U fnct co n tro l ALU operation **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 66

67 I-Type ALU Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] ALU Src Reg R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r A L U bcond Z e ro A L U re s lt A d d re ss d ata D ata m e m o ry d ata Instrction [5 ] In str ction [5 ] S ig n e te n d A L U opcode n tro l ALU operation **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 67

68 LW Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] ALU Src Reg R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r A L U bcond Z e ro A L U re s lt A d d re ss d ata D ata m e m o ry d ata Instrction [5 ] In str ction [5 ] S ig n e te n d A L U Add co n tro l ALU operation **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 68

69 SW Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] * ALU Src Reg R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r A L U bcond Z e ro A L U re s lt A d d re ss d ata D ata m e m o ry d ata * Instrction [5 ] In str ction [5 ] S ig n e te n d A L U Add co n tro l ALU operation **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 69

70 Branch Not Taken Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] * ALU Src Reg R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r A L U bcond Z e ro A L U re s lt A d d re ss d ata D ata m e m o ry d ata * Instrction [5 ] In str ction [5 ] S ig n e te n d A L U bcond n tro l ALU operation **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 7

71 Branch Taken Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] * ALU Src Reg R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r A L U bcond Z e ro A L U re s lt A d d re ss d ata D ata m e m o ry d ata * Instrction [5 ] In str ction [5 ] S ig n e te n d A L U bcond n tro l ALU operation **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 7

72 Jmp Instrction [25 ] S h ift Jm p address [3 ] left PCSrc =Jmp 4 A d d PC +4 [3 28] RegD st J m p B ra n ch S h ift le ft 2 A d d A LU re s lt * PCSrc 2 =Br Taken Instrction [3 26] C o ntro l e m e m to R eg A L U O p e m P C ad d re ss In s trc tio n m e m or y In strc tio n [3 ] Instrction [25 2] Instrction [2 6] Instrction [5 ] * ALU Src Reg R ea d register R ea d da ta da ta register 2 R eg iste rs da ta 2 re giste r * A L U bcond Z e ro A L U re s lt A d d re ss d ata D ata m e m o ry d ata * Instrction [5 ] In str ction [5 ] S ig n e te n d * A L U co n tro l ALU operation **Based on original figre from [P&H CO&D, COPYRIGHT 24 Elsevier. ALL RIGHTS RESERVED.] 72

73 What is in That Control Bo? Combinational Logic Hardwired Control Idea: Control signals generated combinationally based on instrction Seqential Logic Seqential/icroprogrammed Control Control Store Idea: A memory strctre contains the control signals associated with an instrction 73

Review. Combined Datapath

Review. Combined Datapath Review Topics:. A single cycle implementation 2. State Diagrams. A mltiple cycle implementation COSC 22: Compter Organization Instrctor: Dr. Amir Asif Department of Compter Science York University Handot

More information

Designing MIPS Processor

Designing MIPS Processor CSE 675.: Introdction to Compter Architectre Designing IPS Processor (lti-cycle) Presentation H Reading Assignment: 5.5,5.6 lti-cycle Design Principles Break p eection of each instrction into steps. The

More information

Designing Single-Cycle MIPS Processor

Designing Single-Cycle MIPS Processor CSE 32: Introdction to Compter Architectre Designing Single-Cycle IPS Processor Presentation G Stdy:.-. Gojko Babić 2/9/28 Introdction We're now ready to look at an implementation of the system that incldes

More information

Lecture 12: Pipelined Implementations: Control Hazards and Resolutions

Lecture 12: Pipelined Implementations: Control Hazards and Resolutions 18-447 Lectre 12: Pipelined Implementations: Control Hazards and Resoltions S 09 L12-1 James C. Hoe Dept of ECE, CU arch 2, 2009 Annoncements: Spring break net week!! Project 2 de the week after spring

More information

Instruction register. Data. Registers. Register # Memory data register

Instruction register. Data. Registers. Register # Memory data register Where we are headed Single Cycle Problems: what if we had a more complicated instrction like floating point? wastefl of area One Soltion: se a smaller cycle time have different instrctions take different

More information

Lecture 9: Control Hazard and Resolution. James C. Hoe Department of ECE Carnegie Mellon University

Lecture 9: Control Hazard and Resolution. James C. Hoe Department of ECE Carnegie Mellon University 18 447 Lectre 9: Control Hazard and Resoltion James C. Hoe Department of ECE Carnegie ellon University 18 447 S18 L09 S1, James C. Hoe, CU/ECE/CALC, 2018 Yor goal today Hosekeeping simple control flow

More information

Topics: A multiple cycle implementation. Distributed Notes

Topics: A multiple cycle implementation. Distributed Notes COSC 22: Compter Organization Instrctor: Dr. Amir Asif Department of Compter Science York University Handot # lticycle Implementation of a IPS Processor Topics: A mltiple cycle implementation Distribted

More information

Pipelined Datapath. Reading. Sections Practice Problems: 1, 3, 8, 12 (2) Lecture notes from MKP, H. H. Lee and S.

Pipelined Datapath. Reading. Sections Practice Problems: 1, 3, 8, 12 (2) Lecture notes from MKP, H. H. Lee and S. Pipelined Datapath Lectre notes from KP, H. H. Lee and S. Yalamanchili Sections 4.5 4. Practice Problems:, 3, 8, 2 Reading (2) Pipeline Performance Assme time for stages is v ps for register read or write

More information

CPU DESIGN The Single-Cycle Implementation

CPU DESIGN The Single-Cycle Implementation 22 ompter Organization Seqential vs. ombinational ircits Digital circits can be classified into two categories: DESIGN The Single-ycle Implementation. ombinational ircits: m, 2. Seqential ircits: flip-flops,

More information

Concepts Introduced. Digital Electronics. Logic Blocks. Truth Tables

Concepts Introduced. Digital Electronics. Logic Blocks. Truth Tables Concepts Introdced Digital Electronics trth tables, logic eqations, and gates combinational logic seqential logic Digital electronics operate at either high or low voltage. Compters se a binary representation

More information

Computer Engineering Department. CC 311- Computer Architecture. Chapter 4. The Processor: Datapath and Control. Single Cycle

Computer Engineering Department. CC 311- Computer Architecture. Chapter 4. The Processor: Datapath and Control. Single Cycle Computer Engineering Department CC 311- Computer Architecture Chapter 4 The Processor: Datapath and Control Single Cycle Introduction The 5 classic components of a computer Processor Input Control Memory

More information

L07-L09 recap: Fundamental lesson(s)!

L07-L09 recap: Fundamental lesson(s)! L7-L9 recap: Fundamental lesson(s)! Over the next 3 lectures (using the IPS ISA as context) I ll explain:! How functions are treated and processed in assembly! How system calls are enabled in assembly!

More information

Pipelining. Traditional Execution. CS 365 Lecture 12 Prof. Yih Huang. add ld beq CS CS 365 2

Pipelining. Traditional Execution. CS 365 Lecture 12 Prof. Yih Huang. add ld beq CS CS 365 2 Pipelining CS 365 Lecture 12 Prof. Yih Huang CS 365 1 Traditional Execution 1 2 3 4 1 2 3 4 5 1 2 3 add ld beq CS 365 2 1 Pipelined Execution 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

More information

Pipeline Datapath. With some slides from: John Lazzaro and Dan Garcia

Pipeline Datapath. With some slides from: John Lazzaro and Dan Garcia Pipeline Datapath With some slides from: John Lazzaro and Dan Garcia The single cycle CPU Instrction [25 ] Shift Jmp address [3 ] left 2 26 28 PC+ [3 28] Instrction [3 26] Control RegDst Jmp Branch em

More information

Computer Architecture ELEC2401 & ELEC3441

Computer Architecture ELEC2401 & ELEC3441 Last Time Pipeline Hazard Computer Architecture ELEC2401 & ELEC3441 Lecture 8 Pipelining (3) Dr. Hayden Kwok-Hay So Department of Electrical and Electronic Engineering Structural Hazard Hazard Control

More information

CSCI-564 Advanced Computer Architecture

CSCI-564 Advanced Computer Architecture CSCI-564 Advanced Computer Architecture Lecture 8: Handling Exceptions and Interrupts / Superscalar Bo Wu Colorado School of Mines Branch Delay Slots (expose control hazard to software) Change the ISA

More information

Implementing the Controller. Harvard-Style Datapath for DLX

Implementing the Controller. Harvard-Style Datapath for DLX 6.823, L6--1 Implementing the Controller Laboratory for Computer Science M.I.T. http://www.csg.lcs.mit.edu/6.823 6.823, L6--2 Harvard-Style Datapath for DLX Src1 ( j / ~j ) Src2 ( R / RInd) RegWrite MemWrite

More information

Project Two RISC Processor Implementation ECE 485

Project Two RISC Processor Implementation ECE 485 Project Two RISC Processor Implementation ECE 485 Chenqi Bao Peter Chinetti November 6, 2013 Instructor: Professor Borkar 1 Statement of Problem This project requires the design and test of a RISC processor

More information

ECE 3401 Lecture 23. Pipeline Design. State Table for 2-Cycle Instructions. Control Unit. ISA: Instruction Specifications (for reference)

ECE 3401 Lecture 23. Pipeline Design. State Table for 2-Cycle Instructions. Control Unit. ISA: Instruction Specifications (for reference) ECE 3401 Lecture 23 Pipeline Design Control State Register Combinational Control Logic New/ Modified Control Word ISA: Instruction Specifications (for reference) P C P C + 1 I N F I R M [ P C ] E X 0 PC

More information

Problem Class 4. More State Machines (Problem Sheet 3 con t)

Problem Class 4. More State Machines (Problem Sheet 3 con t) Problem Class 4 More State Machines (Problem Sheet 3 con t) Peter Cheng Department of Electrical & Electronic Engineering Imperial College London URL: www.ee.imperial.ac.k/pcheng/ee2_digital/ E-mail: p.cheng@imperial.ac.k

More information

CPU DESIGN The Single-Cycle Implementation

CPU DESIGN The Single-Cycle Implementation CSE 202 Computer Organization CPU DESIGN The Single-Cycle Implementation Shakil M. Khan (adapted from Prof. H. Roumani) Dept of CS & Eng, York University Sequential vs. Combinational Circuits Digital circuits

More information

TEST 1 REVIEW. Lectures 1-5

TEST 1 REVIEW. Lectures 1-5 TEST 1 REVIEW Lectures 1-5 REVIEW Test 1 will cover lectures 1-5. There are 10 questions in total with the last being a bonus question. The questions take the form of short answers (where you are expected

More information

[2] Predicting the direction of a branch is not enough. What else is necessary?

[2] Predicting the direction of a branch is not enough. What else is necessary? [2] What are the two main ways to define performance? [2] Predicting the direction of a branch is not enough. What else is necessary? [2] The power consumed by a chip has increased over time, but the clock

More information

Building a Computer. Quiz #2 on 10/31, open book and notes. (This is the last lecture covered) I wonder where this goes? L16- Building a Computer 1

Building a Computer. Quiz #2 on 10/31, open book and notes. (This is the last lecture covered) I wonder where this goes? L16- Building a Computer 1 Building a Computer I wonder where this goes? B LU MIPS Kit Quiz # on /3, open book and notes (This is the last lecture covered) Comp 4 Fall 7 /4/7 L6- Building a Computer THIS IS IT! Motivating Force

More information

[2] Predicting the direction of a branch is not enough. What else is necessary?

[2] Predicting the direction of a branch is not enough. What else is necessary? [2] When we talk about the number of operands in an instruction (a 1-operand or a 2-operand instruction, for example), what do we mean? [2] What are the two main ways to define performance? [2] Predicting

More information

Fast Path-Based Neural Branch Prediction

Fast Path-Based Neural Branch Prediction Fast Path-Based Neral Branch Prediction Daniel A. Jiménez http://camino.rtgers.ed Department of Compter Science Rtgers, The State University of New Jersey Overview The context: microarchitectre Branch

More information

4. (3) What do we mean when we say something is an N-operand machine?

4. (3) What do we mean when we say something is an N-operand machine? 1. (2) What are the two main ways to define performance? 2. (2) When dealing with control hazards, a prediction is not enough - what else is necessary in order to eliminate stalls? 3. (3) What is an "unbalanced"

More information

Computer Architecture Lecture 8: Pipelining. Prof. Onur Mutlu Carnegie Mellon University Spring 2013, 2/4/2013

Computer Architecture Lecture 8: Pipelining. Prof. Onur Mutlu Carnegie Mellon University Spring 2013, 2/4/2013 18-447 Computer Architecture Lecture 8: Pipelining Prof. Onur Mutlu Carnegie Mellon University Spring 2013, 2/4/2013 Reminder: Homework 2 Homework 2 out Due February 11 (next Monday) LC-3b microcode ISA

More information

Linear System Theory (Fall 2011): Homework 1. Solutions

Linear System Theory (Fall 2011): Homework 1. Solutions Linear System Theory (Fall 20): Homework Soltions De Sep. 29, 20 Exercise (C.T. Chen: Ex.3-8). Consider a linear system with inpt and otpt y. Three experiments are performed on this system sing the inpts

More information

61C In the News. Processor Design: 5 steps

61C In the News. Processor Design: 5 steps www.eetimes.com/electronics-news/23235/thailand-floods-take-toll-on--makers The Thai floods have already claimed the lives of hundreds of pele, with tens of thousands more having had to flee their homes

More information

Control. Control. the ALU. ALU control signals 11/4/14. Next: control. We built the instrument. Now we read music and play it...

Control. Control. the ALU. ALU control signals 11/4/14. Next: control. We built the instrument. Now we read music and play it... // CS 2, Fall 2! CS 2, Fall 2! We built the instrument. Now we read music and play it... A simple implementa/on uc/on uct r r 2 Write r Src Src Extend 6 Mem Next: path 7-2 CS 2, Fall 2! signals CS 2, Fall

More information

EC 413 Computer Organization

EC 413 Computer Organization EC 413 Computer Organization rithmetic Logic Unit (LU) and Register File Prof. Michel. Kinsy Computing: Computer Organization The DN of Modern Computing Computer CPU Memory System LU Register File Disks

More information

3. (2) What is the difference between fixed and hybrid instructions?

3. (2) What is the difference between fixed and hybrid instructions? 1. (2 pts) What is a "balanced" pipeline? 2. (2 pts) What are the two main ways to define performance? 3. (2) What is the difference between fixed and hybrid instructions? 4. (2 pts) Clock rates have grown

More information

1. (2 )Clock rates have grown by a factor of 1000 while power consumed has only grown by a factor of 30. How was this accomplished?

1. (2 )Clock rates have grown by a factor of 1000 while power consumed has only grown by a factor of 30. How was this accomplished? 1. (2 )Clock rates have grown by a factor of 1000 while power consumed has only grown by a factor of 30. How was this accomplished? 2. (2 )What are the two main ways to define performance? 3. (2 )What

More information

CSE Computer Architecture I

CSE Computer Architecture I Execution Sequence Summary CSE 30321 Computer Architecture I Lecture 17 - Multi Cycle Control Michael Niemier Department of Computer Science and Engineering Step name Instruction fetch Instruction decode/register

More information

Section 7.4: Integration of Rational Functions by Partial Fractions

Section 7.4: Integration of Rational Functions by Partial Fractions Section 7.4: Integration of Rational Fnctions by Partial Fractions This is abot as complicated as it gets. The Method of Partial Fractions Ecept for a few very special cases, crrently we have no way to

More information

Pipeline Datapath. With some slides from: John Lazzaro and Dan Garcia

Pipeline Datapath. With some slides from: John Lazzaro and Dan Garcia Pipeline path With some slides from: John Lazzaro and Dan Garcia Gotta Do Landry Ann, Brian, Cathy, Dave each have one load of clothes to wash, dry, fold, and pt away Washer takes 3 mintes A B C D Dryer

More information

NCU EE -- DSP VLSI Design. Tsung-Han Tsai 1

NCU EE -- DSP VLSI Design. Tsung-Han Tsai 1 NCU EE -- DSP VLSI Design. Tsung-Han Tsai 1 Multi-processor vs. Multi-computer architecture µp vs. DSP RISC vs. DSP RISC Reduced-instruction-set Register-to-register operation Higher throughput by using

More information

Processor Design & ALU Design

Processor Design & ALU Design 3/8/2 Processor Design A. Sahu CSE, IIT Guwahati Please be updated with http://jatinga.iitg.ernet.in/~asahu/c22/ Outline Components of CPU Register, Multiplexor, Decoder, / Adder, substractor, Varity of

More information

Spiral 1 / Unit 3

Spiral 1 / Unit 3 -3. Spiral / Unit 3 Minterm and Maxterms Canonical Sums and Products 2- and 3-Variable Boolean Algebra Theorems DeMorgan's Theorem Function Synthesis use Canonical Sums/Products -3.2 Outcomes I know the

More information

CPSC 3300 Spring 2017 Exam 2

CPSC 3300 Spring 2017 Exam 2 CPSC 3300 Spring 2017 Exam 2 Name: 1. Matching. Write the correct term from the list into each blank. (2 pts. each) structural hazard EPIC forwarding precise exception hardwired load-use data hazard VLIW

More information

Simple Instruction-Pipelining. Pipelined Harvard Datapath

Simple Instruction-Pipelining. Pipelined Harvard Datapath 6.823, L8--1 Simple ruction-pipelining Updated March 6, 2000 Laboratory for Computer Science M.I.T. http://www.csg.lcs.mit.edu/6.823 Pipelined Harvard path 6.823, L8--2. fetch decode & eg-fetch execute

More information

Change of Variables. f(x, y) da = (1) If the transformation T hasn t already been given, come up with the transformation to use.

Change of Variables. f(x, y) da = (1) If the transformation T hasn t already been given, come up with the transformation to use. MATH 2Q Spring 26 Daid Nichols Change of Variables Change of ariables in mltiple integrals is complicated, bt it can be broken down into steps as follows. The starting point is a doble integral in & y.

More information

Simple Instruction-Pipelining (cont.) Pipelining Jumps

Simple Instruction-Pipelining (cont.) Pipelining Jumps 6.823, L9--1 Simple ruction-pipelining (cont.) + Interrupts Updated March 6, 2000 Laboratory for Computer Science M.I.T. http://www.csg.lcs.mit.edu/6.823 Src1 ( j / ~j ) Src2 ( / Ind) Pipelining Jumps

More information

Formal Methods for Deriving Element Equations

Formal Methods for Deriving Element Equations Formal Methods for Deriving Element Eqations And the importance of Shape Fnctions Formal Methods In previos lectres we obtained a bar element s stiffness eqations sing the Direct Method to obtain eact

More information

FEA Solution Procedure

FEA Solution Procedure EA Soltion Procedre (demonstrated with a -D bar element problem) EA Procedre for Static Analysis. Prepare the E model a. discretize (mesh) the strctre b. prescribe loads c. prescribe spports. Perform calclations

More information

Chapter 4 Supervised learning:

Chapter 4 Supervised learning: Chapter 4 Spervised learning: Mltilayer Networks II Madaline Other Feedforward Networks Mltiple adalines of a sort as hidden nodes Weight change follows minimm distrbance principle Adaptive mlti-layer

More information

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #4 MIPS Assembly and Simulation

More information

CS 52 Computer rchitecture and Engineering Lecture 4 - Pipelining Krste sanovic Electrical Engineering and Computer Sciences University of California at Berkeley http://www.eecs.berkeley.edu/~krste! http://inst.eecs.berkeley.edu/~cs52!

More information

Simple Instruction-Pipelining. Pipelined Harvard Datapath

Simple Instruction-Pipelining. Pipelined Harvard Datapath 6.823, L8--1 Simple ruction-pipelining Laboratory for Computer Science M.I.T. http://www.csg.lcs.mit.edu/6.823 Pipelined Harvard path 6.823, L8--2. I fetch decode & eg-fetch execute memory Clock period

More information

CA Compiler Construction

CA Compiler Construction CA4003 - Compiler Construction Code Generation to MIPS David Sinclair Code Generation The generation o machine code depends heavily on: the intermediate representation;and the target processor. We are

More information

FRTN10 Exercise 12. Synthesis by Convex Optimization

FRTN10 Exercise 12. Synthesis by Convex Optimization FRTN Exercise 2. 2. We want to design a controller C for the stable SISO process P as shown in Figre 2. sing the Yola parametrization and convex optimization. To do this, the control loop mst first be

More information

CprE 281: Digital Logic

CprE 281: Digital Logic CprE 28: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Simple Processor CprE 28: Digital Logic Iowa State University, Ames, IA Copyright Alexander Stoytchev Digital

More information

On the circuit complexity of the standard and the Karatsuba methods of multiplying integers

On the circuit complexity of the standard and the Karatsuba methods of multiplying integers On the circit complexity of the standard and the Karatsba methods of mltiplying integers arxiv:1602.02362v1 [cs.ds] 7 Feb 2016 Igor S. Sergeev The goal of the present paper is to obtain accrate estimates

More information

Lecture Notes: Finite Element Analysis, J.E. Akin, Rice University

Lecture Notes: Finite Element Analysis, J.E. Akin, Rice University 9. TRUSS ANALYSIS... 1 9.1 PLANAR TRUSS... 1 9. SPACE TRUSS... 11 9.3 SUMMARY... 1 9.4 EXERCISES... 15 9. Trss analysis 9.1 Planar trss: The differential eqation for the eqilibrim of an elastic bar (above)

More information

Lecture Notes On THEORY OF COMPUTATION MODULE - 2 UNIT - 2

Lecture Notes On THEORY OF COMPUTATION MODULE - 2 UNIT - 2 BIJU PATNAIK UNIVERSITY OF TECHNOLOGY, ODISHA Lectre Notes On THEORY OF COMPUTATION MODULE - 2 UNIT - 2 Prepared by, Dr. Sbhend Kmar Rath, BPUT, Odisha. Tring Machine- Miscellany UNIT 2 TURING MACHINE

More information

Chapter 3 MATHEMATICAL MODELING OF DYNAMIC SYSTEMS

Chapter 3 MATHEMATICAL MODELING OF DYNAMIC SYSTEMS Chapter 3 MATHEMATICAL MODELING OF DYNAMIC SYSTEMS 3. System Modeling Mathematical Modeling In designing control systems we mst be able to model engineered system dynamics. The model of a dynamic system

More information

BLOOM S TAXONOMY. Following Bloom s Taxonomy to Assess Students

BLOOM S TAXONOMY. Following Bloom s Taxonomy to Assess Students BLOOM S TAXONOMY Topic Following Bloom s Taonomy to Assess Stdents Smmary A handot for stdents to eplain Bloom s taonomy that is sed for item writing and test constrction to test stdents to see if they

More information

Design of Digital Circuits Lecture 14: Microprogramming. Prof. Onur Mutlu ETH Zurich Spring April 2017

Design of Digital Circuits Lecture 14: Microprogramming. Prof. Onur Mutlu ETH Zurich Spring April 2017 Design of Digital Circuits Lecture 4: Microprogramming Prof. Onur Mutlu ETH Zurich Spring 27 7 April 27 Agenda for Today & Next Few Lectures! Single-cycle Microarchitectures! Multi-cycle and Microprogrammed

More information

Department of Electrical and Computer Engineering The University of Texas at Austin

Department of Electrical and Computer Engineering The University of Texas at Austin Department of Electrical and Computer Engineering The University of Texas at Austin EE 360N, Fall 2004 Yale Patt, Instructor Aater Suleman, Huzefa Sanjeliwala, Dam Sunwoo, TAs Exam 1, October 6, 2004 Name:

More information

CMP N 301 Computer Architecture. Appendix C

CMP N 301 Computer Architecture. Appendix C CMP N 301 Computer Architecture Appendix C Outline Introduction Pipelining Hazards Pipelining Implementation Exception Handling Advanced Issues (Dynamic Scheduling, Out of order Issue, Superscalar, etc)

More information

Assignment Fall 2014

Assignment Fall 2014 Assignment 5.086 Fall 04 De: Wednesday, 0 December at 5 PM. Upload yor soltion to corse website as a zip file YOURNAME_ASSIGNMENT_5 which incldes the script for each qestion as well as all Matlab fnctions

More information

EXAMPLES 4/12/2018. The MIPS Pipeline. Hazard Summary. Show the pipeline diagram. Show the pipeline diagram. Pipeline Datapath and Control

EXAMPLES 4/12/2018. The MIPS Pipeline. Hazard Summary. Show the pipeline diagram. Show the pipeline diagram. Pipeline Datapath and Control The MIPS Pipeline CSCI206 - Computer Organization & Programming Pipeline Datapath and Control zybook: 11.6 Developed and maintained by the Bucknell University Computer Science Department - 2017 Hazard

More information

CSc 256 Midterm 2 Fall 2010

CSc 256 Midterm 2 Fall 2010 CSc 256 Midterm 2 Fall 2010 NAME: 1a)YouaregivenaMIPSbranchinstruction: x:beq$12,$0,y Theaddressofthelabel"y"is0x40013c.Thememorylocationat"x"contains: addresscontents 0x4002080001000110000000????????????????...whichrepresentsthebeqinstruction;the????...????arethe

More information

Essentials of optimal control theory in ECON 4140

Essentials of optimal control theory in ECON 4140 Essentials of optimal control theory in ECON 4140 Things yo need to know (and a detail yo need not care abot). A few words abot dynamic optimization in general. Dynamic optimization can be thoght of as

More information

EXPT. 5 DETERMINATION OF pk a OF AN INDICATOR USING SPECTROPHOTOMETRY

EXPT. 5 DETERMINATION OF pk a OF AN INDICATOR USING SPECTROPHOTOMETRY EXPT. 5 DETERMITIO OF pk a OF IDICTOR USIG SPECTROPHOTOMETRY Strctre 5.1 Introdction Objectives 5.2 Principle 5.3 Spectrophotometric Determination of pka Vale of Indicator 5.4 Reqirements 5.5 Soltions

More information

Classify by number of ports and examine the possible structures that result. Using only one-port elements, no more than two elements can be assembled.

Classify by number of ports and examine the possible structures that result. Using only one-port elements, no more than two elements can be assembled. Jnction elements in network models. Classify by nmber of ports and examine the possible strctres that reslt. Using only one-port elements, no more than two elements can be assembled. Combining two two-ports

More information

Discontinuous Fluctuation Distribution for Time-Dependent Problems

Discontinuous Fluctuation Distribution for Time-Dependent Problems Discontinos Flctation Distribtion for Time-Dependent Problems Matthew Hbbard School of Compting, University of Leeds, Leeds, LS2 9JT, UK meh@comp.leeds.ac.k Introdction For some years now, the flctation

More information

UNCERTAINTY FOCUSED STRENGTH ANALYSIS MODEL

UNCERTAINTY FOCUSED STRENGTH ANALYSIS MODEL 8th International DAAAM Baltic Conference "INDUSTRIAL ENGINEERING - 19-1 April 01, Tallinn, Estonia UNCERTAINTY FOCUSED STRENGTH ANALYSIS MODEL Põdra, P. & Laaneots, R. Abstract: Strength analysis is a

More information

CMU Introduction to Computer Architecture, Spring 2015 HW 2: ISA Tradeoffs, Microprogramming and Pipelining

CMU Introduction to Computer Architecture, Spring 2015 HW 2: ISA Tradeoffs, Microprogramming and Pipelining CMU 18-447 Introduction to Computer Architecture, Spring 2015 HW 2: ISA Tradeoffs, Microprogramming and Pipelining Instructor: Prof Onur Mutlu TAs: Rachata Ausavarungnirun, Kevin Chang, Albert Cho, Jeremie

More information

Multi-Voltage Floorplan Design with Optimal Voltage Assignment

Multi-Voltage Floorplan Design with Optimal Voltage Assignment Mlti-Voltage Floorplan Design with Optimal Voltage Assignment ABSTRACT Qian Zaichen Department of CSE The Chinese University of Hong Kong Shatin,N.T., Hong Kong zcqian@cse.chk.ed.hk In this paper, we stdy

More information

Arithmetic and Logic Unit First Part

Arithmetic and Logic Unit First Part Arithmetic and Logic Unit First Part Arquitectura de Computadoras Arturo Díaz D PérezP Centro de Investigación n y de Estudios Avanzados del IPN adiaz@cinvestav.mx Arquitectura de Computadoras ALU1-1 Typical

More information

Numbers and Arithmetic

Numbers and Arithmetic Numbers and Arithmetic See: P&H Chapter 2.4 2.6, 3.2, C.5 C.6 Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University Big Picture: Building a Processor memory inst register file alu

More information

中村宏 工学部計数工学科 情報理工学系研究科システム情報学専攻 計算システム論第 2 1

中村宏 工学部計数工学科 情報理工学系研究科システム情報学専攻 計算システム論第 2 1 計算システム論第 2 (3 章 ) 中村宏 工学部計数工学科 情報理工学系研究科システム情報学専攻 計算システム論第 2 IPS Assembly Langage ( 抜粋 ) IPS operands Name Eample Comments $s-$s7, $t-$t9, $zero, Fast locations for data. In IPS, data mst be in registers

More information

Computer Architecture. ECE 361 Lecture 5: The Design Process & ALU Design. 361 design.1

Computer Architecture. ECE 361 Lecture 5: The Design Process & ALU Design. 361 design.1 Computer Architecture ECE 361 Lecture 5: The Design Process & Design 361 design.1 Quick Review of Last Lecture 361 design.2 MIPS ISA Design Objectives and Implications Support general OS and C- style language

More information

State and Finite State Machines

State and Finite State Machines State and Finite State Machines See P&H Appendix C.7. C.8, C.10, C.11 Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University Big Picture: Building a Processor memory inst register

More information

FRÉCHET KERNELS AND THE ADJOINT METHOD

FRÉCHET KERNELS AND THE ADJOINT METHOD PART II FRÉCHET KERNES AND THE ADJOINT METHOD 1. Setp of the tomographic problem: Why gradients? 2. The adjoint method 3. Practical 4. Special topics (sorce imaging and time reversal) Setp of the tomographic

More information

A Second Datapath Example YH16

A Second Datapath Example YH16 A Second Datapath Example YH16 Lecture 09 Prof. Yih Huang S365 1 A 16-Bit Architecture: YH16 A word is 16 bit wide 32 general purpose registers, 16 bits each Like MIPS, 0 is hardwired zero. 16 bit P 16

More information

Figure 4.9 MARIE s Datapath

Figure 4.9 MARIE s Datapath Term Control Word Microoperation Hardwired Control Microprogrammed Control Discussion A set of signals that executes a microoperation. A register transfer or other operation that the CPU can execute in

More information

Technical Note. ODiSI-B Sensor Strain Gage Factor Uncertainty

Technical Note. ODiSI-B Sensor Strain Gage Factor Uncertainty Technical Note EN-FY160 Revision November 30, 016 ODiSI-B Sensor Strain Gage Factor Uncertainty Abstract Lna has pdated or strain sensor calibration tool to spport NIST-traceable measrements, to compte

More information

Outcomes. Spiral 1 / Unit 3. The Problem SYNTHESIZING LOGIC FUNCTIONS

Outcomes. Spiral 1 / Unit 3. The Problem SYNTHESIZING LOGIC FUNCTIONS -3. -3.2 Outcomes Spiral / Unit 3 Minterm and Materms Canonical Sums and Products 2 and 3 Variable oolean lgebra Theorems emorgan's Theorem unction Snthesis use Canonical Sums/Products Mark Redekopp I

More information

Unit 6: Branch Prediction

Unit 6: Branch Prediction CIS 501: Computer Architecture Unit 6: Branch Prediction Slides developed by Joe Devie/, Milo Mar4n & Amir Roth at Upenn with sources that included University of Wisconsin slides by Mark Hill, Guri Sohi,

More information

Reflections on a mismatched transmission line Reflections.doc (4/1/00) Introduction The transmission line equations are given by

Reflections on a mismatched transmission line Reflections.doc (4/1/00) Introduction The transmission line equations are given by Reflections on a mismatched transmission line Reflections.doc (4/1/00) Introdction The transmission line eqations are given by, I z, t V z t l z t I z, t V z, t c z t (1) (2) Where, c is the per-nit-length

More information

Outcomes. Spiral 1 / Unit 2. Boolean Algebra BOOLEAN ALGEBRA INTRO. Basic Boolean Algebra Logic Functions Decoders Multiplexers

Outcomes. Spiral 1 / Unit 2. Boolean Algebra BOOLEAN ALGEBRA INTRO. Basic Boolean Algebra Logic Functions Decoders Multiplexers -2. -2.2 piral / Unit 2 Basic Boolean Algebra Logic Functions Decoders Multipleers Mark Redekopp Outcomes I know the difference between combinational and sequential logic and can name eamples of each.

More information

10.2 Solving Quadratic Equations by Completing the Square

10.2 Solving Quadratic Equations by Completing the Square . Solving Qadratic Eqations b Completing the Sqare Consider the eqation ( ) We can see clearl that the soltions are However, What if the eqation was given to s in standard form, that is 6 How wold we go

More information

FEA Solution Procedure

FEA Solution Procedure EA Soltion Procedre (demonstrated with a -D bar element problem) MAE 5 - inite Element Analysis Several slides from this set are adapted from B.S. Altan, Michigan Technological University EA Procedre for

More information

Distribution Network Planning Based on Entropy Fuzzy Comprehensive

Distribution Network Planning Based on Entropy Fuzzy Comprehensive Applied Mechanics and Materials Vols. 6-8 010 pp 780-784 Online: 010-06-30 010 Trans Tech Pblications, Switzerland doi:10.408/www.scientific.net/amm.6-8.780 Distribtion Network Planning Based on Entropy

More information

Discussion Papers Department of Economics University of Copenhagen

Discussion Papers Department of Economics University of Copenhagen Discssion Papers Department of Economics University of Copenhagen No. 10-06 Discssion of The Forward Search: Theory and Data Analysis, by Anthony C. Atkinson, Marco Riani, and Andrea Ceroli Søren Johansen,

More information

Lecture 3, Performance

Lecture 3, Performance Lecture 3, Performance Repeating some definitions: CPI Clocks Per Instruction MHz megahertz, millions of cycles per second MIPS Millions of Instructions Per Second = MHz / CPI MOPS Millions of Operations

More information

STEP Support Programme. STEP III Hyperbolic Functions: Solutions

STEP Support Programme. STEP III Hyperbolic Functions: Solutions STEP Spport Programme STEP III Hyperbolic Fnctions: Soltions Start by sing the sbstittion t cosh x. This gives: sinh x cosh a cosh x cosh a sinh x t sinh x dt t dt t + ln t ln t + ln cosh a ln ln cosh

More information

Joint Transfer of Energy and Information in a Two-hop Relay Channel

Joint Transfer of Energy and Information in a Two-hop Relay Channel Joint Transfer of Energy and Information in a Two-hop Relay Channel Ali H. Abdollahi Bafghi, Mahtab Mirmohseni, and Mohammad Reza Aref Information Systems and Secrity Lab (ISSL Department of Electrical

More information

Lecture 3, Performance

Lecture 3, Performance Repeating some definitions: Lecture 3, Performance CPI MHz MIPS MOPS Clocks Per Instruction megahertz, millions of cycles per second Millions of Instructions Per Second = MHz / CPI Millions of Operations

More information

FEA Solution Procedure

FEA Solution Procedure EA Soltion rocedre (demonstrated with a -D bar element problem) MAE - inite Element Analysis Many slides from this set are originally from B.S. Altan, Michigan Technological U. EA rocedre for Static Analysis.

More information

COVER SHEET: Problem#: Points

COVER SHEET: Problem#: Points EEL 4712 Midterm 3 Spring 2017 VERSION 1 Name: UFID: Sign here to give permission for your test to be returned in class, where others might see your score: IMPORTANT: Please be neat and write (or draw)

More information

Simplified Identification Scheme for Structures on a Flexible Base

Simplified Identification Scheme for Structures on a Flexible Base Simplified Identification Scheme for Strctres on a Flexible Base L.M. Star California State University, Long Beach G. Mylonais University of Patras, Greece J.P. Stewart University of California, Los Angeles

More information

I block CLK 1 CLK 2. Oscillator - Delay block. circuit. US Al. Jun.28,2011 P21 P11 P22 P12. PlN P2N. (19) United States

I block CLK 1 CLK 2. Oscillator - Delay block. circuit. US Al. Jun.28,2011 P21 P11 P22 P12. PlN P2N. (19) United States (19) United States c12) Patent Application Pblication Wang et al. 111111 1111111111111111111111111111111111111111111111111111111111111111111111111111 US 21227143Al (1) Pb. o.: US 212/27143 A1 (43) Pb.

More information

1. Tractable and Intractable Computational Problems So far in the course we have seen many problems that have polynomial-time solutions; that is, on

1. Tractable and Intractable Computational Problems So far in the course we have seen many problems that have polynomial-time solutions; that is, on . Tractable and Intractable Comptational Problems So far in the corse we have seen many problems that have polynomial-time soltions; that is, on a problem instance of size n, the rnning time T (n) = O(n

More information

PREDICTABILITY OF SOLID STATE ZENER REFERENCES

PREDICTABILITY OF SOLID STATE ZENER REFERENCES PREDICTABILITY OF SOLID STATE ZENER REFERENCES David Deaver Flke Corporation PO Box 99 Everett, WA 986 45-446-6434 David.Deaver@Flke.com Abstract - With the advent of ISO/IEC 175 and the growth in laboratory

More information

Math 116 First Midterm October 14, 2009

Math 116 First Midterm October 14, 2009 Math 116 First Midterm October 14, 9 Name: EXAM SOLUTIONS Instrctor: Section: 1. Do not open this exam ntil yo are told to do so.. This exam has 1 pages inclding this cover. There are 9 problems. Note

More information

Numbers and Arithmetic

Numbers and Arithmetic Numbers and Arithmetic See: P&H Chapter 2.4 2.6, 3.2, C.5 C.6 Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University Big Picture: Building a Processor memory inst register file alu

More information