ΕΞΕΡΕΥΝΗΣΗ ΧΩΡΙΚΟΥ ΣΧΕΔΙΑΣΜΟΥ ΣΕ ΔΙΚΤΥΑ ΟΛΟΚΛΗΡΩΜΕΝΩΝ ΚΥΚΛΩΜΑΤΩΝ: ανάλυση υπόθεσης (case study)
INTRODUCTION Ο σχεδιασμός ασύρματων πρωτοκόλλων και η υλοποίηση τους με ετερογενείς αρχιτεκτονικές συμπεριλαμβανομένων δεσμευμένων ΙΡ προγραμματιζόμενων λογικών και ένα ή περισσότερους επεξεργαστές είναι μια δύσκολη διαδικασία Μια πρόκληση είναι η επιβεβαίωση και η εκτίμηση απόδοσης σε μια αντιστοίχηση των λειτουργιών του πρωτοκόλλου πανό στην αρχιτεκτονική χωρίς ακριβη εξομοίωση στο RTL Παρά το υψηλό επίπεδο αφαιρετικότητας που χρησιμοποιείται στη μοντελοποίηση τόσο της εφαρμογής όσο και των component αρχιτεκτονικής πρέπει να μπορεί να εκτιμηθεί η απόδοση (throughput, latency, και χρήση πόρων) που είναι απαραίτητα για να βελτιστοποιηθεί η παραμετροποιημένη πλατφόρμα παραμέτρων της δεδομένης εφαρμογής.
INTRODUCTION Σε αυτήν την ανάλυση υπόθεσης θα γίνει σχεδιασμός μέρους της στοίβας του standard πρωτοκόλλου που ονομάζεται Hiperlan/2 επικεντρώνοντας το ενδιαφέρον μας στο φυσικό επίπεδο δεδομένων και την υλοποίηση του σε πραγματικά ετερογενή αρχιτεκτονική στοχεύοντας σε χαμηλή καταναλωση ενέργειας δέκτες σε ασύρματα δίκτυα
ΜΕΘΟΔΟΛΟΓΙΑ ΣΥΝΣΧΕΔΙΑΣΜΟΥ ΔΙΕΡΓΑΣΙΑΣ/ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ
ΛΕΙΤΟΥΡΓΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ Η προδιαγραφή του συστήματος υποστηρίζεται με λειτουργικούς εκτελέσιμους όρους, που σημαίνει ότι είναι εξομοιούμενη και είναι ανεξάρτητη από την εφαρμογή, χωρίς οποιοδήποτε μέτρο του κόστους ή της απόδοσης. Τα μπλοκ μπορούν να μοντελοποιηθούν σε C++ και να επικοινωνήσουν αποστέλλοντας μηνύματα από την πύλη εξόδου ενός μπλοκ στην πύλη εισόδου ενός άλλου μέσω της Post() κλήσης διεπαφής προγραμματισμού εφαρμογής (API). Ένα μπλοκ ενεργοποιείται (run) αν λάβει ένα token σε κάποια από τις εισόδους του. Όταν ενεργοποιηθεί το μπλοκ μπορεί να χρησιμοποιήσει την κλήση Enabled( ) για να καταλάβει ποια είσοδος το ενεργοποίησε και μπορεί να διαβάσει token από την είσοδο αυτή μέσω της κλήσης Value(). Κάθε πύλη εισόδου έχει ένα μιας θέσης buffer και η κλήση Post( ) δεν μπλοκάρει τίποτα. Αυτό υπονοεί επικοινωνίας με απώλειες μεταξύ μπλοκ. Το VCC υποστηρίζει επικοινωνία μέσω κοινών μεταβλητών που δεν ενεργοποιούν το μπλοκ αποδέκτη και ονομάζονται συμπεριφοριστικές μνήμες
ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΕΞΕΡΕΥΝΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Μια ομάδα από παραμετροποιημένες εναλλακτικές αρχιτεκτονικές που μπορεί να χρησιμοποιηθεί για να υλοποιήσουμε τις προδιαγραφές, μοντελοποιείται. Οι αρχιτεκτονικές περιγράφονται με (CPUs), ASICs, αλληλοσυνδεόμενα δίκτυα και λειτουργικά συστήματα πραγματικού χρόνου. Το επόμενο βήμα στη φάση σχεδιασμού είναι να αντιστοιχήσουμε την συμπεριφορά στην αρχιτεκτονική. Η αντιστοίχηση περιλαμβάνει την κατάτμηση των συμπεριφορών στους υπολογιστικούς πόρους. Επίσης η επικοινωνίας μεταξύ των συμπεριφορών μπορεί να αντιστοιχιστεί με επικοινωνιακά patterns Ο σχεδιασμός αντιστοίχησης μπορεί στην συνέχεια να εξομοιωθεί για να εκτιμηθεί αν η απόδοση της αρχιτεκτονικής ικανοποιεί τις απαιτήσεις του συστήματος.
ΒΕΛΤΙΩΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Μετά την ολοκλήρωση του βήματος αντιστοίχησης η αρχιτεκτονική με την υλοποιημένη συμπεριφορά βελτιώνεται επιτυχώς σε μικροαρχιτεκτονικά επίπεδα στα οποία οι ομάδες εντολών, τα RTL μοντέλα και οι γλώσσες προγραμματισμού επιλέγονται και ελέγχονται για ικανοποίηση των απαιτήσεων υψηλότερου επιπέδου. Σε αυτό το βήμα τα ιδανικά components που είναι περιγραμμένα σε ένα πιο αφαιρετικό τρόπο αντιστοιχίζονται με πραγματικά components αν και σε ένα στάδιο υψηλού επιπέδου περιγραφής χρησιμοποιώντας αυτόματες ή μή διεργασίες.
ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΑΠΟΔΟΣΗΣ ΜΕ ΥΠΗΡΕΣΙΕΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Οι υπηρεσίες αρχιτεκτονικής είναι ένα component του VCC που υποστηρίζει μοντελοποίηση απόδοσης πολύπλοκων αρχιτεκτονικών. Μοντελοποιεί την επικοινωνία σαν κίνηση και καθυστέρηση διαύλου και υποστηρίζει τις προδιαγραφές των μοτίβων επικοινωνίας και μοντέλων απόδοσης που διαμοιράζονται σε κάθε πόρο της αρχιτεκτονικής
ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΑΠΟΔΟΣΗΣ ΜΕ ΥΠΗΡΕΣΙΕΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Οι υπηρεσίες αρχιτεκτονικής είναι μια ομάδα από κατανεμημένα μοντέλα, κάθε component περιγράφει την επίδραση που εχει στην απόδοση του συστήματος. Έτσι η μεθοδολογία αυτή είναι αρκετά ευέλικτη ώστε να χειρίζεται νέες και διαφορετικές μεταξύ τους hardware/software πλατφόρμες. Οι υπηρεσίες αρχιτεκτονικής που σχετίζονται με ένα στοιχείο αρχιτεκτονικής π.χ. το δίαυλο, τη CPU, θεμελιακά ορίζουν και ένα API για αυτό το στοιχείο που είναι αρκετά αφαιρετικό και περιγράφει μόνο αυτά που έχουν σημαντική επίδραση στην απόδοση
ΜΗΧΑΝΙΚΗ ΤΩΝ ΥΠΗΡΕΣΙΩΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Κάθε υπηρεσία δηλώνει μια ομάδα μεθόδων (API). Η όψη απόδοσης του στοιχείου αρχιτεκτονικής υλοποιεί τις διεργασίες Ξεχωρίζοντας την δήλωση από την υλοποίηση επιτρέπουμε πολλαπλές υλοποιήσεις για το ίδιο στοιχείο που μπορούν να μοντελοποιήσουν την υπηρεσία σε διαφορετικά σημεία της καμπύλης tradeoff ακρίβεια ενάντια χρόνου εξομοίωσης ή μπορούν να παρουσιάσουν διαφορετική αφαιρετικότητα απόδοσης
ΜΗΧΑΝΙΚΗ ΤΩΝ ΥΠΗΡΕΣΙΩΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Οι ορισμοί υπηρεσιών είναι C++ κλάσεις που προκύπτουν από την δήλωση της υπηρεσίας. Αυτά τα μοντέλα υλοποιούν την δήλωση υπηρεσίας και μπορούν να χρησιμοποιήσουν άλλες δηλώσεις υπηρεσίας Ένας ορισμός υπηρεσίας μπορεί να χρησιμοποιήσει παραμέτρους για να περιγράψει χαρακτηριστικά εξαρτώμενα από την υλοποίηση όπως συχνότητα χρόνοι πρόσβασης κ.τ.λ. Η τοπολογία της αρχιτεκτονικής δεσμεύει τις υπηρεσίες
ΜΗΧΑΝΙΚΗ ΤΩΝ ΥΠΗΡΕΣΙΩΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Διάγραμμα αρχιτεκτονικής με ενδεικτικές υπηρεσίες αρχιτεκτονικής
PATTERNS ΕΠΙΚΟΙΝΩΝΙΑΣ Επιπλέον από τη μοντελοποίηση στην επικοινωνία, μεταξύ στοιχείων αρχιτεκτονικής χρησιμοποιούνται υπηρεσίες για να μοντελοποιήσουν το πλήρες μονοπάτι επικοινωνίας μεταξύ συμπεριφορών
PATTERNS ΕΠΙΚΟΙΝΩΝΙΑΣ Τα patterns επικοινωνίας μπορούν να αναπαρασταθούν συνοπτικά από μια υπηρεσία πομπού και μια υπηρεσία δέκτη Η πηγή πομπού υλοποιεί την δήλωση υπηρεσίας πύλης εξόδου ( Post function) Η υπηρεσία δέκτη υλοποιεί την δήλωση υπηρεσίας πύλης εισόδου ( Enabled and Value functions). Οι υπηρεσίες πομπού και δέκτη μπορούν διαδοχικά να χρησιμοποιήσουν υπηρεσίες υλοποιημένες από στοιχεία αρχιτεκτονικής που συμπεριφορά τους έχει αντιστοιχιστεί
PATTERNS ΕΠΙΚΟΙΝΩΝΙΑΣ Δέσμευση υπηρεσίας για pattern αντιστοιχισμένο με register
PATTERNS ΕΠΙΚΟΙΝΩΝΙΑΣ Οι υπηρεσίες πομπού και δέκτη χρειάζονται μόνο να εκκινήσουν την επικοινωνίας και να αφήσουν την δέσμευση υπηρεσιών σε όλη την τοπολογία της αρχιτεκτονικής να μεταφέρει τα δεδομένα στους κατάλληλους προορισμούς. Έτσι τα patterns πομπού και δέκτη είναι επαναχρησιμοποιήσιμα δια μέσου διαφορετικών πλατφόρμων αρχιτεκτονικής
ΜΟΝΤΕΛΟΠΟΙΩΝΤΑΣ ΤΑ ΔΙΚΤΥΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ Η σημασιολογία του CFSM προεκτείνεται στο VCC που ενεργοποιεί την συμπεριφορά κάθε φορά κάποια από τις πύλες εισόδου έχει ένα token (the Enabled( ) function επιστρέφει true), έτσι ώστε να υποστηρίξει το μοντέλο ροής δεδομένων του υπολογισμού Στη ροή δεδομένων, κάθε μπλοκ όταν ενεργοποιείται καταναλώνει έναν συγκεκριμένο αριθμό από token σε κάθε πύλη εισόδου και παράγει συγκεκριμένο αριθμό από token σε κάθε πύλη εξόδου Στην στατική ροή δεδομένων (SDF), ο ρυθμός δεδομένων σε κάθε πύλη του μπλοκ είναι σταθερός και στατικά γνωστός στον χρόνο μεταγλώττισης. Στη δυναμική ροή δεδομένων (DDF), ένα μπλοκ μπορεί να αλλάξει ρυθμό δεδομένων στην πύλη στο χρόνο τρεξίματος αρκεί το μπλοκ να γνωστοποιεί στον χρονοπρογραμματιστή τον κανόνα μετάδοσης για την επόμενη ενεργοποίηση μπλοκ
ΜΟΝΤΕΛΟΠΟΙΩΝΤΑΣ ΤΑ ΔΙΚΤΥΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ Η σημασιολογία ροής δεδομένων διαφέρει από τη σημασιολογία CFSM όσον αφορά: Μη απωλεστική επικοινωνία μεταξύ μπλοκ μέσω καναλιών FIFO που βάζουν σε ουρά τα token μεταξύ πομπού και δέκτη. Τον κανόνα ενεργοποίησης ενός μπλοκ, ένα μπλοκ ενεργοποιείται μόνο όταν όλες οι πύλες εισόδου έχουν πάρει ικανοποιητικό αριθμό token όπως αυτός καθορίζεται από τον ρυθμό δεδομένων στη πύλη Αρχικά token στο κανάλι τα οποία είναι αρχικά παρόντα στις FIFO και αντιστοιχούν σε καθυστερήσεις στους διακριτούς αλγορίθμους ελέγχου
ΜΟΝΤΕΛΟΠΟΙΩΝΤΑΣ ΤΑ ΔΙΚΤΥΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ Στην εφαρμογή μας χρησιμοποιούμε διεξοδικά ένα mix-and-match χαρακτηριστικό για να περιγράψουμε τις ετερογενείς συνιστώσες του πομποδέκτη, συνθέτοντας μαζί τόσο τα μπλοκ έλέγχου όσο και δεδομένων που είναι φυσικά μοντελοποιημένα από την σημασιολογία CFSM και ροής δεδομένων αντιστοίχως
ΑΝΑΛΥΣΗ ΥΠΟΘΕΣΗΣ: Η ΕΦΑΡΜΟΓΗ HIPERLAN/2 Η στοχευόμενη αρχιτεκτονική είναι ο προσδιορισμός φυσικού επιπέδου για υψηλής απόδοσης τοπικά δίκτυα τύπου 2 (Hiperlan/2 ) που προτείνεται για επαγγελματικά και ασύρματα τοπικά δίκτυα (WLAN ). Το Hiperlan/2 φυσικό επιπεδο βασίζεται στο ορθογώνιας διαίρεσης συχνότητας πολυπλεγμένης διαμόρφωσης σχήμα (OFDM) που διαλέχθηκε γιατί παρέχει υψηλή απόδοση σε κανάλια υψηλής διανομής Ένα χαρακτηριστικό κλειδί για το Hiperlan/2 φυσικό επίπεδο είναι το ότι παρέχει διάφορες καταστάσεις physical layer με διαφορετικους βαθμούς κωδικοποίησης και σχήματα διαμόρφωσης που διαλέγονται από τον μηχανισμό προσαρμογής
ΜΟΝΤΕΛΟΠΟΙΩΝΤΑΣ ΤΟ HIPERLAN/2 ΦΥΣΙΚΟ ΕΠΙΠΕΔΟ Εισαγάγαμε στο περιβάλλον εξερεύνησης αρχιτεκτονικής μας το λειτουργικό πρότυπο πομποδεκτών, το όποιο ήταν αρχικά αναπτυγμένο και επικυρωμένο χρησιμοποιώντας ένα συνδυασμό C κώδικα και απόλυτα λειτουργικά μοντέλα ροής δεδομένων Χωρίσαμε τις αρχικές C διαδικασίες σε πολλαπλά μπλοκ. Αυτό ουσιαστικά περιλάμβανε αντιγραφή και επικόλληση του κώδικα επεξεργασίας δεδομένων στο πρότυπο που χρησιμοποιεί το VCC για κάθε περιγραφικό μπλοκ και ορισμό κάποιον λειτουργιών ελέγχου Συγκεκριμένα, χωρίσαμε τις λειτουργίες ελέγχου αυτές των δεδομένων γιατί χρειαζόντουσαν διαφορετικά υπολογιστικά μοντέλα (CFSM και ροής δεδομένων αντίστοιχα)
ΜΟΝΤΕΛΟΠΟΙΩΝΤΑΣ ΤΟ HIPERLAN/2 ΦΥΣΙΚΟ ΕΠΙΠΕΔΟ Hiperlan/2 εφαρμογη: διαγραμμα συμπεριφορας
Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΠΛΑΤΦΟΡΜΑ Σε αυτό το πρόγραμμα χαρτογραφήσαμε το πρότυπο Hiperlan/2 επάνω σε μια πραγματική επαναπροσδιοριζόμενη και ετερογενή πλατφόρμα για χαμηλής ισχύος πομποδέκτες που χρησιμοποιούνται στις ασύρματες εφαρμογές Πανεπιστήμιο Πατρών 23 Συστήματα σε Ολοκληρωμένα Κυκλώματα
Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΠΛΑΤΦΟΡΜΑ Διάφοροι πυρήνες συνδέονται μέσω του ευέλικτου πόρου επικοινωνίας, σε ένα crossbar δίαυλο που ονομάζεται XBar. Μερικοί από τους πυρήνες ( FFT and FIR), υλοποιούν υπολογιστικά-εντατικές λειτουργίες όπως ιδιαίτερα βελτιστοποιημένο IP με περιορισμένο εύρος προγραμματιστικότητας. Άλλοι πυρήνες είναι πολύ ευέλικτοι. Το Ενσωματωμένο χαμηλής ισχύος FPGA [357] παρέχει προγραμματιστικότητα επιπέδου bit και ο RISC μικροελεγκτης παρέχει πόρους για λειτουργίες ελέγχου της ροής δεδόμένων και εργασίες του επιπέδου MAC Πανεπιστήμιο Πατρών 24 Συστήματα σε Ολοκληρωμένα Κυκλώματα
Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΠΛΑΤΦΟΡΜΑ Διάγραμμα αρχιτεκτονικής μιας ασύρματης πλατφόρμας Πανεπιστήμιο Πατρών 25 Συστήματα σε Ολοκληρωμένα Κυκλώματα
Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΠΛΑΤΦΟΡΜΑ Κάθε στοιχείο δεδομένων που στέλνεται μέσω της crossbar συνδέεται με μια ιδιότητα που περιγράφει ποιο στόχο έχει να πετύχει και σε πιο νήμα ανήκει. Η crossbar είναι ένα παραμετροποιημένο μπλοκ με ένα ευέλικτο tradeoff μεταξύ του χώρου και της απόδοσης Πανεπιστήμιο Πατρών 26 Συστήματα σε Ολοκληρωμένα Κυκλώματα
Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΠΛΑΤΦΟΡΜΑ Ο αριθμός των παράλληλων slave προσβάσεων επιλέγεται κατά τον χρόνο παραμετροποίησης πλατφόρμας. Η crossbar διαιτησία χρησιμοποιεί firstcome, first-served σχήμα με σταθερές προτεραιότητες όποτε υπάρχουν αιτήσεις πολλαπλής πρόσβασης για κάποια slave ή όταν υπάρχουν περισσότερες αιτήσεις πρόσβασης από τον crossbar παραλληλισμός. Τέλος ένα Request/Grant/Acknowledge πρωτόκολλο χρησιμοποιείται μεταξύ των IPs για να προσαρμόσει τη ροή δεδομένων στις σωστές υπολογιστικές ταχύτητες Πανεπιστήμιο Πατρών 27 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΜΟΝΤΕΛΟΠΟΙΗΣΗ Μπορούμε να περιγράψουμε κάθε component σαν ένα αφαιρετικό API που ορίζει τις υπηρεσίες που προσφέρει στα υπόλοιπα component αρχιτεκτονικής και την επίδραση στην συνολική συμπεριφορά αρχιτεκτονικής και απόδοσης Πολλές υπηρεσίες της standard VCC βιβλιοθήκης χρησιμοποιούνται για να περιγραφούν μνήμες, registers, χρονοπρογραμματιστές και formatters δεδομένων. Επιπλέον σχεδιάσθηκαν νέοι ορισμοί υπηρεσιών για την μοντελοποίηση των πόρων διασύνδεσης crossbar που υποστηρίζουν ταυτόχρονες επικοινωνίες Πανεπιστήμιο Πατρών 28 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΜΟΝΤΕΛΟΠΟΙΗΣΗ XBAR υπηρεσία στοιβας Πανεπιστήμιο Πατρών 29 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΚΑΙ ΒΕΛΤΙΩΣΗ ΕΠΙΚΟΙΝΩΝΙΩΝ Η αντιστοίχηση μιας λειτουργίας στον πόρο της αρχιτεκτονικής καθορίζει μια πιθανή υλοποίηση και το κόστος απόδοσης σε όρους προβλεπόμενων καθυστερήσεων. Οι καθυστερήσεις των περιφερειακών του FFT και FIR δεν είναι εξαρτώμενες από δεδομένα γιατί είναι στατικά διασωληνωμένα IP. Έτσι αυτές οι καθυστερήσεις είναι ακριβείς και μπορούν να προκύψουν από καταγεγραμμένες προδιαγραφές ΙΡ και RTL εξομοιώσεις Πανεπιστήμιο Πατρών 30 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΚΑΙ ΒΕΛΤΙΩΣΗ ΕΠΙΚΟΙΝΩΝΙΩΝ Τα μοντέλα απόδοση για FPGA προκύπτουν από RTL κώδικα για λειτουργίες αντιστοιχισμένες σε αυτό. Από την άλλη η μοντελοποίηση απόδοσης ενός πολύπλοκου λειτουργικού μπλοκ που η netlist δομή του είναι πολύ διαφορετική από το διασωληνομένο κοινό μονοπάτι δεδομένων χρησριμοποιεί τον μηχανισμό του σχήματος Η τεχνική τυλίγματος καθυστέρησης που χρησιμοποιείται για μοντελοποίηση απόδοσης ενός συμπεριφοριστικού μπλοκ Πανεπιστήμιο Πατρών 31 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΚΑΙ ΒΕΛΤΙΩΣΗ ΕΠΙΚΟΙΝΩΝΙΩΝ FFT σκελετός pipeline (παράδειγμα delay block) Πανεπιστήμιο Πατρών 32 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΑΠΟΤΕΛΕΣΜΑΤΑ Χρησιμοποιώντας όλες τις προηγούμενες παρατηρήσεις παίρνουμε αποτελέσματα για κάποιες εξερευνήσεις που έγιναν, αποτιμώντας τα σενάρια διαφορετικών αντιστοιχήσεων για την εφαρμογή δέκτη χρησιμοποιώντας το προτεινόμενο αρχιτεκτονικό μοντέλο μονοπατιού δεδομένων Παίρνουμε αποτελέσματα για συνολικό latency και επιπτώσεις throughput από τις αρχιτεκτονικές επιλογές όπως η σχεδίαση της μνήμης, η βελτίωση των επικοινωνιών και οι στρατηγικές σχεδίασης FPGA Πανεπιστήμιο Πατρών 33 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΑΠΟΤΕΛΕΣΜΑΤΑ Παράδειγμα βελτίωσης επικοινωνίας για ροή δεδομένων FIFO Πανεπιστήμιο Πατρών 34 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΑΠΟΤΕΛΕΣΜΑΤΑ Εξερευνούμενος χωρικός σχεδιασμός για εφαρμογή πομπού Πανεπιστήμιο Πατρών 35 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΑΠΟΤΕΛΕΣΜΑΤΑ Το μέσο λάθος του VCC μοντέλου σε αριθμό κύκλων ρολογιού σε σχέση με το «χρυσό» RTL μοντέλο που υπάρχει για ένα από τα αναλυμένα σενάρια (SimA1), είναι καλύτερο κατα ±10%. Η εξομοίωση είναι επίσης αρκετά γρήγορη σε σχέση με άλλες μεθοδολογίες μοντελοποίησης SoC. Κάθε υπόθεση πειράματος που περιγράφεται παρακάτω απαιτεί 4 με 26 sec για να εξομοιώσει την μετάδοση 6 OFDM συμβόλων, παρουσιάζοντας 4000 με 2000 εξομοιούμενους κύκλους ρολογιού σε Pentium III 600-MHz με Windows NT. Η ταχύτητα της αντιστοίχησης των αλλαγών βελτίωσης είναι επίσης σημαντικές Πανεπιστήμιο Πατρών 36 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΑΠΟΤΕΛΕΣΜΑΤΑ Αποτελέσματα της εξερεύνησης χωρικού σχεδιασμού Πανεπιστήμιο Πατρών 37 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΒΕΛΤΙΩΣΗ ΕΠΙΚΟΙΝΩΝΙΑΣ Στην πρώτη εξερεύνηση αλλάξαμε την βελτίωση επικοινωνιών μεταξύ FPGA και FFT χρησιμοποιώντας κοινή μνήμη ή απευθείας σύνδεση μέσω διαύλου. Για κάθε περίπτωση αλλάχθηκε επίσης ο τύπος πρόσβασης στην μνήμη. Όλες αυτές οι περιπτώσεις αποτιμήθηκαν με δυο διαφορετικές FFT throughput εκτιμήσεις που αντιστοιχούν σε δύο διαφορετικές FFT αρχιτεκτονικές Επιβεβαιώθηκε ότι η αύξηση του αριθμού των πυλών πρόσβασης στην μνήμη μέσω του crossbar (SimAi/SimBi ή SimCi/SimDi) αλλάζει το ρυθμό bit για την εφαρμογή αλλά όχι παραπάνω από 25%. Πανεπιστήμιο Πατρών 38 Συστήματα σε Ολοκληρωμένα Κυκλώματα
ΒΕΛΤΙΩΣΗ ΕΠΙΚΟΙΝΩΝΙΑΣ Από τα προηγούμενα διαγράμματα υποθέτοντας ότι ο ρυθμός ρολογιού είναι 70 MHz, μπορούμε να εκτιμήσουμε το ρυθμό bit του μονοπατιού δεδομένων για κάθε αντιστοίχηση Αυτοί οι ρυθμοί δείχνουν ότι μόνο κάποιες αντιστοιχίσεις είναι συμβατές με τις προδιαγραφές του φυσικού επιπέδου Hiperlan/2 σε πλήρη ροή ταχύτητας που απαιτεί ρυθμό bit 12 Mbit/s. Το τρέχον μοντέλο συστήματος παρέχει μόνο latency/throughput πληροφορίες αλλά οι υπηρεσίες αρχιτεκτονικής μπορούν να επεκταθούν ώστε να παρέχουν πληροφορίες για χώρο και area και activity (ισχύος). Πανεπιστήμιο Πατρών 39 Συστήματα σε Ολοκληρωμένα Κυκλώματα
FPGA ΕΝΑΛΛΑΚΤΙΚΕΣ Στην επόμενη εξερεύνηση φαίνεται ότι είναι δυνατόν να αποτιμήσουμε το κόστος προσθήκης μιας νέας διεργασίας στον αλγόριθμο και ερευνούμε δύο σενάρια υλοποίησης που περιλαμβάνουν δυναμικό ενσωματωμένο FPGA επαναπροσδιορισμό. Ξεκινώντας από την περίπτωση SimB2, επεκτεινουμε το χωρικό σχεδιασμό εισάγωντας μια νέα λειτουργία (windowing), στο δίκτυο περιγραφης μεταξυ cyclic guard και FIR functions όπως φαινεται στο σχήμα Πανεπιστήμιο Πατρών 40 Συστήματα σε Ολοκληρωμένα Κυκλώματα
FPGA ΕΝΑΛΛΑΚΤΙΚΕΣ Εξερεύνηση χωρικού σχεδιασμού με windowing. Λειτουργικό δίκτυο και αποτελέσματα εξομοίωσης Πανεπιστήμιο Πατρών 41 Συστήματα σε Ολοκληρωμένα Κυκλώματα
FPGA ΕΝΑΛΛΑΚΤΙΚΕΣ Εκτελούνται δύο εξομοιώσεις. Στην πρώτη (SimB2a), υποθέτουμε ένα ενσωματωμένο FPGA που είναι αρκετά μεγάλο ώστε να υποστηρίζει ένα προσδιορισμό που να περιλαμβάνει μαζί την αντιστοίχιση και το windowing, το οποίο παρέχει μέγιστο παραλληλισμο αλλά ελάχιστη αποδοτικότητα χώρου Πανεπιστήμιο Πατρών 42 Συστήματα σε Ολοκληρωμένα Κυκλώματα
FPGA ΕΝΑΛΛΑΚΤΙΚΕΣ Στην δεύτερη (SimB2b), υποθέτουμε μονο ένα μικρό ενσωματωμένο FPGA, το οποίο μπορεί να επαναπροσδιοριστεί στον αέρα και να μεταβεί από την αντιστοίχιση στο windowing. Αυτό δημιουργεί ένα κόστος προσδιορισμού στην εκτιμηση απόδοσης που οδηγεί σε μια μετρήσιμη μείωση του ρυθμο bit. Στο τελευταίο σχήμα φαίνεται η απόδοση που προκύπτει όταν το κόστος επαναπροσδιορισμού είναι 500 κύκλοι ρολογιού Πανεπιστήμιο Πατρών 43 Συστήματα σε Ολοκληρωμένα Κυκλώματα