Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ •Οργάνωση - χειριστές δεδομένων- μονάδα ελέγχου - μνήμες- δίαυλοι •Εκτέλεση εντολών: πεδία εντολής 1. «opcode field” προσδιορίζει.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ •Οργάνωση - χειριστές δεδομένων- μονάδα ελέγχου - μνήμες- δίαυλοι •Εκτέλεση εντολών: πεδία εντολής 1. «opcode field” προσδιορίζει."— Μεταγράφημα παρουσίασης:

1 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ •Οργάνωση - χειριστές δεδομένων- μονάδα ελέγχου - μνήμες- δίαυλοι •Εκτέλεση εντολών: πεδία εντολής 1. «opcode field” προσδιορίζει την λειτουργία που θα εκτελεστεί 2. «address field” παρέχει είτε τις διευθύνσεις για τη μνήμη είτε για την επιλογή των καταχωρητών του επεξεργαστή 3. «mode field” προσδιορίζει τον τρόπο με τον οποίο το address field χρησιμοποιείται •Κύκλος εκτέλεσης εντολής 1. Κλήση εντολής (fetch) 2. Αποκωδικοποίηση εντολής (decode) 3. Καθορισμός των χρησιμοποιούμενων ορισμάτων 4. Κλήση ορισμάτων (εάν είναι αναγκαίο) 5. Εκτέλεση λειτουργίας (execute) 6. Αποθήκευση αποτελεσμάτων 7. Επιστροφή στο βήμα 1 για κλήση επόμενης εντολής ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

2 ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗ ΟΡΙΣΜΑΤΩΝ •Τύποι διευθυνσιοδότησης - explicit address- υπάρχει πεδίο διεύθυνσης στην εντολή - implicit address- υπονοείται •Επίδραση αριθμού διευθύνσεων ορισμάτων στο πρόγραμμα π.χ. X=(A+B)(C+D) •Εντολές με τρεις διευθύνσεις ορισμάτων ADD T1, A, BM[T1]  M[A] + M[B] ADD T2, C, DM[T2]  M[C] + M[D] MUL X, T1,T2M[X]  M[T1] * M[T2] - Aντί Μ[Τ1], Μ[Τ2] μπορεί να έχουμε R1, R2. •Μικρά προγράμματα αλλά απαιτούν περισσότερα ψηφία στην κωδικοποίηση της εντολής ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

3 ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗ ΟΡΙΣΜΑΤΩΝ • Εντολές με δυο διευθύνσεις ορισμάτων MOV T1, AM[T1]  M[A] ADD T1, BM[T1]  M[T1] + M[B] MOV X, CM[X]  M[C] ADD X, DM[X]  M[X] + M[D] MUL X, T1M[X]  M[X] * M[T1] • Εντολές με μια διεύθυνση ορισμάτων - απαιτείται χρησιμοποίηση accumulator (implied address) LDAACC  M[A] ADDBACC  ACC + M[B] ST XM[X]  ACC LDCACC  M[C] ADD DACC  ACC + M[D] MUL XACC  ACC * M[X] STXM[X]  ACC ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

4 ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗ ΟΡΙΣΜΑΤΩΝ • Εντολές χωρίς διευθύνσεις ορισμάτων - αρχιτεκτονική στοίβας (LIFO stack) ADD => TOS  TOS + TOS-1 • Για μεταφορά δεδομένων: PUSH X => TOS  M[X] POP X => M[X]  TOS •Απαιτείται ο μεγαλύτερος αριθμός εντολών ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

5 ΑΡΧΙΤΕΚΤΟΝΙΚΕΣ ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗΣ • Υπάρχουν διάφοροι τύποι αρχιτεκτονικής υπολογιστών που καθορίζονται από τον τρόπο διευθυνσιοδότησης που χρησιμοποιείται στις εντολές τους 1. Memory-to-memory architecture - μεγάλος χρόνος εκτέλεσης, πολύπλοκη μονάδα ελέγχου, μεγάλη κατανάλωση ισχύος 2. Register-to-register (load/store) architecture - επιτρέπει μια διεύθυνση μνήμης και μόνο για load/store - οι εντολές επεξεργασίας δεδομένων χρησιμοποιούν ορίσματα καταχωρητών - πλέον χρησιμοποιούμενη αρχιτεκτονική 3. Register - memory architecture π.χ. ADD R1,AR1  R1 + M[A] - ευέλικτη αρχιτεκτονική 4. Single accumulator architecture - μη αποδοτική αρχιτεκτονική 5. Stack architecture - τα ορίσματα σε στοίβα - εντολές μεταφοράς δεδομένων μεταξύ μνήμης/στοίβας ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

6 ΤΥΠΟΙ ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗΣ • Ο τύπος διευθυνσιοδότησης μιας εντολής καθορίζει τον τρόπο επιλογής των ορισμάτων •Χρησιμοποιούνται διαφορετικοί τύποι διευθυνσιοδότησης: 1. Ευελιξία προγραμματισμού 2. Μείωση του αριθμού των ψηφίων στα πεδία διεύθυνσης της εντολής •Τύπος implied - δεν υπάρχει πεδίο διεύθυνσης - το όρισμα καθορίζεται από τον λειτουργικό κώδικα •Τύπος immediate - το ίδιο το όρισμα καθορίζεται στην εντολή - δεν υπάρχει πεδίο διεύθυνσης αλλά πεδίο ορίσματος - χρησιμοποιείται συνήθως για να δίνεται αρχική τιμή σε καταχωρητές ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

7 ΤΥΠΟΙ ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗΣ • Τύπος register-to-register - το πεδίο διεύθυνσης προσδιορίζει έναν καταχωρητή που περιέχει το όρισμα •Τύπος register indirect addressing - το πεδίο διεύθυνσης της εντολής προσδιορίζει έναν καταχωρητή που περιέχει τη διεύθυνση της μνήμης όπου είναι αποθηκευμένο το όρισμα - πλεονέκτημα η μείωση των απαιτούμενων ψηφίων στο πεδίο διεύθυνσης της εντολής •Τύπος direct addressing - το πεδίο διεύθυνσης της εντολής περιέχει τη διεύθυνση της μνήμης όπου είναι αποθηκευμένο το όρισμα •Τύπος indirect addressing - το πεδίο διεύθυνσης της εντολής προσδιορίζει τη διεύθυνσης μνήμης που περιέχει την ενεργεί διεύθυνση (effective address) μνήμης όπου είναι αποθηκευμένο το όρισμα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

8 ΤΥΠΟΙ ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗΣ • Τύπος relative addressing - η ενεργός διεύθυνση προάγεται ως εξής: Ενεργός διεύθυνση = περιεχόμενο πεδίου διεύθυνσης + περιεχόμενο PC - μικρότερο πεδίο διεύθυνσης •Τύπος indexed addressing - η ενεργός διεύθυνση προάγεται ως εξής: Ενεργός διεύθυνση = περιεχόμενο πεδίου διεύθυνσης + περιεχόμενο register - ο καταχωρητής δείκτη μπορεί να είναι κοινός καταχωρητής ή ειδικός καταχωρητής που να έχει και δυνατότητα αύξησης ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

9 ΠΑΡΑΔΕΙΓΜΑΤΑ ΤΥΠΩΝ ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗΣ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

10 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΟΜΑΔΑΣ ΕΝΤΟΛΩΝ • Υπάρχουν δυο βασικές κατηγορίες: 1. Complex Instruction Set Computers (CISCs) - παρέχουν εντολές για πολύπλοκες λειτουργίες 2. Reduced Instruction Set Computers (RISCs) - παρέχουν απλές εντολές αλλά μεγάλη ευελιξία που οδηγεί σε υψηλότερη ταχύτητα εκτέλεσης προγραμμάτων ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

11 CISC ΑΡΧΙΤΕΚΤΟΝΙΚΗ •Οι περισσότερες εντολές έχουν δυνατότητα προσπέλασης στη μνήμη •Μεγάλος αριθμός τύπων διευθυνσιοδότησης •Διαφορετικά μεγέθη κωδικοποίησης εντολών •Οι εντολές πραγματοποιούν απλές αλλά και πολύπλοκες λειτουργίες - πιο συμπαγή προγράμματα - λιγότερη απαίτηση για μνήμη - μικρότερος αριθμός καταχωρητών - χρησιμοποιείται συνήθως μικροπρογραμματιζόμενη μονάδα ελέγχου - πιθανή αύξηση απόδοσης λόγω μείωσης των προσπελάσεων στη μνήμη για κλήση εντολών ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

12 RISC ΑΡΧΙΤΕΚΤΟΝΙΚΗ •Οι προσπελάσεις στη μνήμη περιορίζονται σε load/store εντολές •Oι εντολές χειρισμού δεδομένων είναι τύπου register-to-register •Περιορισμένος αριθμός τύπων διευθυνσιοδότησης •Ίδιου μεγέθους κωδικοποίησης εντολές •Οι εντολές εκτελούν μόνο απλές λειτουργίες - υψηλός ρυθμός εκτέλεσης εντολών και προγραμμάτων - μεγάλο αριθμό καταχωρητών - η μονάδα ελέγχου είναι συνήθως hardwired - χρησιμοποίηση τεχνικής pipeline ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

13 ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΟΜΑΔΑΣ ΕΝΤΟΛΩΝ • Σε νεότερους υπολογιστές οι CISC αρχιτεκτονικές μετατρέπονται σε RISC-like αρχιτεκτονικές - χρήση pipeline - διατήρηση δυνατότητας προσπέλασης στη μνήμη και από εντολές χειρισμού δεδομένων •Γενικά, οι αρχιτεκτονικές επεξεργαστών κινούνται μεταξύ καθαρών CISC και RISC αρχιτεκτονικών •Βασικές στοιχειώδης λειτουργίες - Βασικοί τύποι εντολών 1. Εντολές μεταφοράς δεδομένων 2. Εντολές επεξεργασίας δεδομένων 3. Εντολές ελέγχου προγράμματος ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

14 ΕΝΤΟΛΕΣ ΜΕΤΑΦΟΡΑΣ ΔΕΔΟΜΕΝΩΝ • Μεταφέρουν δεδομένα μεταξύ μονάδων αποθήκευσης του υπολογιστή χωρίς μεταβολή του περιεχόμενού τους •Τυπικές εντολές μεταφοράς δεδομένω Όνομα Σύμβολο LoadLD StoreST MoveMOVE ExchangeXCH PushPUSH PopPOP InputIN OutputOUT ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

15 ΕΝΤΟΛΕΣ ΣΤΟΙΒΑΣ • Τοποθετούν (push) ή απάγουν (pop) δεδομένα μεταξύ μιας μνήμης στοίβας και των καταχωρητών ή της μνήμης - η PUSH τοποθετεί μια λέξη στην κορυφή της στοίβας - η POP μετακινεί μια λέξη από την κορυφή της στοίβας •O καταχωρητής που διατηρεί τη διεύθυνση της στοίβας καλείται stack pointer (SP) - δείχνει πάντα την κορυφή της στοίβας - οι PUSH, POP εντολές υλοποιούνται με μείωση ή αύξηση της τιμής του SP •Οργάνωση μνήμης στοίβας ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ R1 SP= A B C PUSH λειτουργία SP  SP - 1 M[SP]  R1 POP λειτουργία R1  M[SP] SP  SP + 1

16 ΤΡΟΠΟΙ ΔΙΕΥΘΥΝΣΙΟΔΟΤΗΣΗΣ I/O ΘΥΡΩΝ • Independent I/O system - οι διευθύνσεις των θυρών είναι ανεξάρτητες από αυτές της μνήμης - ο επεξεργαστής διαθέτει ανεξάρτητες εντολές για είσοδο (IN) και έξοδο (OUT) δεδομένων •Memory-mapped I/O - κάθε Ι/Ο θύρα αντιμετωπίζεται σαν μια θέση μνήμης - για απαλλαγή δεδομένων με Ι/Ο θύρες χρησιμοποιούνται οι κοινές load/store εντολές ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

17 ΕΝΤΟΛΕΣ ΧΕΙΡΙΣΜΟΥ ΔΕΔΟΜΕΝΩΝ • Πραγματοποιούν την επεξεργασία των δεδομένων 1. Αριθμητικές εντολές 2. Λογικές και χειρισμού ψηφίων εντολές 3. Εντολές ολίσθησης Αριθμητικές εντολές Όνομα Σύμβολο IncrementINC DecrementDEC AddADD SubtractSUB MultiplyMUL DivideDIV Add with CarryADDC Subtract with borrowSUBB Subtract reverseSUBR NegateNEG •Οι εντολές ADD, SUB, MUL, DIV μπορεί να είναι διαθέσιμες για διαφορετικούς τύπους δεδομένων που καθορίζεται στον κώδικα λειτουργίας (opcode) •Οι περισσότεροι επεξεργαστές παρέχουν ειδικές εντολές για αριθμητικές πράξεις διπλής ακριβείας ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

18 ΛΟΓΙΚΕΣ ΕΝΤΟΛΕΣ ΚΑΙ ΧΕΙΡΙΣΜΟΥ ΨΗΦΙΟΥ • Πραγματοποιούν δυαδικές λειτουργίες σε δεδομένα αποθηκευμένα σε καταχωρητές ή θέσεις μνήμης Τυπικές εντολές Όνομα Σύμβολο ClearCLR SetSET ComplementNOTANDOR Exclusive-ORXOR Clear carryCLRC Set carrySETC Complement carryCOMC ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

19 ΕΝΤΟΛΕΣ ΟΛΙΣΘΗΣΗΣ • Προκαλούν ολίσθηση των περιεχομένων ενός ή περισσότερων καταχωρητών Τυπικές εντολές Όνομα Σύμβολο Logical shift rightSHR Logical shift leftSHL Arithmetic shift rightSHRA Arithmetic shift leftSHLA Rotate rightROR Rotate leftROL Rotate right with carryRORC Rotate left with carryROLC ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

20 ΑΡΙΘΜΟΙ ΚΙΝΗΤΗΣ ΥΠΟΔΙΑΣΤΟΛΗΣ • Παράδειγμα: αναπαράσταση του σε floating point fractionexponent  F x10 E Δυαδικοί αριθμοί κινητής υποδιαστολής fractionexponent   ( ) 2 x2 +4 •Είναι κανονικοποιημένοι (normalized) όταν το MSB του κλασματικού μέρους είναι μη μηδενικό •Οι αριθμοί κινητής υποδιαστολής καλύπτουν μεγάλη περιοχή τιμών Παράδειγμα: Για δυαδικούς αριθμούς 48 ψηφίων - σε ακέραια αναπαράσταση πεδίο τιμών: ±( ) ~ ± με fraction 36 ψηφία και exponent 12: ±( )x2 +2^(11)-1= ±( )x ~ ± Στην περίπτωση όμως των FP αριθμών η ακρίβεια μειώνεται στα 35 ψηφία ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

21 ΑΡΙΘΜΟΙ ΚΙΝΗΤΗΣ ΥΠΟΔΙΑΣΤΟΛΗΣ Αριθμητικές λειτουργίες •Οι αριθμητικές πράξεις με αριθμούς κινητής υποδιαστολής είναι πολυπλοκότερες •Για την άθροιση/αφαίρεση απαιτείται οι exponent να είναι ίδιοι. Αυτό επιτυγχάνεται με ολίσθηση του fraction •π.χ x x x x x10 2 •Αν προκύψει ψηφίο υπερχείλισης μπορεί το αποτέλεσμα να διορθωθεί με μια δεξιά ολίσθηση στο fraction και αύξηση του exponent •Αφαίρεση: αν προκύψει μη κανονικοποιημένο αποτέλεσμα το κανονικοποιούμε με αριστερή ολίσθηση στο fraction και μείωση του exponent •Για τον πολλαπλασιασμό (διαίρεση) FP αριθμών πολλαπλασιάζουμε (διαιρούμε) τα fraction και προσθέτουμε (αφαιρούμε) τα exponent ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

22 ΑΡΙΘΜΟΙ ΚΙΝΗΤΗΣ ΥΠΟΔΙΑΣΤΟΛΗΣ Πολωμένος εκθέτης •Για το fraction χρησιμοποιείται συνήθως αναπαράσταση προσημασμένου μέτρου •Για τον exponent προτιμάται η αναπαράσταση πολωμένου εκθέτη ώστε να είναι πάντα θετικός •- ευκολότερη η σύγκριση μεγέθους αριθμών Τυποποιημένες μορφές FP αριθμών •Αριθμοί απλής (32bits) και διπλής (64 bits) ακριβείας •Μορφή ορίσματος FP αριθμού ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ 23 feS 81 - ο εκθέτης e είναι πολωμένος με το δυαδικό σημείο υποτίθεται να είναι ακριβώς στα αριστερά του MSB του f - θεωρείται ότι υπάρχει ένα ψηφίο «1» στα αριστερά του δυαδικού σημείου που καλείται significant - ο significant εισέρχεται απευθείας στο υλικό •Η τιμή ενός αριθμού δίνεται ως: (-1) S 2 e-127 x(1.f)

23 ΕΝΤΟΛΕΣ ΕΛΕΓΧΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ • Αλλάζουν την τιμή του PC προκαλώντας αλλαγή στη ροή του προγράμματος Τυπικές εντολές ελέγχου προγράμματος Όνομα Σύμβολο BranchBR JumpJMP Skip next instructionSKP Call procedureCALL Return from procedureRET Compare (by substraction)CMP Test (by adding)TEST •Οι εντολές αυτές μπορεί να εκτελούνται υπό συνθήκη ή όχι Branch condition MnemonicTest condition Branch if zero BZ Z=1 Branch if not zero BNZ Z=0 Branch if carry BC C=1 Branch if no carry BNC C=0 Branch if plus BNN N=0 Branch if overflow BV V=1 Branch if no overflow BNV V=0

24 ΕΝΤΟΛΕΣ ΕΛΕΓΧΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ • Η εντολή compare αφαιρεί δυο αριθμούς και ενημερώνει τα status bits - μπορούν να χρησιμοποιηθούν ειδικές εντολές για υπό συνθήκη έλεγχο ροής του προγράμματος μετά την compare - διαφορετική αντιμετώπιση προσημασμένων και μη αριθμών •Αντίστοιχες εντολές για μη-προσημασμένους αριθμούς Branch condition MnemonicConditionStatus bits Branch if higher BH A>B C+Z=0 Branch if higher or equal BHE A  B C=0 Branch if lower BL AB(N  V)+Z=0 Branch if grater or equal BGE A  B N  V=0 Branch if less BL A

25 ΕΝΤΟΛΕΣ ΔΙΑΔΙΚΑΣΙΩΝ CALL ΚΑΙ RETURN ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ • Μια διαδικασία (procedure) είναι μια αυτοδύναμη ακολουθία εντολών η οποία εκτελεί ένα συγκεκριμένο έργο - μπορεί να κληθεί πολλές φορές μέσα σε ένα πρόγραμμα •Κλήση διαδικασίας γίνεται με εντολή CALL - αποθηκεύει την τιμή του PC (return address) σε προσωρινή διεύθυνση - φορτώνει στον PC τη διεύθυνση της πρώτης εντολής της διαδικασίας •Η τελευταία εντολή μιας διαδικασίας είναι η RETURN - φορτώνει στον PC την return address •Εκτέλεση εντολής CALL χρησιμοποιώντας στοίβα SP  SP-1Μείωση δείκτη στοίβας Μ[SP]  PCΑποθήκευση return address στη στοίβα PC effective address Μεταφορά ελέγχου στη διαδικασία •Εκτέλεση εντολής RETURN χρησιμοποιώντας στοίβα PC  M[SP]Μεταφορά της return address στο PC SP  SP+1Αύξηση του δείκτη στοίβας

26 ΔΙΑΚΟΠΗ ΠΡΟΓΡΑΜΜΑΤΟΣ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ • Ένα πρόγραμμα εξυπηρέτησης διακοπών μεταφέρει τον έλεγχο από ένα πρόγραμμα που τρέχει σε ένα άλλο σαν αποτέλεσμα μιας εξωτερικής ή εσωτερικής απαίτησης - μετά την εκτέλεση του προγράμματος εξυπηρέτησης της διακοπής ο έλεγχος επιστρέφει στο αρχικό πρόγραμμα •Μια διαδικασία διακοπής μοιάζει με μια υπορουτίνα Διαφέρει στο ότι: 1. Η διακοπή συνήθως ενεργοποιείται σε ένα απροσδιόριστο σημείο του προγράμματος από ένα εξωτερικό ή εσωτερικό σήμα 2. Η διεύθυνση του προγράμματος διακοπής προσδιορίζεται στο hardware 3. Σε ανταπόκριση σε διακοπή είναι αναγκαία η αποθήκευση πληροφορίας όχι μόνο του PC αλλά και των εσωτερικών καταχωρητών

27 ΔΙΑΚΟΠΗ ΠΡΟΓΡΑΜΜΑΤΟΣ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ • Οι περισσότεροι επεξεργαστές δεν ανταποκρίνονται σε απαίτηση διακοπής πριν ολοκληρώσουν την τρέχουσα εντολή •Αν υπάρχει απαίτηση διακοπής μπαίνουν σε έναν hardware κύκλο, όπου: - τα περιεχόμενα των καταχωρητών αποθηκεύονται στη στοίβα - η διεύθυνση εξυπηρέτησης της διακοπής αποθηκεύεται στον PC - η τελευταία εντολή του προγράμματος εξυπηρέτησης επαναφέρει τον επεξεργαστή στην αρχική του κατάσταση Τύποι διακοπών 1. Εξωτερικές διακοπές - προέρχονται από εξωτερικές συσκευές 2. Εσωτερικές διακοπές - προέρχονται από εσφαλμένη χρήση εντολών ή δεδομένων 3. Διακοπές λογισμικού - πρόκειται για ειδικές υπορουτίνες που λειτουργούν ως διακοπές - ελεγχόμενη ενεργοποίηση διακοπών

28 ΕΠΕΞΕΡΓΑΣΙΑ ΕΞΩΤΕΡΙΚΩΝ ΔΙΑΚΟΠΩΝ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ •Λειτουργία εξωτερικής διακοπής •Ο επεξεργαστής ανταποκρίνεται σε μια απαίτηση διακοπής αν Ε=1 και η τρέχουσα εντολή ολοκληρωθεί •Τυπικές μικροεντολές υλοποίησης διακοπής SP  SP - 1Decrement stack pointer M[SP]  PCStore return address on stack SP  SP-1Decrement stack pointer M[SP]  PSRStore processor status word on stack EI  0Reset enable-interrupt flip/flop INTACK  1Enable interrupt acknowledge PC  IVADTransfer interrupt vector address to PC


Κατέβασμα ppt "ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ •Οργάνωση - χειριστές δεδομένων- μονάδα ελέγχου - μνήμες- δίαυλοι •Εκτέλεση εντολών: πεδία εντολής 1. «opcode field” προσδιορίζει."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google