Αξιολόγηση Ποιότητας
Μέτρα Αξιολόγησης Τα µέτρα αξιολόγησης είναι απαραίτητα κατά την διαδικασία της σύνθεσης. Τα ακριβή µέτρα καθορίζουν την ποιότητα του τελικού κυκλώµατος και εντοπίζουν προβλήµατα. Τα καλά προσεγγιστικά µέτρα καθοδηγούν τα εργαλεία για επιλογή αποδοτικών σχεδιαστικών στυλ, αρχιτεκτονικών κλπ. Οι αποφάσεις που παίρνονται κατά την σύνθεση πρέπει να έχουν κάποιον οδηγό. Επιφάνεια Ελεγξιµότητα Μέτρα Απόδοση Αξιοπιστία Κατασκευασιµότητα Κατανάλωση Αξιολόγηση Ποιότητας 2
Μέτρα Αξιολόγησης Παραδείγµατα Αποφάσεων: Η µεγάλη καθυστέρηση ενός πολλαπλασιαστή µπορεί να οδηγήσει στην µετατροπή του σε δοµή pipeline. Μία δοµή pipeline έχει µεγαλύτερη κατανάλωση από µία απλή δοµή. Η χρήση τριών διαύλων απαιτεί περισσότερη επιφάνεια από τους δύο δίαυλους. Η εισαγωγή πλεονασµού δηµιουργεί προβλήµατα ελεγξιµότητας. Όλες οι σχεδιαστικές αποφάσεις βασίζονται σε αυτά τα µέτρα, οπότε πρέπει να είναι ακριβή. Αξιολόγηση Ποιότητας 3
Structural vs Physical Περιγραφή Συµπεριφοράς Σύνθεση οµή DtPth DataPath Control lunit Λειτουργικές Μονάδες Μονάδες ιασύνδεσης Μονάδες Αποθήκευσης ηµιουργεί σήµατα ελέγχου ενεργοποίησης µονάδων του DataPath Αξιολόγηση Ποιότητας 4
Αποτέλεσµα Σύνθεσης Structural Αξιολόγηση Ποιότητας 5
Μετατροπή Structural σε Physical Για την κατασκευή του κυκλώµατος δεν αρκεί η περιγραφή δοµής. Από το επίπεδο δοµής έως το κατασκευαστικό επίπεδο (Physical) ακολουθούµε κάποια βήµατα: Technology Mapping Partitioning i FloorPlanning Placement Routing Αξιολόγηση Ποιότητας 6
Μετατροπή Structural σε Physical...... entity CC1 is port (...) end CC1; architecture RTL of CC1 begin... end RTL; 0 0 0 0 & & 0 0 0 0 0 >=1 = 0 0 A B C D 0 (1) HDL ή Σχηµατική εισαγωγή κυκλώµατος (2) Λογική Σύνθεση (3) ιαµέριση A B C D (4) Χωροθέτηση (5) Τοποθέτηση (6) ιασύνδεση Αξιολόγηση Ποιότητας 7
Μετατροπή Structural σε Physical Control Unit DataPath Τελική Επιφάνεια Modules I/O pads routing wasted areas Αξιολόγηση Ποιότητας 8
Μετατροπή Structural σε Physical Αξιολόγηση Ποιότητας 9
Μέτρηση Επιφάνειας Επιφάνεια Λειτουργικές Μονάδες: ALUs, adders. mult/liers. Μονάδες διασύνδεσης: πολυπλέκτες, διάυλοι, γραµµές. Αποθηκευτικές Μονάδες: registers, ROMs RAMs. Μέθοδοι Μέθοδοι Μέτρηση τελεστών AND-OR- NOT στις Boolean εκφράσεις Ανάλογη στον αριθµό και το µέγεθος µονάδων διασύνδεσης. Αθροιστική επιφάνεια κυττάρων Αριθµός (transistors x µέσο µέγεθος transistors) Αριθµός και είσοδοι πολυπλεκτών χρησιµοποιούνται ως µέτρο. Αξιολόγηση Ποιότητας 10
Μέτρηση λογικών τελεστών F = (abc + bc + bde)(de+a) F = (bc de) (e a) 3 τελεστές ΚΑΙ-2 εισόδων 2 τελεστές ΚΑΙ-2 εισόδων 2 τελεστές ΚΑΙ-3 εισόδων 3 τελεστές ExOr-2 εισόδων 3 τελεστές Η-2 2 εισόδων Η δεξιά έκφραση είναι πιο οικονοµική από την αριστερή Αξιολόγηση Ποιότητας 11
Αθροιστική Επιφάνεια Κυττάρων Κύτταρο ΚΑΙ 2 είσοδων, Κύτταρο Η 2 είσοδων = 1 µονάδα επιφάνειας Κύτταρο ΚΑΙ 3 είσοδων = 1,5 µονάδες επιφάνειας Κύτταρο ExOr 2 είσοδων = 3 µονάδες επιφάνειας F = (abc + bc + bde)(de+a) F = (bc de) (e a) 9 µονάδες 11 µονάδες Η αριστερή έκφραση είναι πιο οικονοµική από την δεξιά Όσο πιο ακριβή είναι τα µέτρα µέτρησης τόσο πιο ακριβές είναι το αποτέλεσµα Αξιολόγηση Ποιότητας 12
Μέτρηση Μονάδων ιασύνδεσης Μονάδες που χρησιµοποιούνται για διασύνδεση ίαυλοι και γραµµές. Πολυπλέκτες. Παράδειγµα Αν θέλουµε να εκτελέσουµε τις πράξεις S<=A+B και S<=C+D µε έναν µόνο αθροιστή τότε η διασύνδεση θα γίνει µε πολυπλέκτες, αλλιώς µε διαύλους. Α C B D Α B C D S S S Αξιολόγηση Ποιότητας 13
Μέτρηση Επιφάνειας DataPath Τα DataPaths αποτελούνται από κανονικά δοµηµένα RT-components. Τοποθετούνται σε δισδιάστατη δοµή, µε κάθε στήλη να είναι ένα bit slice και κάθε γραµµή να είναι µία µονάδα λειτουργική. Αξιολόγηση Ποιότητας 14
Μέτρηση Επιφάνειας DataPath W dp = (#bits) x W bit H dp = Σ H dp (unit i ) Εκτιµώνται και τα κανάλια διασύνδεσης Αξιολόγηση Ποιότητας 15
Μέτρηση Επιφάνειας Control Unit Μία µονάδα ελέγχου περιγράφεται από τον πίνακα καταστάσεων. Αποτελείται από τον καταχωρητή κατάστασης και την λογική µετάβασης καταστάσεων. Η λογική µετάβασης καταστάσεων περιγράφεται µε λογικές εξισώσεις. Υπάρχουν πολλοί τρόποι υλοποίησης της λογικής αυτής: PLA Standard Cells Αξιολόγηση Ποιότητας 16
Μέτρηση Επιφάνειας Control Unit Αξιολόγηση Ποιότητας 17
Μέτρηση Control Unit µε Standard Cells Κάθε όρος είναι ένα άθροισµα παραγόντων και υλοποιείται µε AND-OR Χρησιµοποιούνται και εναλλακτικές δοµές όπως NAND-NAND. Αξιολόγηση Ποιότητας 18
Μέτρηση Control Unit µε Standard Cells A sc = W sc x H sc Αξιολόγηση Ποιότητας 19
Μέτρηση Control Unit µε PLAs A PLA = W PLA x H PLA Αξιολόγηση Ποιότητας 20
Μέτρηση Απόδοσης Απόδοση: Συχνότητα ρολογιού MIPs / MFLOPs Απόδοση Περιγραφής: # βηµάτων ελέγχου x Περίοδος Ρολογιού Τα βήµατα ελέγχου εξαρτώνται από τα δεδοµένα (Data Dependent) Βελτιστοποίηση Απόδοσης: Μεγιστοποίηση συχνότητας ρολογιού για δεδοµένο schedule Ελαχιστοποίηση αριθµού βηµάτων ελέγχου (µε προσθήκη υλικού για παραλληλοποίηση λειτουργιών) Αξιολόγηση Ποιότητας 21
Ηλεκτρικό Μοντέλο Αξιολόγηση Ποιότητας 22
Καθυστέρηση Συνδυαστικών Κυκλωµάτων Αξιολόγηση Ποιότητας 23
Καθυστέρηση Ακολουθιακών Στοιχείων Αξιολόγηση Ποιότητας 24
Κύκλος Ρολογιού Συστήµατος Ο συνολικός χρόνος εκτέλεσης είναι ίσος µε αριθµό βηµάτων ελέγχου επί περίοδο ρολογιού. Όταν το scheduling έχει υλοποιηθεί ο χρόνος εκτέλεσης καθορίζεται από την περίοδο ρολογιού Η περίοδος ρολογιού είναι καλή µετρική απόδοσης. Ο χρόνος κύκλου καθορίζεται από την µεγαλύτερη καθυστέρηση καταχωρητή σε καταχωρητή µαζί µε τις ενδιάµεσες καθυστερήσεις Αξιολόγηση Ποιότητας 25
Κύκλος Ρολογιού Συστήµατος Αξιολόγηση Ποιότητας 26
Κύκλος Ρολογιού Συστήµατος Πρέπει να λαµβάνεται υπόψη και η µονάδα ελέγχου. Αξιολόγηση Ποιότητας 27
Κύκλος Ρολογιού Συστήµατος Με pipelining ο κύκλος µπορεί να µειωθεί Αξιολόγηση Ποιότητας 28