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

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

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

Transcript

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

2 Εισαγωγή Παράγοντες απόδοσης της CPU Πλήθος εντολών Καθορίζεται από την αρχιτεκτονική συνόλου εντολών και το µεταγλωττιστή CPI και Χρόνος κύκλου Καθορίζεται από το υλικό της CPU Θα εξετάσουµε δύο υλοποιήσεις του MIPS Μια απλουστευµένη έκδοση εκτέλεση όλων των εντολών σε ένα µεγάλο κύκλο ρολογιού Μια πιο ρεαλιστική έκδοση µε διοχέτευση (pipeline) Απλό υποσύνολο, δείχνει τις περισσότερες πτυχές Αναφορά µνήµης: lw, sw Αριθµητικές/λογικές: add, sub, and, or, slt Μεταφοράς ελέγχου: beq, j Κεφάλαιο 4 Ο επεξεργαστής Εισαγωγή

3 Βήµατα εκτέλεσης εντολής PC µνήµη εντολών, προσκόµιση (fetch) εντολής Program Counter: διεύθυνση εντολής που θα εκτελεστεί Αριθµοί καταχωρητών αρχείο καταχωρητών (register file), ανάγνωση καταχωρητών Ανάλογα µε τη κατηγορία της εντολής Χρήση της ALU για τον υπολογισµό Αριθµητικού αποτελέσµατος ιεύθυνσης µνήµης για εντολές load/store ιεύθυνση προορισµού διακλάδωσης Προσπέλαση µνήµης δεδοµένων για load/store Ενηµέρωση PC διεύθυνση προορισµού ή PC + 4 Κεφάλαιο 4 Ο επεξεργαστής 3

4 Επισκόπηση της CPU ξεχωριστές µνήµες Κεφάλαιο 4 Ο επεξεργαστής 4

5 Πολυπλέκτες εν µπορούµε απλώς να ενώσουµε καλώδια µαζί Χρήση πολυπλεκτών Κεφάλαιο 4 Ο επεξεργαστής 5

6 Έλεγχος Κεφάλαιο 4 Ο επεξεργαστής 6

7 Βασικά λογικής σχεδίασης Η πληροφορία κωδικοποιείται δυαδικά Χαµηλή τάση = 0, Υψηλή τάση = 1 Ένα καλώδιο ανά bit εδοµένα πολλών bit κωδικοποιούνται µε διαύλους πολλών καλωδίων Συνδυαστικό στοιχείο Επενεργεί σε δεδοµένα Η έξοδος είναι συνάρτηση της εισόδου Στοιχεία κατάστασης (ακολουθιακά) Αποθηκεύουν πληροφορίες 4.2 Συµβάσεις λογικής σχεδίασης Κεφάλαιο 4 Ο επεξεργαστής 7

8 Συνδυαστικά στοιχεία Πύλη AND Y = A & B Αθροιστής Y = A + B A B + Y A B I0 I1 M u x S Y Πολυπλέκτης Y = S? I1 : I0 Y Αριθµητική/Λογική Μονάδα Y = F(A, B) A B ALU F Y Κεφάλαιο 4 Ο επεξεργαστής 8

9 Ακολουθιακά στοιχεία Καταχωρητής: αποθηκεύει δεδοµένα σε ένα κύκλωµα Χρησιµοποιεί σήµα ρολογιού για να καθορίσει πότε ενηµερώνεται η αποθηκευµένη τιµή Ακµοπυροδοτούµενη: ενηµέρωση όταν το Clk αλλάζει από 0 σε 1 D Clk Q Clk D Q Κεφάλαιο 4 Ο επεξεργαστής 9

10 Ακολουθιακά στοιχεία Καταχωρητής µε έλεγχο εγγραφής Ενηµερώνει στην ακµή του ρολογιού µόνο όταν η είσοδος ελέγχου εγγραφής είναι 1 Χρησιµοποιείται όταν η αποθηκευµένη τιµή απαιτείται αργότερα Clk D Write Clk Q Write D Q Κεφάλαιο 4 Ο επεξεργαστής 10

11 Μεθοδολογία χρονισµού Η συνδυαστική λογική µετασχηµατίζει τα δεδοµένα στη διάρκεια των κύκλων ρολογιού Μεταξύ ακµών ρολογιού Είσοδος από στοιχεία κατάστασης, έξοδος σε στοιχεία κατάστασης Η µεγαλύτερη καθυστέρηση καθορίζει την περίοδο του ρολογιού Κεφάλαιο 4 Ο επεξεργαστής 11

12 Κατασκευή διαδροµής δεδοµένων ιαδροµή δεδοµένων (datapath) Στοιχεία που επεξεργάζονται δεδοµένα και διευθύνσεις στη CPU Καταχωρητές, ALU, πολυπλέκτες, µνήµες, Θα κατασκευάσουµε µια διαδροµή δεδοµένων MIPS µε διαδοχικά βήµατα Θα κάνουµε πιο αναλυτικό το συνολικό σχέδιο 4.3 Κατασκευή διαδροµής δεδοµένων Κεφάλαιο 4 Ο επεξεργαστής 12

13 Προσκόµιση εντολής (Instruction Fetch) Ανάγνωση της εντολής από τη µνήµη εντολών καταχωρητής 32 bit Αύξηση κατά 4 για την επόµενη εντολή Κεφάλαιο 4 Ο επεξεργαστής 13

14 Εντολές µορφής R Ανάγνωση δύο τελεστέων καταχωρητών Εκτέλεση αριθµητικής/λογικής λειτουργίας Εγγραφή αποτελέσµατος σε καταχωρητή Κεφάλαιο 4 Ο επεξεργαστής 14

15 Εντολές Load/Store Ανάγνωση τελεστέων καταχωρητών Υπολογισµός διεύθυνσης µε χρήση της σχετικής απόστασης (offset) των 16 bit Χρήση της ALU, αλλά µε επέκταση προσήµου του offset Φόρτωση (Load): ανάγνωση µνήµης και ενηµέρωση καταχωρητή Αποθήκευση (Store): εγγραφής τιµής καταχωρητή στη µνήµη Κεφάλαιο 4 Ο επεξεργαστής 15

16 Εντολές διακλάδωσης (branch) Ανάγνωση τελεστέων καταχωρητών Σύγκριση τελεστέων Χρήση ALU, αφαίρεση και έλεγχος της εξόδου Zero Υπολογισµός διεύθυνσης προορισµού Επέκταση προσήµου της µετατόπισης (displacement) Αριστερή ολίσθηση κατά 2 θέσεις (µετατόπιση λέξης) Πρόσθεση στο PC + 4 Έχει ήδη υπολογιστεί από την προσκόµιση εντολής Κεφάλαιο 4 Ο επεξεργαστής 16

17 Εντολές διακλάδωσης Απλώς επαναδροµολογεί τις εγγραφές Επαναλαµβάνεται το καλώδιο του bit προσήµου Κεφάλαιο 4 Ο επεξεργαστής 17

18 ηµιουργία των στοιχείων Μια πρώτη διαδροµή δεδοµένων (data path) εκτελεί µία εντολή σε έναν κύκλο ρολογιού Κάθε στοιχείο της διαδροµής δεδοµένων κάνει µόνο µία συνάρτηση κάθε φορά Έτσι, χρειαζόµαστε ξεχωριστές µνήµες εντολών και δεδοµένων Χρήση πολυπλεκτών όταν χρησιµοποιούνται διαφορετικές προελεύσεις δεδοµένων σε διαφορετικές εντολές Κεφάλαιο 4 Ο επεξεργαστής 18

19 ιαδροµή δεδοµένων για Τύπο R/Load/Store Κεφάλαιο 4 Ο επεξεργαστής 19

20 Πλήρης διαδροµή δεδοµένων Κεφάλαιο 4 Ο επεξεργαστής 20

21 Έλεγχος ALU Η ALU χρησιµοποιείται για Load/Store: λειτουργία = add Branch: λειτουργία = subtract Τύπου R: λειτουργία εξαρτάται από το πεδίο funct Έλεγχος ALU Λειτουργία 0000 AND 0001 OR 0010 add 0110 subtract 0111 set-on-less-than 1100 NOR 4.4 Μια απλή µέθοδος υλοποίησης Κεφάλαιο 4 Ο επεξεργαστής 21

22 Έλεγχος ALU Υποθέτουµε ότι ένα πεδίο 2 bit ALUOp εξάγεται από το opcode Συνδυαστική λογική εξάγει τον έλεγχο της ALU opcode ALUOp Λειτουργία funct ALU function ALU control lw 00 load word XXXXXX add 0010 sw 00 store word XXXXXX add 0010 beq 01 branch equal XXXXXX subtract 0110 R-type 10 add add 0010 subtract subtract 0110 AND AND 0000 OR OR 0001 set-on-less-than set-on-less-than 0111 Κεφάλαιο 4 Ο επεξεργαστής 22

23 Η κύρια µονάδα ελέγχου Σήµατα ελέγχου που εξάγονται από εντολή Τύπου R Load/ Store Branch 0 rs rt rd shamt funct 31:26 25:21 20:16 15:11 10:6 5:0 35 or 43 rs rt address 31:26 25:21 20:16 15:0 4 rs rt address 31:26 25:21 20:16 15:0 opcode πάντα ανάγνωση ανάγνωση, εκτός από τη load εγγραφή για τύπου R και load επέκταση προσήµου και πρόσθεση Κεφάλαιο 4 Ο επεξεργαστής 23

24 ιαδροµή δεδοµένων και έλεγχος Κεφάλαιο 4 Ο επεξεργαστής 24

25 Εντολή τύπου R Κεφάλαιο 4 Ο επεξεργαστής 25

26 Εντολή Load Κεφάλαιο 4 Ο επεξεργαστής 26

27 Εντολή Branch-on-Equal Κεφάλαιο 4 Ο επεξεργαστής 27

28 Υλοποίηση αλµάτων Jump 2 address Η Jump χρησιµοποιεί διεύθυνση λέξης Ενηµέρωση του PC µε συνένωση των Υψηλότερων 4 bit του παλιού PC ιεύθυνσης άλµατος των 26 bit 00 31:26 25:0 Χρειάζεται ένα επιπλέον σήµα ελέγχου από την αποκωδικοποίηση του opcode Κεφάλαιο 4 Ο επεξεργαστής 28

29 ιαδροµή δεδ. µε προσθήκη αλµάτων Κεφάλαιο 4 Ο επεξεργαστής 29

30 Ζητήµατα απόδοσης Η µεγαλύτερη καθυστέρηση καθορίζει την περίοδο ρολογιού Κρίσιµη διαδροµή (critical path): εντολή load Μνήµη εντολών αρχείο καταχωρητών ALU µνήµη δεδοµένων αρχείο καταχωρητών εν είναι εφικτή διαφορετική περίοδος για διαφορετικές εντολές Παραβιάζει τη σχεδιαστική αρχή Κάνε τη συνηθισµένη περίπτωση γρήγορη Θα βελτιώσουµε την απόδοση µε τη διοχέτευση (pipelining) Κεφάλαιο 4 Ο επεξεργαστής 30

31 Αναλογία διοχέτευσης Μπουγάδα µε διοχέτευση: επικάλυψη εκτέλεσης Η παραλληλία βελτιώνει την απόδοση Τέσσερα φορτία: Επιτάχυνση = 8/3.5 = 2.3 Ασταµάτητα: Κεφάλαιο 4 Ο επεξεργαστής Γενικά για τη διοχέτευση Επιτάχυνση = 2n/(0.5n + 1.5) 4 = αριθµός σταδίων

32 ιοχέτευση του MIPS Πέντε στάδια (stages), ένα βήµα σε κάθε στάδιο 1. IF: Instruction fetch from memory (προσκόµιση εντολής από τη µνήµη) 2. ID: Instruction decode & register read (αποκωδικοποίηση εντολής & ανάγνωση καταχωρητών) 3. EX: Execute operation or calculate address (εκτέλεση λειτουργίας ή υπολογισµός δ/νσης) 4. MEM: Access memory operand (προσπέλαση τελεστέου µνήµης) 5. WB: Write result back to register (επανεγγραφή αποτελέσµατος σε καταχωρητή) Κεφάλαιο 4 Ο επεξεργαστής 32

33 Απόδοση διοχέτευσης Υποθέστε ότι ο χρόνος των σταδίων είναι 100ps για ανάγνωση ή εγγραφή καταχωρητή 200ps για τα άλλα στάδια Σύγκριση της διαδροµής δεδοµένων µε διοχέτευση µε τη διαδροµή δεδοµένων ενός κύκλου Εντολή Instr fetch Register read ALU op Memory access Register write Συνολικός χρόνος lw 200ps 100 ps 200ps 200ps 100 ps 800ps sw 200ps 100 ps 200ps 200ps 700ps R-format 200ps 100 ps 200ps 100 ps 600ps beq 200ps 100 ps 200ps 500ps Κεφάλαιο 4 Ο επεξεργαστής 33

34 Απόδοση διοχέτευσης Ενός κύκλου (T c = 800ps) Με διοχέτευση (T c = 200ps) Κεφάλαιο 4 Ο επεξεργαστής 34

35 Επιτάχυνση λόγω διοχέτευσης Αν είναι ισορροπηµένα όλα τα στάδια ηλαδή, όλα διαρκούν τον ίδιο χρόνο Χρόνος µεταξύ εντολών µε διοχέτευση = Χρόνος µεταξύ εντολών χωρίς διοχέτευση Αριθµός σταδίων Αν δεν είναι ισορροπηµένα, η επιτάχυνση είναι µικρότερη Επιτάχυνση λόγω αυξηµένης διεκπεραιωτικής ικανότητας (throughput) Λανθάνων χρόνος latency (χρόνος για κάθε εντολή) δε µειώνεται Κεφάλαιο 4 Ο επεξεργαστής 35

36 Παράδειγµα Σύγκριση Πρόγραµµα µε 10% loads, 15% stores, 55% R-type, 20% διακλαδώσεις Πλήθος εντολών 10 9 Με δεδοµένους τους λανθάνοντες χρόνους που είδαµε Βρείτε το χρόνο εκτέλεσης για: ιαδροµή δεδοµένων 1 κύκλου ιαδροµή δεδοµένων πολλών κύκλων ιαδροµή δεδοµένων µε ιδανική διοχέτευση Χωρίς καθυστερήσεις Κεφάλαιο 4 Ο επεξεργαστής 36

37 Απάντηση ιαδροµή δεδοµένων 1 κύκλου Η περίοδος του ρολογιού είναι 800 ps Χρόνος εκτέλεσης = Ι x CPI x Χρόνος κύκλου = 10 9 x 1 x 800 x = 0,80 sec ιαδροµή δεδοµένων πολλών κύκλων Περίοδος ρολογιού 200 ps CPI = 0,10 x 5 + 0,15 x 4 + 0,55 x 4 + 0,20 x 3 = 3,9 Χρόνος εκτέλεσης = Ι x CPI x Χρόνος κύκλου = 10 9 x 3,9 x 200 x = 0,78 sec ιαδροµή δεδοµένων µε ιδανική διοχέτευση Χωρίς καθυστερήσεις Χρόνος εκτέλεσης = Ι x CPI x Χρόνος κύκλου = 10 9 x 1 x 200 x = 0,20 sec Κεφάλαιο 4 Ο επεξεργαστής 37

38 ιοχέτευση και σχεδίαση συνόλου εντολών Το σύνολο εντολών του MIPS είναι σχεδιασµένο για διοχέτευση Όλες οι εντολές είναι των 32 bit Ευκολότερη προσκόµιση και αποκωδικοποίηση σε έναν κύκλο σύγκριση µε x86: εντολές 1 έως 17 byte Λίγες και κανονικές µορφές εντολών Μπορεί να αποκωδικοποιήσει και να διαβάσει καταχωρητές σε ένα βήµα ιευθυνσιοδότηση Load/store Μπορεί να υπολογίσει τη δ/νση στο τρίτο στάδιο, και να προσπελάσει τη µνήµη στο τέταρτο στάδιο Ευθυγράµµιση των τελεστέων µνήµης Προσπέλαση µνήµης διαρκεί µόνο έναν κύκλο Κεφάλαιο 4 Ο επεξεργαστής 38

39 Κίνδυνοι (hazards) Καταστάσεις που αποτρέπουν την εκκίνηση της επόµενης εντολής στον επόµενη κύκλο Κίνδυνος δοµής (structure hazards) Ένας απαιτούµενος πόρος είναι απασχοληµένος Κίνδυνος δεδοµένων (data hazard) Πρέπει να περιµένει την προηγούµενη εντολή να ολοκληρώσει την ανάγνωση/εγγραφή δεδοµένων της Κίνδυνος ελέγχου (control hazard) Η απόφαση σε µια ενέργεια ελέγχου εξαρτάται από προηγούµενη εντολή Κεφάλαιο 4 Ο επεξεργαστής 39

40 Κίνδυνοι δοµής ιένεξη στη χρήση ενός πόρου Στη διοχέτευση του MIPS µε µία µοναδική µνήµη Οι εντολές load/store απαιτούν προσπέλαση µνήµης Η προσκόµιση εντολής πρέπει να καθυστερήσει (stall) σε εκείνο το κύκλο Θα προκαλούσε «φυσαλίδα» της διοχέτευσης (pipeline bubble ) Έτσι, οι διαδροµές δεδοµένων µε διοχέτευση απαιτούν ξεχωριστές µνήµες εντολών/δεδοµένων Ή ξεχωριστές κρυφές µνήµες (cache memories) εντολών/δεδοµένων Κεφάλαιο 4 Ο επεξεργαστής 40

41 Κίνδυνοι δεδοµένων Μια εντολή εξαρτάται από την ολοκλήρωση µιας προσπέλασης δεδοµένων µιας προηγούµενης εντολής add $s0, $t0, $t1 sub $t2, $s0, $t3 Κεφάλαιο 4 Ο επεξεργαστής 41

42 Προώθηση (Forwarding) Λέγεται επίσης Παράκαµψη (Bypassing) Χρήση του αποτελέσµατός όταν δηµιουργηθεί Μην περιµένεις να αποθηκευτεί σε καταχωρητή Απαιτεί επιπλέον συνδέσεις στη διαδροµή δεδοµένων Κεφάλαιο 4 Ο επεξεργαστής 42

43 Κίνδυνος δεδοµένων Φόρτωσης/Χρήσης Φόρτωση/Χρήση (Load/Use) εν µπορούµε να αποφύγουµε πάντα τις καθυστερήσεις µε την προώθηση Αν η τιµή δεν έχει υπολογιστεί όταν χρειάζεται εν µπορεί να γίνει προώθηση προς τα πίσω στο χρόνο! Κεφάλαιο 4 Ο επεξεργαστής 43

44 Χρονοπρογρ/µός κώδικα για αποφυγή καθυστερήσεων Αναδιάταξη κώδικα για αποφυγή χρήσης του αποτελέσµατος της load στην επόµενη εντολή Κώδικας C για τοa = B + E; C = B + F; καθυστέρηση καθυστέρηση lw $t1, 0($t0) lw $t2, 4($t0) add $t3, $t1, $t2 sw $t3, 12($t0) lw $t4, 8($t0) add $t5, $t1, $t4 sw $t5, 16($t0) 13 κύκλοι lw $t1, 0($t0) lw $t2, 4($t0) lw $t4, 8($t0) add $t3, $t1, $t2 sw $t3, 12($t0) add $t5, $t1, $t4 sw $t5, 16($t0) 11 κύκλοι Κεφάλαιο 4 Ο επεξεργαστής 44

45 Κίνδυνοι ελέγχου Η διακλάδωση καθορίζει τη ροή του ελέγχου (flow of control) Η προσκόµιση της επόµενης εντολής εξαρτάται από το αποτέλεσµα της διακλάδωσης Η διοχέτευση δεν µπορεί να προσκοµίσει πάντα τη σωστή εντολή Ακόµη δουλεύει στο στάδιο ID της διακλάδωσης Στη διοχέτευση του MIPS Πρέπει να συγκρίνει καταχωρητές και να υπολογίσει τη δ/νση προορισµού νωρίς στη διοχέτευση Προσθήκη υλικού για να γίνουν στο στάδιο ID Κεφάλαιο 4 Ο επεξεργαστής 45

46 Καθυστέρηση σε διακλάδωση Stall on branch Περίµενε µέχρι να καθοριστεί το αποτέλεσµα της διακλάδωσης πριν προσκοµίσεις την επόµενη εντολή Κεφάλαιο 4 Ο επεξεργαστής 46

47 Πρόβλεψη διακλάδωσης Branch prediction Οι µεγαλύτερες διοχετεύσεις δεν µπορούν να καθορίσουν σύντοµα το αποτέλεσµα της διακλάδωσης Η ποινή καθυστέρησης (stall penalty) γίνεται υπερβολικά µεγάλη Πρόβλεψη (predict) του αποτελέσµατος της διακλάδωσης Καθυστέρηση µόνο αν η πρόβλεψη είναι λανθασµένη Στη διοχέτευση του MIPS Μπορεί να γίνει πρόβλεψη µη λήψης της διακλάδωσης (predict not taken) Προσκόµιση της εντολής µετά τη διακλάδωση, χωρίς καθόλου καθυστέρηση Κεφάλαιο 4 Ο επεξεργαστής 47

48 MIPS µε πρόβλεψη µη λήψης Σωστή πρόβλεψη Λανθασµένη πρόβλεψη Κεφάλαιο 4 Ο επεξεργαστής 48

49 Πιο ρεαλιστική πρόβλεψη διακλάδωσης Στατική πρόβλεψη διακλάδωσης Βασίζεται στην τυπική συµπεριφορά των διακλαδώσεων Παράδειγµα: διακλαδώσεις σε βρόχους και εντολές if Πρόβλεψη διακλαδώσεων προς τα πίσω (backward branches) ως λαµβανόµενες Πρόβλεψη διακλαδώσεων προς τα εµπρός (forward branches) ως µη λαµβανόµενες υναµική πρόβλεψη διακλάδωσης Το υλικό µετράει τη πραγµατική συµπεριφορά διακλαδώσεων π.χ., καταγράφει την πρόσφατη ιστορία κάθε διακλάδωσης Υποθέτει ότι η µελλοντική συµπεριφορά θα συνεχίσει την τάση Σε περίπτωση λάθους, γίνεται καθυστέρηση κατά την επαναπροσκόµιση, και ενηµέρωση του ιστορικού Κεφάλαιο 4 Ο επεξεργαστής 49

50 «Καθυστερηµένες» διακλαδώσεις Καθυστερηµένες διακλαδώσεις [delayed branches] Ιδέα: καθυστέρησε να πάρεις απόφαση για µια διακλάδωση Αυτό υλοποιεί ο MIPS Μια «καθυστερηµένη» διακλάδωση εκτελεί πάντα την επόµενη της εντολή εν ελέγχει την «ορθότητα» αυτής της επιλογής Πρέπει η επόµενη εντολή να κάνει «άσχετο» µε τη διακλάδωση έργο Στο προηγούµενο παράδειγµα, η add $4, $5, $6 µπορεί να µεταφερθεί µετά τη beq εν θα αλλάξει τίποτε και θα αποφευχθεί ο 1 κύκλος καθυστέρησης Αυτό το κάνουν οι µεταγλωττιστές Κεφάλαιο 4 Ο επεξεργαστής 50

51 Περίληψη διοχέτευσης ΓΕΝΙΚΗ εικόνα Η διοχέτευση βελτιώνει την απόδοση µε την αύξηση της διεκπεραιωτικής ικανότητας σε εντολές Εκτελεί πολλές εντολές παράλληλα Κάθε εντολή έχει τον ίδιο λανθάνοντα χρόνο Υπόκειται σε κινδύνους οµής, δεδοµένων, ελέγχου Η σχεδίαση του συνόλου εντολών επιδρά στην πολυπλοκότητα της υλοποίησης της διοχέτευσης Κεφάλαιο 4 Ο επεξεργαστής 51

52 Στάδια της διοχέτευσης 1. IF: Instruction fetch from memory (προσκόµιση εντολής από τη µνήµη) 2. ID: Instruction decode & register read (αποκωδικοποίηση εντολής & ανάγνωση καταχωρητών) 3. EX: Execute operation or calculate address (εκτέλεση λειτουργίας ή υπολογισµός δ/νσης) 4. MEM: Access memory operand (προσπέλαση τελεστέου µνήµης) 5. WB: Write result back to register (επανεγγραφή αποτελέσµατος σε καταχωρητή) Κεφάλαιο 4 Ο επεξεργαστής ιαδροµή δεδοµένων και έλεγχος µε διοχέτευση

53 ιαδροµή δεδοµένων MIPS µε διοχέτευση IF ID EX MEM WB MEM Ροή από δεξιά προς αριστερά οδηγεί σε κινδύνους (hazards) WB Κεφάλαιο 4 Ο επεξεργαστής 53

54 Καταχωρητές διοχέτευσης Χρειάζονται καταχωρητές ανάµεσα στα στάδια Για να κρατήσουν πληροφορίες που παράγονται στον προηγούµενο κύκλο IF/ID ID/ΕΧ ΕΧ/ΜΕΜ ΜΕΜ/WB Κεφάλαιο 4 Ο επεξεργαστής 54

55 Λειτουργία διοχέτευσης Ανά κύκλο ροή των εντολών µέσα από τη διαδροµή δεδοµένων µε διοχέτευση ύο τρόποι αναπαράστασης: ιάγραµµα διοχέτευσης «ενός κύκλου ρολογιού» ( single-clock-cycle ) είχνει τη χρήση της διοχέτευσης σε ένα µόνο κύκλο Τονίζει τους πόρους που χρησιµοποιούνται Σύγκριση µε διάγραµµα «πολλών κύκλων ρολογιού» ( multi-clock-cycle ) Γράφηµα της λειτουργίας στο χρόνο Θα δούµε διαγράµµατα «ενός κύκλου ρολογιού» για εντολές load και store Κεφάλαιο 4 Ο επεξεργαστής 55

56 Στάδιο IF για Load, Store, Κεφάλαιο 4 Ο επεξεργαστής 56

57 Στάδιο ID για Load, Store, Κεφάλαιο 4 Ο επεξεργαστής 57

58 Στάδιο EX για Load Κεφάλαιο 4 Ο επεξεργαστής 58

59 Στάδιο MEM για Load Κεφάλαιο 4 Ο επεξεργαστής 59

60 Στάδιο WB για Load Λάθος αριθµός καταχωρητή Κεφάλαιο 4 Ο επεξεργαστής 60

61 ιορθωµένη διαδροµή Load Κεφάλαιο 4 Ο επεξεργαστής 61

62 Χρήση διαδροµής από τη Load Κεφάλαιο 4 Ο επεξεργαστής 62

63 Στάδιο EX για Store Κεφάλαιο 4 Ο επεξεργαστής 63

64 Στάδιο MEM για Store Κεφάλαιο 4 Ο επεξεργαστής 64

65 Στάδιο WB για Store Κεφάλαιο 4 Ο επεξεργαστής 65

66 ιάγραµµα πολλών κύκλων Μορφή που δείχνει τη χρήση των πόρων Κεφάλαιο 4 Ο επεξεργαστής 66

67 ιάγραµµα διοχέτευσης πολλών κύκλων Παραδοσιακή µορφή Κεφάλαιο 4 Ο επεξεργαστής 67

68 ιάγραµµα διοχέτευσης ενός κύκλου Κατάσταση της διοχέτευσης σε δεδοµένο κύκλο Κεφάλαιο 4 Ο επεξεργαστής 68

69 Έλεγχος διοχέτευσης (απλουσ.) Κεφάλαιο 4 Ο επεξεργαστής 69

70 Πίνακας αληθείας ελέγχου Κωδικός λειτουργίας εντολής (opcode) ALUOp Λειτουργία εντολής Πεδίο funct Επιθυµητή ενέργεια ALU Είσοδος ελέγχου ALU LW 00 load word XXXXXX add 0010 SW 00 store word XXXXXX add 0010 Branch equal 01 branch equal XXXXXX subtract 0110 Τύπου R 10 add add 0010 Τύπου R 10 subtract subtract 0110 Τύπου R 10 AND AND 0000 Τύπου R 10 OR OR 0001 Τύπου R 10 set on less than set on less than 0111 Κεφάλαιο 4 Ο επεξεργαστής 70

71 Ερµηνεία σηµάτων ελέγχου Όνοµα σήµατος RegDst Αποτέλεσµα όταν είναι απενεργοποιηµένο (0) Ο αριθµός καταχωρητή προορισµού για τον Καταχωρητή εγγραφής προέρχεται από το πεδίο rt (bit 20:16). Αποτέλεσµα όταν είναι ενεργοποιηµένο (1) Ο αριθµός καταχωρητή προορισµού για τον Καταχωρητή εγγραφής προέρχεται από το πεδίο rd (bit 15:11). RegWrite Κανένα. Στον καταχωρητή στην είσοδο Καταχωρητή εγγραφής γράφεται η τιµή που περιέχεται στην είσοδο εδοµένων εγγραφής. ALUSrc PCSrc Ο δεύτερος τελεστέος της ALU προέρχεται από τη δεύτερη έξοδο του αρχείου καταχωρητών ( εδοµένα ανάγνωσης 2). Ο PC αντικαθίσταται από την έξοδο του αθροιστή που υπολογίζει την τιµή PC + 4. Ο δεύτερος τελεστέος της ALU είναι τα κατώτερα 16 bit της εντολής αφού υποστούν επέκταση προσήµου. Ο PC αντικαθίσταται από την έξοδο του αθροιστή που υπολογίζει τον προορισµό τής διακλάδωσης. MemRead Κανένα. Τα περιεχόµενα της µνήµης δεδοµένων που καθορίζονται από την είσοδο ιεύθυνσης τοποθετούνται στην έξοδο εδοµένων ανάγνωσης. MemWrite Κανένα. Τα περιεχόµενα της µνήµης δεδοµένων που καθορίζονται από την είσοδο ιεύθυνσης αντικαθίστανται από την τιµή στην είσοδο εδοµένων εγγραφής. MemtoReg Η τιµή που παρέχεται στην είσοδο εδοµένων εγγραφής των καταχωρητών προέρχεται από την ALU. Η τιµή που παρέχεται στην είσοδο εδοµένων εγγραφής των καταχωρητών προέρχεται από τη µνήµη δεδοµένων. Κεφάλαιο 4 Ο επεξεργαστής 71

72 Σήµατα ανά στάδιο Γραµµές ελέγχου σταδίου Εκτέλεσης/υπολογισµού διεύθυνσης (EX) Γραµµές ελέγχου σταδίου Προσπέλασης µνήµης (MEM) Γραµµές ελέγχου σταδίου Επανεγγραφής (WB) Εντολή RegDst ALU Op1 ALU Op0 ALUSrc Branch Mem Read Mem Write RegWrite Memto Reg Μορφή R lw sw X X beq X X Κεφάλαιο 4 Ο επεξεργαστής 72

73 Έλεγχος διοχέτευσης Σήµατα ελέγχου εξάγονται από την εντολή Όπως και στην υλοποίηση ενός κύκλου Κεφάλαιο 4 Ο επεξεργαστής 73

74 Έλεγχος διοχέτευσης Κεφάλαιο 4 Ο επεξεργαστής 74

75 Κίνδυνοι δεδοµένων σε εντολές ALU Θεωρήστε την ακολουθία: sub $2, $1,$3 and $12,$2,$5 or $13,$6,$2 add $14,$2,$2 sw $15,100($2) Μπορούµε να επιλύσουµε τους κινδύνους µε προώθηση (forwarding) Πώς ανιχνεύουµε πότε πρέπει να γίνει προώθηση; 4.7 Κίνδυνοι δεδοµένων: προώθηση και καθυστέρηση Κεφάλαιο 4 Ο επεξεργαστής 75

76 Εξαρτήσεις και προώθηση Κεφάλαιο 4 Ο επεξεργαστής 76

77 Ανίχνευση ανάγκης για προώθηση Μεταβίβαση αριθµών καταχωρητών µέσα στη διοχέτευση π.χ., ID/EX.RegisterRs = αριθµός καταχωρητή για το Rs που βρίσκεται στον καταχωρητή διοχέτευσης ID/EX Οι αριθµοί καταχωρητών των τελεστέων της ALU στο στάδιο EX δίνονται από τα ID/EX.RegisterRs, ID/EX.RegisterRt Κίνδυνοι δεδοµένων όταν 1α. EX/MEM.RegisterRd = ID/EX.RegisterRs 1β. EX/MEM.RegisterRd = ID/EX.RegisterRt 2α. MEM/WB.RegisterRd = ID/EX.RegisterRs 2β. MEM/WB.RegisterRd = ID/EX.RegisterRt Προωθ. από EX/MEM καταχ. διοχ. Προώθ. από MEM/WB καταχ. διοχ. Κεφάλαιο 4 Ο επεξεργαστής 77

78 Ανίχνευση ανάγκης για προώθηση Αλλά µόνο αν η εντολή που προωθεί πρόκειται να γράψει σε κάποιο καταχωρητή! EX/MEM.RegWrite, MEM/WB.RegWrite Και µόνο αν το Rd της εντολής δεν είναι ο καταχωρητής $zero! EX/MEM.RegisterRd 0, MEM/WB.RegisterRd 0 Κεφάλαιο 4 Ο επεξεργαστής 78

79 Χωρίς προώθηση Κεφάλαιο 4 Ο επεξεργαστής 79

80 ιαδροµές προώθησης Κεφάλαιο 4 Ο επεξεργαστής 80

81 Συνθήκες προώθησης Κίνδυνος στο στάδιο EX if (EX/MEM.RegWrite and (EX/MEM.RegisterRd 0) and (EX/MEM.RegisterRd = ID/EX.RegisterRs)) ForwardA = 10 if (EX/MEM.RegWrite and (EX/MEM.RegisterRd 0) and (EX/MEM.RegisterRd = ID/EX.RegisterRt)) ForwardB = 10 Κίνδυνος στο στάδιο MEM if (MEM/WB.RegWrite and (MEM/WB.RegisterRd 0) and (MEM/WB.RegisterRd = ID/EX.RegisterRs)) ForwardA = 01 if (MEM/WB.RegWrite and (MEM/WB.RegisterRd 0) and (MEM/WB.RegisterRd = ID/EX.RegisterRt)) ForwardB = 01 Κεφάλαιο 4 Ο επεξεργαστής 81

82 Έλεγχος προώθησης Έλεγχος πολυπλέκτη Προέλευση Ερµηνεία ForwardA = 00 ID/EX Ο πρώτος τελεστέος της ALU προέρχεται από το αρχείο καταχωρητών. 1 ForwardA = 10 EX/MEM Ο πρώτος τελεστέος της ALU προωθείται από το προηγούµενο αποτέλεσµα της ALU. ForwardA = 01 MEM/WB Ο πρώτος τελεστέος της ALU προωθείται από τη µνήµη δεδοµένων ή από ένα προηγούµενο αποτέλεσµα της ALU. ForwardΒ = 00 ID/EX Ο δεύτερος τελεστέος της ALU προέρχεται από το αρχείο καταχωρητών. ForwardΒ = 10 EX/MEM Ο δεύτερος τελεστέος της ALU προωθείται από το προηγούµενο αποτέλεσµα της ALU. ForwardΒ = 01 MEM/WB Ο δεύτερος τελεστέος της ALU προωθείται από τη µνήµη δεδοµένων ή από ένα προηγούµενο αποτέλεσµα της ALU Κεφάλαιο 4 Ο επεξεργαστής 82

83 ιπλός κίνδυνος δεδοµένων Θεωρήστε την ακολουθία: add $1,$1,$2 add $1,$1,$3 add $1,$1,$4 Συµβαίνουν και οι δύο κίνδυνοι Θέλουµε να χρησιµοποιήσουµε τον πιο πρόσφατο Αναθεώρηση της συνθήκης προώθησης του MEM Προώθηση µόνο αν η συνθήκη κινδύνου του σταδίου EX δεν είναι αληθής Κεφάλαιο 4 Ο επεξεργαστής 83

84 Αναθεωρηµένη συνθήκη προώθησης Κίνδυνος στο στάδιο MEM if (MEM/WB.RegWrite and (MEM/WB.RegisterRd 0) and not (EX/MEM.RegWrite and (EX/MEM.RegisterRd 0) and (EX/MEM.RegisterRd = ID/EX.RegisterRs)) and (MEM/WB.RegisterRd = ID/EX.RegisterRs)) ForwardA = 01 if (MEM/WB.RegWrite and (MEM/WB.RegisterRd 0) and not (EX/MEM.RegWrite and (EX/MEM.RegisterRd 0) and (EX/MEM.RegisterRd = ID/EX.RegisterRt)) and (MEM/WB.RegisterRd = ID/EX.RegisterRt)) ForwardB = 01 Κεφάλαιο 4 Ο επεξεργαστής 84

85 ιαδροµή δεδοµένων µε προώθηση Κεφάλαιο 4 Ο επεξεργαστής 85

86 ιαδοχικές lw & sw lw $t7,0($sp) Πρέπει να προστεθεί προώθηση από το MEM στο MEM sw $t7,0($s6) Εδώ τι γίνεται; Κεφάλαιο 4 Ο επεξεργαστής 86

87 Προώθηση immediate πεδίου Άλλος ένας πολυπλέκτης Κεφάλαιο 4 Ο επεξεργαστής 87

88 Κίνδυνος δεδοµένων φόρτωσης-χρήσης Απαιτείται καθυστέρηση για έναν κύκλο Κεφάλαιο 4 Ο επεξεργαστής 88

89 Ανίχνευση κινδύνου φόρτωσης-χρήσης Έλεγχος όταν η εντολή που κάνει τη χρήση αποκωδικοποιείται στο στάδιο ID Οι αριθµοί των καταχωρητών τελεστέων της ALU στο στάδιο ID δίνονται από τα IF/ID.RegisterRs, IF/ID.RegisterRt Κίνδυνος φόρτωσης-χρήσης όταν ID/EX.MemRead and ((ID/EX.RegisterRt = IF/ID.RegisterRs) or (ID/EX.RegisterRt = IF/ID.RegisterRt)) Αν ανιχνευθεί, γίνεται καθυστέρηση της διοχέτευσης και εισάγεται φυσαλίδα Κεφάλαιο 4 Ο επεξεργαστής 89

90 Πώς καθυστερεί η διοχέτευση Οι τιµές ελέγχου στον καταχωρητή ID/EX γίνονται 0 Τα EX, MEM και WB εκτελούν nop (no-operation, απραξία) Αποτρέπεται η ενηµέρωση του PC και του καταχωρητή IF/ID Η εντολή που κάνει τη χρήση αποκωδικοποιείται και πάλι Η επόµενη εντολή προσκοµίζεται και πάλι Η καθυστέρηση 1 κύκλου επιτρέπει στο MEM να διαβάσει τα δεδοµένα για την εντολή lw Μπορεί στη συνέχεια να κάνει προώθηση στο στάδιο EX Κεφάλαιο 4 Ο επεξεργαστής 90

91 Καθυστέρηση/φυσαλίδα στη διοχέτευση Η καθυστέρηση εισάγεται εδώ Κεφάλαιο 4 Ο επεξεργαστής 91

92 Καθυστέρηση/φυσαλίδα στη διοχέτευση καθυστερεί στο ID καθυστερεί στο IF Ή, για την ακρίβεια Κεφάλαιο 4 Ο επεξεργαστής 92

93 ιαδροµή δεδοµένων µε ανίχνευση κινδύνων Κεφάλαιο 4 Ο επεξεργαστής 93

94 Μεγάλο παράδειγµα Θα δούµε την εκτέλεση του κώδικα: lw $2, 20($1) and $4, $2, $5 or $4, $4, $2 add $9, $4, $2 Σε διαδοχικά διαγράµµατα Κεφάλαιο 4 Ο επεξεργαστής 94

95 Κύκλος 2 Κεφάλαιο 4 Ο επεξεργαστής 95

96 Κύκλος 3 Κεφάλαιο 4 Ο επεξεργαστής 96

97 Κύκλος 4 Κεφάλαιο 4 Ο επεξεργαστής 97

98 Κύκλος 5 Κεφάλαιο 4 Ο επεξεργαστής 98

99 Κύκλος 6 Κεφάλαιο 4 Ο επεξεργαστής 99

100 Κύκλος 7 Κεφάλαιο 4 Ο επεξεργαστής 100

101 Καθυστερήσεις και απόδοση ΓΕΝΙΚΗ εικόνα Οι καθυστερήσεις µειώνουν την απόδοση Αλλά είναι απαραίτητες για να πάρουµε σωστά αποτελέσµατα Ο µεταγλωττιστής µπορεί να αναδιατάξει τον κώδικα για να αποφευχθούν οι κίνδυνοι και οι καθυστερήσεις Απαιτεί γνώση της δοµής της διοχέτευσης Κεφάλαιο 4 Ο επεξεργαστής 101

102 Κίνδυνοι διακλάδωσης Αν το αποτέλεσµα της διακλάδωσης καθορίζεται στο MEM Ποινή διακλάδωσης (branch penalty) = 3 κύκλοι 4.8 Κίνδυνοι ελέγχου Εκκένωση αυτών των εντολών (τιµές ελέγχου στο 0) PC Κεφάλαιο 4 Ο επεξεργαστής 102

103 Μείωση καθυστέρησης διακλάδωσης Μεταφορά υλικού για προσδιορισµό αποτελέσµατος στο στάδιο ID Αθροιστής διεύθυνσης προορισµού Εφικτό στο στάδιο ID Συγκριτής καταχωρητών Επίσης εφικτό στο στάδιο ID Παράδειγµα: λαµβανόµενη διακλάδωση 36: sub $10, $4, $8 40: beq $1, $3, 7 44: and $12, $2, $5 48: or $13, $2, $6 52: add $14, $4, $2 56: slt $15, $6, $ : lw $4, 50($7) προορισµός = *4 = 72 Κεφάλαιο 4 Ο επεξεργαστής 103

104 Παράδειγµα: λαµβανόµενη διακλάδωση Κεφάλαιο 4 Ο επεξεργαστής 104

105 Παράδειγµα: λαµβανόµενη διακλάδωση Κεφάλαιο 4 Ο επεξεργαστής 105

106 Κίνδυνοι δεδοµένων για διακλαδώσεις (1) Αν ένας καταχωρητής σύγκρισης στη διακλάδωση είναι προορισµός εντολής ALU που προηγείται κατά 2 ή 3 θέσεις; Υπάρχει κίνδυνος; add $1, $2, $3 IF ID EX MEM WB add $4, $5, $6 IF ID EX MEM WB IF ID EX MEM WB beq $1, $4, target IF ID EX MEM WB Ναι, και µπορεί να λυθεί µε προώθηση Προσθέτουµε νέες διαδροµές προώθησης (από το ΕΧ και το ΜΕΜ προς το συγκριτή του σταδίου ID Κεφάλαιο 4 Ο επεξεργαστής 106

107 Κίνδυνοι δεδοµένων για διακλαδώσεις (2) Αν ένας καταχωρητής σύγκρισης είναι προορισµός εντολής ALU που προηγείται αµέσως ή εντολής φόρτωσης που προηγείται κατά 2 θέσεις. Υπάρχει κίνδυνος; Ναι, και χρειάζεται 1 κύκλος καθυστέρησης για να γίνει προώθηση από το MEM και το EX στο ID lw $1, addr IF ID EX MEM WB add $4, $5, $6 IF ID EX MEM WB beq stalled IF ID beq $1, $4, target ID EX MEM WB Κεφάλαιο 4 Ο επεξεργαστής 107

108 Κίνδυνοι δεδοµένων για διακλαδώσεις (3) Αν ένας καταχωρητής σύγκρισης είναι προορισµός µιας εντολής φόρτωσης που προηγείται αµέσως. Υπάρχει κίνδυνος; Ναι, και χρειάζονται 2 κύκλοι καθυστέρησης για να γίνει προώθηση lw $1, addr IF ID EX MEM WB beq stalled IF ID beq stalled ID beq $1, $0, target ID EX MEM WB Κεφάλαιο 4 Ο επεξεργαστής 108

109 υναµική πρόβλεψη διακλάδωσης Σε µεγάλες και υπερβαθµωτές διοχετεύσεις, η ποινή διακλάδωσης (branch penalty) είναι πιο σηµαντική Χρήση δυναµικής πρόβλεψης Προσωρινή µνήµη πρόβλεψης διακλάδωσης (branch prediction buffer), που λέγεται και πίνακας ιστορικού διακλάδωσης (branch history table) του 1 bit εικτοδοτείται από τις διευθύνσεις της πρόσφατης εντολής διακλάδωσης Αποθηκεύει το αποτέλεσµα (λήψη/µη λήψη) Για εκτέλεση µιας διακλάδωσης Έλεγχος του πίνακα, υπόθεση του ίδιου αποτελέσµατος Εκκίνηση προσκόµισης από την επόµενη ή τον προορισµό Αν λάθος, εκκένωση διοχέτευσης και αντιστροφή πρόβλεψης Κεφάλαιο 4 Ο επεξεργαστής 109

110 ιάταξη πρόβλεψης 1 bit: µειονέκτηµα Οι διακλαδώσεις του εσωτερικού βρόχου προβλέπονται λανθασµένα δύο φορές outer: inner: beq,, inner beq,, outer Λανθασµένη πρόβλεψη λήψης στην τελευταία επανάληψη του εσωτερικού βρόχου Έπειτα, λανθασµένη πρόβλεψη µη λήψης στην πρώτη επανάληψη του εσωτερικού βρόχου την επόµενη φορά που θα εκτελεστεί Κεφάλαιο 4 Ο επεξεργαστής 110

111 ιάταξη πρόβλεψης των 2 bit Αλλάζει η πρόβλεψη µόνο µετά από δύο διαδοχικές λανθασµένες προβλέψεις Κεφάλαιο 4 Ο επεξεργαστής 111

112 Καθυστερηµένη διακλάδωση Πιθανές θέσεις για «γέµισµα» Κεφάλαιο 4 Ο επεξεργαστής 112

113 Υπολογισµός προορισµού διακλάδωσης Ακόµη και µε πρόβλεψη λήψης/µη-λήψης, πρέπει ακόµη να υπολογιστεί η διεύθυνση διακλάδωσης Ποινή 1 κύκλου για λαµβανόµενη διακλάδωση Γιατί; Επειδή υπολογίζεται στο ID Προσωρινή µνήµη προορισµού διακλάδωσης (branch target buffer) Κρυφή µνήµη για διευθύνσεις προορισµού εικτοδοτείται από τον PC όταν προσκοµίζεται η εντολή Αν υπάρχει ευστοχία (hit) και η εντολή είναι διακλάδωση µε πρόβλεψη λήψης, µπορεί να γίνει άµεση προσκόµιση του προορισµού Κεφάλαιο 4 Ο επεξεργαστής 113

114 Προχωρηµένες προβλέψεις διάταξη πρόβλεψης συσχέτισης (correlating predictor) Μια διάταξη πρόβλεψης διακλάδωσης που συνδυάζει τοπική συµπεριφορά µιας συγκεκριµένης διακλάδωσης µε καθολικές πληροφορίες σχετικά µε τη συµπεριφορά ενός αριθµού διακλαδώσεων που εκτελέστηκαν πρόσφατα. επιλεκτική διάταξη πρόβλεψης διακλάδωσης (tournament branch predictor) ιάταξη πρόβλεψης διακλάδωσης µε πολλές προβλέψεις για κάθε διακλάδωση, και ένα µηχανισµό επιλογής που διαλέγει ποια διάταξη πρόβλεψης να ενεργοποιήσει για µια δεδοµένη διακλάδωση. Κεφάλαιο 4 Ο επεξεργαστής 114

115 Τελική διαδροµή δεδοµένων Κεφάλαιο 4 Ο επεξεργαστής 115

116 Εξαιρέσεις και διακοπές «Μη αναµενόµενα» συµβάνται που απαιτούν αλλαγή της ροής του ελέγχου ιαφορετικές αρχιτεκτονικές συνόλου εντολών χρησιµοποιούν τους όρους διαφορετικά Εξαίρεση (exception) Παρουσιάζεται µέσα στη CPU π.χ., µη ορισµένος κωδικός λειτουργίας (undefined opcode), υπερχείλιση (overflow), κλήση συστήµατος (syscall), ιακοπή (interrupt) Από έναν εξωτερικό ελεγκτή εισόδου/εξόδου ύσκολος ο χειρισµός τους χωρίς να θυσιαστεί απόδοση 4.9 Εξαιρέσεις Κεφάλαιο 4 Ο επεξεργαστής 116

117 Ορολογία MIPS Τύπος συµβάντος Προέλευση Ορολογία MIPS Αίτηση συσκευής Εξωτερική ιακοπή εισόδου/εξόδου Κλήση του λειτουργικού Εσωτερική Εξαίρεση συστήµατος από το πρόγραµµα του χρήστη Αριθµητική υπερχείλιση Εσωτερική Εξαίρεση Χρήση µη ορισµένης εντολής Εσωτερική Εξαίρεση υσλειτουργίες υλικού Οποιοδήποτε από τα δύο Εξαίρεση ή διακοπή Κεφάλαιο 4 Ο επεξεργαστής 117

118 Χειρισµός εξαιρέσεων Στο MIPS, τις εξαιρέσεις διαχειρίζεται ένας Συνεπεξεργαστής Ελέγχου Συστήµατος (System Control Coprocessor), ο CP0 Αποθήκευση του PC της εντολής που διακόπτεται Στο MIPS: Exception Program Counter (EPC) Αποθήκευση της ένδειξης του προβλήµατος Στον MIPS: καταχωρητής Cause (Αιτίου) Υποθέτουµε 1 bit µόνο (στην πράξη είναι περισσότερα) 0 για µη ορισµένο κωδικό λειτουργίας (undefined opcode), και 1 για υπερχείλιση Άλµα στο χειριστή (handler) στη δ/νση 0x Κεφάλαιο 4 Ο επεξεργαστής 118

119 Εναλλακτικός µηχανισµός ιανυσµατικές διακοπές (vectored interrupts) Η δ/νση του χειριστή καθορίζεται από την αιτία Παράδειγµα: Μη ορισµένος opcode: C Υπερχείλιση: C : C Οι εντολές είτε Ασχολούνται µε τη διακοπή, είτε Κάνουν άλµα στον πραγµατικό χειριστή Κεφάλαιο 4 Ο επεξεργαστής 119

120 Ενέργειες του χειριστή Ανάγνωση αιτίου, και µετάβαση στο σχετικό χειριστή Καθορισµός απαιτούµενης ενέργειας Αν η εντολή είναι επανεκκινήσιµη (restartable) Εκτέλεση διορθωτικής ενέργειας Χρήση του EPC για επιστροφή στο πρόγραµµα Αλλιώς Τερµατισµός προγράµµατος Αναφορά σφάλµατος µε χρήση του EPC, του αιτίου, Κεφάλαιο 4 Ο επεξεργαστής 120

121 Εξαιρέσεις σε µια διοχέτευση Άλλη µορφή κινδύνου ελέγχου Θεωρήστε υπερχείλιση στην πρόσθεση στο στάδιο EX add $1, $2, $1 1.Αποφυγή ζηµιάς (εγγραφής) στον $1 2.Ολοκλήρωση των προηγούµενων εντολών 3.Εκκένωση της add και των επόµενων εντολών 4.Ρύθµιση τιµών των καταχωρητών Cause και EPC 5.Μεταφορά ελέγχου στο χειριστή Όµοια µε λανθασµένη πρόβλεψη διακλάδωσης Χρήση µεγάλου µέρους του ίδιου υλικού Κεφάλαιο 4 Ο επεξεργαστής 121

122 ιοχέτευση µε εξαιρέσεις Κεφάλαιο 4 Ο επεξεργαστής 122

123 Ιδιότητες των εξαιρέσεων Επανεκκινήσιµες εξαιρέσεις (restartable exceptions) Η διοχέτευση µπορεί να εκκενώσει την εντολή Ο χειριστής εκτελείται, µετά επιστρέφει στην εντολή Επαναπροσκοµίζεται και εκτελείται από την αρχή Ο PC αποθηκεύεται στον καταχωρητή EPC Προσδιορίζει την εντολή που προκαλεί εξαίρεση Στη πραγµατικότητα αποθηκεύεται ο PC + 4 Ο χειριστής πρέπει να προσαρµοστεί Κεφάλαιο 4 Ο επεξεργαστής 123

124 Παράδειγµα εξαίρεσης Εξαίρεση στην add στον κώδικα 40 sub $11, $2, $4 44 and $12, $2, $5 48 or $13, $2, $6 4C add $1, $2, $1 50 slt $15, $6, $7 54 lw $16, 50($7) Χειριστής sw $25, 1000($0) sw $26, 1004($0) Κεφάλαιο 4 Ο επεξεργαστής 124

125 Παράδειγµα εξαίρεσης Κεφάλαιο 4 Ο επεξεργαστής 125

126 Παράδειγµα εξαίρεσης Κεφάλαιο 4 Ο επεξεργαστής 126

127 Πολλαπλές εξαιρέσεις Η διοχέτευση επικαλύπτει την εκτέλεση πολλών εντολών Μπορούµε να έχουµε πολλές εξαιρέσεις ταυτόχρονα Απλή προσέγγιση: ασχολήσου µε την εξαίρεση της νωρίτερης εντολής Εκκένωση των επόµενων εντολών «Ακριβείς» ( Precise ) εξαιρέσεις Σε σύνθετες διοχετεύσεις Πολλές εντολές ξεκινούν ανά κύκλο Ολοκλήρωση εκτός σειράς (out-of-order) Η διατήρηση των ακριβών εξαιρέσεων είναι δύσκολη! Κεφάλαιο 4 Ο επεξεργαστής 127

128 Μη ακριβείς (imprecise) εξαιρέσεις Απλώς σταµάτα τη διοχέτευση και αποθήκευσε την κατάσταση Συµπεριλαµβάνεται και το αίτιο (ή τα αίτια) της εξαίρεσης Άφησε στο χειριστή να βρει Ποιες εντολές είχαν εξαιρέσεις Ποιες να ολοκληρώσει ή να εκκενώσει Μπορεί να χρειαστεί µη αυτόµατη ολοκλήρωση Απλοποιεί το υλικό, αλλά απαιτεί πιο σύνθετο λογισµικό του χειριστή εν είναι εφικτό για σύνθετες διοχετεύσεις µε πολλαπλή εκκίνηση και εκτέλεση εκτός σειράς Κεφάλαιο 4 Ο επεξεργαστής 128

129 Ακριβείς Μη-ακριβείς ανακριβής διακοπή (imprecise interrupt) Ονοµάζεται επίσης ανακριβής εξαίρεση. Οι διακοπές ή οι εξαιρέσεις σε υπολογιστές µε διοχέτευση, οι οποίες δε σχετίζονται µε την ακριβή εντολή που ήταν η αιτία της διακοπής ή της εξαίρεσης. ακριβής διακοπή (precise interrupt) Ονοµάζεται επίσης ακριβής εξαίρεση. Μια διακοπή ή εξαίρεση που σχετίζεται πάντοτε µε τη σωστή εντολή στους υπολογιστές µε διοχέτευση. Κεφάλαιο 4 Ο επεξεργαστής 129

130 Παραλληλία επιπέδου εντολής Instruction-Level Parallelism (ILP) ιοχέτευση: παράλληλη εκτέλεση πολλών εντολών Για αύξηση του ILP Βαθύτερη διοχέτευση Λιγότερη δουλειά ανά στάδιο µικρότερος κύκλος ρολογιού Πολλαπλή εκκίνηση (multiple issue) Επανάληψη σταδίων διοχέτευσης πολλές διοχετεύσεις Εκκίνηση πολλών εντολών ανά κύκλο ρολογιού CPI < 1, συνεπώς χρήση του Instructions Per Cycle (IPC) Π.χ., 4GHz πολλαπλή εκκίνηση 4 δρόµων (4-way multiple-issue) 16 BIPS, µέγιστο CPI = 0.25, µέγιστο IPC = 4 Αλλά οι εξαρτήσεις το µειώνουν στην πράξη Κεφάλαιο 4 Ο επεξεργαστής Παραλληλία και Προηγµένη Παραλληλία Επιπέδου Εντολής

131 Πολλαπλή εκκίνηση Στατική πολλαπλή εκκίνηση Ο µεταγλωττιστής οµαδοποιεί τις εντολές που θα ξεκινήσουν µαζί Τις συσκευάζει σε «υποδοχές εκκίνησης» ( issue slots ) Ο µεταγλωττιστής ανιχνεύει και αποφεύγει τους κινδύνους υναµική πολλαπλή εκκίνηση Η CPU εξετάζει το ρεύµα των εντολών και επιλέγει εντολές για εκκίνηση σε κάθε κύκλο Ο µεταγλωττιστής µπορεί να βοηθήσει µε αναδιάταξη των εντολών Η CPU επιλύει τους κινδύνους µε προηγµένες τεχνικές κατά το χρόνο εκτέλεσης Κεφάλαιο 4 Ο επεξεργαστής 131

132 Εικασία (speculation) «Μαντεψιά» τι να κάνουµε µε µια εντολή Εκκίνηση λειτουργίας το συντοµότερο Έλεγχος αν η εικασία ήταν σωστή Αν ναι, ολοκλήρωση της λειτουργίας Αν όχι, επιστροφή (roll-back) και εκτέλεση του σωστού Συνηθισµένη στη στατική και τη δυναµική πολλαπλή εκκίνηση Παραδείγµατα Εικασία στο αποτέλεσµα διακλάδωσης Επιστροφή αν η ληφθείσα διαδροµή είναι διαφορετική Εικασία σε φόρτωση (load) Επιστροφή αν η θέση µνήµης έχει αλλάξει τιµή Κεφάλαιο 4 Ο επεξεργαστής 132

133 Εικασία µεταγλωττιστή/υλικού Ο µεταγλωττιστής µπορεί να αναδιατάξει τις εντολές π.χ., µετακίνηση µιας φόρτωσης πριν από µια διακλάδωση Μπορεί να περιλάβει εντολές «διόρθωσης» για να ανακάµψει από λάθος εικασίες Το υλικό µπορεί να δει πιο πέρα για εντολές προς εκτέλεση Αποθηκεύει προσωρινά τα αποτελέσµατα µέχρι να προσδιορίσει ότι χρειάζονται πραγµατικά Εκκενώνει τις προσωρινές µνήµες αν γίνει λάθος εικασία Κεφάλαιο 4 Ο επεξεργαστής 133

134 Εικασία και εξαιρέσεις Τι γίνεται αν συµβεί εξαίρεση σε µια εντολή που εκτελείται µε εικασία; π.χ., φόρτωση µε εικασία πριν τον έλεγχο κενού δείκτη (null-pointer check) Στατική εικασία Μπορεί να προσθέσει υποστήριξη από την αρχιτεκτονική συνόλου εντολών για εξαιρέσεις που έχουν µετατεθεί (deferring exceptions) υναµική εικασία Μπορεί να αποθηκεύει προσωρινά τις εξαιρέσεις µέχρι την ολοκλήρωση της εντολής (που µπορεί να µη συµβεί) Κεφάλαιο 4 Ο επεξεργαστής 134

135 Στατική πολλαπλή εκκίνηση Ο µεταγλωττιστής οµαδοποιεί τις εντολές σε «πακέτα εκκίνησης» ( issue packets ) Οµάδα εντολών που µπορούν να ξεκινήσουν σε έναν κύκλο Καθορίζεται από τους πόρους της διοχέτευσης που απαιτούνται Σκεφθείτε ένα πακέτο εκκίνησης ως µια πολύ µεγάλη εντολή Προσδιορίζει πολλές ταυτόχρονες λειτουργίες Πολύ µεγάλη λέξη εντολής (Very Long Instruction Word VLIW) Κεφάλαιο 4 Ο επεξεργαστής 135

136 Χρονοπρογ/σµός στατικής Ο µεταγλωττιστής πρέπει να αφαιρέσει κάποιους ή όλους τους κινδύνους Αναδιάταξη εντολών σε πακέτα εκκίνησης Όχι εξαρτήσεις µέσα σε ένα πακέτο Πιθανόν κάποιες εξαρτήσεις µεταξύ πακέτων ιαφορές µεταξύ αρχιτεκτονικών ο µεταγλωττιστής πρέπει να το γνωρίζει! Συµπλήρωση µε εντολές nop αν χρειάζεται Κεφάλαιο 4 Ο επεξεργαστής 136

137 MIPS µε στατική διπλή εκκίνηση Πακέτα διπλής εκκίνησης (επιτρεπτοί συνδυασµοί) Μια εντολή ALU ή branch µαζί µε: Μια εντολή load ή store Ευθυγραµµισµένες στα 64 bit ALU/branch, µετά load/store Συµπλήρωση µιας αχρησιµοποίητης εντολής µε nop ιεύθυνση Τύπος εντολής Στάδια διοχέτευσης n ALU/branch IF ID EX MEM WB n + 4 Load/store IF ID EX MEM WB n + 8 ALU/branch IF ID EX MEM WB n + 12 Load/store IF ID EX MEM WB n + 16 ALU/branch IF ID EX MEM WB n + 20 Load/store IF ID EX MEM WB Κεφάλαιο 4 Ο επεξεργαστής 137

138 MIPS µε στατική διπλή εκκίνηση Κεφάλαιο 4 Ο επεξεργαστής 138

139 Κίνδυνοι στο MIPS µε διπλή εκκίνηση Περισσότερες εντολές εκτελούνται παράλληλα Κίνδυνος δεδοµένων EX Η προώθηση απέφυγε τις καθυστερήσεις στην απλή εκκίνηση Τώρα δεν µπορούµε να χρησιµοποιήσουµε το αποτέλεσµα της ALU σε µια load/store στο ίδιο πακέτο add $t0, $s0, $s1 load $s2, 0($t0) Χωρισµός σε δύο πακέτα, ουσιαστικά µία καθυστέρηση (stall) Κίνδυνος φόρτωσης-χρήσης Και πάλι ένας κύκλος λανθάνοντος χρόνου χρήσης, αλλά τώρα δύο εντολές Ανάγκη πιο επιθετικού χρονοπρογραµµατισµού Κεφάλαιο 4 Ο επεξεργαστής 139

140 Παράδειγµα χρονοπρ/σµού Χρονοπρογραµµατίστε αυτό σε MIPS διπλής εκκίνησης Loop: lw $t0, 0($s1) # $t0=array element addu $t0, $t0, $s2 # add scalar in $s2 sw $t0, 0($s1) # store result addi $s1, $s1, 4 # decrement pointer bne $s1, $zero, Loop # branch $s1!=0 ALU/branch Load/store κύκλος Loop: nop lw $t0, 0($s1) 1 addi $s1, $s1, 4 nop 2 addu $t0, $t0, $s2 nop 3 bne $s1, $zero, Loop sw $t0, 4($s1) 4 IPC = 5/4 = 1.25 (σύγκριση µε µέγιστο IPC = 2) Κεφάλαιο 4 Ο επεξεργαστής 140

141 Ξετύλιγµα βρόχου Loop unrolling Επανάληψη του σώµατος του βρόχου για να εµφανιστεί µεγαλύτερη παραλληλία Μειώνει την επιβάρυνση ελέγχου του βρόχου Χρήση διαφορετικών καταχωρητών ανά επανάληψη Ονοµάζεται «µετονοµασία καταχωρητών ( register renaming ) Αποφυγή «αντεξαρτήσεων» ( anti-dependencies ) που µεταφέρονται στο βρόχο (loop-carried) Store που ακολουθείται από load στον ίδιο καταχωρητή Ονοµάζεται επίσης και «εξάρτηση ονόµατος» ( name dependence ) Επαναχρησιµοποίηση ενός ονόµατος καταχωρητή Κεφάλαιο 4 Ο επεξεργαστής 141

142 Παράδειγµα ξετυλίγµατος βρόχου ALU/branch Load/store Κύκλος Loop: addi $s1, $s1, 16 lw $t0, 0($s1) 1 nop lw $t1, 12($s1) 2 addu $t0, $t0, $s2 lw $t2, 8($s1) 3 addu $t1, $t1, $s2 lw $t3, 4($s1) 4 addu $t2, $t2, $s2 sw $t0, 16($s1) 5 addu $t3, $t4, $s2 sw $t1, 12($s1) 6 nop sw $t2, 8($s1) 7 bne $s1, $zero, Loop sw $t3, 4($s1) 8 IPC = 14/8 = 1.75 Πλησιέστερο στο 2, αλλά µε κόστος σε καταχωρητές και µέγεθος κώδικα Κεφάλαιο 4 Ο επεξεργαστής 142

143 υναµική πολλαπλή εκκίνηση Υπερβαθµωτοί ( superscalar ) επεξεργαστές Η CPU αποφασίζει αν θα ξεκινήσουν 0, 1, 2, εντολές σε κάθε κύκλο Αποφυγή κινδύνων δοµής και δεδοµένων Αποφεύγει την ανάγκη για χρονοπρογραµµατισµό από το µεταγλωττιστή Παρόλο που αυτός µπορεί ακόµη να βοηθήσει Η CPU εγγυάται τη σηµασιολογία του κώδικα Κεφάλαιο 4 Ο επεξεργαστής 143

144 Χρονοπρογ/σµός δυναµικής Η CPU µπορεί να εκτελεί εντολές εκτός σειράς (out of order - OoO) για αποφυγή καθυστερήσεων Αλλά η δέσµευση (commit) του αποτελέσµατος σε καταχωρητές γίνεται σε σειρά (in order) Παράδειγµα lw $t0, 20($s2) addu $t1, $t0, $t2 sub $s4, $s4, $t3 slti $t5, $s4, 20 Μπορεί να ξεκινήσει η sub ενώ η addu περιµένει τη lw Επειδή δεν εξαρτάται από τη lw Κεφάλαιο 4 Ο επεξεργαστής 144

145 CPU µε δυναµικό χρον/σµό ιατηρεί τις εξαρτήσεις Κρατάει τους τελεστέους σε εκκρεµότητα Προσωρινή µνήµη αναδιάταξης (Reorder Buffer ROB) για εγγραφές σε καταχωρητές Μπορεί να παρέχει τελεστέους για εντολές που ξεκίνησαν Τα αποτελέσµατα στέλνονται και σε οποιονδήποτε σταθµό κράτησης (reservation station) τα περιµένει Κεφάλαιο 4 Ο επεξεργαστής 145

146 Μετονοµασία καταχωρητών Οι σταθµοί κράτησης (reservation stations RS) και η προσωρινή µνήµη αναδιάταξης (reorder buffer ROB) στην πράξη παρέχουν µετονοµασία καταχωρητών Κατά την εκκίνηση εντολής σε σταθµό κράτησης Αν ο τελεστέος είναι διαθέσιµος στο αρχείο καταχωρητών ή την προσωρινή µνήµη αναδιάταξης Αντιγράφεται στο σταθµό κράτησης ε χρειάζεται άλλο στον καταχωρητή, και µπορεί να αντικατασταθεί Αν ο τελεστέος δεν είναι ακόµα διαθέσιµος Θα παρασχεθεί στο σταθµό κράτησης από µια λειτουργική µονάδα Μπορεί να µη χρειαστεί ενηµέρωση καταχωρητή Κεφάλαιο 4 Ο επεξεργαστής 146

147 Εικασία (speculation) Πρόβλεψη διακλάδωσης και συνέχιση της εκκίνησης ε γίνεται δέσµευση (commit) µέχρι να καθοριστεί το αποτέλεσµα της διακλάδωσης Εικασία φόρτωσης (load speculation) Αποφυγή της καθυστέρησης της φόρτωσης και της αστοχίας κρυφής µνήµης (cache miss) Πρόβλεψη της πραγµατικής διεύθυνσης Πρόβλεψη της τιµής φόρτωσης Φόρτωση πριν την ολοκλήρωση εκκρεµουσών αποθηκεύσεων Παράκαµψη/προώθηση τιµών αποθήκευσης προς τη µονάδα φόρτωσης ε γίνεται δέσµευση (commit) της φόρτωσης µέχρι να ξεκαθαριστεί η εικασία Κεφάλαιο 4 Ο επεξεργαστής 147

148 Γιατί δυναµικός χρονοπ/σµός; Γιατί να µην αφήσουµε απλώς το µεταγλωττιστή να χρονοπρογραµµατίσει τον κώδικα; ιότι, δεν είναι όλες οι καθυστερήσεις προβλέψιµες π.χ., αστοχίες κρυφής µνήµης (cache misses) εν µπορεί να γίνει πάντα χρονοπρ/σµός γύρω από διακλαδώσεις Το αποτέλεσµα της διακλάδωσης καθορίζεται δυναµικά ιαφορετικές υλοποιήσεις µιας αρχιτεκτονικής έχουν διαφορετικούς λανθάνοντες χρόνους και κινδύνους Κεφάλαιο 4 Ο επεξεργαστής 148

149 ουλεύει η πολλαπλή εκκίνηση; ΓΕΝΙΚΗ εικόνα Ναι, αλλά όχι όσο θα θέλαµε Τα προγράµµατα έχουν πραγµατικές εξαρτήσεις που περιορίζουν το ILP Μερικές εξαρτήσεις είναι δύσκολο να εξαλειφθούν π.χ., ψευδωνυµία δείκτη (pointer aliasing) Κάποια παραλληλία είναι δύσκολο να εµφανιστεί Περιορισµένο µέγεθος παραθύρου κατά την εκκίνηση εντολών Καθυστερήσεις µνήµης και περιορισµένο εύρος ζώνης ύσκολο να διατηρηθούν γεµάτες οι διοχετεύσεις Η εικασία µπορεί να βοηθήσει αν γίνει καλά Κεφάλαιο 4 Ο επεξεργαστής 149

150 Αποδοτικότητα ισχύος Η πολυπλοκότητα του δυναµικού χρονοπρογραµµατισµού και της εικασίας απαιτεί ηλεκτρική ισχύ Οι πολλοί απλούστεροι πυρήνες µπορεί να είναι καλύτεροι Μικροεπεξεργαστής Έτος Ρυθµός ρολογιού Στάδια διοχέτευσης Πλάτος εκκίνησης Εκτός-σειράς/ Εικασία Πυρήνες i MHz 5 1 No 1 5W Pentium MHz 5 2 No 1 10W Pentium Pro MHz 10 3 Yes 1 29W P4 Willamette MHz 22 3 Yes 1 75W Ισχύς P4 Prescott MHz 31 3 Yes 1 103W Core MHz 14 4 Yes 2 75W UltraSparc III MHz 14 4 No 1 90W UltraSparc T MHz 6 1 No 8 70W Κεφάλαιο 4 Ο επεξεργαστής 150

151 Μικροαρχιτεκτονική του Opteron X4 72 φυσικοί καταχωρητές Κεφάλαιο 4 Ο επεξεργαστής Πραγµατικότητα: ιοχέτευση AMD Opteron X4 (Barcelona)

152 ιοχέτευση του Opteron X4 Για ακέραιες λειτουργίες Για κινητή υποδιαστολή είναι 5 στάδια µεγαλύτερη Μέχρι 106 λειτουργίες RISC σε εξέλιξη Σηµεία συµφόρησης Πολύπλοκες εντολές µε µεγάλες εξαρτήσεις Λάθος προβλέψεις διακλάδωσης Καθυστερήσεις προσπέλασης µνήµης Κεφάλαιο 4 Ο επεξεργαστής 152

153 Πλάνες Η διοχέτευση είναι εύκολη (!) Η βασική ιδέα είναι εύκολη Ο διάβολος κρύβεται στις λεπτοµέρειες π.χ., ανίχνευση κινδύνων δεδοµένων Η διοχέτευση είναι ανεξάρτητη από την τεχνολογία Τότε γιατί δεν κάναµε πάντα διοχέτευση; Τα περισσότερα τρανζίστορ κάνουν εφικτές τις πιο προηγµένες τεχνικές Η σχεδίαση αρχιτεκτονικών συνόλου εντολών που σχετίζεται µε τη διοχέτευση πρέπει να λαµβάνει υπόψη της τις τεχνολογικές τάσεις π.χ., εντολές µε κατηγορήµατα Κεφάλαιο 4 Ο επεξεργαστής Πλάνες και παγίδες

154 Παγίδες Η φτωχή σχεδίαση της αρχιτεκτονικής συνόλου εντολών µπορεί να κάνει δυσκολότερη τη διοχέτευση π.χ., πολύπλοκα σύνολα εντολών (VAX, IA-32) Σηµαντική επιβάρυνση για να δουλέψει η διοχέτευση Προσέγγιση του IA-32 µε µικρολειτουργίες (micro-ops) π.χ., πολύπλοκοι τρόποι διευθυνσιοδότησης Παρενέργειες ενηµέρωσης καταχωρητών, εµµεσότητα µνήµης π.χ., καθυστερηµένες διακλαδώσεις Οι προηγµένες διοχετεύσεις έχουν µεγάλες υποδοχές καθυστέρησης Κεφάλαιο 4 Ο επεξεργαστής 154

155 Συµπερασµατικές παρατηρήσεις Η αρχιτεκτονική συνόλου εντολών επηρεάζει τη σχεδίαση της διαδροµής δεδοµένων και της µονάδας ελέγχου Η διαδροµή δεδοµένων και η µονάδα ελέγχου επηρεάζουν τη σχεδίαση της αρχιτεκτονικής συνόλου εντολών Η διοχέτευση βελτιώνει τη διεκπεραιωτική ικανότητα εντολών µε τη χρήση παραλληλίας Περισσότερες εντολές ολοκληρώνονται ανά δευτερόλεπτο Ο λανθάνων χρόνος κάθε εντολής δε µειώνεται Κίνδυνοι: δοµής, δεδοµένων, ελέγχου Πολλαπλή εκκίνηση και δυναµικός χρονοπρογραµµατισµός (παραλληλία επιπέδου εντολής ILP) Οι εξαρτήσεις περιορίζουν την επιτεύξιµη παραλληλία Η πολυπλοκότητα οδηγεί στο τείχος της ισχύος (power wall) 4.14 Συµπερασµατικές παρατηρήσεις Κεφάλαιο 4 Ο επεξεργαστής 155

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

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση Αρης Ευθυμίου Απόδοση απλής υλοποίησης Υλοποίηση ενός κύκλου είναι πολύ αργή κάθε κύκλος είναι τόσο μεγάλος όσο χρειάζεται

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

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 κάθε «φάση»

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

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

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

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

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

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

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

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

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

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

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ Η Κεντρική Μονάδα Επεξεργασίας (Central Processing Unit -CPU) ή απλούστερα επεξεργαστής αποτελεί το μέρος του υλικού που εκτελεί τις εντολές ενός προγράμματος υπολογιστή

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

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

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

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

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly Αρης Ευθυμίου Το σημερινό μάθημα! Σύνταξη εντολών! Θέματα σχετικά με τη προσπέλαση, οργάνωση μνήμης διευθύνση για κάθε byte διευθύνσεις λέξεων

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

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή Εισαγωγή Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ Σκοπός του εργαστηρίου είναι να γνωρίσουµε την εσωτερική δοµή και αρχιτεκτονική της κεντρικής µονάδας επεξεργασίας, να κατανοήσουµε τον τρόπο µε τον οποίο λειτουργεί

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

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

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

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

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

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

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

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

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

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

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων 2.1 Αρχιτεκτονική Υπολογιστών 2.1 Αρχιτεκτονική Υπολογιστών 2.2 Γλώσσα Μηχανής 2.3 Εκτέλεση προγράµµατος 2.4 Αριθµητικές και λογικές εντολές 2.5 Επικοινωνία µε άλλες συσκευές

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

Ενσωµατωµένα Υπολογιστικά Συστήµατα (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

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

-Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

-Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Οργάνωση Υπολογιστών 5 συστατικά στοιχεία -Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!) Συσκευές γρήγορες π.χ. κάρτες γραφικών,

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

Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ

Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Εισαγωγή Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ Σκοπός του εργαστηρίου είναι να κατανοήσουµε τους τρόπους προσπέλασης της µνήµης (µέθοδοι διευθυνσιοδότησης) σε ένα υπολογιστικό σύστηµα. Η Μνήµη 1 Ψηφιακή Λογική 4

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

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Αριθμός bit δίαυλου δεδομένων (Data Bus) Αριθμός bit δίαυλου διευθύνσεων (Address Bus) Μέγιστη συχνότητα λειτουργίας (Clock Frequency) Τύποι εντολών Αριθμητική

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

Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης

Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 14 Εισαγωγή στην Ιεραρχία Μνήμης Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 H Μικρο-αρχιτεκτονική μας 4 1 0 PCSrc IF/ID Control ID/EX

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

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

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

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

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

Οργάνωση Υπολογιστών (Ι)

Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

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

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

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2 7ο μάθημα: Κρυφές μνήμες (cache) - εισαγωγή Αρης Ευθυμίου Πηγές διαφανειών: συνοδευτικές διαφάνειες αγγλικης εκδοσης του βιβλιου Σύστημα μνήμης! Η μνήμη είναι σημαντικό

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Κεφάλαιο 3

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

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

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

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

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Εξαιρέσεις και Διακοπές (Exceptions and Interrupts)

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Εξαιρέσεις και Διακοπές (Exceptions and Interrupts) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 13 Εξαιρέσεις και Διακοπές (Exceptions and Interrupts) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση και Σχεδίαση Υπoλογιστών

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

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

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

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

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής) ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α Γενικού Λυκείου (Μάθημα Επιλογής) Σύγχρονα Υπολογιστικά Συστήματα τους υπερυπολογιστές (supercomputers) που χρησιμοποιούν ερευνητικά εργαστήρια τα μεγάλα συστήματα (mainframes)

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

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) Επικάλυψη εντολών στοχεύοντας στην παράλληλη εκτέλεσή

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

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07 Ενότητα 4 Εισαγωγή στην Πληροφορική Κεφάλαιο 4Α: Αναπαράσταση πληροφορίας Κεφάλαιο 4Β: Επεξεργαστές που χρησιµοποιούνται σε PCs Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 201 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

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

(Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να

(Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να Κεεφάάλλααι ιοο:: 3Β ο Τίττλλοοςς Κεεφααλλααί ίοουυ: : Αρχιτεκτονική Ηλ/κου Τµήµατος των Υπολ. Συστηµάτων (Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να αναφέρετε τις τιµές των

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

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

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

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής

Κεφάλαιο 4 ο. Ο Προσωπικός Υπολογιστής Κεφάλαιο 4 ο Ο Προσωπικός Υπολογιστής Μάθημα 4.3 Ο Επεξεργαστής - Εισαγωγή - Συχνότητα λειτουργίας - Εύρος διαδρόμου δεδομένων - Εύρος διαδρόμου διευθύνσεων - Εύρος καταχωρητών Όταν ολοκληρώσεις το μάθημα

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

ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή

ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή ΠΛΕ- 027 Μικροεπεξεργαστές 9ο μάθημα: Αρχιτεκτονική συστήματος μνήμης: Κρυφές μνήμες εισαγωγή Αρης Ευθυμίου Σύστημα μνήμης Η μνήμη είναι σημαντικό κομμάτι ενός υπολογιστή Επηρεάζει κόστος, ταχύτητα, κατανάλωση

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

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

ΚΕΦΑΛΑΙΟ 2: Χειρισμός Δεδομένων

ΚΕΦΑΛΑΙΟ 2: Χειρισμός Δεδομένων ΚΕΦΑΛΑΙΟ 2: Χειρισμός Δεδομένων 2.1 Αρχιτεκτονική Υπολογιστών 2.2 Γλώσσα Μηχανής 2.3 Εκτέλεση προγράμματος 2.4 Αριθμητικές και λογικές εντολές 2.5 Επικοινωνία με άλλες συσκευές 2.6 Άλλες αρχιτεκτονικές

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

Έχοντας κατανοήσει την ύλη του 1ου μαθήματος ( Εισαγωγή στην Αρχιτεκτονική Η/Υ ) θα πρέπει να μπορείτε να απαντήσετε στις παρακάτω ερωτήσεις:

Έχοντας κατανοήσει την ύλη του 1ου μαθήματος ( Εισαγωγή στην Αρχιτεκτονική Η/Υ ) θα πρέπει να μπορείτε να απαντήσετε στις παρακάτω ερωτήσεις: Ερωτήσεις αυτοαξιολόγησης 1 ου μαθήματος Έχοντας κατανοήσει την ύλη του 1ου μαθήματος ( Εισαγωγή στην Αρχιτεκτονική Η/Υ ) θα πρέπει να μπορείτε να απαντήσετε στις παρακάτω ερωτήσεις: 1. Ποια η σχέση της

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

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

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Αρχιτεκτονική υπολογιστών Ενότητα 12 : Δομή και Λειτουργία της CPU 2/2 Φώτης Βαρζιώτης 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Τμήμα Μηχανικών Πληροφορικής

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

Αρχιτεκτονική Υπολογιστών II 16-2-2012. Ενδεικτικές απαντήσεις στα θέματα των εξετάσεων

Αρχιτεκτονική Υπολογιστών II 16-2-2012. Ενδεικτικές απαντήσεις στα θέματα των εξετάσεων Αρχιτεκτονική Υπολογιστών II 6 --0 Ενδεικτικές απαντήσεις στα θέματα των εξετάσεων Θέμα. Τι γνωρίζετε για την τοπικότητα των αναφορών και ποιών μονάδων του υπολογιστή ή τεχνικών η απόδοση εξαρτάται από

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

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

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

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

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή Κεφάλαιο 3 Το υλικό του υπολογιστή Εισαγωγή Τµήµατα του Η/Υ καιοργάνωση Μονάδα Κεντρικής Μνήµης Κεντρική Μονάδα Επεξεργασίας (CPU) Μονάδα Εισόδου Εξόδου ίαυλοι Επικοινωνίας Εναλλακτικές αρχιτεκτονικές

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

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Αρχιτεκτονική Eckert-von Neumann εισόδου μεταφορά δεδομένων από έξω προς τον Η/Υ εξόδου μεταφορά δεδομένων από τον Η/Υ προς τα έξω ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Κύκλος Μηχανής κεντρικός έλεγχος/πράξεις

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

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

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

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

Χρονισμός και Απόδοση Υπολογιστικών Συστημάτων

Χρονισμός και Απόδοση Υπολογιστικών Συστημάτων ΗΥ 232 Οργάνωση και στον Σχεδίαση Η/Y Διάλεξη 7 Χρονισμός και Απόδοση Υπολογιστικών Συστημάτων Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Τι σημαίνει απόδοση; Αεροσκάφος NYC to Paris

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

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑΤΩΝ ΕΞΕΤΑΣΕΩΝ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεµατική Ενότητα ΠΛΗ 2: Ψηφιακά Συστήµατα Ακαδηµαϊκό Έτος 24 25 Ηµεροµηνία Εξέτασης 29.6.25 Χρόνος Εξέτασης

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

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεµατική Ενότητα ΠΛΗ 21: Ψηφιακά Συστήµατα Ακαδηµαϊκό Έτος 2009 2010 Γραπτή Εργασία #3 Παράδοση: 28 Μαρτίου 2010 Άσκηση 1 (15 µονάδες) Ένας επεξεργαστής υποστηρίζει τόσο

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

8.1 Θεωρητική εισαγωγή

8.1 Θεωρητική εισαγωγή ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 8 ΣΤΟΙΧΕΙΑ ΜΝΗΜΗΣ ΚΑΤΑΧΩΡΗΤΕΣ Σκοπός: Η µελέτη της λειτουργίας των καταχωρητών. Θα υλοποιηθεί ένας απλός στατικός καταχωρητής 4-bit µε Flip-Flop τύπου D και θα µελετηθεί

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

ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων. Βιβλιογραφία Ενότητας

ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων. Βιβλιογραφία Ενότητας ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων Βελτιστοποίηση κώδικα σε επεξεργαστές ΨΕΣ Τµήµα Επιστήµη και Τεχνολογίας Τηλεπικοινωνιών Πανεπιστήµιο Πελοποννήσου Βιβλιογραφία Ενότητας Kehtarnavaz [2005]: Chapter

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

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

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

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

Εισαγωγή στην επιστήµη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Εισαγωγή στην επιστήµη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή στην επιστήµη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή Θα δούµε την οργάνωση ενός υπολογιστή Στον επόµενο µάθηµα θα δούµε πως συνδέονται πολλοί Η/Υ για να σχηµατίσουν

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

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική

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

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86 ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86 Αρης Ευθυμίου Το σημερινό μάθημα! Λυση του lab02! Αρχιτεκτονική ARM σε τι μοιάζει και σε τι διαφέρει από τον MIPS! Αρχιτεκτονική x86 μια γρήγορη ματιά στη

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

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ.

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ. ΤΕΙ ΚΡΗΤΗΣ / ΠΑΡΑΡΤΗΜΑ ΧΑΝΙΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΗΣ Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ mode mode(0) ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εµµανουήλ Καπαρού Επιβλέπων : ρ Μηχ Νικόλαος

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

Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy)

Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) Κεφάλαιο 7 Ιεραρχία Μνήμης (Memory Hierarchy) 1 Συστήματα Μνήμης Η οργάνωση του συστήματος μνήμης επηρεάζει τη λειτουργία και απόδοση ενός μικροεπεξεργαστή: Διαχείριση μνήμης και περιφερειακών (Ι/Ο) απότολειτουργικόσύστημα

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

Εντολές γλώσσας μηχανής

Εντολές γλώσσας μηχανής Εντολές γλώσσας μηχανής Στον υπολογιστή MIPS η εντολή πρόσθεσε τα περιεχόμενα των καταχωρητών 17 και 20 και τοποθέτησε το αποτέλεσμα στον καταχωρητή 9 έχει την μορφή: 00000010001101000100100000100000 Πεδία

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

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

Αρχιτεκτονική Υπολογιστών Ι Αρχιτεκτονική Υπολογιστών Ι Επιλεγμένες εντολές και συναρτήσεις assembly Από το βιβλίο Αρχιτεκτονική Υπολογιστών & Προγραμματισμός Assembly (Συγγραφέας / Εκδότης : Παναγιώτης Παπάζογλου) Δρ. Παναγιώτης

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

ΠΕΡΙΕΧΟΜΕΝΑ. 1.1. Υλικό και Λογισμικό.. 1 1.2 Αρχιτεκτονική Υπολογιστών.. 3 1.3 Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6

ΠΕΡΙΕΧΟΜΕΝΑ. 1.1. Υλικό και Λογισμικό.. 1 1.2 Αρχιτεκτονική Υπολογιστών.. 3 1.3 Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6 ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή στην Δομή, Οργάνωση, Λειτουργία και Αξιολόγηση Υπολογιστών 1.1. Υλικό και Λογισμικό.. 1 1.2 Αρχιτεκτονική Υπολογιστών.. 3 1.3 Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6 1.3.1 Δομή

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

7. Ροή ελέγχου 8. Μηχανισμοί εισόδου/εξόδου

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

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

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

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

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

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

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

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

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

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

Τ.Ε.Ι. ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΤΗΛΕΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΣΥΝΕΡΓΑΣΤΗΚΑΝ ΡΟΚΑ ΑΦΡΟΔΙΤΗ ΣΩΤΗΡΑΚΟΥ ΣΤΑΜΑΤΙΑ ΦΕΒΡΟΥΑΡΙΟΣ 2006 ΣΥΝΕΡΓΑΣΤΗΚΑΝ ΡΟΚΑ ΑΦΡΟΔΙΤΗ ΣΩΤΗΡΑΚΟΥ ΣΤΑΜΑΤΙΑ ΒΑΣΙΚΕΣ ΜΟΝΑΔΕΣ ΤΩΝ ΕΠΕΞΕΡΓΑΣΤΕΣ Μονάδες εκτέλεσης Αρχεία εγγραφών Έλεγχο λογικής ΜΝΗΜΗ ROM RAM ΣΥΣΤΗΜΑ ΕΙΣΟΔΟΥ-ΕΞΟΔΟΥ(I/O) ΕΠΙΤΡΕΠΕΙ ΣΤΟΝ ΕΠΕΞΕΡΓΑΣΤΗ ΚΑΙ

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

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

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

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

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

Πολυπύρηνοι επεξεργαστές Multicore processors

Πολυπύρηνοι επεξεργαστές Multicore processors Πολυπύρηνοι επεξεργαστές Multicore processors 1 Μετάβαση στους πολυπύρηνους(1) Απόδοση των µονοεπεξεργαστών 25% ετήσια βελτίωση της απόδοσης από το 1978 έως το 1986 Κυρίως από την εξέλιξη της τεχνολογίας

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

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών 1 Οργάνωση υπολογιστών ΚΜΕ Κύρια Μνήμη Υποσύστημα εισόδου/εξόδου 2 Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) R1 R2 ΑΛΜ

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

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Προηγμένα Συστήματα Πληροφορικής»

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Προηγμένα Συστήματα Πληροφορικής» Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Προηγμένα Συστήματα Πληροφορικής» Μεταπτυχιακή Διατριβή Τίτλος Διατριβής Ονοματεπώνυμο Φοιτητή Αριθμός Μητρώου Κατεύθυνση Επιβλέπων

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

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

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

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

Ενότητα 2: Η κρυφή µνήµη και η λειτουργία της

Ενότητα 2: Η κρυφή µνήµη και η λειτουργία της Ενότητα 2: Η κρυφή µνήµη και η λειτουργία της Στην ενότητα αυτή θα αναφερθούµε εκτενέστερα στη λειτουργία και την οργάνωση της κρυφής µνήµης. Θα προσδιορίσουµε τις βασικές λειτουργίες που σχετίζονται µε

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

Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 3

Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 3 Τεχνολογία Υπολογιστικών Συστηµάτων & Λειτουργικά Συστήµατα Κεφάλαιο 3 Κεφάλαιο 3 Οργάνωση και Λειτουργία Επεξεργαστών Σκοπός του κεφαλαίου αυτού είναι να περιγράψει την εσωτερική οργάνωση των υπολογιστών,

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

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Μάθημα 4.5 Η Μνήμη - Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις τα κυριότερα είδη μνήμης

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

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI)

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 015-16 Οργάνωση Υπολογιστών (ΙI) (κύρια και ) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα τυπικό υπολογιστικό

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

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1 ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης Φόρτωσης Καταχωρητές

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

Κεφάλαιο 4ο: Εντολές επιλογής

Κεφάλαιο 4ο: Εντολές επιλογής Χρήστος Τσαγγάρης ΕΕ ΙΠ Τµήµατος Μαθηµατικών, Πανεπιστηµίου Αιγαίου Κεφάλαιο 4ο: Εντολές επιλογής Μέχρι τώρα παρατηρήσαµε ότι τα προβλήµατα που αντιµετωπίσαµε είχαν σειριακή κίνηση, δηλαδή η µία εντολή

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

Πράξεις με δυαδικούς αριθμούς

Πράξεις με δυαδικούς αριθμούς Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 25-6 Πράξεις με δυαδικούς αριθμούς (λογικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Εκτέλεση πράξεων

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

ΑΣΚΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ ΓΙΑ ΤΗ ΘΕΩΡΙΑ

ΑΣΚΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ ΓΙΑ ΤΗ ΘΕΩΡΙΑ ΑΣΚΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ ΓΙΑ ΤΗ ΘΕΩΡΙΑ Άσκηση 1 Ένας επεξεργαστής (ΚΜΕ) υποστηρίζει 371 εντολές. Πόσα bit θα πρέπει να είναι ο καταχωρητής εντολής (ελάχιστη τιμή); (α) 4 bit (β) 16 bit (γ) 1 bit (δ)

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

Εισαγωγή στην επιστήμη των υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 3ο Αναπαράσταση Αριθμών www.di.uoa.gr/~organosi 1 Δεκαδικό και Δυαδικό Δεκαδικό σύστημα 2 3 Δεκαδικό και Δυαδικό Δυαδικό Σύστημα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2008

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2008 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2008 Τεχνολογία Ι Θεωρητικής Κατεύθυνσης Τεχνικών Σχολών Μάθημα : Μικροϋπολογιστές

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

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 2 Οργάνωση μνήμης Καταχωρητές του MIPS Εντολές του MIPS 1

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

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

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual MILE Simulator Version 1.0 User's Manual Νοέμβριος, 2011 Περιεχόμενα 1. Εισαγωγή στον προσομοιωτή...2 1.1 Εγκατάσταση...2 1.2 Βοήθεια Διευκρινήσεις...2 2. Ξεκινώντας με τον προσομοιωτή...3 2.1 Το memory

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

3. Γλώσσα μηχανής IJVM 4. Σχεδιαστικές επιλογές 5. Κρυφή μνήμη

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

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

a = 10; a = k; int a,b,c; a = b = c = 10;

a = 10; a = k; int a,b,c; a = b = c = 10; C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 4 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

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

Aνάπτυξη και προσομοίωση της επικαλυπτόμενης αρχιτεκτονικής Mips για εκπαιδευτικούς σκοπούς

Aνάπτυξη και προσομοίωση της επικαλυπτόμενης αρχιτεκτονικής Mips για εκπαιδευτικούς σκοπούς ΑΤΕΙ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Τμήμα Μηχανικών Πληροφορικής ΤΕ Aνάπτυξη και προσομοίωση της επικαλυπτόμενης αρχιτεκτονικής Mips για εκπαιδευτικούς σκοπούς ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΧΙΩΤΟΓΛΟΥ ΚΩΝ/ΝΟΣ

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

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit! Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 25-6 Πράξεις με δυαδικούς αριθμούς (αριθμητικές ) http://di.ionio.gr/~mistral/tp/csintro/ Αριθμοί Πράξεις με δυαδικούς αριθμούς

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

Ερωτήσεις θεωρίας MY. Μέρος Α. Υλικό.

Ερωτήσεις θεωρίας MY. Μέρος Α. Υλικό. Ερωτήσεις θεωρίας MY Μέρος Α. Υλικό. 1. Η μνήμη ROM είναι συνδυαστικό ή ακολουθιακό κύκλωμα; 2. α) Να σχεδιαστεί μία μνήμη ROM που να δίνει στις εξόδους της το πλήθος των ημερών του μήνα, ο αριθμός του

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

Περιεχόµενα. Πρόλογος 11. 0 Εισαγωγή 21

Περιεχόµενα. Πρόλογος 11. 0 Εισαγωγή 21 Περιεχόµενα Πρόλογος 11 Σκοπός αυτού του βιβλίου 11 Σε ποιους απευθύνεται αυτό το βιβλίο 12 Βασικά χαρακτηριστικά του βιβλίου 12 Κάλυψη συστηµάτων CAD 14 Εργαστηριακή υποστήριξη 14 Συνοπτική παρουσίαση

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

Άσκηση 1η. Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ,

Άσκηση 1η. Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ, Ασκήσεις Caches Άσκηση 1η Θεωρήστε ένα σύστημα μνήμης με μία cache: 4 way set associative μεγέθους 256ΚΒ, με cache line 8 λέξεων. Χαρακτηριστικά συστήματος μνήμης: μέγεθος της λέξης είναι 32 bits. 1 byte

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

Εκτέλεση πράξεων. Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική. Πράξεις με δυαδικούς αριθμούς. Πράξεις με δυαδικούς αριθμούς

Εκτέλεση πράξεων. Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική. Πράξεις με δυαδικούς αριθμούς. Πράξεις με δυαδικούς αριθμούς Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 24-5 Πράξεις με δυαδικούς αριθμούς (λογικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης ; Ποιες κατηγορίες

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

7.1 Θεωρητική εισαγωγή

7.1 Θεωρητική εισαγωγή ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 7 ΑΚΟΛΟΥΘΙΑΚΑ ΚΥΚΛΩΜΑΤΑ ΜΑΝ ΑΛΩΤΕΣ FLIP FLOP Σκοπός: Η κατανόηση της λειτουργίας των βασικών ακολουθιακών κυκλωµάτων. Θα µελετηθούν συγκεκριµένα: ο µανδαλωτής (latch)

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

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 ΑριθμητικέςΠράξειςσεΑκέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση Ο πολλαπλασιασμός

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

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή

Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή Μνήμη Με τον όρο μνήμη αναφερόμαστε στα μέσα που χρησιμοποιούνται για την αποθήκευση προγραμμάτων και δεδομένων σε έναν υπολογιστή ή άλλη ψηφιακή ηλεκτρονική συσκευή, σε προσωρινή ή μόνιμη βάση. Τα σύγχρονα

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

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση Αρης Ευθυμίου Ανακοινώσεις! Βαθμοί: 1ης εργαστηριακής άσκησης Βαθμός 0 χωρίς σχόλια δεν έχω πάρει την άσκηση! ελέγξτε μήπως δεν το στέλνετε στο σωστό

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

Οργάνωση Η/Υ. Ο Επεξεργαστής TRN. Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Α. Χατζηγεωργίου-Η. Σακελλαρίου

Οργάνωση Η/Υ. Ο Επεξεργαστής TRN. Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Α. Χατζηγεωργίου-Η. Σακελλαρίου Οργάνωση Η/Υ Ο Επεξεργαστής TRN Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας Α. Χατζηγεωργίου-Η. Σακελλαρίου ΚMΕ Κυριότεροι Καταχωρητές της ΚΜΕ του υπολογιστή TRN IR (20 bits) X (20 bits) I

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

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 ΑΠΑΝΤΗΣΕΙΣ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

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

ΤΠ 2108 Αρχιτεκτονική Υπολογιστών (Εργαστήριο) ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΚΡΗΤΗΣ. Σειρά Ασκήσεων 1

ΤΠ 2108 Αρχιτεκτονική Υπολογιστών (Εργαστήριο) ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΚΡΗΤΗΣ. Σειρά Ασκήσεων 1 Σειρά Ασκήσεων 1 Εισαγωγή, Ο επεξεργαστής και η γλώσσα του. Σε αυτό το εργαστήριο θα κάνουµε µια εισαγωγή σε έναν απλό επεξεργαστή (RISC), το instruction set του οποίου είναι πολύ απλό, αλλά περιέχει όλα

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

Δυαδικό Σύστημα Αρίθμησης

Δυαδικό Σύστημα Αρίθμησης Δυαδικό Σύστημα Αρίθμησης Το δυαδικό σύστημα αρίθμησης χρησιμοποιεί δύο ψηφία. Το 0 και το 1. Τα ψηφία ενός αριθμού στο δυαδικό σύστημα αρίθμησης αντιστοιχίζονται σε δυνάμεις του 2. Μονάδες, δυάδες, τετράδες,

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

"Σχεδίαση και Υλοποίηση Μονάδας Επεξεργασίας για Αριθμούς 8-bit με την Γλώσσα VHDL και το Λογισμικό Quartus II" ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

Σχεδίαση και Υλοποίηση Μονάδας Επεξεργασίας για Αριθμούς 8-bit με την Γλώσσα VHDL και το Λογισμικό Quartus II ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ "Σχεδίαση και Υλοποίηση Μονάδας Επεξεργασίας για Αριθμούς 8-bit με την Γλώσσα VHDL και το Λογισμικό

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

ΣΥΣΤΗΜΑΤΑ ΙΑΣΥΝ ΕΣΗΣ ΜΟΝΑ ΩΝ ( ιάδροµοι ή ίαυλοι)

ΣΥΣΤΗΜΑΤΑ ΙΑΣΥΝ ΕΣΗΣ ΜΟΝΑ ΩΝ ( ιάδροµοι ή ίαυλοι) Kεφάλαιο 3 Συστήµατα ιασύνδεσης Μονάδων 55 ΣΥΣΤΗΜΑΤΑ ΙΑΣΥΝ ΕΣΗΣ ΜΟΝΑ ΩΝ ( ιάδροµοι ή ίαυλοι) 3.1 Βασικές Αρχές...56 3.2 Ιεραρχία ιαύλων...57 3.3 οµή ιαύλου...60 3.4 ιαιτησία ιαύλου...64 3.5 Λειτουργία

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