Υλοποίηση εφαρμογής γραφικών σε fpga με χρήση παράλληλων postfix CPUs και διαμοιραζόμενη μνήμη
Loading...
Date
Authors
Στουρνάρας, Αντώνης
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Από το 1986 μέχρι και το 2002 η απόδοση των μικροεπεξεργαστών αυξανόταν κατά περίπου 50% κάθε χρόνο. Από το 2002 και έπειτα όμως η απόδοση αυτή επιβραδύνθηκε σε μόλις 20% ανά έτος, δηλαδή από εκεί που η απόδοση αυξανόταν με έναν πολλαπλασιαστικό παράγοντα ίσο με 60 μέσα σε δέκα χρόνια, αυτός ο παράγοντας έπεσε μόλις στο 6. Έτσι από το 2005 περίπου προκειμένου να αυξηθεί η απόδοση στραφήκαμε στη λύση της παραλληλίας, δηλαδή στην "συνεργασία" πολλών επεξεργαστών έτσι ώστε να ολοκληρώνονται περισσότερες εργασίες στον ίδιο χρόνο. Έτσι εδώ και αρκετό καιρό οι παράλληλοι επεξεργαστές βρίσκονται παντού γύρω μας και χρησιμοποιούνται για γενική χρήση, σε ενσωματωμένα συστήματα, στο διαδίκτυο, στην επεξεργασία σήματος και στα γραφικά. Ακόμη τα τελευταία χρόνια η σημαντική πρόοδος των FPGAs και η ευλυγισία των μετατροπών που προσφέρουν προκειμένου να ταιριάξουν
σε κάθε εφαρμογή, οδήγησαν κάποιους επιστήμονες να χωρέσουν μέσα σε FPGAs έναν οι περισσότερους μικροεπεξεργαστές. Υπάρχουν σχεδιαστές που τοποθέτησαν δεκάδες η και εκατοντάδες από επεξεργαστές μέσα σε ένα FPGA. Στην παρούσα εργασία τρία αντίγραφα ενός stack machine επεξεργαστή
δουλεύουν παράλληλα τρέχοντας έναν αλγόριθμό που μοντελοποιεί μια φυσική διαδικασία η οποία καλείται συσσωμάτωση περιορισμένης διάχυσης ( Diffusion-limited aggregation-DLA). Η πρόσβαση στην μνήμη γίνεται χωρίς περιορισμούς
γενικά, υπάρχει όμως η δυνατότητα κλειδώματος( lock) μέσω αμοιβαίου αποκλεισμού( mutex). Με βάση την αρχιτεκτονική του επεξεργαστή αναπτύχθηκε μεταγλωττιστής-συμβολομεταφραστής που παράγει τον κατάλληλο κώδικα
μηχανής. Η αναπτυξιακή πλακέτα που χρησιμοποιήθηκε είναι η xc3s1000-4ft256 που ανήκει στην οικογένεια Spartan3 της εταιρίας Xilinx. O χρονισμός του επεξεργαστή είναι στα 50 Mhz. Από τους πόρους της πλακέτας γίνεται εκτεταμένη χρήση των block rams σε ποσοστό 100% εξαιτίας του ότι η πλακέτα δεν διαθέτει κάποια εξωτερική SRAM και έπρεπε να υλοποιηθεί μία εντός του FPGA. Τρέχοντας τον αλγόριθμό για σταθερό αριθμό σωματιδίων με τους τρεις παράλληλους επεξεργαστές παίρνουμε μια αύξηση της επίδοσης κατά περίπου 81,23%.
Description
Keywords
Μικροεπεξεργαστές, Συσσωμάτωση περιορισμένης διάχυσης