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

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

Μικροεπεξεργαστές Δομή Μαθήματος 2006-07 Υπεύθυνος: Δρ Ν. Πετρέλλης, ΠΔ407.

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


Παρουσίαση με θέμα: "Μικροεπεξεργαστές Δομή Μαθήματος 2006-07 Υπεύθυνος: Δρ Ν. Πετρέλλης, ΠΔ407."— Μεταγράφημα παρουσίασης:

1 Μικροεπεξεργαστές Δομή Μαθήματος Υπεύθυνος: Δρ Ν. Πετρέλλης, ΠΔ407

2 •Εισαγωγή •Ο επεξεργαστής Z80: Χαρακτηριστικά, Ακροδέκτες, Καταχωρητές, Κύκλοι Μηχανής/Εντολών, Διακοπές, Σύνολο Εντολών κλπ •Περιφερειακά Ζ80 (PIO, CTC, SIO, DMA) •Παραδείγματα συστημάτων με Ζ80 •Μικροελεγκτές με έμφαση σε ιδιαίτερα περιφερειακά που διαθέτουν –68HC05 –8051 –Atmel AVR

3 Εργασία •Ομάδες των 2 ατόμων •Διαφορετικά θέματα από πέρσι •Δεν ανατίθεται ίδιο θέμα με ίδιο επεξεργαστή σε πολλές ομάδες •Υποχρεωτική για συμμετοχή στην εξεταστική Φεβρουαρίου/Σεπτεμβρίου •Τελικός βαθμός=(Εξέταση+Εργασία)/2 αν Εξέταση>=5 και Εργασία>=5

4 Εργασία •Προαιρετική Υλοποίηση που όμως διευκολύνει την βαθμολόγηση με 10 •Εργασίες-αντιγραφές βαθμολογούνται με 5 που οπωσδήποτε λαμβάνεται υπόψη στον τελικό βαθμό •Ειδικό φροντιστήριο για τις Εργασίες

5 Τι πρέπει να περιλαμβάνει μια εργασία •Εισαγωγή με σύντομη περιγραφή του θέματος και σχετικών εμπορικών συστημάτων- εξαρτημάτων (2-5 σελίδες) •Περιγραφή της προτεινόμενης λύσης. Πρέπει να περιλαμβάνει –Διαγράμματα Ροής –Αναλυτικό κύκλωμα –Πλήρη Συμβολικό Κώδικα

6 Interrupts - Διακοπές •Είναι ένας τρόπος για να διακοπεί η ροή ενός προγράμματος έτσι ώστε να εξυπηρετηθεί ένα έκτακτο γενογός •Η ΚΜΕ αποθηκεύει την τρέχουσα διεύθυνση και κάνει άλμα στην διεύθυνση της Ρουτίνας Εξυπηρέτησης Διακοπής •Επιστρέφει στην διεύθυνση της επόμενης εντολής από εκείνη που εκτελούνταν όταν συνέβη η Διακοπή

7 Παραδείγματα Πηγών Διακοπών •Από γενικής χρήσης ακροδέκτες (INT, NMI) •Υπερχείλιση Χρονιστών-Μετρητών •Εγγραφή ή ανάγνωση μιας σειριακής ή παράλληλης θύρας •Σφάλματα μετάδοσης δεδομένων από μια θύρα •Αναλογικούς Συγκριτές •SWI •RESET

8 Πολύπλεξη Διακοπών •Πολλές πηγές διακοπών μπορούν να οδηγούν την μοναδική γραμμή (ΙΝΤ) ενός επεξεργαστή με τη χρήση Interrupt Controller •Ο Interrupt Controller επιτρέπει την ιεράρχιση διακοπών με διάφορες μεθόδους (round robin, απόλυτη ιεράρχιση κλπ)

9 Καθορισμός Διεύθυνσης Ρουτίνας Εξ. Διακοπής •Από την περιφερειακή συσκευή •Από Πίνακα Διακοπών (Interrupt Vector) •Έλεγχος Interrupt Flags

10 Interrupt Mask/Flag •Ένας Mask καταχωρητής μπορεί να επιτρέψει ή να απαγορέψει κάποιες πηγές διακοπών γράφοντας 0 ή 1 στο bit που αντιστοιχεί σε μία πηγή •Όταν συμβεί διακοπή η ΚΜΕ μπορεί να διακρίνει ποια/ποιες πηγές αιτήθηκαν διακοπή διαβάζοντας το Flag που αντιστοιχεί σε κάθε διακοπή •Τα bit στην ίδια θέση ενός Mask και ενός Flag καταχωρητή αντιστοιχούν στην ίδια πηγή διακοπών

11 I/O Ports •Παράλληλη Είσοδος/Έξοδος •Διευκολύνει την αναγνώριση σημάτων εισόδου ή την οδήγηση σημάτων εξόδου •Χειρισμός ομάδων bit ή καθ’ ενός ξεχωριστά •Χρήση Handshaking σημάτων

12

13 Output Port (Z80 PIO)

14 Input Port (Z80 PIO)

15 Timer - Χρονιστής •Χρονιστής (Timer) είναι ένας καταχωρητής του οποίου η τιμή αυξάνεται ή μειώνεται με βάση ένα σταθερό ρολόι. •Χρησιμοποιείται για την μέτρηση χρονικών διαστημάτων •Το ρολόι μπορεί να είναι εκείνο του συστήματος ή κάποιος αποκλειστικός ταλαντωτής

16 Counter - Μετρητής •Παρόμοιος με τον Χρονιστή (συνήθως είναι το ίδιο κύκλωμα) •Η μεταβολή στην τιμή του γίνεται με βάση τις αλλαγές στάθμης σε κάποιον ακροδέκτη εισόδου •Ουσιαστικά μετράει γεγονότα •Η μεταβολή στην τιμή μπορεί να λαμβάνει χώρα κατά την ανοδική ή καθοδική ακμή του ακροδέκτη εισόδου

17 Prescaler •Χρησιμοποιείται για την επιβράδυνση του ρυθμού μεταβολής της τιμής ενός Χρονιστή ή Μετρητή •Πχ, αν έχει οριστεί Prescaler 1:32 τότε η τιμή του Χρονιστή αλλάζει κάθε 32 κύκλους ρολογιού

18 Διακοπές σχετικές με Χρονιστές- Μετρητές •Όταν υπερχειλίσει ένας Μετρητής-Χρονιστής •Όταν η τιμή του γίνει ίση με κάποιον άλλο καταχωρητή (Output Capture) •Όταν κάποια σχετική είσοδος αλλάξει στάθμη η τιμή του χρονιστή μπορεί να μεταφερθεί σε κάποιον άλλο καταχωρητή (Input Capture) •Οποτεδήποτε η τιμή του χρονιστή ταυτίζεται με κάποια προκαθορισμένη (για την δημιουργία παλμών PWM)

19 Απευθείας Προσπέλαση Μνήμης (Direct Memory Access-DMA) •Για μεταφορά από Περιφερειακό σε Μνήμη χωρίς DMA: –Η ΚΜΕ ειδοποιείται από το Περιφερειακό με διακοπή=>Χρόνος Αντίδρασης –Για κάθε byte πραγματοποιεί μια μεταφορά από το περιφερειακό σε κάποιο εσωτερικό καταχωρητή –Ακολουθεί μια μεταφορά από τον εσωτερικό καταχωρητή στη μνήμη –Για τη μεταφορά κάθε byte απαιτούνται 2 κύκλοι εντολής

20 Απευθείας Προσπέλαση Μνήμης (Direct Memory Access-DMA) •Για μεταφορά από Μνήμη σε Περιφερειακό χωρίς DMA: –Η ΚΜΕ ειδοποιείται από το Περιφερειακό με διακοπή=>Χρόνος Αντίδρασης –Για κάθε byte πραγματοποιεί μια μεταφορά από τη μνήμη σε κάποιο εσωτερικό καταχωρητή –Ακολουθεί μια εγγραφή από τον εσωτερικό καταχωρητή στον κατάλληλο καταχωρητή του περιφερειακού –Για τη μεταφορά κάθε byte απαιτούνται 2 κύκλοι εντολής

21 •Η μεταφορά γίνεται χωρίς την μεσολάβηση της ΚΜΕ •Την διευθυνσιοδότηση της μνήμης καθώς και την οδήγηση των control σημάτων (RD, WR κλπ) κάνει ο DMA Controller •Η ΚΜΕ απομονώνει τον δίαυλο διευθύνσεων και τα control σήματά της (Υψηλή Εμπέδηση) όσο έχει τον έλεγχο ο DMA Controller Απευθείας Προσπέλαση Μνήμης (Direct Memory Access-DMA)

22 •Cycle Stealing: Σε κάθε κύκλο μηχανής όταν η ΚΜΕ δεν χρησιμοποιεί τους διαύλους ο DMA Controller μεταφέρει ένα byte. •Cycle Stealing με επιμήκυνση του ρολογιού της ΚΜΕ •Burst Mode: Παραχώριση του system bus για μαζική μεταφορά δεδομένων από τον DMA Controller. Μέθοδοι DMA Μεταφοράς

23 System Bus χωρίς DMA ΚΜΕ Ελεγκτής DMA Μνήμη Περιφερειακά

24 System Bus με DMA ΚΜΕ Ελεγκτής DMA Μνήμη Περιφερειακά

25 Αρχικοποίηση DMA •Καθορισμός αρχικής διεύθυνσης στη Μνήμη •Πλήθος δεδομένων που θα μεταφερθούν •Τύπος μεταφοράς: Cycle Stealing, Burst Mode •Αναμονή για αίτηση μεταφοράς από την περιφερειακή συσκευή

26 Όταν ζητηθεί DMA μεταφορά 1.Ο DMA Controller ζητά έλεγχο του system bus για 1 κύκλο (cycle stealing) ή όσο απαιτείται για την πλήρη μεταφορά (burst mode) 2.Όταν του δοθεί ο έλεγχος, μεταφέρει ένα byte από/προς την τρέχουσα διεύθυνση μνήμης 3.Αυξάνει κατά ένα τη διεύθυνση και μειώνει κατά ένα το πλήθος των δεδομένων 4.Αν το πλήθος δεν έχει γίνει 0 επαναλαμβάνει τη διαδικασία από το βήμα 2


Κατέβασμα ppt "Μικροεπεξεργαστές Δομή Μαθήματος 2006-07 Υπεύθυνος: Δρ Ν. Πετρέλλης, ΠΔ407."

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


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