Instruction-Level Parallelism and its Dynamic Exploitation. Κεφάλαια 4o Computer Architecture-A Quantitative Approach 3 rd Edition

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Instruction-Level Parallelism and its Dynamic Exploitation. Κεφάλαια 4o Computer Architecture-A Quantitative Approach 3 rd Edition"

Transcript

1 Instruction-Level Parallelism and its Dynamic Exploitation Κεφάλαια 4o Computer Architecture-A Quantitative Approach 3 rd Edition

2 Basic Pipeline Για την αποφυγή ενός pipeline stall πρέπει µια εξαρτώµενη εντολή να απέχει από την εντολή πηγή τόσα clock cycles όσα και το pipeline latency αυτής Στη συνέχεια θεωρούµε τα latencies του FP unit του σχήµατος όπως επίσης Integer Pipeline 5 επιπέδων Branches delay 1 clock cycle Εντολές κάθε είδους µπορούν να εκτελούνται σε κάθε clock cycle No Structural Hazards

3 Παράδειγµα Έστω ότι προσθέτουµε σε ένα διάνυσµα σταθερά s for (i=1000; i>0; i=i-1) x[i] = x[i] +s; Loop: L.D ADD.D S.D DADDUI BNE F0, 0 (R1) F4, F0, F2 F4, 0 (R1) R1, R1, # -8 R1, R2, Loop ; F0=array element ; add scalar in F2 ; store result ; decrement pointer ; 8 bytes (per DW) ; branch R1!= R2

4 Παράδειγµα Χωρίς scheduling το loop θα εκτελούνταν όπως παρακάτω: Loop: L.D stall ADD.D stall stall S.D DADDUI F0, 0 (R1) F4, F0, F2 F4, 0 (R1) R1, R1, # -8 Clock cycle issued stall BNE stall R1, R2, Loop Οκώδικας χρειάζεται 10 clock cycles ανά επανάληψη

5 Παράδειγµα Μπορούµενα µειώσουµε τα stalls σε 1 οργανώνοντας το loop Loop: L.D DADDUI ADD.D stall BNE S.D F0, 0 (R1) R1, R1, # -8 F4, F0, F2 R1, R2, Loop F4, 8 (R1) ; delayed branch ; altered and interchanged with DADDUI Ο χρόνος εκτέλεσης µειώνεται σε 6 clock cycles Το stall υπάρχει για την S.D Παρατηρούµε ότι για να οργανωθεί το loop έπρεπε για την ανταλλαγή του DADDUI µε το S.D να αλλάξει η διεύθυνση αποθήκευσης του S.D. (0(R1) 8(R1)) Αυτή η αλλαγή δεν είναι τετριµµένη και εξαρτάται από τον compiler

6 Loop Unrolling Στην προηγούµενη υλοποίηση µονάχα 3 εντολές σχετίζονται µε τον πίνακα Στόχος: να αυξήσουµε τις εντολές που σχετίζονται µε branch και overhead εξαλείφοντάς τα. Loop: L.D ADD.D S.D L.D ADD.D S.D L.D ADD.D S.D L.D ADD.D S.D DADDUI BNE F0, 0 (R1) F4, F0, F2 F4, 0 (R1) F6, -8 (R1) F8, F6, F2 F8, -8 (R1) F10, -16 (R1) F12, F10, F2 F12, -16 (R1) F14, -24 (R1) F16, F14, F2 F16, -24 (R1) R1, R1, # -32 R1, R2, Loop ; drop DADDUI & BNE ; drop DADDUI & BNE ; drop DADDUI & BNE 14 εντολές+ 4 L.D stalls+2*4 ADD.D stalls+1 DADDUI stall+1 branch stall= 28 clock cycles 7 clock cycles για κάθε στοιχείο

7 Loop unrolling µε scheduling Loop: L.D L.D L.D L.D ADD.D ADD.D ADD.D ADD.D S.D S.D DADDUI S.D BNE S.D F0, 0 (R1) F6, -8 (R1) F10, -16 (R1) F14, -24 (R1) F4, F0, F2 F8, F6, F2 F12, F10, F2 F16, F14, F2 F4, 0 (R1) F8, -8 (R1) R1, R1, # -32 F12, -16 (R1) R1, R2, Loop F16, -24 (R1) Σύνολο 14 clock cycles 3.5 clock cycles για κάθε στοιχείο

8 Loop unrolling Problems? Register pressure Χρειάζονται αρκετοί registers Περισσότεροι registers Έξυπνη χρήση των registers για µείωση Original Loop Scheduled Loop Unrolled loop Scheduled Unrolled loop Granularity Τι γίνεται αν το loop count δεν είναι πολλαπλάσιο του 4; εν γνωρίζουµε γενικά το loop count σε compile time Cycles/Iteration Code movement ύσκολο για τον compiler να γνωρίζει αν µια µετακίνηση είναι επιτρεπτή

9 Τα dependences µειώνουν την παραλληλία Data dependence (RAW hazards) Μία εντολή χρειάζεται το αποτέλεσµα άλλης εντολής add r3,r2,r1 sub r4,r3,r5 sw 0(r1),r2 lw r5,10(r3) Name dependence (WAR, WAW hazards) ύο εντολές χρησιµοποιούν το ίδιο όνοµα αλλά δεν ανταλλάσσουν δεδοµένα add r3,r2,r1 sub r2,r4,r5 add r4,r1,r2 mult r4,r6,r7 Control dependence (control hazards) Μία εντολή ελέγχου καθορίζει αν µία εντολή εκτελείται beqz r3,location sub r2,r4,r5 add r4,r1,r2 bnez r9,loop

10 Μείωση των dependences µε χρήση Unrolling (1) Η SD µπορεί να µετακινηθεί µετά τις DADDUI και BNE Μειώνει WAR name dependence Οι επαναλήψεις loop είναι ανεξάρτητες Επιτρέπει στο loop unrolling να προσθέσει ανεξάρτητες εντολές στο block Χρήση διαφορετικών καταχωρητών για κάθε unrolled επανάληψη Μειώνει WAW και WAR name dependences Loop: L.D L.D L.D L.D ADD.D ADD.D ADD.D ADD.D S.D S.D DADDUI S.D F0, 0 (R1) F6, -8 (R1) F10, -16 (R1) F14, -24 (R1) F4, F0, F2 F8, F6, F2 F12, F10, F2 F16, F14, F2 F4, 0 (R1) F8, -8 (R1) R1, R1, # -32 F12, -16 (R1) BNE R1, R2, Loop S.D F16, -24 (R1)

11 Μείωση των dependences µε χρήση Unrolling (2) Αποµάκρυνση των επιπλέον εντολών DADDUI και BNE Μειώνει RAW και control dependences Αναδιοργάνωση loads/stores Ανάλυση διευθύνσεων µνήµης για εξασφάλιση µη ύπαρξης data dependences Scheduling του κώδικα ιατήρηση των υπόλοιπων dependences Loop: L.D L.D L.D L.D ADD.D ADD.D ADD.D ADD.D S.D S.D DADDUI F0, 0 (R1) F6, -8 (R1) F10, -16 (R1) F14, -24 (R1) F4, F0, F2 F8, F6, F2 F12, F10, F2 F16, F14, F2 F4, 0 (R1) F8, -8 (R1) R1, R1, # -32 S.D F12, -16 (R1) BNE R1, R2, Loop S.D F16, -24 (R1)

12 Static Branch Prediction Ανάγκη στατιστικής πρόβλεψης των εντολών διακλάδωσης κατά τη µεταγλώττιση Μέθοδοι Predict a branch as taken Predict on the basis of branch prediction Predict branches on the basis of profile information collected from earlier runs Instructions between mispredicted branches καλύτερη µονάδα µέτρησης (metric) από το misprediction

13 Static Branch Prediction Ακρίβεια predicted-taken στρατηγικής και profiled based predictor για SPEC92 benchmarks βάσει µετρήσεων του αριθµού των εντολών που εκτελούνται ανάµεσα από mispredicted branches.

14 VLIW Πολλαπλά ανεξάρτητα functional units Πολύ µεγάλη εντολή που περιλαµβάνει πολλαπλές λειτουργίες Παράδειγµα VLIW επεξεργαστής µε: Εντολές µε 5 λειτουργίες 1 integer operation 2 FP operations 2 memory references bits ανά unit µήκος εντολής bits Πρέπει να υπάρχει αρκετή παραλληλία σε µία λίστα κώδικα για να χρησιµοποιούνται τα διαθέσιµα slots λειτουργιών

15 Παράδειγµα Έστω VLIW µε δυνατότητα εκτέλεσης σε ένα κύκλο µηχανής 2 αναφορών στη µνήµη, 2 FP λειτουργίες και 1 integer ή branch λειτουργία. Ζητάµε µια unrolled έκδοση του loop x[i]=x[i]+s έτσι ώστε να µην υπάρχουν stalls. Αγνοούµε το delay slot του branch 7 αποτελέσµατα σε 9 κύκλους 1.29 κύκλοι ανά αποτέλεσµα 60% των functional units χρησιµοποιήθηκαν

16 VLIW Τεχνικά Προβλήµατα Αυξηµένος κώδικας Unrolling loops Σπαταλούµενα µη χρησιµοποιούµενα bits Περιορισµοί σε lockstep operation Ένα stall σε κάποιο functional unit έχει σαν αποτέλεσµα να µείνει ανενεργός ολόκληρος ο επεξεργαστής Λογιστικά Προβλήµατα Binary code compatibility ιαφορετικός αριθµός units και unit latencies απαιτεί διαφορετικό κώδικα

17 Loop-Level Parallelism Καθορισµός των εξαρτήσεων που υπάρχουν ανάµεσα στα operands σε ένα loop κατά τις επαναλήψεις αυτού του loop Data Dependences: ένα operand γράφεται σε κάποιο σηµείο και διαβάζεται σε µεταγενέστερο σηµείο Loop-carrier dependence: Data accesses σε µεταγενέστερες επαναλήψεις εξαρτώνται από τιµές που παράχθηκαν σε προγενέστερη επανάληψη Αν δεν υπάρχει loop-carrier dependence τότε έχουµε loop-level parallel περίπτωση

18 Loop-Level Parallelism for (i=0; i<1000; i++) x[i] = x[i] +s; Loop: L.D ADD.D S.D DADDUI BNE F0, x (R1) F4, F0, F2 X(R1), F4 R1, R1, # 8 R1, R2, Loop Παρατηρούµε διαφορές ανάµεσα στο source code και την assembly To DADDUI δηµιουργεί νέα τιµή που χρησιµοποιείται στην επόµενη επανάληψη εν είναι προφανές στο source code Ποιες είναι οι name, control και data dependences? H ανάλυση συνήθως γίνεται κοντά στο source code

19 Παράδειγµα Έστω loop: for (i=1; i<=100; i=i+1){ A[i+1]= A[i] + C[i]; /* S1 */ B[i+1]= B[i] + A[i+1]; /* S2 */ } Θεωρούµε ότι για τα A, B, C δεν υπάρχει overlapping στη µνήµη Κάτι τέτοιο θα ήταν δύσκολο να καθοριστεί από τον compiler Data dependences To S1 χρησιµοποιεί µία τιµή του S1 από προηγούµενη επανάληψη To S2 χρησιµοποιεί µία τιµή του S2 από προηγούµενη επανάληψη (Αν υπήρχαν µόνο αυτές οι εξαρτήσεις θα ήταν loop-carried) To S2 χρησιµοποιεί την τιµή A[i+1] που υπολογίζεται από το S1 στην τρέχουσα επανάληψη (Αν υπήρχε µόνο αυτή η εξάρτηση ΕΝ θα ήταν loop-carried)

20 Έστω loop: for (i=1; i<=100; i=i+1){ Παράδειγµα A[i]= A[i] + Β[i]; /* S1 */ B[i+1]= C[i] + D[i]; } /* S2 */ To S1 χρησιµοποιεί το προϊόν προηγούµενου υπολογισµού του S2 loop-carrier dependence. Όµως αυτό δεν εµποδίζει να γίνει παράλληλο το loop επειδή αυτή η εξάρτηση δεν είναι κυκλική. Αφού η εξάρτηση δεν είναι κυκλική µπορούµε να ανταλλάξουµε τις δύο εντολές χωρίς να επηρεαστεί η εκτέλεση του S2. Στην πρώτη εκτέλεση η τιµή του S1 εξαρτάται από το Β[1] Έτσι έχουµε το εξής non loop-carried loop A[1]=A[1]+B[1]; for (i=1; i<=99; i=i+1){ B[i+1]= C[i] + D[i]; A[i+1]= A[i+1] + Β[i+1]; ) B[101]=C[100]+D[100];

21 Βρίσκοντας και ελαχιστοποιώντας τα dependences Γιατί είναι σηµαντικό Καλό scheduling του κώδικα Καθορισµός των loops που µπορούν να παραλληλοποιηθούν Ελαχιστοποίηση των name dependences Απλό για αναφορές σε µόνες µεταβλητές ύσκολο για pointers, arrays, κλπ Η εστίαση είναι στα loops Ξεδίπλωµα (unroll) όσες περισσότερες resources επιτρέπονται Χρήση διαφορετικών ονοµάτων registers για κάθε επανάληψη και επαναπρογραµµατισµός για µεγιστοποίηση του παραλληλισµού

22 for (i=0; i<100; i++){ A[i]= B[i] + C[i]; D[i]= A[i] + E[i]; } Βρίσκοντας τον παραλληλισµό No loop carried dependences Εφαρµόζουµε unroll στο loop και βρίσκουµε την παραλληλία Πρέπει να σεβαστούµε το RAW του A[i] Χρειάζεται να φορτώσουµε το A[i] από τη µνήµη; Εύκολο να το δούµε στην συγκεκριµένη περίπτωση Συνήθως πολύ δυσκολότερο

23 Αναδροµές for (i=2; i<100; i++){ Υ[i]= Υ[i-1] + Y[i]; } Αναδροµή Η µεταβλητή ορίζεται βασιζόµενη στην τιµή της σε προγενέστερη επανάληψη Κάποιες αρχιτεκτονικές (vector processors) υποστηρίζουν τον χειρισµό αναδροµών Μπορεί να είναι καλή πηγή παραλληλισµού for (i=6; i<100; i++){ Υ[i]= Υ[i-5] + Y[i]; } Εφαρµόζουµε unroll 5 φορές για να πάρουµε 5 ανεξάρτητες εντολές

24 Τεχνικές του Compiler για αύξηση του ILP Loop Unrolling Χρησιµοποιούνται διάφορες επαναλήψεις του loop για να βρεθεί η παραλληλία Software pipelining Τροποποίηση του loop body για εύρεση της παραλληλίας Trace Scheduling Πρόβλεψη των branches και συνδυασµός block Speculation Χρησιµοποιείται υποστήριξη hardware για υποθέσεις σχετικά µε την κατάληξη του branch

25 Software Pipelining Symbolic loop unrolling Τεχνική αναδιοργάνωσης των loop κατά την οποία κάθε επανάληψη αποτελείται από εντολές επιλεγµένες από διαφορετικές επαναλήψεις του αρχικού loop

26 Symbolic Unrolling Original Code Unrolled Code L.D F0,0(R1); ADD.D F4,F0,F2; S.D F4,0(R1); DADDUI R1,R1,#-8 BNE R1,R2,Loop Iteration i: L.D F0,0(R1) ADD.D F4,F0,F2 S.D F4,0(R1) Iteration i+1: L.D F0,0(R1) ADD.D F4,F0,F2 S.D F4,0(R1) Iteration i+2: L.D F0,0(R1) ADD.D F4,F0,F2 S.D F4,0(R1)

27 Software Pipelined Code Original Code Software Pipelined Code L.D F0,0(R1); ADD.D F4,F0,F2; S.D F4,0(R1); DADDUI R1,R1,#-8 BNE R1,R2,Loop S.D F4,16(R1) ;Stores to M[i] ADD.D F4,F0,F2;Adds to M[i-1] L.D F0,0(R1) ;Loads M[i-2] DADDUI R1,R1,#-8 BNE R1,R2,Loop 10 cycles ανά iteration (6 αν είναι rescheduled) 5 cycles ανά iteration (µε DADDUI στο branch delay slot)

28 Software Pipelining Symbolic Loop Unrolling Maximize result-use distance Less code space Fill & drain pipe µόνο µια φορά ανά loop vs. µία φορά για κάθε unrolled επανάληψη στο loop unrolling

29 Global Code Scheduling Στοχεύει στο να ενσωµατώσει ένα µέρος κώδικα σε µια εσωτερική δοµή ελέγχου στην συντοµότερη πιθανή ακολουθία που διατηρεί τα data και control dependencies Απαιτεί πολύπλοκα trade-offs για αποφάσεις µετακίνησης κώδικα τα οποία εξαρτώνται από πολλούς παράγοντες ύο µέθοδοι που απλοποιούν τη διαδικασία Trace Scheduling (Σηµαντικές διαφορές στη συχνότητα διαφορετικών paths) Trace Selection (Αναζητά ακολουθία βασικών block trace) Trace Compaction (Μάζεµα του trace σε όσο το δυνατόν µικρότερο αριθµό ευρέων εντολών) Βασικό µειονέκτηµα: Πρόβληµα σε περίπτωση εξόδου από τη µέση του trace Superblocks (Μοναδική είσοδος- πολλαπλές έξοδοι)

30 Trace Scheduling - Superblocks

31 Υποστήριξη Hardware για περισσότερο ILP Conditional or Predicated Instructions Αποφυγή branch prediction µετατρέποντας τα branches σε conditionally executed instructions: if (x) then A=B op C else NOP Αν false τότε δεν αποθηκεύεται το αποτέλεσµα ούτε προκαλείται exception MIPS, Alpha, PowerPC, SPARC, Intel x86 υποστηρίζουν conditional move. IA-64 όλες οι εντολές conditional Μειονεκτήµατα ιαρκεί ένα clock ακόµη κι αν ακυρωθεί (annuled) Αν η συνθήκη υπολογιστεί αργά έχουµε stall Complex conditions µειώνουν την αποτελεσµατικότητα γιατί η συνθήκη αναγνωρίζεται αργά από το pipeline

32 Υποστήριξη Hardware για περισσότερο ILP Speculation Εκτέλεση εντολής χωρίς συνέπειες (συµπεριλαµβάνοντας exceptions) αν το branch τελικά δεν εκτελεστεί Συνδυασµός branch prediction και dynamic scheduling για εκτέλεση πριν το branch resolving Μειονέκτηµα: Πολυπλοκότητα και τα πρόσθετα απαιτούµενα resources Hardware Speculation Aids Αγνοεί τα terminate exceptions Poison bits Boosting

33 Intel IA-64 Instruction Set Architecture IA-64 Register model bit GPR, (actually 65 bits) bit FPR, (2 extra bits over 80-bit IEEE format) 641-bit predicate registers 8 64-bit branch registers (για indirect branches) Registers for control, memory mapping, performance counters, communication with the OS Implicit Parallelism (instruction groups) Fixed formatting (bundle)

34 Execution Unit types of Intel IA-64 Intructions bundle 5-bit template field+3 instructions *41-bits=128 bits

35 υνατά formats που κωδικοποιούνται στο template field

36 Instruction Set Basics High order 4 bits + bundle bits execution unit slot Low order 6 bits καθορίζουν τον predicate register που κρατά την εντολή

37 Predication- Speculation Σχεδόν κάθε εντολή µπορεί να είναι predicated Predicate registers που γίνονται set χρησιµοποιώντας compare ή test εντολές Speculation Control speculation (πραγµατεύεται deferred exceptions για speculated εντολές) Memory reference speculation (Speculation των εντολών load)

38 Itanium Processor Πρώτη υλοποίηση της ΙΑ-64 αρχιτεκτονικής (800 MHz) Μέχρι 6 issues/clock Μέχρι 3 branches και 2 memory references 3-level caches FP data όχι στο πρώτο επίπεδο cache 9 functional Units 2 I-units 2 M-units 3 B-units 2 Funits

39 Itanium Pipeline 10-stage pipeline µε 4 βασικά µέρη Front-end (stages IPG, Fetch και Rotate) 32 bytes/clock Instruction delivery (stages EXP και REN) Κατανέµονται µέχρι 6 εντολές σε 9 functional units Operand delivery (WLD και REG) Πρόσβαση στο Register file, έλεγχος predicate dependences Execution (EXE, DET και WRB) Εκτέλεση εντολών, ανίχνευση exceptions, write back

40 Σύγκριση Itanium µε Alpha, Pentium µε SPECint Itanium: 800Mhz, 4MB off-chip L3 cache Alpha: 1GHz, on-chip L2 cache Pentium: 2GHz, 256KB on-chip L2 cache

41 Σύγκριση Itanium µε Alpha, Pentium µε SPECfp Itanium: 800Mhz, 4MB off-chip L3 cache Alpha: 1GHz, on-chip L2 cache Pentium: 2GHz, 256KB on-chip L2 cache

42 Trimedia TM32 Κλασσική embedded VLIW αρχιτεκτονική Κάθε εντολή 5 λειτουργίες Επεξεργαστής Statically Scheduled

43 Transmeta Crusoe Processor VLIW επεξεργαστής σχεδιασµένος για την low-power αγορά, όπως mobile PCs και συσκευές mobile internet Συµβατός µε x86 αρχιτεκτονική µέσω software συστήµατος µετάφρασης x86 εντολών σε VLIW εντολές του Crusoe In-order execution 64-bits (2 operations) ή 128-bits (4 operations) εντολές Power consumption for the workload (W) Workload description Mobile Pentium 500 MHz,1.6V 1.5V Relative consumption TM3200/Mobile PentiumIII MP3 playback DVD playback

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Static Scheduling. Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Static Scheduling. Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Static Scheduling Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής Τεχνικές ελάττωσης stalls. CPI = Ideal CPI + Structural stalls + RAW stalls + WAR stalls + WAW stalls + Control

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Static Scheduling. Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Static Scheduling. Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Static Scheduling Ιάκωβος Μαυροειδής Τεχνικές ελάττωσης stalls. CPI = Ideal CPI + Structural stalls + RAW stalls + WAR stalls + WAW stalls + Control stalls Θα μελετήσουμε

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I

ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I ΤΕΧΝΙΚΕΣ ΑΥΞΗΣΗΣ ΤΗΣ ΑΠΟΔΟΣΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ I MIPS Η MIPS (Microprocessor without Interlocked Pipeline Stages) είναι μία αρχιτεκτονική συνόλου εντολών (ISA) γλώσσας μηχανής που αναπτύχθηκε από την εταιρεία

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Προχωρημένες Τεχνικές Pipelining. Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Προχωρημένες Τεχνικές Pipelining. Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Προχωρημένες Τεχνικές Pipelining. Ιάκωβος Μαυροειδής WB Data Imm Επεξεργαστής DLX Instruction Fetch Instr. Decode Reg. Fetch Execute Addr. Calc Memory Access Write Back

Διαβάστε περισσότερα

Instruction-Level Parallelism and its Dynamic Exploitation. Μάθηµα 3ο Computer Architecture-A Quantitative Approach

Instruction-Level Parallelism and its Dynamic Exploitation. Μάθηµα 3ο Computer Architecture-A Quantitative Approach Instruction-Level Parallelism and its Dynamic Exploitation Μάθηµα 3ο Computer Architecture-A Quantitative Approach Instruction-Level Parallelism (ILP) Επικάλυψη εντολών στοχεύοντας στην παράλληλη εκτέλεσή

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Γιώργος Δημητρίου Ενότητα 7 η : Στατική Δρομολόγηση Εντολών (Επεξεργαστές VLIW) Εκμετάλλευση ILP Περιορισμοί στη δυναμική δρομολόγηση εντολών: Μέγεθος παραθύρου εντολών Αριθμός φυσικών καταχωρητών Αποτυχία

Διαβάστε περισσότερα

Δυναμική Δρομολόγηση Εντολών (Dynamic Scheduling)

Δυναμική Δρομολόγηση Εντολών (Dynamic Scheduling) Δυναμική Δρομολόγηση Εντολών (Dynamic Scheduling) Απόδοση pipeline Pipeline CPI = Ideal pipeline CPI + Structural Stalls + Data Hazard Stalls + Control Stalls Ideal pipeline CPI: μέτρο της μέγιστης απόδοσης

Διαβάστε περισσότερα

(Branch Prediction Mechanisms)

(Branch Prediction Mechanisms) Μέθοδοι Πρόβλεψης Διακλαδώσεων (Branch Prediction Mechanisms) 1 Εντολές Διακλάδωσης Περίπου 20% των εντολών είναι εντολές διακλάδωσης Πολλά στάδια μεταξύ υπολογισμού του επόμενου PC και εκτέλεσης του branch

Διαβάστε περισσότερα

CS425 Computer Systems Architecture

CS425 Computer Systems Architecture CS425 Computer Systems Architecture Fall 2017 Dynamic Instruction Scheduling: Scoreboard CS425 - Vassilis Papaefstathiou 1 DLX Processor Instruction Fetch Instr. Decode Reg. Fetch Execute Addr. Calc Memory

Διαβάστε περισσότερα

Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση»

Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση» Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή 1. Πλυντήριο 2. Στεγνωτήριο 3. Δίπλωμα 4. αποθήκευση Σειριακή προσέγγιση για 4 φορτία = 8h 30 min κάθε «φάση» Pipelined προσέγγιση για 4 φορτία = 3.5h Το

Διαβάστε περισσότερα

Εντολές Διακλάδωσης. #bubbles ~= pipeline depth X loop length. Next fetch started. Fetch. I-cache. Fetch Buffer. Decode. Issue Buffer.

Εντολές Διακλάδωσης. #bubbles ~= pipeline depth X loop length. Next fetch started. Fetch. I-cache. Fetch Buffer. Decode. Issue Buffer. Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς. Εντολές

Διαβάστε περισσότερα

Παραλληλισμός σε επίπεδο εντολών

Παραλληλισμός σε επίπεδο εντολών Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 6ο μάθημα: χρονοπρογραμματισμός, αλγόριθμος Tomasulo, εικασία Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου InstrucDon- Level

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Γιώργος Δημητρίου Ενότητα 8 η : Στατική Δρομολόγηση Εντολών (Παράλληλοι Βρόχοι & Βεβαιωμένη Εκτέλεση) Παράλληλοι Βρόχοι Εξαρτήσεις εντολών & επαναλήψεων βρόχου: for (i=1; i

Διαβάστε περισσότερα

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Διακλαδώσεις. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Διακλαδώσεις. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 13 Διακλαδώσεις Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ Η μέχρι τώρα μικρο-αρχιτεκτονική (Eντολές Διακλάδωσης) Η μικρο-αρχιτεκτονική

Διαβάστε περισσότερα

Chapter 6 Αύξηση της απόδοσης με διοχέτευση (pipeline)

Chapter 6 Αύξηση της απόδοσης με διοχέτευση (pipeline) Chapter 6 Αύξηση της απόδοσης με διοχέτευση (pipeline) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση: Καθ. Εφαρμογών Νικόλαος Πετράκης, Τμήματος Ηλεκτρονικών Μηχανικών

Διαβάστε περισσότερα

Μέθοδοι Πρόβλεψης Διακλαδώσεων (Branch Prediction Mechanisms)

Μέθοδοι Πρόβλεψης Διακλαδώσεων (Branch Prediction Mechanisms) Μέθοδοι Πρόβλεψης Διακλαδώσεων (Branch Prediction Mechanisms) 1 Εντολές Διακλάδωσης Περίπου 20% των εντολών είναι εντολές διακλάδωσης Πολλά στάδια μεταξύ υπολογισμού του επόμενου PC και εκτέλεσης του branch

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) Κεφάλαιο 4 - Σύστημα ιασωλήνωσης

Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) Κεφάλαιο 4 - Σύστημα ιασωλήνωσης Επανάληψη Σύστημα Διασωλήνωσης (Pipelining) 1 ιασωλήνωση 2 Pipelining Παραλληλισμός + Pipelining 3 Χρόνος Εκτέλεσης = I x CPI x Cycle Time Με ή χωρις pipeline το Ι είναι το ίδιο όπως και τo CPI = 1. Το

Διαβάστε περισσότερα

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών 1 Περιορισμοί των βαθμωτών αρχιτεκτονικών Μέγιστο throughput: 1 εντολή/κύκλο ρολογιού (IPC 1) Υποχρεωτική ροή όλων των (διαφορετικών) τύπων εντολών μέσα από

Διαβάστε περισσότερα

Συστήματα σε Ολοκληρωμένα Κυκλώματα

Συστήματα σε Ολοκληρωμένα Κυκλώματα Συστήματα σε Ολοκληρωμένα Κυκλώματα Κεφάλαιο 4: Αρχιτεκτονική των Embedded Μικροεπεξεργαστών Διδάσκων: Καθηγητής Οδυσσέας Κουφοπαύλου Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών ΕΙΣΑΓΩΓΗ Παρουσιάζεται

Διαβάστε περισσότερα

Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 30 min κάθε «φάση»

Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή 1. Πλυντήριο 2. Στεγνωτήριο 3. ίπλωµα 4. αποθήκευση Time Task order A B C D 6 PM 7 8 9 10 11 12 1 2 AM Σειριακή προσέγγιση για 4 φορτία =8h 30 min κάθε «φάση»

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Σύγχρονοι υπολογιστές Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 18: Στατικός Παραλληλισμός Εντολών VLIW Επεξεργαστές

ΔΙΑΛΕΞΗ 18: Στατικός Παραλληλισμός Εντολών VLIW Επεξεργαστές ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 18: Στατικός Παραλληλισμός Εντολών VLIW Επεξεργαστές Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy) [Προσαρµογή από

Διαβάστε περισσότερα

30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 1. Πλυντήριο. 2. Στεγνωτήριο. 3. ίπλωµα. 4. αποθήκευση. προσέγγιση για 4.

30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 1. Πλυντήριο. 2. Στεγνωτήριο. 3. ίπλωµα. 4. αποθήκευση. προσέγγιση για 4. Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή Time 6 PM 7 8 9 10 11 12 1 2 AM 1. Πλυντήριο 2. Στεγνωτήριο 3. ίπλωµα 4. αποθήκευση Task order A B C D Σειριακή προσέγγιση για 4 φορτία =8h 30 min κάθε «φάση»

Διαβάστε περισσότερα

Περιορισμοί των βαθμωτών αρχιτεκτονικών

Περιορισμοί των βαθμωτών αρχιτεκτονικών Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς. Περιορισμοί

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232) Δευτέρα, 3 Νοεμβρίου 25 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 3 ΛΕΠΤΑ Για πλήρη

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ ΑΣ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ ΙΚΩΝ Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.ece.ntua.gr

Διαβάστε περισσότερα

1.1 ΑΣΚΗΣΗ ΛΥΣΗ 2.1 ΑΣΚΗΣΗ ΛΥΣΗ 3.1 ΑΣΚΗΣΗ

1.1 ΑΣΚΗΣΗ ΛΥΣΗ 2.1 ΑΣΚΗΣΗ ΛΥΣΗ 3.1 ΑΣΚΗΣΗ 1.1 ΑΣΚΗΣΗ i) Έστω ότι οι εντολές κινητής υποδιαστολής ευθύνονται για το 25% του χρόνου εκτέλεσης ενός προγράµµατος σε ένα µηχάνηµα. Προτείνεται να βελτιωθεί το υλικό που σχετίζεται µε αριθµούς κινητής

Διαβάστε περισσότερα

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 2 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Καθυστερήσεις και Εκκενώσεις Εντολών

Διαβάστε περισσότερα

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: O επεξεργαστής Σύστημα Διασωλήνωσης (Pipelining)

ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: O επεξεργαστής Σύστημα Διασωλήνωσης (Pipelining) ΕΠΛ221: Οργάνωση Υπολογιστών και Συμβολικός Προγραμματισμός Κεφ. 4: O επεξεργαστής Σύστημα Διασωλήνωσης (Pipelining) 1 ιασωλήνωση 2 Διασωλήνωση και Παραλληλισμός (Parallelism) Διασωλήνωση (Pipelining):

Διαβάστε περισσότερα

Εισαγωγή. Σύνοψη βασικών εννοιών, 5-stage pipeline, επεκτάσεις για λειτουργίες πολλαπλών κύκλων

Εισαγωγή. Σύνοψη βασικών εννοιών, 5-stage pipeline, επεκτάσεις για λειτουργίες πολλαπλών κύκλων Εισαγωγή Σύνοψη βασικών εννοιών, 5-stage pipeline, επεκτάσεις για λειτουργίες πολλαπλών κύκλων 1 Παράγοντες που επηρεάζουν την επίδοση της CPU CPU time = Seconds = Instructions Cycles Seconds --------------

Διαβάστε περισσότερα

ΘΕΜΑ PROJECT COMPILER FLAGS ΤΡΑΧΑΝΗΣ ΔΗΜΗΤΡΗΣ 6108 ΤΡΑΧΑΝΗΣ ΓΕΩΡΓΙΟΣ 5789

ΘΕΜΑ PROJECT COMPILER FLAGS ΤΡΑΧΑΝΗΣ ΔΗΜΗΤΡΗΣ 6108 ΤΡΑΧΑΝΗΣ ΓΕΩΡΓΙΟΣ 5789 ΘΕΜΑ PROJECT COMPILER FLAGS ΤΡΑΧΑΝΗΣ ΔΗΜΗΤΡΗΣ 6108 ΤΡΑΧΑΝΗΣ ΓΕΩΡΓΙΟΣ 5789 Γενικά Οι compilers προσφέρουν μία σειρά από τεχνικές βελτιστοποίησης Στόχοι: Αύξηση ταχύτητας εκτέλεσης Μείωση μεγέθους Εφικτές

Διαβάστε περισσότερα

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 10ο μάθημα: Ορια παραλληλίας επιπέδου εντολής και πολυνηματικοί επεξεργαστές Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Ορια

Διαβάστε περισσότερα

Υπερβαθµωτή Οργάνωση Υπολογιστών

Υπερβαθµωτή Οργάνωση Υπολογιστών Υπερβαθµωτή Οργάνωση Υπολογιστών Από τις βαθµωτές στις υπερβαθµωτές αρχιτεκτονικές αγωγού Τα όρια του Παραλληλισµού σε επίπεδο εντολών (Instruction Level Parallelism - ILP) Weiss and Smith [1984] Sohi

Διαβάστε περισσότερα

ΠΛΕ- 027 Μικροεπεξεργαστές 8ο μάθημα: Παραλληλία επιπέδου εντολής

ΠΛΕ- 027 Μικροεπεξεργαστές 8ο μάθημα: Παραλληλία επιπέδου εντολής ΠΛΕ- 027 Μικροεπεξεργαστές 8ο μάθημα: Παραλληλία επιπέδου εντολής Αρης Ευθυμίου Ταχύτερη εκτέλεση Με τις τεχνικές που είδαμε στα προηγούμενα μαθήματα μπορούμε να εκτελέσουμε (με επικάλυψη) περίπου 1 εντολή

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

Προχωρηµένα Θέµατα Αρχιτεκτονικής

Προχωρηµένα Θέµατα Αρχιτεκτονικής Προχωρηµένα Θέµατα Αρχιτεκτονικής Μάθηµα 2 ο : Instruction Set Principles and Examples Μάθηµα 2 ο Προχωρηµένα Θέµατα Αρχιτεκτονικής 1 Σχεδιασµός Συνόλου Εντολών Θέµατα που θα συζητηθούν ιαφορετικές επιλογές

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

CS-425 Mid-term exam

CS-425 Mid-term exam CS-425 Mid-term exam Tuesday November 8th, 2005, 5-8 p.m. Aids: Non-programmable pocket calculator Only ONE problem solution PER PAGE! Put your NAME on each sheet. NUMBER each sheet. Mobile phones are

Διαβάστε περισσότερα

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath O επεξεργαστής: Η δίοδος δεδοµένων (path) και η µονάδα ελέγχου (control) Σχεδίαση path 4 κατηγορίες εντολών: Αριθµητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη µνήµη (lw, sw) I

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Branch Prediction. Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Branch Prediction. Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Branch Prediction Ιάκωβος Μαυροειδής Branch Prediction Πρόβλεψη είναι πλέον απαραίτητη για να έχουμε καλή απόδοση. Γιατί; MULT F0,F1,F2 DIVD F4,F0,F3 BNEZ F4,Loop Σημαντική

Διαβάστε περισσότερα

Application Operating System. Datapath & Control/Memory. Digital Design Circuit Design. Layout

Application Operating System. Datapath & Control/Memory. Digital Design Circuit Design. Layout Application Operating System Λογισμικό Oργάνωση Μικρο- Αρχιτεκτονική Compiler Firmware Instr. Set Proc. I/O system Datapath & Control/Memory Digital Design Circuit Design Layout Instruction Set Architecture

Διαβάστε περισσότερα

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΟΡΓΑΝΩΣΗ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ι Γ. Τσιατούχας 2 ο Κεφάλαιο ιάρθρωση 1. Οργάνωση της 2. εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

Pipelined Datapath, Hazards and Forwarding

Pipelined Datapath, Hazards and Forwarding Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Νεκτάριος Κοζύρης Pipelined Datapath, Hazards and Forwarding Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών

Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών Υπερβαθμωτή (superscalar) Οργάνωση Υπολογιστών 1 Περιορισμοί των βαθμωτών αρχιτεκτονικών Μέγιστο throughput: 1 εντολή/κύκλο ρολογιού (IPC 1) Υποχρεωτική ροή όλων των (διαφορετικών) τύπων εντολών μέσα από

Διαβάστε περισσότερα

Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ

Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ Βιβλιογραφία Ενότητας Kehtarnavaz [2005]: Chapter 3 Kuo [2005]: Chapters 1 & 4-5 Lapsley [2002]: Chapter 4 Hayes [2000]: Κεφάλαιo 8

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 4 : Κρυφή Μνήμη Καρβούνης Ευάγγελος Δευτέρα, 30/11/2015 Χαρακτηριστικά Θέση Χωρητικότητα Μονάδα Μεταφοράς

Διαβάστε περισσότερα

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπερβαθμωτοι επεξεργαστές

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπερβαθμωτοι επεξεργαστές Υ- 01 Αρχιτεκτονική Υπολογιστών Υπερβαθμωτοι επεξεργαστές Αρης Ευθυμίου Το σημερινό μάθημα Υπερβαθμωτοί επεξεργαστές (superscalar) Εκτέλεση σε σειρά Εκτέλεση εκτός σειράς Alpha 21164 Scoreboard Μετονομασία

Διαβάστε περισσότερα

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

Διαβάστε περισσότερα

CS425 Computer Systems Architecture

CS425 Computer Systems Architecture CS425 Computer Systems Architecture Fall 2017 Branch Prediction CS425 - Vassilis Papaefstathiou 1 Branch Prediction Πρόβλεψη είναι πλέον απαραίτητη για να έχουμε καλή απόδοση. Γιατί; MULT F0,F1,F2 DIVD

Διαβάστε περισσότερα

Διάλεξη 12 Καθυστερήσεις (Stalls)

Διάλεξη 12 Καθυστερήσεις (Stalls) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 12 Καθυστερήσεις (Stalls) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ 1 Καθυστερήσεις και Εκκενώσεις Εντολών Οι κίνδυνοι δεδομένων (data

Διαβάστε περισσότερα

Υποθετική Εκτέλεση Εντολών

Υποθετική Εκτέλεση Εντολών Υποθετική Εκτέλεση Εντολών ( Speculation (Hardware-Based Τεχνικές βελτίωσης του CPI register renaming δυναμική εκτέλεση Pipeline CPI = Ideal pipeline CPI + Structural Stalls + Data Hazard Stalls + υπερβαθμωτή

Διαβάστε περισσότερα

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εργαστήριο 10: Επίδοση Επεξεργαστών, CPI. Μανόλης Γ.Η. Κατεβαίνης

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εργαστήριο 10: Επίδοση Επεξεργαστών, CPI. Μανόλης Γ.Η. Κατεβαίνης ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Εργαστήριο 10: Επίδοση Επεξεργαστών, CPI Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Branch Prediction. Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Branch Prediction. Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Branch Prediction Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής Branch Prediction Πρόβλεψη είναι πλέον απαραίτητη για να έχουµε καλή απόδοση. Γιατί; MULT F0,F1,F2 DIVD F4,F0,F3

Διαβάστε περισσότερα

Θέµατα Φεβρουαρίου

Θέµατα Φεβρουαρίου Θέµατα Φεβρουαρίου 2-2 cslab@ntua 2- Θέµα ο (3%): Έστω η παρακάτω ακολουθία εντολών που χρησιµοποιείται για την αντιγραφ από µια θέση µνµης σε µια άλλη (memory-to-memory copy): lw $2, ($) sw $2, 2($) i)

Διαβάστε περισσότερα

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 5ο μάθημα: πρόβλεψη διακλάδωσης, διαφοροποιημένη διοχέτευση, χρονοπρογραμματισμός Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου

Διαβάστε περισσότερα

Κάθε functional unit χρησιμοποιείται μια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης!

Κάθε functional unit χρησιμοποιείται μια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης! Single-cyle υλοποίηση: Διάρκεια κύκλου ίση με τη μεγαλύτερη εντολή-worst case delay (εδώ η lw) = χαμηλή απόδοση! Αντιβαίνει με αρχή: Κάνε την πιο απλή περίπτωση γρήγορη (ίσως και εις βάρος των πιο «σύνθετων»

Διαβάστε περισσότερα

Τέτοιες λειτουργίες γίνονται διαμέσου του

Τέτοιες λειτουργίες γίνονται διαμέσου του Για κάθε εντολή υπάρχουν δυο βήματα που πρέπει να γίνουν: Προσκόμιση της εντολής (fetch) από τη θέση που δείχνει ο PC Ανάγνωση των περιεχομένων ενός ή δύο καταχωρητών Τέτοιες λειτουργίες γίνονται διαμέσου

Διαβάστε περισσότερα

Σύγχρονες Αρχιτεκτονικές Υπολογιστών

Σύγχρονες Αρχιτεκτονικές Υπολογιστών ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ Σύγχρονες Αρχιτεκτονικές Υπολογιστών ΑΚΑ ΗΜΑΪΚΟ ΕΤΟΣ 2014-2015 Αρχιτεκτονική Συνόλου Εντολών (Instruction Set Architecture-ISA) 1 Ένας υπολογιστής

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 6: Διασωλήνωση Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg

Διαβάστε περισσότερα

ΗΜΥ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

ΗΜΥ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 18: Στατικός Παραλληλισμός Εντολών VLIW Επεξεργαστές Διδάσκων: Χάρης Θεοχαρίδης Αναπληρωτής Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy) [Προσαρμογή

Διαβάστε περισσότερα

Τελική Εξέταση, Απαντήσεις/Λύσεις

Τελική Εξέταση, Απαντήσεις/Λύσεις ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών (ΗΜΜΥ) HMΜY 212 Οργάνωση Η/Υ και Μικροεπεξεργαστές Εαρινό Εξάμηνο, 2007 Τελική Εξέταση, Απαντήσεις/Λύσεις Άσκηση 1: Assembly για

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Multi Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Θέματα Μεταγλωττιστών

Θέματα Μεταγλωττιστών Γιώργος Δημητρίου Ενότητα 9 η : Θέματα Δρομολόγησης Εντολών ILP Παραλληλισμός επιπέδου εντολής Εξαρτήσεις δεδομένων Εξαρτήσεις ελέγχου (διαδικασιακές) Με διαθέσιμους πόρους, οι εντολές μπορούν να εκτελεστούν

Διαβάστε περισσότερα

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Single Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Precise Exception Speculation Reorder Buffer. Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Precise Exception Speculation Reorder Buffer. Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Precise Exception Speculation Reorder Buffer Ιάκωβος Μαυροειδής Registers Functional Units Αρχιτεκτονική Scoreboard (CDC 6600) FP Mult FP Mult FP Divide FP Add Integer SCOREBOARD

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

2η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ακ. έτος , 5ο Εξάμηνο Σχολή ΗΜ&ΜΥ

2η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Ακ. έτος , 5ο Εξάμηνο Σχολή ΗΜ&ΜΥ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ Α Σ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ Ι Κ Ω Ν Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.

Διαβάστε περισσότερα

Ασκήσεις στα Προηγμένα Θέματα Αρχιτεκτονικής Υπολογιστών

Ασκήσεις στα Προηγμένα Θέματα Αρχιτεκτονικής Υπολογιστών Ασκήσεις στα Προηγμένα Θέματα Αρχιτεκτονικής Υπολογιστών ακ. έτος 2006-2007 Νεκτάριος Κοζύρης Νίκος Αναστόπουλος {nkoziris,anastop}@cslab.ece.ntua.gr Άσκηση 1: pipelining Εξετάζουμε την εκτέλεση του παρακάτω

Διαβάστε περισσότερα

Αρχιτεκτονικη υπολογιστων

Αρχιτεκτονικη υπολογιστων ΤΕΙ Κρήτης Τμ. Μηχανικών Πληροφορικής Αρχιτεκτονικη υπολογιστων Τζαγκαράκης Χαράλαμπος hatzagarak@cs.teicrete.gr Εισαγωγη: ο επεξεργαστης και η γλωσσα του Eπεξεργαστής: MIPS Microprocessor Without Interlocked

Διαβάστε περισσότερα

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Precise Exceptions Speculation Reorder Buffer. Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής

ΗΥ425 Αρχιτεκτονική Υπολογιστών. Precise Exceptions Speculation Reorder Buffer. Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής ΗΥ425 Αρχιτεκτονική Υπολογιστών Precise Exceptions Speculation Reorder Buffer Βασίλης Παπαευσταθίου Ιάκωβος Μαυροειδής Αρχιτεκτονική Scoreboard (CDC 6600) Registers FP Mult FP Mult FP Divide FP Add Integer

Διαβάστε περισσότερα

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 9 Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Ti είναι Αρχιτεκτονική και τι Μικροαρχιτεκτονική

Διαβάστε περισσότερα

Α. Δίνονται οι. (i) στη. πρέπει να. πιο. (ii) $a0. $s0 θα πρέπει να. αποθήκευση. αυξάνει τον. f: sub sll add sub jr. h: addi sw sw.

Α. Δίνονται οι. (i) στη. πρέπει να. πιο. (ii) $a0. $s0 θα πρέπει να. αποθήκευση. αυξάνει τον. f: sub sll add sub jr. h: addi sw sw. ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΡ ΙΟ ΥΠΟΛΟΟ ΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua. gr ΑΡΧΙΤΕΚΤΟΝΙΚΗ

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ

ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Επίκουρη Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy) [Προσαρμογή από Computer Architecture:

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ε Ρ Γ ΑΣ Τ ΗΡ ΙΟ Υ ΠΟΛΟΓΙΣ Τ ΙΚΩΝ Σ Υ Σ Τ ΗΜΑΤΩΝ w w w. c s l ab.ece.ntua.gr

Διαβάστε περισσότερα

ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ

ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 16: ΠΑΡΑΛΛΗΛΙΣΜΟΣ ΣΤΗΝ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ Διδάσκουσα: ΜΑΡΙΑ Κ. ΜΙΧΑΗΛ Αναπληρώτρια Καθηγήτρια, ΗΜΜΥ (mmichael@ucy.ac.cy) [Προσαρµογή από Computer

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 5: Datapath x86. Παράδειγμα λειτουργίας υποθετικής αρχιτεκτονικής TOY86 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών

Διαβάστε περισσότερα

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Διοχέτευση

Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Διοχέτευση Υ- 01 Αρχιτεκτονική Υπολογιστών Υπόβαθρο: Διοχέτευση Αρης Ευθυμίου Το σημερινό μάθημα Υπόβαθρο: Διοχέτευση (Pipelining) Βασική οργάνωση Δομικοί κίνδυνοι Κίνδυνοι δεδομένων (hazards): RAW, WAR, WAW Stall

Διαβάστε περισσότερα

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 9 : Ομάδες Εντολών: Ιδιότητες και Λειτουργίες Ευάγγελος Καρβούνης Παρασκευή, 15/01/2016 Τι είναι ομάδα εντολών;

Διαβάστε περισσότερα

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Οργάνωση επεξεργαστή Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Γιώργος Δημητρίου Ενότητα 3 η : Μερική Επικάλυψη Μερική Επικάλυψη Μηχανισμός μερικής επικάλυψης εντολών Εξαρτήσεις Κίνδυνοι (hazards) Παροχέτευση Πρόβλεψη διακλαδώσεων Μερική επικάλυψη σε μονάδες εκτέλεσης

Διαβάστε περισσότερα

add $t0,$zero, $zero I_LOOP: beq $t0,$s3, END add $t1, $zero,$zero J_LOOP: sub $t2, $s3, $t0 add $t2, $t2, $s1 int i, j, tmp; int *arr, n;

add $t0,$zero, $zero I_LOOP: beq $t0,$s3, END add $t1, $zero,$zero J_LOOP: sub $t2, $s3, $t0 add $t2, $t2, $s1 int i, j, tmp; int *arr, n; Άσκηση 1 η Μέρος Α Ζητούμενο: Δίνεται το παρακάτω πρόγραμμα σε C καθώς και μια μετάφραση του σε assembly MIPS. Συμπληρώστε τα κενά. Σας υπενθυμίζουμε ότι ο καταχωρητής $0 (ή $zero) είναι πάντα μηδέν. int

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Γιώργος Δημητρίου Ενότητα 5 η : Δυναμική Δρομολόγηση Εντολών (Διακλαδώσεις, Υποθετική & Υπερβαθμωτή Εκτέλεση) Πέρα από την Εκτέλεση Εκτός Σειράς Δυναμική πρόβλεψη διακλαδώσεων Ιστορία διακλάδωσης Πρόβλεψη

Διαβάστε περισσότερα

Θέματα Μεταγλωττιστών

Θέματα Μεταγλωττιστών Γιώργος Δημητρίου Ενότητα 10 η : Βελτιστοποιήσεις Τοπικότητας και Παραλληλισμού: Εξαρτήσεις και Μετασχηματισμοί Βρόχων Επεξεργασία Πινάκων Παραλληλισμός επιπέδου βρόχου Λόγω παραλληλισμού δεδομένων Επιτυγχάνεται

Διαβάστε περισσότερα

Κεφάλαιο 4. Ο επεξεργαστής. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση

Κεφάλαιο 4. Ο επεξεργαστής. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση Κεφάλαιο 4 Ο επεξεργαστής ιαφάνειες διδασκαλίας του πρωτότυπου βιβλίου µεταφρασµένες στα ελληνικά και εµπλουτισµένες (µετάφραση,

Διαβάστε περισσότερα

Κάθε functional unit χρησιµοποιείται µια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης!

Κάθε functional unit χρησιµοποιείται µια φορά σε κάθε κύκλο: ανάγκη για πολλαπλό hardware = κόστος υλοποίησης! Single-cyle υλοποίηση: ιάρκεια κύκλου ίση µε τη µεγαλύτερη εντολή-worst case delay (εδώ η lw) = χαµηλή απόδοση! Αντιβαίνει µε αρχή: Κάνε την πιο απλή περίπτωση γρήγορη (ίσως και εις βάρος των πιο «σύνθετων»

Διαβάστε περισσότερα

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems) Μαθηµα 2 ηµήτρης Λιούπης 1 Intel SA-1110 µc StrongARM core. System-on-Chip. Εξέλιξη των SA-110 και SA-1100. 2 ARM cores ARM: IP (intellectual

Διαβάστε περισσότερα

Οργάνωση επεξεργαστή (2 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Οργάνωση επεξεργαστή (2 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Οργάνωση επεξεργαστή (2 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Ταχύτητα εκτέλεσης Χρόνος εκτέλεσης = (αριθμός εντολών που εκτελούνται) Τί έχει σημασία: Χ (χρόνος εκτέλεσης εντολής) Αριθμός

Διαβάστε περισσότερα

ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ:

ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ: ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ονοματεπώνυμο: ΑΜ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ (τμήμα Μ - Ω) Κανονική εξεταστική Φεβρουαρίου

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr ΠΡΟΗΓΜΕΝΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

2. Τεχνολογία επεξεργαστών

2. Τεχνολογία επεξεργαστών Κεφάλαιο 2: Τεχνολογία επεξεργαστών 21 2. Τεχνολογία επεξεργαστών 2.1 Επιλογές στη σχεδίαση επεξεργαστών Η κεντρική μονάδα επεξεργασίας (Central Processing Unit CPU) ή επεξεργαστής αποτελεί την καρδιά

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Απόδοση ΚΜΕ (Μέτρηση και τεχνικές βελτίωσης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κεντρική Μονάδα Επεξεργασίας

Διαβάστε περισσότερα

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 4ο μάθημα: Διοχέτευση (Pipelining), μέρος 2 ο κίνδυνοι ελέγχου, υλοποίηση, διακοπές, εργασίες πολλών κύκλων Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες

Διαβάστε περισσότερα