Dynamic memory management exploration σε συστήματα πολλών accelerators με χρήση Vivado HLS - Δαβουρλή, Αγγελική (Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών, 2016)
Η συστοιχία επιτόπια προγραμματιζόμενων πυλών, από εδώ και στο εξής FPGA (field-programmable gate array), ονομάζεται ένας τύπος ολοκληρωμένου κυκλώματος γενικής χρήσης, το οποίο μπορεί να προγραμματιστεί πολλές φορές μετά την κατασκευή του. Αυτό το βασικό χαρακτηριστικό του αποτελεί τον κυριότερο λόγο για τον οποίο τα FPGAs χρησιμοποιούνται σε πολλούς τομείς της βιομηχανίας όπως την αεροδιαστημική και αμυντική βιομηχανία, την αυτοκινητοβιομηχανία, τις ιατρικές εφαρμογές, την επεξεργασία εικόνων και βίντεο, τις κινητές και σταθερές επικοινωνίες, την πληροφορική υψηλής απόδοσης (HPC) κ.ά. Δεδομένου όμως ότι ο προγραμματισμός του γίνεται με χρήση γλωσσών περιγραφής υλικού (HDL), το FPGA καθίσταται αρκετά δύσκολο για χρήση από τον μέσο προγραμματιστή, που ασχολείται με γλώσσες υψηλού επιπέδου. Για το λόγο αυτό, ταυτόχρονα με την ανάπτυξη των σύγχρονων συσκευών FPGA, αναπτύσονται και εργαλεία που εφαρμόζουν την ιδέα της Σύνθεσης Υψηλού Επιπέδου (High Level Synthesis, HLS). Η ιδέα του HLS αφορά την μετατροπή κώδικα γραμμένου σε κάποια γλώσσα υψηλού επιπέδου (π.χ. C/C++) σε γλώσσα περιγραφής υλικού [1]. Πέρα από την ιδέα του HLS, η ευρεία χρήση των FPGAs σε τεχνολογίες αιχμής έχει οδηγήσει στην ανάπτυξη ενός ακόμη σταδίου κατά τη διάρκεια της διαδικασίας σχεδιασμού λογισμικού, την Εξερεύνηση του Χώρου Λύσεων (Design Space Exploration, DSE). Η ιδέα του DSE αφορά την εξερεύνηση και την εξέταση όλων των δυνατών εναλλακτικών πριν την υλοποίηση ενός αλγορίθμου σε κώδικα [2]. Το DSE είναι ιδιαίτερα χρήσιμο στην περίπτωση των FPGAs, καθώς αυτά περιλαμβάνουν περιορισμένους πόρους σε υλικό (hardware resources).