Τα σύγχρονα κυκλώματα, από τα μέσα της δεκαετίας του '80, απολαμβάνουν
μια διαρκώς ωριμάζουσα ροή εργαλείων Ηλεκτρονικού Σχεδιαστικού Αυτοματισμού (EDA), η οποία αρχικά κατέστησε δυνατή την υλοποίηση
ολοκληρωμένων κυκλωμάτων με πολλά εκατομμύρια τρανζίστορ, ενώ σήμερα
διατηρεί τον ρυθμό ανάπτυξης της ηλεκτρονικής βιομηχανίας. Οι δύο
"ακρογωνιαίοι λίθοι" του EDA είναι η Χρονική Ανάλυση καί η
Βελτιστοποίηση των κυκλωμάτων βάση αυτής. Δυστυχώς, η συμβατική
Στατική Χρονική Ανάλυση, η καθιερωμένη δηλαδή διαδικασία, δεν μπορεί να εφαρμοστεί άμεσα σε ασύγχρονα κυκλώματα, καθώς τα τελευταία περιέχουν πάντα ανάδραση και έτσι είναι κυκλικά, δηλαδή κλειστού
βρόχου.
Ο κύριος λόγος για τον οποίο δεν χρησιμοποιούνται προσεγγίσεις
Ασύγχρονης Σχεδίασης είναι η έλλειψη ολοκληρωμένων και βιώσιμων
αυτοματοποιημένων ροών. Η παρούσα εργασία παρουσιάζει έναν
ολοκληρωμένο αλγόριθμο για Ασύγχρονη Χρονική Ανάλυση, κατάλληλο για EDA, που μπορεί να εφαρμοστεί για την ανάλυση του χρονισμού οποιουδήποτε ασύγχρονου κυκλώματος. Επιπλέον, παρουσιάζεται διαδικασία βετιστοποίησης, η οποία εκτελείται σε κλειστό βρόγχο και καθοδηγείται από τη χρονική ανάλυση.
Ο συγκεκριμένος αλγόριθμος χρονικής ανάλυσης έχει τα θεμέλιά του σε
προηγούμενη θεωρητική εργασία, η οποία αφορούσε ανάπτυξη αλγορίθμων
υπολογισμού ορίων ως προς τη χρονική απόκλιση συμβάντων παράλληλων
συστημάτων. Σημαντικός αριθμός από ελλείψεις και ανεπάρκειες της
προηγούμενης εργασίας ιασαφηνίστηκαν, ο ορισμός και τα χαρακτηριστικά του αλγορίθμου ολοκληρώθηκαν αλλά και βελτιώθηκαν, και επιτεύχθηκε τελικώς μία αποδοτική υλοποίηση.
Αποτελέσματα από την ανάλυση διάφορων ασύγχρονων κυκλωμάτων
επιδεικνύουν την αποδοτικότητα του υλοποιημένου αλγορίθμου και την
ικανότητά του να βελτιώνει αυτόματα και επιλεκτικά, τα μέν χρονικώς
κρίσιμα τμήματα ενός ασύγχρονου κυκλώματος ως προς την καθυστέρηση, τα δέ υπόλοιπα τμήματα ως προς το εμβαδό.
(EL)
Synchronous circuits have enjoyed, since the mid-80's, a constantly
maturing EDA tool/flow framework, which enabled the implementation of
multi-million transistor chips, and sustains the pace of the electronics industry. The cornerstones of EDA, which triggered its wide adoption are twofold, i.e. Timing Analysis and Timing
Analysis-Driven Optimization. Unfortunately, conventional Static
Timing Analysis cannot be directly applied to asynchronous circuits,
as the latter are closed-loop systems.
The primary reason why Asynchronous Design approaches are not attempted today is the lack of any viable and complete EDA flow. This work presents a complete Asynchronous Timing Analysis algorithm implementation, suitable for EDA, which is capable of analyzing the timing of any asynchronous circuit. This work also demonstrates closed-loop Timing Analysis-Driven optimization for asynchronous circuits.
The TA algorithm has its foundations in prior theoretical work on algorithms for deriving accurate bounds for the separation time between events of concurrent systems. Several insufficient and incomplete aspects of that work were clarified, completed and improved
and a complete and efficient implementation has been achieved.
Results on several asynchronous circuits demonstrate the viability of
the implemented algorithm, and the capability to automatically
optimize selectively the timing-critical subparts of an asynchronous circuit for timing and the other non-timing critical subparts for area.
(EN)