Ανάπτυξη Μεθοδολογίας Σχεδιασµού Βέλτιστων Επεξεργαστών Ειδικού Σκοπού ΠΕΝΕ -2003

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

Download "Ανάπτυξη Μεθοδολογίας Σχεδιασµού Βέλτιστων Επεξεργαστών Ειδικού Σκοπού ΠΕΝΕ -2003"

Transcript

1 Ανάπτυξη Μεθοδολογίας Σχεδιασµού Βέλτιστων Επεξεργαστών Ειδικού Σκοπού ΠΕΝΕ Τίτλος: µε Προτυποποίηση σε FPGA Συγγραφείς: Κωδικός: Π 6.1 Έκδοση: 1.0 Τύπος: Εµπιστευτικότητα: Νικόλαος Καββαδίας (Ερευνητής Α.Π.Θ.) Παραδοτέο ηµόσια Ηµεροµηνία: Νοέµβριος 15, 2007 Πρόγραµµα: Λέξεις-Κλειδιά: Πρόλογος: Πρόγραµµα Ενίσχυσης του Ερευνητικού υναµικού (ΠΕΝΕ 2003) επεξεργαστές ειδικού σκοπού, ενσωµατωµένα συστήµατα, επεξεργασία εικόνας, διάταξη πυλών προγραµµατιζόµενου πεδίου, FPGA, εκτίµηση επιδόσεων Αντικείµενο του παραδοτέου αυτού είναι η εφαρµογή της µεθοδολογίας σχεδιασµού των ΕΕΣ για την περίπτωση του σχεδιασµού ASIP για οµάδα εφαρµογών επεξεργασίας εικόνας. ίνεται αναλυτική περιγραφή της δοµής και τρόπου λειτουργίας πρότυπου ενσωµατωµένου συστήµατος επεξεργασίας εικόνας ονόµατι IPCN (Image Processing Computational Node), και καταγράφονται οι λεπτοµέρειες του λογισµικού και του υλικού (ειδικές εντολές) του ASIP. Η ορθή λειτουργία του ενσωµατωµένου συστήµατος IPCN πιστοποιείται α) µε την προσοµοίωση αρχιτεκτονικού µοντέλου των επεξεργαστών ByoRISC σε ArchC, β) µε την προσοµοίωση του RTL VHDL µοντέλου των επεξεργαστών και γ) µε την προτυποποίηση του συστήµατος σε αναπτυξιακή πλακέτα FPGA. Copyright 2007 Νικόλαος Καββαδίας Α.Π.Θ.

2 Ιστορικό Ηµεροµηνία Έκδοση Σχόλια Οκτώβριος 21, Πρώτη πρόχειρη έκδοση Νοέµβριος 15, Τελική έκδοση 2

3 Πίνακας περιεχοµένων Πίνακας περιεχοµένων ΕΙΣΑΓΩΓΗ: ΤΟ ΕΝΣΩΜΑΤΩΜΕΝΟ ΣΥΣΤΗΜΑ IPCN ΑΝΑΛΥΣΗ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ ΕΦΑΡΜΟΓΩΝ ΤΟΥ IPCN Μίγµα στατικών εντολών (SIMIX) και µίγµα δυναµικών εντολών (DIMIX) Ανάλυση τύπων δεδοµένων Εξαγωγή και χαρακτηρισµός των κρίσιµων βασικών µπλοκ των εφαρµογών Καθορισµός του γενικού αρχιτεκτονικού περιγράµµατος, γέννηση και επιλογή εντολών ΕΚΤΕΛΕΣΗ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΣΟΜΟΙΩΤΗ ΕΚΤΙΜΗΣΗΣ ΚΥΚΛΟΥ Η ΑΝΑΠΤΥΞΙΑΚH ΠΛΑΚEΤΑ FPGA ΓΙΑ ΤΙΣ ΟΚΙΜEΣ ΤΟΥ ΕΝΣΩΜΑΤΩΜEΝΟΥ ΣΥΣΤHΜΑΤΟΣ ΑΝΑΦΟΡΕΣ

4 1. ΕΙΣΑΓΩΓΗ: ΤΟ ΕΝΣΩΜΑΤΩΜΕΝΟ ΣΥΣΤΗΜΑ IPCN Προκειµένου να επιδειχθεί η χρήση της µεθοδολογίας πάνω σε ρεαλιστικές εφαρµογές, στην ενότητα αυτή αναπτύσσεται και σχεδιάζεται ένας ΕΕΣ µε βάση την αρχιτεκτονική ByoRISC ο οποίος στοχεύει εφαρµογές επεξεργασίας εικόνας. Ο ΕΕΣ είναι υπεύθυνος για το υπολογιστικό µέρος των αρµοδιοτήτων ενός υποθετικού ενσωµατωµένου συστήµατος, το οποίο ονοµάζουµε IPCN (Image Processing Computational Node). Το διάγραµµα βαθµίδων ενός συστήµατος IPCN απεικονίζεται στο Σχήµα 1.1. Σύµφωνα µε το Σχήµα 1.1, το IPCN αποτελείται από έναν αισθητήρα εικόνας (image sensor) τεχνολογίας CMOS ο οποίος καταγράφει εικόνες από το περιβάλλον σε ανάλυση MSIZE NSIZE 1. Το IPCN έχει δυνατότητα για full-duplex ασύρµατη επικοινωνία µε σταθµό βάσης από τον οποίο µπορεί να λάβει και στον οποίο µπορεί να στείλει δεδοµένα εικόνας (σειρές εικονοστοιχείων) σε µορφή πακέτων. Στο σταθµό βάσης γίνεται η απεικόνιση των δεδοµένων, τα οποία έχει συλλέξει το IPCN από το περιβάλλον, σε έγχρωµη οθόνη τεχνολογίας VGA/CRT ή LCD. Στην ενότητα αυτή εστιάζουµε στις υπολογιστικές δυνατότητες του IPCN και δεν εξετάζονται διεξοδικά το υποσύστηµα του αισθητήρα, το πρωτόκολλο επικοινωνίας µε το σταθµό βάσης και τα χαρακτηριστικά του καναλιού επικοινωνίας. Σχήµα 1.1: Το ενσωµατωµένο σύστηµα IPCN για επεξεργασία εικόνας. Σε περιπτώσεις όπου η αποστολή όλων των δεδοµένων από το IPCN δεν κρίνεται απαραίτητη κυρίως για λόγους χρόνου µετάδοσης και κατανάλωσης ισχύος (εφόσον η λειτουργία του βασίζεται σε φορητή πηγή ενέργειας), είναι αναγκαίο να δύναται να επεξεργαστεί τα δεδοµένα τα οποία έχει συλλέξει ώστε να αποστέλλει µόνο ότι απαιτείται στο σταθµό βάσης. Για το λόγο αυτό, αλλά και για να µπορεί να λαµβάνει εντολές αλλά και δεδοµένα εικόνας όπως για σύγκριση, είναι αναγκαίο να µπορεί να εξυπηρετήσει ένα σύνολο εφαρµογών, επιτυγχάνοντας επαρκείς επιδόσεις. Επίσης, καθώς η αποστολή/λήψη δεδοµένων από το IPCN γίνεται µε ασύρµατο τρόπο, θα πρέπει να υποστηρίζει κάποια 1 Τυπικές αναλύσεις που θα θεωρήσουµε από εδώ και στο εξής είναι οι: 64 64, , , και 512x480. 4

5 τεχνική κρυπτογράφησης και ανάκτησης δεδοµένων για την ασφάλεια των δεδοµένων από ανεπιθύµητους παραλήπτες. Το ενσωµατωµένο λογισµικό του IPCN αποτελείται από ένα πολύ βασικό RTOS, το οποίο χειρίζεται τις χρονοθυρίδες εξυπηρέτησης του λογισµικού εφαρµογών το οποίο αποτελείται από εφαρµογές επεξεργασίας εικόνας, συµπίεσης/ αποσυµπίεσης δεδοµένων και κρυπτογράφησης/ αποκρυπτογράφησης δεδοµένων. Συγκεκριµένα στο IPCN εκτελούνται οι εφαρµογές: fsdither: διτονική απόδοση εικόνας κατά Floyd-Steinberg για τη µείωση των επιπέδων του γκρι σε µια greyscale εικόνα από 256 σε 2 [EEMBC]. Ο fsdither πλεονεκτεί σε σχέση µε µια απλή εφαρµογή επιβολής κατωφλίου (image thresholding) καθώς εξασφαλίζει την προσέγγιση της αρχής χρωµατικής απόδοσης µε τεχνική διάχυσης σφαλµάτων (error diffusion). hilcurv: παραµετρική γεννήτρια καµπυλών Hilbert. Οι καµπύλες Hilbert ανήκουν στην κατηγορία των καµπυλών πλήρωσης χώρου και η χρήση τους που ενδιαφέρει εδώ είναι η παραγωγή εικόνων δοκιµής για τον έλεγχο λειτουργίας της συσκευής IPCN. htpack: η εφαρµογή htpack (halftone packer) συµπιέζει µη-απωλεστικά µια διτονική εικόνα (οι RGB κωδικοποιήσεις των δύο θεωρούµενων τόνων µπορούν να προγραµµατιστούν) κατά 8 φορές. O αλγόριθµος htpack στοιβάζει 8 ψηφία ανά byte συµπιεσµένων δεδοµένων καθώς οι δύο τόνοι µπορούν να αποδοθούν από ένα µόνο bit. Στην πράξη χρησιµοποιούµε την htpack για τη συµπίεση µιας greyscale εικόνας στην οποία έχει πρώτα εφαρµοστεί η fsdither. htunpack: η εφαρµογή htunpack (halftone unpacker) αποσυµπιέζει µια διτονική εικόνα η οποία έχει προηγουµένως συµπιεστεί από την htpack. Όπως και στην htpack, οι κωδικοποιήσεις RGB των δύο θεωρούµενων τόνων µπορούν να προγραµµατιστούν και ακόµη να είναι και διαφορετικές από αυτές της htpack. O htunpack αποσυµπιέζει 8 εικονοστοιχεία ανά byte συµπιεσµένων δεδοµένων. xteaenc: εφαρµογή κρυπτογράφησης κατά τον αλγόριθµο XTEA (extended Tiny Encryption Algorithm) [Nee97]. Ο κωδικοποιητής XTEA είναι τύπου block cipher µε µήκος κλειδιού 128 bit και µέγεθος µπλοκ 64 bit. Χρησιµοποιεί δοµή δικτύου Feistel και ο αριθµός των χρησιµοποιούµενων γύρων είναι ίσος µε 32 (64 γύροι Feistel). Ο αλγόριθµος προτάθηκε από τους D. Wheeler και R. Needham για την αντιµετώπιση των αδυναµιών του προγενέστερου TEA. Ο XTEA επιλέχθηκε καθώς α) δεν υπόκειται σε καθεστώς πατέντας (ανήκει στο δηµόσιο πεδίο και µπορεί να χρησιµοποιηθεί από τον οποιονδήποτε), β) λόγω του πολύ µικρού µεγέθους του και ιδιαίτερα των περιορισµένων απαιτήσεών του σε RAM και γ) δεν έχει κρυπταναλυθεί πλήρως, άρα προσφέρει κάποια αξιοπιστία στην ασφάλεια δεδοµένων. Μέχρι σήµερα έχουν δηµοσιευτεί αναφορές επιτυχούς µερικής µόνο (26 από τους 64 γύρους) κρυπτανάλυσης του XTEA [Nee97]. xteadec: εφαρµογή αποκρυπτογράφησης κατά τον αλγόριθµο XTEA. Η λειτουργία του αποκωδικοποιητή είναι σχεδόν συµµετρική µε αυτή του κωδικοποιητή. Μία περίπτωση χρήσης του IPCN σε ρεαλιστικές συνθήκες σκιαγραφείται στο Σχήµα 2.2. Ο αισθητήρας εικόνας καταγράφει µια εικόνα ανάλυσης εικονοστοιχείων από το περιβάλλον. Στη συνέχεια, η εικόνα υπόκειται εντός του ΕΕΣ σε επεξεργασία διτονικής απόδοσης, µη-απωλεστική συµπίεση (halftone packing) και κρυπτογράφηση κατά τον αλγόριθµο XTEA. Στη συνέχεια, τα δεδοµένα της συµπιεσµένης και κρυπτογραφηµένης εικόνας µπορούν να σταλούν στο σταθµό βάσης. 5

6 Σχήµα 1.2: Περίπτωση χρήσης του IPCN για επεξεργασία, συµπίεση και κρυπτογράφηση δεδοµένων εικόνας. Το ζητούµενο είναι η ανάδειξη των ειδικών εντολών για το σχεδιασµό των κατάλληλων ΕΛΜ για τον επεξεργαστή ΕΕΣ του IPCN ώστε την επιτάχυνση των εφαρµογών κατά το περισσότερο δυνατό. Τα χαρακτηριστικά και οι περιορισµοί του IPCN δίνονται στον Πίνακα 1.1. Πίνακας 1.1: Χαρακτηριστικά και περιορισµοί του IPCN. Παράµετρος Περιγραφή Τιµή IMEMSIZE Μνήµη προγράµµατος 8ΚΒ DMEMSIZE Μνήµη δεδοµένων 8KB-1MB ASIC_AREA FPGA_AREA Συνολική επιφάνεια ολοκληρωµένου για υλοποίηση σε τεχνολογία ASIC Συνολική επιφάνεια ολοκληρωµένου για υλοποίηση σε τεχνολογία FPGA επιπλέον 100,000µm 2 του βασικού ByoRISC 50% της επιφάνειας του XC3S ΑΝΑΛΥΣΗ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ ΕΦΑΡΜΟΓΩΝ ΤΟΥ IPCN Σύµφωνα µε τη µεθοδολογία, το πρώτο βήµα στη διαδικασία ανάπτυξης και σχεδιασµού του ΕΕΣ αποτελεί η ανάλυση των εφαρµογών του ενδιαφέροντος, των οποίων τα γενικά χαρακτηριστικά συνοψίζονται στον Πίνακα 2.1. Ο µεταγλωττιστής που χρησιµοποιήθηκε είναι ο MachSUIF στοχεύοντας την αρχιτεκτονική SUIFvm (IR), ενώ οι εφαρµογές καταγράφηκαν και σε γλώσσα συµβολοµεταφραστή (ASM), πραγµατοποιώντας χειροκίνητα τα βήµατα ενός backend µεταγλωττιστή. Ο θεωρούµενος επεξεργαστής για τις αντίστοιχες µέτρησεις πάνω σε κώδικα συµβολοµεταφραστή είναι η βασική αρχιτεκτονική ByoRISC. Για τη µεταγλώττιση υπό τον MachSUIF χρησιµοποιήθηκαν τα περάσµατα βελτιστοποίησης: ifconversion, lcse, cfg2ssa, ssa2cfg, peep, peepdeux, cplx_locate, strength_reduct, και έγινε πολλαπλή χρήση του dce. Πίνακας 2.1: Γενικά χαρακτηριστικά του λογισµικού εφαρµογών του IPCN. Εφαρµογή Αναφορά # εντολών # εντολών # ΒΒ (IR) # ΒΒ (IR) (ASM) (ASM) υναµικές εντολές (ASM) Κύκλοι εκτέλεσης (IR)* Κύκλοι εκτέλεσης (ASM) 6

7 fsdither [EEMBC] hilcurv [War02] htpack htunpack xteaenc [Nee97] xteadec [Nee97] Ο πηγαίος κώδικας για τις 6 εφαρµογές του ενδιαφέροντος δίνεται από τους Κώδικες 2.1.α ως 2.1.στ, µε τη σειρά που αναφέρονται οι εφαρµογές στον Πίνακα 2.1, αντίστοιχα. Κοινό χαρακτηριστικό των εφαρµογών είναι ότι αποτελούνται κυρίως από απλά ή διπλά πλήρως φωλιασµένους βρόχους. void fsdither( threshold) int i,j; int error; int x,q; for (i=0; i<nsize; i++) for (j=0; j<msize; j++) source_word[i*msize+j] = source[i*msize+j]; for (i=0; i<nsize; i++) for (j=0; j<msize; j++) x = source_word[i*msize+j]; dest[i*msize+j] = ((x > threshold-1)? 0xff : 0x00); q = dest[i*msize+j]; error = x - q; source_word[i*msize+(j+1) ] += (error * 7) >> 4; source_word[(i+1)*msize+(j-1)] += (error * 3) >> 4; source_word[(i+1)*msize+(j )] += (error * 5) >> 4; source_word[(i+1)*msize+(j+1)] += (error ) >> 4; (α) fsdither. for (s = 0; s < N; s++) state = 0; x = 0; y = 0; for (i = 2*n - 2; i >= 0; i -= 2) row = (state << 2) (s >> i) & 3; x = (x << 1) (0x936C >> row) & 1; y = (y << 1) (0x39C6 >> row) & 1; state = (0x3E6B94C1 >> (row << 1)) & 3; dest[x*msize+y] = 0xFF; (β) hilcurv. 7

8 void htpack( one, zero) i; temp0, temp1, temp2, temp3, temp4, temp5, temp6, temp7; temp0_or, temp1_or, temp2_or, temp3_or, temp4_or, temp5_or, temp6_or, temp7_or; temp_val; base_addr; for (i=0; i<nsize*msize/8; i++) base_addr = 8*i; temp_val = 0x00; temp0 = source[base_addr ]; temp1 = source[base_addr+1]; temp2 = source[base_addr+2]; temp3 = source[base_addr+3]; temp4 = source[base_addr+4]; temp5 = source[base_addr+5]; temp6 = source[base_addr+6]; temp7 = source[base_addr+7]; if (temp0 == one) temp0_or = (1 << 0); else temp0_or = (0 << 0); if (temp1 == one) temp1_or = (1 << 1); else temp1_or = (0 << 1); if (temp2 == one) temp2_or = (1 << 2); else temp2_or = (0 << 2); if (temp3 == one) temp3_or = (1 << 3); else temp3_or = (0 << 3); if (temp4 == one) temp4_or = (1 << 4); else temp4_or = (0 << 4); if (temp5 == one) temp5_or = (1 << 5); else 8

9 temp5_or = (0 << 5); if (temp6 == one) temp6_or = (1 << 6); else temp6_or = (0 << 6); if (temp7 == one) temp7_or = (1 << 7); else temp7_or = (0 << 7); temp_val = temp0_or temp1_or temp2_or temp3_or temp4_or temp5_or temp6_or temp7_or; dest[i] = temp_val; (γ) htpack. void htunpack( one, zero) i; temp0, temp1, temp2, temp3, temp4, temp5, temp6, temp7; cond0, cond1, cond2, cond3, cond4, cond5, cond6, cond7; temps0, temps1, temps2, temps3, temps4, temps5, temps6, temps7; temp_val; for (i=0; i<nsize*msize/8; i++) temp_val = source[i]; temp0 = (temp_val & 0x01); temp1 = (temp_val & 0x02) >> 1; temp2 = (temp_val & 0x04) >> 2; temp3 = (temp_val & 0x08) >> 3; temp4 = (temp_val & 0x10) >> 4; temp5 = (temp_val & 0x20) >> 5; temp6 = (temp_val & 0x40) >> 6; temp7 = (temp_val & 0x80) >> 7; cond0 = temp0 == 1; cond1 = temp1 == 1; cond2 = temp2 == 1; cond3 = temp3 == 1; cond4 = temp4 == 1; cond5 = temp5 == 1; cond6 = temp6 == 1; cond7 = temp7 == 1; if (cond0) temps0 = one; else temps0 = zero; if (cond1) temps1 = one; else 9

10 temps1 = zero; if (cond2) temps2 = one; else temps2 = zero; if (cond3) temps3 = one; else temps3 = zero; if (cond4) temps4 = one; else temps4 = zero; if (cond5) temps5 = one; else temps5 = zero; if (cond6) temps6 = one; else temps6 = zero; if (cond7) temps7 = one; else temps7 = zero; dest[8*i ] = temps0; dest[8*i+1] = temps1; dest[8*i+2] = temps2; dest[8*i+3] = temps3; dest[8*i+4] = temps4; dest[8*i+5] = temps5; dest[8*i+6] = temps6; dest[8*i+7] = temps7; (δ) htunpack. void encode_xtea( v[2], result[2]) y, z, DELTA; sum; 10

11 i; y = v[0]; z = v[1]; DELTA = 0x9e3779b9; sum = 0; for (i=0; i<n; i++) y += ((z<<4 ^ z>>5) + z) ^ (sum + keystr[sum & 3]); sum += DELTA; z += ((y<<4 ^ y>>5) + y) ^ (sum + keystr[(sum>>11) & 3]); result[0] = y; result[1] = z; (ε) xteaenc. void decode_xtea( v[2], result[2]) y, z, DELTA; unsigned long sum; i; y = v[0]; z = v[1]; DELTA = 0x9e3779b9; sum = DELTA * (N); for (i=0; i<n; i++) z -= ((y<<4 ^ y>>5) + y) ^ (sum + keystr[(sum>>11) & 3]); sum -= DELTA; y -= ((z<<4 ^ z>>5) + z) ^ (sum + keystr[sum & 3]); result[0] = y; result[1] = z; (στ) xteadec. Κώδικας 2.1: Πηγαίος κώδικας για το λογισµικό εφαρµογών του IPCN. Ως source αναφέρονται δεδοµένα τύπου U8, source_word δεδοµ ένα εικόνας τύπου U32 ή S32 για τις εικόνες που δίνονται ως είσοδο στην αντίστοιχη εφαρµογή και dest δεδοµένα τύπου U8 που αντιστοιχούν στην επεξεργασµένη/συµπιεσµένη/κρυπτογραφηµένη εικόνα. Οι διαστάσεις των εικόνων δίνονται σε συνάρτηση µε τα NSIZE και MSIZE που για την εικόνα δοκιµής είναι ίσα µε 64. Ο τύπος δεδοµένων (unsigned) long αντιστοιχεί στον MachSUIF τύπο (U S)32. Η διαδικασία ανάλυσης των εφαρµογών συµπεριλαµβάνει τις παρακάτω ενέργειες οι οποίες και πραγµατοποιούνται πλήρως αυτόµατα µε τη χρήση του εργαλείου YARDstick: εξαγωγή στατικού µίγµατος εντολών εξαγωγή δυναµικού µίγµατος εντολών εξαγωγή δυναµικών εµφανίσεων τύπων δεδοµένων ανάδειξη κρίσιµων βασικών µπλοκ (κατάταξη των βασικών µπλοκ κατά φθίνουσα σειρά αριθµού εκτιµώµενων κύκλων) εξαγωγή γράφων σε απεικονίσεις VCG και Graphviz (dot) για όλα τα βασικά µπλοκ και γράφους ροής ελέγχου (CFG) των εφαρµογών υπό ανάλυση εκτίµηση της µέγιστης και µέσης παραλληλίας βασικών λειτουργιών (εντολές της 11

12 SUIFvm IR) για τα κρίσιµα βασικά µπλοκ (maximum ILP, average ILP) Η διαδικασία (εκτός της εξαγωγής των δεικτών ILP) πραγµατοποιείται σε χρόνο ίσο µε 61 sec µε χρήση προσωπικού υπολογιστή (επεξεργαστής Pentium-4, 2,8 GHz, 368 MB RAM) σε περιβάλλον Cygwin/x86 (έκδοση ). Αξίζει να σηµειωθεί εδώ ότι οι ίδιες ακριβώς αναλύσεις είναι επιλέξιµες και στην περίπτωση ανάλυσης εφαρµογών που είναι υπό µορφή κώδικα συµβολοµεταφραστή Μίγµα στατικών εντολών (SIMIX) και µίγµα δυναµικών εντολών (DIMIX) Στο Σχήµα 2.1 δίνεται το µίγµα στατικών εντολών για την περίπτωση βασικής βελτιστοποίησης µε MachSUIF. Στο Σχήµα 2.2 δίνεται αντίστοιχα το µίγµα δυναµικών εντολών για τον υπολογισµό του οποίου χρησιµοποιήθηκαν οι συχνότητες βασικών µπλοκ για κάθε εφαρµογή. Σχήµα 2.1: Μίγµα στατικών εντολών για το λογισµικό εφαρµογών του IPCN. Ο συµβολισµός cti (control-transfer instructions) χρησιµοποιείται για το άθροισµα των εντολών διακλάδωσης µε (cbr) ή χωρίς (ubr) συνθήκη. Οι λοιπές (other) εντολές συµπεριλαµβάνουν κυρίως λειτουργίες ανάθεσης τύπου (cvt) και φόρτωσης συµβόλου/διεύθυνσης (lda). Σχήµα 2.2: Μίγµα δυναµικών εντολών για το λογισµικό εφαρµογών του IPCN. 12

13 Συνοψίζοντας, από τα αποτελέσµατα του Σχήµατος 2.3 προκύπτει ότι στο µίγµα δυναµικών εντολών κυριαρχούν οι αριθµητικές (arith) εντολές, για σχεδόν όλες τις εφαρµογές, πλην της crc, µε κατά µέσο όρο συνεισφορά 52.7%. Κατά δεύτερο λόγο απαντώνται εντολές προσπέλασης στη µνήµη δεδοµένων (12.13%), ολίσθησης (8.97%), σύγκρισης (7.15%), και διακλάδωσης (5.83%). Το σηµαντικό ποσοστό των «άλλων» (other) εντολών (10.82%) οφείλεται εν µέρει στη συνεισφορά από εντολές ανάθεσης τύπου (CVT). Το ποσοστό των «άλλων» εντολών γενικά περιορίζεται µε τη χρήση του περάσµατος peepdeux, παρουσιάζεται δε αυξηµένο για τις xteaenc και xteadec Ανάλυση τύπων δεδοµένων Αυτό που ενδιαφέρει εδώ είναι να καταγραφεί η αναλογία των δυναµικών εµφανίσεων των διαφόρων τύπων δεδοµένων σε όλη τη διάρκεια µιας εφαρµογής. Στο Σχήµα 2.3 δίνονται αποτελέσµατα ανάλυσης Τ µε τις συνολικές εµφανίσεις τύπων δεδοµένων ανά εφαρµογή. Υπολογίζονται µε άθροιση των επιµέρους εµφανίσεων ανά συνάρτηση (-dt-dynamic-proc). ιαπιστώνουµε ότι οι εφαρµογές χρησιµοποιούν µόνο ακέραιους τύπους δεδοµένων ενώ οι συχνότητες εµφάνισης τύπων δεδοµένων κυριαρχούνται από τους τύπους U32, S32, P32 και U8. Ιδιαίτερα, οι χρήσεις απρόσηµης αριθµητικής φαίνεται ότι είναι σηµαντικά περισσότερες (δυναµικές εµφανίσεις των αντίστοιχων Τ : 72.5%) από τις χρήσεις προσηµασµένης αριθµητικής. (α) 13

14 (β) Σχήµα 2.3: % εµφανίσεις τύπων δεδοµένων σε δυναµικές εντολές ανά εφαρµογή για το λογισµικό εφαρµογών του IPCN. (α) Ανά τύπο δεδοµένων. (β) Με οµαδοποίηση σε απρόσηµους (u+p) και προσηµασµένους ακέραιους (s), κινητής υποδιαστολής (f) και άλλο (v) Εξαγωγή και χαρακτηρισµός των κρίσιµων βασικών µπλοκ των εφαρµογών Για τον προσδιορισµό των κρίσιµων βασικών µπλοκ της εφαρµογής, έγινε κατάταξή τους, σύµφωνα µε τον αριθµό δυναµικών κύκλων (αριθµός στατικών κύκλων ΒΒ συχνότητα εκτέλεσης ΒΒ). Στον Πίνακα 2.2 δίνονται: το όνοµα της εφαρµογής, της υπορουτίνας και ο αύξων αριθµός του κρίσιµου BB ο αριθµός στατικών εντολών του ο αριθµός εκτιµώµενων δυναµικών κύκλων το ποσοστό που καταλαµβάνουν οι κύκλοι εκτέλεσης επί των κύκλων της συνολικής εφαρµογής. Παρατηρώντας την τελευταία στήλη του Πίνακα 2.2 (% κύκλων ΒΒ επί της συνολικής εφαρµογής) διαπιστώνουµε ότι κατά µέσο όρο, το κρισιµότερο βασικό µπλοκ καταλαµβάνει το 95%. Αυτό το ποσοστό είναι ιδιαίτερα υψηλό και οφείλεται στα χαρακτηριστικά των εφαρµογών, και πιο συγκεκριµένα στο ότι υλοποιούν επεξεργασία πάνω σε πολυδιάστατες σειρές δεδοµένων (εικόνες). Επίσης το µέγεθος των βασικών µπλοκ είναι αρκετά µεγάλο (49, το οποίο είναι πολύ πάνω από τη µέση τιµή του ~5 που έχει παρατηρηθεί εµπειρικά για τις εφαρµογές γενικού σκοπού) αλλά αυτό είναι κάτι που καθορίζεται εν µέρει επίσης από τη χρησιµοποιούµενη IR. Η χρήση µετασχηµατισµού if-conversion συνεισφέρει στη συνένωση βασικών µπλοκ µε λειτουργίες προδικασµού (predication) όπως στη περίπτωση αυτή είναι οι εντολές select. Για τον ίδιο λόγο χρησιµοποιούνται και τεχνικές ξετυλίγµατος βρόχων. Πίνακας 2.2: Γενικά χαρακτηριστικά των «κρίσιµων» (hot) βασικών µπλοκ του λογισµικού εφαρµογών του IPCN. Απεικονίζονται τα σηµαντικότερα ΒΒ για κάθε εφαρµογή (λογίζονται ως αυτά που συνεισφέρουν άνω του 5% των συνολικών κύκλων εκτέλεσης). Εφαρµογή Όνοµα υπορουτίνας Αύξων αριθµός ΒΒ Αριθµός εντολών Αριθµός εκτιµώµενων δυναµικών κύκλων % συνολικής εφαρµογής fsdither fsdither

15 fsdither fsdither hilcurv main hilcurv main htpack htpack htunpack htunpack xteaenc encode_xtea xteaenc main xteadec decode_xtea xteadec main Στο σηµείο αυτό, και για την καλύτερη εποπτεία των εφαρµογών του IPCN δίνονται πρώτα στο Σχήµα 2.4 οι CFG για τις συναρτήσεις των εφαρµογών που περιλαµβάνουν τα κρίσιµα βασικά µπλοκ, και έπειτα στο Σχήµα 2.5 οι DDG των 10 κρίσιµων βασικών µπλοκ. (α) fsdither:fsdither. (β) hilcurv:main. (γ) htpack:htpack. 15

16 (δ) htunpack:htunpack. (ε) xteaenc:encode_xtea. (στ) xteaenc:main. (ζ) xteadec:decode_xtea. (η) xteadec:main. Σχήµα 2.4: Οπτικοποιηµένοι γράφοι ροής ελέγχου (CFGs) για συναρτήσεις των εφαρµογών του IPCN οι οποίες περιλαµβάνουν τα κρίσιµα βασικά µπλοκ. Τα ονόµατα των συναρτήσεων κωδικοποιούνται ως εξής: translation-unit:procedure. Μία µονάδα µετάφρασης (translation unit) αντιστοιχεί σε ένα αρχείο πηγαίου κώδικα C και περιλαµβάνει (στην περίπτωσή µας) µια ολόκληρη εφαρµογή. Για τη χρωµατική απόδοση χρησιµοποιούνται οι εξής επιλογές: ψευδοκόµβος πηγής/προορισµού (κόκκινο/διαµάντι), βασικό µπλοκ (πορτοκαλί/διαµάντι). Οι ακµές ελέγχου φέρουν µία από τις ετικέτες u (χωρίς-συνθήκη), t (αληθές) και f (ψευδές). Παρατηρώντας τα CFG του Σχήµατος 2.4 µπορούµε άµεσα να διακρίνουµε τα CFG µε διπλά (περιπτώσεις α,β) και απλά φωλιασµένους βρόχους (γ-η). Σε κάθε περίπτωση σηµειώνονται και οι συµβολικοί κόµβοι πηγής (source) και καταβόθρας (sink) που χρησιµοποιούνται κατά σύµβαση από αλγορίθµους ανάλυσης ροής ελέγχου. Στο Σχήµα 2.4 απεικονίζονται τα DDG για επιλεγµένα βασικά µπλοκ ορισµένων εφαρµογών. Για τη διάταξη και οπτικοποίηση χρησιµοποιείται το λογισµικό VCG. Για την απεικόνιση χρησιµοποιούνται διαφορετικοί χρωµατισµοί και σχήµατα για εντολές, ορίσµατα εισόδου/εξόδου και σταθερές. 16

17 (α) fsdither:fsdither:2. (β) fsdither:fsdither:5. 17

18 (γ) hilcurv:main:3. 18

19 (δ) htpack:htpack:2. 19

20 (ε) htunpack:htunpack:2. 20

21 (στ) xteaenc:encode_xtea:2. (ζ) xteadec:decode_xtea:2. 21

22 Σχήµα 2.5: Οπτικοποιηµένα DDG για επιλεγµένα κρίσιµα βασικά µπλοκ από το λογισµικό εφαρµογών του IPCN. Η διάταξη των γράφων έγινε µε το πρόγραµµα VCG. Η χρωµατική/σχηµατική αποτύπωση γίνεται µε τις εξής επιλογές: εντολές (κίτρινο/έλλειψη), ορίσµατα εισόδου (πράσινο/κατωφερές τρίγωνο), σταθερές (πορφυρό/ρόµβος), ορίσµατα εξόδου (κυανό/ανωφερές τρίγωνο), ετικέτες (γκρι/παραλληλόγραµµο), συµβολικές διευθύνσεις (πράσινο/παραλληλόγραµµο). Στη συνέχεια εξήχθησαν αρχεία iseqinfo για κάθε βασικό µπλοκ ξεχωριστά και έγινε αυτόµατη µετάφραση σε αναπαράσταση CDFG. Τα CDFG αυτά χρονοδροµολογήθηκαν κατά ASAP µε εργαλείο asapalap. Για κάθε ΒΒ µπορούν να υπολογιστούν τα µετρικά: max_ilp, min_csteps, και avg_ilp. Στο Σχήµα 2.6 δίνονται αναλυτικά οι τρεις ποσότητες όπως αυτές υπολογίζονται για τα κρίσιµα βασικά µπλοκ των εφαρµογών που εκτελούνται στον ΕΕΣ του IPCN. Σχήµα 2.6: Χαρακτηριστικά χρονοδροµολόγησης των «κρίσιµων» (hot) βασικών µπλοκ του λογισµικού εφαρµογών του IPCN. Απεικονίζεται η µέγιστη παραλληλία (max_ilp), µέση παραλληλία (avg_ilp), και ελάχιστος αριθµός βηµάτων ελέγχου (min_csteps) για κάθε ΒΒ. Μια παρατήρηση είναι ότι µε εξαίρεση την εφαρµογή fsdither, η µέγιστη χρήσιµη παραλληλία στο υλικό είναι πάνω από 10 το οποίο δείχνει το βαθµό ανεξαρτησίας µεταξύ των αντίστοιχων λειτουργιών που µπορούν να δροµολογηθούν στο ίδιο βήµα ελέγχου Καθορισµός του γενικού αρχιτεκτονικού περιγράµµατος, γέννηση και επιλογή εντολών Στο επόµενο βήµα της µεθοδολογίας γίνεται καθορισµός 2 του αρχιτεκτονικού περιγράµµατος του επεξεργαστή. Το αρχιτεκτονικό περίγραµµα βασίζεται στην αρχιτεκτονική ByoRISC µε τις εξής επισηµάνσεις: δεν χρησιµοποιούνται τοπικοί συνεπεξεργαστές (HAVE_COP=0) δεν χρησιµοποιείται η πρόωρη σηµατοδοσία διακλάδωσης (BRANCH_EARLY=0) ισχύουν οι εξής τιµές παραµέτρων: IMEMSIZE=8KB, DMEMSIZE=8KB (στον 2 Για τον οποίο θα µπορούσε να διεξαχθεί και διερεύνηση του πολυδιάστατου αρχιτεκτονικού πεδίου λύσεων µε αποτίµηση καµπυλών Pareto. 22

23 προσοµοιωτή εκτίµησης κύκλων µπορούν να ρυθµιστούν µέχρι τα αρκετά MB), OW=8, RAW=8 Οι παράµετροι NRP, NWP θα καθοριστούν από τα αποτελέσµατα του επόµενου σταδίου της µεθοδολογίας (γένεση ειδικών εντολών). OPTIONAL_LS=1 καθώς χρησιµοποιούνται και άλλοι τύποι δεδοµένων πλην των [U S P]32. OPTIONAL_DIV=0. Για τη διαδικασία της γέννησης και επιλογής ειδικών εντολών, όλες οι CTI εντολές (-forbid beqz bnez j jr jal) έχουν αποκλειστεί από τη συµπερίληψή τους σε ειδικές εντολές για τον ByoRISC. Στη συνέχεια και κάτω από τις παραπάνω προϋποθέσεις, χρησιµοποιείται το εργαλείο YARDstick [Kav07] για τη γέννηση και επιλογή MIMO εντολών. Ο αντίστοιχος αλγόριθµος χρησιµοποιεί αναδροµική αναζήτηση πάνω σε δυαδικό δένδρο αποφάσεων, για το αν πρέπει να συµπεριληφθεί ή όχι ο τρέχων κόµβος ενός βασικού µπλοκ σε ειδική εντολή [Poz06], κάνοντας όµως χρήση µιας γρήγορης ευρεστικής τεχνικής, παρόµοιας µε αυτή της εργασίας [Pot07]. Για την ενεργοποίηση του αλγορίθµου χρησιµοποιούνται οι επιλογές (- mimo -fast). Εντός των βασικών µπλοκ, οι κόµβοι δροµολογούνται µε τοπολογική ταξινόµηση (-topsort). Για τη γέννηση ειδικών εντολών τύπου MIMO µπορεί να χρησιµοποιηθεί και ο αλγόριθµος γραµµικής πολυπλοκότητας του παραδοτέου Π4.1. Τα εξαγόµενα ΜΙΜΟ µοτίβα φιλτράρονται µέσω ελέγχων ισοµορφισµών γράφου (- isomorph-vf2) για την αποµάκρυνση των πλεοναζόντων µοτίβων για τα οποία έχουν ήδη αναγνωριστεί ισοµορφικά τους. Για την επιλογή ειδικών εντολών χρησιµοποιείται ένας άπληστος επιλογέας (-iselect-cycgain-greedy-fastexit) για τη συνάρτηση προτεραιότητας κέρδους κύκλων. Η διερεύνηση διεξάγεται για δύο διαφορετικά µοντέλα προσπέλασης στη µνήµη δεδοµένων: Το µοντέλο συνεπούς µνήµης δεδοµένων, όπου η ΕΛΜ προσπελαύνει άµεσα τη µνήµη δεδοµένων για το οποίο κάνουµε τη συντηρητική υπόθεση ότι οι εντολές φόρτωσης και αποθήκευσης πρέπει πάντοτε να είναι σε σειρά (-memmodel 0). Η εκδοχή αυτή σηµειώνεται µε CDM. Το µοντέλο ιδανικής συνεπούς µνήµης ΕΛΜ, όπου κάθε φόρτωση/αποθήκευση προς/από τη µνήµη δεδοµένων µετασχηµατίζεται σε διαφανή προσπέλαση στην τοπική µνήµη ΕΛΜ (-memmodel 1). Η εκδοχή αυτή σηµειώνεται µε idealcam. Τα αποτελέσµατα της διερεύνησης των διαφορετικών µοντέλων προσπέλασης µνήµης δεδοµένων για ενδεικτικούς συνδυασµούς αριθµού έντελων εισόδου/εξόδου (N i /N o ) δίνονται στο Σχήµα 2.7 για τις 6 εφαρµογές του IPCN. Στον Πίνακα 2.3 δίνονται αναλυτικά οι µετρήσεις των σχετικών επιταχύνσεων για τις ίδιες εφαρµογές και στον Πίνακα 2.4 δίνεται η αυξητική επιτάχυνση για τις ειδικές εντολές µε τη σηµαντικότερη συνεισφορά, όπως αυτές προκύπτουν από την επιλογή ειδικών εντολών. 23

24 (α) fsdither. (β) hilcurv. (γ) htpack. 24

25 (δ) htunpack. (ε) xteaenc. (στ) xteadec. Σχήµα 2.7: Επίδραση των προσπελάσεων στη µνήµη δεδοµένων πάνω στην επιτάχυνση εφαρµογής που οφείλεται στις ειδικές εντολές. Οι προσπελάσεις στη µνήµη δεδοµένων απαιτούν επιβάρυνση ενός κύκλου µηχανής. Πίνακας 2.3: Οι εκτιµήσεις που ελήφθησαν µε το YARDstick για την επιτάχυνση εφαρµογών λόγω της χρήσης των εξαγόµενων ειδικών εντολών για το λογισµικό εφαρµογών του IPCN. 25

26 Παράµετρος Εφαρµογή N i N o MemModel fsdither hilcurv htpack htunpack xteaenc xteadec 2 1 idealcam CDM idealcam CDM idealcam CDM idealcam CDM idealcam CDM idealcam CDM idealcam CDM idealcam CDM idealcam CDM idealcam CDM Πίνακας 2.4: Αυξητική επιτάχυνση εφαρµογών λόγω των ειδικών εντολών για την περίπτωση N i /N o = 8/8 και MemModel=CDM. Κατάταξη ειδικής εντολής Εφαρµογή (κατά φθίνουσα σειρά σηµαντικότητας) fsdither hilcurv htpack htunpack xteaenc xteadec 1η ειδική εντολή η ειδική εντολή ΝΑ ΝΑ

27 Πίνακας 2.5: Χαρακτηριστικά των κυριότερων ειδικών εντολών όπως αυτές προέκυψαν για το λογισµικό εφαρµογών του IPCN. Εφαρµογή Χαρακτηριστικά DDG ειδικής εντολής Κωδικοποίηση ειδικής εντολής N n N e N i N o N s N c fsdither fsdither_cfg0_bb5_ise8 fsdither hilcurv htpack htunpack xteaenc xteadec Κέρδος κύκλων Αυξητική επιτάχυνση εφαρµογής Κύκλοι SW Κύκλοι HW Εκτίµηση χρόνου HW Επιφάνεια υλικού (MAU) fsdither_cfg0_bb2_ise main_cfg0_bb3_ise htpack_cfg0_bb2_ise htunpack_cfg0_bb2_ise encode_xtea_cfg0_bb2_ise decode_xtea_cfg0_bb2_ise

28 Όπως προκύπτει από τα αποτελέσµατα, ένας αριθµός N i /N o = 8/8 επαρκεί για την κάλυψη του 92% της µέγιστης ασυµπτωτικά επιτάχυνσης εφαρµογής για την περίπτωση απεριόριστων εισόδων και εξόδων για τις ειδικές εντολές. Μάλιστα για 5 από τις 6 εφαρµογές, η διαφορά αυτή είναι µικρότερη από το 2.5% από το ιδανικό και µόνο για την htunpack είναι αξιοσηµείωτη (περίπου 44%). Συνεπώς, για τη θεωρούµενη υλοποίηση ByoRISC δεχόµαστε ότι NRP=NWP=8. Αντίθετα, η αντίστοιχη διαφορά ανάµεσα στις περιπτώσεις 8/4 και 8/8 είναι της τάξης του 28%. Επίσης, η σύγκριση των µοντέλων προσπέλασης µνήµης δεδοµένων αναδεικνύει την επίδραση των πραγµατικών περιορισµών µιας µονάδας φόρτωσης/αποθήκευσης, οι οποίοι υφίστανται σε έναν µοντέρνο επεξεργαστή RISC. Η µέση διαφορά στις µέγιστες επιτυγχανόµενες επιταχύνσεις ανάµεσα στα δύο µοντέλα είναι ίση µε 14.5% µε τις εφαρµογές xteaenc, xteadec να παρουσιάζουν την µεγαλύτερη απόκλιση (38.75%). Επίσης (Πίνακας 2.4) για όλες τις εφαρµογές επαρκούν 2 ειδικές εντολές για την κάλυψη του 96.6% της µέγιστης επιτάχυνσης για το µοντέλο προσπέλασης µνήµης CDM και κάτι αντίστοιχο ισχύει και για την περίπτωση του µοντέλου idealcam (96.5%). Τα αναλυτικά στοιχεία για τις 7 σηµαντικότερες από τις 10 ειδικές εντολές του Πίνακα 2.4 οι οποίες αναδείχθηκαν µε τη διαδικασία της γέννησης και επιλογής ειδικών εντολών δίνονται στον Πίνακα 2.5. Οι ειδικές εντολές επιλέχθηκαν ώστε να συνεισφέρουν (αθροιστικά) τουλάχιστον το 80% των επιταχύνσεων σύµφωνα µε την κατάταξη του Πίνακα 2.4. Καθώς οι ειδικές εντολές (εκτός της 2 ης του Πίνακα 2.5) απαιτούν εκτέλεση πολλαπλών κύκλων µε συµπερίληψη λειτουργιών φόρτωσης και αποθήκευσης, τα στάδια EX και MEM του επεξεργαστή ByoRISC θα πρέπει να επιτρέπουν λειτουργία πολλαπλών κύκλων µε ακινητοποίηση των προηγηθέντων σταδίων διοχέτευσης. Στο Σχήµα 2.8 απεικονίζονται τα DDG των ειδικών εντολών που αναφέρονται στον Πίνακα 2.5. (α) fsdither_cfg0_bb2_ise2

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Ακολουθιακός Κώδικας

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Ακολουθιακός Κώδικας «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Ακολουθιακός Κώδικας Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr

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

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Μηχανές Πεπερασμένων Καταστάσεων

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Μηχανές Πεπερασμένων Καταστάσεων «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Μηχανές Πεπερασμένων Καταστάσεων Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ

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

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συντρέχων Κώδικας

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συντρέχων Κώδικας «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 216-217 Συντρέχων Κώδικας Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr

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

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Γενικά χαρακτηριστικά, σύνταξη και τύποι. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 -

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Γενικά χαρακτηριστικά, σύνταξη και τύποι. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 - Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL Γενικά χαρακτηριστικά, σύνταξη και τύποι Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 - Περίγραµµα διάλεξης Τι είναι η VHDL? Πλεονεκτήµατα της VHDL στη σχεδίαση κυκλωµάτων

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

ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών

ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών Θέμα Β.1: Απλός καταχωρητής 1 bit (D Flip-Flop) preset D D Q Q clk clear Σχήμα 2.1: D Flip-Flop με εισόδους preset και clear Με τη

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

Ακολουθιακές εντολές. (Peter Ashenden, The Students Guide to VHDL)

Ακολουθιακές εντολές. (Peter Ashenden, The Students Guide to VHDL) Ακολουθιακές εντολές (Peter Ashenden, The Students Guide to VHDL) Εντολή If Τα βασικά χαρακτηριστικά της είναι τα εξής: Μπορεί να χρησιµοποιηθεί για τον έλεγχο µίας ή περισσοτέρων συνθηκών. Η πρώτη συνθήκη

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

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 Συµπληρωµατική ΔΙΑΛΕΞΗ 14: Περιγραφή Ακολουθιακών Κυκλωµάτων στη VHDL

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 Συµπληρωµατική ΔΙΑΛΕΞΗ 14: Περιγραφή Ακολουθιακών Κυκλωµάτων στη VHDL ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Χειµερινό Εξάµηνο 2016 Συµπληρωµατική ΔΙΑΛΕΞΗ 14: Περιγραφή Ακολουθιακών Κυκλωµάτων στη VHDL ΧΑΡΗΣ ΘΕΟΧΑΡΙΔΗΣ Επίκουρος Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy)

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

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 -

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 - Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 - Περίγραµµα διάλεξης Υποκυκλώµατα Περιγραφή δοµής στη VHDL Βιβλιοθήκες

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

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Τύποι Δεδομένων και Τελεστές

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Τύποι Δεδομένων και Τελεστές «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Τύποι Δεδομένων και Τελεστές Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr Αντίρριο

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

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων Περιγραφή Κυκλωμάτων με χρήση της VHDL Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων Οργάνωση Παρουσίασης Περιγραφή Δομής σε VHDL (Structural Description) Μηχανές Πεπερασμένων Καταστάσεων

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

VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων

VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων VHDL για Σχεδιασµό Ακολουθιακών Κυκλωµάτων Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήµιο Κύπρου Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών n VHDL Processes Περίληψη n Εντολές If-Then-Else και CASE

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

Κυκλωμάτων» Χειμερινό εξάμηνο

Κυκλωμάτων» Χειμερινό εξάμηνο «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 VHDL, Χαρακτηριστικά και τρόποι περιγραφής Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής Τμήμα Μηχανικών Πληροφορικής ΤΕ http://diceslab.cied.teiwest.gr

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

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1 ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης Φόρτωσης Καταχωρητές

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

Σχεδίαση Ψηφιακών Συστημάτων

Σχεδίαση Ψηφιακών Συστημάτων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Σχεδίαση Ψηφιακών Συστημάτων Ενότητα 4: Σχεδιασμός Σειριακού Αθροιστή Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών

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

Προσοµοίωση Συστηµάτων µε VHDL. (Peter Ashenden, The Students Guide to VHDL)

Προσοµοίωση Συστηµάτων µε VHDL. (Peter Ashenden, The Students Guide to VHDL) Προσοµοίωση Συστηµάτων µε VHDL (Peter Ashenden, The Students Guide to VHDL) Κώδικας VHDL Περιβάλλον Σχεδίασης Αναλυτής ιαχειριστής Βιβλιοθήκης Σχεδίασης Προσοµοιωτής Αντίστροφος Αναλυτής Βιβλιοθήκη Σχεδίασης

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

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath O επεξεργαστής: Η δίοδος δεδοµένων (path) και η µονάδα ελέγχου (control) Σχεδίαση path 4 κατηγορίες εντολών: Αριθµητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη µνήµη (lw, sw) I

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

VHDL Εισαγωγικές έννοιες

VHDL Εισαγωγικές έννοιες VHDL Εισαγωγικές έννοιες ρ. Κ. Καραφασούλης ckaraf@aegean.gr Σχεδίαση Αρχικά ψηφιακά κυκλώµατα µπορούν να σχεδιασθούν µε το κατάλληλο λογισµικό. Μεγαλύτερα κυκλώµατα µπορούν να σχεδιασθούν ιεραρχικά από

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

Σχεδίαση Ψηφιακών Συστημάτων

Σχεδίαση Ψηφιακών Συστημάτων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Σχεδίαση Ψηφιακών Συστημάτων Ενότητα 6: Σύγχρονα Ακολουθιακά Κυκλώματα Κυριάκης Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών

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

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Προχωρημένα Θέματα Σχεδιασμού με VHDL

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Προχωρημένα Θέματα Σχεδιασμού με VHDL «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Προχωρημένα Θέματα Σχεδιασμού με VHDL Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής

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

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Χειμερινό Εξάμηνο 2009 Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης

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

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Κεφάλαιο 7 i: Καταχωρητές Περίληψη Καταχωρητές Παράλληλης Φόρτωσης Καταχωρητές Ολίσθησης Σειριακή Φόρτωση Σειριακή Ολίσθηση Καταχωρητές Ολίσθησης Παράλληλης Φόρτωσης

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

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. VHDL για Ακολουθιακά Κυκλώματα 1

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. VHDL για Ακολουθιακά Κυκλώματα 1 ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων VHDL για Σχεδιασμό Ακολουθιακών Κυκλωμάτων Διδάσκουσα: Μαρία Κ. Μιχαήλ Περίληψη VHDL Processes Εντολές If-Then Then-Else και CASE Περιγραφή Flip-Flop Flop με VHDL

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

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Κώδικας μηχανής (E) Ο επεξεργαστής μπορεί να εκτελέσει το αρχιτεκτονικό σύνολο εντολών (instruction set architecture) Οι

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

ΠΑΡΑΡΤΗΜΑ Β. Verification

ΠΑΡΑΡΤΗΜΑ Β. Verification ΠΑΡΑΡΤΗΜΑ Β Ροή Σχεδίασης και VHDL Ροή Σχεδίασης Πριν περάσουµε σε περιγραφή της γλώσσας VHDL είναι χρήσιµο να δούµε το περιβάλλον και τη ροή της σχεδίασης. Τα βήµατα µιας σχεδίασης βασισµένης σε VHDL

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

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών

1. Οργάνωση της CPU 2. Εκτέλεση εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο επίπεδο των επεξεργαστών ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΟΡΓΑΝΩΣΗ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ι Γ. Τσιατούχας 2 ο Κεφάλαιο ιάρθρωση 1. Οργάνωση της 2. εντολών 3. Παραλληλία στο επίπεδο των εντολών 4. Γραμμές διοχέτευσης 5. Παραλληλία στο

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

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

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

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή Εισαγωγή Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ Σκοπός του εργαστηρίου είναι να γνωρίσουµε την εσωτερική δοµή και αρχιτεκτονική της κεντρικής µονάδας επεξεργασίας, να κατανοήσουµε τον τρόπο µε τον οποίο λειτουργεί

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

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα)

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα) «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα) Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής

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

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

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

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

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

i Throughput: Ο ρυθμός ολοκλήρωσης έργου σε συγκεκριμένο χρόνο

i Throughput: Ο ρυθμός ολοκλήρωσης έργου σε συγκεκριμένο χρόνο Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 6-7 Απόδοση ΚΜΕ (Μέτρηση και τεχνικές βελτίωσης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κεντρική Μονάδα Επεξεργασίας

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

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 3: Ασυμπτωτικός συμβολισμός Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Συστήματα VLSI. Εισαγωγή. Γιώργος Δημητρακόπουλος. Δημοκρίτειο Πανεπιστήμιο Θράκης. Άνοιξη 2014

Συστήματα VLSI. Εισαγωγή. Γιώργος Δημητρακόπουλος. Δημοκρίτειο Πανεπιστήμιο Θράκης. Άνοιξη 2014 Συστήματα VLSI Εισαγωγή Γιώργος Δημητρακόπουλος Δημοκρίτειο Πανεπιστήμιο Θράκης Άνοιξη 2014 Συστήματα VLSI 1 Τα ολοκληρωμένα κυκλώματα από «μέσα» Συστήματα VLSI 2 Τα εργαλεία της σχεδίασης Algorithms-Applications

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

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης)

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Απόδοση ΚΜΕ. (Μέτρηση και τεχνικές βελτίωσης απόδοσης) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Απόδοση ΚΜΕ (Μέτρηση και τεχνικές βελτίωσης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Κεντρική Μονάδα Επεξεργασίας

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

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: Σελίδα 1 από 11 Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: την επικοινωνία, µε τα υπόλοιπα ολοκληρωµένα κυκλώµατα του υπολογιστικού συστήµατος. την παροχή τροφοδοσίας

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

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος Εισαγωγή στους Αλγόριθµους Αλγόριθµοι Τι είναι αλγόριθµος; Τι µπορεί να υπολογίσει ένας αλγόριθµος; Πως αξιολογείται ένας αλγόριθµος; Παύλος Εφραιµίδης pefraimi@ee.duth.gr Αλγόριθµοι Εισαγωγικές Έννοιες

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

Αρχιτεκτονικές Υπολογιστών

Αρχιτεκτονικές Υπολογιστών ΑΡΧΙΤΕΚΤΟΝΙΚΕΣ ΥΠΟΛΟΓΙΣΤΩΝ Μάθηµα: Αρχιτεκτονικές Υπολογιστών Βασικά Συστατικά ενός Υπολογιστικού Συστήµατος ( οµή Οργάνωση) ιδάσκων:αναπλ.καθ. Κ. Λαµπρινουδάκης clam@unipi.gr Αρχιτεκτονικές Υπολογιστών

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

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ.

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ. ΤΕΙ ΚΡΗΤΗΣ / ΠΑΡΑΡΤΗΜΑ ΧΑΝΙΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΗΣ Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ mode mode(0) ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εµµανουήλ Καπαρού Επιβλέπων : ρ Μηχ Νικόλαος

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

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι Εισαγωγή στη VHDL Εισαγωγή Very High Speed Integrated Circuits Hardware Description Language ιαφορές από γλώσσες προγραμματισμού: παράλληλη εκτέλεση εντολών προσδιορισμός

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

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control) 4 κατηγορίες εντολών: Σχεδίαση datapath Αριθμητικές-λογικές εντολές (add, sub, slt κλπ) R Type Εντολές αναφοράς στη μνήμη (lw,

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

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος Εργαστήριο Οργάνωσης Η/Υ Δαδαλιάρης Αντώνιος dadaliaris@uth.gr Συνδυαστικό Κυκλωμα: Το κύκλωμα του οποίου οι έξοδοι εξαρτώνται αποκλειστικά από τις τρέχουσες εισόδους του. Ακολουθιακό Κύκλωμα: Το κύκλωμα

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

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1 Εικόνες και γραφικά Περιγραφή στατικών εικόνων Αναπαράσταση γραφικών Υλικό γραφικών Dithering και anti-aliasing Σύνθεση εικόνας Ανάλυση εικόνας Μετάδοση εικόνας Τεχνολογία Πολυµέσων 05-1 Περιγραφή στατικών

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

Πίνακας Περιεχοµένων Πρόλογος Κεφάλαιο Βασικές εισαγωγικές έννοιες

Πίνακας Περιεχοµένων Πρόλογος Κεφάλαιο Βασικές εισαγωγικές έννοιες Πίνακας Περιεχοµένων Πρόλογος...vii Κεφάλαιο 1:Βασικές εισαγωγικές έννοιες...1 1.1 Η δοµή του µεταγλωττιστή...2 1.2 Η διαδικασία µεταγλώττισης...3 1.2.1 Η Λεξική Ανάλυση...6 1.2.2 Η Συντακτική Ανάλυση...6

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

ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ

ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ ΕΡΓΑΣΤΗΡΙΟ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΛΥΣΕΙΣ 3 ης ΓΡΑΠΤΗΣ ΕΡΓΑΣΙΑΣ ΠΑΤΡΑ 2006 9.

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

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 11 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 11 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Γιώργος Δημητρίου Μάθημα 11 ο Γεννήτορας Τελικού Κώδικα Ο γεννήτορας τελικού κώδικα είναι το πιο κρίσιμο τμήμα του μεταγλωττιστή και αντιμετωπίζει πολύπλοκα προβλήματα Βέλτιστη χρήση της αρχιτεκτονικής

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΠΡΩΤΗ ΠΡΟΟΔΟΣ ΣΤΗΝ «ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Y» ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΠΡΩΤΗ ΠΡΟΟΔΟΣ ΣΤΗΝ «ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Y» Σάββατο, 31 Οκτωβρίου 2015 ΔΙΑΡΚΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ 150 ΛΕΠΤΑ ΘΕΜΑ 1.

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

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους; Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

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

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Αρχιτεκτονική Υπολογιστών Άσκηση 6: Ασκήσεις Εξαμήνου Μέρος Β Νοέμβριος 2016 Στην άσκηση αυτή θα μελετήσουμε την εκτέλεση ενός

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Κεφάλαιο 3

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

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

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Τι εννοούμε με τον όρο υπολογιστικό σύστημα και τι με τον όρο μικροϋπολογιστικό σύστημα; Υπολογιστικό

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

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης Αρχιτεκτονική Υπολογιστών 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: 2014-2015 Νεκ. Κοζύρης nkoziris@cslab.ece.ntua.gr Single Cycle Datapath http://www.cslab.ece.ntua.gr/courses/comparch/ Άδεια Χρήσης Το παρόν εκπαιδευτικό

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

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Γιώργος Δημητρίου Ενότητα 7 η : Στατική Δρομολόγηση Εντολών (Επεξεργαστές VLIW) Εκμετάλλευση ILP Περιορισμοί στη δυναμική δρομολόγηση εντολών: Μέγεθος παραθύρου εντολών Αριθμός φυσικών καταχωρητών Αποτυχία

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

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches)

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches) «Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches) Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος

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

Μοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες.

Μοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες. Γλώσσες Περιγραφής Μοντέλα Ένα µοντέλο ενός κυκλώµατος είναι µία αναπαράσταση που παρουσιάζει χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες. Τα τυπικά µοντέλα έχουν καλά ορισµένη σύνταξη. Τα αυτόµατα

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

επιφάνεια πυριτίου Αναφορά στο Εκπαιδευτικό Υλικό : 5. Αναφορά στο Εργαστήριο :

επιφάνεια πυριτίου Αναφορά στο Εκπαιδευτικό Υλικό : 5. Αναφορά στο Εργαστήριο : 2. Α/Α Διάλεξης : 1 1. Τίτλος : Εισαγωγή στην Ψηφιακή Τεχνολογία 2. Μαθησιακοί Στόχοι : Λογικές Πύλες και η υλοποίησή τους με τρανζίστορ. Κατασκευή ολοκληρωμένων κυκλωμάτων. 3. Θέματα που καλύπτει : Λογικές

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Σχεδίαση Ψηφιακών Συστημάτων. Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ

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

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

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 7ο ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Γενικό διάγραμμα υπολογιστικού συστήματος Γενικό διάγραμμα υπολογιστικού συστήματος - Κεντρική Μονάδα Επεξεργασίας ονομάζουμε

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

ΕΙΣΑΓΩΓΙΚΟ ΕΓΧΕΙΡΙ ΙΟ ΓΙΑ ΣΧΕ ΙΑΣΜΟ ΜΕ ΧΡΗΣΗ ΤΗΣ ΓΛΩΣΣΑΣ VHDL

ΕΙΣΑΓΩΓΙΚΟ ΕΓΧΕΙΡΙ ΙΟ ΓΙΑ ΣΧΕ ΙΑΣΜΟ ΜΕ ΧΡΗΣΗ ΤΗΣ ΓΛΩΣΣΑΣ VHDL ΕΙΣΑΓΩΓΙΚΟ ΕΓΧΕΙΡΙ ΙΟ ΓΙΑ ΣΧΕ ΙΑΣΜΟ ΜΕ ΧΡΗΣΗ ΤΗΣ ΓΛΩΣΣΑΣ VHDL Προετοιµασία: Παπαδόπουλος Γιώργος Σούρδης Γιάννης Για το µάθηµα Οργάνωσης Υπολογιστών (ΑΡΥ301), 2002 ΕΙΣΑΓΩΓΗ ΣΤΗ STRUCTURAL VHDL Η VHDL είναι

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

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 11-12 : Δομή και Λειτουργία της CPU Ευάγγελος Καρβούνης Παρασκευή, 22/01/2016 2 Οργάνωση της CPU Η CPU πρέπει:

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

Σύνθετοι τύποι και λειτουργίες. (Peter Ashenden, The Students Guide to VHDL)

Σύνθετοι τύποι και λειτουργίες. (Peter Ashenden, The Students Guide to VHDL) Σύνθετοι τύποι και λειτουργίες (Peter Ashenden, The Students Guide to VHDL) Πίνακες Πίνακες: Αποτελούνται από στοιχεία του ίδιου τύπου. Μονοδιάστατοι Πίνακες type table1 is array (0 to 7) of std_logic;

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

ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ:

ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ: ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ονοματεπώνυμο: ΑΜ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ (τμήμα Μ - Ω) Κανονική εξεταστική Φεβρουαρίου

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

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Οργάνωση Η/Υ Ενότητα 1η: Εισαγωγή στην Οργάνωση Η/Υ Άσκηση 1: Αναλύστε τη διαδοχική εκτέλεση των παρακάτω εντολών MIPS με βάση τις

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

Εισαγωγή στη γλώσσα VHDL

Εισαγωγή στη γλώσσα VHDL (document version 1.2) Ιωάννης Α. Καλόµοιρος Εισαγωγή στη γλώσσα VHDL Τεχνολογικό Εκπαιδευτικό Ίδρυµα Σερρών, Τµήµα Πληροφορικής και Επικοινωνιών, 2012 Το σύγγραµµα αυτό προορίζεται αποκλειστικά για χρήση

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

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ) (Δομή Εντολών και Παραδείγματα) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Αρχιτεκτονική

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

Πληροφορική 2. Γλώσσες Προγραμματισμού

Πληροφορική 2. Γλώσσες Προγραμματισμού Πληροφορική 2 Γλώσσες Προγραμματισμού 1 2 Γλώσσες προγραμματσιμού Επιτρέπουν την κωδικοποίηση των αλγορίθμων Η εκτέλεση ενός προγράμματος θα πρέπει να δίνει τα ίδια αποτελέσματα με την νοητική εκτέλεση

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

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ 1... 11 ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ... 11 ΣΗΜΕΡΑ... 11 1.1 Ιστορική αναδρομή... 13 1.1.1 Υπολογιστικές μηχανές στην αρχαιότητα... 13 1.1.2 17ο έως τον 19ο... 14 1.1.3

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

Ψηφιακά ολοκληρωμένα κυκλώματα

Ψηφιακά ολοκληρωμένα κυκλώματα Ψηφιακά ολοκληρωμένα κυκλώματα Εισαγωγή Γιώργος Δημητρακόπουλος Δημοκρίτειο Πανεπιστήμιο Θράκης Φθινόπωρο 2013 Ψηφιακά ολοκληρωμένα κυκλώματα 1 O κόσμος των ηλεκτρονικών... Ψηφιακά ολοκληρωμένα κυκλώματα

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

Περιεχόµενα. I Βασικές Γνώσεις 1

Περιεχόµενα. I Βασικές Γνώσεις 1 Περιεχόµενα I Βασικές Γνώσεις 1 1 Μοντελοποίηση Προγραµµάτων 3 1.1 Ψευδογλώσσα....................... 6 1.2 Διαγράµµατα Ροής..................... 6 1.3 Παραδείγµατα σε Ψευδογλώσσα και Διαγράµµατα Ροής.

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

Συστήματα σε Ολοκληρωμένα Κυκλώματα

Συστήματα σε Ολοκληρωμένα Κυκλώματα Συστήματα σε Ολοκληρωμένα Κυκλώματα Κεφάλαιο 2: Τεχνικές για Σχεδιασμό Χαμηλής Κατανάλωσης Ισχύος στα MPSoCs Διδάσκων: Καθηγητής Οδυσσέας Κουφοπαύλου Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών

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

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 9 Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Ti είναι Αρχιτεκτονική και τι Μικροαρχιτεκτονική

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

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 3 : Μια άποψη του κορυφαίου επιπέδου λειτουργίας και διασύνδεσης του υπολογιστή Καρβούνης Ευάγγελος Η έννοια

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

Εντολές του MIPS (2)

Εντολές του MIPS (2) ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι Διάλεξη 3 Εντολές του MIPS (2) Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων 1 Παράδειγμα (συνέχεια από προηγ. διάλεξη) $s3

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

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

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΠΡΩΤΟΤΥΠΟ ΕΡΓΑΛΕΙΟ ΑΥΤΟΜΑΤΗΣ ΕΞΑΓΩΓΗΣ ΚΩΔΙΚΑ VHDL ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΡΑΔΙΟΗΛΕΚΤΡΟΛΟΓΙΑΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΠΡΩΤΟΤΥΠΟ ΕΡΓΑΛΕΙΟ ΑΥΤΟΜΑΤΗΣ ΕΞΑΓΩΓΗΣ ΚΩΔΙΚΑ VHDL Παπαδόπουλος Ματθαίος 1 Επιβλέπων :Σ.Νικολαιδης

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

Περιεχόμενα. Πρόλογος... XI. Κεφάλαιο 1. Συστήματα Βασισμένα σε FPGA Κεφάλαιο 2. Τεχνολογία VLSI Εισαγωγή Βασικές Αρχές...

Περιεχόμενα. Πρόλογος... XI. Κεφάλαιο 1. Συστήματα Βασισμένα σε FPGA Κεφάλαιο 2. Τεχνολογία VLSI Εισαγωγή Βασικές Αρχές... Περιεχόμενα Πρόλογος... XI Κεφάλαιο 1. Συστήματα Βασισμένα σε FPGA... 1 1.1 Εισαγωγή... 1 1.2 Βασικές Αρχές... 1 1.2.1 Boolean Άλγεβρα... 1 1.2.2 Σχηματικά και Λογικά Σύμβολα... 6 1.3 Ψηφιακή Σχεδίαση

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

Θέµατα Φεβρουαρίου

Θέµατα Φεβρουαρίου Θέµατα Φεβρουαρίου 2-2 cslab@ntua 2- Θέµα ο (3%): Έστω η παρακάτω ακολουθία εντολών που χρησιµοποιείται για την αντιγραφ από µια θέση µνµης σε µια άλλη (memory-to-memory copy): lw $2, ($) sw $2, 2($) i)

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

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly Αρης Ευθυμίου Το σημερινό μάθημα! Σύνταξη εντολών! Θέματα σχετικά με τη προσπέλαση, οργάνωση μνήμης διευθύνση για κάθε byte διευθύνσεις λέξεων

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

Κεντρική Μονάδα Επεξεργασίας

Κεντρική Μονάδα Επεξεργασίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Μονάδα Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

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

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL Διδάσκoντες: Δρ. Γιώργος Ζάγγουλοςκαι Δρ. Παναγιώτα Δημοσθένους Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων

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

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα

Κεντρική Μονάδα Επεξεργασίας. Επανάληψη: Απόδοση ΚΜΕ. ΚΜΕ ενός κύκλου (single-cycle) Παραλληλισμός σε επίπεδο εντολών. Υπολογιστικό σύστημα Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι ΣΙΝΑΤΚΑΣ Ι. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 2010-11 1 Μεταβλητές-Σταθερές-Παράμετροι Τα στοιχεία

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

Υπολογιστικό Πρόβληµα

Υπολογιστικό Πρόβληµα Υπολογιστικό Πρόβληµα Μετασχηµατισµός δεδοµένων εισόδου σε δεδοµένα εξόδου. Δοµή δεδοµένων εισόδου (έγκυρο στιγµιότυπο). Δοµή και ιδιότητες δεδοµένων εξόδου (απάντηση ή λύση). Τυπικά: διµελής σχέση στις

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

ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων. Βιβλιογραφία Ενότητας

ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων. Βιβλιογραφία Ενότητας ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων Βελτιστοποίηση κώδικα σε επεξεργαστές ΨΕΣ Τµήµα Επιστήµη και Τεχνολογίας Τηλεπικοινωνιών Πανεπιστήµιο Πελοποννήσου Βιβλιογραφία Ενότητας Kehtarnavaz [2005]: Chapter

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

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων Χειµερινό Εξάµηνο 2007-2008 Μηχανές Πεπερασµένων Καταστάσεων ΗΥ220 - Βασίλης Παπαευσταθίου 1 FSMs Οι µηχανές πεπερασµένων καταστάσεων Finite State Machines (FSMs) πιο

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

Πτυχιακή Εργασία Σχεδίαση κυκλωμάτων επικοινωνίας με απλές οθόνες, με τη γλώσσα VHDL και υλοποίηση στις αναπτυξιακές πλακέτες LP-2900 και DE2.

Πτυχιακή Εργασία Σχεδίαση κυκλωμάτων επικοινωνίας με απλές οθόνες, με τη γλώσσα VHDL και υλοποίηση στις αναπτυξιακές πλακέτες LP-2900 και DE2. ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. Πτυχιακή Εργασία Σχεδίαση κυκλωμάτων επικοινωνίας με απλές οθόνες, με τη γλώσσα VHDL και υλοποίηση στις αναπτυξιακές

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

Βασικά Στοιχεία της Java

Βασικά Στοιχεία της Java Βασικά Στοιχεία της Java Παύλος Εφραιμίδης Java Βασικά Στοιχεία της γλώσσας Java 1 Τύποι Δεδομένων Η Java έχει δύο κατηγορίες τύπων δεδομένων: πρωτογενείς (primitive) τύπους δεδομένων αναφορές Java Βασικά

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

FORTRAN και Αντικειμενοστραφής Προγραμματισμός

FORTRAN και Αντικειμενοστραφής Προγραμματισμός FORTRAN και Αντικειμενοστραφής Προγραμματισμός Παραδόσεις Μαθήματος 2016 Δρ Γ Παπαλάμπρου Επίκουρος Καθηγητής ΕΜΠ georgepapalambrou@lmentuagr Εργαστήριο Ναυτικής Μηχανολογίας (Κτίριο Λ) Σχολή Ναυπηγών

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

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 12 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

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

Ενςωματωμένα Συςτήματα Υλοποίηςη του SDES ςε Hardware

Ενςωματωμένα Συςτήματα Υλοποίηςη του SDES ςε Hardware Ενςωματωμένα Συςτήματα Υλοποίηςη του SDES ςε Hardware June 1 2012 Κεχαγιάσ Απόςτολοσ ΑΕΜ:134 Table of Contents O αλγόριθμοσ... 2 Υλοποίηςη ςε Hardware... 7 Xρονιςμόσ ςημάτων VGA... 12 Επαλήθευςη... 14

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

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου J-GANNO ΓΕΝΙΚΕΥΜΕΝΟ ΠΑΚΕΤΟ ΥΛΟΠΟΙΗΣΗΣ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΙΚΤΥΩΝ ΣΤΗ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ JAVA Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β,

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

Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση»

Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή. 30 min κάθε «φάση» Pipeline: Ένα παράδειγμα από.τη καθημερινή ζωή 1. Πλυντήριο 2. Στεγνωτήριο 3. Δίπλωμα 4. αποθήκευση Σειριακή προσέγγιση για 4 φορτία = 8h 30 min κάθε «φάση» Pipelined προσέγγιση για 4 φορτία = 3.5h Το

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

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

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

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Νο 13 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

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

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2)

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2) ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών Διάλεξη 3 Εντολές του MIPS (2) Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Y Παράδειγμα (συνέχεια από προηγ. διάλεξη) $s3 = &A[0] = 0x0001080 &A[8]

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

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

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

7.9 ροµολόγηση. Ερωτήσεις

7.9 ροµολόγηση. Ερωτήσεις 7.9 ροµολόγηση Ερωτήσεις 1. Να δώσετε τον ορισµό της δροµολόγησης; 2. Από τι εξαρτάται η χρονική στιγµή στην οποία λαµβάνονται οι αποφάσεις δροµολόγησης; Να αναφέρετε ποια είναι αυτή στην περίπτωση των

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

Παραλληλισμός σε επίπεδο εντολών

Παραλληλισμός σε επίπεδο εντολών Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2015-16 Παραλληλισμός σε επίπεδο εντολών (Pipelining και άλλες τεχνικές αύξησης απόδοσης) http://di.ionio.gr/~mistral/tp/comparch/ Μ.Στεφανιδάκης

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

Structural VHDL. Structural VHDL

Structural VHDL. Structural VHDL Structural VHDL Παράδειγμα Multiplexer Component Component specification Port map command Unconnected outputs Unconnected inputs Generic map command Generate command Configuration Παράδειγμα 4-bit Adder

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

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Καταχωρητές και χρονισμός με ρολόι

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Καταχωρητές και χρονισμός με ρολόι Περιγραφή Κυκλωμάτων με χρήση της VHDL Καταχωρητές και χρονισμός με ρολόι Οργάνωση Παρουσίασης Διεργασίες (κανόνες) Ακολουθιακές Δηλώσεις (Sequential Statements) Καταχωρητές και χρονισμός Συμπληρωματική

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

Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ

Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων Αρχιτεκτονική Επεξεργαστών Ψ.Ε.Σ Βιβλιογραφία Ενότητας Kehtarnavaz [2005]: Chapter 3 Kuo [2005]: Chapters 1 & 4-5 Lapsley [2002]: Chapter 4 Hayes [2000]: Κεφάλαιo 8

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

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

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