Σχεδίαση µε CAD tools

Σχετικά έγγραφα
Μοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες.

7 η Θεµατική Ενότητα : Εισαγωγή στις Γλώσσες Περιγραφής Υλικού

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Γενικά χαρακτηριστικά, σύνταξη και τύποι. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 -

Πανεπιστήµιο Θεσσαλίας

Προσοµοίωση Συστηµάτων µε VHDL. (Peter Ashenden, The Students Guide to VHDL)

ς Ποιότητα ξιολόγηση Α

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

VHDL Εισαγωγικές έννοιες

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων

Κυκλωμάτων» Χειμερινό εξάμηνο

Εισαγωγή στη VHDL Υλοποίηση στο Quartus

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωμάτων

ΗΜΥ 210: Λογικός Σχεδιασµός, Εαρινό Εξάµηνο Ένα συνδυαστικό κύκλωµα µπορεί να περιγραφεί από: Φεβ-05. n-είσοδοι

Εισαγωγή Η VHDL υποστηρίζει τους εξής τρείς βασικούς και διαφορετικούς τρόπους περιγραφής

Σύνθεση Data Path. ιασύνδεσης. Μονάδες. Αριθµό Μονάδων. Τύπο Μονάδων. Unit Selection Unit Binding. λειτουργιών σε. Μονάδες. Αντιστοίχιση µεταβλητών &

Εισαγωγή στη Γλώσσα VHDL

ΕΙΣΑΓΩΓΙΚΟ ΕΓΧΕΙΡΙ ΙΟ ΓΙΑ ΣΧΕ ΙΑΣΜΟ ΜΕ ΧΡΗΣΗ ΤΗΣ ΓΛΩΣΣΑΣ VHDL

Structural VHDL. Structural VHDL

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Εισαγωγικές έννοιες για σχεδιασμό με τη VHDL

Σύνθεση Ψηφιακών Συστηµάτων. Χ. Καβουσιανός

H γλώσσα περιγραφής κυκλωµάτων VHDL

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Ακολουθιακός Κώδικας

Αλγόριθµοι Εκτίµησης Καθυστέρησης και

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers)

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Πακέτα και Συστατικά Στοιχεία (Υποκυκλώματα)

Σχεδίαση Υπολογιστικών

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

Σχεδίαση Ψηφιακών Συστημάτων

ιαµέριση - Partitioning

Ολοκλήρωση Σχεδίασης µε CAD-tools. (Back-End) Χρ. Καβουσιανός

VERILOG. Γενικά περί γλώσσας

Εργαστηριακή Άσκηση 4: Ιεραρχική σχεδίαση και προσχεδιασμένοι πυρήνες

σφαλμάτων Δημήτρης Νικολός, Τμήμα Μηχ. Ηλεκτρονικών Υπολογιστών και Πληροφορικής, Παν. Πατρών

ΚΕΦΑΛΑΙΟ Συνδυαστικά Κυκλώµατα. 3.2 Σχεδιασµός Συνδυαστικής Λογικής 3.3 ιαδικασία Ανάλυσης 3.4 ιαδικασία Σχεδιασµού.

Πανεπιστήµιο Αιγαίου Τµήµα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστηµάτων. 3η Άσκηση Logical Effort - Ένα ολοκληρωµένο παράδειγµα σχεδίασης

ΠΑΡΑΡΤΗΜΑ Β. Verification

Τεχνικές βελτιστοποίησης µε σκοπό την επίτευξη χαµηλής κατανάλωσης ισχύος

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Μηχανές Πεπερασμένων Καταστάσεων

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστηµάτων

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συντρέχων Κώδικας

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Τύποι Δεδομένων και Τελεστές

Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 -

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

ΗΥ220 Εργαστήριο Ψηφιακών Κυκλωµάτων

Διαφορές single-processor αρχιτεκτονικών και SoCs

Εργαστήριο Εισαγωγής στη Σχεδίαση Συστημάτων VLSI

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ

Ακολουθιακές εντολές. (Peter Ashenden, The Students Guide to VHDL)

ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση

ΑΣΚΗΣΗ 9η-10η ΑΡΙΘΜΗΤΙΚΗ-ΛΟΓΙΚΗ ΜΟΝΑΔΑ ΕΝΟΣ ΨΗΦΙΟΥ (1-BIT ALU)

Εργαστήριο Ψηφιακών Κυκλωμάτων

Εισαγωγή στον έλεγχο ορθής λειτουργίας ψηφιακών συστημάτων. Δημήτρης Νικολός, Τμήμα Μηχ. Ηλεκτρονικών Υπολογιστών και Πληροφορικής, Παν.

ΑΣΚΗΣΗ 2: Σχεδίαση και προσομοίωση κυκλωμάτων καταχωρητών και μετρητών

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα

Introduction to IP Cores

ΑΣΚΗΣΗ 1η ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΣΧΕΔΙΑΣΗΣ QUARTUS II ΤΗΣ ALTERA

Περιεχόμενα. Πρόλογος... XI. Κεφάλαιο 1. Συστήματα Βασισμένα σε FPGA Κεφάλαιο 2. Τεχνολογία VLSI Εισαγωγή Βασικές Αρχές...

Ψηφιακή Λογική και Σχεδίαση

Βασικές οµές Μοντελοποίησης. (Peter Ashenden, The Students Guide to VHDL)

Ενότητα 6 ΑΝΑΛΥΣΗ & ΣΥΝΘΕΣΗ ΣΥΝΔΥΑΣΤΙΚΗΣ ΛΟΓΙΚΗΣ ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ ΠΟΛΛΩΝ ΕΠΙΠΕΔΩΝ

Κυκλωμάτων» Χειμερινό εξάμηνο

Κεφάλαιο 14 ο. Γ. Τσιατούχας. VLSI Systems and Computer Architecture Lab. Σχεδιαστικές Μεθοδολογίες 2

Περιεχόµενα. Πρόλογος Εισαγωγή 21

VHDL Introduction. Subtitle

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 Συµπληρωµατική ΔΙΑΛΕΞΗ 14: Περιγραφή Ακολουθιακών Κυκλωµάτων στη VHDL

Ψηφιακά ολοκληρωμένα κυκλώματα

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συναρτήσεις, Διαδικασίες και Δομές Ελέγχου Λειτουργίας Κυκλωμάτων (testbenches)

Σχεδίαση Ψηφιακών Συστημάτων

8 η Θεµατική Ενότητα : Εισαγωγή στις Γλώσσες Περιγραφής Υλικού: Μοντέλα Συνδυαστικών Κυκλωµάτων

Πτυχιακή Εργασία Σχεδίαση κυκλωμάτων επικοινωνίας με απλές οθόνες, με τη γλώσσα VHDL και υλοποίηση στις αναπτυξιακές πλακέτες LP-2900 και DE2.

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Προχωρημένα Θέματα Σχεδιασμού με VHDL

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο

Library, package και subprograms

Σχεδίαση Ψηφιακών Συστημάτων

Οργάνωση της φυσικής δομής του ολοκληρωμένου κυκλώματος

Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ.

Εισαγωγή στα κυκλώµατα CMOS 2

5 η Θεµατική Ενότητα : Μνήµη & Προγραµµατιζόµενη Λογική. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

ηµιουργία Αρχείου Πρότζεκτ (.qpf)

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Δομική περιγραφή και περιγραφή Μηχανών Πεπερασμένων Καταστάσεων

ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο 2008

i Το τρανζίστορ αυτό είναι τύπου NMOS. Υπάρχει και το συμπληρωματικό PMOS. ; Τι συμβαίνει στο τρανζίστορ PMOS; Το τρανζίστορ MOS(FET)

Περιγραφή Κυκλωμάτων με χρήση της VHDL. Οντότητες και συντρέχουσες δηλώσεις

.Λιούπης. Ψηφιακά Ηλεκτρονικά Ακεραιότητα Ψηφιακού Σήµατος 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Σχεδιασμός Συνδυαστικών Κυκλωμάτων 1

Τομέας Υλικού και Αρχιτεκτονικής Υπολογιστών

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

ΠΕΡΙΕΧΟΜΕΝΑ Υλικό και Λογισμικό Αρχιτεκτονική Υπολογιστών Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Transcript:

Σχεδίαση µε CAD tools Χρ. Καβουσιανός Επίκουρος Καθηγητής

Εισαγωγή Σχεδίασης Σύγχρονες Απαιτήσεις Σχεδίασης Χρήση Αυτόµατων Εργαλείων (EDA) Εισαγωγή Σχεδίασης (design entry): Περιγραφή συστήµατος στην µορφή που αναγνωρίζει ένα εργαλείο Σχεδίαση Έλεγχο Τεκµηρίωση Κατασκευή Σχηµατικό Κύκλωµα Περιγραφή Κυκλώµατος σε χαµηλό επίπεδο Χρήση συµβόλων για πύλες Βολική για τον σχεδιαστή. Μετατροπή σε αρχείο για Η/Υ Χρήση κειµένου αντί για σύµβολα πυλών Βολική για κανονικές και επαναλαµβανόµενες δοµές. HDLs Ο σχεδιαστής περιγράφει & ο Η/Υ σχεδιάζει. Η περιγραφή γίνεται σε υψηλό και αφαιρετικό επίπεδο Αποδοτική σχεδίαση περίπλοκων συστηµάτων Σχεδίαση Κυκλωµάτων µε CAD 2

Μεθοδολογία Σχεδίασης Απαιτήσεις και Περιορισμοί Διερεύνηση Αρχιτεκτονικής και Διαμέριση A B Απαιτήσεις και Περιορισμοί Λογισμικού Απαιτήσεις και Περιορισμοί Υλικού Σύνθεση Επαλήθευση μετά τη σύνθεση Σχεδίαση Μονάδων S/W Σχεδίαση Μονάδων H/W Εντάξει; Όχι Επαλήθευση Μονάδων S/W Επαλήθευση Μονάδων H/W Ναι Φυσική Υλοποίηση Όχι Εντάξει; Ναι Εντάξει; Ναι Όχι Φυσική Επαλήθευση Ολοκλήρωση S/W Ολοκλήρωση H/W Integration H/W Εντάξει; Όχι Επαλήθευση Ολοκλήρωσης S/W Επαλήθευση Ολοκλήρωσης H/W Ναι Κατασκευή Όχι Εντάξει; Εντάξει; Ναι Ναι Όχι Δοκιμή A B Σχεδίαση Κυκλωµάτων µε CAD 3

ιαµέριση - Partitioning Εφαρµογή στρατηγικής ιαίρει και Βασίλευε για επίλυση προβληµάτων. Λογική ιαµέριση ιαµέριση Υλικού/Λογισµικού Προδιαγραφές Υψηλού Επιπέδου UML: Unified Modeling Language Σχεδίαση Κυκλωµάτων µε CAD 4

Σχεδίαση µε Σχηµατικό Είναι παλιά µέθοδος αλλά χρησιµοποιείται και σήµερα για σχεδίαση τυπωµένων καρτών. Η σχεδίαση γίνεται σε σελίδες ή φύλλα (schematic sheets). Σε κάθε σελίδα τοποθετούνται αντικείµενα, όπως λογικές πύλες και διασυνδέονται στα πλαίσια ενός κυκλώµατος. οµικά µ στοιχεία σχηµατικού: πύλες, θύρες ρς εισόδου/εξόδου και γραµµές διασύνδεσης. Τα ηλεκτρονικά στοιχεία τοποθετούνται πάνω σε πλέγµα σχεδίασης (Grid). Ένα κύκλωµα αποτελείται από περισσότερες της µίας σχηµατικές σελίδες. εν είναι καλή µέθοδος για πολύπλοκα κυκλώµατα (χρησιµοποιείται µόνο για PCBs) Σχεδίαση Κυκλωµάτων µε CAD 5

Σύµβολο θύρας εισόδου Όνοµα θύρας εισόδου Γραµµή µε Fanout 2 Σχεδίαση µε Σχηµατικό Σύµβολο πύλης ΚΑΙ Reference Designator Γραµµή ιασύνδεσης Σύµβολο θύρας εξόδου Επαφή Αριθµοί pins του component Όνοµα κυττάρου Σχεδίαση Κυκλωµάτων µε CAD 6

Σχεδίαση µε Σχηµατικό Τα αντικείµενα που τοποθετούνται σε ένα σχηµατικό επιλέγονται από µία βιβλιοθήκη κυττάρων (Design Library). Μία βιβλιοθήκη περιέχει πρωταρχικές πύλες (primitive gates). Τα κύτταρα (cells) περιέχουν πληροφορίες για διάφορα επίπεδα σχεδίασης: εικονίδιο, περιγραφή συµπεριφοράς,µέγεθος, δοµή, κατανάλωση κλπ. Πρόβληµα χρήσης εργαλείων: έλλειψη κοινής ονοµατολογίας, ακόµη και σε βασικά κύτταρα (cells). Μειονέκτηµα: δεν µπορεί να µεταφερθεί ένας σχεδιασµός από ένα εργαλείο µίας συγκεκριµένης εταιρίας σε ένα εργαλείο µίας άλλης εταιρίας. Σχεδίαση Κυκλωµάτων µε CAD 7

Ιεραρχική Σχεδίαση Για την µείωση του µεγέθους και της πολυπλοκότητας των σχηµατικών χρησιµοποιείται η τεχνική της ιεραρχίας: Οσχεδιασµός δεν εκτείνεται µόνο σε επιφάνεια, αλλά και σε επίπεδα, ώστε να µειώνεται η πολυπλοκότητα περιγραφής του. ηµιουργούµε κάποια σχηµατικά και τα αντιστοιχούµε σε ιεραρχικά blocks τα οποία αποκρύπτουν την δοµή των σχηµατικών. Τα ιεραρχικά blocks παρέχουν µόνο την απαραίτητη πληροφορία για την διασύνδεση τους, δηλαδή ονόµατα και τύπο εισόδων και εξόδων. Τα ιεραρχικά blocks µπορούν να χρησιµοποιηθούν για να σχηµατίσουν ιεραρχικά blocks υψηλότερου επιπέδου. Το κύκλωµα µετατρέπεται σε απλές λογικές πύλες, εφαρµόζοντας την διαδικασία επιπεδοποίησης της σχεδίασης (flattening). Σχεδίαση Κυκλωµάτων µε CAD 8

Ιεραρχική Σχεδίαση A 0 n 1 S A 1 A 2 Σχηµατικό C Ιεραρχικό block A 0 A 1 A 2 S C C in Σχηµατικό 4 bit αθροιστή Β 0 D 0 Β 1 D 1 Β 2 D 2 Β 3 D 3 FA 0 FA 1 FA 2 FA 3 A 0 A 1 A 2 S C A 0 A 1 A 2 S C A 0 A 1 A 2 S C A 0 A 1 A 2 S C C out S 0 S 1 S 2 S 3 Α 0 Α 1 Α 2 Α 3 Α 4 Α 5 Α 6 Α 7 Β 0 Β 1 Β 2 Β 3 Β 4 Β 5 Β 6 Β 7 Β 0 Β 1 Β 2 Β 3 D 0 D 1 D 2 D 3 Β 0 Β 1 Β 2 Β 3 D 0 D 1 D 2 D 3 Β 0 Β 1 Β 2 Β 3 D 0 D 1 D 2 D 3 C in C out S 0 S 1 S 2 S 3 Ιεραρχικό block Αθροιστή 4 Bits C in C out C in C out S 0 S 1 S 2 S 3 S 0 S 1 S 2 S 3 E 0 E 1 E 2 E 3 E 4 E 5 E 6 E 7 Σχηµατικό 8 bit αθροιστή Σχεδίαση Κυκλωµάτων µε CAD 9

Κανόνες Σχεδίασης Σχηµατικό Κάθε κύτταρο µπορεί να τοποθετηθεί σε πολλαπλά αντίγραφα στο ίδιο σχηµατικό. Κάθε αντίγραφο ονοµάζεται οντότητα (instance) και αποκτά µοναδικό όνοµα. Στην ιεραρχική περιγραφή ενός κυκλώµατος, τα ονόµατα δίνονται µε την δενδρική δ µορφή ή (σαν ονόµατα αρχείων σε µία ί δοµή δίσκου). ) Κάθε κύτταρο αναπαρίσταται από ένα σύµβολο (εικονίδιο). Για τα ιεραρχικά blocks δηµιουργούµε σύµβολα (συνήθως παραλληλόγραµµα) µεθύρες εισόδου/εξόδου για την διασύνδεση τους. Β 0 Β 1 Β 2 Β 3 D 0 D 1 D 2 D 3 C in C out S 0 S 1 S 2 S 3 Σχεδίαση Κυκλωµάτων µε CAD 10

Σχηµατικό Γραµµές ιασύνδεσης Εσωτερικές γραµµές: διασυνδέουν αντικείµενα ενός σχηµατικού. Εξωτερικές γραµµές: διασυνδέουν το σχηµατικό µε το περιβάλλον του (θύρες εισόδου/εξόδου). Τα ονόµατα γραµµών ακολουθούν την ιεραρχική ονοµατολογία. Οι γραµµές ξεκινούν και καταλήγουν στους ακροδέκτες (pins). Πολλά οµοειδή σήµατα, σχηµατίζουν διαύλους (buses). Χρησιµοποιούνται στα κυκλώµατα επεξεργασίας δεδοµένων (DataPaths). Σήµατα µηοµοειδή, οµαδοποιούνται σε bundles. Off-page connectors: διασυνδέουν πύλες που βρίσκονται σε διαφορετικές σελίδες. Σχεδίαση Κυκλωµάτων µε CAD 11

Σχηµατικό ύο γραµµές που τέµνονται σε ένα σηµείο ΕΝ είναι απαραίτητα διασυνδεδεµένες µεταξύ τους a a Επαφή (junction) b b Συνήθως το εργαλείο διευκρινίζει µε διάφορους τρόπους την ύπαρξη διασυνδέσεων, όπως µε την χρήση τελείας στο σηµείο τοµής. Σχεδίαση Κυκλωµάτων µε CAD 12

Σχηµατικό Components ή Κύτταρα (cells); Το component διαφέρει από το απλό κύτταρο καθώς αντιπροσωπεύει ένα ολοκληρωµένο, το οποίο µπορεί να αποτελείται από πολλαπλά όµοια κύτταρα. Ο σχεδιαστής εισάγει απλά κύτταρα. Το εργαλείο λί οµαδοποιήσει τα κύτταρα σε components (chips),µε στόχο την ελαχιστοποίηση των απαραίτητων διασυνδέσεων. Με βάση την οµαδοποίηση γίνεται και ανάθεση των αριθµών των pins (ακροδεκτών) του ολοκληρωµένου στις γραµµές του κυκλώµατος. Σχεδίαση Κυκλωµάτων µε CAD 13

Α B C D E F G H Σχηµατικό n 1 n 6 n 2 n 7 n 3 n 4 n 5 6 R 1 R 2 1A 1 1 Vcc 1A 1 1 Vcc 1B 2 2 4B 1B 2 2 4B Out 1Y 3 3 4A n 2 1Y 3 3 4A 2A 4 4 4Y 2A 4 4 4Y n 4 2B 5 5 3B 2B 5 5 3B n 1 2Y 6 6 3A 2Y 6 6 3A Gnd 7 7 3Y n 3 Gnd 7 7 3Y n 5 AB EFGHCD Out Connector Τα ονόµατα των components (R 1, R 2 ) ονοµάζονται "Reference Designators" και καθορίζονται αυτόµατα από το εργαλείο σχεδίασης Σχεδίαση Κυκλωµάτων µε CAD 14 n 7

Σχηµατικό Αφού ολοκληρωθεί η εισαγωγή της σχεδίασης, πρέπει να γίνει έλεγχος για πιθανά λάθη σχεδίασης από τον "Schematic screener". Τελικό βήµα: τοποθέτηση και διασύνδεση των στοιχείων στο PCB. Μετά την τοποθέτηση και διασύνδεση γίνονται γνωστές οι ακριβείς διασυνδέσεις (ακριβείς χωρητικότητες και καθυστερήσεις γραµµών). Το netlist ενός σχηµατικού χρησιµοποιείται για την περιγραφή του κυκλώµατος µε ASCII αρχείο. Χρησιµοποιείται για την επικοινωνία µεταξύ διαφορετικών εργαλείων (πχ. EDIF). Σχεδίαση Κυκλωµάτων µε CAD 15

Γλώσσες Σχεδίασης σε Χαµηλό Επίπεδο Περιγράφουν ένα κύκλωµα (σε επίπεδο δοµής) µε κείµενο. Η σχεδίαση µε χρήση σχηµατικού εµφανίζει προβλήµατα (π.χ. δυσκολίες αλλαγών σε υπάρχοντα σχηµατικά). Υπάρχουν σχεδιάσεις µε επαναλαµβανόµενα κύτταρα (µηχανές καταστάσεων, µνήµες κλπ). Η χρήση γλωσσών χαµηλού επιπέδου µπορεί να διευκολύνει σηµαντικά την περιγραφή επαναλαµβανόµενων σχηµάτων. ABEL CUPL Palasm Σχεδίαση Κυκλωµάτων µε CAD 16

Γλώσσες Περιγραφής HDL Η σχεδίαση µε χρήση γλωσσών περιγραφής είναι πλέον ο κυρίαρχος τρόπος περιγραφής συστηµάτων. Σχεδίαση απλή και γρήγορη: Ο σχεδιαστής περιγράφει βασικά χαρακτηριστικά και περιορισµούς Το εργαλείο καθορίζει λεπτοµέρειες υλοποίησης Οχρόνος σχεδίασης µειώνεται σηµαντικά Προβλέψιµη σχεδίαση: Η διαδικασία δ σύνθεσης ύθ εγγυάται ότι δεν θα γίνουν σχεδιαστικά λάθη. Η σχεδίαση τεκµηριώνεται εύκολα: Η περιγραφή είναι ένας καλός τρόπος τεκµηρίωσης Οι γλώσσες περιγραφής, περιγράφουν την συµπεριφορά του κυκλώµατος, ενώ οι γλώσσες σχεδίασης σε χαµηλό επίπεδο περιγράφουν την δοµή του. VHDL Verilog Σχεδίαση Κυκλωµάτων µε CAD 17

Σύνθεση Η σύνθεση λαµβάνει µία περιγραφή και δίνει µία λίστα (netlist) από κύτταρα βιβλιοθήκης, µετις διασυνδέσεις τους Εξοµοίωση Μοντέλο Συµπεριφοράς Σύνθεση οµικό Μοντέλο (netlist) Οι γλώσσες περιγραφής δηµιουργήθηκαν µόνο για λόγους τεκµηρίωσης και εξοµοίωσης ενός κυκλώµατος. Αργότερα εµφανίστηκε η ανάγκη για σύνθεση. Όλες οι γλωσσικές δοµές δεν µπορούν να είναι και συνθέσιµες. Κάθε περιγραφή είναι εξοµοιώσιµη αλλά λίγες µόνο συνθέσιµες. Σχεδίαση Κυκλωµάτων µε CAD 18

Σύνθεση Ένα από τα µεγάλα πλεονεκτήµατα της σύνθεσης είναι η δυνατότητα βελτιστοποίησης του τελικού κυκλώµατος. Γενικά λογικά Ανάλυση Επεξεργασία Βελτιστοποίηση κύτταρα Αντιστοίχιση σε τεχνολογία netlist Ελαχιστοποίηση της επιφάνειας. Βελτιστοποίηση κυκλώµατος: Μεγιστοποίηση της ταχύτητας. Ικανοποίηση περιορισµών λειτουργίας (ισχύς). Η αντιστοίχιση σε τεχνολογία (technology mapping library binding) οδηγεί σε παραπέρα βελτιστοποίηση του κυκλώµατος. Σχεδίαση Κυκλωµάτων µε CAD 19

Παράδειγµα Σύνθεσης library IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_unsigned.all; entity FA is port ( a,b,c :in std_logic; sum, cout: out std_logic); end FA; architecture Behavior of FA is signal int_sum: std_logic(1 downto 0); begin int_sum<=a+b+c; sum<=int_sum(0); cout<=int_sum(1); end architecture Behavior; Σχεδίαση Κυκλωµάτων µε CAD 20

Παράδειγµα Σύνθεσης 00 01 11 10 1 a bc C out = ab+bc+ac C out = a bc+ab c+abc +abc 0 Παραγοντοποίηση Αντικατάσταση Απαλοιφή Ελαχιστοποίηση 1 1 1 1 00 01 11 10 bc a Sum= a xor b xor c Sum= a b c+abc +ab c +abc 1 1 1 1 0 (1) 1 (2) Sum A B Library Binding C (3) Cout ΑΟ221(x,y,z,w,p)=xy+zw+p C out =ab+bc+ac=ab+bc+z µε z=ac οπότε C out =AOI221(a,b,b,c,z) (4) Σχεδίαση Κυκλωµάτων µε CAD 21

Εξοµοίωση Η εξοµοίωση είναι το βασικότερο εργαλείο επιβεβαίωσης της ορθότητας σχεδίασης ενός κυκλώµατος. Εξοµοίωση συµπεριφοράς (behavioral simulation). Εξοµοίωση λειτουργίας (functional simulation-unit delay). Είδη εξοµοίωσης: Στατική χρονική ανάλυση (static timing analysis), χωρίς διανύσµατα εισόδου. Εξοµοίωση σε επίπεδο πύλης (gate level simulation). Εξοµοίωση διακοπτών (switch level simulation). Εξοµοίωση transistor (transistor level simulation). Η πιο ακριβής εξοµοίωση γίνεται µετά την σχεδίαση του layout (Post- Layout Simulation) Σχεδίαση Κυκλωµάτων µε CAD 22

a b c a b c Sum Cout Εξοµοίωση 1.5 1.5 1 1 1 1 Sum Cout Πλήρης Αθροιστής Εξοµοίωση συµπεριφοράς a b c Sum Cout Τιµές 0, 1 U, X a Z b 1.5 c 3 3 3 3 Sum 2 2 2 Cout Εξοµοίωση πυλών Εξοµοίωση transistor Σχεδίαση Κυκλωµάτων µε CAD 23

Στατική Χρονική Ανάλυση O στατικός αναλυτής βρίσκει το/τα κρίσιµα µονοπάτια στο κύκλωµα: εν απαιτεί από τον σχεδιαστή να παρέχει τα διανύσµατα εξοµοίωσης. Η επεξεργασία του κυκλώµατος γίνεται στατικά (σαν ένας γράφος). εν δίνει τις συνθήκες ενεργοποίησης του κρίσιµου µονοπατιού (διάνυσµα εισόδου και εσωτερικών καταστάσεων). Ένα κρίσιµο µονοπάτι µπορεί να είναι λανθάνων. Υποτίµηση της συχνότητας του ρολογιού (Το κρίσιµο µονοπάτι είναι κάποιο µικρότερο) Σχεδίαση Κυκλωµάτων µε CAD 24

Στατική Χρονική Ανάλυση A D SET Q CLR Q B D SET Q CLR Q Κρίσιµο µονοπάτι Η στατική χρονική ανάλυση πρέπει να λαµβάνει υπόψη και τις καθυστερήσεις γραµµών που οφείλονται σε χωρητικότητες, Θα πρέπει να εκτελείται µετά και από την τοποθέτηση και διασύνδεση των κυττάρων στο ολοκληρωµένο Σχεδίαση Κυκλωµάτων µε CAD 25

Εξοµοίωση γεγονότων Η εξοµοίωση γεγονότων είναι το πιο κοινό είδος εξοµοίωσης (event driven simulation) : Είναι διαδεδοµένη γιατί θεωρείται αρκετά γρήγορη. Γεγονός (event): η αλλαγή τιµής σε κάποιον οποιονδήποτε κόµβο του κυκλώµατος. Η αλλαγή της τιµής σε κάποιον κόµβο, οδηγεί στην πιθανή αλλαγή τιµών σε άλλους κόµβους (οδηγούµενους). δ ύ Κάθε γεγονός δηµιουργεί µία αλληλουχία γεγονότων. Κάθε κόµβος έχει καθυστέρηση Τα γεγονότα δεν συµβαίνουν ταυτόχρονα µε το γεγονός που τα προκάλεσε, αλλά σε κάποιο µελλοντικό χρόνο. Σχεδίαση Κυκλωµάτων µε CAD 26

Εξοµοίωση γεγονότων Κάθε γεγονός προγραµµατίζει κάποια γεγονότα και καθορίζει και τον χρόνο που θα συµβούν. Όλα τα γεγονότα που προγραµµατίζονται µπαίνουν σε µία λίστα γεγονότων (ουρά γεγονότων). Ο εξοµοιωτής εκτελεί ένα γεγονός και προχωράει στο επόµενο. Κάθε γεγονός που εκτελείται, αφαιρείται από την λίστα. Ο χρόνος που µεσολαβεί ανάµεσα σε δύο γεγονότα αγνοείται καθώς δεν ενδιαφέρει τον εξοµοιωτή. Καθυστέρηση pin σε pin: από pin εισόδου σε pin εξόδου. Μοντελοποίηση καθυστέρησης λογικού κυττάρου Καθυστέρηση σε pin: καθυστέρηση σήµατος που καταλήγει σε κάποιο pin ενός κυττάρου. Καθυστέρηση διασύνδεσης: Η καθυστέρηση των γραµµών διασύνδεσης δύο κυττάρων. Σχεδίαση Κυκλωµάτων µε CAD 27

Α Β Γ 2 ns Φ Εξοµοίωση γεγονότων Α 4 Β 2 3ns Ζ Γ 1 3 Φ 2 ns 5 Ζ 3 ns 3 ns 3 ns t 0 t 1 t 2 t 3 t 4 t 5 t 6 t 7 Σχεδίαση Κυκλωµάτων µε CAD 28

Εξοµοίωση διακοπτών και transistor Είναι τα πιο ακριβή είδη εξοµοιώσεων, καθώς αντιµετωπίζουν το κύκλωµα σαν δίκτυο των βασικών δοµικών του στοιχείων (transistor). Εξοµοίωση διακοπτών: θεωρούµε το transistor ως ψηφιακό στοιχείο, το οποίο µπορεί να είναι on ή off, Εξοµοίωση transistor: θεωρείται µη γραµµικό αναλογικό στοιχείο. Απαιτούν µεγάλο χρόνο εκτέλεσης, ειδικά η εξοµοίωση transistor. Εξοµοιωτής transistor: SPICE υνατότητα εξοµοίωσης σε διάφορα επίπεδα (Levels). Κάθε επίπεδο µε διαφορετική ακρίβεια. Κάθε επίπεδο µε διαφορετική µοντελοποίηση transistor. Σχεδίαση Κυκλωµάτων µε CAD 29