HEAL DSpace

Implementing a TLB Generator with Chisel for RISC-V architecture

Αποθετήριο DSpace/Manakin

Εμφάνιση απλής εγγραφής

dc.contributor.author Παπαδόπουλος, Νικόλαος Χαράλαμπος el
dc.contributor.author Papadopoulos, Nikolaos Charalampos en
dc.date.accessioned 2020-05-26T13:12:40Z
dc.date.available 2020-05-26T13:12:40Z
dc.identifier.uri https://dspace.lib.ntua.gr/xmlui/handle/123456789/50653
dc.identifier.uri http://dx.doi.org/10.26240/heal.ntua.18351
dc.rights Αναφορά Δημιουργού-Μη Εμπορική Χρήση 3.0 Ελλάδα *
dc.rights.uri http://creativecommons.org/licenses/by-nc/3.0/gr/ *
dc.subject RISC-V en
dc.subject Rocket Chip Generator en
dc.subject TLB en
dc.subject Memory Management Unit en
dc.subject FPGA en
dc.subject Μονάδα διαχείρισης μνήμης el
dc.subject Αρχιτεκτονική Συνόλου Εντολών el
dc.subject Κρυφή μνήμη αναζήτησης μετάφρασης el
dc.subject Σχεδίαση Υλικού el
dc.subject Chisel en
dc.subject Verilator en
dc.title Implementing a TLB Generator with Chisel for RISC-V architecture en
heal.type bachelorThesis
heal.classification Αρχιτεκτονική υπολογιστών el
heal.language el
heal.access free
heal.recordProvider ntua el
heal.publicationDate 2019-11-11
heal.abstract Ο RISC-V είναι μία ανοιχτή Αρχιτεκτονική Συνόλου Εντολών που αναπτύχθηκε από το Πανεπιστήμιο της Καλιφόρνια, Μπέρκλεϋ. Αρχικά ο RISC-V σχεδιάστηκε για ερευνητικούς και εκπαιδευτικούς σκοπούς, αλλά η ανοιχτή φύση του οδηγεί μέρα με την μέρα στην ευρεία αποδοχή του και από την βιομηχανία. Ο RISC-V έχει υλοποιηθεί σε μικροαρχιτεκτονική από οργανισμούς ανά τον κόσμο, με τον Rocket Chip Generator να είναι μία από τις βασικότερες υλοποιήσεις. Ο Rocket Chip Generator είναι μία βιβλιοθήκη παραμετροποιήσιμων μερών επεξεργαστών τα οποία συνδυάζονται για να παράξουν μία ευρεία γκάμα υπολογιστικών συστημάτων, από μικρούς ενσωματωμένους επεξεργαστές μέχρι πολύπλοκα πολυπύρηνα συστήματα. Είναι υλοποιημένος στην Chisel, μία γλώσσα ανάπτυξης υλικού που επιτρέπει την δημιουργία πολύπλοκων αλλά ευέλικτων σχεδίων κυκλωμάτων για ASIC καθώς και για FPGA. Στην παρούσα εργασία ερευνούμε την ροή ανάπτυξης υλικού στον Rocket Chip Generator με εργαλεία προσομοίωσης υλικού και συγκεκριμένα τον Verilator καθώς και FPGA για γρήγορο έλεγχο. Επικεντρωνόμαστε στην μονάδα διαχείρισης μνήμης του Rocket Chip Generator, και ειδικότερα στον Translation Lookaside Buffer (TLB). Το TLB είναι μία μικρή κρυφή μνήμη που κρατάει τις μεταφράσεις από εικονικές σε φυσικές διευθύνσεις μνήμης για τις οποίες υπεύθυνη είναι η μονάδα διαχείρισης μνήμης. Το TLB του Rocket Chip Generator είναι πλήρως-συσχετιστικό και παραμετροποιήσιμο ως προς τον αριθμό των θέσεων. Το πρόβλημα που προκύπτει από τα πλήρως-συσχετιστικά TLB εντοπίζεται στην μεγάλη αύξηση του μεγέθους του κυκλώματος αναζήτησης μετάφρασης εντός της κρυφής μνήμης όσο αυξάνονται οι θέσεις. Επειδή το TLB είναι στο Critical Path του επεξεργαστή μπορεί να μειώσει δραστικά την επίδοση του, με την περίπτωση του Rocket Chip Generator να εμφανίζει μείωση 50% στον χρονισμό με αύξηση μεγέθους από 32 σε 512 θέσεις. Παραμετροποιούμε το TLB του Rocket Chip Generator μετατρέποντας το σε συχετιστικό-ανά-σετ με ευέλικτους τους αριθμούς set και ways. Η γεννήτρια TLB που σχεδιάσαμε μπορεί να παράξει από άμεσης-απεικόνισης έως πλήρως-συσχετιστικό TLB αναλόγως την εφαρμογή και τις επιδόσεις που μας ενδιαφέρουν. Τέλος, εξετάζουμε την σχεδίαση του παραμετροποιήσιμου TLB που υλοποιήσαμε έναντι του αρχικού σε σχέση με την κατανάλωση πόρων του FPGA, το critical path καθώς και την απόδοση τους χρησιμοποιώντας μετροπρογράμματα της σουίτας SPEC2006. el
heal.abstract RISC-V is an open Instruction Set Architecture (ISA) developed by UC Berkeley. Initially designed for research and education, the open nature of RISC-V promotes collaboration both in industry and academia. RISC-V has been implemented and fabricated by many institutions around the world, one of those implementation being the open-source Rocket Chip Generator. Rocket Chip Generator is a library of parametrized processor parts put together to form a powerful tool that can produce a wide variety of processor designs ranging from tiny embedded processors to complex multi-core systems. It is written in Chisel, a hardware design language that features advanced circuit design and generation for both ASIC and FPGA targets. In this thesis we will explore the hardware design flow using Rocket Chip Generator with hardware emulation tools and FPGA for fast testing. We will demonstrate the powerful features of Chisel by analyzing, implementing and testing a Translation Lookaside Buffer (TLB) generator. The TLB acts as a fast cache for virtual to physical address translations handled by the Memory Management Unit (MMU) of a processor. Rocket Chip Generator uses a fully-associative TLB with customizable number of entries. When the TLB entries are many, the tag matching circuit becomes complex and large because of the fully-associative mechanism . The TLB lies on the critical path of the processor and can quickly degrade perfrormance: There is 50% reduction in clock rate from 32 to 512 entries on the Rocket Chip Generator. We modify the TLB and implement a TLB generator with variable sets and ways. Our TLB Generator can produce from direct-mapped to fully-associative designs depending on our needs on performance and area. We assess our design against the original TLB in terms of FPGA resources, critical path and performance based on benchmarks of the SPEC2006 suite. en
heal.advisorName Κοζύρης, Νεκτάριος el
heal.committeeMemberName Κοζύρης, Νεκτάριος el
heal.committeeMemberName Γκούμας, Γεώργιος el
heal.committeeMemberName Πνευματικάτος, Διονύσιος el
heal.academicPublisher Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών el
heal.academicPublisherID ntua
heal.numberOfPages 67 σ.
heal.fullTextAvailability false


Αρχεία σε αυτό το τεκμήριο

Οι παρακάτω άδειες σχετίζονται με αυτό το τεκμήριο:

Αυτό το τεκμήριο εμφανίζεται στην ακόλουθη συλλογή(ές)

Εμφάνιση απλής εγγραφής

Αναφορά Δημιουργού-Μη Εμπορική Χρήση 3.0 Ελλάδα Εκτός από όπου ορίζεται κάτι διαφορετικό, αυτή η άδεια περιγράφεται ως Αναφορά Δημιουργού-Μη Εμπορική Χρήση 3.0 Ελλάδα