Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
1
ΜΟΝΑΔΑ ΕΛΕΓΧΟΥ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Η μονάδα ελέγχου παρέχει τα σήματα ελέγχου που καθορίζουν τη μικρολειτουργία που εκτελεί ο χειριστής δεδομένων Η μονάδα ελέγχου καθορίζει επίσης τη σειρά των μικρολειτουργιών που θα εκτελεσθούν Σε ένα σύγχρονο σύστημα όλες οι λειτουργίες συγχρονίζονται με ένα κεντρικό ρολόι. Εγγραφή ή μη σε καταχωρητές καθορίζεται από την είσοδο επίτρεψης φόρτωσης Η μονάδα ελέγχου είναι ένα ακολουθιακό κύκλωμα Γενικά υπάρχουν δυο τύποι μονάδας ελέγχου: α) για προγραμματιζόμενο σύστημα β) για μη προγραμματιζόμενο σύστημα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
2
ΑΛΓΟΡΙΘΜΗΚΕΣ ΜΗΧΑΝΕΣ ΚΑΤΑΣΤΑΣΕΩΝ
Η επεξεργασία δεδομένων από ένα χειριστή δεδομένων μπορεί να θεωρηθεί ως ένας κυκλωματικός αλγόριθμος Για την περιγραφή ενός κυκλωματικού αλγόριθμου χρησιμοποιείται το διάγραμμα αλγοριθμικής μηχανής καταστάσεων (ASM) Το διάγραμμα ASM μοιάζει με ένα απλό διάγραμμα ροής μόνο που περιλαμβάνει και τη χρονική σχέση μεταξύ των καταστάσεών του. Διαγράμματα ASM Χρησιμοποιεί τρία βασικά στοιχεία: 1. Το κουτί κατάστασης (state box) 2. Το κουτί απόφασης (decision box) 3. Το κουτί υπό συνθήκη (conditional box) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
3
ΔΙΑΓΡΑΜΜΑΤΑ ASM 1 State box Decision box 1 Παράδειγμα:
Binary code IDLE Name 1 Register operation or output Condition R 0 State box Decision box 1 START From decision box Παράδειγμα: IDLE 000 Register operation or output R 0 RUN PC 0 Conditional output box Παράδειγμα χρήσης ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
4
ΔΙΑΓΡΑΜΜΑΤΑ ASM Ένα ASM μπλοκ αποτελείται από ένα κουτί κατάστασης και όλα τα κουτιά απόφασης και υπό-συνθήκη που συνδέονται στην έξοδό του Entry IDLE ASM block AVAIL 1 START A 0 1 Q0 Exit Exit MUL0 MUL1 Όλες οι λειτουργίες που περιγράφονται σε ένα ASM μπλοκ εκτελούνται στην ίδια παρυφή του ρολογιού. Την ίδια παρυφή έχουμε επίσης μετακίνηση στη νέα κατάσταση Ένα ASM αντιστοιχεί σε ένα διάγραμμα κατάστασης
5
ΘΕΜΑΤΑ ΧΡΟΝΙΣΜΟΥ Clock cycle 1 Clock cycle 2 Clock cycle 3 clock state
START Q0 state IDLE MUL1 AVAIL A 0034 0000 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
6
ΠΑΡΑΔΕΙΓΜΑ: ΔΥΑΔΙΚΟΣ ΠΟΛΛΑΠΛΑΣΙΑΣΤΗΣ
Τρόπος υλοποίησης Multiplicant Multiplier Initial partial product Add multiplicant Partial product after add Partial product after shift Partial product after add Partial product after shift Partial product after shift Partial product after shift Add multiplicant Partial product after add Product after final shift Αλγόριθμος πολλαπλασιασμού ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
7
ΧΕΙΡΙΣΤΗΣ ΔΕΔΟΜΕΝΩΝ ΓΙΑ ΠΟΛΛΑΠΛΑΣΙΑΣΤΗ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
8
ΔΙΑΓΡΑΜΜΑ ASM ΓΙΑ ΠΟΛΛΑΠΛΑΣΙΑΣΜΟ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
9
ΚΑΛΩΔΙΩΜΕΝΟΣ ΕΛΕΓΧΟΣ Η μονάδα ελέγχου εκτελεί δυο λειτουργίες:
α) ελέγχει την εκτέλεση των μικρολειτουργιών β) καθορίζει τη δρομολόγηση της διαδικασίας (καθορισμός επόμενης κατάστασης) Σήματα ελέγχου μικρολειτουργιών εξαγόμενα από ASM Microoperation A 0 A A + B C||A||Q srC||A||Q B IN C 0 C Cout Q IN P n-1 P P-1 Block diagram module Register A Register B Flip-Flop C Register Q Counter P Control signal name Initialize Load Shift_dec Load_B Clear_C Load_Q Control expression IDLE • G MUL0 • Q0 MUL1 LOADB IDLE • G + MUL1 LOADQ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
10
ASM ΓΙΑ ΚΑΘΟΡΙΣΜΟ ΔΡΟΜΟΛΟΓΙΣΗΣ
- Αντιστοιχεί σε διάγραμμα καταστάσεων και μπορεί να σχεδιαστεί ακολουθώντας τη σχετική μεθοδολογία ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
11
ΜΕΘΟΔΟΙ ΣΧΕΔΙΑΣΜΟΥ ΜΟΝΑΔΑΣ ΕΛΕΓΧΟΥ
Μέθοδος καταχωρητή ακολουθίας και αποκωδικοποιητή - χρησιμοποιεί ένα καταχωρητή καταστάσεων και ένα αποκωδικοποιητή των καταστάσεων αυτών Πίνακας καταστάσεων για το ακολουθιακό μέρος της μονάδας ελέγχου ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
12
ΜΕΘΟΔΟΣ ΚΑΤΑΧΩΡΗΤΗ ΑΚΟΛΟΥΘΙΑΣ
Εκμεταλλευόμενοι τον αποκωδικοποιητή οι συναρτήσεις εισόδου των flip/flops εξάγονται άμεσα από τον πίνακα καταστάσεων DM0 = IDLE•G + MUL1 •Z’ DM1 = MUL0 Λογικό διάγραμμα μονάδας ελέγχου ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
13
ΜΕΘΟΔΟΣ ΜΕ ΈΝΑ F/F ΑΝΑ ΚΑΤΑΣΤΑΣΗ
Χρησιμοποιούνται τόσα flip/flops όσες είναι και οι καταστάσεις. Κάθε φορά μόνο ένα f/f είναι σε «1». Το «1» μεταφέρεται από το ένα f/f στο άλλο σύμφωνα με τη λογική απόφασης του ASM Απαιτείται περισσότερο υλικό (f/fs) αλλά είναι απλούστερη η διαδικασία σχεδιασμού Το λογικό διάγραμμα της μονάδας ελέγχου προκύπτει από το ASM με κατάλληλη αντικατάσταση των συμβόλων - βολεύει η χρησιμοποίηση του ASM που αντιστοιχεί στη δρομολόγηση - κατόπιν προσθέτουμε την επιπλέον λογική - η αρχικοποίηση των f/fs γίνεται με ασύγχρονα σήματα preset και reset ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
14
ΜΕΘΟΔΟΣ ΜΕ ΈΝΑ F/F ΑΝΑ ΚΑΤΑΣΤΑΣΗ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
15
ΜΕΘΟΔΟΣ ΜΕ ΈΝΑ F/F ΑΝΑ ΚΑΤΑΣΤΑΣΗ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
16
ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΟΣ ΕΛΕΓΧΟΣ
Μια μονάδα ελέγχου με τις δυαδικές τιμές των σημάτων ελέγχου αποθηκευμένες σε μνήμη καλείται μικροπρογραμματιζόμενη μονάδα ελέγχου Κάθε λέξη μνήμης ελέγχου περιέχει μια μικροεντολή η οποία καθορίζει μια ή περισσότερες μικρολειτουργίες Μια ακολουθία μικροεντολών συνθέτει ένα μικροπρόγραμμα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
17
ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΟΣ ΕΛΕΓΧΟΣ
Μια μικροεντολή περιέχει ψηφία για την ενεργοποίηση των μικρολειτουργιών και ψηφία για τον καθορισμό της ακολουθίας εκτέλεσης τους Τα ψηφία κατάστασης (status bits) συμμετέχουν στον καθορισμό της διεύθυνσης της επόμενης μικροεντολής - Συνεπώς τα ακολουθιακά κυκλώματα είναι τύπου Moore. Τα αντίστοιχα ASM δεν περιέχουν κουτιά υπό συνθήκη Απαιτούνται περισσότερες καταστάσεις ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
18
ASM ΔΙΑΓΡΑΜΜΑ ΠΟΛΛΑΠΛΑΣΙΑΣΜΟΥ ΜΕ ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
19
ΠΑΡΑΔΕΙΓΜΑ ΔΥΑΔΙΚΟΥ ΠΟΛΛΑΠΛΑΣΙΑΣΤΗ
Για το σχεδιασμό της μονάδας ελέγχου πρέπει να βρεθούν: 1. Ο αριθμός των ψηφίων της λέξης ελέγχου 2. Το μέγεθος της ROM και του CAR 3. Η δομή της γεννήτριας επόμενης διεύθυνσης Σήματα ελέγχου πολλαπλασιαστή - Τα απαιτούμενα σήματα ελέγχου μπορούν να κωδικοποιηθούν ώστε να μειωθεί το μέγεθος της ROM ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
20
ΜΟΡΦΗ ΛΕΞΗΣ ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΟΥ ΕΛΕΓΧΟΥ
NXTADD0 NXTADD1 SEL DATAPATH 11 5 4 3 9 8 6 Απομένει ο καθορισμός των πεδίων δρομολόγησης (ακολουθία διευθύνσεων στη μνήμη) Υπάρχουν δυο κύριες μέθοδοι για τον προσδιορισμό των διευθύνσεων 1. Οι πιθανές δυο διευθύνσεις περιέχονται στη μικροεντολή 2. Η μια διεύθυνση περιέχεται στην μικροεντολή ενώ στον CAR δίνεται η δυνατότητα παράλληλης φόρτωσης και αύξησης - στο παράδειγμα ακολουθείται η πρώτη Υπάρχει επίσης ένα πεδίο για τον προσδιορισμό της απαίτησης για αλλαγή διεύθυνσης και τον καθορισμό της εισόδου που την επέβαλλε ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
21
ΚΑΘΟΡΙΣΜΟΣ ΠΕΔΙΟΥ SEL ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
22
ΜΟΝΑΔΑ ΕΛΕΓΧΟΥ ΠΟΛΛΑΠΛΑΣΙΑΣΤΗ (ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΗ)
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
23
ΜΙΚΡΟΠΡΟΓΡΑΜΜΑ ΓΙΑ ΠΟΛΛΑΠΛΑΣΙΑΣΜΟ ΣΕ RTL
Συμβολικό μικροπρόγραμμα Κάθε μικροεντολή αντιστοιχεί σε μια κατάσταση του ASM ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
24
ΑΠΛΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΗ
Εντολές Οι λειτουργίες ενός υπολογιστή καθορίζονται από το πρόγραμμα, μια με σαφώς καθορισμένη σειρά, ομάδα εντολών και δεδομένων Η μονάδα ελέγχου διαβάζει μια εντολή από τη μνήμη, την αποκωδικοποιεί και την εκτελεί ενεργοποιώντας μια σειρά από μικρολειτουργίες Η εντολή είναι μια συλλογή ψηφίων που κατευθύνει τον υπολογιστή στην εκτέλεση μιας λειτουργίας Ο λειτουργικός κώδικας (opcode) είναι μια ομάδα ψηφίων της εντολής που προσδιορίζει την λειτουργία αυτή Σε μια εντολή πρέπει να καθορίζεται η λειτουργία της αλλά και οι διευθύνσεις των δεδομένων της - Τα δεδομένα ορίζονται με δυο τρόπους 1. Explicitly 2. Implicitly ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
25
ΑΠΛΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΗ
Μορφή Εντολών ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
26
ΑΠΛΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΗ
Αναπαράσταση εντολών και δεδομένων στη μνήμη ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
27
ΑΠΛΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΗ
Διάγραμμα πόρων αποθήκευσης ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
28
ΕΛΕΓΧΟΣ ΚΑΛΩΔΙΟΜΕΝΗΣ ΛΟΓΙΚΗΣ ΑΠΛΟΥ ΚΥΚΛΟΥ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
29
ΑΠΟΚΩΔΙΚΟΠΟΙΗΤΗΣ ΕΝΤΟΛΩΝ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
30
ΕΝΤΟΛΕΣ ΕΠΕΞΕΡΓΑΣΤΗ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
31
ΠΑΡΑΔΕΙΓΜΑ ΔΗΜΙΟΥΡΓΙΑΣ ΠΡΟΓΡΑΜΜΑΤΟΣ
Υλοποίηση της: (2+3) Αρχική κατάσταση: [R3]=248, M[148]=2, M[249]=83 LD R1, R3 Load R1 with M[R3] (R1=2) ADI R1, R1, 3 Add 3 to R1 (R1=5) NOT R1, R1 Complement R1 INC R1, R1 Increment R1 (R1=-5) INC R3, R3 Increment R3 (R3=249) LD R2, R3 Load R2 with M[R3] (R2=83) ADD R2, R2, R1 Add contents of R1 and R2 (R2=78) INC R3, R3 Increment the contents of R3 (R3=250) ST R3, R2 Store R2 in M[250] (M[250]=78) ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
32
ΜΕΙΟΝΕΚΤΗΜΑΤΑ ΚΑΛΩΔΙΟΜΕΝΟΥ ΕΛΕΓΧΟΥ
Μη αποδοτικός στην εκτέλεση πολύπλοκων λειτουργιών. Αναγκαστικά μια εντολή αντιστοιχεί σε μια μικρολειτουργία Σε περίπτωση χρήσης μιας μνήμης (εντολής, δεδομένα) απαιτούνται τουλάχιστον δυο κύκλοι ρολογιού για την εκτέλεση μιας εντολής χαμηλή συχνότητα ρολογιού Maximum clock 58.8MHz ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
33
ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΗ ΛΟΓΙΚΗ ΠΟΛΛΑΠΛΩΝ ΚΥΚΛΩΝ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
34
ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΗ ΛΟΓΙΚΗ ΠΟΛΛΑΠΛΩΝ ΚΥΚΛΩΝ
Μορφή μικροεντολών Σήματα ελέγχου για το χειριστή δεδομένων ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
35
ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΙΖΟΜΕΝΗ ΛΟΓΙΚΗ ΠΟΛΛΑΠΛΩΝ ΚΥΚΛΩΝ
Σήματα ελέγχου για τη δρομολόγηση ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
36
ΣΧΕΔΙΑΣΜΟΣ ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΟΣ
ASM διάγραμμα για μια ομάδα εντολών Κάθε εντολή εκτελείται σε δυο βήματα 1. Κλήση εντολής 2. Εκτέλεση εντολής Για την εκτέλεση μιας εντολής απαιτούνται τρεις κύκλοι ρολογιού ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
37
ΣΧΕΔΙΑΣΜΟΣ ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΟΣ
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
38
ΣΧΕΔΙΑΣΜΟΣ ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΟΣ
Βελτιστοποίηση χρήσης της αρχιτεκτονικής Eντολή: LRI => R[DR] M[M[R[SA]]] Αντίστοιχο ASM διάγραμμα Απαιτούνται 4 κύκλοι ρολογιού έναντι 6 στην περίπτωση χρήσης δυο LD εντολών ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
39
ΣΧΕΔΙΑΣΜΟΣ ΜΙΚΡΟΠΡΟΓΡΑΜΜΑΤΟΣ
Βελτιστοποίηση χρήσης της αρχιτεκτονικής Eντολή: SRM => “shift right multiple” Απαιτούνται 2s+3 κύκλοι ρολογιού έναντι 3s ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
40
ΕΝΑΛΛΑΚΤΙΚΗ ΛΥΣΗ ΓΙΑ ΤΟ ΚΥΚΛΩΜΑ ΕΛΕΓΧΟΥ
Πολλαπλών κύκλων έλεγχος μπορεί επίσης να υλοποιηθεί με hardwired λογική ASM διάγραμμα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
41
ΕΝΑΛΛΑΚΤΙΚΗ ΛΥΣΗ ΓΙΑ ΤΟ ΚΥΚΛΩΜΑ ΕΛΕΓΧΟΥ
Λογικό διάγραμμα μονάδας ελέγχου Ο μικροπρογραμματιζόμενος έλεγχος είναι ευκόλως επεκτάσιμος. Οποιαδήποτε αλλαγή στον τύπο ή τη σειρά εκτέλεσης των εντολών επιδρά μόνο στο περιεχόμενο της ROM Για πολύπλοκα προγράμματα συμφέρει η χρήση μικροπρογραμματισμού, για απλά όχι ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
42
ΑΛΥΣΙΔΩΤΟΣ ΕΛΕΓΧΟΣ Λογικό διάγραμμα μονάδας αλυσιδωτής (pipelined) αρχιτεκτονικής ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
43
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΙΑ ΑΛΥΣΙΔΩΤΗ ΕΠΕΞΕΡΓΑΣΙΑ - ΑΠΟΔΟΣΗ
1. LDI R1,1 2. LDI R2,2 3. LDI R3,3 4. LDI R4,4 5. LDI R5,5 6. LDI R6,6 7. LDI R7,7 2.4 φορές γρηγορότερο του απλού κύκλου υπολογιστή. Ιδανικά 3.3 φορές γρηγορότερο ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
44
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΙΑ ΑΛΥΣΙΔΩΤΗ ΕΠΕΞΕΡΓΑΣΙΑ - ΑΠΟΔΟΣΗ
Η απόδοση μειώνεται και από την ανάγκη αποφυγής πιθανόν hazards. Εισάγονται NOP εντολές Clock cycle 1. ADD R1,R0,R1 2. ADD R3,R2,R3 3. ADD R5,R4,R5 4. ADD R7,R6,R7 5. ADD R3,R1,R3 6. NOP 7. ADD R7,R5,R7 8. NOP 9. NOP 10. ADD R7,R3,R7 IF DOF EX WB R1 IF DOF EX WB R3 IF DOF EX WB R5 IF EX WB R7 DOF R1,R3 IF EX WB R3 DOF IF WB DOF EX IF WB R7 R5,R7 DOF EX IF DOF EX WB IF DOF EX WB R3,R7 IF DOF EX WB Αύξηση ρυθμού μόνο κατά 1.8 φορές Στην καλύτερη περίπτωση 2.3 φορές ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.