Προγραμματισμός Συστημάτων Πραγματικού χρόνου (Θ)

               ΣΥΜΠΛΗΡΩΜΑΤΙΚΟ ΥΛΙΚΟ

ΠΕΡΙΕΧΟΜΕΝΟ ΤΟΥ ΜΑΘΗΜΑΤΟΣ

Επιστροφή

 

Τίτλος μαθήματος:                            Προγραμματισμός Συστημάτων Πραγματικoύ Χρόνου

 

Εβδομαδιαίες ώρες διδασκαλίας:   3 θεωρία + 2 εργαστήριο

Tυπικό εξάμηνο διδασκαλίας:        Z

Διδασκαλία:                                      Η διδασκαλία του μαθήματος έχει τη μορφή 12 διαλέξεων και ισάριθμων εργαστηριακών ασκήσεων, στο πλαίσιο των οποίων υπάρχει η δυνατότητα ανάληψης εργασιών.

Ενδεικτικά προαπαιτούμενα:          Αρχιτεκτονική Υπολογιστών, Λειτουργικά Συστήματα, Ψηφιακή Επεξεργασία Σημάτων, Προηγμένα Ψηφιακά Συστήματα.

Διδακτικές μονάδες:                        7

Σκοπός και στόχοι του μαθήματος

Το μάθημα αποσκοπεί στο να εισάγει τον φοιτητή στα συστήματα πραγματικού χρόνου από τη σκοπιά των μικρών ενσωματωμένων συστημάτων. Τέτοια συστήματα πρέπει να αποκρίνονται και να διαχειρίζονται συμβάντα και διεργασίες λαμβάνοντας υπόψη κρίσιμους χρονικούς περιορισμούς. Δίνονται οι βασικοί ορισμοί και παραδείγματα και παρουσιάζονται σύντομα οι αρχές ανάλυσης και σχεδιασμού συστημάτων πραγματικού χρόνου. Αναλύονται θέματα χρονοπρογραμματισμού πραγματικού χρόνου και οδήγησης από χρονιστές, διακοπές και προτεραιότητες. Γίνεται σύντομη αναφορά στις γλώσσες προγραμματισμού πραγματικού χρόνου. Στη συνέχεια, γίνεται εισαγωγή στα ενσωματωμένα συστήματα πραγματικού χρόνου (μικροελεγκτές, DSP επεξεργαστές) και παρουσιάζονται οι αρχές διαχείρισης εισόδου/εξόδου, χρονισμού και σημάτων διακοπής. Περιγράφονται οι τεχνικές πολυδιεργασίας σε μικρά ενσωματωμένα συστήματα και τεχνικές υλοποίησης μικρών λειτουργικών συστημάτων πραγματικού χρόνου. Παρουσιάζονται μελέτες περιπτώσεων συστημάτων πραγματικού χρόνου, με βάση μικρά ενσωματωμένα συστήματα.

Περίγραμμα μαθήματος:

·        Εισαγωγή στα Συστήματα Πραγματικού Χρόνου. Παραδείγματα συστημάτων πραγματικού χρόνου, αυστηροί και χαλαροί περιορισμοί χρόνου, χρονικές παράμετροι.

·        Χρονοπρογραμματισμός πραγματικού χρόνου, οδήγηση από χρονιστή, οδήγηση από προτεραιότητες, κυκλική εκτέλεση, περιοδικές και απεριοδικές διεργασίες, διαχείριση εξαιρέσεων. Λειτουργικά Συστήματα και Πυρήνες Πραγματικού χρόνου.

·        Αναφορά στις γλώσσες προγραμματισμού πραγματικού χρόνου, Ada, IDL, RTL/2, Estelle, C, Java.

·        Σχεδιασμός και υλοποίηση ενσωματωμένων συστημάτων πραγματικού χρόνου. Εισαγωγή στα μικρά ενσωματωμέν ασυστήματα (μικροελεγκτές-DSP επεξεργαστές). Μικροελεγκτές και προγραμματισμός τους σε γλώσσα μηχανής/assembly, διαχείριση I/O, διαχείριση χρονισμού και σημάτων διακοπής. Έλεγχος διεπαφών UART, SPI κ.λ.π.. Διασύνδεση αναλογικών σημάτων.

·        Τεχνικές πολυδιεργασίας στα μικρά ενσωματωμένα συστήματα. Βρόγχος προσκηνίου-παρασκηνίου (foreground-background loop). Μεταγωγή διεργασίας, επικοινωνία ανάμεσα σε διεργασίες, διαχείριση προτεραιοτήτων, έλεγχος χρονισμού. Λειτουργικά συστήματα πραγματικού χρόνου (RTOS).

·        Αρχιτεκτονικές VLSI για εφαρμογές πραγματικού χρόνου (ASICs, FPGAs). Αρχές επεξεργασίας σήματος για εφαρμογές πραγματικού χρόνου.

·        Μελέτες περιπτώσεων, με βάση μικρά ενσωματωμένα συστήματα.

Βασική Βιβλιογραφία:

1.       Σημειώσεις του μαθήματος «Αρχές Προγραμματισμού Συστημάτων Πραγματικού Χρόνου-Εφαρμογές σε μικρά ενσωματωμένα συστήματα», Ι. Καλόμοιρος, Τ.Ε.Ι. Κεντρικής Μακεδονίας.

2.    J. W. S. Liu, Real-Time Systems, Prentice Hall, 2000, ISBN 0-13-099651-3

3.         Tim Wilmhurst, An Introduction to the design of small-scale embedded systems, Palgrave, 2001.

4.         Keith E. Curtis, Embedded Multitasking with small microcontrollers, Elsevier-Newnes, 2006.

5.    Σ. Αλατσαθιανός, Μικροελεγκτές PIC, Εκδόσεις Γκιούρδα, 2008.

Συμπληρωματική Βιβλιογραφία:

1.         A. Burns and A. Wellings, Real-Time Systems and Programming Languages, Addison-Wesley, Second Edition, 1997, ISBN 0-201-40365-X

2.         David E. Simon, An Embedded Software Primer, Addison-Welsey, 1999.

4.         John Katsoulis, Designing embedded Hardware, OReilly Media, 2nd edition, 2005, ISBN-13 978-0596007553.

5.   Michael Barr, Anthony Massa, Programming embedded systems, O’ Reilly Media, 2nd edition, 2006, ISBN 978-0596009830

6.   Barnett, Cox and O’Cull, Embedded C Programming and the Microchip PIC, Delmar Cengage Learning, 2004, ISBN: 978-1-4018-3748-8.

7.   Rai Kamal, Embedded systems: Architecture Programming and design, McGraw Hill Education, 2nd edition, 2009, ISBN: 978-0070151253

8.   Rulph Chassaing, Signal Processing and applications with the TMS320C6713 and TMS320C6416 DSK, Wiley, 2008.