Timing optimization techniques for scalable physical synthesis of digital integrated circuits
Authors: Μαγγίρας Δημήτριος 
Published: December 2022

Η φυσική σχεδίαση αποτελεί ένα θεμελιώδες μέρος της ροής σχεδιασμού των σύγχρονων VLSI καθώς μετατρέπει αυτοματοποιημένα την περιγραφή της λειτουργίας του κυκλώματος από γλώσσες περιγραφής υλικού, όπως η Verilog και η VHDL, σε ολοκληρωμένα κυκλώματα έτοιμα για κατασκευή. Με τη συνεχόμενη όμως σμίκρυνση κατασκευής των ολοκληρωμένων κυκλωμάτων ακολουθώντας το νόμο του Moore, η τεχνολογία των ημιαγωγών παρέχει κατ' επανάληψη περισσότερα τρανζίστορ αυξάνοντας παράλληλα την πολυπλοκότητα σχεδίασης ενός ολοκληρωμένου κυκλώματος. Έτσι τα εργαλεία φυσικής σύνθεσης πρέπει να παρέχουν αποτελεσματικά κυκλώματα ικανοποιώντας δύο αντιφατικούς στόχους. Πρώτος στόχος είναι η ποιότητα των τελικών αποτελεσμάτων. Δηλαδή το τελικό κύκλωμα να μην παραβιάζει τους περιορισμούς χρονισμού, εμβαδού και ισχύος. Ενώ ο δεύτερος στόχος είναι η αποδοτικότητα. Έτσι, οι πολύπλοκοι αλγόριθμοι φυσικής σύνθεσης θα πρέπει να εκτελούνται γρήγορα ώστε να είναι εφικτή η υλοποίηση ακόμη και του πιο σύνθετου κυκλώματος σε ένα εύλογο χρόνο. Η παρούσα Διατριβή ασχολείται ακριβώς με αυτούς τους δύο στόχους εστιάζοντας στην ικανοποίηση των χρονικών περιορισμών των σύγχρονων πολύπλοκων ψηφιακών κυκλωμάτων. Η ικανοποίηση των χρονικών περιορισμών αποτελεί μία σύνθετη διαδικασία που αποτελείται από πολλαπλές επαναληπτικές μεθόδους που εφαρμόζονται σε διάφορα στάδια της φυσικής σύνθεσης. Με την περαιτέρω όμως σμίκρυνση της τεχνολογίας κατασκευής των ολοκληρωμένων κυκλωμάτων, οι τεχνικές βελτιστοποίησης του χρονισμού καλούνται να αντιμετωπίσουν αποτελεσματικά νέες προκλήσεις. Έτσι, στην παρούσα Διατριβή προτείνονται τέσσερεις διαφορετικές τεχνικές βελτιστοποίησης της χρονικής συμπεριφοράς των κυκλωμάτων που μπορούν να εφαρμοστούν εξίσου αποτελεσματικά στα αρχικά αλλά και στα τελικά στάδια της ροής φυσικής σύνθεσης. Επίσης, όλες οι προτεινόμενες μέθοδοι έχουν σχεδιαστεί ώστε να εγγυώνται τη γρήγορη ολοκλήρωσή τους ακόμη και σε κυκλώματα μεγάλων διαστάσεων χωρίς να υποβιβάζουν την ποιότητα των τελικών αποτελεσμάτων. Η πρώτη μέθοδος επανατοποθετεί τα κελιά του κυκλώματος με στόχο τη βελτίωση της χρονικής τους συμπεριφοράς λαμβάνοντας υπόψιν τα ιδιαίτερα χαρακτηριστικά της κάθε περίπτωσης (λογικές πύλες και φλιπ φλοπς), διατηρώντας όμως την ποιότητα του κυκλώματος όσον αφορά το συνολικό μήκος καλωδίου και την πυκνότητα χωροθέτησης. Η επαναληπτική μέθοδο βελτιστοποίησης βασίζεται στις αρχές της μη γραμμικής βελτιστοποίησης με περιορισμούς και της αφαίρεσης τους μέσω των πολλαπλασιαστών Langrange. Οι επόμενες δύο μέθοδοι καθορίζουν το μέγεθος των κελιών με σκοπό τη βελτίωση της χρονικής συμπεριφοράς του κυκλώματος χωρίς να αυξηθεί το συνολικό εμβαδόν και η κατανάλωση ισχύος. Αρχικά, προτείνεται μία νέα αρχικοποίηση των πολλαπλασιαστών Lagrange ώστε οι μέθοδοι για τον καθορισμό των μεγεθών των κελιών που χρησιμοποιούνται στα αρχικά στάδια της φυσικής σχεδίασης να μπορούν να εφαρμοστούν εξίσου αποτελεσματικά και στα τελευταία στάδια όπου οι βαθμοί ελευθερίας είναι περιορισμένοι επιτυγχάνοντας ταχύτερη σύγκλιση. Στη συνέχεια, προτείνονται τρόποι επιτάχυνσης των μεθόδων βελτιστοποίησης του χρονισμού των κυκλωμάτων μέσω παράλληλου προγραμματισμού (task-based parallel programming) για την αξιοσημείωτη βελτίωση του χρόνου εκτέλεσης των αλγορίθμων χωρίς την υποβάθμιση των χαρακτηριστικών των κυκλωμάτων. Τέλος, προτείνεται μία νέα τεχνική συσταδοποίησης (clustering) των ακολουθιακών κελιών του κυκλώματος (φλιπ-φλοπς και κελιά απενεργοποίησης του ρολογιού) με στόχο τη δημιουργία ενός βελτιστοποιημένου δικτύου διαμοίρασης ρολογιού περισσότερο ανθεκτικό στις μεταβολές χρονισμού που προκύπτουν από τις διακυμάνσεις στα χαρακτηριστικά του κυκλώματος. Σε κάθε περίπτωση, τα πειραματικά αποτελέσματα όλων των προτεινόμενων μεθόδων αποδεικνύουν την αποτελεσματικότητά και την αποδοτικότητά τους τόσο στη βελτίωση του χρονισμού των κυκλωμάτων των μεθόδων όσο και στο συνολικό χρόνο εκτέλεσης.