This item is provided by the institution :

Repository :
E-Locus Institutional Repository
see the original item page
in the repository's web site and access all digital files if the item*

2009 (EN)
Υλοποίηση σε FPGA ενός ελεγκτή κρυφής μνήμης με ρυθμιζόμενο χώρο SRAM
FPGA implemetation of a cache controller with configurable scratchpad space

Νικηφόρος, Γιώργος

Κατεβαίνης, Μανόλης

Τα *chips* Πολυεπεξεργαστικών Συστημάτων αποτελούν την βασική αρχιτεκτονική τάση από τα μέσα της δεκαετίας. Ενσωματώνουν πολλαπλούς πυρήνες επεξεργασίας στο ίδιο *chip*. Σχεδιάσαμε και υλοποιήσαμε ένα ελεκτή *(controller)* κρύφης μνήμης με ρυθμιζόμενο *SRAM* χώρο για πολυεπεξεργαστικά συστήματα που εξυπηρετούν τις ανάγκες για επικοινωνία μεταξυ των επεξεργαστών των μελλοντικών *chips*. Το υλοποιημένο σύστημα ενοποιεί δύο διαφορετικά είδη επικοινωνίας –*cacheable* και *DMA*(*scratchpad*)- προκειμένου να υποστηρίξει λειτουργίες όπως μεταφορά δεδομένων(*streaming*, μηνύματα ή *cache* *lines*), ανίχνευση γεγονότων και απάντηση σε αυτά(αποστολή/λήψη γεγονότων, ή αστοχίες κρυφής μνήμης), συμφωνα με τις απαιτήσεις των εφαρμογών. Συγκεκριμένα, υλοποιούμε ένα πρωτότυπο βασισμένο σε *FPGA*, το οποίο αποτελεί έναν κόμβο ενός Πολυεπεξεργαστικού *chip* με ένα ελεκτή κρυφής μνήμης που χειρίζεται και *SRAM* περιοχές. Η προτινόμενη υλοποίηση χρησιμοποιεί τον επεξεργαστή *MicroBlaze* που υποστηρίζεται από την *FPGA*. Υλοποιηούμε μια εξωτερική κρυφή μνήμη με ενσωματομένη *SRAM*, με τεχνικές πρόβλεψης του σημείου που βρίσκονται τα δεδομένα και λειτουργίες *DMA* μέσω διεπαφών δικτύου οι οποίες τοποθετήθηκαν (κοντά) στο δεύτερο επίπεδο ιεραρχίας μνήμης. Διαπιστώσαμε ότι το κόστος του συστήματός σε εμβαδόν είναι το ένα πέμπτο μιας μεσαίου μεγέθους *FPGA*. Η υλοποιημένη αρχιτεκτονική είναι 8% αποδοτικότερη μια αρχιτεκτονική με δύο ξεχωριστούς ελεγκτές για κρυφή μνήμη και *DMA*. Αξιολογούμε την απόδοση του συστήματος μέσω εξομοιώσεων, προσομοιώσεων και ειδικών απλών προγραμμάτων που εκτελούνται σε *MicroBlaze*. Τα ειδικά αυτά προγράμματα εξομοιώνουν βασικές λειτουργίες που παρατηρούνται σε κανονικά προγράμματα. (EL)
Chip Multiprocessors (CMPs) are the dominant architectural approach since the middle of this decade. They integrate multiple processing cores on a single chip. We designed and implemented a Cache Controller with configurable Scratchpad space for multi-core systems that serves the needs for interprocessor communication (IPC) of future CMPs. The proposed controller reconciles cacheable and scratchpad styles of communication in order to support hardware operations such as shipping blocks of data (either streaming, or messages, or cache lines) and detecting events and responding to them(either send/receive events, or cache miss), as the demands of new applications require. Specifically, an FPGA-based prototype is implemented, which constitutes a node of a multicore chip with a cache controller which manipulates scratchpad regions also. The design takes advantage of the MicroBlaze softcore that is supported in the FPGA fabric. We implement external integrated L2 Cache-Scratchpad memory equipped with way prediction techniques and DMA functionalities through a Network Interface tightly coupled to the second level of memory hierarchy. Our Design consumes one fifth of the resources in a medium-size FPGA. The design is 8% more efficient than the sum of two distinct controllers of cache and Network Interface. We evaluate the performance of the system by using both simulations and custom software benchmarks running on MicroBlaze. Our custom benchmarks simulate basic operations found commonly in programs. (EN)

Τύπος Εργασίας--Μεταπτυχιακές εργασίες ειδίκευσης



Σχολή/Τμήμα--Σχολή Θετικών και Τεχνολογικών Επιστημών--Τμήμα Επιστήμης Υπολογιστών--Μεταπτυχιακές εργασίες ειδίκευσης

*Institutions are responsible for keeping their URLs functional (digital file, item page in repository site)