Ασφάλεια πολυπύρηνων ολοκληρωμένων ψηφιακών συστημάτων σε επίπεδο υλικού
Στις μέρες, όσο η τεχνολογία εξελίσσεται και λόγω του ότι σχεδόν το σύνολο των εταιρειών σχεδίασης υλικού δεν διαθέτουν εργοστάσια, εμφανίζονται καίρια ζητήματα όσον αφορά την ασφάλεια τόσο στο λογισμικό όσο και στο υλικό, στα οποία πρέπει να βρίσκονται λύσεις. Στο λογισμικό τα πράγματα είναι λίγο π...
Saved in:
| Main Authors: | , |
|---|---|
| Other Authors: | |
| Language: | el_GR |
| Published: |
2019
|
| Subjects: | |
| Online Access: | http://hdl.handle.net/11610/19499 |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | Στις μέρες, όσο η τεχνολογία εξελίσσεται και λόγω του ότι σχεδόν το σύνολο των εταιρειών σχεδίασης υλικού δεν διαθέτουν εργοστάσια, εμφανίζονται καίρια ζητήματα όσον αφορά την ασφάλεια τόσο στο λογισμικό όσο και στο υλικό, στα οποία πρέπει να βρίσκονται λύσεις. Στο λογισμικό τα πράγματα είναι λίγο πιο ώριμα καθώς υπάρχουν αρκετά προγράμματα, τα οποία εφόσον μολυνθεί ένα λογισμικό από κάποιον ιό μπορούν να τον βρουν και να λυθεί το πρόβλημα (δεν θα ασχοληθούμε στη συζήτηση αυτή με το πρόβλημα της ασφάλειας στις επικοινωνίες). Στο υλικό τα πράγματα είναι λίγο πιο δύσκολα και περίπλοκα καθώς, για να <<μολυνθεί>> ένα τμήμα υλικού, αυτό πρέπει να συμβεί κατά τη σχεδίαση ή την κατασκευή του, έτσι είναι εύκολο να κλαπεί ένας σχεδιασμός από κάποιον τρίτο. Αυτό έχει σαν αποτέλεσμα να υπάρχει μεγάλη οικονομική ζημιά σε πολλές εταιρείες οι οποίες σχεδιάζουν υλικό. Έτσι πρέπει συνεχώς να εξελίσσουμε τις τεχνικές που αφορούν την ασφάλεια στο υλικό. Στα πλαίσια αυτής της διπλωματικής εργασίας έχουμε ασχοληθεί με δύο τρόπους με τους μπορούμε να πετύχουμε τον στόχο μας, δηλαδή την ασφάλεια χρησιμοποιώντας το ενσωματωμένο δίκτυο διασύνδεσης μονάδων network on chip(NoC) μέσα σε ένα ολοκληρωμένο. Πιο συγκεκριμένα θέλουμε να διακόψουμε την ορθή επικοινωνία μεταξύ των μονάδων ενός ολοκληρωμένου όπου αυτό δεν έχει ενεργοποιηθεί από τον νόμιμο ιδιοκτήτη του με τη χρήση του NoC. Αρχικά όμως, για να το καταφέρουμε αυτό, πρέπει να κατανοήσουμε πως λειτουργεί ένα NoC αλλά και πιο συγκεκριμένα μια τοπολογία για mesh, καθώς επικεντρωθήκαμε σε αυτή σε βάθος. Για να διαπιστώσουμε αν αυτοί οι τρόποι είναι λειτουργικοί χρειαστήκαμε τη βοήθεια ενός προσομοιωτή, του popnet_simulator, ο οποίος προσομοιώνει την ακριβή λειτουργία ενός NoC σε mesh τοπολογία και είναι γραμμένος στη γλώσσα προγραμματισμού C++. Με τη βοήθειά του έπρεπε να τρέξουμε κάποια πειράματα, χρησιμοποιώντας διάφορες παραμετροποιήσεις , ώστε να δούμε αν όντως είναι αποδοτικοί αυτοί οι τρόποι ασφαλείας. Συγκεκριμένα προσομοιώσαμε τη μεταφορά πακέτων σε ένα mesh δίκτυο 5x5 κόμβων, στον οποίο μεταφέρονταν πακέτα από ένα αρχικό σημείο (x1,y1) σε ένα σημείο προορισμού (x2,y2), ανάένα πλήθος κύκλων ρολογιού, με χρήση του XY αλγορίθμου δρομολόγησης. Σκοπός μας ήταν, όταν εισάγονται τα πακέτα να κατευθύνονται σε τυχαίο προορισμό, ο οποίος στη μεγάλη πλειοψηφία των περιπτώσεων δεν αντιστοιχεί σε αυτόν της λειτουργίας του XY αλγόριθμου. Αυτό θα έχει σαν αποτέλεσμα να δημιουργείται συμφόρηση στο δίκτυο μας, καθώς θα υπάρχει εισαγωγή πακέτων τα οποία για να δρομολογηθούν θα πρέπει να περιμένουν την ολοκλήρωση των προηγούμενων που όμως έχουν σταλεί σε τυχαίους προορισμούς. Έτσι, εφόσον δημιουργηθεί συμφόρηση στο δίκτυο, δεν θα μπορούν να δρομολογηθούν άλλα πακέτα και το δίκτυο θα φτάνει σε κατάσταση κορεσμού και δεν θα μπορεί να διακινεί πακέτα των μονάδων του. |
|---|