Overview of Control. CS 152 Computer Architecture and Engineering Lecture 11. Multicycle Controller Design

Size: px
Start display at page:

Download "Overview of Control. CS 152 Computer Architecture and Engineering Lecture 11. Multicycle Controller Design"

Transcription

1 S 152 ompute chitectue and Engineeing Lectue 11 Multicycle ontolle Design Oveview of ontol ontol may be designed using one of seveal initial epesentations. The choice of sequence contol, and how logic is epesented, can then be detemined independently; the contol can then be implemented with one of seveal methods using a stuctued logic technique. Initial Repesentation Finite State Diagam Micopogam Ma 8, 1999 John Kubiatowicz (http.cs.bekeley.edu/~kubiton) Sequencing ontol Explicit Next State Micopogam counte Function + Dispatch ROMs Logic Repesentation Logic Equations Tuth Tables lectue slides: Lec11.1 Implementation PL ROM Technique hadwied contol micopogammed contol Lec11.2 Recap: Macoinstuction Intepetation The ig Pictue: Whee ae We Now? Main Memoy execution unit DD SU ND... DT Use pogam plus Data this can change! one of these is mapped into one of these The Five lassic omponents of a ompute Pocesso ontol Memoy Datapath Output PU contol memoy ND micosequence e.g., Fetch alc Opeand dd Fetch Opeand(s) alculate Save nswe(s) Lec11.3 Today s Topics: Micopogamed contol dministivia; ouses Micopogam it youself Exceptions Into to Pipelining (if time pemits) Lec11.4

2 Recap: Hoizontal vs. Vetical Micopogamming Recap: Designing a Micoinstuction Set NOTE: pevious oganization is not TRUE hoizontal micopogamming; egiste decodes give flavo of encoded micoopeations Most micopogamming-based contolles vay between: hoizontal oganization (1 contol bit pe contol point) vetical oganization (fields encoded in the contol memoy and must be decoded to contol something) Hoizontal + moe contol ove the potential paallelism of opeations in the datapath - uses up lots of contol stoe Vetical + easie to pogam, not vey diffeent fom pogamming a RIS machine in assembly language - exta level of decoding may slow the machine down 1) Stat with list of contol signals 2) Goup signals togethe that make sense (vs. andom): called fields 3) Places fields in some logical ode (e.g., LU opeation & LU opeands fist and micoinstuction sequencing last) 4) eate a symbolic legend fo the micoinstuction fomat, showing name of field values and how they set the contol signals Use computes to design computes 5) To minimize the width, encode opeations that will neve be used at the same time Lec11.5 Lec11.6 ltenative datapath (book): Multiple ycle Datapath Miminizes Hadwae: 1 memoy, 1 adde PW P PWond Zeo IoD MemW IRW 0 Mux 1 Rd Ideal Memoy Wd Din Dout Instuction Reg RegDst Rs Rt 5 Rt 0 5 Rd 1 1 Mux 0 Mem Data Reg Imm 16 Mux ExtOp Extend RegW Ra Rb bus Reg File Rw busw bus << 2 MemtoReg LUSel 4 PSc 0 Mux Mux 0 LUSel Zeo LU LU ontol LUOp LU Out Lec11.7 Finite State Machine (FSM) Spec R-type <= fun 0100 R[d] <= 0101 ORi <= o ZX 0110 R[t] <= 0111 IR <= MEM[P] P <= P LW <= + SX 1000 M <= MEM[] 1001 R[t] <= M 1010 instuction fetch decode SW <= + SX 1011 MEM[] <= 1100 EQ Q: How impove to do something in state 0001? <= P +SX 0010 If = then P <= 0011 Execute Memoy Wite-back Lec11.8

3 Single it ontol 1&2) Stat with list of contol signals, gouped into fields Signal name Effect when deasseted Effect when asseted LUSel 1st LU opeand = P 1st LU opeand = Reg[s] RegWite None Reg. is witten MemtoReg Reg. wite data input = LU Reg. wite data input = memoy RegDst Reg. dest. no. = t Reg. dest. no. = d MemRead None Memoy at addess is ead, MDR <= Mem[add] MemWite None Memoy at addess is witten IoD Memoy addess = P Memoy addess = S IRWite None IR <= Memoy PWite None P <= PSouce PWiteond None IF LUzeo then P <= PSouce PSouce PSouce = LU PSouce = Signal name Value Effect LUOp 00 LU adds 01 LU subtacts 10 LU does function code 11 LU does logical OR LUSel 000 2nd LU input = Reg[t] 001 2nd LU input = nd LU input = sign extended IR[15-0] 011 2nd LU input = sign extended, shift left 2 IR[15-0] 100 2nd LU input = zeo extended IR[15-0] Lec11.9 Multiple it ontol Stat with list of contol signals, cont d Fo next state function (next micoinstuction addess), use Sequence-based contol unit fom last lectue alled micop o µp vs. state egiste Signal Value Effect Sequen 00 Next µaddess = 0 -cing 01 Next µaddess = dispatch ROM 10 Next µaddess = µaddess + 1 ould even include banch option which changes micop by adding offset when cetain contol signals ae tue. 1 dde µddess Select Logic micop Mux ROM Opcode Lec ) Micoinstuction Fomat: unencoded vs. encoded fields Field Name Width ontol Signals Set wide naow LU ontol 4 2 LUOp SR1 2 1 LUSel SR2 5 3 LUSel LU Destination 3 2 RegWite, MemtoReg, RegDst Memoy 4 3 MemRead, MemWite, IoD Memoy Registe 1 1 IRWite PWite ontol 4 3 PWite, PWiteond, PSouce Sequencing 3 2 ddtl Total width bits 4) Legend of Fields and Symbolic Names Field Name Values fo Field Function of Field with Specific Value LU dd LU adds Subt. LU subtacts Func code LU does function code O LU does logical OR SR1 P 1st LU input = P s 1st LU input = Reg[s] SR2 4 2nd LU input = 4 Extend 2nd LU input = sign ext. IR[15-0] Extend0 2nd LU input = zeo ext. IR[15-0] Extshft 2nd LU input = sign ex., sl IR[15-0] t 2nd LU input = Reg[t] destination d LU Reg[d] = t LU Reg[t] = t Mem Reg[t] = Mem Memoy Read P Read memoy using P Read LU Read memoy using LU output Wite LU Wite memoy using LU output Memoy egiste IR IR = Mem P wite LU P = LU ond IF LU Zeo then P = Sequencing Seq Go to sequential µinstuction Fetch Go to the fist micoinstuction Dispatch Dispatch using ROM. Lec11.11 Lec11.12

4 Micopogam it youself! Label LU SR1 SR2 LU Dest. Memoy Mem. Reg. P Wite Sequencing Fetch: dd P 4 Read P IR LU Seq dministivia Enjoyed meeting eveyone afte midtem ee and pizza was a geat way to say hello to eveyone Lots of people heading fo industy. Midtem gaded, scoes posted veage scoe: 70.0 Std. Dev: 16.8 Now, stat eading hapte 6 Lec11.13 Lec11.14 Midtem I distibution Multiplie Midtem 1 Distibution Multiplicand Multiplie Multiplicand Registe LoadMp Fequency VG: 70.0 STD: 16.8 Save out out -bit dde HI egiste ( bits) LO egiste ( bits) Shiftll LO[0] ontol Logic Scoe LoadHI leahi LoadLO Result[HI] Result[LO] Lec11.15 Lec11.16

5 Single it ooth Multiplie HI[31] out Multi[31] -bit LU Multiplicand Multiplicand Registe Sub/dd LoadMp Multiplie ontol Logic Double it ooth Multiplie =>34 signex 34 Multiplicand Multiplicand Registe =>34 signex << LoadMp x2 MUX Multi x2/x1 34 Multiplie Save out HI egiste ( bits) LoadHI leahi Result[HI] LO egiste ( bits) LoadLO Result[LO] Shiftll Pev LO[0] ooth Encode EN[1] EN[0] "LO[0]" 2 Exta 2 bits 2 34-bit LU 34 HI egiste (16x2 bits) LoadHI leahi Sub/dd 2 LO egiste (16x2 bits) LoadLO Shiftll Pev LO[1] 2 LO[1:0] ooth Encode EN[2] EN[1] EN[0] "LO[0]" ontol Logic Lec /8/99 U Sping 1999 Result[HI] Result[LO] Lec11.18 dministivia: ouses to conside duing Telebeas Geneal Philosophy Take couses fom geat teaches (HKN atings helps find them) - Take vaiety of undegad couses now to get intoduction to aeas; can lean advanced mateial on own late once know vocabulay Who knows what you will wok on ove a 40 yea caee? S169 Softwae Engineeing Eveyone wites pogams, even hadwae designes Often pogams ae witten in goups => lean skill in school EE122 Intoduction to ommunication Netwoks Wold is getting connected; communications must play majo ole S162 Opeating Systems ll special-pupose hadwae will un a laye of softwae that uses pocesses and concuent pogamming; S162 is the closest thing Lec11.19 Lab4: stat using test benches Idea: wap testing infastuctue aound devices unde test. Include test vectos that ae supposed to detect eos in implementation. Even stange ones an (and pobably should in late labs) include asset statements to check fo things that should neve happen Test ench Device Unde Test Inline vectos sset Statements File IO (eithe fo pattens o output diagnostics) omplete Top-Level Design Inline Monito Output in eadable fomat (disassembly) sset Statements Lec11.20

6 n ltenative Multiycle DataPath What about a 2-us Micoachitectue (datapath)? -us next P P inst mem Reg IR S mem File ZX SX In each clock cycle, each us can be used to tansfe fom one souce µ-instuction can simply contain -us and W-Dst fields us W-us Instuction Fetch next P P IR ZXSX Decode / Opeand Fetch Reg File S Mem M -us us next P P IR ZXSX Reg File S Mem M Lec11.21 Lec11.22 Load Execute Mem next P next P Wite-back next P P P P IR ZXSX IR ZXSX IR ZXSX Reg File Reg File Reg File S S S Mem add Mem Mem M M M Legacy Softwae and Micopogamming IM bet company on 360 Instuction Set chitectue (IS): single instuction set fo many classes of machines (8-bit to 64-bit) Stewat Tucke stuck with job of what to do about softwae compatability If micopogamming could easily do same instuction set on many diffeent micoachitectues, then why couldn t multiple micopogams do multiple instuction sets on the same micoachitectue? oined tem emulation : instuction set intepete in micocode fo non-native instuction set Vey successful: in ealy yeas of IM 360 it was had to know whethe old instuction set o new instuction set was moe fequently used What about 1 bus? 1 adde? 1 Registe pot? Lec11.23 Lec11.24

7 Micopogamming Pos and ons Ease of design Flexibility Easy to adapt to changes in oganization, timing, technology an make changes late in design cycle, o even in the field an implement vey poweful instuction sets (just moe contol memoy) Geneality an implement multiple instuction sets on same machine. an tailo instuction set to application. ompatibility Many oganizations, same instuction set ostly to implement Slow Lec11.25 Exceptions use pogam Exception: nomal contol flow: sequential, jumps, banches, calls, etuns Exception = unpogammed contol tansfe system takes action to handle the exception - must ecod the addess of the offending instuction - ecod any othe infomation necessay to etun aftewads etuns contol to use must save & estoe use state llows constuction of a use vitual machine System Exception Handle etun fom exception Lec11.26 Two Types of Exceptions Inteupts caused by extenal events: - Netwok, Keyboad, Disk I/O, Time asynchonous to pogam execution - Most inteupts can be disabled fo bief peiods of time - Some (like Powe Failing ) ae non-maskable (NMI) may be handled between instuctions simply suspend and esume use pogam Taps MIPS convention: exception means any unexpected change in contol flow, without distinguishing intenal o extenal; use the tem inteupt only when the event is extenally caused. Type of event Fom whee? MIPS teminology I/O device equest Extenal Inteupt Invoke OS fom use pogam Intenal Exception ithmetic oveflow Intenal Exception Using an undefined instuction Intenal Exception Hadwae malfunctions Eithe Exception o Inteupt caused by intenal events - exceptional conditions (oveflow) - eos (paity) - faults (non-esident page) synchonous to pogam execution condition must be emedied by the handle 3/8/99 instuction may be etied o simulated and pogam continued o pogam may be aboted U Sping 1999 Lec11.27 Lec11.28

8 What happens to Instuction with Exception? MIPS achitectue defines the instuction as having no effect if the instuction causes an exception. When get to vitual memoy we will see that cetain classes of exceptions must pevent the instuction fom changing the machine state. This aspect of handling exceptions becomes complex and potentially limits pefomance => why it is had Lec11.29 Pecise Inteupts Pecise state of the machine is peseved as if pogam executed up to the offending instuction ll pevious instuctions completed Offending instuction and all following instuctions act as if they have not even stated Same system code will wok on diffeent implementations Position clealy established by IM Difficult in the pesence of pipelining, out-ot-ode execution,... MIPS takes this position Impecise system softwae has to figue out what is whee and put it all back togethe Pefomance goals often lead designes to fosake pecise inteupts system softwae developes, use, makets etc. usually wish they had not done this Moden techniques fo out-of-ode execution and banch pediction help implement pecise inteupts Lec11.30 ig Pictue: use / system modes y poviding two modes of execution (use/system) it is possible fo the compute to manage itself opeating system is a special pogam that uns in the pivileged mode and has access to all of the esouces of the compute pesents vitual esouces to each use that ae moe convenient that the physical esouces - files vs. disk sectos - vitual memoy vs physical memoy potects each use pogam fom othes potects system fom malicious uses. OS is assumed to know best, and is tusted code, so ente system mode on exception. Exceptions allow the system to taken action in esponse to events that occu while use pogam is executing: ddessing the Exception Handle Taditional ppoach: Inteupt Vecto P <- MEM[ IV_base + cause 00] 370, 68000, Vax, 80x86,... iv_base RIS Handle Table P < IT_base + cause 0000 saves state and jumps Spac, P, M88K,... MIPS ppoach: fixed enty P < EX_add ctually vey small table - RESET enty Might povide supplemental behavio (dealing with denomal floating-point numbes fo instance). - TL Unimplemented instuction used to emulate instuctions that - othe 3/8/99 wee not included in hadwae U Sping (I.e MicoVax) Lec11.31 iv_base cause handle code handle enty code cause Lec11.

9 Saving State Push it onto the stack Vax, 68k, 80x86 Save it in special egistes MIPS EP, advadd, Status, ause Shadow Registes M88k Save state in a shadow of the intenal pipeline egistes Lec11.33 dditions to MIPS IS to suppot Exceptions? Exception state is kept in copocesso 0. EP a -bit egiste used to hold the addess of the affected instuction (egiste 14 of copocesso 0). ause a egiste used to ecod the cause of the exception. In the MIPS achitectue this egiste is bits, though some bits ae cuently unused. ssume that bits 5 to 2 of this egiste encodes the two possible exception souces mentioned above: undefined instuction=0 and aithmetic oveflow=1 (egiste 13 of copocesso 0). advdd - egiste contained memoy addess at which memoy efeence occued (egiste 8 of copocesso 0) Status - inteupt mask and enable bits (egiste 12 of copocesso 0) ontol signals to wite EP, ause, advdd, and Status e able to wite exception addess into P, incease mux to add as input two ( hex ) May have to undo P = P + 4, since want EP to point to offending instuction (not its successo); P = P - 4 Lec11.34 Recap: Details of Status egiste Status Mask = 1 bit fo each of 5 hadwae and 3 softwae inteupt levels 1 => enables inteupts 0 => disables inteupts k = kenel/use 0 => was in the kenel when inteupt occued 1 => was unning use mode e = inteupt enable 0 => inteupts wee disabled 1 => inteupts wee enabled When inteupt occus, 6 LS shifted left 2 bits, setting 2 LS to 0 un in kenel mode with inteupts disabled Mask k e k e k e old pev cuent Lec11.35 Recap: Details of ause egiste Status Pending Pending inteupt 5 hadwae levels: bit set if inteupt occus but not yet seviced handles cases when moe than one inteupt occus at same time, o while ecods inteupt equests when inteupts disabled Exception ode encodes easons fo inteupt 0 (INT) => extenal inteupt 4 (DDRL) => addess eo exception (load o inst fetch) 5 (DDRS) => addess eo exception (stoe) 6 (IUS) => bus eo on instuction fetch 7 (DUS) => bus eo on data fetch 8 (Syscall) => Syscall exception 9 (KPT) => eakpoint exception 10 (RI) => Reseved Instuction exception 12 (OVF) => ithmetic oveflow exception 5 2 ode Lec11.36

10 How ontol Detects Exceptions in ou FSD Undefined Instuction detected when no next state is defined fom state 1 fo the op value. We handle this exception by defining the next state value fo all op values othe than lw, sw, 0 (R-type), jmp, beq, and oi as new state 12. Shown symbolically using othe to indicate that the op field does not match any of the opcodes that label acs out of state 1. ithmetic oveflow hapte 4 included logic in the LU to detect oveflow, and a signal called Oveflow is povided as an output fom the LU. This signal is used in the modified finite state machine to specify an additional possible next state Note: hallenge in designing contol of a eal machine is to handle diffeent inteactions between instuctions and othe exception-causing events such that contol logic emains small and fast. omplex inteactions makes the contol unit the most challenging aspect of hadwae design Lec11.37 How add Exceptions fo Oveflow and Unimplmented? R-type <= fun 0100 R[d] <= 0101 ORi <= op ZX 0110 R[t] <= 0111 IR <= MEM[P] P <= P <= P +SX 0001 LW <= + SX 1000 M <= MEM[] 1001 R[t] <= M 1010 instuction fetch decode SW <= + SX 1011 MEM[] <= 1100 EQ If = then P <= 0010 Execute Memoy Wite-back Lec11.38 Modification to the ontol Specification Pipelining is Natual! EP <= P - 4 P <= exp_add cause <= 12 (Ovf) R-type S <= fun 0100 oveflow R[d] <= S 0101 ORi S <= op ZX 0110 R[t] <= S 0111 IR <= MEM[P] P <= P S<= P +SX 0001 LW S <= + SX 1000 M <= MEM[S] 1001 R[t] <= M 1010 decode othe instuction fetch EQ SW S <= If - = S <= + SX then P <= S MEM[S] <= 1100 undefined instuction EP <= P - 4 P <= exp_add cause <= 10 (RI) Execute Memoy Wite-back Lec11.39 Laundy Example nn, ian, athy, Dave each have one load of clothes to wash, dy, and fold Washe takes 30 minutes Dye takes 40 minutes Folde takes 20 minutes D Lec11.40

11 T a s k O d e Sequential Laundy D 6 PM Midnight Time Sequential laundy takes 6 hous fo 4 loads If they leaned pipelining, how long would laundy take? Lec11.41 T a s k O d e Pipelined Laundy: Stat wok SP 6 PM Midnight Time D Pipelined laundy takes 3.5 hous fo 4 loads Lec11.42 T a s k O d e Pipelining Lessons D 6 PM Time Pipelining doesn t help latency of single task, it helps thoughput of entie wokload Pipeline ate limited by slowest pipeline stage Multiple tasks opeating simultaneously using diffeent esouces Potential speedup = Numbe pipe stages Unbalanced lengths of pipe stages educes speedup Time to fill pipeline and time to dain it educes speedup Stall fo Dependences Lec11.43 Pipelined Execution Time IFetch Dcd Exec Mem W Pogam Flow IFetch Dcd Exec Mem W IFetch Dcd Exec Mem W IFetch Dcd Exec Mem W Utilization? Now we just have to make it wok IFetch Dcd Exec Mem W IFetch Dcd Exec Mem W Lec11.44

12 Single ycle, Multiple ycle, vs. Pipeline ycle 1 ycle 2 lk Single ycle Implementation: Load Stoe Waste ycle 1 ycle 2 ycle 3 ycle 4 ycle 5 ycle 6 ycle 7 ycle 8 ycle 9 ycle 10 lk Multiple ycle Implementation: Load Stoe R-type Ifetch Reg Exec Mem W Ifetch Reg Exec Mem Ifetch Why Pipeline? Suppose we execute 100 instuctions Single ycle Machine 45 ns/cycle x 1 PI x 100 inst = 4500 ns Multicycle Machine 10 ns/cycle x 4.6 PI (due to inst mix) x 100 inst = 4600 ns Ideal pipelined machine 10 ns/cycle x (1 PI x 100 inst + 4 cycle dain) = 1040 ns Pipeline Implementation: Load Ifetch Reg Exec Mem W Stoe Ifetch Reg Exec Mem W R-type Ifetch Reg Exec Mem W Lec11.45 Lec11.46 Why Pipeline? ecause the esouces ae thee! an pipelining get us into touble? Time (clock cycles) Yes: Pipeline Hazads I n s t. O d e Inst 0 Inst 1 Inst 2 Inst 3 Inst 4 LU Im Reg Dm Reg LU Im Reg Dm Reg LU Im Reg Dm Reg LU Im Reg Dm Reg LU Im Reg Dm Reg stuctual hazads: attempt to use the same esouce two diffeent ways at the same time - E.g., combined washe/dye would be a stuctual hazad o folde busy doing something else (watching TV) data hazads: attempt to use item befoe it is eady - E.g., one sock of pai in dye and one in washe; can t fold until get sock fom washe though dye - instuction depends on esult of pio instuction still in the pipeline contol hazads: attempt to make a decision befoe condition is evaulated - E.g., washing football unifoms and need to get pope detegent level; need to see afte dye befoe next load in - banch instuctions an always esolve hazads by waiting Lec11.47 pipeline contol must detect the hazad 3/8/99 take action (o delay action) U Sping to esolve 1999 hazads Lec11.48

13 Summay 1/3 Specialize state-diagams easily captued by micosequence simple incement & banch fields datapath contol fields ontol design educes to Micopogamming Exceptions ae the had pat of contol Need to find convenient place to detect exceptions and to banch to state o micoinstuction that saves P and invokes the opeating system s we get pipelined PUs that suppot page faults on memoy accesses which means that the instuction cannot complete ND you must be able to estat the pogam at exactly the instuction with the exception, it gets even hade Summay 2/3 Micopogamming is a fundamental concept implement an instuction set by building a vey simple pocesso and intepeting the instuctions essential fo vey complex instuctions and when few egiste tansfes ae possible Pipelining is a fundamental concept multiple steps using distinct esouces Utilize capabilities of the Datapath by pipelined instuction pocessing stat next instuction while woking on the cuent one limited by length of longest stage (plus fill/flush) detect and esolve hazads Lec11.49 Lec11.50 Summay: Micopogamming one inspiation fo RIS If simple instuction could execute at vey high clock ate If you could even wite compiles to poduce micoinstuctions If most pogams use simple instuctions and addessing modes If micocode is kept in RM instead of ROM so as to fix bugs If same memoy used fo contol memoy could be used instead as cache fo macoinstuctions Then why not skip instuction intepetation by a micopogam and simply compile diectly into lowest language of machine? (micopogamming is ovekill when IS matches datapath 1-1) Lec11.51

Introduction To Pipelining. Chapter Pipelining1 1

Introduction To Pipelining. Chapter Pipelining1 1 Intoduction To Pipelining Chapte 6.1 - Pipelining1 1 Mooe s Law Mooe s Law says that the numbe of pocessos on a chip doubles about evey 18 months. Given the data on the following two slides, is this tue?

More information

UCB CS61C : Machine Structures

UCB CS61C : Machine Structures inst.eecs.bekeley.edu/~cs61c UCB CS61C : Machine Stuctues Lectue SOE Dan Gacia Lectue 28 CPU Design : Pipelining to Impove Pefomance 2010-04-05 Stanfod Reseaches have invented a monitoing technique called

More information

Computer Science 141 Computing Hardware

Computer Science 141 Computing Hardware Compute Science 141 Computing Hadwae Fall 2006 Havad Univesity Instucto: Pof. David Books dbooks@eecs.havad.edu [MIPS Pipeline Slides adapted fom Dave Patteson s UCB CS152 slides and May Jane Iwin s CSE331/431

More information

Lecture 8 Introduction to Pipelines Adapated from slides by David Patterson

Lecture 8 Introduction to Pipelines Adapated from slides by David Patterson Lectue 8 Intoduction to Pipelines Adapated fom slides by David Patteson http://www-inst.eecs.bekeley.edu/~cs61c/ * 1 Review (1/3) Datapath is the hadwae that pefoms opeations necessay to execute pogams.

More information

Lecture Topics ECE 341. Lecture # 12. Control Signals. Control Signals for Datapath. Basic Processing Unit. Pipelining

Lecture Topics ECE 341. Lecture # 12. Control Signals. Control Signals for Datapath. Basic Processing Unit. Pipelining EE 341 Lectue # 12 Instucto: Zeshan hishti zeshan@ece.pdx.edu Novembe 10, 2014 Potland State Univesity asic Pocessing Unit ontol Signals Hadwied ontol Datapath contol signals Dealing with memoy delay Pipelining

More information

ECE331: Hardware Organization and Design

ECE331: Hardware Organization and Design ECE331: Hadwae Oganization and Design Lectue 16: Pipelining Adapted fom Compute Oganization and Design, Patteson & Hennessy, UCB Last time: single cycle data path op System clock affects pimaily the Pogam

More information

CMCS Mohamed Younis CMCS 611, Advanced Computer Architecture 1

CMCS Mohamed Younis CMCS 611, Advanced Computer Architecture 1 CMCS 611-101 Advanced Compute Achitectue Lectue 6 Intoduction to Pipelining Septembe 23, 2009 www.csee.umbc.edu/~younis/cmsc611/cmsc611.htm Mohamed Younis CMCS 611, Advanced Compute Achitectue 1 Pevious

More information

COSC 6385 Computer Architecture. - Pipelining

COSC 6385 Computer Architecture. - Pipelining COSC 6385 Compute Achitectue - Pipelining Sping 2012 Some of the slides ae based on a lectue by David Culle, Pipelining Pipelining is an implementation technique wheeby multiple instuctions ae ovelapped

More information

The Processor: Improving Performance Data Hazards

The Processor: Improving Performance Data Hazards The Pocesso: Impoving Pefomance Data Hazads Monday 12 Octobe 15 Many slides adapted fom: and Design, Patteson & Hennessy 5th Edition, 2014, MK and fom Pof. May Jane Iwin, PSU Summay Pevious Class Pipeline

More information

Administrivia. CMSC 411 Computer Systems Architecture Lecture 5. Data Hazard Even with Forwarding Figure A.9, Page A-20

Administrivia. CMSC 411 Computer Systems Architecture Lecture 5. Data Hazard Even with Forwarding Figure A.9, Page A-20 Administivia CMSC 411 Compute Systems Achitectue Lectue 5 Basic Pipelining (cont.) Alan Sussman als@cs.umd.edu as@csu dedu Homewok poblems fo Unit 1 due today Homewok poblems fo Unit 3 posted soon CMSC

More information

User Visible Registers. CPU Structure and Function Ch 11. General CPU Organization (4) Control and Status Registers (5) Register Organisation (4)

User Visible Registers. CPU Structure and Function Ch 11. General CPU Organization (4) Control and Status Registers (5) Register Organisation (4) PU Stuctue and Function h Geneal Oganisation Registes Instuction ycle Pipelining anch Pediction Inteupts Use Visible Registes Vaies fom one achitectue to anothe Geneal pupose egiste (GPR) ata, addess,

More information

CENG 3420 Computer Organization and Design. Lecture 07: MIPS Processor - II. Bei Yu

CENG 3420 Computer Organization and Design. Lecture 07: MIPS Processor - II. Bei Yu CENG 3420 Compute Oganization and Design Lectue 07: MIPS Pocesso - II Bei Yu CEG3420 L07.1 Sping 2016 Review: Instuction Citical Paths q Calculate cycle time assuming negligible delays (fo muxes, contol

More information

CISC 662 Graduate Computer Architecture Lecture 6 - Hazards

CISC 662 Graduate Computer Architecture Lecture 6 - Hazards CISC 662 Gaduate Compute Achitectue Lectue 6 - Hazads Michela Taufe http://www.cis.udel.edu/~taufe/teaching/cis662f07 Powepoint Lectue Notes fom John Hennessy and David Patteson s: Compute Achitectue,

More information

COEN-4730 Computer Architecture Lecture 2 Review of Instruction Sets and Pipelines

COEN-4730 Computer Architecture Lecture 2 Review of Instruction Sets and Pipelines 1 COEN-4730 Compute Achitectue Lectue 2 Review of nstuction Sets and Pipelines Cistinel Ababei Dept. of Electical and Compute Engineeing Maquette Univesity Cedits: Slides adapted fom pesentations of Sudeep

More information

Computer Architecture. Pipelining and Instruction Level Parallelism An Introduction. Outline of This Lecture

Computer Architecture. Pipelining and Instruction Level Parallelism An Introduction. Outline of This Lecture Compute Achitectue Pipelining and nstuction Level Paallelism An ntoduction Adapted fom COD2e by Hennessy & Patteson Slide 1 Outline of This Lectue ntoduction to the Concept of Pipelined Pocesso Pipelined

More information

CENG 3420 Lecture 07: Pipeline

CENG 3420 Lecture 07: Pipeline CENG 3420 Lectue 07: Pipeline Bei Yu byu@cse.cuhk.edu.hk CENG3420 L07.1 Sping 2017 Outline q Review: Flip-Flop Contol Signals q Pipeline Motivations q Pipeline Hazads q Exceptions CENG3420 L07.2 Sping

More information

Lecture #22 Pipelining II, Cache I

Lecture #22 Pipelining II, Cache I inst.eecs.bekeley.edu/~cs61c CS61C : Machine Stuctues Lectue #22 Pipelining II, Cache I Wiewold cicuits 2008-7-29 http://www.maa.og/editoial/mathgames/mathgames_05_24_04.html http://www.quinapalus.com/wi-index.html

More information

Chapter 4 (Part III) The Processor: Datapath and Control (Pipeline Hazards)

Chapter 4 (Part III) The Processor: Datapath and Control (Pipeline Hazards) Chapte 4 (Pat III) The Pocesso: Datapath and Contol (Pipeline Hazads) 陳瑞奇 (J.C. Chen) 亞洲大學資訊工程學系 Adapted fom class notes by Pof. M.J. Iwin, PSU and Pof. D. Patteson, UCB 1 吃感冒藥副作用怎麼辦? http://big5.sznews.com/health/images/attachement/jpg/site3/20120319/001558d90b3310d0c1683e.jpg

More information

CS 61C: Great Ideas in Computer Architecture. Pipelining Hazards. Instructor: Senior Lecturer SOE Dan Garcia

CS 61C: Great Ideas in Computer Architecture. Pipelining Hazards. Instructor: Senior Lecturer SOE Dan Garcia CS 61C: Geat Ideas in Compute Achitectue Pipelining Hazads Instucto: Senio Lectue SOE Dan Gacia 1 Geat Idea #4: Paallelism So9wae Paallel Requests Assigned to compute e.g. seach Gacia Paallel Theads Assigned

More information

CS 2461: Computer Architecture 1 Program performance and High Performance Processors

CS 2461: Computer Architecture 1 Program performance and High Performance Processors Couse Objectives: Whee ae we. CS 2461: Pogam pefomance and High Pefomance Pocessos Instucto: Pof. Bhagi Naahai Bits&bytes: Logic devices HW building blocks Pocesso: ISA, datapath Using building blocks

More information

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instruc>on Level Parallelism

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Instruc>on Level Parallelism Agenda CS 61C: Geat Ideas in Compute Achitectue (Machine Stuctues) Instuc>on Level Paallelism Instuctos: Randy H. Katz David A. PaJeson hjp://inst.eecs.bekeley.edu/~cs61c/fa10 Review Instuc>on Set Design

More information

CSE4201. Computer Architecture

CSE4201. Computer Architecture CSE 4201 Compute Achitectue Pof. Mokhta Aboelaze Pats of these slides ae taken fom Notes by Pof. David Patteson at UCB Outline MIPS and instuction set Simple pipeline in MIPS Stuctual and data hazads Fowading

More information

Initial Representation Finite State Diagram Microprogram. Sequencing Control Explicit Next State Microprogram counter

Initial Representation Finite State Diagram Microprogram. Sequencing Control Explicit Next State Microprogram counter Control Implementation Alternatives Control may be designed using one of several initial representations. The choice of sequence control, and how logic is represented, can then be determined independently;

More information

You Are Here! Review: Hazards. Agenda. Agenda. Review: Load / Branch Delay Slots 7/28/2011

You Are Here! Review: Hazards. Agenda. Agenda. Review: Load / Branch Delay Slots 7/28/2011 CS 61C: Geat Ideas in Compute Achitectue (Machine Stuctues) Instuction Level Paallelism: Multiple Instuction Issue Guest Lectue: Justin Hsia Softwae Paallel Requests Assigned to compute e.g., Seach Katz

More information

CS 152 Computer Architecture and Engineering. Lecture 12: Multicycle Controller Design

CS 152 Computer Architecture and Engineering. Lecture 12: Multicycle Controller Design CS 152 Computer Architecture and Engineering Lecture 12: Multicycle Controller Design October 10, 1997 Dave Patterson (http.cs.berkeley.edu/~patterson) lecture slides: http://www-inst.eecs.berkeley.edu/~cs152/

More information

CS 61C: Great Ideas in Computer Architecture Instruc(on Level Parallelism: Mul(ple Instruc(on Issue

CS 61C: Great Ideas in Computer Architecture Instruc(on Level Parallelism: Mul(ple Instruc(on Issue CS 61C: Geat Ideas in Compute Achitectue Instuc(on Level Paallelism: Mul(ple Instuc(on Issue Instuctos: Kste Asanovic, Randy H. Katz hbp://inst.eecs.bekeley.edu/~cs61c/fa12 1 Paallel Requests Assigned

More information

Initial Representation Finite State Diagram. Logic Representation Logic Equations

Initial Representation Finite State Diagram. Logic Representation Logic Equations Control Implementation Alternatives Control may be designed using one of several initial representations. The choice of sequence control, and how logic is represented, can then be determined independently;

More information

Overview of Control. CS 152 Computer Architecture and Engineering Lecture 11. Multicycle Controller Design

Overview of Control. CS 152 Computer Architecture and Engineering Lecture 11. Multicycle Controller Design Overview of ontrol S 52 omputer Architecture and Engineering Lecture Multicycle ontroller Design ontrol may be designed using one of several initial representations. The choice of sequence control, and

More information

Review from last lecture

Review from last lecture CSE820 Gaduate Compute Achitectue Week 3 Pefomance + Pipeline Review Based on slides by David Patteson Review fom last lectue Tacking and extapolating technology pat of achitect s esponsibility Expect

More information

Any modern computer system will incorporate (at least) two levels of storage:

Any modern computer system will incorporate (at least) two levels of storage: 1 Any moden compute system will incopoate (at least) two levels of stoage: pimay stoage: andom access memoy (RAM) typical capacity 32MB to 1GB cost pe MB $3. typical access time 5ns to 6ns bust tansfe

More information

Accelerating Storage with RDMA Max Gurtovoy Mellanox Technologies

Accelerating Storage with RDMA Max Gurtovoy Mellanox Technologies Acceleating Stoage with RDMA Max Gutovoy Mellanox Technologies 2018 Stoage Develope Confeence EMEA. Mellanox Technologies. All Rights Reseved. 1 What is RDMA? Remote Diect Memoy Access - povides the ability

More information

A Memory Efficient Array Architecture for Real-Time Motion Estimation

A Memory Efficient Array Architecture for Real-Time Motion Estimation A Memoy Efficient Aay Achitectue fo Real-Time Motion Estimation Vasily G. Moshnyaga and Keikichi Tamau Depatment of Electonics & Communication, Kyoto Univesity Sakyo-ku, Yoshida-Honmachi, Kyoto 66-1, JAPAN

More information

ECE468 Computer Organization and Architecture. Designing a Multiple Cycle Controller

ECE468 Computer Organization and Architecture. Designing a Multiple Cycle Controller ECE468 Computer Organization and Architecture Designing a Multiple Cycle Controller ECE468 multicontroller Review of a Multiple Cycle Implementation The root of the single cycle processor s problems: The

More information

Review: Moore s Law. EECS 252 Graduate Computer Architecture Lecture 2. Review: Joy s Law in ManyCore world. Bell s Law new class per decade

Review: Moore s Law. EECS 252 Graduate Computer Architecture Lecture 2. Review: Joy s Law in ManyCore world. Bell s Law new class per decade EECS 252 Gaduate Compute Achitectue Lectue 2 ℵ 0 Review of Instuction Sets, Pipelines, and Caches Januay 26 th, 2009 Review Mooe s Law John Kubiatowicz Electical Engineeing and Compute Sciences Univesity

More information

CS152 Computer Architecture and Engineering Lecture 13: Microprogramming and Exceptions. Review of a Multiple Cycle Implementation

CS152 Computer Architecture and Engineering Lecture 13: Microprogramming and Exceptions. Review of a Multiple Cycle Implementation CS152 Computer Architecture and Engineering Lecture 13: Microprogramming and Exceptions March 3, 1995 Dave Patterson (patterson@cs) and Shing Kong (shing.kong@eng.sun.com) Slides available on http://http.cs.berkeley.edu/~patterson

More information

Designing a Multicycle Processor

Designing a Multicycle Processor Designing a Multicycle Processor 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 Multicycle-

More information

Major CPU Design Steps

Major CPU Design Steps Datapath Major CPU Design Steps. Analyze instruction set operations using independent RTN ISA => RTN => datapath requirements. This provides the the required datapath components and how they are connected

More information

dc - Linux Command Dc may be invoked with the following command-line options: -V --version Print out the version of dc

dc - Linux Command Dc may be invoked with the following command-line options: -V --version Print out the version of dc - CentOS 5.2 - Linux Uses Guide - Linux Command SYNOPSIS [-V] [--vesion] [-h] [--help] [-e sciptexpession] [--expession=sciptexpession] [-f sciptfile] [--file=sciptfile] [file...] DESCRIPTION is a evese-polish

More information

CS152 Computer Architecture and Engineering. Lecture 8 Multicycle Design and Microcode John Lazzaro (www.cs.berkeley.

CS152 Computer Architecture and Engineering. Lecture 8 Multicycle Design and Microcode John Lazzaro (www.cs.berkeley. CS152 Computer Architecture and Engineering Lecture 8 Multicycle Design and Microcode 2004-09-23 John Lazzaro (www.cs.berkeley.edu/~lazzaro) Dave Patterson (www.cs.berkeley.edu/~patterson) www-inst.eecs.berkeley.edu/~cs152/

More information

CPU Design Steps. EECC550 - Shaaban

CPU Design Steps. EECC550 - Shaaban CPU Design Steps 1. Analyze instruction set operations using independent RTN => datapath requirements. 2. Select set of datapath components & establish clock methodology. 3. Assemble datapath meeting the

More information

The Big Picture: Where are We Now? CS 152 Computer Architecture and Engineering Lecture 11. The Five Classic Components of a Computer

The Big Picture: Where are We Now? CS 152 Computer Architecture and Engineering Lecture 11. The Five Classic Components of a Computer The Big Picture: Where are We Now? S 5 omputer Architecture and ngineering Lecture Multicycle ontroller esign (ontinued) The Five lassic omponents of a omputer Processor Input ontrol atapath Output Today

More information

IP Multicast Simulation in OPNET

IP Multicast Simulation in OPNET IP Multicast Simulation in OPNET Xin Wang, Chien-Ming Yu, Henning Schulzinne Paul A. Stipe Columbia Univesity Reutes Depatment of Compute Science 88 Pakway Dive South New Yok, New Yok Hauppuage, New Yok

More information

Recap: A Single Cycle Datapath. CS 152 Computer Architecture and Engineering Lecture 8. Single-Cycle (Con t) Designing a Multicycle Processor

Recap: A Single Cycle Datapath. CS 152 Computer Architecture and Engineering Lecture 8. Single-Cycle (Con t) Designing a Multicycle Processor CS 52 Computer Architecture and Engineering Lecture 8 Single-Cycle (Con t) Designing a Multicycle Processor February 23, 24 John Kubiatowicz (www.cs.berkeley.edu/~kubitron) lecture slides: http://inst.eecs.berkeley.edu/~cs52/

More information

Getting Started PMW-EX1/PMW-EX3. 1 Rotate the grip with the RELEASE button pressed. Overview. Connecting the Computer and PMW-EX1/EX3

Getting Started PMW-EX1/PMW-EX3. 1 Rotate the grip with the RELEASE button pressed. Overview. Connecting the Computer and PMW-EX1/EX3 A PMW-EX1/PMW-EX3 Getting Stated Oveview This document descibes how to use the XDCAM EX Vesion Up Tool (heeafte Vesion Up Tool ) to upgade the PMW-EX1 and PMW-EX3 to vesion 1.20 (PMW-EX1) o vesion 1.10

More information

Persistent Memory what developers need to know Mark Carlson Co-chair SNIA Technical Council Toshiba

Persistent Memory what developers need to know Mark Carlson Co-chair SNIA Technical Council Toshiba Pesistent Memoy what developes need to know Mak Calson Co-chai SNIA Technical Council Toshiba 2018 Stoage Develope Confeence EMEA. All Rights Reseved. 1 Contents Welcome Pesistent Memoy Oveview Non-Volatile

More information

CS 61C: Great Ideas in Computer Architecture Control and Pipelining

CS 61C: Great Ideas in Computer Architecture Control and Pipelining CS 6C: Great Ideas in Computer Architecture Control and Pipelining Instructors: Vladimir Stojanovic and Nicholas Weaver http://inst.eecs.berkeley.edu/~cs6c/sp6 Datapath Control Signals ExtOp: zero, sign

More information

a Not yet implemented in current version SPARK: Research Kit Pointer Analysis Parameters Soot Pointer analysis. Objectives

a Not yet implemented in current version SPARK: Research Kit Pointer Analysis Parameters Soot Pointer analysis. Objectives SPARK: Soot Reseach Kit Ondřej Lhoták Objectives Spak is a modula toolkit fo flow-insensitive may points-to analyses fo Java, which enables expeimentation with: vaious paametes of pointe analyses which

More information

Computer Architecture. Lecture 6.1: Fundamentals of

Computer Architecture. Lecture 6.1: Fundamentals of CS3350B Computer Architecture Winter 2015 Lecture 6.1: Fundamentals of Instructional Level Parallelism Marc Moreno Maza www.csd.uwo.ca/courses/cs3350b [Adapted from lectures on Computer Organization and

More information

Multicycle conclusion

Multicycle conclusion Multicycle conclusion The last few lectures covered a lot of material! We introduced a multicycle datapath, where different instructions take different numbers of cycles to execute. A multicycle unit is

More information

High performance CUDA based CNN image processor

High performance CUDA based CNN image processor High pefomance UDA based NN image pocesso GEORGE VALENTIN STOIA, RADU DOGARU, ELENA RISTINA STOIA Depatment of Applied Electonics and Infomation Engineeing Univesity Politehnica of Buchaest -3, Iuliu Maniu

More information

Lecture 7 Pipelining. Peng Liu.

Lecture 7 Pipelining. Peng Liu. Lecture 7 Pipelining Peng Liu liupeng@zju.edu.cn 1 Review: The Single Cycle Processor 2 Review: Given Datapath,RTL -> Control Instruction Inst Memory Adr Op Fun Rt

More information

ANALYTIC PERFORMANCE MODELS FOR SINGLE CLASS AND MULTIPLE CLASS MULTITHREADED SOFTWARE SERVERS

ANALYTIC PERFORMANCE MODELS FOR SINGLE CLASS AND MULTIPLE CLASS MULTITHREADED SOFTWARE SERVERS ANALYTIC PERFORMANCE MODELS FOR SINGLE CLASS AND MULTIPLE CLASS MULTITHREADED SOFTWARE SERVERS Daniel A Menascé Mohamed N Bennani Dept of Compute Science Oacle, Inc Geoge Mason Univesity 1211 SW Fifth

More information

Modeling a shared medium access node with QoS distinction

Modeling a shared medium access node with QoS distinction Modeling a shaed medium access node with QoS distinction Matthias Gies, Jonas Geutet Compute Engineeing and Netwoks Laboatoy (TIK) Swiss Fedeal Institute of Technology Züich CH-8092 Züich, Switzeland email:

More information

CS 152 Computer Architecture and Engineering. Lecture 10: Designing a Multicycle Processor

CS 152 Computer Architecture and Engineering. Lecture 10: Designing a Multicycle Processor CS 152 Computer Architecture and Engineering Lecture 1: Designing a Multicycle Processor October 1, 1997 Dave Patterson (http.cs.berkeley.edu/~patterson) lecture slides: http://www-inst.eecs.berkeley.edu/~cs152/

More information

Image Enhancement in the Spatial Domain. Spatial Domain

Image Enhancement in the Spatial Domain. Spatial Domain 8-- Spatial Domain Image Enhancement in the Spatial Domain What is spatial domain The space whee all pixels fom an image In spatial domain we can epesent an image by f( whee x and y ae coodinates along

More information

CpE 442. Designing a Multiple Cycle Controller

CpE 442. Designing a Multiple Cycle Controller CpE 442 Designing a Multiple Cycle Controller CPE 442 multicontroller.. Outline of Today s Lecture Recap (5 minutes) Review of FSM control (5 minutes) From Finite State Diagrams to Microprogramming (25

More information

Review: Abstract Implementation View

Review: Abstract Implementation View Review: Abstract Implementation View Split memory (Harvard) model - single cycle operation Simplified to contain only the instructions: memory-reference instructions: lw, sw arithmetic-logical instructions:

More information

MapReduce Optimizations and Algorithms 2015 Professor Sasu Tarkoma

MapReduce Optimizations and Algorithms 2015 Professor Sasu Tarkoma apreduce Optimizations and Algoithms 2015 Pofesso Sasu Takoma www.cs.helsinki.fi Optimizations Reduce tasks cannot stat befoe the whole map phase is complete Thus single slow machine can slow down the

More information

Multidimensional Testing

Multidimensional Testing Multidimensional Testing QA appoach fo Stoage netwoking Yohay Lasi Visuality Systems 1 Intoduction Who I am Yohay Lasi, QA Manage at Visuality Systems Visuality Systems the leading commecial povide of

More information

Full Datapath. CSCI 402: Computer Architectures. The Processor (2) 3/21/19. Fengguang Song Department of Computer & Information Science IUPUI

Full Datapath. CSCI 402: Computer Architectures. The Processor (2) 3/21/19. Fengguang Song Department of Computer & Information Science IUPUI CSCI 42: Computer Architectures The Processor (2) Fengguang Song Department of Computer & Information Science IUPUI Full Datapath Branch Target Instruction Fetch Immediate 4 Today s Contents We have looked

More information

GCC-AVR Inline Assembler Cookbook Version 1.2

GCC-AVR Inline Assembler Cookbook Version 1.2 GCC-AVR Inline Assemble Cookbook Vesion 1.2 About this Document The GNU C compile fo Atmel AVR isk pocessos offes, to embed assembly language code into C pogams. This cool featue may be used fo manually

More information

ECE 361 Computer Architecture Lecture 11: Designing a Multiple Cycle Controller. Review of a Multiple Cycle Implementation

ECE 361 Computer Architecture Lecture 11: Designing a Multiple Cycle Controller. Review of a Multiple Cycle Implementation ECE 6 Computer Architecture Lecture : Designing a Multiple Cycle ler 6 multicontroller. Review of a Multiple Cycle Implementation The root of the single cycle processor s problems: The cycle time has to

More information

Pre-requisites. This is a textbook-based course. Chapter 1. Pipelines, Performance, Caches, and Virtual Memory. January 2009 Paul H J Kelly

Pre-requisites. This is a textbook-based course. Chapter 1. Pipelines, Performance, Caches, and Virtual Memory. January 2009 Paul H J Kelly 332 Advanced Compute Achitectue Chapte 1 Intoduction and eview of Pipelines, Pefomance, Caches, and Vitual Januay 2009 Paul H J Kelly These lectue notes ae patly based on the couse text, Hennessy and Patteson

More information

CO Computer Architecture and Programming Languages CAPL. Lecture 18 & 19

CO Computer Architecture and Programming Languages CAPL. Lecture 18 & 19 CO2-3224 Computer Architecture and Programming Languages CAPL Lecture 8 & 9 Dr. Kinga Lipskoch Fall 27 Single Cycle Disadvantages & Advantages Uses the clock cycle inefficiently the clock cycle must be

More information

Multicycle Approach. Designing MIPS Processor

Multicycle Approach. Designing MIPS Processor CSE 675.2: Introduction to Computer Architecture Multicycle Approach 8/8/25 Designing MIPS Processor (Multi-Cycle) Presentation H Slides by Gojko Babić and Elsevier Publishing We will be reusing functional

More information

Implementing the Control. Simple Questions

Implementing the Control. Simple Questions Simple Questions How many cycles will it take to execute this code? lw $t2, 0($t3) lw $t3, 4($t3) beq $t2, $t3, Label add $t5, $t2, $t3 sw $t5, 8($t3) Label:... #assume not What is going on during the

More information

Midterm I October 6, 1999 CS152 Computer Architecture and Engineering

Midterm I October 6, 1999 CS152 Computer Architecture and Engineering University of California, Berkeley College of Engineering Computer Science Division EECS Fall 1999 John Kubiatowicz Midterm I October 6, 1999 CS152 Computer Architecture and Engineering Your Name: SID

More information

The Big Picture: Where are We Now? EEM 486: Computer Architecture. Lecture 3. Designing a Single Cycle Datapath

The Big Picture: Where are We Now? EEM 486: Computer Architecture. Lecture 3. Designing a Single Cycle Datapath The Big Picture: Where are We Now? EEM 486: Computer Architecture Lecture 3 The Five Classic Components of a Computer Processor Input Control Memory Designing a Single Cycle path path Output Today s Topic:

More information

ENE 334 Microprocessors

ENE 334 Microprocessors ENE 334 Microprocessors Lecture 6: Datapath and Control : Dejwoot KHAWPARISUTH Adapted from Computer Organization and Design, 3 th & 4 th Edition, Patterson & Hennessy, 2005/2008, Elsevier (MK) http://webstaff.kmutt.ac.th/~dejwoot.kha/

More information

Configuring RSVP-ATM QoS Interworking

Configuring RSVP-ATM QoS Interworking Configuing RSVP-ATM QoS Intewoking Last Updated: Januay 15, 2013 This chapte descibes the tasks fo configuing the RSVP-ATM QoS Intewoking featue, which povides suppot fo Contolled Load Sevice using RSVP

More information

COMP303 - Computer Architecture Lecture 8. Designing a Single Cycle Datapath

COMP303 - Computer Architecture Lecture 8. Designing a Single Cycle Datapath COMP33 - Computer Architecture Lecture 8 Designing a Single Cycle Datapath The Big Picture The Five Classic Components of a Computer Processor Input Control Memory Datapath Output The Big Picture: The

More information

EE 6900: Interconnection Networks for HPC Systems Fall 2016

EE 6900: Interconnection Networks for HPC Systems Fall 2016 EE 6900: Inteconnection Netwoks fo HPC Systems Fall 2016 Avinash Kaanth Kodi School of Electical Engineeing and Compute Science Ohio Univesity Athens, OH 45701 Email: kodi@ohio.edu 1 Acknowledgement: Inteconnection

More information

Slotted Random Access Protocol with Dynamic Transmission Probability Control in CDMA System

Slotted Random Access Protocol with Dynamic Transmission Probability Control in CDMA System Slotted Random Access Potocol with Dynamic Tansmission Pobability Contol in CDMA System Intaek Lim 1 1 Depatment of Embedded Softwae, Busan Univesity of Foeign Studies, itlim@bufs.ac.k Abstact In packet

More information

Working on the Pipeline

Working on the Pipeline Computer Science 6C Spring 27 Working on the Pipeline Datapath Control Signals Computer Science 6C Spring 27 MemWr: write memory MemtoReg: ALU; Mem RegDst: rt ; rd RegWr: write register 4 PC Ext Imm6 Adder

More information

XFVHDL: A Tool for the Synthesis of Fuzzy Logic Controllers

XFVHDL: A Tool for the Synthesis of Fuzzy Logic Controllers XFVHDL: A Tool fo the Synthesis of Fuzzy Logic Contolles E. Lago, C. J. Jiménez, D. R. López, S. Sánchez-Solano and A. Baiga Instituto de Micoelectónica de Sevilla. Cento Nacional de Micoelectónica, Edificio

More information

Introduction. ENG3380 Computer Organization and Architecture MIPS: Data Path Design Part 3. Topics. References. School of Engineering 1

Introduction. ENG3380 Computer Organization and Architecture MIPS: Data Path Design Part 3. Topics. References. School of Engineering 1 ENG8 Computer Organization and rchitecture MIPS: Data Path Design Part Winter 7 S. reibi School of Engineering University of Guelph Introduction Topics uilding a Complete Data Path for MIPS Multi Cycle

More information

THE THETA BLOCKCHAIN

THE THETA BLOCKCHAIN THE THETA BLOCKCHAIN Theta is a decentalized video steaming netwok, poweed by a new blockchain and token. By Theta Labs, Inc. Last Updated: Nov 21, 2017 esion 1.0 1 OUTLINE Motivation Reputation Dependent

More information

The Processor: Datapath & Control

The Processor: Datapath & Control Chapter Five 1 The Processor: Datapath & Control We're ready to look at an implementation of the MIPS Simplified to contain only: memory-reference instructions: lw, sw arithmetic-logical instructions:

More information

361 datapath.1. Computer Architecture EECS 361 Lecture 8: Designing a Single Cycle Datapath

361 datapath.1. Computer Architecture EECS 361 Lecture 8: Designing a Single Cycle Datapath 361 datapath.1 Computer Architecture EECS 361 Lecture 8: Designing a Single Cycle Datapath Outline of Today s Lecture Introduction Where are we with respect to the BIG picture? Questions and Administrative

More information

SIMOCODE pro. Motor Management and Control Devices. SIMOCODE pro for Modbus RTU. Answers for industry. Edition 04/2015

SIMOCODE pro. Motor Management and Control Devices. SIMOCODE pro for Modbus RTU. Answers for industry. Edition 04/2015 SIMOCODE po Moto Management and Contol Devices SIMOCODE po fo Modbus RTU Geätehandbuch Configuation Manual Edition 04/2015 Answes fo industy. Intoduction 1 System configuation and commissioning with RTU

More information

Advances in Automobile Engineering

Advances in Automobile Engineering nadvances in Automobile E gineeing ISSN: 2167-7670 Advances in Automobile Engineeing Kabi, 2012, 1:3 DOI: 10.4172/2167-7670.1000101 Reseach Aticle Open Access Netwok Achitectue of a Moden Automotive Infotainment

More information

Controlled Information Maximization for SOM Knowledge Induced Learning

Controlled Information Maximization for SOM Knowledge Induced Learning 3 Int'l Conf. Atificial Intelligence ICAI'5 Contolled Infomation Maximization fo SOM Knowledge Induced Leaning Ryotao Kamimua IT Education Cente and Gaduate School of Science and Technology, Tokai Univeisity

More information

CpE242 Computer Architecture and Engineering Designing a Single Cycle Datapath

CpE242 Computer Architecture and Engineering Designing a Single Cycle Datapath CpE242 Computer Architecture and Engineering Designing a Single Cycle Datapath CPE 442 single-cycle datapath.1 Outline of Today s Lecture Recap and Introduction Where are we with respect to the BIG picture?

More information

1.3 Multiplexing, Time-Switching, Point-to-Point versus Buses

1.3 Multiplexing, Time-Switching, Point-to-Point versus Buses http://achvlsi.ics.foth.g/~kateveni/534 1.3 Multiplexing, Time-Switching, Point-to-Point vesus Buses n R m Aggegation (multiplexing) Distibution (demultiplexing) Simplest Netwoking, like simplest pogamming:

More information

CENG 3420 Lecture 06: Datapath

CENG 3420 Lecture 06: Datapath CENG 342 Lecture 6: Datapath Bei Yu byu@cse.cuhk.edu.hk CENG342 L6. Spring 27 The Processor: Datapath & Control q We're ready to look at an implementation of the MIPS q Simplified to contain only: memory-reference

More information

CSCI 402: Computer Architectures. Fengguang Song Department of Computer & Information Science IUPUI. Today s Content

CSCI 402: Computer Architectures. Fengguang Song Department of Computer & Information Science IUPUI. Today s Content 3/6/8 CSCI 42: Computer Architectures The Processor (2) Fengguang Song Department of Computer & Information Science IUPUI Today s Content We have looked at how to design a Data Path. 4.4, 4.5 We will design

More information

Efficient Execution Path Exploration for Detecting Races in Concurrent Programs

Efficient Execution Path Exploration for Detecting Races in Concurrent Programs IAENG Intenational Jounal of Compute Science, 403, IJCS_40_3_02 Efficient Execution Path Exploation fo Detecting Races in Concuent Pogams Theodous E. Setiadi, Akihiko Ohsuga, and Mamou Maekaa Abstact Concuent

More information

CPS104 Computer Organization and Programming Lecture 19: Pipelining. Robert Wagner

CPS104 Computer Organization and Programming Lecture 19: Pipelining. Robert Wagner CPS104 Computer Organization and Programming Lecture 19: Pipelining Robert Wagner cps 104 Pipelining..1 RW Fall 2000 Lecture Overview A Pipelined Processor : Introduction to the concept of pipelined processor.

More information

Spiral Recognition Methodology and Its Application for Recognition of Chinese Bank Checks

Spiral Recognition Methodology and Its Application for Recognition of Chinese Bank Checks Spial Recognition Methodology and Its Application fo Recognition of Chinese Bank Checks Hanshen Tang 1, Emmanuel Augustin 2, Ching Y. Suen 1, Olivie Baet 2, Mohamed Cheiet 3 1 Cente fo Patten Recognition

More information

Module 6 STILL IMAGE COMPRESSION STANDARDS

Module 6 STILL IMAGE COMPRESSION STANDARDS Module 6 STILL IMAE COMPRESSION STANDARDS Lesson 17 JPE-2000 Achitectue and Featues Instuctional Objectives At the end of this lesson, the students should be able to: 1. State the shotcomings of JPE standad.

More information

Physical simulation for animation

Physical simulation for animation Physical simulation fo animation Case study: The jello cube The Jello Cube Mass-Sping System Collision Detection Integatos Septembe 17 2002 1 Announcements Pogamming assignment 3 is out. It is due Tuesday,

More information

Outline. EEL-4713 Computer Architecture Designing a Single Cycle Datapath

Outline. EEL-4713 Computer Architecture Designing a Single Cycle Datapath Outline EEL-473 Computer Architecture Designing a Single Cycle path Introduction The steps of designing a processor path and timing for register-register operations path for logical operations with immediates

More information

CC 311- Computer Architecture. The Processor - Control

CC 311- Computer Architecture. The Processor - Control CC 311- Computer Architecture The Processor - Control Control Unit Functions: Instruction code Control Unit Control Signals Select operations to be performed (ALU, read/write, etc.) Control data flow (multiplexor

More information

CS61C : Machine Structures

CS61C : Machine Structures inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #19 Designing a Single-Cycle CPU 27-7-26 Scott Beamer Instructor AI Focuses on Poker CS61C L19 CPU Design : Designing a Single-Cycle CPU

More information

Pipes, connections, channels and multiplexors

Pipes, connections, channels and multiplexors Pipes, connections, channels and multiplexos Fancisco J. Ballesteos ABSTRACT Channels in the style of CSP ae a poeful abstaction. The ae close to pipes and connections used to inteconnect system and netok

More information

CSE 141 Computer Architecture Spring Lectures 11 Exceptions and Introduction to Pipelining. Announcements

CSE 141 Computer Architecture Spring Lectures 11 Exceptions and Introduction to Pipelining. Announcements CSE 4 Computer Architecture Spring 25 Lectures Exceptions and Introduction to Pipelining May 4, 25 Announcements Reading Assignment Sections 5.6, 5.9 The Processor Datapath and Control Section 6., Enhancing

More information

Information Retrieval. CS630 Representing and Accessing Digital Information. IR Basics. User Task. Basic IR Processes

Information Retrieval. CS630 Representing and Accessing Digital Information. IR Basics. User Task. Basic IR Processes CS630 Repesenting and Accessing Digital Infomation Infomation Retieval: Basics Thosten Joachims Conell Univesity Infomation Retieval Basics Retieval Models Indexing and Pepocessing Data Stuctues ~ 4 lectues

More information

Lecture 5 and 6. ICS 152 Computer Systems Architecture. Prof. Juan Luis Aragón

Lecture 5 and 6. ICS 152 Computer Systems Architecture. Prof. Juan Luis Aragón ICS 152 Computer Systems Architecture Prof. Juan Luis Aragón Lecture 5 and 6 Multicycle Implementation Introduction to Microprogramming Readings: Sections 5.4 and 5.5 1 Review of Last Lecture We have seen

More information

The Internet Ecosystem and Evolution

The Internet Ecosystem and Evolution The Intenet Ecosystem and Evolution Contents Netwok outing: basics distibuted/centalized, static/dynamic, linkstate/path-vecto inta-domain/inte-domain outing Mapping the sevice model to AS-AS paths valley-fee

More information

A Novel Parallel Deadlock Detection Algorithm and Architecture

A Novel Parallel Deadlock Detection Algorithm and Architecture A Novel Paallel Deadlock Detection Aloithm and Achitectue Pun H. Shiu 2, Yudon Tan 2, Vincent J. Mooney III {ship, ydtan, mooney}@ece.atech.ed }@ece.atech.edu http://codesin codesin.ece.atech.eduedu,2

More information