Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/17911
Title: Fast Packet Classification on FPGA using RISC-V and binary search acceleration
Authors: Πνευματικού, Αρσινόη
Σούντρης Δημήτριος
Keywords: : RISC-V, Network Processors, FPGA, HW/SW Co-design, Packet Classification, Soft-Processor, HyperSplit, Hardware Accelerator, Binary Search
Issue Date: 23-Mar-2020
Abstract: Η ραγδαία εξέλιξη της τεχνολογίας, οι υψηλές ταχύτητες μετάδοσης της πληροφορίας, οι ανάγκες για υψηλή απόδοση και ο ανταγωνισμός έχουν οδηγήσει στην έρευνα για δημιουργία μοντέρνων επεξεργαστών δικτύου, με σκοπό να ικανοποιήσουν τις αυξημένες απαιτήσεις σε throughput και latency, προσπαθώντας να κρατήσουν όσο γίνεται περισσότερο την ευελιξία μιας CPU γενικού σκοπού. Παράλληλα, η δημιουργία ενός open-source ISA επεξεργαστή, του RISC-V, δίνει τη δυνατότητα σε μεγαλύτερο μέρος της ερευνητικής κοινότητας να ασχοληθεί με θέματα αρχιτεκτονικής και σχεδίασης. Συνδυάζοντας αυτά τα δύο, στη συγκεκριμένη διπλωματική εργασία θα προσπαθήσουμε να εκτελέσουμε λειτουργίες δικτύου σε σύστημα το οποίο συνδιάζει τον RISC-V με VHDL accelerators ειδικού σκοπού, δημιουργώντας έτσι μία HW/SW co-processing αρχιτεκτονική σχεδίαση. Για το σκοπό αυτό θα προσεγγίσουμε τη λειτουργία ενός Network processor χρησιμοποιώντας μία από τις πιο περίπλοκες και αντιπροσωπευτικές λειτουργίες δικτύου, το Packet Classification, και συγκεκριμένα τον αλγόριθμο HyperSplit, η εκτέλεση της δυαδικής αναζήτησης του οποίου θα είναι και η μετρική της απόδοσης του συστήματός μας. Θα επεκτείνουμε το instruction subset RV64IAC ISA του RISC-V προσθέτοντας μία νέα εντολή που θα αντιπροσωπεύει τη HyperSplit δυαδική αναζήτηση. Για τη σχεδίαση του hardware θα χρησιμοποιήσουμε τον Rocket Chip Generator, δημιουργώντας ένα configuration με έναν RISC-V core και την επιπλέον δυνατότητα επικοινωνίας με hardware accelerators. Θα δημιουργήσουμε έναν HyperSplit search hardware accelerator σε VHDL και θα χρησιμοποιήσουμε το RoCC interface για την επικοινωνία του με τον RISC-V main core. Υλοποιώντας τον accelerator της HyperSplit δυαδικής αναζήτησης σε ένα Xilinx Ultrascale xcku060 FPGA, αυτός καταναλώνει 5K LUT, 2K DFF, 0 DSP and 570 RAMB (53% του FPGA) πόρους για την αποθήκευση μέχρι και 381Κ κόμβους του δέντρου. Χρησιμοποιώντας pipeline με Ρ=5 stages ο accelerator πιάνει συχνότητα fclk=227MHz. Αντίστοιχα, ο RISC-V στο ίδιο FPGA καταναλώνει 15K LUT, 7K DFF, 0 DSP και 5 RAMB με fclk=143MHz. Η σχεδίασή μας τελικά επιτυχαίνει 113 φορές πιο γρήγορο classification από τον RISC-V χωρίς τον accelerator, υποστηρίζοντας με τους υπολογισμούς μας throughput έως και 25.4 εκ. packets/sec (ή ρούτερς με 8.1Gbps traffic)
URI: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/17911
Appears in Collections:Διπλωματικές Εργασίες - Theses

Files in This Item:
File Description SizeFormat 
ArsinoePnevmatikouThesis.pdf3.43 MBAdobe PDFView/Open


Items in Artemis are protected by copyright, with all rights reserved, unless otherwise indicated.