Ειδική Επιστημονική Εργασία. Σχεδίαση και υλοποίηση Θέσεως Εργασίας ενός Εργαστηρίου DSPs από Απόσταση για Λήψη και Επεξεργασία Εικόνας

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Ειδική Επιστημονική Εργασία. Σχεδίαση και υλοποίηση Θέσεως Εργασίας ενός Εργαστηρίου DSPs από Απόσταση για Λήψη και Επεξεργασία Εικόνας"

Transcript

1 1 Ειδική Επιστημονική Εργασία Σχεδίαση και υλοποίηση Θέσεως Εργασίας ενός Εργαστηρίου DSPs από Απόσταση για Λήψη και Επεξεργασία Εικόνας Μαρκόνης Δημήτριος Α.Μ. 72 Επιβλέπων: Ε. Ζυγούρης Αναπληρωτής Καθηγητής

2 2 Περιεχόμενα Πρόλογος...2 Κεφάλαιο 1 Η Αρχιτεκτονική του TMS320C64x και Περιγραφή του DSK C Εισαγωγή Περιγραφή της Αρχιτεκτονικής του TMS320C Η Κεντρική Μονάδα Επεξεργασίας (CPU) του TMS320C64x Μονοπάτια Δεδομένων (Data Paths) H Μνήμη του TMS320C64x Περιγραφή του DSK C Περιγραφή Χάρτης Μνήμης Διακόπτες Ελέγχου Η Διάταξη Προγραμματιζόμενης Λογικής (CPLD)...23 Κεφάλαιο 2 Ο Αισθητήρας Εικόνας OV5610 και η DSKeye Εισαγωγή Οι CMOS Αισθητήρες Εικόνας Πλεονεκτήματα Ψηφιακής Απεικόνισης Ο CMOS Αισθητήρας Εικόνας OV Οι Βασικές Λειτουργίες του Αισθητήρα Εικόνας OV Σειριακός Δίαυλος Ελέγχου Κάμερας (SCCB Bus) Περιγραφή των Καταχωρητών του SCCB Διασύνδεση του CMOS Αισθητήρα Εικόνας OV5610 με το DSK C Η Hardware Διασύνδεση Η Software Διασύνδεση...41 Κεφάλαιο 3 Εργαστήρια από απόσταση Εισαγωγή Το R - DSP Lab Αρχιτεκτονική του R DSP Lab...46 Κεντρικός Υπολογιστής Δικτύου...48 Θέση Εργασίας Το LabVIEW to CCS Link Toolkit Περιγραφή των SubVIs του LabVIEW to CCS Link Ρύθμιση του CCS Αυτοματοποίηση του CCS Επικοινωνία με το CCS...59 Κεφάλαιο 4 Υλοποίηση του Συστήματος - Αποτελέσματα Εισαγωγή Υλοποίηση του Συστήματος με το CCS Οι Συναρτήσεις για την σύνθεση της RGB εικόνας Το Κυρίως Πρόγραμμα του Συστήματος Το Project του Συστήματος στο CCS Υλοποίηση του Interface με το LabVIEW...78

3 Το Front Panel του Interface To Block Diagram του Interface Υλοποίηση της Ιστοσελίδας Αποτελέσματα Συμπεράσματα - Προτάσεις...92 Βιβλιογραφία...95

4 4 Πρόλογος Αντικείμενο μελέτης της παρούσας εργασίας είναι η δημιουργία μιας θέσεως εργασίας (Workstation) ενός εργαστηρίου DSPs από απόσταση για επεξεργασία εικόνας. Προυπόθεση για τη σωστή αξιοποίηση ενός τέτοιου συστήματος είναι να διαθέτει ένα γραφικό περιβάλλον αλληλεπίδρασης με το χρήστη (Graphical User Interface GUI) το οποίο ελέγχει και διαχειρίζεται τα αποτελέσματα του συστήματος. Τα εργαστήρια από απόσταση (Remote Laboratories) εντάσσονται στο γενικότερο πλαίσιο της εκπαίδευσης από απόσταση και επιχειρούν να δώσουν λύση στη πρόκληση της αντιμετώπισης των προβλημάτων όταν το αντικείμενο του μαθήματος είναι από τη φύση του εργαστηριακό. Η δημιουργία των εργαστηρίων από απόσταση πλέον αποτελεί μια καλή λύση για τα πανεπιστήμια αφού μέσα από αυτά μπορούν να λυθούν διάφορα προβλήματα όπως το μεγάλο πλήθος των φοιτητών, η έλλειψη προσωπικού και η μείωση του κόστους των εργαστηρίων. Σημαντικό χαρακτηριστικό τους είναι να παρέχουν την δυνατότητα στους φοιτητές να εκτελούν διάφορες εργαστηριακές ασκήσεις ή να παρακολουθούν την εξέλιξη ορισμένων πειραμάτων χωρίς την φυσική τους παρουσία στον χώρο του εργαστηρίου. Παράλληλα, τα τελευταία χρόνια οι ανάγκες της ψηφιακής επεξεργασίας εικόνας και σήματος έχουν αυξηθεί σημαντικά με αποτέλεσμα να είναι επιτακτική η σχεδίαση και η υλοποίηση συστημάτων ψηφιακής επεξεργασίας με υψηλές επιδόσεις. Η υλοποίηση τέτοιων συστημάτων συνήθως στηρίζεται στους DSPs (Digital Signal Processors), ενώ σε πολλά προπτυχιακά και μεταπτυχιακά μαθήματα χρησιμοποιούνται αναπτυξιακές πλατφόρμες με πυρήνα ένα τέτοιο επεξεργαστή. Επειδή το μεγαλύτερο μέρος της παγκόσμιας αγοράς των DSPs κατέχεται από την Texas Instruments (TI), η υλοποίηση του συστήματος που παρουσιάζεται στην σε αυτή την εργασία στηρίχτηκε στον TMS320C6416 DSP της TI. Συγκεκριμένα για την υλοποίηση του συστήματος επιλέχτηκε η αναπτυξιακή πλατφόρμα DSK (DSP Starter Kit) C6416 της Spectrum Digital η οποία βασίζεται στον TMS320C6416 DSP της TI. Η αρχιτεκτονική του TMS320C6416 και γενικότερα της οικογένειας TMS320C64x των DSPs της TI [1-13, 41-43] καθώς και η αναπτυξιακή πλατφόρμα DSK C614 [16, 17] παρουσιάζονται συνοπτικά στο πρώτο κεφάλαιο αυτής της εργασίας. Το σύστημα που υλοποιήθηκε επεξεργάζεται και διαχειρίζεται τις εικόνες που λαμβάνει ο CMOS έγχρωμος αισθητήρας εικόνας OV5610 της OmniVision. Ο οποίος διασυνδέεται με το DSK C6416 μέσω της daughter card DSKeye της BiTEC. Μια γενική εισαγωγή στους CMOS αισθητήρες εικόνας [23, 42, 43] και η περιγραφή των δυνατοτήτων του CMOS έγχρωμου αισθητήρα εικόνας OV5610 [24, 25, 42, 43] γίνεται στο δεύτερο κεφάλαιο αυτής της εργασίας. Επίσης σε αυτό το κεφάλαιο περιγράφεται η daughter card DSKey, παρουσιάζεται η θεωρητική προσέγγιση των μεθόδων χρωματικής διόρθωσης και διόρθωσης κορεσμού που χρησιμοποιεί το σύστημα που υλοποιήθηκε και αναλύεται ο τρόπος με τον οποίο διασυνδέεται ο αισθητήρας εικόνας με το DSK C6416 μέσω της DSKeye [26, 42 43] με τχρησιμοποιώντας τα προγράμματα σε C που την συνοδεύουν. Για την υλοποίηση του GUI που διαθέτει το σύστημα που παρουσιάζεται στην συγκεκριμένη εργασία χρησιμοποιήθηκε το LabVIEW v8.0 της National Instrument (NI) ενώ για τον προγραμματισμό του DSP χρησιμοποιήθηκε το Code Composer Studio (CCS) v3.1 της TI. Ο έλεγχος και την επικοινωνία του DSP με το LabVIEW πραγματοποιείται μέσω του toolkit LabVIEW to CCS Link [32-35] που παρουσιάζεται συνοπτικά στο τρίτο κεφάλαιο. Στο ίδιο κεφάλαιο γίνεται μια εισαγωγή στα εργαστήρια από απόσταση και παρουσιάζεται η λειτουργία και η αρχιτεκτονική του R-DSP Lab, μέρος του οποίου είναι η θέση εργασίας που υλοποιήθηκε σ αυτή την εργασία.

5 5 Η υλοποίηση του συστήματος πραγματοποιήθηκε σε τρία στάδια την υλοποίηση του συστήματος με το Code Composer Studio v3.1 (CCS) [1, 2, 41], του GUI με το LabVIEW v8.0 [28-34]και της ιστοσελίδας που επιτρέπει τον έλεγχο του συστήματος από απόσταση μέσω δικτύου (Internet ή Ethernet), με το Web Publishing Tool του LabVIEW και το Office Front Page Στο πέμπτο κεφάλαιο αρχικά παρουσιάζονται και αναλύονται οι κώδικες σε C που χρησιμοποιούνται στο project του CCS που υλοποιεί το σύστημα με το DSK C6416. Στην συνέχεια παρουσιάζεται και αναλύεται η δημιουργία του GUI με το LabVIEW και της ιστοσελίδας που χρησιμοποιείται για τον έλεγχο του συστήματος από απόσταση μέσω δικτύου (Internet ή Ethernet). Tέλος, θα ήθελα να εκφράσω τις ευχαριστίες μου στον επιβλέποντα καθηγητή αυτής της εργασίας κ. Ευάγγελο Ζυγούρη του οποίου η καθοδήγηση ήταν καθοριστική και στον υποψήφιο διδάκτορα κ. Αθανάσιο Καλαντζόπουλο χωρίς τη βοήθεια και της συμβουλές του οποίου θα ήταν αδύνατη η εκπόνηση αυτής της εργασίας. Επίσης θα ήθελα να ευχαριστήσω τους συμφοιτητές και τους φίλους για τις εποικοδομητικές συζητήσεις και την ανταλλαγή ιδεών, μα προπαντός τους γονείς μου για την ηθική και υλική συμπαράσταση που μου προσέφεραν όλο αυτό το διάστημα.

6 6 Κεφάλαιο 1 Η Αρχιτεκτονική του TMS320C64x και Περιγραφή του DSK C Εισαγωγή Η ψηφιακή επεξεργασία σήματος (DSP) άρχισε να αναπτύσσεται μετά το 1960 με την εισαγωγή της ψηφιακής τεχνολογίας και έχει γνωρίσει ραγδαία ανάπτυξη τα τελευταία 20 χρόνια. Επικράτησε ως κύρια μέθοδος επεξεργασίας σήματος, αφού τα ψηφιακά συστήματα γίνονται συνεχώς πιο εύκολα στην χρήση, λιγότερο ακριβά και περισσότερο διαθέσιμα. Τέτοιου είδους συστήματα, όπως τα modems υψηλής ταχύτητας, τα κινητά τηλέφωνα, τα audio/video players καθώς και οι ψηφιακές μηχανές και βιντεοκάμερες, έχουν πλέον γίνει αναπόσπαστο μέρος της καθημερινής μας ζωής. Η μελέτη και η ανάπτυξη επεξεργαστών ψηφιακού σήματος (Digital Signal Processors DSPs), αλλά και η ενσωμάτωσή τους σε γενικότερα συστήματα για επεξεργασία ψηφιακού σήματος σε πραγματικό χρόνο, αποτελούν μια πρόκληση για τους επιστήμονες και τους μηχανικούς. Οι DSP επεξεργαστές είναι παρόμοιοι με τους γενικού σκοπού μικροεπεξεργαστές, με την διαφορά ότι είναι βελτιστοποιημένοι όσον αφορά την εκτέλεση πράξεων όπως ο πολλαπλασιασμός και η πρόσθεση.

7 7 Με την διείσδυση των DSPs σε διάφορες εφαρμογές, όπου οι απαιτήσεις για υψηλή ταχύτητα και απόδοση ολοένα και αυξάνονται, καθίσταται αναγκαία, η εξειδίκευση όχι μόνο στην θεωρία της ψηφιακής επεξεργασίας σήματος, αλλά και στις τεχνικές υλοποίησης των DSP συστημάτων πραγματικού χρόνου. Ο Πίνακας 1.1 συνοψίζει μερικά μόνο παραδείγματα εφαρμογών των DSPs. Ηχητικά Συστήματα Κωδικοποίηση - Αποκωδικοποίηση Δημιουργία εφέ Επεξεργασία πολυκάναλου ήχου Speakerphones Στρατιωτικά Συστήματα Επεξεργασία με Radar / Sonar Πλοήγηση Καθοδήγηση πυραύλων Ασφαλείς επικοινωνίες Επεξεργασία εικόνας Βιομηχανικός έλεγχος Έλεγχος οδηγών δίσκων Έλεγχος ρομπότ Έλεγχος κινητήρων Προσβάσεις ασφαλείας Αριθμητικός έλεγχος Επικοινωνίες Modems Κινητά τηλέφωνα Προσαρμοστικοί ισοστασθμιστές PDAs Echo cancellation Γραφικά/Εικόνα Ψηφιακές κάμερες Συμπίεση εικόνας Αναγνώριση προτύπων Machine/Robot vision Animation/ψηφιακοί χάρτες Οργανολογία Ψηφιακά φίλτρα PLLs Ανάλυση φάσματος Transient analysis Εξοπλισμός μετρήσεων Ιατρικά Συστήματα Διαγνωστικός εξοπλισμός Συσκευές ακοής Παρακολούθηση ασθενών Παρακολούθηση εμβρύων Ultra Sound Equipment Αυτοκίνηση Ψηφιακά ράδιο Συστήματα ψυχαγωγίας Active noise and vibration control Ηχητικές εντολές Καταναλωτής Digital answering machines Ψηφιακά video Ψηφιακά ηχητικά συστήματα αναπαραγωγής εγγραφής PDAs Πίνακας 1.1. Μερικές εφαρμογές των DSPs Η Texas Instruments (ΤΙ), μια από τις μεγαλύτερες εταιρείες κατασκευής επεξεργαστών, πλέον καλύπτει το μεγαλύτερο μέρος της παγκόσμιας αγοράς των DSPs. Μια από τις πιο σημαντικές οικογένειες DSP επεξεργαστών που παράγει η TI είναι η οικογένεια TMS320. Η οικογένεια TMS320 μπορεί να διαιρεθεί σε τρεις μεγάλες κατηγόριες επεξεργαστών. Αποτελείται από σταθερής υποδιαστολής (fixed-point) επεξεργαστές (C1x, C2x, C3x, C5x, C54x και C62x), από κινητής υποδιαστολής (floating-point) επεξεργαστές (C3x, C4x και C64x), και πολυεπεξεργαστές (multiprocessors C8x). Οι επεξεργαστές της οικογένειας TMS320 είναι ειδικά σχεδιασμένοι για επεξεργασία σήματος σε πραγματικό χρόνο. Το Σχήμα 1.1 δείχνει την εξέλιξη της οικογένειας TMS320. Με μία επίδοση μέχρι 8000 εκατομμυρίων εντολών το δευτερόλεπτο (MIPS) σε συνδυασμό και με έναν αποδοτικό C compiler, οι επεξεργαστές της οικογένειας TMS320C6000 δίνουν στην αρχιτεκτονική του συστήματος απεριόριστες δυνατότητες. Οι υψηλές επιδόσεις, η ευκολία στη χρήση και το προσιτό κόστος κάνουν την πλατφόρμα των TMS320C6000 επεξεργαστών την ιδανική λύση για εφαρμογές πολλών καναλιών αλλά και πολλών λειτουργιών όπως αυτές που αναφέρθηκαν στον Πίνακα 1.1. Η οικογένεια TMS320C64x (C64x) αποτελείται από 32-bit επεξεργαστές σταθερής υποδιαστολής (fixed point) ενώ η αρχιτεκτονική τους είναι βασισμένη στην 2ης γενιάς VLIW αρχιτεκτονική VelociTI. Ο C64x είναι πολύ χρήσιμος σε ασύρματες εφαρμογές και εφαρμογές επεξεργασίας εικόνας και βίντεο καθώς συνδυάζει την ευελιξία των γρήγορων ελεγκτών και την υπολογιστική ικανότητα των array επεξεργαστών.

8 8 C6x Performance (MIPS/MFLOPS) Multiprocessor DSP C8x Floating Point DSP C4x C3x C54x Lowest power C5x C2xx C2x C1x Fixed Point DSP Time Σχήμα 1.1. Η εξέλιξη της οικογένειας TMS320 Ο C64x μπορεί να εκτελέσει μέχρι και οκτώ εντολές ανά κύκλο ρολογιού. Χρησιμοποιεί την αρχιτεκτονική VelociTI.2, μια υψηλής απόδοσης προηγμένη αρχιτεκτονική που βασίζεται στην αρχιτεκτονική VLIW (Very Long Instruction Word) επιτρέποντας στον επεξεργαστή να χρησιμοποιείται σε περιβάλλον πολυκάναλων και πολυπαραμετρικών εφαρμογών. Η VelociTI.2 αρχιτεκτονική της πλατφόρμας C64x ενσωματώνει ένα ακραίο επίπεδο παράλληλης λειτουργίας των εντολών. Επίσης έχει πολύ λίγους περιορισμούς για την ανάκληση και εκτέλεση των εντολών και την αποθήκευση των δεδομένων. Τα εξελιγμένα χαρακτηριστικά της αρχιτεκτονικής VelociTI.2 είναι : Διαχείριση των εντολών σε όλες τις φάσεις επεξεργασίας ως σύνολα των 8 εντολών Λειτουργία όλων των εντολών υπό συνθήκες Μεταβλητό εύρος εντολών Πλήρως διακλαδιζόμενη διαδικασία pipeline 1.2 Περιγραφή της Αρχιτεκτονικής του TMS320C6416 Ο TMS320C64x (C64x) επεξεργαστής της Texas Instruments έχει δύο σταθερής υποδιαστολής μονοπάτια δεδομένων (data paths), μία μονάδα ελέγχου προγράμματος, έναν ελεγκτή EDMA, εσωτερική (on-chip) μνήμη, καθώς και διασυνδέσεις μνήμης προγράμματος και δεδομένων όπως δείχνει και το Σχήμα 1.2. Τα δύο μονοπάτια δεδομένων, υποστηρίζουν δεδομένα των των 32bit για αριθμητική σταθερής υποδιαστολής. Κάθε μονοπάτι δεδομένων περιλαμβάνει ένα σύνολο από τέσσερις μονάδες εκτέλεσης (.L,.S,.M, και.d), ένα αρχείο καταχωρητών γενικού σκοπού και διαδρόμους για την μετακίνηση δεδομένων μεταξύ μνήμης και καταχωρητών. Ο επεξεργαστής C64x μπορεί να εκτελέσει οκτώ εντολές σε ένα κύκλο ρολογιού, ο οποίος μπορεί να περιέχει δύο πολλαπλασιασμούς 16x16 bit ή τέσσερις πολλαπλασιασμούς 8x8 bit.

9 9 On -Chip memory DMA Program /Data memory Program -adress bus (32 bits) Data path 1 adrress bus (32 bits) To ext. address bus (32) Data path 2 adress bus (32 bits) DMA adress bus (32 bits) Program -data bus (256 bits) Data path 1 data bus (64 bits) Ext. data bus (32) Data path 2 data bus (64 bits) DMA data bus (32 bits). D2.M1.M2.L1.L2.S1.S2 Register file B Register file A. D1 Program controll unit Σχήμα 1.2. Η αρχιτεκτονική του επεξεργαστή C64x Υπάρχουν δυο ανεξάρτητα αρχεία καταχωρητών (Α και Β), κάθε ένα από τα οποία περιέχει 32 καταχωρητές γενικού σκοπού των 32-bit για την αποθήκευση δεδομένων και διευθύνσεων. Ένας δίαυλος διασταύρωσης χρησιμοποιείται για την μεταφορά δεδομένων μεταξύ των δύο μονοπατιών δεδομένων (Α και Β). Εν τούτοις, μόνο ένας δίαυλος διασταύρωσης μπορεί να χρησιμοποιηθεί κάθε φορά. Για τον έλεγχο των λειτουργιών του επεξεργαστή χρησιμοποιούνται οι καταχωρητές ελέγχου. Τα bit κατάστασης (status bits) κάθε μονάδας υποδεικνύουν την ύπαρξη υπερχείλισης ή υποχείλησης, διαίρεσης με το μηδέν, όχι αριθμός κτλ. Η εσωτερική μνήμη του C64x επεξεργαστή στηρίζεται στην τροποποιημένη Harvard αρχιτεκτονική, η οποία παρέχει διαφορετικό χώρο μνήμης για προγράμματα και δεδομένα. Τα δύο μονοπάτια δεδομένων συνδέονται με την μνήμη δεδομένων και κάθε μονοπάτι δεδομένων έχει ένα 32-bit δίαυλο διευθύνσεων και έναν 64-bit δίαυλο δεδομένων. Η μνήμη προγράμματος έχει ένα 32bit δίαυλο διευθύνσεων και έναν 256-bit δίαυλο δεδομένων. Η τελευταία γενιά των επεξεργαστών C64x έχει την δυνατότητα ρύθμισης της εσωτερικής μνήμης ως επιπέδου-1 (level-1 ή L1) και επιπέδου-2 (level -2 ή L2) κρυφή (cache) μνήμη προγράμματος και δεδομένων. Η μόνη διαφορά ανάμεσα στον επεξεργαστή C64x και τον C62x είναι η χρήση 64-bit (αντί 32-bit στον C62x) δίαυλου ανάγνωσης μεταξύ του πυρήνα του C64x και της L1 μνήμης δεδομένων του. H τεχνική του pipeline χρησιμοποιείται εντατικά για να αυξήσει την απόδοση των DSP επεξεργαστών. Με το σπάσιμο μιας εντολής σε διαφορετικές φάσεις λειτουργίας και την

10 10 εκτέλεση αρκετών φάσεων από διαφορετικές εντολές παράλληλα στον ίδιο κύκλο ρολογιού, ο χρόνος που χρειάζεται μια εντολή για να εκτελεστεί μπορεί να μειωθεί. Η διαδικασία του pipeline μεγιστοποιεί την χρήση ανεξάρτητων πόρων του επεξεργαστή σε οποιαδήποτε στιγμή. Η φάση προανάκλησης (pre-fetch ή PF phase) αποθηκεύει την διεύθυνση της εντολής που πρόκειται να ανακληθεί, ενώ η φάση ανάκλησης (fetch ή F phase) καλεί τον λειτουργικό κώδικα της εντολής. Στη φάση αποκωδικοποίησης (decode ή D phase) αποκωδικοποιείται η εντολή που ανακλήθηκε για να προσδιοριστεί ο τύπος προσπέλασης της μνήμης και η διαδικασία ελέγχου του επεξεργαστή. Η διαδικασία του pipeline παρέχει πολύ γρήγορη έξοδο, αλλά χρειάζεται προσοχή στον προγραμματισμό για την αποφυγή pipeline συγκρούσεων (conflicts). Το πρόβλημα αυτό εμφανίζεται όταν διαφορετικές εντολές μοιράζονται ίδιους πόρους στον ίδιο κύκλο ρολογιού. Επιπρόσθετα η ροή του προγράμματος επηρεάζεται από μια ομάδα εντολών που καλούν μια υπορουτίνα. Αυτές οι λειτουργίες επηρεάζουν την διαδικασία του pipeline διότι ο επεξεργαστής πρέπει να αδειάσει (flush out) το τρέχον pipeline ώστε να φορτώσει μία νέα ομάδα εντολών. Ένα σύνολο εντολών μπορεί να χρησιμοποιηθεί για να αποφευχθεί το άδειασμα του pipeline. Αυτές οι εντολές είναι γνωστές ως εντολές καθυστέρησης της διακλάδωσης (delayed branch instructions), οι οποίες επιτρέπουν στις εντολές που τις ακολουθούν να εκτελούνται κανονικά χωρίς την ανάγκη για άδειασμα του pipeline. Ο επεξεργαστής C64x διαθέτει δύο EMIF (External Memory Interface), μια 64 bit (EMIF A) και μια 16 bit (EMIF B). Όταν μια σύγχρονη στατική μνήμη RAM διασυνδέεται σε υψηλή ταχύτητα μέσω ενός DMA ελεγκτή, η κορυφή του bandwidth της εξωτερικής μνήμης είναι περίπου 167 x 106 λέξεις (32-bit) ανά δευτερόλεπτο για έναν επεξεργαστή στα 167 MHz. Άλλη μνήμη που συνδέεται εξωτερικά όπως μια ασύγχρονη στατική μνήμη RAM, υποστηρίζει χαμηλότερο bandwidth. Ο Πίνακας 1.2 συνοψίζει την κρυφή μνήμη (cache) δεδομένων, την κρυφή μνήμη προγράμματος, και την διασύνδεση εξωτερικής μνήμης που είναι διαθέσιμή στους C6xx επεξεργαστές. Επεξεργαστές C6701 C6711 C6712 C6416 Εσωτερική μνήμη Μνήμη Μνήμη Δεδομένων Προγράμματος Περιφερειακά και διασύνδεση εξωτερικής μνήμης 128 KB RAM Ένα DMA 4 καναλιών, ένα 16-bit HPI, δύο McBSPs, δύο χρονιστές και ένα 32-bit EMIF 4 KB 4 KB L1 cache L1 cache 64 KB ενιαία L2 cache 4 KB 4 KB L1 cache L1 cache 64 KB ενιαία L2 cache 16KB 16KB L1 cache L1 cache 1024 KB L2 SRAM Ένα EDMA 16 καναλιών, ένα 16-bit HPI, δύο McBSPs, δύο χρονιστές και ένα 32-bit EMIF Ένα EDMA 16 καναλιών, δύο McBSPs, δύο χρονιστές και ένα 16-bit EMIF Ένα EDMA 64 καναλιών, ένα 16-bit HPI, τρεις McBSPs, δύο χρονιστές και δύο EMIF, 1-16bit, 1-64bit Πίνακας 1.2. Η Εσωτερική μνήμη και τα περιφερειακά των επεξεργαστών C6xx. Τα προσπελάσιμα περιφερειακά διαμορφώνονται μέσω ενός συνόλου από χαρτογραφημένους καταχωρητές ελέγχου. Ο ελεγκτής του περιφερειακού διαύλου εκτελεί το ρόλο διαιτητή για τις

11 11 προσβάσεις στα περιφερειακά του ολοκληρωμένου. EMIF L1P Cache McBSPs C67x CPU Instruction Fetch Instruction Dispatch Instruction Decode Timers Enhanced DMA Controller L2 Memory Data Path A A Register File Data Path B B Register File L1 S1 M1 D1 D2 M2 S2 L2 HPI Control Registers Control Logic Test In-Circuit Emulation Interrupt Control Interrupt Selector Power Down Logic L1D Cache Boot Configuration PLL Σχήμα 1.3. Το Block διάγραμμα του επεξεργαστή C64x. Η διάταξη της μνήμης προγράμματος διασυνδέεται μέσω εξωτερικών σημάτων μόνο και η αυτόματη φόρτωση του λειτουργικού συστήματος εκτελείται άμεσα από τη CPU. Τα βασικά περιφερειακά που είναι διαθέσιμα σε όλους τους επεξεργαστές της οικογένειας C671x παρουσιάζονται στον Πίνακα 1.3, ενώ στο Σχήμα 1.3 παρουσιάζεται το block διάγραμμα του επεξεργαστή C671x. Περιφερειακά Ελεγκτής βελτιωμένης άμεσης πρόσβασης μνήμης (EDMA) Θύρας υποδοχής εξωτερικού επεξεργαστή (HPI) Διασύνδεση εξωτερικής μνήμης (EMIF) Διάταξη αυτόματης φόρτωσης του λειτουργικού συστήματος Πολυκάναλες προσωρινής αποθήκευσης σειριακές θύρες (McBSPs) Επιλογέας διακοπών 32-bit χρονιστές (timers) Λογική μείωσης της ενέργειας C671x Υ Υ 1 Υ 2 Υ 2 Υ Πίνακας 1.3. TMS320C671x περιφερειακά Η Κεντρική Μονάδα Επεξεργασίας (CPU) του TMS320C64x Όπως φαίνεται στο Σχήμα 1.4, η CPU του C64x επεξεργαστή περιλαμβάνει: Μονάδα Ελέγχου Προγραμμάτων (Program Control Unit) Μονάδα ανάκλησης προγραμμάτων (program fetch unit). Μονάδα ανάθεσης εντολών (instruction dispatch unit). Μονάδα αποκωδικοποίησης εντολών (instruction decode unit). Μονάδες εκτέλεσης προγραμμάτων (program execute units). Δύο μονοπάτια δεδομένων (Data Paths), κάθε ένα με τέσσερις λειτουργικές μονάδες.

12 12 64 καταχωρητές γενικού σκοπού των 32-bit. Καταχωρητές ελέγχου. Έλεγχος λογικής. Λογική δοκιμής, εξομοίωσης και διακοπών. Program Control Unit - Program Fetch - Instruction dispatch - Instruction decode Data Path 1 Test, Emulation, Control and Interrupt Logics Data Path 2 Control Registers Σχήμα 1.4. Η CPU του C64x Οι μονάδες ανάκλησης προγραμμάτων, ανάθεσης και αποκωδικοποίησης εντολών μπορούν να παραδώσουν ως και 8 εντολές των 32-bit στη λειτουργική μονάδα σε κάθε κύκλο του ρολογιού της CPU. Η επεξεργασία των εντολών στον C64x λαμβάνει χώρα σε ένα από τα δύο μονοπάτια δεδομένων (A και Β), κάθε ένα από τα οποία περιέχει τέσσερις λειτουργικές μονάδες (.L,.S,.M και.d) και 32 γενικής χρήσεως καταχωρητές των 32-bit. Μονάδα Ανάκλησης Προγραμμάτων (Program Fetch Unit) Η ανάκληση ενός πακέτου εντολών (fetch packet), το οποίο αποτελείται από ένα σύνολο 8 εντολών, απαιτεί 4 φάσεις : Φάση PG : Η CPU παράγει την διεύθυνση ανάκλησης του πακέτου Φάση PS : Η CPU στέλνει την διεύθυνση στην μνήμη Φάση PW : Η CPU αναμένει, μέχρι τα δεδομένα να ετοιμαστούν ΦάσηPR : Η CPU διαβάζει τον κώδικα λειτουργίας (opcode) Η διεύθυνση του προγράμματος της πρώτης εντολής του πακέτου παράγεται στην φάση PG (κύκλος n) και στέλνεται στην μνήμη προγράμματος στην φάση PS (κύκλος n+1). Η CPU αναμένει τις εντολές (και τις οκτώ) στην μνήμη προγράμματος, να γίνουν διαθέσιμες (φάση PW). Αυτή η διαδικασία ολοκληρώνεται σε ένα κύκλο ρολογιού αν το πρόγραμμα βρίσκεται σε εσωτερική μνήμη ή σε οκτώ κύκλους ρολογιού αν το πρόγραμμα βρίσκεται σε εξωτερική μνήμη χωρίς καταστάσεις αναμονής (wait states). Στην περίπτωση όπου η εξωτερική μνήμη έχει m καταστάσεις αναμονής (wait states) η παραπάνω διαδικασία ολοκληρώνεται σε (8+m) κύκλους. Στην τελευταία φάση, η οποία είναι η φάση PR, η CPU λαμβάνει το πακέτο εντολών. Η παραπάνω διαδικασία παρουσιάζεται στο Σχήμα 1.5.

13 13 PR (1 cycle) CPU PG (1 cycle) Memory PS (1 cycle) PW Σχήμα 1.5. Οι φάσεις ανάκλησης προγραμμάτων Μονάδα Ανάθεσης Εντολών (Instruction Dispatch Unit) PR* DP (1 cycle) DC (1 cycle) [8 units] PG Αν η μνήμη είναι εσωτερική ανακαλούνται ταυτόχρονα 8 εντολές σε ένα κύκλο ρολογιού, ενώ αν η μνήμη είναι εξωτερική χωρίς καταστάσεις αναμονής ανακαλείται μια εντολή σε κάθε κύκλο ρολογιού Memory PS PW Σχήμα 1.6. Η λειτουργία της μονάδας ανάθεσης εντολών (instruction dispatch unit) Όπως έχει ήδη αναφερθεί ο C64x έχει οκτώ λειτουργικές μονάδες και κάθε μία από αυτές μπορεί να εκτελεί μόνο κάποιες συγκεκριμένες εντολές. Έτσι οι εντολές αυτές πρέπει να ανατίθενται στις κατάλληλες μονάδες. Αυτό επιτυγχάνεται με την μονάδα ανάθεσης εντολών (instruction dispatch unit), η λειτουργία της οποίας παρουσιάζεται στο Σχήμα 1.6. Μονάδα Αποκωδικοποίησης Εντολών (Instruction Decode Unit) Ο κώδικας λειτουργίας της εντολής αποκωδικοποιείται στην μονάδα αποκωδικοποίησης εντολών (instruction decode unit). Η μονάδα αποκωδικοποίησης εντολών (DC) φαίνεται στο Σχήμα 1.6 ως ξεχωριστή μονάδα, ωστόσο η πραγματική διαδικασία εκτελείται από τις λειτουργικές μονάδες. Μονάδες Εκτέλεσης Προγραμμάτων (Program Execute Units) Στις μονάδες εκτέλεσης προγραμμάτων (τέσσερις μονάδες σε κάθε μονοπάτι δεδομένων), οι εντολές τελικά εκτελούνται. Στην διαδικασία του pipeline της αρχιτεκτονικής κινητής υποδιαστολής η εκτέλεση των προγραμμάτων γίνεται σε 10 φάσεις, σε αντίθεση με την αρχιτεκτονική σταθερής υποδιαστολής όπου απαιτούνται μόνο 5 φάσεις. Διαφορετικοί τύποι

14 14 εντολών απαιτούν και διαφορετικό αριθμό φάσεων για την ολοκλήρωση της εκτέλεσής τους. Στο Σχήμα 1.7 παρουσιάζονται οι φάσεις της διαδικασία του pipeline κινητής υποδιαστολής, ενώ στο Σχήμα 1.8 παρουσιάζεται συνοπτικά την διαδικασία του pipeline. Fetch PG PS Decode PW PG DP Execute DC E1 E2 E3 E4 E5 E6 E7 E8 E9 E10 Σχήμα 1.7. Οι φάσεις της διαδικασίας του pipeline σταθερής υποδιαστολής Clock Cycles Fetch Packet n PG PS PW PR DP DC E1 E2 E3 E4 E5 E6 E7 E8 E9 E10 PG PS PW PR DP DC E1 E2 E3 E4 E5 E6 E7 E8 E9 E10 PG PS PW PR DP DC E1 E2 E3 E4 E5 E6 E7 E8 E9 PG PS PW PR DP DC E1 E2 E3 E4 E5 E6 E7 E8 PG PS PW PR DP DC E1 E2 E3 E4 E5 E6 E7 PG PS PW PR DP DC E1 E2 E3 E4 E5 E6 PG PS PW PR DP DC E1 E2 E3 E4 E5 PG PS PW PR DP DC E1 E2 E3 E4 PG PS PW PR DP DC E1 E2 E3 PG PS PW PR DP DC E1 E2 PG PS PW PR DP DC E1 n+1 n+2 n+3 n+4 n+5 n+6 n+7 n+8 n+9 n Σχήμα 1.8. H διαδικασία του pipeline Μονάδες.L Οι μονάδες L1 και L2 είναι αριθμητικές και λογικές μονάδες (ALUs Arithmetic and Logic Units) των 40-bit, οι οποίες χρησιμεύουν σε : Πράξεις αριθμητικής και σύγκρισης των 32-bit και 40-bit. Λογικές πράξεις των 32-bit. Πράξεις κανονικοποιήσης και καταμέτρησης bit. Πράξεις αριθμητικής κορεσμού (saturation) των 32-bit και 40-bit. Μονάδες.Μ Υπάρχουν δύο μονάδες πολλαπλασιασμού, η.m1 και η.m2. Οι μονάδες αυτές μπορούν να εκτελούν 2 ακέραιους πολλαπλασιασμούς των 16-bit και 4 των 8-bit ανα κύκλο ρολογιού. Οι μονάδες πολλαπλασιασμού υποστηρίζουν τον πολλαπλασιασμό όλων των τύπων δεδομένων. Ακόμη υποστηρίζουν το πολλαπλασιασμό δεδομένων διαφορετικών τύπων (πχ τον πολλαπλασιασμό δεδομένων των 16-bit με δεδομένα των 32-bit). Επίσης οι μονάδες πολλαπλασιασμού μπορούν να εκτελούν πολλαπλασιασμούς με αριστερή ολίσθηση (left shift) ή κορεσμό (saturation).

15 15 Μονάδες.S Οι μονάδες.s1 και.s2 περιλαμβάνουν ακέραιες ALUs των 32-bit και διατάξεις ολίσθησης (shifters) των 40-bit. Οι μονάδες αυτές μπορούν να χρησιμοποιηθούν για : Ολισθήσεις των 32- και 40-bit. Αριθμητικές, λογικές πράξεις και πράξεις πεδίου (bit field) των 32-bit. Διακλαδώσεις (μόνο η.s2 όταν χρησιμοποιείται καταχωρητής). Μεταφορές δεδομένων από και προς τους καταχωρητές ελέγχου (μόνο.s2) Παραγωγή/δημιουργία σταθερών Μονάδες.D Οι μονάδες.d1 και.d2 χρησιμοποιούνται για την φόρτωση και την αποθήκευση δεδομένων όπως: Φόρτωση και αποθήκευση με ολίσθηση σταθεράς των 5-bit Φόρτωση και αποθήκευση με ολίσθηση σταθεράς των 15-bit (μόνο η.d2) καθώς επίσης και για : Πράξεις πρόσθεσης και αφαίρεσης των 32-bit Υπολογισμό γραμμικής και κυκλικής διευθυνσιοδότησης Μονοπάτια Δεδομένων (Data Paths) Η CPU του C64x αποτελείται από δύο blocks τα οποία είναι γνωστά ως μονοπάτι δεομένων 1 (data path 1) και μονοπάτι δεδομένων 2 (data path 2). Κάθε μονοπάτι δεδομένων αποτελείται από τα ακόλουθα : Ένα γενικής χρήσεως αρχείο καταχωρητών (Α ή Β). Τέσσερις λειτουργικές μονάδες (.L1,.S1,.M1,.D1 ή.l2,.s2,.m2,.d2). Ένα δίαυλο για την φόρτωση δεδομένων από τη μνήμη (LD1 ή LD2). Ένα δίαυλο για την αποθήκευση των δεδομένων στην μνήμη (ST1 ή ST2). Ένα δίαυλο διευθύνσεων (DA1 ή DA2). Ένα δίαυλο διασταύρωσης για την μεταφορά δεδομένων από το αρχείο καταχωρητών του ενός μονοπατιού δεδομένων στο άλλο μονοπάτι δεδομένων (1Χ ή 2Χ). Πολλαπλούς διαύλους για: Επικοινωνία μεταξύ του κάθε μονοπατιού δεδομένων και της μνήμης Επικοινωνία μεταξύ των δύο μονοπατιών δεδομένων Επικοινωνία στο εσωτερικό του κάθε μονοπατιού δεδομένων Στο Σχήμα 1.9 παρουσιάζονται τα μονοπάτια δεδομένων και τα αρχεία καταχωρητών της CPU του C64x. Όπως παρουσιάζεται στο Σχήμα 1.9, στο αρχείο καταχωρητών γενικής χρήσεως Α μπορούν να εγγραφούν ή να διαβαστούν δεδομένα, από τις λειτουργικές μονάδες.l1,.s1,.m1 και.d1, μέσω των διαύλων που υποδεικνύονται από τα βέλη. Το ίδιο ισχύει και για το αρχείο καταχωρητών

16 16 γενικής χρήσεως Β όπου όλοι οι καταχωρητές του μπορούν να προσπελαστούν από τις λειτουργικές μονάδες.l2,.s2,.m2 και.d2. Οι δίαυλοι της CPU μπορούν να χωριστούν σε δύο τύπους, στους δίαυλους δεδομένων και στους διαύλους διευθύνσεων. Οι δίαυλοι δεδομένων χρησιμοποιούνται για την μεταφορά δεδομένων είτε μεταξύ της μνήμης και των καταχωρητών, είτε μεταξύ των καταχωρητών και των λειτουργικών μονάδων, ενώ οι δίαυλοι διευθύνσεων χρησιμοποιούνται για την αποστολή των διευθύνσεων από τις μονάδες.d προς την μνήμη. Δίαυλοι Διασταύρωσης των Αρχείων Καταχωρητών (Register File Cross Paths) Τα αρχεία καταχωρητών συνδέονται με τις λειτουργικές μονάδες του άλλου μονοπατιού δεδομένων μέσω των διαύλων διασταύρωσης 1x και 2x. Αυτοί οι δίαυλοι διασταύρωσης επιτρέπουν στις λειτουργικές μονάδες του ενός μονοπατιού δεδομένων να έχουν πρόσβαση σε έναν τελεστή των 32- bit από το αρχείο καταχωρητών του άλλου μονοπατιού δεδομένων. O δίαυλος διασταύρωσης 1x επιτρέπει στις λειτουργικές μονάδες από το μονοπάτι δεδομένων Α να διαβάσουν δεδομένα από το αρχείο καταχωρητών Β και αντίστοιχα ο δίαυλος διασταύρωσης 2x επιτρέπει στις λειτουργικές μονάδες από το μονοπάτι δεδομένων B να διαβάσουν δεδομένα από το αρχείο καταχωρητών A. Στον C64x έξι εκ των οκτώ λειτουργικών μονάδων έχουν πρόσβαση στο αρχείο καταχωρητών της αντίθετης πλευράς μέσω ενός διαύλου διασταύρωσης. Οι είσοδοι src2 των μονάδων.m1,.m2,.s1 και.s2 είναι επιλέξιμες μεταξύ των δύο αρχείων καταχωρητών. Στην περίπτωση των μονάδων.l1 και.l2, οι είσοδοι src1 και src2 είναι επίσης επιλέξιμες μεταξύ των δύο αρχείων καταχωρητών. Οι διευθύνσεις που παράγονται από την μονάδες.d1 και.d2 μπορούν να σταλούν στην μνήμη είτε μέσω του διαύλου διευθύνσεων DA1 είτε μέσω του δίαυλου διευθύνσεων DA2, όπως παρουσιάζεται στο Σχήμα 1.9.

17 17 src1.l1 src2 dst long dst long src LD1 32 MSB ST long src long dst dst.s1 src Register File A (A0-A15) src2 dst.m1 src1 src2 LD1 32 LSB dst DA1.D1 src1 src2 2x Data path A 1x Data path B src2 DA2.D2 src1 dst LD2 32 LSB src2.m2 src1 dst src2.s2 LD2 32 MSB ST2 src1 dst long dst long src Register File B (B0-B15) long src long dst dst 8 8.L2 src2 src1 Control Register File Σχήμα 1.9. Μονοπάτια δεδομένων του C64x Δίαυλοι Διασταύρωσης Διευθύνσεων (Address Cross Paths) Το Σχήμα 1.10 παρουσιάζει τους δίαυλους διασταύρωσης διευθύνσεων. Εδώ επίσης μπαίνουν κάποιοι περιορισμοί, αφού υπάρχουν μόνο δύο δίαυλοι διασταύρωσης διευθύνσεων για κάθε εκτελέσιμο πακέτο, οι οποίοι είναι: Μόνο ένας δίαυλους διασταύρωσης διευθύνσεων επιτρέπεται ανά κατεύθυνση και ανά εκτελέσιμο πακέτο.

18 18 Όταν χρησιμοποιείται ένας δίαυλος διασταύρωσης διευθύνσεων ο καταχωρητής προορισμού για εντολές φόρτωσης (LD) και ο καταχωρητής πηγής για εντολές αποθήκευσης (ST), πρέπει να προέρχεται από το αρχείων καταχωρητών του μονοπατιού δεδομένων στο οποίο ανήκει η.d μονάδα που χρησιμοποιείται. Αν και οι δύο.d μονάδες χρησιμοποιούνται, τότε πρέπει να χρησιμοποιηθούν ή και οι δύο δίαυλοι διασταύρωσης διευθύνσεων ή κανένας από τους δύο. A1 Register file A DA1.D1 DA2.D2 A0 Data path A Data path B B0 Register file B B1 Σχήμα Δίαυλοι διασταύρωσης διευθύνσεων Δίαυλοι Διευθύνσεων (Address Paths) Οι δίαυλοι διευθύνσεων DA1 και DA2 συνδέονται με τις μονάδες.d και των δύο μονοπατιών δεδομένων. Το γεγονός αυτό επιτρέπει την μεταφορά δεδομένων από την μνήμη προς οποιοδήποτε καταχωρητή και αντίστροφα, ανεξάρτητα από το μονοπάτι δεδομένων που ανήκει η.d μονάδα που δημιούργησε την διεύθυνση των δεδομένων. Οι δίαυλοι διευθύνσεων DA1 και DA2 και οι σχετικοί με αυτούς δίαυλοι δεδομένων προσδιορίζονται ως T1 και T2 αντίστοιχα. Για παράδειγμα ο T1 αποτελείται από τον DA1 δίαυλο διευθύνσεων και τους LD1 και ST1 δίαυλους δεδομένων. Στον C64x, ο δίαυλος φόρτωσης δεδομένων LD1 (ή LD2) αποτελείται από τον δίαυλο φόρτωσης δεδομένων LD1a (ή LD2a) των 32bit και τον δίαυλος φόρτωσης δεδομένων LD1b (ή LD2b) των 32-bit ώστε να υποστηρίζεται η φόρτωση δεδομένων των 64-bit. Οι προσδιορισμοί T1 και T2 εμφανίζονται στα πεδία των λειτουργικών μονάδων των εντολών φόρτωσης και αποθήκευσης (πχ LDW.D1T2 *A0[3],B1). Περίπτωση Οι μονάδες.s και.l του ίδιου μονοπατιού δεδομένων διαβάζουν τελεστές μεγάλου μήκους Οι μονάδες.s και.l του ίδιου μονοπατιού δεδομένων γράφουν ένα μεγάλου μήκους αποτέλεσμα Μια εντολή αποθήκευσης διαβάζει τα προς αποθήκευση δεδομένα από το μονοπάτι δεδομένων που και η μονάδα.s διαβάζει ένα τελεστή μεγάλου μήκους. Μια εντολή αποθήκευσης (εκτός της STDW) διαβάζει τα προς αποθήκευση δεδομένα από το μονοπάτι δεδομένων που και η μονάδα.l διαβάζει ένα τελεστή μεγάλου μήκους. Η εντολή LDDW γράφει τα δεδομένα που διάβασε από την μνήμη στο μονοπάτι δεδομένων που και η μονάδα.s γράφει ένα μεγάλου μήκους αποτέλεσμα Η εντολή LDDW γράφει τα δεδομένα που διάβασε από την μνήμη στο μονοπάτι δεδομένων που και η μονάδα.l γράφει ένα μεγάλου μήκους αποτέλεσμα Πίνακας 1.4. Οι περιορισμοί των δίαυλων διασταύρωσης του C64x C64x Σύγκρουση Σύγκρουση Σύγκρουση Σύγκρουση Σύγκρουση Σύγκρουση

19 19 Καταχωρητές Ελέγχου Ο C64x διαθέτει δεκατρείς καταχωρητές ελέγχου που φαίνονται στον Πίνακα 1.5. Κάθε καταχωρητής ελέγχου προσεγγίζεται από την εντολή MVC. Στον C64x οι καταχωρητές FADCR, FAUCR και FMCR είναι καταχωρητές διαμόρφωσης και χρησιμοποιούνται για την υποστήριξη εντολών κινητής υποδιαστολής. Οι καταχωρητές διαμόρφωσης συγκεκριμε-νοποιούν τον επιθυμητό τρόπο στρογγυλοποίησης των πράξεων κινητής υποδιαστολής που εκτελούν οι μονάδες.l,.s και.m. Προειδοποιούν εάν είσοδοι src1 και src2 μιας λειτουργικής μονάδας δεν είναι αριθμοί (NaN Not a Number) ή μη νορμαλισμένοι αριθμοί και εάν το αποτέλεσμα υπερχειλίζει, υποχειλίζει, είναι ανακριβές, άπειρο ή άκυρο. Επίσης προειδοποιούν εάν εκτελέστηκε διαίρεση με μηδενικό παρανομαστή, ή εάν επιχειρήθηκε να γίνει μία σύγκριση με NaN. Συντόμευση Όνομα καταχωρητή AMR Addressing Mode Register CSR Control Status Register IFR ISR ICR IER Interrupt Flag Register Interrupt Set Register Interrupt Clear Register Interrupt Enable Register Interrupt Service Table Pointer ISTP IRP NRP PCE1 FADCR FAUCR FMCR Interrupt Return Pointer Non maskable interrupt Return Pointer Program Counter, E1 phase Floating point adder configuration register Floating point auxiliary configuration register Floating point myltiplier configuration register Περιγραφή Διευκρινίζει αν θα χρησιμοποιηθεί γραμμική ή κυκλική διευθυνσιοδότηση για κάθε έναν από τους 8 καταχωρητές, επίσης περιέχει μεγέθη για την κυκλική διευθυνσιοδότηση. Περιέχει τα bit ελέγχου και κατάστασης. Αυτός περιέχει το bit γενικής ενεργοποίησης-απενεργοποίησης των διακοπών. Δείχνει την κατάσταση των διακοπών. Επιτρέπει χειροκίνητα την τοποθέτηση διακοπών Επιτρέπει χειροκίνητα την εκκαθάριση διακοπών Επιτρέπει την ενεργοποίηση ή όχι των διακοπών. Δείχνει στην αρχή του πίνακα εξυπηρέτησης διακοπών. Δείχνει την διεύθυνση που θα χρησιμοποιηθεί κατά την επιστροφή από μια εμποδιζόμενη (maskable) διακοπή. Δείχνει την διεύθυνση που θα χρησιμοποιηθεί κατά την επιστροφή από μια μη εμποδιζόμενη (non maskable) διακοπή. Περιέχει τη διεύθυνση του πακέτου που είναι στο στάδιο Ε1 της διαδικασίας του pipeline. Προσδιορίζει τον τρόπο υποχείλισης, στρογγυλοποίησης, τους NaNs και άλλες εξαιρέσεις για τη μονάδα.s. Προσδιορίζει τον τρόπο υποχείλισης, στρογγυλοποίησης, τους NaNs και άλλες εξαιρέσεις για τη μονάδα.s. Προσδιορίζει τον τρόπο υποχείλισης, στρογγυλοποίησης, τους NaNs και άλλες εξαιρέσεις για τη μονάδα.m. Πίνακας 1.5. Οι καταχωρητές ελέγχου του C64x Αρχεία Καταχωρητών Γενικής Χρήσης Ο C64x έχει δύο αρχεία καταχωρητών γενικής χρήσης (Α και Β) στα μονοπάτια δεδομένων, όπου κάθε ένα από αυτά τα αρχεία περιέχει 32 καταχωρητές των 32-bit (A0-A31 για το αρχείο Α και B0-B31 για το αρχείο Β). Οι καταχωρητές γενικής χρήσης μπορούν να χρησιμοποιηθούν για δεδομένα, δείκτες διευθύνσεων ή καταχωρητές περιπτώσεων. Τα αρχεία καταχωρητών γενικής χρήσης του C64x υποστηρίζουν δεδομένα των 32-bit. Για την διαχείριση δεδομένων που αναπαρίστανται με περισσότερα από 32-bit όπως αριθμοί κινητής υποδιαστολής των 40-bit και των 64-bit, χρησιμοποιούνται ζευγάρια καταχωρητών. Σε αυτά τα 32 λιγότερο σημαντικά bit των δεδομένων αποθηκεύονται σε έναν καταχωρητή με άρτια αρίθμηση και τα υπόλοιπα 8 ή 32 περισσότερο σημαντικά bit αποθηκεύονται στον επόμενο καταχωρητή με περιττή αρίθμηση. Πακέτα δεδομένων των 32-bit που περιέχουν 8-bit ή 16-bit δεδομένα αποθηκεύονται σε ένα καταχωρητή των 32-bit ως τέσσερις τιμές των 8-bit ή δύο τιμές των 16-bit. Πακέτα δεδομένων των 64-bit που περιέχουν 16-bit δεδομένα αποθηκεύονται σε ένα ζευγάρι καταχωρητών ως τέσσερις

20 20 τιμές των 16-bit. Υπάρχουν δεκαέξι έγκυρα ζευγάρια καταχωρητών για 40-bit και 64-bit δεδομένα στον πυρήνα του C64x. Ένα ζευγάρι καταχωρητών προσδιορίζεται με μια άνω και κάτω τελεία μεταξύ των ονομάτων των καταχωρητών, γράφοντας όμως πρώτα πάντα τον καταχωρητή με την περιττή αρίθμηση. Ο Πίνακας 1.6 δείχνει τα έγκυρα ζευγάρια καταχωρητών του C64x. Αρχεία καταχωρητών C64x Α Α1:Α0 Α3:Α2 Α5:Α4 Α7:Α6 Α9:Α8 Α11:Α10 Α13:Α12 Α15:Α14 Α17:Α16 Α19:Α18 Α21:Α20 Α23:Α22 Α25:Α24 Α27:Α26 Α29:Α28 Α31:Α30 Β Β1:Β0 Β3:Β2 Β5:Β4 Β7:Β6 Β9:Β8 Β11:Β10 Β13:Β12 Β15:Β14 B17:Α16 B19:B18 B21:B20 B23:B22 B25:B24 B27:B26 B29:B28 B31:B30 Πίνακας 1.6. Έγκυρα ζευγάρια καταχωρητών του C64x H Μνήμη του TMS320C64x Όπως αναφέρθηκε και στην εισαγωγή, η μνήμη του C64x στηρίζεται στην τροποποιημένη Harvard αρχιτεκτονική, η οποία παρέχει διαφορετικό χώρο μνήμης για προγράμματα και δεδομένα. Ο C64x διαθέτει εσωτερική μνήμη που χωρίζεται σε δύο επίπεδα (Level 1 και Level 2). Η εσωτερική μνήμη του C64x χρησιμοποιεί μια δύο επιπέδων αρχιτεκτονική κρυφής μνήμης. H μνήμη του πρώτου επιπέδου L1 (Level 1) αποτελείται από δύο κρυφές (cache) μνήμες L1 των 16 Κbytes, όπου η μια χρησιμοποιείται μόνο για προγράμματα (L1P) και η άλλη μόνο για δεδομένα (L2D). Οι κρυφές μνήμες του πρώτου επιπέδου τροφοδοτούνται από μία ενοποιημένη μνήμη δεύτερου επιπέδου (L2) του 1 Μbytes, η οποία μπορεί να ρυθμιστεί είτε ως κρυφή μνήμη, είτε ως SRAM, ή ως ένας συνδυασμός των προηγουμένων. Η εσωτερική μνήμη SRAM και L2 του C64x χρησιμοποιείται για προγράμματα και για δεδομένα. Οι εσωτερικές κρυφές μνήμες του πρώτου επιπέδου δεν περιλαμβάνονται στο χάρτη μνήμης αλλά είναι διαθέσιμες συνεχώς. Οι L1 μνήμες είναι προσπελάσιμες μόνο από τη CPU. Ο ελεγκτής της μνήμης L1P διασυνδέει τη CPU με την L1P μέσω ενός δίαυλου εύρους 256-bit που επιτρέπει την ταυτόχρονη εκτέλεση οκτώ εντολών των 32-bit για μέγιστη απόδοση. Ο ελεγκτής της μνήμης L1D διασυνδέει την CPU και την L1D. Ο ελεγκτής της μνήμης L1D επιτρέπει ταυτόχρονη πρόσβαση και από τα δύο μονοπάτια δεδομένων της CPU. Στην περίπτωση όπου δεν είναι διαθέσιμος κάποιος από τους L1P ή L1D ελεγκτές η αίτηση μεταφέρεται στον ελεγκτή της μνήμης L2. Ο L2 ελεγκτής διευκολύνει τις παρακάτω λειτουργίες: Προσπέλαση της εσωτερικής μνήμης από την CPU ή τον EDMA Προσπέλαση των EMIF από την CPU Προσπέλαση των περιφερειακών από την CPU

21 21 Αποστολή αιτήσεων στις EMIF όταν υπάρχει έλλειψη δεδομένων στην L2 μνήμη Χάρτης Μνήμης Η εσωτερική μνήμη τοποθετείται πάντα στην διεύθυνση 0 και μπορεί να χρησιμοποιηθεί ως μνήμη προγράμματος ή δεδομένων. Οι εξωτερικοί καταχωρητές για τις κοινές περιφερειακές συσκευές τοποθετούνται στις ίδιες HEX περιοχές διευθύνσεων. Οι περιοχές διευθύνσεων της εξωτερικής μνήμης για διατάξεις συμβατές με τον C64x, αρχίζουν από την διεύθυνση 0x6000_0000.Τα παραπάνω συνοψίζονται στην Σχήμα Σχήμα Χάρτης μνήμης του TMS320C64x

22 22 snoop address Cache RAM 4K bytes data L1 program cache controller RAM 64K bytes programaddress address program data Program fetch L2 cache controller C67x CPU Data path A ST2 store data 32 LD2 load data 64 DA2 address LD1 load data ST1 store data DA1 address EDMA 64 Data path B address Cache RAM 4K bytes 64 L1 data cache controller data data snoop address Σχήμα Διασύνδεση της εσωτερικής μνήμης με την CPU του C64x Η εξωτερική μνήμη (32-bit) που μπορεί να διασυνδεθεί με τον C64x επεξεργαστή είναι SDRAM ή SBSRAM ή SRAM ή άλλες ασύγχρονες μνήμες. Επομένως ο C64x επεξεργαστής καλύπτει ένα μεγάλο πεδίο απαιτήσεων σε εξωτερική μνήμη αλλά και σε απόδοση του συστήματος. Στο Σχήμα 1.12 παρουσιάζεται η διασύνδεση εσωτερικής μνήμης με την CPU του C64x επεξεργαστή. Μέθοδοι Διευθυνσιοδότησης Οι μέθοδοι διευθυνσιοδότησης καθορίζουν τους τρόπους με τους οποίους γίνεται η πρόσβαση στην μνήμη, όπως για παράδειγμα η έμμεση ανάκληση ενός τελεστή από μία θέση μνήμης. Υπάρχουν δύο μέθοδοι διευθυνσιοδότησης : Γραμμική διευθυνσιοδότηση (Linear addressing mode) Άμεση Διευθυνσιοδότηση (Direct addressing mode) Έμμεση Διευθυνσιοδότηση (Indirect addressing mode) Απευθείας Διευθυνσιοδότηση (Immediate addressing mode) Κυκλική διευθυνσιοδότηση (Circular addressing mode) Οι κυριότερες μέθοδοι διευθυνσιοδότησης είναι η έμμεση και η κυκλική διευθυνσιοδότηση. 1.3 Περιγραφή του DSK C6416 Το DSK C6416 που παρουσιάζεται στο Σχήμα 1.13 είναι μια ολοκληρωμένη αναπτυξιακή πλατφόρμα που σχεδιάστηκε και κατασκευάστηκε από την Spectrum Digital και βασίζεται στον

23 23 TMS320C6416 DSP της Texas Instruments (TI). Με το DSK C6416 ο χρήστης μπορεί να ελέγξει και να αναπτύξει εφαρμογές για του DSPs της οικογένειας C64x της TI. Σχήμα Η αναπτυξιακή πλατφόρμα DSK C6416 της Spectrum Digital Το DSK C6416 αποτελείται κυρίως από : Τον DSP TMS320C6416 της TI που λειτουργεί στα 720 MHz. Τον στερεοφωνικό κωδικοποιητή αποκωδικοποιητή AIC 23 της TI. Μια SDRAM μνήμη των 16 MBytes. Μια Flash μνήμη των 512 Kbytes. Τέσσερις φωτοδιόδους (Leds) και τέσσερις διακόπτες (DIP Switches). Οι φωτοδίοδοι και οι διακόπτες είναι προσβάσιμοι από τον χρήστη προγραμματιστικά. Ένα CPLD στο οποίο έχουν διαμορφωθεί τέσσερις χαρτογραφημένοι καταχωρητές για τον προγραμματιστικό έλεγχο ορισμένων χαρακτηριστικών του DSK. Τέσσερις διακόπτες ελέγχου μέσω των οποίων μπορεί να ρυθμιστεί ο τρόπος εκκίνησης του DSK Τρεις συνδετήρες επέκτασης (expansion connectors) για την υποστήριξη διάφορων daughter cards. Ένα ενσωματωμένο JTAG προσομοιωτή που προσεγγίζεται μέσω μιας USB θύρας. Επίσης υποστηρίζεται η χρησιμοποίηση ενός εξωτερικού προσομοιωτή (XDS 510 ή XDS 560). Μια υποδοχή τροφοδοσίας (5V) Περιγραφή Ο DSP (TMS320C6416) που περιέχει το DSK C6416 διασυνδέεται με τα περιφερειακά του

24 24 DSK μέσω του 32-bit EMIF (External Memory Interface) όπως φαίνεται στο Σχήμα 1.14, που παρουσιάζεται το block διάγραμμα του DSK C6416. Μέσω του ίδιου διαύλου συνδέονται με τον EMIF, η SDRAM μνήμη, η Flash μνήμη και το CPLD. Επίσης τα σήματα του EMIF μέσω του παραπάνω δίαυλου μεταφέρονται στον συνδετήρα επέκτασης μνήμης (Memory Expansion Connector), για την σύνδεση κάποιας daughter card. Σχήμα Το block διάγραμμα της αναπτυξιακής πλατφόρμας DSK C6416 Μέσω του στερεοφωνικού κωδικοποιητή αποκωδικοποιητή AIC23 και των τεσσάρων υποδοχών ακουστικού σήματος των 3.5 mm (MIC IN, LINE IN, LINE OUT και HP OUT) είναι εφικτή η διαχείριση και η επεξεργασία ακουστικών σημάτων με το DSK C6416. Μέσω του στερεοφωνικού κωδικοποιητή αποκωδικοποιητή επιλέγεται ως ενεργή είσοδο το MIC IN ή το LINE IN. Η αναλογική έξοδος οδηγείται στις υποδοχές LINE OUT και HP OUT. Μια διάταξη προγραμματιζόμενης λογικής (CPLD) χρησιμοποιείται για την διασύνδεση των εξαρτημάτων που διαθέτει το DSK. Με την ανάγνωση και την εγγραφή των καταχωρητών που έχουν υλοποιηθεί στο CPLD πραγματοποιείται ο έλεγχος DSK. Οι τέσσερις φωτοδίοδοι και οι τέσσερις DIP διακόπτες που είναι προσβάσιμοι μέσω των καταχωρητών του CPLD, δίνουν στον χρήστη μια πολλή απλή μορφή εισόδου/εξόδου. Το DSK τροφοδοτείται μέσω εξωτερικού τροφοδοτικού (που το συνοδεύει) με 5V. Μέσω των voltage regulators (ρυθμιστών τάσης), που διαθέτει το DSK, εξασφαλίζεται η τάση τροφοδοσίας του DSP (+1.26V) και η τάση τροφοδοσίας των συσκευών εισόδου/εξόδου (+3.3V). Το Code Composer Studio επικοινωνεί με τον DSK μέσω του ενσωματωμένου JTAG προσομοιωτή που διαθέτει το DSK. Επίσης το DSK μπορεί να χρησιμοποιηθεί με εξωτερικό προσομοιωτή μέσω του εξωτερικού JTAG συνδετήρα Χάρτης Μνήμης Στο Σχήμα 1.15 παρουσιάζεται ο χάρτης μνήμης του DSK σε αντιδιαστολή με τον χάρτη μνήμης του DSP TMS320C6416. Όπως εύκολα μπορεί να παρατηρήσει κανείς οι δύο χάρτες μνήμης είναι ίδιοι στην περιοχή

25 25 που ξεκινά από την διεύθυνση 0000_0000 και τελειώνει στην διεύθυνση 6000_0000. Οι EMIF Α και Β του TMS320C6416 έχουν τέσσερις χαρτογραφημένες περιοχές που ονομάζονται Chip Enable περιοχές (CE0 CE3). H μνήμη SDRAM που διαθέτει το DSK καταλαμβάνει την περιοχή CE0 (8000_0000) της EMIF A ενώ η μνήμη Flash και το CPLD βρίσκονται στις περιοχές CE1 (6400_0000) και CE0 (6000_0000) της EMIF B. Τέλος οι περιοχές CE2 (Α000_0000) και CE3 (Β000_0000) της EMIF A είναι δεσμευμένες και χρησιμοποιούνται για την υποστήριξη της daughter card που συνδέεται στο DSK Σχήμα Χάρτης μνήμης του TMS320C6416/C6416 DSK Διακόπτες Ελέγχου Το DSK διαθέτει τέσσερις διακόπτες ελέγχου μέσω των οποίων καθορίζεται η λειτουργία του DSK κατά την επαναφορά του από την κατάσταση Reset και ονομάζονται ως SW3. Στον Πίνακα 1.24 παρουσιάζεται η λειτουργία του DSK σύμφωνα με την κατάσταση των διακοπτών ελέγχου.

26 26 Πίνακας 1.6. Η λειτουργία του DSK σύμφωνα με τις τιμές των διακοπτών ελέγχου Η Διάταξη Προγραμματιζόμενης Λογικής (CPLD) Το DSK C6416 χρησιμοποιεί την διάταξη προγραμματιζόμενης λογικής(complex Programmable Logic Device CPLD) EPM3128TC της ALTERA για την υλοποίηση των τεσσάρων χαρτογραφημένων καταχωρητών που επιτρέπουν τον προγραμματιστικό έλεγχο ορισμένων χαρακτηριστικών του DSK, την υλοποίηση της λογικής με την οποία ελέγχονται τα σήματα των daughter cards και πραγματοποιείται η διασύνδεση των εξαρτημάτων του DSK. Οι τέσσερις χαρτογραφημένοι 8-bit καταχωρητές που υλοποιούνται στο παραπάνω CPLD βρίσκονται στην περιοχή EMIF CE1και στην διεύθυνση 9008_0000 (hex) είναι: Ο USER_REG καταχωρητής που περιέχει την κατάσταση των τεσσάρων DIP διακοπτών και την κατάσταση των τεσσάρων φωτοδιόδων LEDS. Μέσω αυτού του καταχωρητή είναι δυνατή η ανάγνωση της κατάστασης των διακοπτών και των φωτοδιόδων. Επίσης είναι δυνατή και η αλλαγή της κατάστασης των φωτοδιόδων. Ο DC_REG καταχωρητής παρακολουθεί και ελέγχει την διασύνδεση του DSK με την daughter card. Ο καταχωρητής Version περιέχει τις εκδόσεις του CPLD και BOARD. Ο καταχωρητής MISC ελέγχει το πως διάφορα δευτερεύοντα σήματα μεταφέρονται στους συνδετήρες επέκτασης της daughter card.

27 27 Κεφάλαιο 2 Ο Αισθητήρας Εικόνας OV5610 και η DSKeye 2.1 Εισαγωγή Η αγορά για τους στερεάς κατάστασης αισθητήρες εικόνας (solid-state image sensors) έχει γνωρίσει μια εκρηκτική αύξηση τα τελευταία χρόνια, που οφείλεται στις αυξανόμενες απαιτήσεις της φορητής απεικόνισης, ψηφιακής εικόνας και video, της συνδιάσκεψης μέσω διαδίκτυου, της επιτήρησης, και της βιομετρικής. Οι charge - coupled συσκευές (CCDs) είναι παραδοσιακά η κυρίαρχη τεχνολογία αισθητήρων εικόνας. Οι πρόσφατες πρόοδοι στη σχεδίαση των αισθητήρων εικόνας που υλοποιούνται με συμπληρωματικές τεχνολογίες ημιαγωγών μεταλλικών οξειδίων (CMOS) έχουν οδηγήσει στην υιοθέτησή τους σε διάφορα προϊόντα, όπως το οπτικό ποντίκι, PC webcams, τα κινητά τηλέφωνα, και ψηφιακές φωτογραφικές μηχανές υψηλής ποιότητας, κάνοντας τους μια βιώσιμη εναλλακτική λύση αντί των CCDs. Επιπλέον, με την εκμετάλλευση της δυνατότητας ενσωμάτωσης του αισθητήρα με αναλογικά και ψηφιακά συστήματα επεξεργασίας σε επίπεδο εικονοστοιχείων (pixel), κάτι που αποτελεί και το σπουδαιότερο πλεονέκτημα των CMOS αισθητήρων εικόνας έναντι των CCDs, οι νέοι τύποι συσκευών απεικόνισης CMOS δημιουργούνται μεταξύ και άλλων εφαρμογών για την επαφή ανθρώπου-μηχανής, την επιτήρηση και τον έλεγχο, την όραση μηχανών, καθώς και για τη βιολογική δοκιμή.

28 Οι CMOS Αισθητήρες Εικόνας Στο τέλος της δεκαετίας του '60 εμφανίστηκαν οι MOS αισθητήρες εικόνας ενώ ακολούθησαν οι CMOS. Οι πιο πολύ εκ των σημερινών CMOS αισθητήρων εικόνας είναι βασισμένοι στις μελέτες και τις εργασίες που έγιναν στις αρχές της δεκαετίας του '80, οι οποίες αναδείκνυαν την τεχνολογία PPS (Passive Pixel Sensor). Μέχρι τις αρχές της δεκαετίας του '90 αυτή ήταν η τεχνολογία που επιλεγόταν για τους CMOS αισθητήρες εικόνας. Ωστόσο, τα μεγέθη των στοιχείων που χρησιμοποιούνταν για την κατασκευή των CMOS αισθητήρων αυτής της τεχνολογίας ήταν χαρακτηριστικά μεγάλα ώστε να διασυνδεθούν περισσότερα του ενός τρανζίστορ και τριών γραμμών διασύνδεσης σε ένα pixel. Τεχνικά χαρακτηριστικά όπως είναι η ταχύτητα και ο συντελεστής ποιότητας SNR (Signal to Noise Ratio) της PPS τεχνολογίας ήταν σημαντικά χαμηλότερα από αυτά των αισθητήρων CCD. Αυτό περιόρισε τις δυνατότητες εφαρμογής των CMOS αισθητήρων εικόνας σε εφαρμογές χαμηλής απόδοσης όπως π.χ. σε ορισμένες οπτικές εφαρμογές. Στις αρχές της δεκαετίας του '90, οι μελέτες ανέδειξαν την τεχνολογία APS (Active Pixel Sensor). Γρήγορα έγινε αντιληπτό ότι η προσθήκη ενός ενισχυτή σε κάθε εικονοστοιχείο (pixel) αυξάνει σημαντικά την ταχύτητα των αισθητήρων και βελτιώνει τον λόγο SNR με συνέπεια την μείωση των ανεπαρκειών της τεχνολογίας PPS. Εντούτοις, τα μεγέθη των στοιχείων που αποτελούσαν τους CMOS αισθητήρες αυτής της τεχνολογίας ήταν ακόμα πάρα πολύ μεγάλα ώστε να καθιστά την APS τεχνολογία εμπορικά βιώσιμη και κερδοφόρα. Με την εμφάνιση CMOS τεχνολογιών με ολοκλήρωση μεγάλης κλίμακας (δηλ. κατασκευή ολοκληρωμένων με πολλά τρανζίστορ μεγέθους μm, περίπου 0,25μm) και την εμφάνιση των μικρο-αισθητήρων, κατέστησαν την τεχνολογία APS την τεχνολογία των CMOS αισθητήρων εικόνας κάνοντας την ουσιαστικά τον κύριο ανταγωνιστή των CCD αισθητήρων εικόνας Ο κύριος σκοπός των πρόσθετων τρανζίστορ στο pixel της τεχνολογίας APS είναι να βελτιωθεί η ταχύτητα του αισθητήρα και ο συντελεστής SNR. Επιπρόσθετα μπορούν να χρησιμοποιηθούν για να εκτελέσουν άλλες χρήσιμες λειτουργίες όπως π.χ. ο ηλεκτρονικός έλεγχος του διαφράγματος του αισθητήρα (shuttering), η αποφυγή θόλωσης εικόνας (anti-blooming), η διπλή δειγματοληψία (CDS) και ο διαχωρισμός εικόνων. Η εφαρμογή αυτών των πρόσθετων λειτουργιών δεν απαιτεί σχεδόν καμία τροποποίηση στο pixel Πλεονεκτήματα των CMOS Αισθητήρων Εικόνας Το κύριο πλεονέκτημα των CMOS αισθητήρων εικόνας είναι η δυνατότητα να ενσωματωθούν οι λειτουργίες της σύλληψης και της επεξεργασίας στο ίδιο ολοκληρωμένο. Αυτό το πλεονέκτημα είναι ιδιαίτερα σημαντικό για την εφαρμογή των συστημάτων απεικόνισης που απαιτούν σημαντική επεξεργασία όπως αυτή που γίνεται από ψηφιακές φωτογραφικές μηχανές και τους υπολογιστικούς αισθητήρες (computational sensors). Η επεξεργασία μπορεί να ενσωματωθεί μαζί με έναν αισθητήρα, στη κλίμακα και στο επίπεδο του ολοκληρωμένου, χρησιμοποιώντας μια προσέγγιση system-on-chip. Η ενσωμάτωση γίνεται αφενός στο επίπεδο των στηλών της συστοιχίας των pixel με την ενσωμάτωση μιας σειράς στοιχείων επεξεργασίας σε μια ή περισσότερες στήλες και αφετέρου στο επίπεδο pixel με την ενσωμάτωση ενός στοιχείου επεξεργασίας σε κάθε pixel ή μίας ομάδας γειτονικών pixel. Παρά την βελτίωση των σημάτων που επεξεργάζονται, η επεξεργασία στο επίπεδο του pixel επιλέγεται ξεχωριστά από την επεξεργασία στο επίπεδο των στηλών καθώς επηρεάζει το μέγεθος των pixel που είναι πάρα πολύ μεγάλο για να είναι πρακτικά αξιοποιήσιμο. Το μεγαλύτερο μέρος της έρευνας για ψηφιακές φωτογραφικές μηχανές με ολοκληρωμένα με αισθητήρες CMOS περιλαμβάνουν την ολοκλήρωση ενός αισθητήρα με την επεξεργασία στο επίπεδο του ολοκληρωμένου (όπως ονομάζεται η επεξεργασία στο επίπεδο των στηλών). Η έρευνα στους υπολογιστικούς αισθητήρες περιλαμβάνει την ολοκλήρωση της αναλογικής επεξεργασίας

29 29 στο επίπεδο των pixel, χωρίς, εντούτοις να έχει γίνει αποδεκτή ευρέως στην αγορά. Η επεξεργασία στο επίπεδο των pixel υπόσχεται σημαντικά πλεονεκτήματα. Πολλές μελέτες δείχνουν ότι η μετατροπή των λαμβανόμενων σημάτων, από αναλογικά σε ψηφιακά, κατά την επεξεργασία στο επίπεδο των pixel επιτυγχάνει υψηλότερο συντελεστή ποιότητας SNR από τις προσεγγίσεις που γίνονται κατά την επεξεργασία στο επίπεδο του ολοκληρωμένου. Επιπλέον, η ουσιαστική μείωση της κατανάλωσης ισχύος των συστημάτων μπορεί να επιτευχθεί με την επεξεργασία στο επίπεδο pixel. Εντούτοις, το σημαντικότερο πλεονέκτημα της επεξεργασίας στο επίπεδο των pixel, είναι ότι τα σήματα μπορούν να υποβληθούν σε επεξεργασία κατά τη διάρκεια της ολοκλήρωσης, π.χ. στη διάρκεια λήψης μίας εικόνας. Ένα παράδειγμα αυτού του πλεονεκτήματος, η δυνατότητα να ενισχυθεί προγραμματιστικά μέσω λογισμικού η δυναμική περιοχή, περιοχή όπου βλέπει ο αισθητήρας, μέσω της λειτουργίας της πολλαπλάσιας δειγματοληψίας κατά την μετατροπή των λαμβανόμενων σημάτων από αναλογικά σε ψηφιακά. Τα παραπάνω πλεονεκτήματα σε συνδυασμό με την εξέλιξη της τεχνολογίας CMOS καθιστούν την επεξεργασία στο επίπεδο των pixel όλο και περισσότερο δημοφιλή. Δεδομένου ότι το μέγεθος pixel περιορίζεται πρώτιστα από τους οπτικούς παράγοντες και μετέπειτα από τους παράγοντες του φωτός και καθώς εξελίσσεται η CMOS τεχνολογία, αυξάνεται ο αριθμός των τρανζίστορ που μπορούν να ενσωματωθούν σε κάθε pixel χωρίς να υπάρχουν επιπτώσεις στο μέγεθός του ή στον παράγοντα πλήρωσης (fill factor). Γενικά θεωρείται ότι ένα μέγεθος pixel κάτω από 4μm (διάσταση της μίας πλευράς) δεν είναι επιθυμητό, δεδομένου ότι για την υλοποίηση του θα χρειάζονταν πολύ ακριβά οπτικά στοιχεία. Η απόδοση τέτοιων μικρών pixel πάσχει επίσης από τη μείωση της δυναμικής περιοχής και από την μείωση του συντελεστή SNR. Το συγκεκριμένο μέγεθος των pixel με τους παραπάνω παράγοντες να το διαμορφώνουν σε συνδυασμό με την εξέλιξη της τεχνολογίας CMOS και του τρόπου κατασκευής των αισθητήρων, τελικά επιτρέπει την ενσωμάτωση λειτουργιών επεξεργασίας σε κάθε pixel, δηλαδή επιτρέπει την εφαρμογή της τεχνολογίας system-on-chip Συστήματα Ψηφιακής Απεικόνισης Ένας αισθητήρας εικόνας είναι η κύρια μονάδα κάθε συστήματος ψηφιακής απεικόνισης όπως μια ψηφιακή φωτογραφική μηχανή ή μια ψηφιακή video camera. Στο Σχήμα 2.1 παρουσιάζεται ένα απλουστευμένο block διάγραμμα της αρχιτεκτονικής ενός συστήματος ψηφιακής απεικόνισης. Αρχικά η εικόνα εστιάζεται στον αισθητήρα εικόνας με την χρήση ενός οπτικού φακού. Ένας αισθητήρας εικόνας που περιλαμβάνει μια δυσδιάστατη σειρά pixels μετατρέπει το φωτεινό σήμα στην επιφάνειά του, σε μια σειρά ηλεκτρικών σημάτων. Για την χρωματική απεικόνιση, ένα Color Filter Array (CFA) τοποθετείται με συγκεκριμένο τρόπο στην κορυφή του pixel - array του αισθητήρα εικόνας, Σχήμα 2.2. Χρησιμοποιώντας ένα τέτοιο φίλτρο, κάθε pixel παράγει ένα σήμα που αντιστοιχεί μόνο σε ένα από τα τρία χρώματα, π.χ., το κόκκινο, το πράσινο, ή το μπλε. Τα αναλογικά δεδομένα των pixel (δηλ, τα ηλεκτρικά σήματα) διαβάζονται από τον αισθητήρα εικόνας και ψηφιοποιούνται από έναν αναλογικό-ψηφιακό μετατροπέα (ADC). Για την παραγωγή μιας πλήρη έγχρωμης εικόνας, δηλ, με κόκκινες, πράσινες και μπλε τιμές χρώματος για κάθε pixel, χρησιμοποιείται μια χωρική διαδικασία παρεμβολής γνωστή ως demosaicking.

30 30 Σχήμα 2.1. Block διάγραμμα συστήματος ψηφιακής απεικόνισης Περαιτέρω ψηφιακή επεξεργασία σήματος χρησιμοποιείται για την ισοστάθμιση λευκού (white balancing) και τη διόρθωση χρώματος (color correction) καθώς επίσης και για να ελάττωση των δυσμενών αποτελεσμάτων των ελαττωματικών pixels και της ατελούς οπτικής. Τέλος, η εικόνα συμπιέζεται και αποθηκεύεται στη μνήμη. Εκτελούνται επίσης και άλλες διαδικασίες επεξεργασίας και ελέγχου όπως η εκτέλεση της αυτόματης εστίασης (auto-focus), της αυτόματης έκθεσης (auto exposure), και γενικού ελέγχου. Σχήμα 2.2. Ένα τυπικό Bayer CFA Κάθε συστατικό ενός συστήματος απεικόνισης διαδραματίζει έναν ρόλο στον καθορισμό της γενικής απόδοσής του. Οι προσομοιώσεις και η εμπειρία, εντούτοις, δείχνουν ότι είναι ο αισθητήρας εικόνας είναι αυτός ο οποίος θέτει συχνά το τελευταίο όριο απόδοσης. Κατά συνέπεια, έχει γίνει μεγάλη προσπάθεια για τη βελτίωση της απόδοσης των αισθητήρων εικόνας μέσω βελτιώσεων στην τεχνολογία και την αρχιτεκτονική τους. 2.2 Ο CMOS Αισθητήρας Εικόνας OV5610

31 31 Ο έγχρωμος CMOS αισθητήρας εικόνας και video OV5610 της OmniVision είναι ένα απλό ολοκληρωμένο κύκλωμα που υλοποιεί μια κάμερα για την λήψη εικόνων και video. Ο αισθητήρας εικόνας OV5610 είναι σχεδιασμένος ώστε να παρέχει υψηλού επιπέδου λειτουργίες σε ένα απλό, μικρό-τυπωμένο πακέτο. Η συσκευή έχει την δυνατότητα να παρέχει εικόνα με μέγιστη ανάλυση και μπορεί να λειτουργήσει με ταχύτητα εναλλαγής εικόνων μέχρι 4 frames ανά δευτερόλεπτο στη μέγιστη ανάλυση του. Η τεχνολογία με την οποία έχει κατασκευαστεί ο αισθητήρας παρέχει την δυνατότητα εφαρμογής υψηλού επιπέδου αλγορίθμων για την διόρθωσης της εικόνας όπως π.χ. την απόρριψη του FPN (Fixed Pattern Noise), την εξάλειψη της αμαύρωσης της εικόνας, την δραστική μείωση των ηλεκτρικών αιχμών που οφείλονται στην υπερέκθεση (blooming) κλπ. Όλες οι απαραίτητες λειτουργίες του αισθητήρα καθώς και οι εξειδικευμένες λειτουργίες όπως ο έλεγχος έκθεσης, η ρύθμιση του συντελεστή αντίθεσης gamma, η διόρθωση των RGB χρωμάτων, η ρύθμιση του κέρδους των χρωμάτων, η ρύθμιση της ισοστάθμισης του λευκού χρώματος στην εικόνα, η ρύθμιση της χροιάς των αντικειμένων, η ρύθμιση των διαστάσεων της εικόνας κτλ. προγραμματίζονται μέσω αλλαγής των τιμών των καταχωρητών ελέγχου που διαθέτει ο αισθητήρας Οι Βασικές Λειτουργίες του Αισθητήρα Εικόνας OV5610 Ο αισθητήρας OV5610 περιλαμβάνει: μία συστοιχία φωτοαισθητήρων που παρέχει μέγιστη ανάλυση εικόνας , έναν αναλογικό ενισχυτή, ένα 10-bit μετατροπέα αναλογικού σήματος σε ψηφιακό, ψηφιακή θύρα video, την SCCB διασύνδεση (με τους αντίστοιχους καταχωρητές) και τους ψηφιακούς ελεγκτές όπως π.χ. χρονισμού, έκθεσης και ισοστάθμισης του λευκού χρώματος. Το block διάγραμμα του αισθητήρα OV5610 φαίνεται στο Σχήμα 2.4. Ο αισθητήρας OV5610 είναι μια CMOS συσκευή απεικόνισης των 1/1.8 ιντσών και αποτελείται από 5,174,400 εικονοστοιχεία (pixel). Βασίζεται στην ανάγνωση συστήματος μέσω της ολοκλήρωσης πεδίου με μεταφορά γραμμής προς γραμμής και ενός ηλεκτρονικού διαφράγματος με σύγχρονη ανάγνωση των pixel. Το έγχρωμο φίλτρο του αισθητήρα περιέχει τα πρωτεύοντα χρώματα RG/GB (RedGreen/GreenBlue) σε συστοιχία, διατεταγμένα σε γραμμές που εναλλάσσονται μεταξύ τους (πρότυπο Bayern). Το πρώτο μέρος της επεξεργασίας σήματος αναλαμβάνει ο αναλογικός ενισχυτής, ο οποίος λαμβάνει ένα προς ένα τα pixel μόλις το κύκλωμα column sample/hold έχει κρατήσει μια ολόκληρη γραμμή από pixel. Ο έλεγχος της έντασης μπορεί να γίνει είτε από τον χρήστη προγραμματιστικά, είτε αυτόματα από το εσωτερικό κύκλωμα ελέγχου της έντασης (AGC automatic gain control). Η ένταση κυμαίνεται από 0 εώς 42 db.

32 32 Σχήμα 2.3. Το block διάγραμμα του αισθητήρα εικόνας OV5610 Στη συνέχεια τα ενισχυμένα σήματα περνάνε από το μπλοκ Εξισορρόπησης καναλιού (Channel Balance). Σ αυτό το μπλοκ η ενίσχυση των καναλιών R και B αυξάνεται ή μειώνεται ώστε να φτάσουν το επίπεδο φωτεινότητας του καναλιού G. Η αλλαγή κυμαίνεται από -9.5 εώς 9.5 db και μπορεί να γίνει είτε από το χρήστη είτε μέσω του αυτόματου ελεγκτή white balance (AWB). Ο 10-bit Αναλογικό/Ψηφιακός (A/Ψ) μετατροπέας του ολοκληρωμένου λειτουργεί με ρυθμό που φθάνει μέχρι τα 12 MHz και είναι απόλυτα σύγχρονος με το ρυθμό ενεργοποίησης των pixel. Ο ρυθμός μετατροπής συμβαδίζει πάντα με τον ρυθμό εναλλαγής των frames. Ένα A/Ψ ρυθμιστικό κύκλωμα του επιπέδου του μαύρου εξασφαλίζει ότι το επίπεδο του μαύρου χρώματος των Y/RGB είναι η τιμή 16, ενώ η μέγιστη τιμή του επιπέδου του λευκού χρώματος περιορίζεται στο 240, το επίπεδο του μαύρου χρώματος των CrCb είναι 128. Ο λόγος Μέγιστης/Ελάχιστης τιμής είναι 240/16. Οι τιμές των RGB δεδομένων εξόδου κυμαίνονται από την τιμή 16 έως την τιμή 240, ενώ οι υπόλοιποι συνδυασμοί από το 0 έως και το 255 κρατούνται για τα σήματα συγχρονισμού (sync). Επίσης ο αισθητήρας εικόνας OV5610 υποστηρίζει το πρότυπο εξόδου non-ccir, στο οποίο οι τιμές των δεδομένων κυμαίνονται από 1 έως 254, ενώ το 0 και 255 κρατούνται τα σήματα συγχρονισμού. Ο έλεγχος της ηλεκτρονικής έκθεσης βασίζεται στη πυκνότητα της φωτεινότητας ολόκληρης της εικόνας. Ο αλγόριθμος της έκθεσης έχει βελτιστοποιηθεί για τις συνηθισμένες συνθήκες και θεωρεί ότι το αντικείμενο είναι καλά φωτισμένο σε σχέση με το φόντο της εικόνας. Σε περίπτωση διαφορετικής κατάστασης φωτισμού, υπάρχει ο καταχωρητής AEC (Auto Exposure Control) που ρυθμίζει τον λόγο Λευκού/Μαύρου και ο οποίος μπορεί να χρησιμοποιηθεί για την ρύθμιση του αλγόριθμου της έκθεσης όταν πρόκειται για μία εξειδικευμένη εικόνα. Η δυνατότητα επιλογής της ανάλυσης της εικόνας επιτρέπει στον χρήστη να ρυθμίσει του μέγεθός της ανάλογα με τις ανάγκες της εφαρμογής. Η ανάλυσης της εικόνας μπορεί να ρυθμιστεί από 2 4 έως (QSXGA) ή από 2 2 έως (SXGA) και (VGA), και υπάρχει η δυνατότητα να τοποθετηθεί οπουδήποτε μέσα στα όρια της συστοιχίας των φωτοαισθητήρων που αποτελούν τη βάση του αισθητήρα. Πρέπει να σημειωθεί ότι αυτή η λειτουργία δεν επηρεάζει τον ρυθμό εναλλαγής των εικόνων ή τον ρυθμό ροής δεδομένων, απλά αλλάζει την περιοχή που το HREF σήμα έχει τιμή λογικό 1, ώστε να ταιριάζει με την οριζόντια και την κάθετη περιοχή που έχει προγραμματιστεί από τον χρήστη. Μία τυπική εφαρμογή είναι η μεγέθυνση της εικόνας Η προεπιλεγμένη ανάλυση της εικόνας είναι η Ο αισθητήρας OV5610 υποστηρίζει 3 τρόπους υποδειγματοληψίας. Κάθε ένας έχει διαφορετική ανάλυση και μέγιστο ρυθμό frame. Ο πρώτος τρόπος υποδειγματοληψίας είναι για

33 33 ανάλυση SXGA ( ) με ρυθμό 15 fps και σ αυτόν τα κάθετα και οριζόντια pixel υποδειγματοληπτούνται με αναλογία 4:2 όπως φαίνεται στο Σχήμα 2.4. Σχήμα 2.4. Υποδειγματοληψία ανάλυσης SXGA Ο δεύτερος τρόπος έχει υψηλότερο ρυθμό frame (30 fps) και ανάλυση VGA, Σχήμα 2.5. Η υποδειγματοληψία σ αυτή τη περίπτωση είναι 4:1 για κάθετα και οριζόντια pixel. Σχήμα 2.5. Υποδειγματοληψία ανάλυσης VGA Tέλος για υψηλότερο ρυθμό μετάδοσης (70 fps) υποστηρίζεται και ο τρίτος τρόπος υποδειγματοληψίας το λεγόμενο High Frame rate mode (HF), Σχημα 2.6. Εδώ ο OV5610 κάνει μια 8:1 δειγματοληψία και σε κάθετη και σε οριζόντια κατεύθυνση. Σχήμα 2.6. Υποδειγματοληψία ανάλυσης HF

34 34 Ο αισθητήρας OV5610 μπορεί να προγραμματισθεί ώστε να αντιμεταθέτει τα byte εξόδου MSB (Most Significant Bit) και LSB (Least Significant Bit) των Y/UV ή RGB τύπων εξόδου. Η προεπιλεγμένη σειρά εξόδου των δεδομένων είναι Y7 έως Y0 όπου το Y7 είναι το πιο σημαντικό Byte (MSB) ενώ το Y0 είναι το λιγότερο σημαντικό Byte (LSB). Όταν γίνεται αντιμετάθεση το Y7 είναι το LSB ενώ το Y0 είναι το MSB και με ανάλογο τρόπο αντιμεταθέτονται και τα υπόλοιπα bit. Ένας σημαντικός παράγοντας σε μία ψηφιακή κάμερα είναι η ευκολία της διασύνδεσής της. Ο ρυθμός εναλλαγής των εικόνων στον αισθητήρα OV5610 ελέγχεται προγραμματιστικά και ο ρυθμός του A/Ψ μετατροπέα ρυθμίζεται ώστε να είναι σύγχρονος με το ρυθμό ενεργοποίησης των pixel. Ουσιαστικά, είναι ένα αυτόνομο σύστημα σύλληψης εικόνας σε ένα και μόνο ολοκληρωμένο κύκλωμα. Έχοντας τους εσωτερικούς καταχωρητές AEC και AGC η κάμερα μπορεί να αυτορυθμιστεί σύμφωνα με τις συνθήκες φωτεινότητας του περιβάλλοντος χωρίς παρέμβαση του χρήστη. Ο αισθητήρας OV5610 υποστηρίζει την επανεκκίνηση του υλικού και του λογισμικού με την λειτουργία RESET. Όταν ο ακροδέκτης RESET είναι ενεργός (λογικό 1 ), τότε όλο το ολοκληρωμένο θα επαναφερθεί στην αρχική του κατάσταση, συμπεριλαμβάνοντας όλους του καταχωρητές του (ο ελάχιστος χρόνος επανεκκίνησης του υλικού είναι 1 ms). Το υλικό τίθεται σε κατάσταση αναμονής (hardware sleeping mode), όταν ο ακροδέκτης PWDN είναι στο λογικό 1, το ρολόι του ολοκληρωμένου θα σταματήσει και το εσωτερικό κύκλωμα εκτός των SCCB καταχωρητών θα επανεκκινήθει. Επίσης μέσω του 7ου bit του καταχωρητή ελέγχου 12 του SCCB μπορεί προγραμματιστικά να δοθεί εντολή για επανεκκίνηση του ολοκληρωμένου, όμοια με την λειτουργία του ακροδέκτη RESET. Ο αισθητήρας OV5610 υποστηρίζει την διακοπή τροφοδοσίας με σκοπό την προστασία του αισθητήρα και την αποφυγή βλάβης των περιφερειακών, του υλικού και του λογισμικού. Όταν ο ακροδέκτης PWDN είναι ενεργός (λογικό 1 ), όλο το ολοκληρωμένο θα διακόψει την τροφοδοσία χωρίς οποιαδήποτε κατανάλωση ρεύματος. Κατά την διακοπή τροφοδοσίας μέσω του λογισμικού, όλα τα ρεύματα μηδενίζονται εκτός από το ρεύμα του κυκλώματος του κρυστάλλου. Κατά την διαδικασία της διακοπής της τροφοδοσίας του αισθητήρα OV5610, τα περιεχόμενα των καταχωρητών του SCCB θα κρατηθούν. Δύο μηχανισμοί ελέγχου του αισθητήρα OV5610 είναι διαθέσιμοι: Α. Σύγχρονη ανάγνωση των καταστάσεων των ακροδεκτών ενεργοποίησης (power up) ή επανεκκίνησης (RESET) συμπεριλαμβάνοντας την επανεκκίνηση υλικού και λογισμικού. Β. H SCCB διασύνδεση. Οι δυο μέθοδοι είναι αμοιβαίως αποκλειόμενοι (δηλαδή μόνο ένας χρησιμοποιείται κάθε φορά) και επιλέγονται μέσω του ακροδέκτη SBB. Πρέπει να σημειωθεί ότι με την χρησιμοποίηση της μεθόδου Α δεν μπορούν να αξιοποιηθούν όλες οι δυνατότητες του αισθητήρα OV5610. Η επιλογή ενεργοποίησης (power up) ή επανεκκίνησης επιλέγεται μία φορά χωρίς να μπορεί να αλλαχθεί αργότερα. Οι ακροδέκτες που χρησιμοποιούνται για τον έλεγχο χρησιμοποιούνται και από τον δίαυλο των ψηφιακών δεδομένων video. Κατά την ενεργοποίηση, η video θύρα είναι αρχικά σε κατάσταση υψηλής εμπέδησης, επιτρέποντας στην εξωτερική pull-up / pull-down αντίσταση να επιλέξει τις προεπιλεγμένες ρυθμίσεις. Η video θύρα θα συνεχίσει την προηγούμενη λειτουργία της μετά από 2048 παλμούς του ρολογιού. Η SCCB διασύνδεση παρέχει ολοκληρωμένη πρόσβαση σε όλα τα χαρακτηριστικά και τις δυνατότητες του αισθητήρα.

35 Σειριακός Δίαυλος Ελέγχου Κάμερας (SCCB Bus) Η πρόσβαση του SCCB επιτρέπεται μόνο αν ο ακροδέκτης SBB είναι σε λογικό 0. Ο αισθητήρας OV5610 λειτουργεί ως εξαρτημένη διάταξη, υποστηρίζοντας το πρωτόκολλο μεταφοράς 7-bit διεύθυνσης δεδομένων με ταχύτητα μεταφοράς δεδομένων ίση με 400 kbit/s (το ρολόι του συστήματος πρέπει να έχει ελάχιστη συχνότητα 10 MΗz). Σε κάθε byte, το MSB μεταφέρεται πάντα πρώτο, καθώς το bit ελέγχου ανάγνωσης/εγγραφής είναι το LSB του πρώτου byte. Το πρωτόκολλο επικοινωνίας που χρησιμοποιείται απαιτεί να μην αλλάζει κατάσταση ο ακροδέκτης SIO-0 όταν ο ακροδέκτης SIO-1 βρίσκεται στο λογικό 1. Κάθε bit δεδομένων μπορεί να αλλάξει κατάσταση μόνο όταν ο ακροδέκτης SIO-1 είναι βρίσκεται στο λογικό 0. Ο αισθητήρας δεσμεύει τους ακροδέκτες CS (2:0) για τον ορισμό της λειτουργίας του ως εξαρτημένη διάταξη, Ο αισθητήρας υποστηρίζει οκτώ λειτουργίες κάμερας ως εξαρτημένη διάταξη. Ο σειριακός δίαυλος ελέγχου κάμερας (SCCB) υποστηρίζει εγγραφή και ανάγνωση πολλαπλών byte. Σε ένα κύκλο εγγραφής, η κύρια διάταξη πρέπει να δώσει την υποδιεύθυνση, ωστόσο, η κύρια διάταξη δεν δίνει την υποδιεύθυνση στο κύκλο ανάγνωσης, επομένως, ο αισθητήρας διαβάζει την υποδιεύθυνση από τον προηγούμενο κύκλο εγγραφής. Στους κύκλους εγγραφής ή ανάγνωσης πολλών byte, η υποδιεύθυνση αυξάνεται αυτομάτως μετά από το πρώτο byte δεδομένων έτσι ώστε η πρόσβαση των διευθύνσεων να είναι συνεχής μέσα σε ένα κύκλο εντολής Περιγραφή των Καταχωρητών του SCCB Η λειτουργία του αισθητήρα μπορεί να ρυθμιστεί, θέτοντας τους ακροδέκτες CS<2:0> σε 1 ή 0 στην επανεκκίνηση/ενεργοποίηση, σε μια από τις οκτώ λειτουργίες της κάμερας ως εξαρτημένη διάταξη όπως φαίνονται στον Πίνακα 2.1, (η λειτουργία δεν μπορεί να αλλάξει όταν το ολοκληρωμένο είναι σε διαφορετική κατάσταση από αυτή της επανεκκίνησης ή ενεργοποίησης). CS<2:0> WRITE ID (hex) a 4e a 5e READ ID (hex) b 4f b 5f Πίνακας 2.1. Συνδυασμοί λειτουργίας του αισθητήρα ως εξαρτημένη διάταξη Ο αισθητήρας υποστηρίζει δύο επιλογές λειτουργίας καθορισμένες από τον ακροδέκτη MID. Εάν ο ακροδέκτης MID είναι στο λογικό 0 (προεπιλεγμένη κατάσταση), οι συνδυασμοί εγγραφής και ανάγνωσης είναι το 42(hex) και 43(hex) αντίστοιχα. Αν ακροδέκτης MID είναι στο λογικό 1, ο αισθητήρας OV5610 υποστηρίζει και τους οκτώ συνδυασμούς. Στο κύκλο εγγραφής, το 2ο byte στο SCCB είναι η υποδιεύθυνση για την επιλογή του καταχωρητή του ολοκληρωμένου, το 3ο byte είναι τα δεδομένα που σχετίζονται με αυτό το καταχωρητή. Εντολή εγγραφής σε μη υπαρκτή υποδιεύθυνση ή εντολή κράτησης μη υπαρκτής υποδιεύθυνσης αγνοούνται. Στο κύκλο ανάγνωσης, το 2ο byte είναι τα δεδομένα που σχετίζονται με την προηγούμενη αποθηκευμένη υποδιεύθυνση. Εντολή ανάγνωσης μη υπαρκτής υποδιεύθυνσης επιστρέφει άγνωστο αποτέλεσμα. Οι καταχωρητές [00] έως [02] περιέχουν παραμέτρους που επηρεάζουν την εικόνα, οι οποίοι τροποποιούνται από εσωτερικούς ελεγκτές όταν ο αισθητήρας βρίσκεται σε κατάσταση αυτόρύθμισης (auto adjust mode). Αυτός είναι ένας απλός τρόπος ανάγνωσης των παραμέτρων αυτών, οι οποίοι ρυθμίζονται από τους εσωτερικούς ελεγκτές του ολοκληρωμένου. Για να είναι δυνατό αυτό, πρέπει αρχικά να τεθεί το ολοκληρωμένο σε κατάσταση αυτό-ρύθμισης (auto adjust mode)

36 36 (καταχωρητής 13 έχει το bit 0 στο λογικό 1, καταχωρητής 12 με το 2ο bit στο λογικό 1, καταχωρητής 12 με το 5ο bit στο λογικό 1 ), αναμένοντας την σταθεροποίηση της εικόνας, οι καταχωρητές [00], [01] και [02] θα τροποποιηθούν από εσωτερικό κύκλωμα ελέγχου. Θέτοντας το ολοκληρωμένο στην κατάσταση ρύθμισης από τον χρήστη (manual adjust mode) (καταχωρητής 13, το bit 0 σε λογικό 0 ), όλοι οι καταχωρητές παραμένουν με τις τελευταίες τους ρυθμίσεις δίνοντας την δυνατότητα ανάγνωσης ή εγγραφής από τον χρήστη ή την εξωτερική διάταξη. 2.3 Διασύνδεση του CMOS Αισθητήρα Εικόνας OV5610 με το DSK C6416 Για την διασύνδεση του έγχρωμου αισθητήρα εικόνας OV5610 με το DSK C6416 (που παρουσιάστηκε στο Κεφάλαιο 1) χρησιμοποιήθηκε η κάρτα DSKeye της BiTEC που παρουσιάζεται στο Σχήμα 2.8. Η επιλογή της κάρτας αυτής έγινε σύμφωνα με της απαιτήσεις της παρούσας εργασίας, δηλαδή να καταστεί δυνατή η λήψη μιας εικόνας από τον αισθητήρα, και η μεταφορά της στον DSP για περαιτέρω επεξεργασία σε πραγματικό χρόνο. Ο συγκεκριμένος αισθητήρας μαζί με την DSKeye προσφέρουν: Μέγιστη ανάλυση εικόνας QSXGA με frame rate μέχρι και 4fps FPGA Cyclone ΙΙ της Altera Gigabit Ethernet διασύνδεση Πρότυπο διασύνδεσης Santa Cruz για καινούριες εφαρμογές Πλήρη συμβατότητα με την TI Image Processing Library για επεξεργασία υψηλού επιπέδου και ποιότητας. Σχήμα 2.7. Η κάρτα DSKeye με τον αισθητήρα εικόνας OV5610 Όπως έχει αναφερθεί και στην εισαγωγή της παρούσας εργασίας, τα συστήματα σύλληψης και επεξεργασίας εικόνας και video σε πραγματικό χρόνο, τυγχάνουν τεράστιας αποδοχής. Συστήματα που χρησιμοποιούν τον αισθητήρα εικόνας OV5610, την DSKeye και τα DSK της TI (C6713, C6416 κλπ.) μπορούν να χρησιμοποιηθούν σε εφαρμογές όπως: Machine Vision Video Phone Remote Sensing Imaging

37 37 Συστήματα Επίβλεψης και Παρακολούθησης Έξυπνες κάμερες δικτύου Video Streaming και VOIP εφαρμογές. Η DSKeye διασυνδέεται με το DSK C6416 μέσω του συνδετήρα επέκτασης για την μνήμη και του συνδετήρα επέκτασης για τα περιφερειακά. Ο αισθητήρας εικόνας OV5610 συνδέεται με την DSKeye μέσω ενός συνδετήρα με 32 ακροδέκτες (pins). Η τοποθέτηση του αισθητήρα στην DSKeye παρουσιάζεται στο Σχήμα 2.7. Στο Σχήμα 2.8 παρουσιάζεται η τοποθέτηση της DSKeye στο DSK C6416. Σχήμα 2.8. Το DSK C6416 με την κάρτα DSKeye και τον αισθητήρα εικόνας OV Η Hardware Διασύνδεση Στο Σχήμα 2.9 παρουσιάζεται το block διάγραμμα της DSKeye

38 38 Σχήμα 2.9. Το Block διάγραμμα της DSKeye Η πρόσβαση στους καταχωρητές του αισθητήρα επιτυγχάνεται με το σειριακό πρωτόκολλο I C της Phillips. Αντί να εγκατασταθεί μια I2C συσκευή πάνω στην κάρτα, το συγκεκριμένο πρωτόκολλο υλοποιείται στον I2C καταχωρητή, ο οποίος υλοποιείται στο FPGA Cyclone II που περιέχει η DSKeye. Με τον κατάλληλο προγραμματισμό των καταχωρητών, ο αισθητήρας μπορεί να εξάγει εικόνας με QSXGA, SXGA, VGA ή HF ανάλυση και Bayern format. Μέσω των καταχωρητών πραγματοποιείται ο προγραμματισμός των λειτουργιών του αισθητήρα εικόνας. 2 To FPGA Cyclone II της ΑLTERA Όπως φαίνεται κι από το μπλοκ διάγραμμα της DSKeye η έξοδος του αισθητήρα συνδέεται με το FPGA. Το βασικό SOPC αποτελείται από την γέφυρα EMIF/Avalon Fabric και τα εμπλεκόμενα περιφερειακά. Στο σχήμα φαίνεται η βασική διάταξη του DSKeye, ο προγραμματισμός του FPGA. Σχήμα Το Block διάγραμμα του Cyclone II της Altera Ο πυρήνας της DSKeye κάμερας είναι χτισμένος γύρω από μια FIFO 256 λέξεων όπως φαινεται στο σχήμα. Τα ακατέργαστα δεδομένα του αισθητήρα πρώτα μειώνονται σε λέξεις των

39 39 8bit και μετά πακετάρονται σε 32bit λέξεις της FIFO. H FIFO εκτελεί το συγχρονισμό του ρολογιού ενώ ένα σήμα διακοπής ενεργοποιείται όταν το μέγεθος της FIFO που είναι γεμάτο ξεπεράσει το 160 ή μια ολόκληρη γραμμή VGA. Αυτό ενεργοποιεί το EDMA του DSP για τη μεταφορά της γραμμής στη βασική του μνήμη. Το σήμα διακοπής απενεργοποιείται όταν το μέγεθος της FIFO που είναι γεμάτο πέσει κάτω από 155 λέξεις. Αφού η FIFO είναι 256 λέξεων το προβάδισμα πριν η FIFO υπερχειλίσει των 96 λέξεων θεωρείται ικανοποιητικό για τις περισσότερες εφαρμογές. Μέσα στον πυρήνα υπάρχουν ένας καταχωρητής ελέγχου (control) και ένας κατάστασης (status). Τα πεδία αυτών των καταχωρητών επιτρέπουν στον DSP τον έλεγχο και την επίβλεψη της FIFO και του αποπολυπλέκτη. Σχήμα Το Block διάγραμμα της FIFO του Cyclone II της Altera Ο πυρήνας του SoPC φαίνεται στο Quartus II μπλοκ διάγραμμα. Ένα PLL χρησιμοποιείται για να παράγει το ρολόι της κάμερας στα 27MHz και το ρολόι του Ethernet MAC στα 100ΜΗz. Ένα i2c SoPC συμπεριλαμβάνεται για την προσπέλαση των καταχωρητών της κάμερας. Σχήμα Το Block διάγραμμα του πυρήνα του Cyclone II της Altera

40 40 Όπως έχει ήδη ειπωθεί ο βασικός πυρήνας της DSKeye περιέχει 2 καταχωρητές (ελέγχου και κατάστασης). Πινακας 2.2. Ο καταχωρητής ελέγχου Το bit Camera Enable χρησιμοποιείται για να συγχρονιστεί το EDMA με την αρχή ενός frame. Μόλις γίνεται ένα, η FIFO θα αρχίσει τη λειτουργία της στο επόμενο VSYNC σήμα από τη κάμερα. To EDMA θα πρέπει να έχει προγραμματιστεί και ναείναι έτοιμη πριν το bit Camera Enable γίνει ένα. Όταν είναι μηδέν, η FIFO δε στέλνει κάποιo σήμα διακοπής. Το σήμα Camera Power Down οδηγεί απευθείας το Power Down Pin του OV5610. H default του κατάσταση είναι 0. Το Clear Overrun flag χρησιμοποιείται για το μηδενισμό του Overrun flag στον καταχωρητή κατάστασης. Πινακας 2.3. Ο καταχωρητής κατάστασης Συνδετήρας επέκτασης Santa Cruz. H DSKeye μπορεί να επεκταθεί χρησιμοποιώντας μέσω της διασύνδεσης Santa Cruz. Αυτή η διασύνδεση επιτρέπει στους χρήστες να συνδέσουν άλλες SC κάρτες ή να αναπτύξουν δικές τους διασυνδέσεις χρησιμοποιώντας FPGA. Συνήθως χρησιμοποιείται για USB, RS232 και παράλληλη διασύνδεση. Τα Pins του συνδετήρα φαίνονται στο Σχήμα 2.13.

41 41 Σχήμα Τα pins του συνδετήρα Santa Cruz Gigabit Ethernet προσαρμογέας διασύνδεσης Η DSKeye έχει μια διασύνδεση Gigabit Ethernet που βασίζεται στη διάταξη ASIX hig-performance 32-bit MAC η οποία δουλεύει στα 10/100 και 1000bps. Ανιχνεύει αυτόματα και προσαρμόζεται σε κάθε είσοδο cross καλωδίου. Μια σειρά από LEDs στη πάνω DSKeye δείχνουν την κατάσταση της διάταξης Ethernet PHY ενώ ο χάρτης μνήμης της μπορεί να αλλάξει επαναπρογραμματίζοντας το FPGA. Για το βασικό σύστημα η διάταξη εμφανίζεται στο χώρο διευθύνσεων CE3. Η DSKeye χρησιμοποιεί μια θύρα lwip στοίβας. Μ αυτό τον τρόπο επιτρέπει στους χρήστες να γράφουν TCP συμβατές εφαρμογές χρησιμοποιώντας ένα σύνολο από APIs (Αpplication Programming Interfaces). Σε υψηλό επίπεδο ο χρήστης μπορεί να προσπελάσει τη TCP στοίβα χρησιμοποιώντας τη κοινή Berkeley socket διασύνδεση, η οποία παρέχει απλές socket ρουτίνες όπως socket(), listen(), connect() κλπ. για την οδήγηση της TCP στοίβας. Σε πιο χαμηλού επιπέδου προγραμματισμό ο χρήστης μπορεί να προσπελάσει τη στοίβα με πιο primitive APIs. Για να συμπεριληφθεί η lwip στοίβα σε κάποια εφαρμογή πρέπει να οριστεί σαν DSP/BIOS task του οποίου η προτεραιότητα είναι μεγαλύτερη από εκεινών της εφαρμογής. Επίσης επειδή πολλά tasks μπορει να χρησιμοποιούν τη στοίβα πρέπει να «παγώνουν» μέχρι η στόιβα να είναι έτοιμη. Αυτό μπορεί να γίνει άμα κάθε task εκτελεί τη συνάρτηση Netstart() πριν αρχίσει να καλεί οποιαδήποτε συνάρτηση της στοίβας. Για την αλλαγή των TCP/IP παραμέτρων όπως οι MAC,IP διευθύνσεις οι χρήστες πρέπει να αλλάξουν τη συνάρτηση NetStart() στο εξής σημείο

42 42 Το πρωτόκολλο TCP Σχήμα Τα modes του TCP/IP πρωτοκόλλου To TCP πρωτόκολλο είναι η μέθοδος επικοινωνίας η οποία εγκαθιστά πρώτα τη σύνδεση μεταξύ δυο συστημάτων και μετά μεταφέρει τα δεδομένα μέσω αυτής της σύνδεσης χρησιμοποιώντας τις IP διευθύνσεις και τoυς αριθμούς των Port τους. Εδώ θα πρέπει να αναφερθούμε στον όρο socket που χρησιμοποιείται κατά κόρον σε τέτοιου είδους πρωτόκολλα επικοινωνίας. Socket ονομάζεται το τερματικό σημείο μιας αμφίδρομης επικοινωνιακής ζεύξης μεταξύ 2 προγραμμάτων που τρέχουν στο δίκτυο. Τερματικό σημείο είναι ο συνδυασμός μιας IP διεύθυνσης και ενός αριθμού Port και 2 τέτοια τερματικά σημεία ορίζουν μοναδικά μια TCP σύνδεση. Μπορούμε να πούμε δηλαδή ότι το socket είναι ένα ζεύγος αριθμών (IP address Port number) που ορίζει μαζί με το αντίστοιχο socket που επικοινωνεί, ένα TCP κανάλι. Με αυτό τον τρόπο μπορούμε να έχουμε πολλαπλές συνδέσεις μεταξύ 2 συστημάτων. Τώρα, για να αποκατασταθεί μια σύνδεση, υπάρχουν δύο τρόποι, Σχήμα Ο πρώτος είναι σε Server mode, Σχήμα 2.15(παθητικά ανοιχτό) οπού περιμένει «ακούγοντας» στο socket για μια αίτηση σύνδεσης και ο δεύτερος είναι σε Client mode, Σχήμα 2.16 όπου μπαίνοντας κάνει αίτηση στον server για σύνδεση. Παρακάτω παρουσιάζονται τα διαγράμματα ροής για την λειτουργία σε Server Mode και Client Mode:

43 43 Σχήμα Το διάγραμμα ροής του Server mode Σχήμα Το διάγραμμα ροής του Client mode

44 44 Bayern παρεμβολή και Χρωματική Διόρθωση Η ισοστάθμιση λευκού (White balance) και η χρωματική διόρθωση (Colour Correction) είναι λειτουργίες που διασφαλίζουν τη ρεαλιστική αναπαράσταση των χρωμάτων της εικόνας. Στις ψηφιακές κάμερες χρησιμοποιείται μια συστοιχία αισθητήρων φωτός με χρωματικά φίλτρα πάνω τους για να απεικονίσουν την εικόνα. Επειδή όμως ο αισθητήρας αυτός δεν ανιχνεύει το φως όπως το ανθρώπινο μάτι χρειάζονται αυτές οι λειτουργίες για την σωστή χρωματική πιστότητα. Επίσης επειδή κάθε Bayern pixel έχει μόνο μια συνιστώσα από τις R, G, B, χρειάζεται να γίνει μια παρεμβολή για τις δυο τιμές που λείπουν ωστέ να έχουμε μια εικόνα με 3 τιμές για κάθε pixel (RGB format).μια μέθοδος είναι η γραμμική παρεμβολή που παρουσιάζεται παρακάτω. Για τις συνιστώσες R και Β οι τιμές τους υπολογίζονται με γραμμική παρεμβολή των κοντινότερων γειτόνων του ίδιου χρώματος. Υπάρχουν 4 περιπτώσεις όπως φαίνονται στο σχήμα. Στις περιπτώσεις (α) και (β) παίρνουμε τον μέσο όρο των 2 γειτονικών Pixel του ίδιου χρώματος. Στην (α) πχ η συνιστώσα B του κεντρικού κελιού υπολογίζεται ως ο μέσος όρος του πάνω και του κάτω κελιού. Στη περίπτωση (c) όμως η συνιστώσα B του κεντρικού κελιού υπολογίζεται ως ο μέσος όρος των 4 διαγώνιων κελιών. Για την παρεμβολή των συνιστωσών G μπορεί να χρησιμοποιηθεί μια προσαρμοστική μέθοδος αλλά επειδή η ταχύτητα της εκτέλεσης είναι σημαντικό ζήτημα μπορεί να χρησιμοποιηθεί η μέθοδος τις γραμμικής παρεμβολής από τα 4 γειτονικά G pixels. Αμέσως μετά πρέπει να γίνει η Χρωματική Διόρθωση οπού θα διορθωθούν οι επιπτώσεις της θερμοκρασίας και του φωτός στα χρώματα. Αυτό γίνεται περνόντας την εικόνα από μια μάσκα 3x3 που μπορεί να χρησιμοποιηθεί και για ρύθμιση του κορεσμού (saturation).

45 45 Την ίδια στιγμή μπορεί να εφαρμοστεί και ο παρακάτω πίνακας Χρωματικού Κορεσμού ο οποίος σε αντίθεση με τη Χρωματική Διόρθωση δε περιστρέφει τα διανύσματα στο χρωματικό χώρο. Triple Frame Buffering Σε αυτή την παράγραφο θα παρουσιαστεί η τεχνική Triple Frame Buffering με την οποία πραγματοποιείται η προσωρινή αποθήκευση των εικόνων που λαμβάνει ο αισθητήρας εικόνας. Στο Σχήμα 2.17 παρουσιάζεται η τεχνική του Triple Frame Buffering. CASE 1 CASE 2 CASE 3 BUFFER A BUFFER A BUFFER A BUFFER B BUFFER B BUFFER B BUFFER C BUFFER C BUFFER C Σχήμα Η τεχνική του Triple Frame Buffering Στην αρχή και οι τρεις frame buffers Α,Β και C βρίσκονται στην κατάσταση 1 (Case 1). Ο DSP παίρνει και επεξεργάζεται την εικόνα από τον buffer A, ενώ η ρουτίνα εξυπηρέτησης της διακοπής (interrupt routine) της DSKeye αποθηκεύει τις νέες εικόνες στους buffers B και C με κυκλική διαδικασία. Όταν η κύρια εφαρμογή ζητάει μια νέα εικόνα, χρησιμοποιείται το περιεχόμενο του frame buffer B και η ρουτίνα εξυπηρέτησης της διακοπής αποθηκεύει τις καινούργιες εικόνες στους frame buffers A και B. Αυτή η διαδικασία συνεχίζεται και στην κατάσταση 3 (Case 3) όπου η κύρια εφαρμογή επεξεργάζεται το περιεχόμενο του frame buffer C ενώ η ρουτίνα εξυπηρέτησης της

46 46 διακοπής ανανεώνει το περιεχόμενο των frame buffers A και B. Αυτή η τεχνική μπορεί εύκολα να πραγματοποιηθεί, χρησιμοποιώντας ανανέωση δεικτών (pointer updates). Μια DSP/BIOS semaphore χρησιμοποιείται για την επικοινωνία της κυρίως εφαρμογής με την ρουτίνα εξυπηρέτησης της διακοπής ώστε να είναι εφικτή η εκτέλεση άλλων διεργασιών από την CPU όταν αναμένεται μια νέα εικόνα Σε ορισμένες περιπτώσεις κατά την διαδικασία μεταφοράς των δεδομένων από τις FIFO είναι πιθανό να υπερφορτωθεί (overrun) ο DSP. Αυτό αντιμετωπίζεται με τον κατάλληλο επανασυγχρονισμό των δεικτών των FIFO. Πρέπει να σημειωθεί όμως ότι κατά την διάρκεια του παραπάνω επανασυγχρονισμού οι εικόνες που περιέχονται στους frame buffers θα χαθούν Η Software Διασύνδεση To API του TCP/IP char socket(socket s, u_char protocol, u_int port, u_char flag) Ορίσματα s: αριθμός καναλιού protocol: το πρωτόκολλο για το κανάλι SOCK_STREAM(0x01) -> TCP SOCK_DGRAM(0x02) -> UDP SOCK_IPL_RAW(0x03) -> IP Layer RAW SOCK_MACL_RAW(0x04) -> MAC Layer RAW port: η πόρτα της πηγής του καναλιού flag: επιλογές για το κανάλι (0 στη περίπτωσή μας) Return value Ο αριθμός του καναλιού αν ήταν επιτυχής, αλλιώς -1 Περιγραφή: Αρχικοποιεί το κανάλι και περιμένει την ολοκλήρωση των ρυθμίσεων του W5100 char connect(socket s, u_char * addr, u_int port) Ορίσματα s: αριθμός καναλιού addr: Διεύθυνση IP προορισμού (Server) port: Αριθμός port προορισμού (Server) Return value 1 αν η σύνδεση αποκαταστάθηκε επιτυχώς, αλλιώς -1 Περιγραφή: Ξεκινάει μια σύνδεση στο επιθυμητό socket σαν TCP Client, κάνοντας αίτηση σύνδεσης στον Server που ορίζουν τα Ορίσματα. char listen(socket s, u_char * addr, u_int * port) Ορίσματα s: αριθμός καναλιού addr: Διεύθυνση IP πηγής (Server) port: Αριθμός Port πηγής (Server) Return value 1 αν η σύνδεση αποκαταστάθηκε επιτυχώς, αλλιώς -1 Περιγραφή: Περιμένει για αίτηση σύνδεσης από κάποιο Client. (σύνδεση σε Server

47 47 Mode) unsigned int send(socket s, u_char * buf, u_int len) Ορίσματα s: αριθμός καναλιού buf: Δείκτης στα δεδομένα που θα σταλούν len: μέγεθος των δεδομένων που θα σταλούν Return value μέγεθος των δεδομένων που εστάλησαν Περιγραφή: Συνάρτηση για την αποστολή δεδομένων με TCP unsigned int recv(socket s, u_char * buf, u_int len) Ορίσματα s: αριθμός καναλιού buf: Δείκτης στη θέση αποθήκευσης των ληφθέντων δεδομένων len: μέγεθος των ληφθέντων δεδομένων Return value μέγεθος των ληφθέντων δεδομένων Περιγραφή: Συνάρτηση για την λήψη δεδομένων με TCP. Συνεχίζει να περιμένει μέχρι να ληφθούν len bytes. char close(socket s) Ορίσματα s: αριθμός καναλιού Return value 1 Περιγραφή: Συνάρτηση κλεισίματος του καναλιού To API του OV5610 Το API για το ολοκληρωμένο OV5610 χρησιμοποιείται από το API της DSKeye αλλά μπορεί να χρησιμοποιηθέι και κατευθείαν σε εφαρμογές χρηστων. int OV5610_open(u_char sbufsize, u_char rbufsize) Ορίσματα sbufsize: μέγεθος μνήμης tx Return value rbufsize: μέγεθος μνήμης rx Περιγραφή: Αρχικοποιεί ή/και αλλάζει τις ρυθμίσεις του W3100Α int OV5610_close(u_char sbufsize, u_char rbufsize) Ορίσματα sbufsize: μέγεθος μνήμης tx Return value rbufsize: μέγεθος μνήμης rx Περιγραφή: Κλείνει τη κάμερα void OV5610_RegWrite(int add, char reg) Ορίσματα add: διεύθυνση εσωτερικής ic2 θέσης reg: τιμή του καταχωρητή Return value καμμιά Περιγραφή: γράφει σε ένα εσωτερικό καταχωρητή του OV5610 χρησιμοποιώντας i2c

48 48 int OV5610_RegWrite(char reg) Ορίσματα add: διεύθυνση εσωτερικής ic2 θέσης Return value τιμή του καταχωρητή Περιγραφή: διαβάζει έναν καταχωρητή του OV5610 χρησιμοποιώντας i2c void OV5610_ResolutionSXGA() Ορίσματα κανένα Return value καμμία Περιγραφή: θέτει την ανάλυση του OV5610 σε SXGA void OV5610_ResolutionVGA() Ορίσματα κανένα Return value καμμία Περιγραφή: θέτει την ανάλυση του OV5610 σε VGA void OV5610_ResolutionQSXGA() Ορίσματα κανένα Return value καμμία Περιγραφή: θέτει την ανάλυση του OV5610 σε QSXGA void OV5610_ResolutionHF() Ορίσματα κανένα Return value καμμία Περιγραφή: θέτει την ανάλυση του OV5610 σε HF Το API της DSKeye int DSK-EYE_open(DSK-EYE_params *params) Αυτή η συνάρτηση αρχικοποιεί την κάμερα, εγκαθιστά τις ρουτίνες εξυπηρέτησης διακοπών και ξεκινά τη διαδικασία triple buffering. Καλείται με όρισμα τη δομή DSK-EYE_params με τη μορφή Η παράμετρος segid ορίζει το κομμάτι της μνήμης που χρησιμοποιείται από τη MEM_alloc για το triple buffering. Αυτό το κομμάτι πρέπει να είναι αρκετά μεγάλο ώστε να χωράει τον buffer. H παράμετρος frame_size καθορίζει το μέγεθος της εικόνας που έχει παρθεί από τη κάμερα.

49 49 Αν η DSK-EYE_open κληθεί με όρισμα NULL επιλέγεται το default σετ παραμέτρων. Η συνάρτηση επιστρέφει τους εξής κώδικες σφάλματων. int DSK-EYE_close(DSK-EYE_params *params) Αυτή η συνάρτηση απενεργοποιεί τις ρουτίνες και επιστρέφει τη μνήμη που χρησημοποιήθηκε για τη διαδικασία triple buffering. Tα ορίσματα και οι τιμές που επιστρέφει είναι παρόμοια με αυτά της DSK-EYE_open. int DSK-EYE_getframe() Είναι η βασική συνάρτηση για την λήψη της εικόνας από την DSKeye κάρτα. Όταν κληθεί η ρουτίνα επιστρέφει έναν δείκτη στη θέση μνήμης που είναι η Bayer εικόνα. Η ρουτίνα καθυστερεί την κλήση μέχρι να είναι διαθέσιμη καινούρια εικόνα. int DSK-EYE_startCap() Ξεκινάει τη λήψη EDMA. int DSK-EYE_stopCap() Σταματάει τη λήψη EDMA.

50 50 Κεφάλαιο 3 Εργαστήρια από Απόσταση (Remote Laboratories) 3.1 Εισαγωγή H εκπαίδευση από απόσταση (Distance Learning) έχει εξελιχθεί σε ένα ισχυρό εργαλείο της εκπαίδευσης για την πρόσβαση των φοιτητών σε ώρες και μέρη που είναι δύσκολο να ανταποκριθεί ένα ακαδημαϊκό ίδρυμα. Η νέα τεχνολογία έχει καταστήσει ικανή την υπερπήδηση πολλών εμπόδιων της απόστασης στην εκπαιδευτική διαδικασία. Για παράδειγμα, το ηλεκτρονικό ταχυδρομείο, τα δωμάτια online συνομιλίας και τα ζωντανά video συνέδρια έχουν βοηθήσει στο να έρθουν πιο κοντά οι άνθρωποι που εμπλέκονται στην ακαδημαϊκή διαδικασία.

51 51 Παρόλα αυτά, η επιτυχία της εκπαίδευσης από απόσταση, συνάντησε δυσκολίες σε μαθήματα τα οποία κάνουν εκτεταμένη χρήση εργαστηριακών εγκαταστάσεων. Σε αυτά τα μαθήματα, οι διαδικασίες εκμάθησης (π.χ. επίλυση και ανάλυση προβλημάτων) μέσω εργαστηριακών πειραμάτων είναι υποχρεωτικές. Έτσι δημιουργείται ένα μεγάλο κενό στη παιδεία του απομακρυσμένου φοιτητή, αφού οποιαδήποτε ποσότητα θεωρητικών επεξηγήσεων και αναλύσεων δεν αντισταθμίζει το εργαστηριακό πείραμα. Η πρόκληση, λοιπόν, είναι να βρεθούν τρόποι για να υπερνικηθεί το εμπόδιο της απόστασης και να μπορέσουν όλοι οι φοιτητές να συμμετέχουν επαρκώς στα πειράματα των εργαστηρίων όπου κι αν βρίσκονται. Τα εργαστήρια από απόσταση (Remote Laboratories) εντάσσονται στο γενικότερο πλαίσιο της εκπαίδευσης από απόσταση και επιχειρούν να δώσουν λύση σ αυτή τη πρόκληση. Η δημιουργία των εργαστηρίων από απόσταση πλέον αποτελεί μια καλή λύση για τα πανεπιστήμια αφού μέσα από αυτά μπορούν να λυθούν διάφορα προβλήματα όπως το μεγάλο πλήθος των φοιτητών, η έλλειψη προσωπικού και η μείωση του κόστους των εργαστηρίων. Επίσης τα εργαστήρια από απόσταση παρέχουν την δυνατότητα στους φοιτητές να εκτελούν διάφορες εργαστηριακές ασκήσεις ή να παρακολουθούν την εξέλιξη ορισμένων πειραμάτων χωρίς την φυσική τους παρουσία στον χώρο του εργαστηρίου.

52 Το R - DSP Lab Ένα Εργαστήριο από απόσταση έχει στηθεί στο ELLAB για το μεταπτυχιακό μάθημα Συστήματα επεξεργασίας σημάτων με DSPs στο εργαστήριο των DSPs. Οι φοιτητές αποκτούν πρόσβαση και έλεγχο πάνω στα εργαστηριακά όργανα (παλμογράφους, γεννήτριες συχνοτήτων) και τη δυνατότητα να προγραμματίζουν τις DSKC713 κάρτες που διαθέτει το εργαστήριο μέσω του ενός απλού Web Browser από το σπίτι τους. Αυτό επιτυγχάνεται χρησιμοποιώντας τεχνολογίες και εργαλεία όπως Web Server Λειτουργίες, Διαδικτυακά πρωτόκολλα, HTLM, PHP προγραμματισμό, Βάσεις Δεδομένων σε MySQL, Μετρήσεις από απόσταση και γραφικά περιβάλλοντα (GUIs) σε Labview Αρχιτεκτονική του R DSP Lab Τα δομικά στοιχεία του R-DSP Lab από πλευράς hardware υλικού είναι ο Main Web Server (Κεντρικός Yπολογιστής Δικτύου) και τα Workstations (Θέσεις Εργασίας). Η αρχιτεκτονική του όπως φαίνεται στο σχήμα είναι ευέλικτη και εύκολα επεκτάσιμη αφού βασίζεται σε έναν κεντρικό υπολογιστή που επιτρέπει την ελάττωση ή την αύξηση του αριθμού των Θέσεων Εργασίας ανάλογα με τις ανάγκες και τις υποδομές του εκάστοτε εργαστηρίου. Αξίζει να σημειωθεί ότι οι Θέσεις Εργασίας μπορεί να βρίσκονται σε διάφορα σημεία του πλανήτη αρκεί να μπορούν να συνδεθούν μέσω internet με τον Main Server, Σχήμα 3.1. Σχήμα 3.1. Δομικά στοιχεία του R-DSP Lab

53 53 Κεντρικός Υπολογιστής Δικτύου Ο κεντρικός υπολογιστής δικτύου αναλαμβάνει την υποδοχή των επισκεπτών. Στην αρχική σελίδα του R DSP Lab, οι επισκέπτες ενημερώνονται για την ιστορία του εργαστηρίου και για τις ασκήσεις που μπορούν να πραγματοποιηθούν με την εξ' αποστάσεως πρόσβαση. Παρέχεται επίσης η πρόσβαση στο πληροφοριακό υλικό σχετικό με το αντικείμενο του εργαστηρίου,. Οι χρήστες που επιθυμούν να τρέξουν μια άσκηση πρέπει να ακολουθήσουν τη διαδικασία log in. Σε αυτήν την περίπτωση ο κύριος κεντρικός υπολογιστής δικτύου θα ελέγξει αρχικά τη διαθεσιμότητα των ελεύθερων Θέσεων Εργασίας. Οι πληροφορίες για την κατάσταση των Θέσεων Εργασίας αποθηκεύονται σε μια βάση δεδομένων, όπου μόνο ο κεντρικός υπολογιστής δικτύου και οι Θέσεις Εργασίας του εργαστηρίου Ρ DSP, έχουν πρόσβαση. Σε περίπτωση που μία Θέση Εργασίας είναι διαθέσιμη οι χρήστες δίνουν τη ταυτότητά τους (όνομα χρήστη και κωδικός πρόσβασης). Ο κεντρικός υπολογιστής δικτύου τους επιβεβαιώνει και οι χρήστες έχουν την άδεια για να συνδεθούν με τη διαθέσιμη Θέση Εργασίαςό σταθμό. Εάν καμμία Θέση Εργασίας δεν είναι διαθέσιμη, ο κύριος κεντρικός υπολογιστής δικτύου ενημερώνει τους χρήστες και τους ζητά να προσπαθήσουν πάλι αργότερα. Το Σχήμα 3.2 παρουσιάζει το μπλοκ διάγραμμα του κεντρικού υπολογιστή δικτύου. Σχήμα 3.2. Μπλοκ διάγραμμα κεντρικού υπολογιστή δικτύου Οι λειτουργίες του κεντρικού υπολογιστή δικτύου αναπτύχθηκαν χρησιμοποιώντας PHP, HTML και MySQL [7, 8]. Το υψηλό επίπεδο ασφάλειας επιτυγχάνεται εξαιτίας του γεγονότος ότι ο κεντρικός υπολογιστής δικτύου επιτρέπει την πρόσβαση στις Θέσεις Εργασίας μόνο για συγκεκριμένα IPs. Αυτά τα IPs ανήκουν στους χρήστες που ήδη έχουν περάσει τη διαδικασία σύνδεσης (log in) επιτυχώς. Συνεπώς, η πρόσβαση στις Θέσεις Εργασίας και ο εργαστηριακός εξοπλισμός για οποιοδήποτε αναρμόδιο χρήστη, είναι απαγορευμένοι.

54 54 Θέση Εργασίας Οι Θέσεις Εργασίας επιτρέπουν την επικοινωνία μεταξύ του εξουσιοδοτημένου χρήστη και του εξοπλισμού του εργαστηρίου (όργανα και αναπτυξιακές πλατφόρμες). Η σχεδίαση και η υλοποίηση μιας Θέσης Εργασίας καθορίζονται από το αντικείμενο των εργαστηριακών ασκήσεων που πραγματοποιούνται και από τον εργαστηριακό εξοπλισμό που παρέχεται. Σχήμα 3.3. Δομικά στοιχεία ενός Workstation Οι Θέσεις Εργασίας του εργαστηρίου R DSP Lab, σχήμα, αναπτύχθηκαν και υλοποιήθηκαν χρησιμοποιώντας τον υπάρχοντα εξοπλισμό του υπάρχοντος εργαστηρίου DSPs. Κάθε Θέση Εργασίας αποτελείται από ένα PC με λειτουργικό σύστημα Windows, μια πλατφόρμα ανάπτυξης DSK C6713 της Spectrum Digital βασισμένη σε TMS320C6713 DSP της Texas Instruments (Tj), έναn παλμογράφο TDS 1012 Tektronix και μια DDS TG 2000 γεννήτρια συχνοτήτων TTi [11]. Για τον έλεγχο της Θέσης Εργασίας και της επικοινωνίας μεταξύ του χρήστη και του διαθέσιμου εργαστηριακού εξοπλισμού, μια σειρά εφαρμογών που χρησιμοποιούν LabVIEW v8.0 έχει αναπτυχθεί [14]. Με αυτές τις εφαρμογές, όλος ο έλεγχος του CCS v3.1 και της πλατφόρμας DSK C6713, επιτυγχάνονται χρησιμοποιώντας το LabVIEW to CCS Link Toolkit [10-12]. Οι εφαρμογές που αναπτύχθηκαν χρησιμοποιώντας LabVIEW v8.0 για τον έλεγχο της Θέσης

55 55 Εργασίας έχουν φιλικά προς το χρήστη GUIs μέσω των οποίων επιτυγχάνεται ο έλεγχος μιας γεννήτριας λειτουργίας TG2000 και ενός παλμογράφου TDS 1012 χρησιμοποιώντας τη VISA v3.4 (Virtual Instrument Software Architecture) της NI. Επιπλέον, αυτές οι εφαρμογές επιτρέπουν στους χρήστες για να ελέγξουν τη Θέση Εργασίας μέσω του περιβάλλοντος κατάλληλα σχεδιασμένη ιστοσελίδας. Αυτή η ιστοσελίδα φιλοξενείται από τον ενσωματωμένο LabVIEW Web Server [14] Λειτουργία του R DSP Lab Σε περίπτωση που οι χρήστες περάσουν επιτυχώς τη διαδικασία σύνδεσης, οδηγούνται στη κεντρική ιστοσελίδα. Μέσω αυτή η ιστοσελίδας μπορούν να επιλέξουν μια από τις εργαστηριακές ασκήσεις. Μόλις επιλέξουν μια εργαστηριακή άσκηση, τα στοιχεία χρηστών και οι επιλογές αποθηκεύονται στη βάση δεδομένων του εργαστηρίου και η διαδικασία σύνδεσης με μια από τις διαθέσιμες Θέσεις Εργασίας αρχίζει.

56 56 Σχήμα 3.4. Διάγραμμα ροής του R-DSP lab Η Θέση Εργασίας λαμβάνει τα στοιχεία και τις επιλογές χρηστών από τη βάση δεδομένων. Κατόπιν ο εκτελέσιμος κώδικας της επιλεγμένης εργαστηριακής άσκησης φορτώνεται αυτόματα στο DSK C6713 και το DSP αρχίζει την εκτέλεση προγράμματος. Δεδομένου ότι η ανωτέρω διαδικασία ολοκληρώνεται επιτυχώς, το GUI των οργάνων ενεργοποιείται. Κατόπιν οι χρήστες μπορούν να επιλέξουν το σήμα εισόδου και να παρατηρήσουν τα σήματα εισόδου και εξόδου μέσω της ιστοσελίδας.

57 57 Σχήμα 3.5. Διάγραμμα ροής ενός Workstation

58 Το LabVIEW to CCS Link Toolkit Η συνεχής ανάπτυξη των επεξεργαστών ψηφιακού σήματος (Digital Signal Processors DSPs) οδήγησε μεγάλες εταιρείες όπως η The Mathworks και η National Instruments να εξοπλίσουν τα προϊόντα τους με εργαλεία για την διασύνδεση με αναπτυξιακές πλατφόρμες που περιέχουν DSPs. Επειδή η Texas Instruments κατέχει το μεγαλύτερο μέρος της παγκόσμιας αγοράς των DSPs, η The Mathworks και η National Instruments (NI) έχουν δώσει ιδιαίτερη έμφαση στους DSPs της Texas Instruments (TI) και στο αναπτυξιακό περιβάλλον της Code Composer Studio (CCS). Ακολουθώντας την φιλοσοφία του Test Integration Toolkit for TI DSPs της National Instrument και με σκοπό να καλυφθούν οι αδυναμίες του, δημιουργήθηκε ένα νέο toolkit που το ονομάστηκε LabVIEW to CCS Link (αναφορα). Το νέο toolkit έχει την δυνατότητα να ελέγχει πλήρως το Code Composer Studio v3.1 και να επικοινωνεί με τους DSPs της Texas Instruments (TI). Στο Σχήμα 3.6 παρουσιάζεται η σύνδεση του LabVIEW με το CCS χρησιμοποιώντας το LabVIEW to CCS Link. Επιπρόσθετα παρέχει την δυνατότητα να ελεγχθεί το CCStudio Setup v3.1 ώστε να είναι δυνατό να οριστεί προγραμματιστικά μέσω του LabVIEW το υλικό (hardware) με το οποίο θα επικοινωνεί το CCS. Το LabVIEW to CCS Link υποστηρίζει την εγγραφή και ανάγνωση αριθμών και πινάκων όλων των τύπων (κινητής υποδιαστολής απλής ή διπλής ακρίβειας και ακέραιων με ή χωρίς πρόσημο των 1-, 2- ή 4-byte) καθώς και γραμματοσειρών (strings) με απευθείας προσπέλαση της μνήμης του DSP. Υποστηρίζει την μεταφορά αριθμών και πινάκων (κινητής υποδιαστολής απλής ή διπλής ακρίβειας και ακέραιων με ή χωρίς πρόσημο των 1-, 2- ή 4byte) από και προς τον DSP αξιοποιώντας την RTDX τεχνολογία. Το LabVIEW to CCS Link απαιτεί την ύπαρξη του LabVIEW 7.1 ή μεταγενέστερης έκδοσης και του Code Composer Studio v3.1 ή μεταγενέστερης έκδοσης. LabVIEW to CCS Link C2000 C5000 C6000 OMAP Σχήμα 3.6. Σύνδεση του LabVIEW με το CCS Mε το LabVIEW to CCS Link είναι δυνατό να δημιουργηθούν εύκολα και γρήγορα VIs που θα λειτουργούν ως γραφικά περιβάλλοντα αλληλεπίδρασης με τον χρήστη (Graphical User Interfaces GUIs) για τον έλεγχο και την διαχείριση εφαρμογών με DSPs. Το LabVIEW to CCS Link είναι ένα πολύ χρήσιμο εργαλείο τόσο για εκπαιδευτικούς σκοπούς όσο και για σχεδιαστές DSP συστημάτων λόγο του μικρού χρόνου ανάπτυξης των GUIs που οφείλεται στον γραφικό προγραμματισμό του LabVIEW αλλά και στις δυνατότητες του LabVIEW to CCS Link. Με τον

59 59 συνδυασμό των δυνατοτήτων του LabVIEW και του toolkit ο χρήστης μπορεί να δημιουργήσει GUIs για εφαρμογές με DSPs, με πολύ μεγάλες δυνατότητες τόσο για τον έλεγχο των εφαρμογών του όσο και για την περαιτέρω επεξεργασία των αποτελεσμάτων ή για την προεπεξεργασία των δεδομένων. 3.3 Περιγραφή των SubVIs του LabVIEW to CCS Link Τα SubVIs του LabVIEW to CCS Link χωρίζονται σε τρεις κατηγορίες σύμφωνα με την χρησιμότητα τους: Ρύθμιση του CCS Αυτοματοποίηση του CCS Επικοινωνία με το CCS Ρύθμιση του CCS Τα SubVIs που ανήκουν στην κατηγορία Ρύθμιση του CCS ελέγχουν το CCStudio Setup v3.1 ή μεταγενέστερη έκδοση, ώστε να είναι δυνατό προγραμματιστικά να οριστεί η κάρτα ή οι κάρτες, με τις οποίες θα επικοινωνήσει το CCS. Με τον όρο κάρτα πέρα από τις αναπτυξιακές πλατφόρμες εννοούμε και τους εξομοιωτές. Το CCS δεν υποστηρίζει την ταυτόχρονη ύπαρξη δύο ή περισσότερων εξομοιωτών, υποστηρίζει όμως την ταυτόχρονη ύπαρξη ενός εξομοιωτή και μιας ή περισσότερων αναπτυξιακών πλατφορμών. Τα SubVIs αυτής της κατηγορίας παρουσιάζονται στον Πίνακα 3.1. Εικ. Ονομασία CCS_Setup_Open.vi Εικ. Ονομασία CCS_Setup_Remove_ Board.vi CCS_Setup_Close.vi CCS_Setup_Rename_ Processor.vi CCS_Setup_Clear.vi CCS_Setup_Boards_&_ Processors.vi CCS_Setup_ Add_Board.vi CCS_Setup_Save.vi CCS_Setup_Rename_ Board.vi Πίνακας 3.1. Τα SubVIs της κατηγορίας Ρύθμιση του CCS Για να μπορέσει κάποιος να δημιουργήσει ένα VI που θα ρυθμίσει το CCS ώστε να χρησιμοποιήσει το DSK C6713 αρχικά θα πρέπει να σκεφτεί ένα προς ένα τα βήματα που θα έκανε χρησιμοποιώντας το CCStudio Setup χειροκίνητα. Τα βήματα που θα έκανε κάποιος χειροκίνητα για να καθορίσει την ύπαρξη του DSK C6713 είναι: Να ανοίξει το CCStudio Setup

60 60 Να σβήσει τις προηγούμενες ρυθμίσεις Να επιλέξει και να προσθέσει την κάρτα που επιθυμεί, στην συγκεκριμένη περίπτωση το DSK C6713, είτε χρησιμοποιώντας το παράθυρο Available Boards είτε εισάγοντας το αρχείο των οδηγών της κάρτας ή του εξομοιωτή (αρχείο με επέκταση.ccs) επιλέγοντας File Import και δίνοντας την διαδρομή και το όνομα του αρχείου. Να αποθηκεύσει τις ρυθμίσεις που έκανε. Τέλος να κλείσει το CCStudio Setup. Όλα τα παραπάνω βήματα μπορούν να υλοποιηθούν προγραμματιστικά με το LabVIEW αξιοποιώντας τα SubVIs που περιέχει η κατηγορία Ρύθμιση του CCS, του LabVIEW to CCS Link. Επομένως σε ένα κενό VI του LabVIEW ο χρήστης θα πρέπει να τοποθετήσει τα SubVIs της παραπάνω κατηγορίας που αντιστοιχούν στα βήματα που θα έκανε χειροκίνητα. Η επιλογή των κατάλληλων SubVIs γίνεται με το παρακάτω σκεπτικό: Το 1o βήμα ήταν να ανοίξει το CCStudio Setup αυτό το αναλαμβάνει το CCSetup_ Open.vi. Το 2o βήμα ήταν να σβήσει τις προηγούμενες ρυθμίσεις του CCStudio Setup αυτό το αναλαμβάνει το CCSetup_Clear.vi. Το 3o βήμα ήταν να επιλεγεί και να προστεθεί η κάρτα αυτό το αναλαμβάνει το CCSetup_Add_Board.vi. Το 4o βήμα είναι να αποθηκευτούν οι ρυθμίσεις αυτό το αναλαμβάνει το CCSetup_Save.vi. Το 5o βήμα είναι να κλείσει το CCSetup Studio αυτό το αναλαμβάνει το CCSetup_Close.vi. Εφόσον τοποθετηθούν παραπάνω SubVIs στο κενό VI, ο χρήστης θα πρέπει να τα συνδέσει μεταξύ τους και να προσθέσει τους απαραίτητους ελεγκτές (controls), ενδείκτες (indicators) και σταθερές (constants) ώστε να μπορέσει να λειτουργήσει το VI. Θα πρέπει να σημειωθεί ότι οι είσοδοι των SubVIs που μένουν ασύνδετες παίρνουν τις προκαθορισμένες τιμές τους. Στο Σχήμα 3.7 παρουσιάζεται η τελική μορφή του block diagram του VI που καθορίζει μέσω του CCStudio Setup την ύπαρξη του DSK C6713. Σχήμα 3.7. Το block diagram του VI που καθορίζει την ύπαρξη του DSK C6713. Η Boolean σταθερά με τιμή False που συνδέθηκε στην είσοδο Visible του CCSetup_ Open.vi καθορίζει ότι το CCStudio Setup θα ανοίξει αλλά δεν θα είναι ορατό στον χρήστη. Ο ελεγκτής error in που συνδέθηκε στην αντίστοιχη είσοδο του CCSetup_Open.vi είναι προαιρετικός αφού έχει αξία αν το συγκεκριμένο VI χρησιμοποιηθεί ως SubVI. Η σταθερά Driver Path περιέχει την πλήρη διαδρομή του αρχείου των οδηγών του DSK C6713. Αν το CCS έχει εγκατασταθεί σε διαφορετική από την προκαθορισμένη διαδρομή τότε κατάλληλα θα πρέπει να τροποποιηθεί το περιεχόμενο της σταθεράς Driver Path που συνδέεται στην αντίστοιχη είσοδο του CCSetup_Add_ Board.vi. Τέλος ο ενδείκτης error out θα ενημερώσει τον χρήστη αν προέκυψε κάποιο σφάλμα κατά την εκτέλεση του VI.

61 61 Σχήμα 3.8. Το παράθυρο του CCStudio Setup εφόσον εκτελεστεί το VI που καθορίζει την ύπαρξη του DSK C6713. Αν εκτελεστεί το παραπάνω VI και μετά ανοίξετε το CCStudio Setup θα παρατηρήσετε ότι έχει γίνει η ρύθμιση του CCS για την χρησιμοποίηση του DSK C6713, αφού το CCStudio Setup θα έχει την μορφή του Σχήματος Αυτοματοποίηση του CCS Τα SubVIs που ανήκουν στην κατηγορία Αυτοματοποίηση του CCS έχουν ως σκοπό τον έλεγχο του Code Composer Studio v3.1 ή μεταγενέστερη έκδοση και κατά επέκταση του DSP. Στον Πίνακα 3.2 παρουσιάζονται τα SubVIs αυτής της κατηγορίας. Εικ. Ονομασία Εικ. Ονομασία CCS_Open.vi CCS_DSP_Reset.vi CCS_Close.vi CCS_DSP_Run.vi CCS_Open_ Project.vi CCS_DSP_Restart.vi CCS_Close_ Project.vi CCS_DSP_Halt.vi CCS_Connect.vi CCS_Is_DSP_ Running.vi CCS_Disconnect.vi CCS_RTDX_Enable.vi CCS_Build_All.vi CCS_RTDX_Disable.vi CCS_Build_ Result.vi CCS_RTDX_Logfile_ Configuration.vi CCS_Download.vi Πίνακας 3.2. Τα VIs της κατηγορίας Αυτοματοποίηση του CCS

62 62 Για να μπορέσει κάποιος να δημιουργήσει ένα VI που ελέγξει έναν DSP της TI μέσω του CCS αρχικά θα πρέπει να σκεφτεί ένα προς ένα τα βήματα που θα έκανε χρησιμοποιώντας το CCS χειροκίνητα. Τα βήματα που θα έκανε κάποιος χειροκίνητα για να ελέγξει ένα DSP μέσω του CCS (εφόσον το project του CCS που θα χρησιμοποιηθεί έχει δημιουργηθεί νωρίτερα) είναι: Να ανοίξει το CCS. Να ανοίξει το project που επιθυμεί στο CCS. Να κτίσει το project. Να δώσει εντολή στο CCS να συνδεθεί με τον DSP. Να δώσει εντολή στον DSP να επανέλθει στην αρχική του κατάσταση (Reset). Να φορτώσει - κατεβάσει το πρόγραμμα (αρχείο με επέκταση.out) στον DSP. Να ενεργοποιήσει την RTDX τεχνολογία αν το project που φόρτωσε την αξιοποιεί. Να δώσει εντολή στον DSP να ξεκινήσει την εκτέλεση του προγράμματος. Εφόσον ο DSP ολοκληρωθεί η διαδικασία που επιθυμεί ο χρήστης, θα πρέπει να δοθεί εντολή στον DSP να σταματήσει την εκτέλεση του προγράμματος. Εφόσον έχει ενεργοποιηθεί η RTDX τεχνολογία θα πρέπει ο χρήστης να την απενεργοποιήσει. Να δώσει εντολή στο CCS να αποσυνδέσει την κάρτα. Να κλείσει το project που είχε ανοίξει στο CCS. Να κλείσει το CCS. Όλα τα παραπάνω βήματα μπορούν να υλοποιηθούν προγραμματιστικά με το LabVIEW αξιοποιώντας τα SubVIs που περιέχει η κατηγορία Αυτοματοποίηση του CCS, του LabVIEW to CCS Link. Επομένως σε ένα κενό VI του LabVIEW ο χρήστης θα πρέπει να τοποθετήσει τα SubVIs της παραπάνω κατηγορίας που αντιστοιχούν στα βήματα που θα έκανε χειροκίνητα. Η επιλογή των κατάλληλων SubVIs γίνεται με το παρακάτω σκεπτικό: To 1o βήμα ήταν να ανοίξει το CCS, αυτό το αναλαμβάνει το CCS_Open.vi. To 2o βήμα ήταν να ανοιχτεί το επιθυμητό project στο CCS, αυτό το αναλαμβάνει το CCS_Open_Project.vi. Το 3o βήμα ήταν να κτιστεί το συγκεκριμένο project, αυτό το αναλαμβάνει το CCS_Build_All.vi. Αν είναι ο χρήστης επιθυμεί να βλέπει και τα αποτελέσματα του κτισίματος στο VI που θα δημιουργήσει θα πρέπει να χρησιμοποιήσει και το CCS_Build_ Result.vi Το 4ο βήμα ήταν να συνδεθεί το CCS με τον DSP, αυτό το αναλαμβάνει το CCS_ Connect.vi. Το 5o βήμα ήταν να επανέλθει ο DSP στην αρχική του κατάσταση (Reset), αυτό το αναλαμβάνει το CCS_Reset.vi. Το 6ο βήμα ήταν να φορτωθεί το πρόγραμμα (αρχείο με επέκταση.out) στον DSP, αυτό το αναλαμβάνει το CCS_Download.vi. Το 7ο βήμα ήταν η ενεργοποίηση της RTDX τεχνολογίας αυτό το αναλαμβάνει το CCS_RTDX_Enable.vi. Το 8ο βήμα ήταν εκκίνηση της εκτέλεση του προγράμματος από το DSP, αυτό το αναλαμβάνει το CCS_Run.vi. To 9o βήμα ήταν το σταμάτημα της εκτέλεσης του προγράμματος από τον DSP, αυτό το αναλαμβάνει το CCS_Halt.vi. Το 10ο βήμα ήταν η απενεργοποίηση της RTDX τεχνολογίας, αυτό το αναλαμβάνει το CCS_Disable_RTDX.vi. To 11o βήμα ήταν η αποσύνδεση της κάρτας, αυτό το αναλαμβάνει το CCS_ Disconnect.vi. Το 12ο βήμα ήταν το κλείσιμο του project, αυτό το αναλαμβάνει το CCS_Close_ Project.vi. To 13o βήμα ήταν το κλείσιμο του CCS, αυτό το αναλαμβάνει το CCS_Close.vi.

63 63 Εφόσον τοποθετηθούν παραπάνω SubVIs στο κενό VI, ο χρήστης θα πρέπει να τα συνδέσει μεταξύ τους και να προσθέσει τους απαραίτητους ελεγκτές (controls), ενδείκτες (indicators), σταθερές (constants) και δομές (structures) ώστε να μπορέσει να λειτουργήσει το VI. Θα πρέπει να σημειωθεί ότι οι είσοδοι των SubVIs που μένουν ασύνδετες παίρνουν τις προκαθορισμένες τιμές τους. Στο Σχήμα 3.9 παρουσιάζεται το block diagram ενός τυπικού VI που ελέγχει το CCS και κατά επέκταση έναν DSP. Σχήμα 3.9. Το block diagram ενός τυπικού VI που ελέγχει έναν DSP μέσω του CCS Στο τυπικό block diagram του Σχήματος η σταθερά Project Path που συνδέεται στην είσοδο Project Path In του CCS_Open_Project.vi θα πρέπει να περιέχει την πλήρη διαδρομή του project (αρχείο με επέκταση.pjt) που πρόκειται να ανοιχτεί στο CCS. Ο ενδείκτης Build Result συνδέεται με την έξοδο Build Result του CCS_Build_Result.vi και δείχνει το αποτέλεσμα του κτισίματος του project. Μεταξύ του CCS_Run.vi και του CCS_Halt.vi παρεμβάλλεται μια δομή While στην οποία θα πρέπει να τοποθετηθεί ο κυρίως κώδικας του VI. Ο κυρίως κώδικας θα πρέπει να πραγματοποιεί την επεξεργασία και την μεταφορά των δεδομένων από και προς τον DSP. Ο τρόπος με τον οποίο ο κυρίως κώδικας μπορεί να ανταλλάξει δεδομένα με τον DSP θα παρουσιαστεί σε επόμενη παράγραφο. Η δομή While όπως παρουσιάζεται στο Σχήμα 3.9, σταματάει να εκτελείται αν προκύψει κάποιο σφάλμα ή αν ο ελεγκτής Stop πάρει την τιμή True. Όσο εκτελείται η δομή While δεν μπορούν να εκτελεστούν τα SubVIs που την ακολουθούν, το γεγονός αυτό διασφαλίζει ότι ο DSP θα συνεχίσει την εκτέλεση του προγράμματός του, μέχρι αυτό να ολοκληρωθεί ή μέχρι ο ελεγκτής Stop να πάρει την τιμή True. Θα πρέπει να τονιστεί αν το CCS έχει ρυθμιστεί για την χρησιμοποίηση κάποιου από τους εξομοιωτές, δεν θα πρέπει στο block diagram να τοποθετηθούν τα CCS_Connect.vi και CCS_Disconnect.vi, αφού η δυναμική σύνδεση και αποσύνδεση έχει νόημα μόνο για τις κάρτες και όχι για τους εξομοιωτές. Αν το CCS έχει ρυθμιστεί για την χρησιμοποίηση κάποιας κάρτας τότε υποχρεωτικά πριν τα SubVIs που σχετίζονται με τον DSP όπως τα CCS_Run.vi, CCS_ Reset.vi κλπ. θα πρέπει να έχει τοποθετηθεί το CCS_Connect.vi ώστε να επιτευχθεί η σύνδεση του CCS με την κάρτα. Επίσης πριν τα SubVIs που προκαλούν το κλείσιμο του project και του CCS και μετά από τα SubVIs που σχετίζονται με τον DSP, θα πρέπει να τοποθετηθεί το CCS_ Disconnect.vi ώστε να αποσυνδεθεί η κάρτα από το CCS. Στην περίπτωση που το project του CCS δεν κάνει χρήση της RTDX τεχνολογίας είναι άσκοπη η χρήση και η τοποθέτηση των SubVIs που σχετίζονται με την RTDX τεχνολογία όπως τα CCS_ RTDX_Enable.vi, CCS_RTDX_Disable.vi κλπ. Αν γίνεται χρήση της Non Continuous μεθόδους της RTDX τεχνολογίας θα μπορούσε να χρησιμοποιηθεί και το CCS_RTDX_Logfile_Configuration.vi εφόσον οι προκαθορισμένες ρυθμίσεις του logfile δεν ανταπεξέρχονται στις απαιτήσεις του χρήστη. Δεν έχει νόημα η χρησιμοποίηση του CCS_RTDX_Logfile_Configuration.vi αν χρησιμοποιείται η Continuous μέθοδος της RTDX τεχνολογίας, αφού σε αυτή την περίπτωση δεν γίνεται χρήση του logfile. Η επιλογή της RTDX

64 64 μεθόδου γίνεται από το CCS_RTDX_Enable.vi Επικοινωνία με το CCS Τα SubVIs που ανήκουν στην κατηγορία Επικοινωνία με το CCS χρησιμοποιούντα για την ανταλλαγή δεδομένων μεταξύ του LabVIEW και του CCS. Με τα SubVIs αυτής της κατηγορίας ο χρήστης μπορεί να δημιουργήσει VIs που θα στέλνουν και θα λαμβάνουν δεδομένα από τον DSP είτε με απευθείας προσπέλαση της μνήμης του DSP είτε αξιοποιώντας την RTDX τεχνολογία. Τα SubVIs αυτή της κατηγορίας παρουσιάζονται στον Πίνακα 3.3. Εικ. Ονομασία Εικ. Ονομασία RTDX_Channel_ Disable.vi MEM_Read.vi RTDX_Channel_ Enable.vi MEM_Write.vi RTDX_Channel_ Status.vi Leds_Read_ (DSK6713).vi RTDX_Read.vi Leds_Write_ (DSK6713).vi RTDX_Write.vi Switches_Read_ (DSK6713).vi MEM_Get_ Address.vi Πίνακας 3.3. Τα SubVIs της κατηγορίας Επικοινωνία με το CCS MEM_Get_Address.vi Το SubVI MEM_Get_Address.vi που φαίνεται στο Σχήμα 3.10 εντοπίζει την σελίδα και την διεύθυνση στην μνήμη του DSP που είναι αποθηκευμένο το σύμβολο που περιγράφει η είσοδος Symbol Name. Ο όρος σύμβολο σημαίνει μια μεταβλητή ή ένα πίνακα οποιουδήποτε τύπου που έχει οριστεί στο project του CCS. Αν πρόκειται για πίνακα το MEM_Get_Address.vi θα επιστρέψει την σελίδα και την διεύθυνση στην μνήμη του DSP που είναι αποθηκευμένο το πρώτο στοιχείο του πίνακα. Το σύμβολο προτείνεται να είναι γενικό (global). CCS In Symbol Name error in CCS Out Page & Address error out Σχήμα Το MEM_Get_Address.vi MEM_Read.vi Το SubVI MEM_Read.vi είναι ένα πολυμορφικό VI που έχει την δυνατότητα να διαβάζει σειρές αλφαριθμητικών χαρακτήρων (Strings), πίνακες και αριθμούς κινητής υποδιαστολής μονής ή διπλής ακρίβειας, ακέραιους με ή χωρίς πρόσημο των 8-, 16- και 32-bit από την μνήμη του DSP με απευθείας προσπέλαση της. Το MEM_Read.vi αποτελείται από ένα σύνολο SubVIs που θα περιγραφούν στην συνέχεια και παρουσιάζονται ονομαστικά στον Πίνακα 3.6.

65 65 Εικ. Ονομασία Εικ. Ονομασία MEM_Read_F4.vi MEM_Read_A_F4.vi MEM_Read_F8.vi MEM_Read_A_F8.vi MEM_Read_I1.vi MEM_Read_A_I1.vi MEM_Read_I2.vi MEM_Read_A_I2.vi MEM_Read_I4.vi MEM_Read_A_I4.vi MEM_Read_UI1.vi MEM_Read_A_UI1.vi MEM_Read_UI2.vi MEM_Read_A_UI2.vi MEM_Read_UI4.vi MEM_Read_A_UI4.vi MEM_Read_String.vi Πίνακας 3.6. Τα SubVIs του MEM_Read.vi MEM_Write.vi Το SubVI MEM_Write.vi είναι ένα πολυμορφικό VI που έχει την δυνατότητα να γράφει σειρές αλφαριθμητικών χαρακτήρων (Strings), πίνακες και αριθμούς κινητής υποδιαστολής μονής ή διπλής ακρίβειας, ακέραιους με ή χωρίς πρόσημο των 8-, 16- και 32-bit στην μνήμη του DSP με απευθείας προσπέλαση της. Το MEM_Write.vi αποτελείται από ένα σύνολο SubVIs που θα περιγραφούν στην συνέχεια και παρουσιάζονται ονομαστικά στον Πίνακα 3.7. Εικ. Ονομασία Εικ. Ονομασία MEM_Write_F4.vi MEM_Write_A_F4.vi MEM_Write_F8.vi MEM_Write_A_F8.vi MEM_Write_I1.vi MEM_Write_A_I1.vi MEM_Write_I2.vi MEM_Write_A_I2.vi MEM_Write_I4.vi MEM_Write_A_I4.vi MEM_Write_UI1.vi MEM_Write_A_UI1.vi MEM_Write_UI2.vi MEM_Write_A_UI2.vi MEM_Write_UI4.vi MEM_Write_A_UI4.vi MEM_Write_String.vi

66 66 Πίνακας 3.7. Τα SubVIs του MEM_Write.vi Για την ανταλλαγή δεδομένων ενός VI και ενός DSP έχουν δημιουργηθεί τα SubVIs της κατηγορίας Επικοινωνία με το CCS. Τα SubVIs που ασχολούνται με την επικοινωνία υποστηρίζουν την εγγραφή και ανάγνωση δεδομένων στην μνήμη του DSP με απευθείας προσπέλασή της και την ανταλλαγή δεδομένων με την αξιοποίηση της RTDX τεχνολογίας που υποστηρίζουν οι DSPs της TI. Τα SubVIs που αναλαμβάνουν την επικοινωνία με το CCS και κατά επέκταση με τον DSP, αποτελούν τμήμα του κυρίως κώδικα του VI που αυτοματοποιεί το CCS. Δηλαδή τα SubVIs της κατηγορίας Επικοινωνία με το CCS συνήθως τοποθετούνται μέσα στην δομή While ώστε να διασφαλίζεται η συνεχή επικοινωνία με το CCS και τον DSP. Η μεταφορά δεδομένων με απευθείας προσπέλαση της μνήμης του DSP έχει το πλεονέκτημα ότι δεν απαιτεί την τροποποίηση του κώδικα ενός project στο CCS. Το μεγάλο μειονέκτημα της μεταφοράς δεδομένων με απευθείας προσπέλαση της μνήμης είναι ότι ο DSP διακόπτει την εκτέλεση του προγράμματος που εκτελεί, μέχρι να ολοκληρωθεί η μεταφορά των δεδομένων. Το χρονικό διάστημα της διακοπής της εκτέλεσης του προγράμματος του DSP κατά την μεταφορά των δεδομένων εξαρτάται από τον όγκο των δεδομένων. Η TI με την RTDX τεχνολογία που δημιούργησε και που ενσωμάτωσε στους DSPs της κατάφερε να επιτύχει μεγαλύτερη ταχύτητα μεταφοράς δεδομένων και να μην διακόπτει ο DSP την εκτέλεση του προγράμματος, για μεγάλα χρονικά διαστήματα, ώστε να ολοκληρωθεί η μεταφορά των δεδομένων. Το μειονέκτημα αυτής της μεθόδου είναι ότι απαιτείται η τροποποίηση του C κώδικα ενός project στο CCS που δεν υποστήριζε την μεταφορά δεδομένων με την RTDX τεχνολογία. Η μεταφορά δεδομένων με την RTDX τεχνολογία είναι πολύ χρήσιμη στις εφαρμογές πραγματικού χρόνου. Απευθείας Προσπέλαση της Μνήμης του DSP Η μεταφορά δεδομένων με απευθείας προσπέλαση της μνήμης του DSP δίνει την δυνατότητα στον χρήστη να μπορεί να διαβάσει και να γράψει δεδομένα σε οποιαδήποτε θέση μνήμης του DSP. Αυτό είναι πολύ σημαντικό για τον έλεγχο μιας υπάρχουσας εφαρμογής αφού δεν απαιτεί την τροποποίηση του κώδικα της εφαρμογής στο CCS, η μοναδική απαίτηση που υπάρχει είναι οι μεταβλητές του project που περιέχουν τα προς μεταφορά δεδομένα να είναι γενικές (global). Ανάγνωση από την Μνήμη του DSP Για να αναγνωστεί η τιμή μιας μεταβλητής τύπου double θα πρέπει να χρησιμοποιηθεί το MEM_Read.vi και να επιλεγεί το MEM_Read_F8, στην είσοδο Page & Address θα πρέπει να δοθεί η σελίδα και η διεύθυνση στην μνήμη του DSP από όπου θα ξεκινήσει η ανάγνωση. Αν ο χρήστης δεν γνωρίζει την θέση μνήμης που είναι αποθηκευμένη η μεταβλητή θα πρέπει να χρησιμοποιήσει το MEM_Get_Address.vi και να ορίσει στην είσοδο Symbol Name το όνομα της μεταβλητής. Το MEM_Get_Address.vi θα επιστρέψει την σελίδα και την διεύθυνση στην μνήμη του DSP που είναι αποθηκευμένη η μεταβλητή. Η έξοδος Data του MEM_Read.vi θα περιέχει την τιμή της μεταβλητής που θα αναγνωστεί. Στο Σχήμα 3.11(a) παρουσιάζεται η δομή While του Σχήματος 3.9 όπως θα πρέπει να μετατραπεί ώστε να πραγματοποιείται η ανάγνωση της τιμής μιας μεταβλητής τύπου double (αριθμός κινητής υποδιαστολής διπλής ακρίβειας των 8-byte) που βρίσκεται στην διεύθυνση 8000C1FD (hex) της σελίδας 0 της μνήμης του DSP

67 67 (a) (b) Σχήμα Ανάγνωση μιας μεταβλητής τύπου double με απευθείας προσπέλαση της μνήμης του DSP (a) γνωρίζοντας την σελίδα και την διεύθυνση της, (b) γνωρίζοντας μόνο το όνομα της Στο Σχήμα 3.11(b) παρουσιάζεται η δομή While του Σχήματος 3.9 όπως θα πρέπει να μετατραπεί ώστε να πραγματοποιείται η ανάγνωση της τιμής μιας μεταβλητής τύπου double (αριθμός κινητής υποδιαστολής διπλής ακρίβειας των 8-byte) συμφωνά με την διεύθυνση και την σελίδα, της μνήμης του DSP που εντοπίζει το MEM_Get_Address.vi χρησιμοποιώντας το όνομα της μεταβλητής. Με την διαδικασία που αναφέρθηκε παραπάνω μπορεί να πραγματοποιηθεί η ανάγνωση των δεδομένων μιας μεταβλητής οποιουδήποτε τύπου. Για να αναγνωστεί κάποιος πίνακας ή μια σειρά αλφαριθμητικών χαρακτήρων από την μνήμη του DSP ακολουθείται η διαδικασία που παρουσιάστηκε παραπάνω με την διαφορά ότι στην είσοδο Size του MEM_Read.vi θα πρέπει να δοθεί το πλήθος των στοιχείων του πίνακα ή το πλήθος των αλφαριθμητικών χαρακτήρων της σειράς. Εγγραφή στην Μνήμη του DSP Για να πραγματοποιηθεί η εγγραφή δεδομένων σε μια μεταβλητή τύπου integer (int) θα πρέπει να χρησιμοποιηθεί το MEM_Write.vi και να επιλεγεί το MEM_Write_I4, στην είσοδο Page & Address θα πρέπει να δοθεί η σελίδα και η διεύθυνση στην μνήμη του DSP από όπου θα ξεκινήσει η εγγραφή. Αν ο χρήστης δεν γνωρίζει την θέση μνήμης που είναι αποθηκευμένη η μεταβλητή θα πρέπει να χρησιμοποιήσει το MEM_Get_ Address.vi και να ορίσει στην είσοδο Symbol Name το όνομα της μεταβλητής. Το MEM_Get_Address.vi θα επιστρέψει την σελίδα και την διεύθυνση στην μνήμη του DSP που είναι αποθηκευμένη η μεταβλητή. Η είσοδος Data του MEM_Write.vi περιέχει τα δεδομένα που θα εγγραφούν στην μεταβλητή. Στο Σχήμα 3.12(a) παρουσιάζεται η δομή While του Σχήματος 3.9 όπως θα πρέπει να μετατραπεί ώστε να πραγματοποιείται η εγγραφή των δεδομένων που περιέχει ο ελεγκτής Data σε μια μεταβλητή τύπου integer (ακέραιος αριθμός με πρόσημο των 4-byte) που βρίσκεται στην διεύθυνση 8000FFE0 (hex) της σελίδας 0 της μνήμης του DSP. Στο Σχήμα 3.12(b) παρουσιάζεται η δομή While του Σχήματος 3.9 όπως θα πρέπει να μετατραπεί ώστε να πραγματοποιείται η εγγραφή των δεδομένων που περιέχει ο ελεγκτής Data σε μια μεταβλητής τύπου integer (ακέραιος αριθμός με πρόσημο των 4-byte) συμφωνά με την διεύθυνση και την σελίδα της μνήμης του DSP που εντοπίζει το MEM_Get_Address.vi

68 68 χρησιμοποιώντας το όνομα της μεταβλητής. (a) (b) Σχήμα Εγγραφή μιας μεταβλητής τύπου integer με απευθείας προσπέλαση της μνήμης του DSP (a) γνωρίζοντας την σελίδα και την διεύθυνση της, (b) γνωρίζοντας μόνο το όνομα της Με την διαδικασία που αναφέρθηκε παραπάνω μπορεί να πραγματοποιηθεί η εγγραφή δεδομένων σε μια μεταβλητή οποιουδήποτε τύπου ή σε κάποιο πίνακα ή σε μια σειρά αλφαριθμητικών χαρακτήρων που είναι αποθηκευμένη στην μνήμη του DSP.

69 69 Κεφάλαιο 4 Υλοποίηση του Συστήματος - Αποτελέσματα 4.1 Εισαγωγή Το σύστημα που υλοποιήθηκε στην παρούσα εργασία αποτελεί ένα τερματικό σταθμό (workstation) του εργαστηρίου από απόσταση R-DSP Lab στο οποίο έγινε αναφορά στο Κεφάλαιο 3 οποίος έχει την δυνατότητα να λαμβάνει, να επεξεργάζεται και να διαχειρίζεται, τοπικά ή από απόσταση, εικόνες που λαμβάνονται από τον OV5610 CMOS αισθητήρα εικόνας αξιοποιώντας τις δυνατότητες και τα πλεονεκτήματα που προσφέρει ο TMS320C6416 επεξεργαστής ψηφιακού σήματος (DSP). Ο συγκεκριμένος επεξεργαστής (και κατά συνέπεια η κάρτα DSK C6416) προτιμήθηκε από τις ήδη υπάρχουσες κάρτες DSK C6713 του εργαστηρίου λόγω της εργασίας που καλείτο να διεκπεραιώσει. Όντως ένας ισχυρός fixed point επεξεργαστής είναι σαφώς καταλληλότερος για εφαρμογές επεξεργασίας εικόνας όπου η μεγάλη ακρίβεια των πράξεων δεν είναι τόσο απαραίτητη όσο η μεγάλη ταχύτητα σε πράξεις πρόσθεσης και πολλαπλασιασμού ακεραίων. Η οικογένεια των C64x δίνει αυτή τη δυνατότητα όπως φαίνεται από τα χαρακτηριστικά του στο Κεφάλαιο 1 και είναι απαραίτητη για το μεγάλο πλήθος πράξεων στις εφαρμογές επεξεργασίας εικόνας και video. Η υλοποίηση του συστήματος πραγματοποιήθηκε σε τρία στάδια την υλοποίηση του συστήματος με το Code Composer Studio v3.1 (CCS), του Interface με το LabVIEW v8.0 και της ιστοσελίδας για τον έλεγχο του συστήματος από απόσταση με το Web Publishing Tool του

70 70 LabVIEW και το Office Front Page Σε αυτό το κεφάλαιο αρχικά θα παρουσιαστούν και θα αναλυθούν οι κώδικες σε C που χρησιμοποιούνται στο project του CCS που υλοποιεί το σύστημα με το DSK C6416. Στην συνέχεια θα παρουσιαστεί και θα αναλυθεί η δημιουργία του Interface με το LabVIEW και της ιστοσελίδας που χρησιμοποιείται για τον έλεγχο του συστήματος από απόσταση. 4.2 Υλοποίηση του Συστήματος με το CCS Σε αυτή την παράγραφο θα παρουσιαστεί και θα αναλυθεί ο τρόπος με τον οποίο υλοποιήθηκε το σύστημα με το CCS v3.1. Αρχικά θα παρουσιαστούν οι συναρτήσεις που δημιουργήθηκαν για τη σύνθεση της RGB εικόνας από τα δεδομένα του Bayern Format που βρίσκονται στην μνήμη SDRAM μετά από τη λήψη μιας εικόνας από την DSK-Eye. Στην συνέχεια θα παρουσιαστεί και θα αναλυθεί το κυρίως πρόγραμμα του συστήματος που αποτελει τη ραχοκοκκαλιά του συστήματος και η δημιουργία του project στο CCS από το οποίο δημιουργείται ο εκτελέσιμος κώδικας του DSP Οι Συναρτήσεις για την σύνθεση της RGB εικόνας Οι συναρτήσεις που παρουσιάζονται σε αυτή την παράγραφο έχουν αποθηκευτεί στο αρχείο Functions.c. Αυτό το αρχείο θα συμπεριληφθεί στο project του CCS από το οποίο δημιουργείται ο εκτελέσιμος κώδικας του DSP. Το αρχείο Functions.c παρουσιάζεται στο Πρόγραμμα 4.1 #define LWIP_COMPAT_SOCKETS 1 #include "lwip/sockets.h" #define pi #define RES_SIZE // divisible by 3 #pragma DATA_ALIGN(ImgStream,128); #define BUFF_SIZE 1536 // divisible by 3 #pragma DATA_ALIGN(Buffer,128); unsigned char Buffer[BUFF_SIZE]; unsigned int Buff_ptr = 0, count = 0; char ImgStream[RES_SIZE] = {0}; typedef struct { // char bftype1; // char bftype2; int bfsize; short bfreserved1; short bfreserved2; int bfoffbits; } BMFH; typedef struct { unsigned int bisize;

71 71 int biwidth; int biheight; short biplanes; short bibitcount; unsigned int bicompression; unsigned int bisizeimage; int bixpelspermeter; int biypelspermeter; unsigned int biclrused; unsigned int biclrimportant; } BMIH; typedef struct { BMFH bmfh; BMIH bmih; } HTLM_bmp_H; void sendbmp( int cs, unsigned char *img,int xs, int ys) { int imgdataoffset = ; // file header size + bitmap header size int rowsz = ((xs) + 3) & -4; // size of one padded row of pixels int imgdatasize = (((xs*3) + 3) & -4) * ys; // size of image data int filesize = imgdataoffset + imgdatasize; int i, y; HTLM_bmp_H HTLM_bmp_h; HTLM_bmp_h.bmfh.bfSize = filesize; HTLM_bmp_h.bmfh.bfReserved1 = 0; HTLM_bmp_h.bmfh.bfReserved2 = 0; HTLM_bmp_h.bmfh.bfOffBits = imgdataoffset; HTLM_bmp_h.bmih.biSize = 40; HTLM_bmp_h.bmih.biWidth = xs; HTLM_bmp_h.bmih.biHeight = ys; HTLM_bmp_h.bmih.biPlanes = 1; HTLM_bmp_h.bmih.biBitCount = 24; HTLM_bmp_h.bmih.biCompression = 0; HTLM_bmp_h.bmih.biSizeImage = imgdatasize; HTLM_bmp_h.bmih.biXPelsPerMeter = 1000; HTLM_bmp_h.bmih.biYPelsPerMeter = 1000; HTLM_bmp_h.bmih.biClrUsed = 1 << 24; HTLM_bmp_h.bmih.biClrImportant = 0; send(cs,(unsigned char *)"BM",2,0); send(cs,(unsigned char *)&HTLM_bmp_h,sizeof(HTLM_bmp_h),0); Buff_ptr = 0;

72 72 for (y=0; y<ys; y++) { // write one row of the image, in reversed RGB -> BGR pixel order // padding bytes should remain 0's, shouldn't have to re-clear them. for (i=rowsz; i!=0; i--) { if( Buff_ptr == BUFF_SIZE ){ if(send(cs, (unsigned char*) Buffer, BUFF_SIZE,0 )!= BUFF_SIZE) return; Buff_ptr = 0; } if ( i > xs ) {// padding Buffer[Buff_ptr++] = 0; // B=0 Buffer[Buff_ptr++] = 0; // G=0 Buffer[Buff_ptr++] = 0; // R=0 } if( y & 1 ) { // Odd line BGBGBG... BG if( i & 1 ) {// R Buffer[Buff_ptr++] = 0; // B=0 Buffer[Buff_ptr++] = 0; // G Buffer[Buff_ptr++] = (*(img + i + xs*y )); // R } else { // G Buffer[Buff_ptr++] = 0; // B Buffer[Buff_ptr++] = (*(img + i + y*xs)); // G=0 Buffer[Buff_ptr++] = 0; // R=0 } }else{ // Even line GRGRGRGR...GR if( i & 1 ) {// G Buffer[Buff_ptr++] = 0; // B=0 Buffer[Buff_ptr++] = (*(img + i + y*xs)); // G Buffer[Buff_ptr++] = 0; // R=0 } else { // B Buffer[Buff_ptr++] = (*(img + i + xs*y)); // B Buffer[Buff_ptr++] = 0; // G=0 Buffer[Buff_ptr++] = 0; // R=0 } } } } } void MysendBMP( int cs, unsigned char *img,int xs, int ys) {

73 73 int imgdataoffset = ; // file header size + bitmap header size int rowsz = ((xs) + 3) & -4; // size of one padded row of pixels int imgdatasize = (((xs*3) + 3) & -4) * ys; // size of image data int filesize = imgdataoffset + imgdatasize; int i, y; HTLM_bmp_H HTLM_bmp_h; HTLM_bmp_h.bmfh.bfSize = filesize; HTLM_bmp_h.bmfh.bfReserved1 = 0; HTLM_bmp_h.bmfh.bfReserved2 = 0; HTLM_bmp_h.bmfh.bfOffBits = imgdataoffset; HTLM_bmp_h.bmih.biSize = 40; HTLM_bmp_h.bmih.biWidth = xs; HTLM_bmp_h.bmih.biHeight = ys; HTLM_bmp_h.bmih.biPlanes = 1; HTLM_bmp_h.bmih.biBitCount = 24; HTLM_bmp_h.bmih.biCompression = 0; HTLM_bmp_h.bmih.biSizeImage = imgdatasize; HTLM_bmp_h.bmih.biXPelsPerMeter = 1000; HTLM_bmp_h.bmih.biYPelsPerMeter = 1000; HTLM_bmp_h.bmih.biClrUsed = 1 << 24; HTLM_bmp_h.bmih.biClrImportant = 0; send(cs,(unsigned char *)"BM",2,0); send(cs,(unsigned char *)&HTLM_bmp_h,sizeof(HTLM_bmp_h),0); Buff_ptr = 0; for (y=0; y<ys; y++) { // write one row of the image, in reversed RGB -> BGR pixel order // padding bytes should remain 0's, shouldn't have to re-clear them. for (i=rowsz; i!=0; i--) { if( Buff_ptr == BUFF_SIZE ){ if(send(cs, (unsigned char*) Buffer, BUFF_SIZE,0 )!= BUFF_SIZE) return; Buff_ptr = 0; } if ( i > xs ) {// padding Buffer[Buff_ptr++] = 0; // B=0 Buffer[Buff_ptr++] = 0; // G=0 Buffer[Buff_ptr++] = 0; // R=0 } if( y & 1 ) { // Odd line BGBGBG... BG if( i & 1 ) {// R Buffer[Buff_ptr++] = ( *(img + (i-1) + xs*(y-1)) + *(img + (i+1) + xs*(y-1)) + *(img + (i-1) + xs*(y+1))+ *(img + (i+1) + xs*(y+1)) )/4; // B

74 74 Buffer[Buff_ptr++] = ( *(img + i + xs*(y-1)) + *(img + i + xs*(y+1)) + *(img + (i-1) + xs*y) + *(img + (i+1) + xs*y) )/4; // G Buffer[Buff_ptr++] = (*(img + i + xs*y )); // R } else { // G Buffer[Buff_ptr++] = (*(img + i + (y-1)*xs) + *(img + i + (y+1)*xs) )/2; // B Buffer[Buff_ptr++] = (*(img + i + y*xs)); // G Buffer[Buff_ptr++] = (*(img + (i-1) + y*xs) + *(img + i+1 + y*xs) )/2; // R } }else{ // Even line GRGRGRGR...GR if( i & 1 ) {// G Buffer[Buff_ptr++] = (*(img + (i-1) + y*xs) + *(img + i+1 + y*xs) )/2; // B Buffer[Buff_ptr++] = (*(img + i + y*xs)); // G Buffer[Buff_ptr++] = (*(img + i + (y-1)*xs) + *(img + i + (y+1)*xs) )/2; // R } else { // B Buffer[Buff_ptr++] = (*(img + i + xs*y)); // B Buffer[Buff_ptr++] = ( *(img + i + xs*(y-1)) + *(img + i + xs*(y+1)) + *(img + (i-1) + xs*y) + *(img + (i+1) + xs*y) )/4; // G Buffer[Buff_ptr++] = ( *(img + (i-1) + xs*(y-1)) + *(img + (i+1) + xs*(y-1)) + *(img + (i-1) + xs*(y+1))+ *(img + (i+1) + xs*(y+1)) )/4; // R } } } } } void MysendBMP6( int cs, unsigned char *img,int xs, int ys, float CC[9], float CS[9]) { int imgdataoffset = ; // file header size + bitmap header size int rowsz = ((xs) + 3) & -4; // size of one padded row of pixels int imgdatasize = (((xs*3) + 3) & -4) * ys; // size of image data int filesize = imgdataoffset + imgdatasize; int i, y, f; unsigned char temp1,temp2; HTLM_bmp_H HTLM_bmp_h; HTLM_bmp_h.bmfh.bfSize = filesize; HTLM_bmp_h.bmfh.bfReserved1 = 0; HTLM_bmp_h.bmfh.bfReserved2 = 0; HTLM_bmp_h.bmfh.bfOffBits = imgdataoffset; HTLM_bmp_h.bmih.biSize = 40; HTLM_bmp_h.bmih.biWidth = xs; HTLM_bmp_h.bmih.biHeight = ys;

75 75 HTLM_bmp_h.bmih.biPlanes = 1; HTLM_bmp_h.bmih.biBitCount = 24; HTLM_bmp_h.bmih.biCompression = 0; HTLM_bmp_h.bmih.biSizeImage = imgdatasize; HTLM_bmp_h.bmih.biXPelsPerMeter = 1000; HTLM_bmp_h.bmih.biYPelsPerMeter = 1000; HTLM_bmp_h.bmih.biClrUsed = 1 << 24; HTLM_bmp_h.bmih.biClrImportant = 0; send(cs,(unsigned char *)"BM",2,0); send(cs,(unsigned char *)&HTLM_bmp_h,sizeof(HTLM_bmp_h),0); Buff_ptr = 0; for (y=0; y<ys; y++) { // write one row of the image, in reversed RGB -> BGR pixel order // padding bytes should remain 0's, shouldn't have to re-clear them. for (i=rowsz; i!=0; i--) { if( Buff_ptr == BUFF_SIZE ){ if(send(cs, (unsigned char*) Buffer, BUFF_SIZE,0 )!= BUFF_SIZE) return; Buff_ptr = 0; } if ( i > xs ) {// padding Buffer[Buff_ptr++] = 0; // B=0 Buffer[Buff_ptr++] = 0; // G=0 Buffer[Buff_ptr++] = 0; // R=0 } else { if( y & 1 ) { // Odd line BGBGBG... BG if( i & 1 ) {// R Buffer[Buff_ptr++] = ( *(img + (i-1) + xs*(y-1)) + *(img + (i+1) + xs*(y-1)) + *(img + (i-1) + xs*(y+1))+ *(img + (i+1) + xs*(y+1)) )/4; // B Buffer[Buff_ptr++] = ( *(img + i + xs*(y-1)) + *(img + i + xs*(y+1)) + *(img + (i-1) + xs*y) + *(img + (i+1) + xs*y) )/4; // G Buffer[Buff_ptr++] = (*(img + i + xs*y )); // R temp1 = Buffer[Buff_ptr - 2]; temp2 = Buffer[Buff_ptr - 1]; Buff_ptr--; Buffer[Buff_ptr] = ((CC[0]*Buffer[Buff_ptr] + CC[1]*Buffer[Buff_ptr-1] + CC[2]*Buffer[Buff_ptr-2])/ )*255; Buff_ptr--; Buffer[Buff_ptr] = ((CC[3]*temp2 + CC[4]*Buffer[Buff_ptr] + CC[5]*Buffer[Buff_ptr-1])/ )*255;

76 76 Buff_ptr--; Buffer[Buff_ptr] = ((CC[6]*temp2 + CC[7]*temp1 + CC[8]*Buffer[Buff_ptr])/ )*255; Buff_ptr += 2; temp1 = Buffer[Buff_ptr - 2]; temp2 = Buffer[Buff_ptr - 1]; Buffer[Buff_ptr] = CS[0]*Buffer[Buff_ptr] + CS[1]*Buffer[Buff_ptr-1] + CS[2]*Buffer[Buff_ptr-2]; Buff_ptr--; Buffer[Buff_ptr] = CS[3]*temp2 + CS[4]*Buffer[Buff_ptr] + CS[5]*Buffer[Buff_ptr-1]; Buff_ptr--; Buffer[Buff_ptr] = CS[6]*temp2 + CS[7]*temp1 + CS[8]*Buffer[Buff_ptr]; Buff_ptr += 3; } else { // G Buffer[Buff_ptr++] = (*(img + i + (y-1)*xs) + *(img + i + (y+1)*xs) )/2; // B Buffer[Buff_ptr++] = (*(img + i + y*xs)); // G Buffer[Buff_ptr++] = (*(img + (i-1) + y*xs) + *(img + i+1 + y*xs) )/2; // R temp1 = Buffer[Buff_ptr - 2]; temp2 = Buffer[Buff_ptr - 1]; Buff_ptr--; Buffer[Buff_ptr] = ((CC[0]*Buffer[Buff_ptr] + CC[1]*Buffer[Buff_ptr-1] + CC[2]*Buffer[Buff_ptr-2])/ )*255; Buff_ptr--; Buffer[Buff_ptr] = ((CC[3]*temp2 + CC[4]*Buffer[Buff_ptr] + CC[5]*Buffer[Buff_ptr-1])/ )*255; Buff_ptr--; Buffer[Buff_ptr] = ((CC[6]*temp2 + CC[7]*temp1 + CC[8]*Buffer[Buff_ptr])/ )*255; Buff_ptr += 2; temp1 = Buffer[Buff_ptr - 2]; temp2 = Buffer[Buff_ptr - 1]; Buffer[Buff_ptr] = CS[0]*Buffer[Buff_ptr] + CS[1]*Buffer[Buff_ptr-1] + CS[2]*Buffer[Buff_ptr-2]; Buff_ptr--; Buffer[Buff_ptr] = CS[3]*temp2 + CS[4]*Buffer[Buff_ptr] + CS[5]*Buffer[Buff_ptr-1]; Buff_ptr--; Buffer[Buff_ptr] = CS[6]*temp2 + CS[7]*temp1 + CS[8]*Buffer[Buff_ptr]; Buff_ptr += 3; } }else{ // Even line GRGRGRGR...GR if( i & 1 ) {// G Buffer[Buff_ptr++] = (*(img + (i-1) + y*xs) + *(img + i+1 + y*xs) )/2; // B Buffer[Buff_ptr++] = (*(img + i + y*xs)); // G Buffer[Buff_ptr++] = (*(img + i + (y-1)*xs) + *(img + i + (y+1)*xs) )/2; // R

77 77 temp1 = Buffer[Buff_ptr - 2]; temp2 = Buffer[Buff_ptr - 1]; Buff_ptr--; Buffer[Buff_ptr] = ((CC[0]*Buffer[Buff_ptr] + CC[1]*Buffer[Buff_ptr-1] + CC[2]*Buffer[Buff_ptr-2])/ )*255; Buff_ptr--; Buffer[Buff_ptr] = ((CC[3]*temp2 + CC[4]*Buffer[Buff_ptr] + CC[5]*Buffer[Buff_ptr-1])/ )*255; Buff_ptr--; Buffer[Buff_ptr] = ((CC[6]*temp2 + CC[7]*temp1 + CC[8]*Buffer[Buff_ptr])/ )*255; Buff_ptr += 2; temp1 = Buffer[Buff_ptr - 2]; temp2 = Buffer[Buff_ptr - 1]; Buffer[Buff_ptr] = CS[0]*Buffer[Buff_ptr] + CS[1]*Buffer[Buff_ptr-1] + CS[2]*Buffer[Buff_ptr-2]; Buff_ptr--; Buffer[Buff_ptr] = CS[3]*temp2 + CS[4]*Buffer[Buff_ptr] + CS[5]*Buffer[Buff_ptr-1]; Buff_ptr--; Buffer[Buff_ptr] = CS[6]*temp2 + CS[7]*temp1 + CS[8]*Buffer[Buff_ptr]; Buff_ptr += 3; } else { // B Buffer[Buff_ptr++] = (*(img + i + xs*y)); // B Buffer[Buff_ptr++] = ( *(img + i + xs*(y-1)) + *(img + i + xs*(y+1)) + *(img + (i-1) + xs*y) + *(img + (i+1) + xs*y) )/4; // G Buffer[Buff_ptr++] = ( *(img + (i-1) + xs*(y-1)) + *(img + (i+1) + xs*(y-1)) + *(img + (i-1) + xs*(y+1))+ *(img + (i+1) + xs*(y+1)) )/4; // R temp1 = Buffer[Buff_ptr - 2]; temp2 = Buffer[Buff_ptr - 1]; Buff_ptr--; Buffer[Buff_ptr] = ((CC[0]*Buffer[Buff_ptr] + CC[1]*Buffer[Buff_ptr-1] + CC[2]*Buffer[Buff_ptr-2])/ )*255; Buff_ptr--; Buffer[Buff_ptr] = ((CC[3]*temp2 + CC[4]*Buffer[Buff_ptr] + CC[5]*Buffer[Buff_ptr-1])/ )*255; Buff_ptr--; Buffer[Buff_ptr] = ((CC[6]*temp2 + CC[7]*temp1 + CC[8]*Buffer[Buff_ptr])/ )*255; Buff_ptr += 2; temp1 = Buffer[Buff_ptr - 2]; temp2 = Buffer[Buff_ptr - 1]; Buffer[Buff_ptr] = CS[0]*Buffer[Buff_ptr] + CS[1]*Buffer[Buff_ptr-1] + CS[2]*Buffer[Buff_ptr-2]; Buff_ptr--; Buffer[Buff_ptr] = CS[3]*temp2 + CS[4]*Buffer[Buff_ptr] + CS[5]*Buffer[Buff_ptr-1]; Buff_ptr--; Buffer[Buff_ptr] = CS[6]*temp2 + CS[7]*temp1 + CS[8]*Buffer[Buff_ptr]; Buff_ptr += 3;

78 78 } } } } } } Πρόγραμμα 4.1. Βασικές συναρτήσεις του συστήματος To αρχείο αυτό (Πρόγραμμα 4.1) περιέχει τις 3 βασικές συναρτήσεις του προγράμματος. Η πρώτη είναι η sendbmp() και αναλαμβάνει τη δημιουργία μιας εικόνας bmp - αφού πρώτα δημιουργήσει το κατάλληλο header του bmp προτύπου και αναπαριστά το Bayern Format πριν το στείλει μέσω Ethernet στον H/Y, δηλαδή δίνει την τιμή που λαμβάνει στην αντίστοιχη συνιστώσα R,G ή B και μηδενίζει τις άλλες. Η δεύτερη συνάρτηση είναι η Mysendbmp() η οποία όταν καλείται δημιουργεί την εικόνα bmp ακολουθώντας την τεχνική Demosaicing που αναλύθηκε στο Κεφάλαιο 2 (του κοντινότερου γείτονα) πριν στείλει την εικόνα. Η τελευταία συνάρτηση είναι η Mysendbmp6() η οποία αφού χρησιμοποιήσει τη παραπάνω τεχνική Demosaicing, εκτελεί τις λειτουργίες Χρωματικής Διόρθωσης και Διόρθωσης Κορεσμού που αναφέρονται στο Κεφάλαιο 2. Μάλιστα ο συντελεστής κορεσμού ελέγχεται από το γραφικό περιβάλλον και μπορεί να μεταβάλλεται από τον χρήστη όπως θα φανεί και παρακάτω. Ας σημειωθεί εδώ ότι και στις τρεις συναρτήσεις η αποστολή γίνεται με πακέτα των 1536 byte χρησιμοποιώντας τις συναρτήσεις του API που υπάρχουν στο Κεφάλαιο 2 για την χρήση του TCP/IP πρωτοκόλλου Το Κυρίως Πρόγραμμα του Συστήματος Το αρχείο main.c περιέχει το κυρίως πρόγραμμα του συστήματος και παρουσιάζεται στο Πρόγραμμα 4.2. #include <stdlib.h> #include <stdio.h> //#include <math.h> #if CHIP_6416 # include "..\DSK6416\DSK6416_webviewcfg.h" #elif CHIP_6713 # include "..\DSK6713\DSK6713_webviewcfg.h" #elif CHIP_6711 # include "..\DSK6711\DSK6711_webviewcfg.h" #else # error No DSK platform specified #endif #include <std.h> #include <tsk.h>

79 79 #include <csl.h> #include <sys.h> #include <csl_dat.h> #define pi #define LWIP_COMPAT_SOCKETS 1 #include "lwip/sockets.h" #include "DSKeye.h" #include "ov5610.h" unsigned char write_address, write_value, read_address, read_value, writereg = 0, readreg = 0, get_flag =0, stop_flag =0 ; float CC[9] = {1,0,0,0,1,0,0,0,1}, CS[9]; float K = 1; void sendbmp( int s, unsigned char *img,int xs, int ys); void MysendBMP( int s, unsigned char *img,int xs, int ys); void MysendBMP2( int s, unsigned char *img,int xs, int ys); void MysendBMP6( int s, unsigned char *img,int xs, int ys, float CC[9], float CS[9]); void sendjpg( int s, unsigned char *img,int xs, int ys); unsigned char ip[6]; unsigned int port; /************************************************************** * Function prototypes ***************************************************************/ void TSK_webview(); main() { TSK_Handle tsk_cam; tsk_cam=tsk_create( (Fxn)TSK_webview, NULL); TSK_setpri(tsk_cam, 8); } char buffer[2048]; Void TSK_webview() { int s,cs,i; struct sockaddr_in addr; /* generic socket name */ struct sockaddr client_addr; int sock_len = sizeof(struct sockaddr);

80 80 LgUns ii=0; unsigned char *SrcFrame=NULL; int xs = DSKeye_SXGA_WIDTH, ys = DSKeye_SXGA_HEIGHT; DSKeye_params CAM_params = { #if CHIP_6711 CHIP_6713 1, /*segid for DSK6711 */ #else 1, /*segid DSK6416 & DSK6713*/ #endif SXGA /* Frame size */ }; printf("starting\n"); fflush(stdout); lwip_netstart(); /************************************************************** * Main loop. ***************************************************************/ s = socket( AF_INET, SOCK_STREAM, 0 ); addr.sin_port = htons(80); addr.sin_addr.s_addr = 0; memset(&(addr.sin_zero), 0, sizeof(addr.sin_zero)); if( bind(s, (struct sockaddr*)&addr, sizeof(struct sockaddr))) { printf("error binding to port\n"); return ; } if(dskeye_open(&cam_params)) SYS_abort("DSKcam_CAMopen"); while(1==1) { if(writereg == 1) { OV5610_RegWrite(write_address,write_value); writereg = 0; } if(readreg == 1) { read_value = OV5610_RegRead(read_address); readreg = 0;

81 81 } if(get_flag == 1 get_flag == 2 get_flag == 3 get_flag == 4 get_flag == 5 get_flag == 6) { listen(s, 10); cs = accept(s, &client_addr, &sock_len); recv(cs, (unsigned char*)buffer, 10, 0); if (!strncmp(buffer, "GET", 3)){ switch (*(buffer+5)) { case 's' : if (CAM_params.frame_size!= SXGA){ if(dskeye_close(&cam_params)) SYS_abort("DSKcam_CAMclose SXGA"); CAM_params.frame_size = SXGA; xs = DSKeye_SXGA_WIDTH; ys = DSKeye_SXGA_HEIGHT; if(dskeye_open(&cam_params)) SYS_abort("DSKcam_CAMopen SXGA"); } break; case 'v' : if( CAM_params.frame_size!= VGA){ if(dskeye_close(&cam_params)) SYS_abort("DSKcam_CAMclose VGA"); CAM_params.frame_size = VGA; xs = DSKeye_VGA_WIDTH; ys = DSKeye_VGA_HEIGHT; if(dskeye_open(&cam_params)) SYS_abort("DSKcam_CAMopen VGA"); } break; case 'h' : if( CAM_params.frame_size!= HF){ if(dskeye_close(&cam_params)) SYS_abort("DSKcam_CAMclose HF"); CAM_params.frame_size = HF; xs = DSKeye_HF_WIDTH; ys = DSKeye_HF_HEIGHT; if(dskeye_open(&cam_params)) SYS_abort("DSKcam_CAMopen HF"); } break; case 'q' : if(cam_params.frame_size!= QSXGA){ if(s=dskeye_close(&cam_params)) SYS_abort("DSKcam_CAMclose QSXGA"); CAM_params.frame_size = QSXGA; xs = DSKeye_QSXGA_WIDTH;

82 82 ys = DSKeye_QSXGA_HEIGHT; if(s=dskeye_open(&cam_params)) SYS_abort("DSKcam_CAMopen QSXGA"); } break; default : if (CAM_params.frame_size!= SXGA){ if(dskeye_close(&cam_params)) SYS_abort("DSKcam_CAMclose SXGA"); CAM_params.frame_size = SXGA; xs = DSKeye_SXGA_WIDTH; ys = DSKeye_SXGA_HEIGHT; if(dskeye_open(&cam_params)) SYS_abort("DSKcam_CAMopen SXGA"); } break; } for(ii=0;ii<8;ii++) // Allow AEC etc to settle {SrcFrame=DSKeye_getFrame();} // Colour Correction and saturation matrices CC[0] = 1.268; CC[1] = ; CC[2] = ; CC[3] = ; CC[4] = 1.821; CC[5] = ; CC[6] = ; CC[7] = ; CC[8] = 1.227; CS[0] = *K; CS[1] = 0.587*(1-K); CS[2] = 0.114*(1-K); CS[3] = 0.299*(1-K); CS[4] = *K; CS[5] = 0.114*(1-K); CS[6] = 0.299*(1-K); CS[7] = 0.587*(1-K); CS[8] = *K; if(get_flag == 1) sendbmp(cs, SrcFrame, xs, ys) ; else if (get_flag == 2) MysendBMP(cs, SrcFrame, xs, ys) ; else if (get_flag == 3) MysendBMP6(cs, SrcFrame, xs, ys, CC, CS) ; else if (get_flag == 4) { sendjpg(cs, SrcFrame, xs, ys) ;} else if (get_flag == 5) { for (i=0;i<4;i++) { SrcFrame=DSKeye_getFrame(); MysendBMP(cs, SrcFrame, xs, ys); } } else if (get_flag == 6) { while(!stop_flag) {

83 83 SrcFrame=DSKeye_getFrame(); MysendBMP(cs, SrcFrame, xs, ys); } stop_flag = 0; } lwip_close(cs); get_flag = 0; } } } } Πρόγραμμα 4.2. Το κυρίως πρόγραμμα του συστήματος. Στη main() συνάρτηση του προγράμματος το μόνο που γίνεται είναι η δημιουργία ενός task με προτεραιότητα 8. Το task αυτό αναλαμβάνει την επικοινωνία Η/Υ DSP από την πλευρά του DSP μέσω Ethernet και USB συνδέσεων. Στην αρχή του task δημιουργείται ένα TCP socket και αμέσως μετά μπαίνει σε ένα ατέρμονο βρόχο όπου ελέγχει αν υπάρχει καταρχήν εντολή από το γραφικό περιβάλλον για εγγραφή ή ανάγνωση ενός καταχωρητή του αισθητήρα μέσω αντίστοιχων flag. Έπειτα ελέγχει αν υπάρχει εντολή από το γραφικό περιβάλλον για μεταφορά της εικόνας, καθώς και την επιθυμητή ανάλυση της και την μέθοδο ανασύνθεσής της από το Bayern Format. Ταυτόχρονα υπάρχει και δυνατότητα μεταφοράς 4 καρέ ή και συνεχή ροή εικόνων (stream) από τον αισθητήρα στον Η/Υ. Μέσα σ αυτή την συνάρτηση επίσης ορίζονται και οι πίνακες Χρωματικής Διόρθωσης και Διόρθωσης Κορεσμού που χρησιμοποιούνται στη συνάρτηση Mysendbmp6() Το Project του Συστήματος στο CCS To project που υλοποιήθηκε στο CCS για την δημιουργία του εκτελέσιμου κώδικα του DSP ονομάστηκε dsk6416_webview.pjt και η τελική του μορφή παρουσιάζεται στο Σχήμα 4.1

84 84 Σχήμα 4.1. Το project του συστήματος στο CCS Σε αυτό το project αρχικά συμπεριλαμβάνονται τα projects dsk6416_camera.pjt και dsk6416_lwip.pjt που περιλαμβανουν τις βασικές συναρτήσεις του API του αισθητήρα και του TCP stack αντίστοιχα. Στο κυρίως project προστίθενται τα αρχεία functions.c και main.c, που περιγράφηκαν στην προηγούμενη υποενότητα. 4.3 Υλοποίηση του Interface με το LabVIEW Το Interface της εφαρμογής έχει δημιουργηθεί με το LabVIEW v8.0 συνεπώς είναι ένα είναι ένα VI (Virtual Instrument) με όνομα Application.vi. Όπως όλα τα VIs έτσι και αυτό αποτελείται από το Front Panel και το Block Diagram. To Front Panel είναι το περιβάλλον αλληλεπίδρασης του χρήστη με το VI ενώ το Block Diagram περιέχει τον γραφικό πηγαίο κώδικα του VI που είναι γνωστός ως G κώδικας ή ως κώδικας του Block Diagram.

85 85 Το Interface του συστήματος διαθέτει την δυνατότητα να ελεγχθεί από απόσταση μέσω μιας σύνδεσης Internet ή ενός τοπικού δικτύου Ethernet, αξιοποιώντας μια ιστοσελίδα και τον Web Server του LabVIEW. Επειδή ο έλεγχος του Interface από απόσταση πραγματοποιείται μέσω μιας ιστοσελίδας επιβάλλεται όλα τα επιμέρους παράθυρα του Interface που εμφανίζονται να είναι ελεγκτές (Controls) και ενδείκτες (Indicators) του Interface και δημιουργήθηκαν τροποποιώντας κάποιους από αυτούς που διαθέτει το LabVIEW, χρησιμοποιώντας το Controls Editor Window του LabVIEW. Σε αυτή την παράγραφο καταρχήν θα παρουσιαστεί το Front Panel του Interface και στη συνέχεια θα παρουσιαστεί και θα αναλυθεί το Block Diagram του Interface μέσα από το οποίο θα γίνει κατανοητή η λειτουργία του Το Front Panel του Interface Για τον έλεγχο του συστήματος έχει δημιουργηθεί το Labview WebView.vi που αποτελεί το Interface του συστήματος. Το πλήρες Front Panel του Labview WebView.vi παρουσιάζεται στο Σχήμα 4.2 Σχήμα 4.2. To Front Panel του Interface του συστήματος με όλα τα στοιχεία Στο Front Panel του Σχήματος 4.2 παρουσιάζονται όλοι οι ελεγκτές και οι ενδείκτες που περιέχει το Interface (VI). Με τον ελεγκτή Image Format επιλέγεται το τύπος της εικόνας που θα εμφανιστεί δηλαδή μέσω τον επιλογών Bayern, Simple BMP και Advanced BMP δίνεται εντολή να εκτελεστούν οι συναρτήσεις sendbmp(), Mysendbmp() και Mysendbmp6() αντίστοιχα από τον DSP. Με τον ελεγκτή Image Resolution επιλέγεται η ανάλυση της εικόνας. Οι διαθέσιμες επιλογές είναι HF (320x200), VGA (640x480), SXGA (1280x960) και QSXGA (2592x1944) Ο ελεγκτής Saturation constant καθορίζει τον κορεσμό της εικόνας. Με 1 η εικόνα μένει ανέπαφη, με 0 έχουμε ασπρόμαυρη εικόνα ενώ με αρνητικές τιμές έχουμε αντιστροφή χρωμάτων. Με τους ελεγκτές Red, Green,Blue ο χρήστης μπορεί να μεταβάλλει τα gains των αντίστοιχων συνιστωσών των pixel. Να σημειωθεί ότι η συγκεκριμένη διεργασία γίνεται στον H/Y για να μη

86 86 φορτωθεί κι άλλο ο DSP. Ο ελεγκτής Register Name καθορίζει τον καταχωρητή ο οποίος θα εγγραφεί ή θα διαβαστεί. Οι λειτουργίες αυτές γίνονται από τους ελεγκτές Write και Read αντίστοιχα. Μια πολύ σημαντική δυνατότητα που παρέχεται ακριβώς κάτω από τους ελεγκτές αυτούς είναι η δυνατότητα μεταβολής των καταχωρητών σε bit επίπεδο. Ο ελεγκτής Get Image στέλνει μέσω Ethernet το αίτημα στον (server) DSP για την αποστολή μιας εικόνας καθώς και τα απαιτούμενα flags και τις παραμέτρους που ενημερώνουν τον DSP για τον τύπο της εικόνας, την ανάλυση της και τον τυχόν κορεσμό που ζητάει ο χρήστης (αν έχει επιλεχθεί Advanced BMP). Τέλος με τους ελεγκτές Start Stream, Stop Stream ξεκινά και τερματίζεται η συνεχής ροή εικόνων ενώ οι ελεγκτές Save As BMP, Save as JPG χρησιμεύουν στην αποθήκευση της εικόνας στον Η/Υ To Block Diagram του Interface Το Block Diagram του Interface (LabView_Webview.vi) του συστήματος περιέχει τον γραφικό κώδικα του VI. Σε αυτή την παράγραφο θα παρουσιαστεί και θα αναλυθεί το περιεχόμενο του Block Diagram κάνοντας ακόμα πιο κατανοητή την λειτουργία του Interface. Σχήμα 4.4. To Block Diagram του Interface του συστήματος (μέρος 1) Στο Σχήμα 4.4 φαίνεται το πρώτο μέρος του block διαγράμματος. Καταρχήν επιτυγχάνεται η σύνδεση LabView με το Code Composer Studio με το toolkit που αναφέρθηκε στο Κεφάλαιο 3. Φορτώνεται το εκτελέσιμο αρχείο και ξεκινά η εκτέλεση του κώδικα από τον DSP, ενώ το Labview πρόγραμμα μπαίνει σε ένα while loop. Δίπλα φαίνονται τα μπλοκ αντίστοιχα των ελεγκτών Image Format, Image resolution και Register name. Ανάλογα με τις τιμές των δύο πρώτων και με δύο δομές case επιλέγεται η ανάλυση της εικόνας και η τιμή του flag που στέλνεται στον DSP για την επιλογή του τύπου της εικόνας.

87 87 Σχήμα 4.5. To Block Diagram του Interface του συστήματος (μέρος 2) Στο Σχήμα 4.5 φαίνεται η λογική για την υλοποίηση της πρόσβασης στους καταχωρητές σε bit επίπεδο ενώ αριστερά βρίσκονται τα μπλοκ αντίστοιχα των ελεγκτών του front panel. Μετά από αυτό τo επίπεδο υπάρχει μια δομή event έτσι ώστε να εκτελείται διαφορετικό κομμάτι του κώδικα ανάλογα με την επιλογή του χρήστη.(ανάλογα με το ποιο πλήκτρο του front panel έχει πατηθεί)

88 88 Σχήμα 4.6. To Block Diagram του Interface του συστήματος (μέρος 3) Στο Σχήμα 4.6 εμφανίζεται ο κώδικας μέσα στη δομή event σε περίπτωση που πατηθεί το πλήκτρο Get image του front panel. Καταρχήν στέλνεται ένα flag με όνομα get_flag και τιμή που έχει επιλεγεί από τον ενδείκτη Image Format καθώς και ο συντελεστής κορεσμού K. Έπειτα συνδέεται στο TCP/IP socket της DSKeye σαν client και στέλνει τις διαστάσεις της εικόνας. Τέλος ανάλογα με τις διαστάσεις που στάλθηκαν περιμένει να λάβει αντίστοιχο αριθμό bytes (συν τον αριθμό bytes του header) πριν τερματίσει την σύνδεση.

89 89 Σχήμα To Block Diagram του Interface του συστήματος (μέρος 4) Στη συνέχεια αφαιρεί το header και χωρίζει το ληφθέν string σε 3 πίνακες ώστε να μπορεί να γίνει η επεξεργασία των καναλιών R,G,B και η αναπαράσταση της εικόνας στο Front panel, Σχήμα 4.7.

90 90 Σχήμα 4.8. To Block Diagram του Interface του συστήματος (μέρος 5) Στο 5ο μέρος (Σχήμα 4.8) παρουσιάζεται ο κώδικας που εκτελείται αν επιλεχθεί λειτουργία συνεχούς ροης εικόνων (πλήκτρο Start stream). Η αντίστοιχη τιμή του get_flag είναι 6 και δημιουργείται πάλι η σύνδεση TCP/IP.

91 91 Σχήμα 4.9. To Block Diagram του Interface του συστήματος (μέρος 6) Το πρόγραμμα μπαίνει σε ένα loop το οποίο τερματίζεται μόνο με πάτημα του πλήκτρου Stop stream, στο οποίο επαναλαμβάνεται η λειτουργία λήψης και αναπαράστασης εικόνας επ άπειρον. Επίσης με το πάτημα του πλήκτρου Stop Stream στέλνεται και ένα flag για τον τερματισμό του αντίστοιχου ατέρμονου βρόχου που τρέχει στον DSP, Σχήμα 4.9. Σχήμα To Block Diagram του Interface του συστήματος (μέρος 7) Στη περίπτωση που πατηθεί ο ελεγκτής Write στέλνεται η τιμή, η διεύθυνση του καταχωρητή και ένα flag για να εκτελεστεί ο αντίστοιχος κώδικας στον DSP. Η τιμή που δίνεται καθορίζεται από τους bit ελεγκτές και τον ελεγκτή Write Value του Front panel.

92 92 Σχήμα To Block Diagram του Interface του συστήματος (μέρος 8) Στη περίπτωση που πατηθεί ο ελεγκτής Read στέλνεται η διεύθυνση του καταχωρητή και ένα flag για να εκτελεστεί ο αντίστοιχος κώδικας στον DSP. Η τιμή που επιστρέφεται αντικαθιστά τις τιμές στους bit ελεγκτές και στον ενδείκτη Read Value του Front panel. Σχήμα To Block Diagram του Interface του συστήματος (μέρος 9) Με τους ελεγκτές Save As BMP και Save As JPG σώζεται η εικόνα σε κάποιο αρχείο της αρεσκείας του χρήστη όπως φαίνεται στο σχήμα Μάλιστα στη περίπτωση του JPG δίνεται η δυνατότητα καθορισμού της ποιότητας JPEG.

93 93 Σχήμα To Block Diagram του Interface του συστήματος (μέρος 10) Στο τέλος, και αφού το πρόγραμμα βγει από το κεντρικό loop (με πάτημα του πλήκτρου STOP του Front panel) χρησιμοποιείται ξανά το toolkit LabView to CCS Link που αναφέρθηκε στο Κεφάλαιο 2 για τον τερματισμό του προγράμματος που έτρεχε στον DSP. 4.4 Υλοποίηση της Ιστοσελίδας Η διαχείριση του Interface μπορεί να πραγματοποιηθεί και από απόσταση χρησιμοποιώντας μια σύνδεση Internet ή ένα τοπικό δίκτυο Ethernet. Στην πραγματικότητα η διαχείριση του συστήματος από απόσταση επιτυγχάνεται με τον έλεγχο του Interface μέσω μιας ιστοσελίδας της οποίας η υλοποίηση θα παρουσιαστεί παρακάτω. Μέσω αυτής της ιστοσελίδας οποιοσδήποτε μπορεί να ελέγξει πλήρως το Interface του συστήματος. Η ιστοσελίδα που χρησιμοποιείται για τον έλεγχο του συστήματος από απόσταση αρχικά δημιουργήθηκε με το Web Publishing Tool του LabVIEW το οποίο ενεργοποιείται επιλέγοντας Tools Web Publishing Tool. Στην πραγματικότητα το Web Publishing Tool δημιουργεί σε μια ιστοσελίδα ένα ενσωματωμένο αντικείμενο (embedded object) του VI στο οποίο αναφέρεται η ιστοσελίδα. Το παράθυρο του Web Publishing Tool παρουσιάζεται στο Σχήμα 4.15.

94 94 Σχήμα Το παράθυρο του Web Publishing Tool του LabVIEW Αρχικά θα πρέπει στο πεδίο VI name να επιλεγεί το όνομα του VI για το οποίο θα δημιουργηθεί η ιστοσελίδα δηλαδή το Labview_Webview.vi. Στην συνέχεια ακολουθεί ένα σύνολο ρυθμίσεων που σχετίζονται με την λειτουργία του ενσωματωμένου αντικείμενου που θα δημιουργηθεί. Στην συγκεκριμένη περίπτωση είχε επιλεγεί η επιλογή Embedded. Στην συνέχεια εφόσον πατηθεί το κουμπί Next> το παράθυρο του Web Publishing Tool παίρνει την μορφή του Σχήματος Στο πεδίο Document title καθορίζεται ο τίτλος της ιστοσελίδας, στο πεδίο Header καθορίζεται το κείμενο που θα περιέχει η ιστοσελίδα πάνω από το ενσωματωμένο αντικείμενο του LabVIEW και στο πεδίο Footer καθορίζεται το κείμενο που θα περιέχει η ιστοσελίδα κάνω από το ενσωματωμένο αντικείμενο του LabVIEW. Στο παράθυρο Preview εμφανίζεται η μορφή της ιστοσελίδας όπως έχει διαμορφωθεί μέχρι αυτή την στιγμή.

95 95 Σχήμα Το παράθυρο του Web Publishing Tool του LabVIEW Στην συνέχεια εφόσον πατηθεί το κουμπί Next> το παράθυρο το Web Publishing tool θα πάρει την μορφή του Σχήματος Σχήμα Το παράθυρο του Web Publishing Tool του LabVIEW Στο πεδίο Directory to save the web page καθορίζεται η διαδρομή στην οποία θα αποθηκευτεί η ιστοσελίδα που θα δημιουργηθεί. Στην συγκεκριμένη περίπτωση επιλέγεται η προκαθορισμένη διαδρομή που χρησιμοποιεί ο Web Server του LabVIEW. Στο πεδίο Filename καθορίζεται το όνομα με το οποίο θα αποθηκευτεί η ιστοσελίδα (αρχείο με επέκταση.html). Όταν πατηθεί το κουμπί Save to Disk αποθηκεύεται η ιστοσελίδα στον δίσκο. Στο σημείο αυτό έχει δοθεί μια αρχική μορφή στην ιστοσελίδα. Η τελική μορφή της ιστοσελίδας διαμορφώθηκε με το Microsoft Front Page. Στο Σχήμα 4.18 παρουσιάζεται το παράθυρο του Microsoft Front Page που περιέχει την ιστοσελίδα Application.html όπως δημιουργήθηκε από το Web Publishing Tool του LabVIEW.

96 96 Σχήμα Το παράθυρο του Microsoft Front Page Στην συνέχεια μέσω του Microsoft Front Page αλλάχτηκαν τα κείμενα που περιείχε η ιστοσελίδα και προστέθηκε ένα κουμπί με όνομα Download μέσω του οποίου μεταφέρεται το συμπιεσμένο αρχείο με όνομα images.zip που δημιουργεί το Interface του συστήματος όταν αποθηκεύει τις εικόνες. Για να προστεθεί το κουμπί Download επιλέχτηκε Insert Interactive Button, τότε εμφανίστηκε το παράθυρο ρυθμίσεων του Σχήματος Στο πεδίο Buttons επιλέγεται η μορφή του κουμπιού. Στο πεδίο Text καθορίζεται το κείμενο που θα αναγράφει το κουμπί που στην συγκεκριμένη περίπτωση είναι το DOWNLOAD. Στο πεδίο Link καθορίζεται η διαδρομή του αρχείου με το οποίο θα συνδεθεί το κουμπί που θα εισαχτεί. Στην συγκεκριμένη περίπτωση επιλέγεται το αρχείο images.zip του οποίου η πλήρης διαδρομή είναι C:\Program Files\National Instruments\LabVIEW 8.0\www\images.zip. Μέσω των καρτελών Font και Image μπορούν να καθοριστούν κάποια χαρακτηριστικά του κουμπιού που θα δημιουργηθεί όπως η γραμματοσειρά, το χρώμα των γραμμάτων, το μέγεθος του κουμπιού κλπ.

97 97 Σχήμα Το παράθυρο ρυθμίσεων ενός κουμπιού στο Microsoft Front Page Μετά την επεξεργασία της ιστοσελίδας το παράθυρο του Microsoft Front Page θα πάρει την μορφή του Σχήματος Σχήμα Το παράθυρο του Microsoft Front Page Κατά την αποθήκευση της ιστοσελίδας θα εμφανιστεί το παράθυρο του Σχήματος 4.21 στο

98 98 οποίο καθορίζεται το όνομα των εικόνων που περιέχει η ιστοσελίδα. Σχήμα Το παράθυρο του Microsoft Front Page για την αποθήκευση των εικόνων που περιέχει η ιστοσελίδα Στο σημείο αυτό η επεξεργασία της ιστοσελίδας έχει ολοκληρωθεί. Για να ελεγχθεί τοπικά η λειτουργία της ιστοσελίδας θα πρέπει να είναι ανοικτό το LabVIEW με φορτωμένο το Interface του συστήματος, να έχει ενεργοποιηθεί ο Web Server του LabVIEW και να δοθεί η διεύθυνση σε ένα πρόγραμμα περιήγησης όπως o Internet Explorer.

99 Αποτελέσματα Συμπεράσματα - Προτάσεις Σε αυτή την παράγραφο θα παρουσιαστούν τα αποτελέσματα της λειτουργίας του συστήματος. Εικόνες διαφορετικής ανάλυσης και τύπου ελήφθησαν για την αναπαράσταση των δυνατοτήτων του Workstation που δημιουργήθηκε. Λόγω της αδυναμίας αναπαράστασης της λειτουργίας του stream σε γραπτό κείμενο, εισάχθηκε η λειτουργία των συνεχόμενων καρέ που δίνει 4 συνεχόμενα καρέ σε 4 ξεχωριστά πλαίσια. Εδώ πρέπει να σημειωθεί ότι επειδή δεν εκτελείται κάποια διαδικασία συμπίεσης video η λειτουργία του stream σε ανάλυση εικόνας πάνω από την ανάλυση HF είναι εξαιρετικά σπασμωδική λόγω του φόρτου εργασίας του DSP πριν την αποστολή κάθε εικόνας. Ένας τρόπος επίλυσης του παραπάνω προβλήματος είναι η χρηση αλγορίθμων συμπίεσης video (π.χ MPEG) μέσω προγραμματισμού του FPGA Cyclone II της Altera που βρίσκεται στην κάρτα DSKeye, αλλά κάτι τέτοιο ξεπερνάει τους σκοπούς της συγκεκριμένης εργασίας. Όσον αφορά τον αισθητήρα και τη κάρτα DSKeye η επιλογή κρίνεται ικανοποιητική αν και λείπουν ορισμένα χαρακτηριστικά όπως η εξαγωγή της εικόνας σε format YCbCr από τον αισθητήρα, που όμως δίνεται η δυνατότητα από τη daughtercard αυτή να επιτευχθεί επαναπρογραμματίζοντας το FPGA. Κάτι τέτοιο, δηλαδή η ανάληψη της ευθύνης του demosaicing και της μετατροπής RGB σε YCbCr καθώς και των χρωματικών διορθώσεων από το FPGA μπορεί να είναι αντικείμενο μελλοντικής εργασίας καθώς ανοίγει το δρόμο για πιο περίπλοκες διεργασίες επεξεργασίας εικόνας στον DSP. Ακολουθεί παρουσίαση screenshots από το GUI που επιδεικνύουν τα αποτελέσματα της παρούσας εργασίας. Σχήμα Το Front Panel για εκόνα τύπου Bayern σε ανάλυση 640x480 Στο Σχήμα 4.22 φαίνεται η εικόνα που λαμβάνεται με ανάλυση VGA και τύπο απεικόνισης Bayern.

100 100 Σχήμα Το Front Panel για εκόνα τύπου Simple BMP σε ανάλυση 640x480 Εδώ η εικόνα που λαμβάνεται έχει ανάλυση VGA και μέθοδο demosaicing «κοντινότερου γείτονα» χωρίς χρωματική διόρθωση. Παρατηρείται σαφή βελτίωση της εικόνας σε σχέση με τη πραγματικότητα αλλά τα χρώματα δεν είναι ακόμα φυσικά σε σχέση με τη περίοδο της μέρας που τραβήχτηκε η φωτογραφία. Σχήμα Το Front Panel για εκόνα τύπου Advanced BMP σε ανάλυση 640x480 Στο Σχήμα 4.24, παρουσιάζεται η εικόνα που λαμβάνεται με ανάλυση VGA και μέθοδο demosaicing «κοντινότερου γείτονα» με χρωματική διόρθωση και δυνατότητα μεταβολής κορεσμού. Παρατηρείται σαφή βελτίωση της εικόνας και τα χρώματα ανταποκρίνονται στα φυσικά σε σχέση με τη περίοδο της μέρας που τραβήχτηκε η φωτογραφία.

101 101 Σχήμα Το Front Panel για εκόνα με συντελεστή κορεσμού 0. Στο σχήμα 4.25 παρουσιάζεται η εικόνα που λαμβάνεται με ανάλυση VGA και μέθοδο demosaicing «κοντινότερου γείτονα» με χρωματική διόρθωση και συντελεστή κορεσμού κοντά στο 0.Όπως είναι αναμενόμενο από τη θεωρητική προσέγγιση με μηδενική τιμή του συντελεστή κορεσμού το αποτέλεσμα είναι μια ασπρόμαυρη εικόνα. Σχήμα Τα Front Panel μετά από επεξεργασία στις συνιστώσες R και B. Στο Σχήμα 4.26, παρουσιάζεται η εικόνα που λαμβάνεται με ανάλυση VGA και μέθοδο demosaicing «κοντινότερου γείτονα» με τιμή 1,5 στο gain των καναλιών R, και B αντίστοιχα.

102 102 Σχήμα Το Front Panel για τις λειτουργίες Read και Write Value Εδώ παρουσιάζεται η λειτουργία Read Value και η αναπαράσταση της τιμής σε bit επίπεδο, ενώ τυχόν αλλαγές στα κουτάκια των bit και πάτημα του πλήκτρου Write αλλάζει την τιμή του επιλεγμένου καταχωρητή. Σχήμα Το Front Panel για εκόνα τη λειτουργία Sequence Τέλος, στο Σχήμα 4.28 παρουσιάζεται η λειτουργία Sequence που τρέχει στη χαμηλότερη ανάλυση HF και μέθοδο demosaicing «κοντινότερου γείτονα» για την αναπαράσταση της λειτουργίας Stream. Η λειτουργία αυτή δημιουργήθηκε, όπως έχει ήδη αναφερθεί για την καλύτερη αναπαράσταση της λειτουργίας συνεχούς ροής εικόνων από τον αισθητήρα στην οθόνη του GUI.

4 ο ΛΥΚΕΙΟ ΛΑΜΙΑΣ ΟΙΚΟΝΟΜΙΚΕΣ ΚΑΙ ΚΟΙΝΩΝΙΚΕΣ ΣΥΝΕΠΕΙΕΣ ΤΗΣ ΟΙΚΟΝΟΜΙΚΗΣ ΚΡΙΣΗΣ ΕΚΘΕΣΗ ΕΡΕΥΝΗΤΙΚΗΣ ΕΡΓΑΣΙΑΣ ΜΕ ΘΕΜΑ. Ε ιµέλεια Εργασίας :Τµήµα Α4

4 ο ΛΥΚΕΙΟ ΛΑΜΙΑΣ ΟΙΚΟΝΟΜΙΚΕΣ ΚΑΙ ΚΟΙΝΩΝΙΚΕΣ ΣΥΝΕΠΕΙΕΣ ΤΗΣ ΟΙΚΟΝΟΜΙΚΗΣ ΚΡΙΣΗΣ ΕΚΘΕΣΗ ΕΡΕΥΝΗΤΙΚΗΣ ΕΡΓΑΣΙΑΣ ΜΕ ΘΕΜΑ. Ε ιµέλεια Εργασίας :Τµήµα Α4 4 ο ΛΥΚΕΙΟ ΛΑΜΙΑΣ ΕΚΘΕΣΗ ΕΡΕΥΝΗΤΙΚΗΣ ΕΡΓΑΣΙΑΣ ΜΕ ΘΕΜΑ ΟΙΚΟΝΟΜΙΚΕΣ ΚΑΙ ΚΟΙΝΩΝΙΚΕΣ ΣΥΝΕΠΕΙΕΣ ΤΗΣ ΟΙΚΟΝΟΜΙΚΗΣ ΚΡΙΣΗΣ Ε ιµέλεια Εργασίας :Τµήµα Α4 Ε ιβλέ ων Καθηγητής :Φράγκος Κων/νος Σχολικό Έτος : 2013-2014

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

Όμιλος Λογοτεχνίας. Δράκογλου Αναστασία, Κιννά Πασχαλίνα

Όμιλος Λογοτεχνίας. Δράκογλου Αναστασία, Κιννά Πασχαλίνα Όμιλος Λογοτεχνίας Δράκογλου Αναστασία, Κιννά Πασχαλίνα Πρότυπο Πειραματικό Δημοτικό Σχολείο Σερρών «Κων/νος Καραμανλής» Δράκογλου Αναστασία, adrakogl@yahoo.gr Κιννά Πασχαλίνα, kinpash@yahoo.gr ΠΕΡΙΛΗΨΗ

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

ΣΧΟΛΙΚΟ ΕΤΟΣ 2009-201 0

ΣΧΟΛΙΚΟ ΕΤΟΣ 2009-201 0 1 5 ο ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ ΜΥΤΙΛΗΝΗΣ ΠΡΟΓΡΑΜΜΑ ΠΟΛΙΤΙΣΤΙΚΩΝ ΘΕΜΑΤΩΝ ΣΧΟΛΙΚΟ ΕΤΟΣ 2009-201 0 ΠΡΟΓΡΑΜΜΑ ΠΟΛΙΤΙΣΤΙΚΩΝ ΘΕΜΑΤΩΝ ΥΠΕΥΘΥΝΕΣ ΠΡΟΓΡΑΜΜΑΤΟΣ Φαμέλου Σεβαστή, δασκάλα Α! τάξης Σέντα Θεοδώρα, δασκάλα Β!

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

Οδηγός Σπουδών Βασικής Εκπαίδευσης Α ΚΥΚΛΟΣ. ( ιάρκεια 200 ώρες) Πρόγραµµα Τηλεκπαίδευσης Μετατασσόµενου Προσωπικού ΕΛΤΑ

Οδηγός Σπουδών Βασικής Εκπαίδευσης Α ΚΥΚΛΟΣ. ( ιάρκεια 200 ώρες) Πρόγραµµα Τηλεκπαίδευσης Μετατασσόµενου Προσωπικού ΕΛΤΑ 2011 Οδηγός Σπουδών Βασικής Εκπαίδευσης Α ΚΥΚΛΟΣ ( ιάρκεια 200 ώρες) Πρόγραµµα Τηλεκπαίδευσης Μετατασσόµενου Προσωπικού ΕΛΤΑ 2 Γιατί ΕΚΠΑΙ ΕΥΣΗ Οι λόγοι που την κάνουν αναγκαία Το νέο περιβάλλον Είναι

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

«ΟΛΟΚΛΗΡΗ ΖΩΗ» Αθηναϊκό μυθιστόρημα

«ΟΛΟΚΛΗΡΗ ΖΩΗ» Αθηναϊκό μυθιστόρημα «ΟΛΟΚΛΗΡΗ ΖΩΗ» Αθηναϊκό μυθιστόρημα Η αθηναιογραφία του Τίμου Μωραϊτίνη δεν εξαντλείται στα «Ρωμαντικά Χρόνια της Αθήνας» (τελευταίο του βιβλίο, 1951) ή στην «Ολόκληρη Ζωή» (το κατ εξοχήν αθηναϊκό μυθιστόρημα,

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

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

ΜΕΙΖΟΝ ΠΡΟΓΡΑΜΜΑ ΕΠΙΜΟΡΦΩΣΗΣ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΕΝΤΥΠΟ ΥΠΟΒΟΛΗΣ ΔΙΔΑΚΤΙΚΗΣ ΠΡΑΚΤΙΚΗΣ ΕΣΠΑ 2007-13\Ε.Π. Ε&ΔΒΜ\Α.Π. 1-2-3 «Μείζον Πρόγραμμα Επιμόρφωσης Εκπαιδευτικών στις 8 Π.Σ., 3 Π.Σ.Εξ., 2 Π.Σ.Εισ.» Με συγχρηματοδότηση της Ελλάδας και της Ευρωπαϊκής Ένωσης (Ε. Κ. Τ.) ΜΕΙΖΟΝ ΠΡΟΓΡΑΜΜΑ

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

Ο συγγραφέας χρησιμοποιεί συνδυασμό μεθόδων για την ανάπτυξη της έβδομης παραγράφου.

Ο συγγραφέας χρησιμοποιεί συνδυασμό μεθόδων για την ανάπτυξη της έβδομης παραγράφου. Α.1 ΠΕΡΙΛΗΨΗ Στο κείμενο αυτό ο συγγραφέας παρουσιάζει την αξία των αρχαίων ελληνικών μνημείων και την αναγκαιότητα ανάδειξής τους. Αρχικά συσχετίζει τα μνημεία αυτά με τη δημοκρατία και τη συμμετοχή στα

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

Εσωτερικοί Κανονισμοί Τοπικής Αυτοδιοίκησης

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

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

Ε Κ Θ Ε Σ Η. του Διοικητικού Συμβουλίου της Ανωνύμου Εταιρίας με την επωνυμία. «Unibios Ανώνυμος Εταιρία Συμμετοχών»

Ε Κ Θ Ε Σ Η. του Διοικητικού Συμβουλίου της Ανωνύμου Εταιρίας με την επωνυμία. «Unibios Ανώνυμος Εταιρία Συμμετοχών» Ε Κ Θ Ε Σ Η του Διοικητικού Συμβουλίου της Ανωνύμου Εταιρίας με την επωνυμία «Unibios Ανώνυμος Εταιρία Συμμετοχών» για την έκδοση Μετατρέψιμου Ομολογιακού Δανείου βάσει του άρθρου 4.1.4.1.2 του Κανονισμού

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

«ΣΥΝΕΝΤΕΥΞΗ ΤΟΥ ΗΜΑΡΧΟΥ ΙΛΙΟΥ, Κ. ΝΙΚΟΥ ΖΕΝΕΤΟΥ ΣΤΗΝ ΕΦΗΜΕΡΙ Α «ΜΙΤΟΣ» ΚΑΙ ΤΗ ΗΜΟΣΙΟΓΡΑΦΟ ΑΘΗΝΑ ΠΕΡΡΑΚΗ» 4.11.2008

«ΣΥΝΕΝΤΕΥΞΗ ΤΟΥ ΗΜΑΡΧΟΥ ΙΛΙΟΥ, Κ. ΝΙΚΟΥ ΖΕΝΕΤΟΥ ΣΤΗΝ ΕΦΗΜΕΡΙ Α «ΜΙΤΟΣ» ΚΑΙ ΤΗ ΗΜΟΣΙΟΓΡΑΦΟ ΑΘΗΝΑ ΠΕΡΡΑΚΗ» 4.11.2008 ΝΙΚΟΣ ΖΕΝΕΤΟΣ «ΣΥΝΕΝΤΕΥΞΗ ΤΟΥ ΗΜΑΡΧΟΥ ΙΛΙΟΥ, Κ. ΝΙΚΟΥ ΖΕΝΕΤΟΥ ΣΤΗΝ ΕΦΗΜΕΡΙ Α «ΜΙΤΟΣ» ΚΑΙ ΤΗ ΗΜΟΣΙΟΓΡΑΦΟ ΑΘΗΝΑ ΠΕΡΡΑΚΗ» 4.11.2008 1. Κύριε ήµαρχε θα θέλαµε να µας κάνετε µια µικρή αναφορά στα σηµαντικότερα

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

ΥΠ.Ε.Π.Θ. / ΠΑΙ ΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ «ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ»

ΥΠ.Ε.Π.Θ. / ΠΑΙ ΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ «ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ» ΥΠ.Ε.Π.Θ. / ΠΑΙ ΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ «ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ» Γ ΚΟΙΝΟΤΙΚΟ ΠΛΑΙΣΙΟ ΣΤΗΡΙΞΗΣ ΕΡΓO ΣΥΓΧΡΗΜΑΤΟ ΟΤΟΥΜΕΝO ΚΑΤΑ 80% ΑΠΟ ΤΟ ΕΚΤ ΚΑΙ ΚΑΤΑ 20% ΑΠΟ ΕΘΝΙΚΟΥΣ ΠΟΡΟΥΣ «Ολοκληρωµένη

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

ΣΥΝΤΟΝΙΣΤΕΣ ΟΜΑΔΑΣ PROJECT ΑΝΘΡΩΠΙΣΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ: ΟΜΑΔΑ PROJECT ΑΝΘΡΩΠΙΣΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ:

ΣΥΝΤΟΝΙΣΤΕΣ ΟΜΑΔΑΣ PROJECT ΑΝΘΡΩΠΙΣΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ: ΟΜΑΔΑ PROJECT ΑΝΘΡΩΠΙΣΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ: ΣΥΝΤΟΝΙΣΤΕΣ ΟΜΑΔΑΣ PROJECT ΑΝΘΡΩΠΙΣΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ: ΘΕΟΦΑΝΟΠΟΥΛΟΥ ΑΝΑΣΤΑΣΙΑ ΡΟΥΓΓΟΥ ΜΑΡΙΑ ΠΕ10 ΠΕ06 ΟΜΑΔΑ PROJECT ΑΝΘΡΩΠΙΣΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ: ΓΚΑΝΑ ΔΑΦΝΗ, ΔΟΣΚΟΡΗ ΑΓΓΕΛΙΚΗ, ΖΑΧΑΡΑΚΗ ΠΑΡΑΣΚΕΥΗ, ΚΑΛΙΑΤΣΟΥ ΙΩΑΝΝΑ,

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

Χριστίνα Κοτρότσου, ΠΕ02 ΦΙΛΟΛΟΓΟΣ

Χριστίνα Κοτρότσου, ΠΕ02 ΦΙΛΟΛΟΓΟΣ ΕΛΛΗΝΙΣΤΙΚΟΙ ΧΡΟΝΟΙ Χριστίνα Κοτρότσου, ΠΕ02 ΦΙΛΟΛΟΓΟΣ 2 Ο ΓΕΛ ΣΠΑΡΤΗΣ 11 Μαΐου 2015, Σπάρτη Συνοπτική περιγραφή της ανοιχτής εκπαιδευτικής πρακτικής Οι δραστηριότητες του σεναρίου στοχεύουν αποκλειστικά

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

ΠΑΡΟΥΣΙΑΣΗ ΤΩΝ ΓΕΝΙΚΩΝ ΚΑΙ ΕΙΔΙΚΩΝ ΟΡΩΝ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ «ΑΣΦΑΛΩΣ ΚΑΤΟΙΚΕΙΝ» ΚΟΙΝΟΧΡΗΣΤΟΙ ΧΩΡΟΙ

ΠΑΡΟΥΣΙΑΣΗ ΤΩΝ ΓΕΝΙΚΩΝ ΚΑΙ ΕΙΔΙΚΩΝ ΟΡΩΝ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ «ΑΣΦΑΛΩΣ ΚΑΤΟΙΚΕΙΝ» ΚΟΙΝΟΧΡΗΣΤΟΙ ΧΩΡΟΙ ΠΑΡΟΥΣΙΑΣΗ ΤΩΝ ΓΕΝΙΚΩΝ ΚΑΙ ΕΙΔΙΚΩΝ ΟΡΩΝ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ «ΑΣΦΑΛΩΣ ΚΑΤΟΙΚΕΙΝ» ΚΟΙΝΟΧΡΗΣΤΟΙ ΧΩΡΟΙ ΓΕΝΙΚΟΙ ΟΡΟΙ ΑΡΘΡΟ 1. ΟΡΙΣΜΟΙ Αξία καινούργιου: Είναι το ποσό που απαιτείται για την ανακατασκευή του κτιρίου

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

ΕΠΙΜΟΡΦΩΤΙΚΕΣ ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ ΣΤΗ ΧΙΟ

ΕΠΙΜΟΡΦΩΤΙΚΕΣ ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ ΣΤΗ ΧΙΟ Οδυσσέας Μαθηματικά ΕΠΙΜΟΡΦΩΤΙΚΕΣ ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ ΣΤΗ ΧΙΟ Κ. Γαβρίλης ( gavr@pi-schools.gr) Αν δεν μπορούμε να αγαντάρουμε τον άνεμο ας μάθουμε να αγαντάρουμε τα πανιά ΕΙΣΑΓΩΓΗ Στο πρόγραμμα Οδυσσέας η

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2009 2010 ΟΔΗΓΟΣ ΣΠΟΥΔΩΝ ΤΜΗΜΑ ΓΕΩΠΟΝΙΑΣ ΦΥΤΙΚΗΣ ΠΑΡΑΓΩΓΗΣ ΚΑΙ ΑΓΡΟΤΙΚΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ Ν. Ιωνία, ΒΟΛΟΣ Τη συγκέντρωση της ύλης του και την επιμέλεια της έκδοσης είχε

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

ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ 13 Α' ΜΕΡΟΣ ΑΠΟ ΤΟΝ ΠΟΛΕΜΟ ΤΟΥ 1897 ΣΤΟ ΓΟΥΔΙ

ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ 13 Α' ΜΕΡΟΣ ΑΠΟ ΤΟΝ ΠΟΛΕΜΟ ΤΟΥ 1897 ΣΤΟ ΓΟΥΔΙ ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ 13 Α' ΜΕΡΟΣ ΑΠΟ ΤΟΝ ΠΟΛΕΜΟ ΤΟΥ 1897 ΣΤΟ ΓΟΥΔΙ Του Βασίλη Γούναρη 19 1. Η ΔΙΑΧΕΙΡΙΣΗ ΤΗΣ ΗΤΤΑΣ ΤΟΥ 1897 21 η ηττα και η συνθηκολογηση οι συνεπειες της ηττας εξελιξεις και

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

Σεπτέμβριος 2011: Εφημερίδα μηνός Αυγούστου, έκδ. 34 η

Σεπτέμβριος 2011: Εφημερίδα μηνός Αυγούστου, έκδ. 34 η Σεπτέμβριος 2011: Εφημερίδα μηνός Αυγούστου, έκδ. 34 η Η ΠΑΝΑΓΙΑ ΤΗΣ ΧΛΩΡΑΚΑΣ Την πάσα ελπίδα μου, και όλες μου τις ελπίδες, εις σε ανατίθημι. Μήτηρ του Θεού φύλαξον με υπό την σκέπη σου: Ο Αύγουστος είναι

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

ΕΝΔΕΙΚΤΙΚΕΣ ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑΤΩΝ ΝΕΟΕΛΛΗΝΙΚΗΣ ΓΛΩΣΣΑΣ A1. Ο συγγραφέας ορίζει το φαινόμενο του ανθρωπισμού στη σύγχρονη εποχή. Αρχικά προσδιορίζει την

ΕΝΔΕΙΚΤΙΚΕΣ ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑΤΩΝ ΝΕΟΕΛΛΗΝΙΚΗΣ ΓΛΩΣΣΑΣ A1. Ο συγγραφέας ορίζει το φαινόμενο του ανθρωπισμού στη σύγχρονη εποχή. Αρχικά προσδιορίζει την ΕΝΔΕΙΚΤΙΚΕΣ ΑΠΑΝΤΗΣΕΙΣ ΘΕΜΑΤΩΝ ΝΕΟΕΛΛΗΝΙΚΗΣ ΓΛΩΣΣΑΣ A1. Ο συγγραφέας ορίζει το φαινόμενο του ανθρωπισμού στη σύγχρονη εποχή. Αρχικά προσδιορίζει την έννοια της ανθρωπιάς ως συμμετοχής στα προβλήματα των

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

ΤΕΙ ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

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

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

Πρότυπο Σχέδιο Δράσης για τα Συμβούλια Ένταξης Μεταναστών

Πρότυπο Σχέδιο Δράσης για τα Συμβούλια Ένταξης Μεταναστών Πρότυπο Σχέδιο Δράσης για τα Συμβούλια Ένταξης Μεταναστών Δράση 4.1/10 - «Δημιουργία δικτύου συνεργασίας σε τοπικό επίπεδο μεταξύ κρατών μελών της ΕΕ» 1 ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ 1. Εισαγωγή...3 2. Το σχέδιο

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

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

ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ ΑΝΑΓΚΩΝ ΑΓΟΡΑΣ ΕΡΓΑΣΙΑΣ ΠΑΡΑΔΟΤΕΟ ΕΘΝΙΚΟΥ ΜΗΧΑΝΙΣΜΟΥ ΥΠΟ ΤΗΝ ΕΠΟΠΤΕΙΑ ΤΟΥ ΥΠΟΥΡΓΕΙΟΥ ΕΡΓΑΣΙΑΣ, ΚΟΙΝΩΝΙΚΗΣ ΑΣΦΑΛΙΣΗΣ ΚΑΙ ΚΟΙΝΩΝΙΚΗΣ ΑΛΛΗΛΕΓΓΥΗΣ ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ ΑΝΑΓΚΩΝ ΑΓΟΡΑΣ ΕΡΓΑΣΙΑΣ ΔΕΚΕΜΒΡΙΟΣ 2015 ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ ΑΝΑΓΚΩΝ ΑΓΟΡΑΣ ΕΡΓΑΣΙΑΣ Ολυμπία Καμινιώτη

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

Σε ποιες κατηγορίες μειώνεται η σύνταξη από 1/1/2009 (σε εφαρμογή του Ν.3655/2008)

Σε ποιες κατηγορίες μειώνεται η σύνταξη από 1/1/2009 (σε εφαρμογή του Ν.3655/2008) Σε ποιες κατηγορίες μειώνεται η σύνταξη από 1/1/2009 (σε εφαρμογή του Ν.3655/2008) Μείωση μέχρι 10% θα έχουμε στις νέες συντάξεις από 1/1/2009 στις περιπτώσεις που χορηγείται από τα Ταμεία μειωμένη σύνταξη

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

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

ΕΠΙΧΕΙΡΗΜΑΤΟΛΟΓΩ ΥΠΕΡ Η ΚΑΤΑ ΤΗΣ ΧΡΗΣΗΣ ΤΩΝ ΣΥΜΒΑΤΙΚΩΝ ΤΖΑΚΙΩΝ ΚΑΙ ΤΗΣ ΚΑΥΣΗΣ ΞΥΛΕΙΑΣ ΓΙΑ ΟΙΚΙΑΚΉ ΘΕΡΜΑΝΣΗ ΕΠΙΧΕΙΡΗΜΑΤΟΛΟΓΩ ΥΠΕΡ Η ΚΑΤΑ ΤΗΣ ΧΡΗΣΗΣ ΤΩΝ ΣΥΜΒΑΤΙΚΩΝ ΤΖΑΚΙΩΝ ΚΑΙ ΤΗΣ ΚΑΥΣΗΣ ΞΥΛΕΙΑΣ ΓΙΑ ΟΙΚΙΑΚΉ ΘΕΡΜΑΝΣΗ ΓΝΩΣΤΙΚΕΣ ΠΡΟΫΠΟΘΕΣΕΙΣ 1.Καύση απόδοση καυσίμων υλών (Χημεία) 2.Ενέργεια (Φυσική) 3.Ασθένειες

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

Η Υγεία είναι ο παράγοντας που μετράει την φυσική, ψυχολογική ή ακόμα και την πνευματική κατάσταση ενός ζώντος οργανισμού.

Η Υγεία είναι ο παράγοντας που μετράει την φυσική, ψυχολογική ή ακόμα και την πνευματική κατάσταση ενός ζώντος οργανισμού. ΔΙΑΤΡΟΦΗ ΚΑΙ ΥΓΕΙΑ Η Υγεία είναι ο παράγοντας που μετράει την φυσική, ψυχολογική ή ακόμα και την πνευματική κατάσταση ενός ζώντος οργανισμού. Διατροφή είναι η επιστήμη της τροφής που σχετίζεται με την

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

Υποψήφιοι Σχολικοί Σύμβουλοι 1986 2005

Υποψήφιοι Σχολικοί Σύμβουλοι 1986 2005 Υποψήφιοι Σχολικοί Σύμβουλοι 1986 25 Για τους /τις εκπαιδευτικούς που υπέβαλαν αίτηση υποψηφιότητας για τη θέση Σχολικού Συμβούλου υπάρχουν μας διατέθηκαν από τις αρμόδιες υπηρεσίες του ΥΠΕΠΘ, για τα έτη

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

Πρακτικό εργαλείο. για την ταυτοποίηση πρώτου επιπέδου των θυμάτων παράνομης διακίνησης και εμπορίας. τη σεξουαλική εκμετάλλευση

Πρακτικό εργαλείο. για την ταυτοποίηση πρώτου επιπέδου των θυμάτων παράνομης διακίνησης και εμπορίας. τη σεξουαλική εκμετάλλευση Πρακτικό εργαλείο για την ταυτοποίηση πρώτου επιπέδου των θυμάτων παράνομης διακίνησης και εμπορίας με σκοπό τη σεξουαλική εκμετάλλευση Ιούνιος 2013 Στα πλαίσια της επαγγελματικής σας ιδιότητας ενδέχεται

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

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

ΣΥΜΒΟΛΗ ΤΩΝ ΝΕΩΝ ΤΕΧΝΟΛΟΓΙΩΝ ΣΤΗΝ ΚΑΤΑΡΤΙΣΗ ΚΑΙ ΕΚΠΑΙΔΕΥΣΗ ΤΟΥ ΠΡΟΣΩΠΙΚΟΥ ΜΙΑΣ ΣΥΓΧΡΟΝΗΣ ΕΠΙΧΕΙΡΗΣΗΣ ΤΕΙ ΗΠΕΙΡΟΥ- ΠΑΡΑΡΤΗΜΑ ΠΡΕΒΕΖΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΣΥΜΒΟΛΗ ΤΩΝ ΝΕΩΝ ΤΕΧΝΟΛΟΓΙΩΝ ΣΤΗΝ ΚΑΤΑΡΤΙΣΗ ΚΑΙ ΕΚΠΑΙΔΕΥΣΗ ΤΟΥ ΠΡΟΣΩΠΙΚΟΥ ΜΙΑΣ ΣΥΓΧΡΟΝΗΣ ΕΠΙΧΕΙΡΗΣΗΣ ΕΠΙΜΕΛΕΙΑ:

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

ΑΓΡΟΤΙΚΗ ΖΩΗ ΚΑΙ ΚΥΠΡΙΑΚΗ ΠΑΡΑΔΟΣΗ

ΑΓΡΟΤΙΚΗ ΖΩΗ ΚΑΙ ΚΥΠΡΙΑΚΗ ΠΑΡΑΔΟΣΗ ΑΓΡΟΤΙΚΗ ΖΩΗ ΚΑΙ ΚΥΠΡΙΑΚΗ ΠΑΡΑΔΟΣΗ Έργα παιδιών Εμπνευσμένα από το Εκπαιδευτικό Πρόγραμμα στη Δημοτική Πινακοθήκη Λεμεσού Πρόγραμμα Ο τόπος μας με την παλέτα των ζωγράφων Τα έργα είναι εμπνευσμένα από

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

Α. ΟΡΓΑΝΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΕΦΑΡΜΟΓΗΣ

Α. ΟΡΓΑΝΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΕΦΑΡΜΟΓΗΣ Α. ΟΡΓΑΝΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΕΦΑΡΜΟΓΗΣ Με την υπαγωγή του τομέα και της πολιτικής για την Έρευνα και την Τεχνολογία στο Υπουργείο Παιδείας, Δια Βίου Μάθησης και Θρησκευμάτων (ΥΠΔΒΜΘ), το Υπουργείο ανέλαβε

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

συνήλθε στην Αίθουσα των συνεδριάσεων του Βουλευτηρίου η Βουλή σε ολομέλεια για να συνεδριάσει υπό την προεδρία του Ε Αντιπροέδρου αυτής κ.

συνήλθε στην Αίθουσα των συνεδριάσεων του Βουλευτηρίου η Βουλή σε ολομέλεια για να συνεδριάσει υπό την προεδρία του Ε Αντιπροέδρου αυτής κ. ΠΡΑΚΤΙΚΑ ΒΟΥΛΗΣ ΙΕ ΠΕΡΙΟΔΟΣ ΠΡΟΕΔΡΕΥΟΜΕΝΗΣ ΚΟΙΝΟΒΟΥΛΕΥΤΙΚΗΣ ΔΗΜΟΚΡΑΤΙΑΣ ΣΥΝΟΔΟΣ Β ΣΥΝΕΔΡΙΑΣΗ ϞΔ Δευτέρα 24 Φεβρουαρίου 2014 Αθήνα, σήμερα στις 24 Φεβρουαρίου 2014, ημέρα Δευτέρα και ώρα 18.08 συνήλθε στην

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

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

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

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

ΑΠΑΝΤΗΣΕΙΣ. Επιμέλεια: Ομάδα Φιλολόγων της Ώθησης

ΑΠΑΝΤΗΣΕΙΣ. Επιμέλεια: Ομάδα Φιλολόγων της Ώθησης ΑΠΑΝΤΗΣΕΙΣ Επιμέλεια: Ομάδα Φιλολόγων της Ώθησης 1 Τετάρτη, 28 Μα ου 2014 Γ ΛΥΚΕΙΟΥ ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ ΕΚΦΡΑΣΗ - ΕΚΘΕΣΗ ΚΕΙΜΕΝΟ Η «ανθρωπιά» είναι μια λέξη του καιρού μας, ένας όρος κοινόχρηστος, ένα νόμισμα

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

ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ ΠΕΡΙΦΕΡΕΙΑ ΣΤΕΡΕΑΣ ΕΛΛΑ ΑΣ ΓΡΑΦΕΙΟ ΠΕΡΙΦΕΡΕΙΑΡΧΗ ΥΨΗΛΑΝΤΗ 1 35100 ΛΑΜΙΑ. Λαµία 28-6-2013 ΠΡΟΣ: Μ.Μ.Ε.

ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ ΠΕΡΙΦΕΡΕΙΑ ΣΤΕΡΕΑΣ ΕΛΛΑ ΑΣ ΓΡΑΦΕΙΟ ΠΕΡΙΦΕΡΕΙΑΡΧΗ ΥΨΗΛΑΝΤΗ 1 35100 ΛΑΜΙΑ. Λαµία 28-6-2013 ΠΡΟΣ: Μ.Μ.Ε. ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ ΠΕΡΙΦΕΡΕΙΑ ΣΤΕΡΕΑΣ ΕΛΛΑ ΑΣ ΓΡΑΦΕΙΟ ΠΕΡΙΦΕΡΕΙΑΡΧΗ ΥΨΗΛΑΝΤΗ 1 35100 ΛΑΜΙΑ Λαµία 28-6-2013 ΠΡΟΣ: Μ.Μ.Ε. ΕΛΤΙΟ ΤΥΠΟΥ Τακτική Συνεδρίαση του Περιφερειακού Συµβουλίου µε ενηµέρωση από τον

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

Ομιλία του ημάρχου Αμαρουσίου, Προέδρου Ιατρικού Συλλόγου Αθηνών. Γιώργου Πατούλη, στην εκδήλωση μνήμης στον Ιωάννη Πασαλίδη

Ομιλία του ημάρχου Αμαρουσίου, Προέδρου Ιατρικού Συλλόγου Αθηνών. Γιώργου Πατούλη, στην εκδήλωση μνήμης στον Ιωάννη Πασαλίδη Ομιλία του ημάρχου Αμαρουσίου, Προέδρου Ιατρικού Συλλόγου Αθηνών Γιώργου Πατούλη, στην εκδήλωση μνήμης στον Ιωάννη Πασαλίδη Κυρίες και κύριοι καλησπέρα σας, Με ιδιαίτερη χαρά βρίσκομαι στη σημερινή εκδήλωση

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

1 ο Ολοήμερο Δημοτικό Σχολείο Πορταριάς.

1 ο Ολοήμερο Δημοτικό Σχολείο Πορταριάς. ΕΚΘΕΣΗ ΕΦΑΡΜΟΓΗΣ ΚΑΙ ΑΠΟΤΙΜΗΣΗΣ ΕΚΠΑΙΔΕΥΤΙΚΗΣ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 1 ο Ολοήμερο Δημοτικό Σχολείο Πορταριάς. 1. Στοιχεία εκπαιδευτικού / -ών Μακρής Νικόλαος Καραγιάννης Ηρακλής Α. Χαρακτηριστικά Ανανεώσιμες πηγές

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

ΠΑΙΔΑΓΩΓΙΚΗ ΣΧΟΛΗ (ΦΛΩΡΙΝΑ) ΤΜΗΜΑ ΝΗΠΙΑΓΩΓΩΝ ΕΡΓΑΣΤΗΡΙΟ ΔΙΔΑΚΤΙΚΗΣ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΠΑΡΑΓΩΓΗΣ ΔΙΔΑΚΤΙΚΟΥ ΥΛΙΚΟΥ

ΠΑΙΔΑΓΩΓΙΚΗ ΣΧΟΛΗ (ΦΛΩΡΙΝΑ) ΤΜΗΜΑ ΝΗΠΙΑΓΩΓΩΝ ΕΡΓΑΣΤΗΡΙΟ ΔΙΔΑΚΤΙΚΗΣ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΠΑΡΑΓΩΓΗΣ ΔΙΔΑΚΤΙΚΟΥ ΥΛΙΚΟΥ ΠΑΙΔΑΓΩΓΙΚΗ ΣΧΟΛΗ (ΦΛΩΡΙΝΑ) ΤΜΗΜΑ ΝΗΠΙΑΓΩΓΩΝ ΕΡΓΑΣΤΗΡΙΟ ΔΙΔΑΚΤΙΚΗΣ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΠΑΡΑΓΩΓΗΣ ΔΙΔΑΚΤΙΚΟΥ ΥΛΙΚΟΥ «ΕΝΝΟΙΕΣ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΙΙ ΚΑΙ Η ΔΙΔΑΣΚΑΛΙΑ ΤΟΥΣ» ΕΡΓΑΣΤΗΡΙΑΚΟ ΜΕΡΟΣ ΥΠΕΥΘΥΝΟΙ ΜΑΘΗΜΑΤΟΣ:

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

Συλλόγου ιπλωµατούχων Νοσηλευτριών και Νοσηλευτών Χειρουργείου

Συλλόγου ιπλωµατούχων Νοσηλευτριών και Νοσηλευτών Χειρουργείου Κ Α Τ Α Σ Τ Α Τ Ι Κ Ο Συλλόγου ιπλωµατούχων Νοσηλευτριών και Νοσηλευτών Χειρουργείου Άρθρο 1 ο ΣΥΣΤΑΣΗ ΕΠΩΝΥΜΙΑ Ε ΡΑ Ιδρύεται Σωµατείο µε την επωνυµία «Σύλλογος ιπλωµατούχων Νοσηλευτριών και Νοσηλευτών

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

Συνέντευξη με την συγγραφέα Μαριλίτα Χατζημποντόζη!

Συνέντευξη με την συγγραφέα Μαριλίτα Χατζημποντόζη! Συνέντευξη με την συγγραφέα Μαριλίτα Χατζημποντόζη! της Βούλας Παπατσιφλικιώτη Η συγγραφέας παιδικών βιβλίων κ. Μαριλίτα Χατζημποντόζη μας παρουσιάζει τις δημιουργίες της και κουβεντιάζει μαζί μας! Είναι

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

ΤΑ ΕΠΙΠΕΔΑ ΟΡΓΑΝΩΣΗΣ ΤΩΝ ΠΟΛΥΚΥΤΤΑΡΩΝ ΟΡΓΑΝΣΙΜΩΝ ΟΙ ΖΩΙΚΟΙ ΙΣΤΟΙ 2 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ

ΤΑ ΕΠΙΠΕΔΑ ΟΡΓΑΝΩΣΗΣ ΤΩΝ ΠΟΛΥΚΥΤΤΑΡΩΝ ΟΡΓΑΝΣΙΜΩΝ ΟΙ ΖΩΙΚΟΙ ΙΣΤΟΙ 2 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ ΤΑ ΕΠΙΠΕΔΑ ΟΡΓΑΝΩΣΗΣ ΤΩΝ ΠΟΛΥΚΥΤΤΑΡΩΝ ΟΡΓΑΝΣΙΜΩΝ ΟΙ ΖΩΙΚΟΙ ΙΣΤΟΙ 2 ο ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ ΤΑ ΟΝΟΜΑΤΑ ΤΩΝ ΜΑΘΗΤΩΝ ΤΗΣ ΟΜΑΔΑΣ ΣΑΣ:.. ΔΡΑΣΤΗΡΙΟΤΗΤΑ 1 η Οι ιστοί των οργάνων του πεπτικού συστήματος Α) Ένα σημαντικό

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

«Ειρήνη» Σημειώσεις για εκπαιδευτικούς

«Ειρήνη» Σημειώσεις για εκπαιδευτικούς «Ειρήνη» Σημειώσεις για εκπαιδευτικούς Το «Ειρήνη» αποτελεί ένα εκπαιδευτικό υλικό απευθυνόμενο σε παιδιά ηλικίας 5 έως 8 ετών. Περιλαμβάνει: Μια ταινία κινουμένων σχεδίων (διάρκειας 7 λεπτών) Σημειώσεις

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

35η ιδακτική Ενότητα ΕΝΟΧΙΚΕΣ ΣΧΕΣΕΙΣ ( ΕΝΟΧΙΚΟ ΙΚΑΙΟ)

35η ιδακτική Ενότητα ΕΝΟΧΙΚΕΣ ΣΧΕΣΕΙΣ ( ΕΝΟΧΙΚΟ ΙΚΑΙΟ) 35η ιδακτική Ενότητα ΕΝΟΧΙΚΕ ΧΕΕΙ ( ΕΝΟΧΙΚΟ ΙΚΑΙΟ) Εργασία για το σχολείο Ο καθηγητής θα µοιράσει µισθωτήρια κατοικιών στους µαθητές, θα τους χωρίσει ανά θρανίο σε εκµισθωτές και µισθωτές και αφού τους

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

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

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

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

ΣΥΝΘΗΚΗ SCHENGEN (ΣΕΝΓΚΕΝ)

ΣΥΝΘΗΚΗ SCHENGEN (ΣΕΝΓΚΕΝ) ΣΥΝΘΗΚΗ SCHENGEN (ΣΕΝΓΚΕΝ) ΣΥΜΒΑΣΗ ΕΦΑΡΜΟΓΗΣ ΤΗΣ ΣΥΜΦΩΝΙΑΣ ΤΟΥ ΣΕΝΓΚΕΝ της 14ης Ιουνίου 1985 μεταξύ των κυβερνήσεων των κρατών της Οικονομικής Ένωσης Μπενελούξ, της Ομοσπονδιακής Δημοκρατίας της Γερμανίας

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

Ευρετήριο πινάκων. Ασκήσεις και υπομνήματα

Ευρετήριο πινάκων. Ασκήσεις και υπομνήματα Ευρετήριο πινάκων Ασκήσεις και υπομνήματα Ανάγνωση, για να ταυτιστεί και να προβάλει τα συναισθήματά του Ανακαλύψτε την προέλευση των πιστεύω σας Απαλή μουσική ως φάρμακο για τις εντάσεις και την απογοήτευση

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΚΟΙΝΩΝΙΚΗΣ ΑΝΘΡΩΠΟΛΟΓΙΑΣ ΚΑΙ ΙΣΤΟΡΙΑΣ Π.Μ.Σ. «ΓΥΝΑΙΚΕΣ ΚΑΙ ΦΥΛΑ: ΑΝΘΡΩΠΟΛΟΓΙΚΕΣ ΚΑΙ ΙΣΤΟΡΙΚΕΣ ΠΡΟΣΕΓΓΙΣΕΙΣ»

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΚΟΙΝΩΝΙΚΗΣ ΑΝΘΡΩΠΟΛΟΓΙΑΣ ΚΑΙ ΙΣΤΟΡΙΑΣ Π.Μ.Σ. «ΓΥΝΑΙΚΕΣ ΚΑΙ ΦΥΛΑ: ΑΝΘΡΩΠΟΛΟΓΙΚΕΣ ΚΑΙ ΙΣΤΟΡΙΚΕΣ ΠΡΟΣΕΓΓΙΣΕΙΣ» ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΚΟΙΝΩΝΙΚΗΣ ΑΝΘΡΩΠΟΛΟΓΙΑΣ ΚΑΙ ΙΣΤΟΡΙΑΣ Π.Μ.Σ. «ΓΥΝΑΙΚΕΣ ΚΑΙ ΦΥΛΑ: ΑΝΘΡΩΠΟΛΟΓΙΚΕΣ ΚΑΙ ΙΣΤΟΡΙΚΕΣ ΠΡΟΣΕΓΓΙΣΕΙΣ» ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ: Γυναικείοι Συνεταιρισμοί: εκδοχή ή εργασιακή

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

ΝΕΑ ΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ. [Νέοι και πρότυπα ψυχαγωγίας]

ΝΕΑ ΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ. [Νέοι και πρότυπα ψυχαγωγίας] ΝΕΑ ΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ Κείμενο [Νέοι και πρότυπα ψυχαγωγίας] Ως ψυχαγωγία θεωρείται κάθε ανθρώπινη δραστηριότητα που επιτρέπει στους ανθρώπους να αξιοποιούν δημιουργικά τον ελεύθερο χρόνο τους. Η δραστηριότητα

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

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ ΑΘΗΝΑ 2015 1 Το επιστημονικό περιεχόμενο του παρόντος βιβλίου έχει υποβληθεί σε κριτική ανάγνωση και εγκριθεί με το σύστημα των κριτών. Η κριτική ανάγνωση πραγματοποιήθηκε από

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

Άρθρο 2 -Καταχώρηση και τήρηση στοιχείων σε ηλεκτρονική µορφή

Άρθρο 2 -Καταχώρηση και τήρηση στοιχείων σε ηλεκτρονική µορφή Π.Δ. 114/05 (ΦΕΚ 165 Α / 30-6-2005) : Yποχρεωτική ανασύσταση φακέλου, ο οποίος έχει απολεσθεί από υπαιτιότητα της υπηρεσίας. Ο ΠΡΟΕΔΡΟΣ ΤΗΣ ΕΛΛΗΝΙΚΗΣ ΔΗΜΟΚΡΑΤΙΑΣ Έχοντας υπόψη: 1. Τις διατάξεις της παραγράφου

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

Ο «ΕΚΑΛΟΓΟΣ» ΤΟΥ ΚΑΛΟΥ ΥΠΟΨΗΦΙΟΥ

Ο «ΕΚΑΛΟΓΟΣ» ΤΟΥ ΚΑΛΟΥ ΥΠΟΨΗΦΙΟΥ Ο «ΕΚΑΛΟΓΟΣ» ΤΟΥ ΚΑΛΟΥ ΥΠΟΨΗΦΙΟΥ 1. Ύπνος: Δεν βοηθάει να ξενυχτήσουμε διαβάζοντας το προηγούμενο βράδυ, προσπαθώντας να συγκεντρώσουμε το σύνολο της ύλης στο μυαλό μας. Η κούραση, δε θα μας επιτρέψει

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

ΕΚΦΡΑΣΗ-ΕΚΘΕΣΗ Β ΛΥΚΕΙΟΥ 1 ο Λύκειο Καισαριανής ΕΠΑΓΓΕΛΜΑ: Κείμενα Προβληματισμού

ΕΚΦΡΑΣΗ-ΕΚΘΕΣΗ Β ΛΥΚΕΙΟΥ 1 ο Λύκειο Καισαριανής ΕΠΑΓΓΕΛΜΑ: Κείμενα Προβληματισμού Τι θα πρέπει να λάβει υπόψη του ο νέος, πριν τελικά επιλέξει το επάγγελμα που θα ασκήσει Το επάγγελμα, είτε είναι λειτούργημα είτε όχι, έχει ζωτική σημασία για τον άνθρωπο. Συντελεί στην προσωπική του

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

ΣΥΖΗΤΗΣΗ ΝΟΜΟΣΧΕΔΙΟΥ ΥΠ.ΓΕΩΡΓΙΑΣ 4.9.2001

ΣΥΖΗΤΗΣΗ ΝΟΜΟΣΧΕΔΙΟΥ ΥΠ.ΓΕΩΡΓΙΑΣ 4.9.2001 ΣΥΖΗΤΗΣΗ ΝΟΜΟΣΧΕΔΙΟΥ ΥΠ.ΓΕΩΡΓΙΑΣ 4.9.2001 ΠΡΟΕΔΡΕΥΩΝ (Κωνσταντίνος Γείτονας): Ο Κοινοβουλευτικός Εκπρόσωπος της Νέας Δημοκρατίας κ. Μπασιάκος έχει το λόγο. ΕΥΑΓΓΕΛΟΣ ΜΠΑΣΙΑΚΟΣ: Κυρίες και κύριοι συνάδελφοι,

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

ΑΠΑΝΤΗΣΕΙΣ ΣΤΟ ΔΙΔΑΓΜΕΝΟ ΚΕΙΜΕΝΟ

ΑΠΑΝΤΗΣΕΙΣ ΣΤΟ ΔΙΔΑΓΜΕΝΟ ΚΕΙΜΕΝΟ ΑΠΑΝΤΗΣΕΙΣ ΣΤΟ ΔΙΔΑΓΜΕΝΟ ΚΕΙΜΕΝΟ A1. Με αυτά λοιπόν τα μέσα εφοδιασμένοι οι άνθρωποι κατοικούσαν στην αρχή διασκορπισμένοι, πόλεις όμως δεν υπήρχαν κατασπαράσσονταν λοιπόν από τα θηρία, γιατί ήταν από

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

Συνήγορος του Καταναλωτή Νομολογία ΕφΑθ 5253/2003

Συνήγορος του Καταναλωτή Νομολογία ΕφΑθ 5253/2003 ΕφΑθ 5253/2003 Τράπεζες. Στεγαστικά δάνεια. Γενικοί Όροι Συναλλαγών. Καταχρηστικοί όροι. Έξοδα χρηματοδότησης. Προμήθεια φακέλου Παράνομες επιβαρύνσεις. Υπέρμετρες εγγυήσεις. Καταγγελία σύμβασης δανείου.

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

Το ολοκαύτωμα της Κάσου

Το ολοκαύτωμα της Κάσου Το ολοκαύτωμα της Κάσου Το βρίκιον Άρης, 1881 Κολοβός Γεώργιος Ερευνητής Συγγραφέας Πτυχιούχος Διοίκησης Ναυτιλιακών και Μεταφορικών Επιχειρήσεων Ανώτατου Τεχνολογικού Εκπαιδευτικού Ιδρύματος Πειραιά Εισαγωγή

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

Ονοματεπώνυμο Βαθμίδα Πανεπιστήμιο Ιδιότητα. Επίκουρη Καθηγήτρια. Καθηγητής. Λέκτορας

Ονοματεπώνυμο Βαθμίδα Πανεπιστήμιο Ιδιότητα. Επίκουρη Καθηγήτρια. Καθηγητής. Λέκτορας ΤΜΗΜΑ ΕΠΙΣΤΗΜΩΝ ΠΡΟΣΧΟΛΙΚΗΣ ΑΓΩΓΗΣ ΚΑΙ ΕΚΠΑΙΔΕΥΣΗΣ Α.Π.Θ.- ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΔΙΑΠΑΝΕΠΙΣΤΗΜΙΑΚΟ ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΨΥΧΟΠΑΙΔΑΓΩΓΙΚΗ ΤΗΣ ΕΝΤΑΞΗΣ: ΕΝΑ ΣΧΟΛΕΙΟ ΓΙΑ ΟΛΟΥΣ ΔΙΠΛΩΜΑΤΙΚΗ

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

Ενότητα 2. Γενικά Οργάνωση Ελέγχου (ΙΙ) Φύλλα Εργασίας Εκθέσεις Ελέγχων

Ενότητα 2. Γενικά Οργάνωση Ελέγχου (ΙΙ) Φύλλα Εργασίας Εκθέσεις Ελέγχων Ενότητα 2 Γενικά Οργάνωση Ελέγχου (ΙΙ) Φύλλα Εργασίας Εκθέσεις Ελέγχων Φύλλα Εργασίας (Γενικά) Με τον όρο "φύλλα εργασίας" εννοούµε, το σύνολο των φύλλων που περιέχουν όλο το αποδεικτικό υλικό, το οποίο

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

ΠΟΛΙΤΙΚΗ ΔΙΚΗ» ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΝΟΜΙΚΩΝ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΠΟΛΙΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΝΟΜΙΚΗΣ ΤΟΜΕΑΣ ΔΗΜΟΣΙΟΥ ΔΙΚΑΙΟΥ

ΠΟΛΙΤΙΚΗ ΔΙΚΗ» ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΝΟΜΙΚΩΝ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΠΟΛΙΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΝΟΜΙΚΗΣ ΤΟΜΕΑΣ ΔΗΜΟΣΙΟΥ ΔΙΚΑΙΟΥ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΝΟΜΙΚΩΝ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΠΟΛΙΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΝΟΜΙΚΗΣ ΤΟΜΕΑΣ ΔΗΜΟΣΙΟΥ ΔΙΚΑΙΟΥ ΕΡΓΑΣΙΑ ΣΤΙΣ ΕΦΑΡΜΟΓΕΣ ΔΗΜΟΣΙΟΥ ΔΙΚΑΙΟΥ ΘΕΜΑ: «ΠΑΡΑΝΟΜΑ ΑΠΟΔΕΙΚΤΙΚΑ

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

ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΑΣ «ΚΑΤΟΙΚΙΔΙΑ ΖΩΑ»

ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΑΣ «ΚΑΤΟΙΚΙΔΙΑ ΖΩΑ» ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΑΣ «ΚΑΤΟΙΚΙΔΙΑ ΖΩΑ» ΕΙΣΑΓΩΓΗ ΤΙΤΛΟΣ ΕΡΕΥΝΑΣ : Ποιο είναι το αγαπημένο ζώο των εφήβων? ΕΙΣΑΓΩΓΗ: Από τα αρχαία χρόνια οι άνθρωποι ανέπτυξαν μια ιδιαίτερη σχέση με τα ζώα. Τα χρησιμοποιούσαν

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

«Φιλολογικό» Φροντιστήριο Επαναληπτικό διαγώνισμα στη Νεοελληνική Γλώσσα. Ενδεικτικές απαντήσεις. Περιθωριοποίηση μαθητών από μαθητές!

«Φιλολογικό» Φροντιστήριο Επαναληπτικό διαγώνισμα στη Νεοελληνική Γλώσσα. Ενδεικτικές απαντήσεις. Περιθωριοποίηση μαθητών από μαθητές! «Φιλολογικό» Φροντιστήριο Επαναληπτικό διαγώνισμα στη Νεοελληνική Γλώσσα Ενδεικτικές απαντήσεις Περιθωριοποίηση μαθητών από μαθητές! Α. Να συντάξετε την περίληψη του κειμένου που σας δίνεται (λέξεις 100-120).

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

Ιανουάριος 2014 (φύλλο 2 ο ) Τιμή φύλλου 1

Ιανουάριος 2014 (φύλλο 2 ο ) Τιμή φύλλου 1 Γ Λυκείου «...το κλίμα σε όλες τις τάξεις της Γ Λυκείου είναι τόσο οικογενειακό.» Μέσα σε μια χρόνια έχεις το περιθώριο να αποφασίσεις για την επαγγελματική σου σταδιοδρομία αλλά και να δώσεις έναν τεράστιο

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

Έλλειψη εσωτερικής ελευθερίας

Έλλειψη εσωτερικής ελευθερίας Έλλειψη εσωτερικής ελευθερίας Ανωριμότητα Προκαταλήψεις- Στερεότυπα Απουσία ανθρωπιστικής παιδείας Ημιμάθεια Έλλειψη έμπρακτης χριστιανικής ζωής ΣΤΟΧΟΙ Να αρχίσουν να αναγνωρίζουν και να εκφράζουν τα δικά

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΔΙΕΘΝΩΝ ΚΑΙ ΕΥΡΩΠΑΪΚΩΝ ΣΠΟΥΔΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΙΣ ΔΙΕΘΝΕΙΣ ΚΑΙ ΕΥΡΩΠΑΪΚΕΣ ΣΠΟΥΔΕΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΔΙΕΘΝΩΝ ΚΑΙ ΕΥΡΩΠΑΪΚΩΝ ΣΠΟΥΔΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΙΣ ΔΙΕΘΝΕΙΣ ΚΑΙ ΕΥΡΩΠΑΪΚΕΣ ΣΠΟΥΔΕΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΔΙΕΘΝΩΝ ΚΑΙ ΕΥΡΩΠΑΪΚΩΝ ΣΠΟΥΔΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΙΣ ΔΙΕΘΝΕΙΣ ΚΑΙ ΕΥΡΩΠΑΪΚΕΣ ΣΠΟΥΔΕΣ Διπλωματική Εργασία Η ΕΛΛΗΝΙΚΗ ΕΞΩΤΕΡΙΚΗ ΠΟΛΙΤΙΚΗ ΚΑΙ Η ΣΥΝΟΔΟΣ ΚΟΡΥΦΗΣ ΤΟΥ

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

Η ΑΥΤΕΠΑΓΓΕΛΤΗ ΑΝΑΖΗΤΗΣΗ ΔΙΚΑΙΟΛΟΓΗΤΙΚΩΝ ΜΙΑ ΚΡΙΤΙΚΗ ΑΠΟΤΙΜΗΣΗ. ( Διοικητική Ενημέρωση, τ.51, Οκτώβριος Νοέμβριος Δεκέμβριος 2009)

Η ΑΥΤΕΠΑΓΓΕΛΤΗ ΑΝΑΖΗΤΗΣΗ ΔΙΚΑΙΟΛΟΓΗΤΙΚΩΝ ΜΙΑ ΚΡΙΤΙΚΗ ΑΠΟΤΙΜΗΣΗ. ( Διοικητική Ενημέρωση, τ.51, Οκτώβριος Νοέμβριος Δεκέμβριος 2009) Η ΑΥΤΕΠΑΓΓΕΛΤΗ ΑΝΑΖΗΤΗΣΗ ΔΙΚΑΙΟΛΟΓΗΤΙΚΩΝ ΜΙΑ ΚΡΙΤΙΚΗ ΑΠΟΤΙΜΗΣΗ ( Διοικητική Ενημέρωση, τ.5, Οκτώβριος Νοέμβριος Δεκέμβριος 009). Η θέσπιση του νέου μέτρου Η σημαντικότερη απόπειρα καινοτομικής δράσης της

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

ΣΥΝΕΝΤΕΥΞΗ ΤΥΠΟΥ. Η ολοκληρωμένη προσέγγιση θα εφαρμοστεί με τα παρακάτω Εργαλεία

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

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

ΔΙΑΔΟΣΗ ΘΕΡΜΟΤΗΤΑΣ Φυσική Β' Γυμνασίου. Επιμέλεια: Ιωάννης Γιαμνιαδάκης

ΔΙΑΔΟΣΗ ΘΕΡΜΟΤΗΤΑΣ Φυσική Β' Γυμνασίου. Επιμέλεια: Ιωάννης Γιαμνιαδάκης ΔΙΑΔΟΣΗ ΘΕΡΜΟΤΗΤΑΣ Φυσική Β' Γυμνασίου Επιμέλεια: Ιωάννης Γιαμνιαδάκης Σύνδεση με προηγούμενο Μάθημα Στο κεφάλαιο Θερμότητα έχουμε μάθει: Τι είναι θερμότητα & θερμοκρασία μακροσκοπικά & μικροσκοπικά Μέτρηση

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

ΘΕΜΑ: «Καλλιέργεια προφορικών δεξιοτήτων των νηπίων: Διδακτικές δραστηριότητες του προφορικού λόγου στο νηπιαγωγείο»

ΘΕΜΑ: «Καλλιέργεια προφορικών δεξιοτήτων των νηπίων: Διδακτικές δραστηριότητες του προφορικού λόγου στο νηπιαγωγείο» ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΑΝΘΡΩΠΙΣΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΠΡΟΣΧΟΛΙΚΗΣ ΑΓΩΓΗΣ ΚΑΙ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΣΧΕΔΙΑΣΜΟΥ «ΠΑΙΔΙΚΟ ΒΙΒΛΙΟ ΚΑΙ ΠΑΙΔΑΓΩΓΙΚΟ ΥΛΙΚΟ» ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ που εκπονήθηκε για

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

ΚΕΦΑΛΑΙΟ 9 ΑΞΙΟΛΟΓΗΣΗ ΕΦΑΡΜΟΓΗΣ «ΕΝΑ ΟΝΕΙΡΙΚΟ ΤΑΞΙΔΙ ΣΤΗΝ ΚΝΩΣΟ» - ΠΕΡΙΓΡΑΦΗ ΔΙΑΔΙΚΑΣΙΑΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ

ΚΕΦΑΛΑΙΟ 9 ΑΞΙΟΛΟΓΗΣΗ ΕΦΑΡΜΟΓΗΣ «ΕΝΑ ΟΝΕΙΡΙΚΟ ΤΑΞΙΔΙ ΣΤΗΝ ΚΝΩΣΟ» - ΠΕΡΙΓΡΑΦΗ ΔΙΑΔΙΚΑΣΙΑΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΚΕΦΑΛΑΙΟ 9 ΑΞΙΟΛΟΓΗΣΗ ΕΦΑΡΜΟΓΗΣ «ΕΝΑ ΟΝΕΙΡΙΚΟ ΤΑΞΙΔΙ ΣΤΗΝ ΚΝΩΣΟ» - ΠΕΡΙΓΡΑΦΗ ΔΙΑΔΙΚΑΣΙΑΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ 9.1 Επιλογή δείγµατος Το λογισµικό «Ένα ονειρικό ταξίδι στην Κνωσό» δοκιµάστηκε και αξιολογήθηκε

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

Επίσηµη Εφηµερίδα αριθ. C 372 της 09/12/1997 σ. 0005-0013

Επίσηµη Εφηµερίδα αριθ. C 372 της 09/12/1997 σ. 0005-0013 Επίσηµη Εφηµερίδα αριθ. C 372 της 09/12/1997 σ. 0005-0013 ΑΝΑΚΟΙΝΩΣΗ ΤΗΣ ΕΠΙΤΡΟΠΗΣ όσον αφορά τον ορισµό της σχετικής αγοράς για τους σκοπούς του κοινοτικού δικαίου ανταγωνισµού (97/C 372/03) (Κείµενο

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

ΟΡΓΑΝΩΣΗ ΕΝΟΤΗΤΩΝ Α ΤΑΞΗΣ ΕΝΟΤΗΤΑ 3

ΟΡΓΑΝΩΣΗ ΕΝΟΤΗΤΩΝ Α ΤΑΞΗΣ ΕΝΟΤΗΤΑ 3 ΟΡΓΑΝΩΣΗ ΕΝΟΤΗΤΩΝ Α ΤΑΞΗΣ ΕΝΟΤΗΤΑ 3 Σημειώνεται ότι για την ετοιμασία και εφαρμογή της ενότητας συνέδραμαν και οι συνάδελφοι Μαρία Ανθίμου και Χριστίνα Κκαΐλη (Δημοτικό Σχολείο Μενεού) ΔΕΙΚΤΕΣ ΕΠΙΤΥΧΙΑΣ:

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

ΕΘΙΜΑ ΤΟΥ ΚΟΣΜΟΥ. Αγγελική Περιστέρη Α 2

ΕΘΙΜΑ ΤΟΥ ΚΟΣΜΟΥ. Αγγελική Περιστέρη Α 2 ΕΘΙΜΑ ΤΟΥ ΚΟΣΜΟΥ Αγγελική Περιστέρη Α 2 ΧΡΙΣΤΟΥΓΕΝΝΑ Ιρλανδία: Τη νύκτα της παραμονής των Χριστουγέννων όλα τα παράθυρα των σπιτιών που βλέπουν προς το δρόμο, φωτίζονται από ένα αναμμένο κερί, το οποίο

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

Από το ξεκίνημά του ο ΤΙΤΑΝ εκφράζει

Από το ξεκίνημά του ο ΤΙΤΑΝ εκφράζει Ένας Τιτανικός θεσμός επιβράβευσης επιτυχιών νέων ανθρώπων Από το ξεκίνημά του ο ΤΙΤΑΝ εκφράζει έμπρακτα και πολύπλευρα το ενδιαφέρον του για τους νέους ανθρώπους, ιδιαίτερα δε για τα παιδιά, κάθε ηλικίας,

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

Ι Σ Ο Κ Ρ Α Τ Η Σ ΤΡΑΠΕΖΑ ΝΟΜΙΚΩΝ ΠΛΗΡΟΦΟΡΙΩΝ Δ.Σ.Α.

Ι Σ Ο Κ Ρ Α Τ Η Σ ΤΡΑΠΕΖΑ ΝΟΜΙΚΩΝ ΠΛΗΡΟΦΟΡΙΩΝ Δ.Σ.Α. Ι Σ Ο Κ Ρ Α Τ Η Σ ΤΡΑΠΕΖΑ ΝΟΜΙΚΩΝ ΠΛΗΡΟΦΟΡΙΩΝ Δ.Σ.Α. Το κείμενο παρατίθεται ακριβώς όπως δημοσιεύθηκε στο Φ.Ε.Κ. ΤΕΥΧΟΣ Α'/194/23-8-2002 ΠΡΟΕΔΡΙΚΟ ΔΙΑΤΑΓΜΑ ΥΠ' ΑΡΙΘ. 208 Εκπαιδευτές Υποψηφίων Οδηγών, Σχολές

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

Χημεία Β Γυμνασίου Τμήμα Β3. Γρηγόρης Μαγουλάς Φανή Μανούσου Κύρος Μαλλαμίδης Ελίνα Μάλλιαρη Μάγδα Μαντά

Χημεία Β Γυμνασίου Τμήμα Β3. Γρηγόρης Μαγουλάς Φανή Μανούσου Κύρος Μαλλαμίδης Ελίνα Μάλλιαρη Μάγδα Μαντά Χημεία Β Γυμνασίου Τμήμα Β3 Γρηγόρης Μαγουλάς Φανή Μανούσου Κύρος Μαλλαμίδης Ελίνα Μάλλιαρη Μάγδα Μαντά Τι είναι άμεση και έμμεση ρύπανση του νερού. Πώς προκαλείται η ρύπανση του νερού. Επιπτώσεις της

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

Επαρχιακός Γραμματέας Λ/κας-Αμ/στου ΠΟΑ Αγροτικής

Επαρχιακός Γραμματέας Λ/κας-Αμ/στου ΠΟΑ Αγροτικής Πρόεδρος Αίγλη Παντελάκη Γενική Διευθύντρια Υπουργείου Γεωργίας, Φυσικών Πόρων και Περιβάλλοντος Αντιπρόεδρος Χάρης Ζαννετής Πρώτος Λειτουργός Γεωργίας, Φυσικών Πόρων και Περιβάλλοντος Μέλη Χρίστος Κουρτελλάρης

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

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

ΚΑΝΟΝΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΑΣ ΔΗΜΟΤΙΚΩΝ ΚΟΙΜΗΤΗΡΙΩΝ ΔΗΜΟΥ ΘΕΡΜΗΣ ΚΑΝΟΝΙΣΜΟΣ ΛΕΙΤΟΥΡΓΙΑΣ ΔΗΜΟΤΙΚΩΝ ΚΟΙΜΗΤΗΡΙΩΝ ΔΗΜΟΥ ΘΕΡΜΗΣ Αριθμός Απόφασης Δημοτικού Συμβουλίου Θέρμης 428/2011 1 Πίνακας περιεχομένων Άρθρο 1 - Γενικά 3 Άρθρο 2 Πεδίο εφαρμογής 3 Άρθρο 3 Γενικοί κανόνες

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

ΙΕΘΝΗΣ ΣΥΜΒΑΣΗ ΕΡΓΑΣΙΑΣ 183 «για την αναθεώρηση της (αναθεωρηµένης) σύµβασης για την προστασία της µητρότητας,»

ΙΕΘΝΗΣ ΣΥΜΒΑΣΗ ΕΡΓΑΣΙΑΣ 183 «για την αναθεώρηση της (αναθεωρηµένης) σύµβασης για την προστασία της µητρότητας,» ΙΕΘΝΗΣ ΣΥΜΒΑΣΗ ΕΡΓΑΣΙΑΣ 183 «για την αναθεώρηση της (αναθεωρηµένης) σύµβασης για την προστασία της µητρότητας,» Η γενική Συνδιάσκεψη της ιεθνούς Οργάνωσης Εργασίας, που συγκλήθηκε στη Γενεύη από το ιοικητικό

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

ΜΗ ΤΥΠΙΚΟΤΗΤΑ ΚΑΙ ΜΗ ΠΡΑΓΜΑΤΙΚΟΤΗΤΑ ΣΤΙΣ ΑΓΟΡΕΣ

ΜΗ ΤΥΠΙΚΟΤΗΤΑ ΚΑΙ ΜΗ ΠΡΑΓΜΑΤΙΚΟΤΗΤΑ ΣΤΙΣ ΑΓΟΡΕΣ ΜΗ ΤΥΠΙΚΟΤΗΤΑ ΚΑΙ ΜΗ ΠΡΑΓΜΑΤΙΚΟΤΗΤΑ ΣΤΙΣ ΑΓΟΡΕΣ 31 1 ΜΗ ΤΥΠΙΚΟΤΗΤΑ ΚΑΙ ΜΗ ΠΡΑΓΜΑΤΙΚΟΤΗΤΑ ΣΤΙΣ ΑΓΟΡΕΣ Κάθε άτομο πρέπει να έχει το δικαίωμα της ευχαρίστησης των καρπών της εργασίας του. Ντέιβιντ Χιουμ Οι

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

Του Σταύρου Ν. PhD Ψυχολόγου Αθλητικού Ψυχολόγου

Του Σταύρου Ν. PhD Ψυχολόγου Αθλητικού Ψυχολόγου Του Σταύρου Ν. PhD Ψυχολόγου Αθλητικού Ψυχολόγου Η σχέση και η αλληλεπίδραση των αθλητών, των προπονητών και των γονιών αποτελεί μια αναπόσπαστη διαδικασία στην αθλητική ανάπτυξη του παιδιού. Η αλληλεπίδραση

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

ΚΑΤΑΣΤΑΤΙΚΟ ΤΟΥ ΕΞΩΡΑΪΣΤΙΚΟΥ ΣΥΛΛΟΓΟΥ «Η ΑΝΕΜΟΕΣΣΑ»

ΚΑΤΑΣΤΑΤΙΚΟ ΤΟΥ ΕΞΩΡΑΪΣΤΙΚΟΥ ΣΥΛΛΟΓΟΥ «Η ΑΝΕΜΟΕΣΣΑ» ΚΑΤΑΣΤΑΤΙΚΟ ΤΟΥ ΕΞΩΡΑΪΣΤΙΚΟΥ ΣΥΛΛΟΓΟΥ ΟΙΚΟΠΕ ΟΥΧΩΝ ΚΑΙ ΟΙΚΙΣΤΩΝ ΕΜΠ ΚΑΡΥΣΤΟΥ ΕΥΒΟΙΑΣ «Η ΑΝΕΜΟΕΣΣΑ» ΑΡΘΡΟ 1 0 ΕΠΩΝΥΜΙΑ - Ε ΡΑ Ιδρύεται σωµατείο µε την επωνυµία «ΕΞΩΡΑΙΣΤΙΚΟΣ ΣΥΛΛΟΓΟΣ ΟΙΚΟΠΕ ΟΥΧΩΝ ΚΑΙ ΟΙΚΙΣΤΩΝ

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

Η ΔΙΔΑΣΚΑΛΙΑ ΤΗΣ ΘΡΗΣΚΕΙΑΣ ΣΤΟ ΟΥΔΕΤΕΡΟΘΡΗΣΚΟ ΣΧΟΛΕΙΟ (ΤΟΥ ΡΕΖΙΣ ΝΤΕΜΠΡΕ)

Η ΔΙΔΑΣΚΑΛΙΑ ΤΗΣ ΘΡΗΣΚΕΙΑΣ ΣΤΟ ΟΥΔΕΤΕΡΟΘΡΗΣΚΟ ΣΧΟΛΕΙΟ (ΤΟΥ ΡΕΖΙΣ ΝΤΕΜΠΡΕ) Η ΔΙΔΑΣΚΑΛΙΑ ΤΗΣ ΘΡΗΣΚΕΙΑΣ ΣΤΟ ΟΥΔΕΤΕΡΟΘΡΗΣΚΟ ΣΧΟΛΕΙΟ (ΤΟΥ ΡΕΖΙΣ ΝΤΕΜΠΡΕ) I Το Δεκέμβριο του 2001 ο Ζακ Λαγκ, Υπουργός Εθνικής Παιδείας της Γαλλίας ζήτησε από τον καθηγητή Ρεζίς Ντεμπρέ, το θεωρητικό ενδιαφέρον

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

Η Φυσική με Πειράματα

Η Φυσική με Πειράματα Α Γυμνασίου Η Φυσική με Πειράματα Πρόγραμμα Σπουδών Περιγραφή Το μάθημα της Φυσικής, η "Φυσική με Πειράματα", στην πρώτη τάξη του Γυμνασίου προβλέπεται να διδάσκεται μία ώρα την εβδομάδα, στην τάξη ή στο

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

Οι Αγώνες θα διεξαχθούν τόσο στο Σύγχρονο Θέατρο όσο και στο Αρχαίο

Οι Αγώνες θα διεξαχθούν τόσο στο Σύγχρονο Θέατρο όσο και στο Αρχαίο ΚΥΠΡΙΑΚΗ ΗΜΟΚΡΑΤΙΑ Υ.Π.Π 24.09.1.8 ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΙΕΥΘΥΝΣΗ ΜΕΣΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ιευθυντές/τριες Σχολείων Μέσης, Τεχνικής ηµόσιας και Ιδιωτικής Εκπαίδευσης 23 Σεπτεµβρίου 2013 Θέµα: Προκήρυξη

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

Δείτε πρώτα το βιντεάκι με τίτλο «Ένας γίγαντας υπό εξαφάνιση» που ετοίμασα για σας και θα τα ξαναπούμε σύντομα!

Δείτε πρώτα το βιντεάκι με τίτλο «Ένας γίγαντας υπό εξαφάνιση» που ετοίμασα για σας και θα τα ξαναπούμε σύντομα! 2 η Δραστηριότητα ιστοεξερευνηση ΘΕΜΑ: Η καφέ αρκούδα ΤΑΞΗ: Δ ΔΙΑΡΚΕΙΑ: 2 Διδακτικές ώρες ΣΧΟΛΕΙΟ: 15ο Δημοτικό Σχολείο Νίκαιας ΥΠΕΥΘΥΝΗ ΕΚΠΑΙΔΕΥΤΙΚΟΣ : Καλλιόπη Κοματιανού ΕΙΣΑΓΩΓΗ Καλημέρα σε όλους!

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

«ΑΝΩ ΛΙΟΣΙΑ: ΤΟΠΙΚΗ ΙΣΤΟΡΙΑ, ΠΕΡΙΒΑΛΛΟΝ, ΠΡΟΚΛΗΣΕΙΣ, ΠΡΟΟΠΤΙΚΕΣ»

«ΑΝΩ ΛΙΟΣΙΑ: ΤΟΠΙΚΗ ΙΣΤΟΡΙΑ, ΠΕΡΙΒΑΛΛΟΝ, ΠΡΟΚΛΗΣΕΙΣ, ΠΡΟΟΠΤΙΚΕΣ» 1 ο ΕΠΑ.Λ ΑΝΩ ΛΙΟΣΙΩΝ ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ: «ΑΝΩ ΛΙΟΣΙΑ: ΤΟΠΙΚΗ ΙΣΤΟΡΙΑ, ΠΕΡΙΒΑΛΛΟΝ, ΠΡΟΚΛΗΣΕΙΣ, ΠΡΟΟΠΤΙΚΕΣ» ΣΧΟΛΙΚΟ ΕΤΟΣ : 2008-2009 ΠΕΡΙΒΑΛΛΟΝΤΙΚΗ ΟΜΑΔΑ: ΔΗΜΟΠΟΥΛΟΣ

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

Το ρολόι που κρατάς στα χέρια σου κρύβει ένα μυστικό: το μυστικό της κόκκινης ομάδας. Αν είσαι αρκετά τολμηρός, μπορείς κι εσύ να ενημερωθείς για τα

Το ρολόι που κρατάς στα χέρια σου κρύβει ένα μυστικό: το μυστικό της κόκκινης ομάδας. Αν είσαι αρκετά τολμηρός, μπορείς κι εσύ να ενημερωθείς για τα Το ρολόι που κρατάς στα χέρια σου κρύβει ένα μυστικό: το μυστικό της κόκκινης ομάδας. Αν είσαι αρκετά τολμηρός, μπορείς κι εσύ να ενημερωθείς για τα πρόσφατα κατορθώματά μας στο Νέστο και να μπεις στην

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

6 η Ενότητα Στρατηγική σε επιχειρηματικό επίπεδο

6 η Ενότητα Στρατηγική σε επιχειρηματικό επίπεδο Στρατηγική Διοίκηση και Διαχείριση της Απόδοσης 6 η Ενότητα Στρατηγική σε επιχειρηματικό επίπεδο ΓΙΑΝΝΗΣ ΦΑΝΟΥΡΓΙΑΚΗΣ ΕΠΙΣΤΗΜΟΝΙΚΟΣ ΣΥΝΕΡΓΑΤΗΣ ΤΕΙ ΚΡΗΤΗΣ Αντικείμενο ενότητας Ποια ανταγωνιστική στρατηγική

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

ΒΡΕΘΗΚΑΜΕ στην Ελεύθερη Ελλάδα και πηγαίναμε πια από χωριό

ΒΡΕΘΗΚΑΜΕ στην Ελεύθερη Ελλάδα και πηγαίναμε πια από χωριό Στη ΧΙΙΙ Μεραρχία του ΕΛΑΣ R ΒΡΕΘΗΚΑΜΕ στην Ελεύθερη Ελλάδα και πηγαίναμε πια από χωριό σε χωριό με σύνδεσμο. Ήταν πολύ ωραία. Ένιωθες ότι ανέπνεες ελεύθερα, γιατί δεν υπήρχε ο κατακτητής, γιατί δεν έβλεπες

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

...ακολουθώντας τη ροή... ένα ημερολόγιο εμψύχωσης

...ακολουθώντας τη ροή... ένα ημερολόγιο εμψύχωσης ...ακολουθώντας τη ροή... ένα ημερολόγιο εμψύχωσης Κυριακή 9 Αυγούστου 2015 Αγαπητό μου ημερολόγιο Δυσκολεύομαι να προσαρμοστώ, από χθες που έχουμε έρθει στη κατασκήνωση ασχολούμαστε με τη γνωριμία με

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

ΕΞΩΔΙΚΗ ΑΠΑΝΤΗΣΗ ΔΗΛΩΣΗ ΜΕΤΑ ΔΙΑΜΑΡΤΥΡΙΑΣ ΚΑΙ ΕΠΙΦΥΛΑΞΕΩΣ

ΕΞΩΔΙΚΗ ΑΠΑΝΤΗΣΗ ΔΗΛΩΣΗ ΜΕΤΑ ΔΙΑΜΑΡΤΥΡΙΑΣ ΚΑΙ ΕΠΙΦΥΛΑΞΕΩΣ ΕΞΩΔΙΚΗ ΑΠΑΝΤΗΣΗ ΔΗΛΩΣΗ ΜΕΤΑ ΔΙΑΜΑΡΤΥΡΙΑΣ ΚΑΙ ΕΠΙΦΥΛΑΞΕΩΣ Της εδρεύουσας στην Αθήνα, (οδός Μεσογείων αριθμός 15) Ανωνύμου Εταιρείας με την επωνυμία «ΓΕΝΙΚΗ ΙΔΙΩΤΙΚΗ ΠΟΛΥΚΛΙΝΙΚΗ ΛΑΜΙΑΣ ΑΝΩΝΥΜΗ ΕΤΑΙΡΕΙΑ»,

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ: Η οργάνωση σε τοπικό επίπεδο η περίπτωση του Δήμου Αγίου Αθανασίου στην Κύπρο.

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ: Η οργάνωση σε τοπικό επίπεδο η περίπτωση του Δήμου Αγίου Αθανασίου στην Κύπρο. ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΑΛΑΜΑΤΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΤΟΠΙΚΗΣ ΑΥΤΟΔΙΟΙΚΗΣΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ: Η οργάνωση σε τοπικό επίπεδο η περίπτωση του Δήμου Αγίου Αθανασίου στην Κύπρο.

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

KATATAΞH APΘPΩN. 6. Αρχές της προσφοράς και προμήθειας, ανθρώπινων ιστών και/ ή κυττάρων

KATATAΞH APΘPΩN. 6. Αρχές της προσφοράς και προμήθειας, ανθρώπινων ιστών και/ ή κυττάρων Ο ΠΕΡΙ ΠΡΟΤΥΠΩΝ ΠΟΙΟΤΗΤΑΣ ΚΑΙ ΑΣΦΑΛΕΙΑΣ (ΔΩΡΕΑ, ΠΡΟΜΗΘΕΙΑ, ΕΛΕΓΧΟΣ, ΕΠΕΞΕΡΓΑΣΙΑ, ΣΥΝΤΗΡΗΣΗ, ΑΠΟΘΗΚΕΥΣΗ ΚΑΙ ΔΙΑΝΟΜΗ) ΑΝΘΡΩΠΙΝΩΝ ΙΣΤΩΝ, ΚΥΤΤΑΡΩΝ ΚΑΙ ΠΑΡΑΓΩΓΩΝ ΠΡΟΪΟΝΤΩΝ ΝΟΜΟΣ ΤΟΥ 2007 ---------------------------------

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

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

ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ ΑΝΑΓΚΩΝ ΑΓΟΡΑΣ ΕΡΓΑΣΙΑΣ ΔΙΑΓΝΩΣΗ ΑΝΑΓΚΩΝ ΣΕ ΠΕΡΙΦΕΡΕΙΑΚΟ ΕΠΙΠΕΔΟ ΥΠΟ ΤΗΝ ΕΠΟΠΤΕΙΑ ΤΟΥ ΥΠΟΥΡΓΕΙΟΥ ΕΡΓΑΣΙΑΣ, ΚΟΙΝΩΝΙΚΗΣ ΑΣΦΑΛΙΣΗΣ ΚΑΙ ΚΟΙΝΩΝΙΚΗΣ ΑΛΛΗΛΕΓΓΥΗΣ ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ ΑΝΑΓΚΩΝ ΑΓΟΡΑΣ ΕΡΓΑΣΙΑΣ ΔΙΑΓΝΩΣΗ ΑΝΑΓΚΩΝ ΣΕ ΠΕΡΙΦΕΡΕΙΑΚΟ ΕΠΙΠΕΔΟ ΔΕΚΕΜΒΡΙΟΣ 2015 ΣΥΣΤΗΜΑ ΔΙΑΓΝΩΣΗΣ

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

Το Μουσείο των Βαλκανικών Πολέμων στη Γέφυρα και ο Οθωμανός αρχιστράτηγος Χασάν Ταχσίν πασά

Το Μουσείο των Βαλκανικών Πολέμων στη Γέφυρα και ο Οθωμανός αρχιστράτηγος Χασάν Ταχσίν πασά Το Μουσείο των Βαλκανικών Πολέμων στη Γέφυρα και ο Οθωμανός αρχιστράτηγος Χασάν Ταχσίν πασά Έφη Αλλαμανή Τον περασμένο Σεπτέμβριο (2011) είχα την τύχη να επισκεφτώ το Στρατιωτικό Μουσείο των Βαλκανικών

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

Kεντρικός συντονισμός πολιτικών, μόνιμοι υφυπουργοί, μείωση ειδικών συμβούλων, κατάργηση αναπληρωτών.

Kεντρικός συντονισμός πολιτικών, μόνιμοι υφυπουργοί, μείωση ειδικών συμβούλων, κατάργηση αναπληρωτών. ΣΥΝΤΑΓΜΑ Αν η παρούσα Βουλή διαλυθεί χωρίς προηγουμένως να κινήσει την διαδικασία για την αναθεώρηση του Συντάγματος, θα έχουμε άλλη μια απόδειξη ότι το πολιτικό σύστημα δεν έχει επαφή με την πραγματικότητα.

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

1 ο ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ ΜΥΤΙΛΗΝΗΣ Σχολικό έτος 2006 2007. ΘΕΜΑ ΠΡΟΓΡΑΜΜΑΤΟΣ: Το ρεμπέτικο τραγούδι: Η γέννηση και εξέλιξη του στην Ελλάδα του 20 ου αιώνα

1 ο ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ ΜΥΤΙΛΗΝΗΣ Σχολικό έτος 2006 2007. ΘΕΜΑ ΠΡΟΓΡΑΜΜΑΤΟΣ: Το ρεμπέτικο τραγούδι: Η γέννηση και εξέλιξη του στην Ελλάδα του 20 ου αιώνα 1 ο ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ ΜΥΤΙΛΗΝΗΣ Σχολικό έτος 2006 2007 ΘΕΜΑ ΠΡΟΓΡΑΜΜΑΤΟΣ: Το ρεμπέτικο τραγούδι: Η γέννηση και εξέλιξη του στην Ελλάδα του 20 ου αιώνα Υπεύθυνη προγράμματος: Δώρα Χαραλαμπή ΕΠΙΛΟΓΗ ΘΕΜΑΤΟΣ

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

ο σούρουπο είχε απλώσει το σκοτεινό υφάδι του, κεντημένο με περισσή στοργή από τη μητέρα του, τη μαρμαρυγή. Τιτιβίσματα πτηνών ορμούσαν μες στην

ο σούρουπο είχε απλώσει το σκοτεινό υφάδι του, κεντημένο με περισσή στοργή από τη μητέρα του, τη μαρμαρυγή. Τιτιβίσματα πτηνών ορμούσαν μες στην Πρόλογος Εκεί έξω, σε μέρη που ανέγνωρα κοιμούνται, σε τόπους μακρινούς και μυστηριακά άφαντους, ανθοβριθούν κόσμοι και μαραίνονται πλάσματα που χλευάζουν την αιωνιότητα. Το μικρό μυαλό των ανθρώπων, ευχαριστημένο

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

4. Παρατηρήστε την εικόνα Τι συμβαίνει στους πάγους της Αρκτικής, στον Βόρειο Πόλο;

4. Παρατηρήστε την εικόνα Τι συμβαίνει στους πάγους της Αρκτικής, στον Βόρειο Πόλο; Παρουσίαση: Το κλίμα στα χέρια τους (αλλά και στα δικά μας) Συνδιάσκεψη Κορυφής για την Κλιματική Αλλαγή, Κοπεγχάγη εκέμβριος 2009 Οδηγίες για τους εκπαιδευτικούς Οι αριθμοί αντιστοιχούν στις διαφάνειες

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

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2015 Α ΦΑΣΗ

ΟΜΟΣΠΟΝ ΙΑ ΕΚΠΑΙ ΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑ ΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2015 Α ΦΑΣΗ ΤΑΞΗ: Γ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ: ΝΕΟΕΛΛΗΝΙΚΗ ΓΛΩΣΣΑ / ΓΕΝΙΚΗΣ ΠΑΙ ΕΙΑΣ Α 1. Ηµεροµηνία: Σάββατο 3 Ιανουαρίου 2015 ιάρκεια Εξέτασης: 3 ώρες ΑΠΑΝΤΗΣΕΙΣ Το κείµενο πραγµατεύεται τη µαθητική επιθετικότητα στους

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

ΤΟ ΣΥΝΤΑΓΜΑ ΤΟΥ 1844. Εξώφυλλο του Συντάγµατος του 1844 (Βιβλιοθήκη Βουλής των

ΤΟ ΣΥΝΤΑΓΜΑ ΤΟΥ 1844. Εξώφυλλο του Συντάγµατος του 1844 (Βιβλιοθήκη Βουλής των ΤΟ ΣΥΝΤΑΓΜΑ ΤΟΥ 1844 Το Σύνταγµα του 1844 αποτελείται από 107 άρθρα, κατανεµηµένα στα εξής δώδεκα µέρη: Περί Θρησκείας, Περί του δηµοσίου δικαίου των Ελλήνων, Περί συντάξεως της πολιτείας, Περί του Βασιλέως,

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