E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. ·...

115
E-CAD

Transcript of E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. ·...

Page 1: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

E-CAD

Page 2: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Στοιχεία Ψηφιακού Κυκλώματος

• Συνδυαστικά Στοιχεία – ΑΝD – OR – NOT – XOR – NAND – NOR – XNOR

• Aκολουθιακά στοιχεία (στοιχεία μνήμης) – Latches – Flip – flops – Tύπου D : εστιάζουμε σε αυτά γιατί είναι τα οικονομικότερα. – Αλλάζουν κατάσταση (ισοδύναμα τιμή στην έξοδό τους) μόνο όταν

ενεργοποιηθούν – Ενεργοποιούνται σε διακριτές χρονικές περιόδους μέσω της εφαρμογής ενός

σήματος χρονισμού (ρολόι).

Page 3: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Latch vs Flip - flop

• Latch : Ενεργό με στάθμη δυναμικού • Flip – Flop : Ενεργό μόνο κατά τη μετάβαση (ακμοπυροδότητο)

D

clk

Q flip-flop

Q latch

Page 4: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Γιατί χρειάζονται τα flip-flops ?

Στοιχεία Μνήμης(Ακολουθιακά)

ΣυνδυαστικάΚυκλώματα

ΕίσοδοιΕξοδοι

O χρονισμός αυτού του μονοπατιού θα ήταν προβληματικός χωρίς flip-flops

– ΣΥΜΠΕΡΑΣΜΑ : η έξοδος ενός latch δε θα πρέπει ποτέ αυτούσια ή μέσω ενός συνδυαστικού κυκλώματος να συνδέεται σαν είσοδος στο ίδιο ή άλλα latches που έχουν το ίδιο ρολόι.

Page 5: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Πρόβλημα μεταστάθειας

Χρόνος Προετοιμασίας (tsetup) : είναι η χρονική διαφορά μεταξύ της αρχής δειγματοληψίας (συνήθως οριζόμενη στο 50% της αλλαγής του ρολογιού) της εισόδου δεδομένων (Data) και της αργότερης χρονικής στιγμής που αυτή πρέπει να πάρει σταθερή τιμή ώστε να μη προκληθεί απροσδιοριστία.

Χρόνος Αποκατάστασης (thold) : είναι η χρονική διαφορά μεταξύ της αρχής δειγματοληψίας της εισόδου δεδομένων (Data) και της χρονικής στιγμής που αυτή μπορεί να πάρει διαφορετική τιμή από αυτήν της δειγματοληψίας χωρίς να προκαλέσει απροσδιοριστία.

Page 6: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Μέγιστη συχνότητα λειτουργίας ακολουθιακού κυκλώματος

FF1 FF2

clk

• Υποθέσεις – 1 μοναδικό ρολόι – Όλα τα FFs λειτουργούν με την ίδια

ακμή

• Χειρότερη καθυστέρηση = Aθροισμα των – Propagation FF1 – Xειρότερο μονοπάτι του συνδυαστικού κυκλώματος – Setup time FF2

• Συχνότητα λειτουργίας = 1 / Χειρότερη καθυστέρηση

Page 7: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Οικογένειες ολοκληρωμένων κυκλωμάτων • Diode logic

• Γρήγορη εξασθένηση των σημάτων λόγω της τάσης πόλωσης των διόδων • Αδυναμία δημιουργίας συμπληρωματικών συναρτήσεων

Page 8: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Οικογένειες ολοκληρωμένων κυκλωμάτων • Resistor – Transistor logic

•Tρανζίστορ για το συνδυασμό πολλών εισόδων που παράλληλα ενισχύουν και αντιστρέφουν το σήμα. •Το τρανζίστορ εξόδου αντιστρέφει και πάλι το σήμα. •Η κατανάλωση ισχύος αυτών των πυλών μαζί με τη χαμηλή ταχύτητά τους είναι τα σοβαρότερα προβλήματά τους

• Diode – Transistor logic

Page 9: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Οικογένειες ολοκληρωμένων κυκλωμάτων • Transistor – Transistor logic (TTL)

•Aντικατάσταση των διόδων της DTL με τρανζίστορ πολλαπλού εκπομπού •Μικρή οδηγητική ικανότητα, σημαντική κατανάλωση ισχύος και μικρές για την εποχή μας ταχύτητες.

Page 10: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Υποοικογένειες ΤΤL

• Standard • Xαμηλής κατανάλωσης (Low – Power Schottky - LS) • Γρήγορη (Schottky – S) • Eνδιάμεσης ταχύτητας και χαμηλής κατανάλωσης (Advanced Low Power Schottky –

ALS) • Πολύ γρήγορη (Advanced Schottky – AS)

• Σειρά 7400 • Κωδικοί ολοκληρωμένων 74 ΧΧΧ ΥΥΥ

• Στάθμες δυναμικού : έως 0.8V = λογικό 0, >2.7V = λογικό 1

Page 11: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Οικογένειες ολοκληρωμένων κυκλωμάτων

• ΕCL (CML) : Λογική συζευγμένου εκπομπού (emitter – coupled logic) / λογική ελέγχου ρεύματος (current mode logic)

– Aπαγορεύει τα τρανζίστορ να εισέρχονται βαθιά στον κόρο – Πολύ υψηλές ταχύτητες λειτουργίας – Πολύ μεγάλα ρεύματα => πολύ υψηλή κατανάλωση ισχύος

• ΝΜΟS / PMOS

– Xρησιμοποιούν τρανζίστορ πεδίου ΜΟSFET (Μetal Oxide Semiconductor Field Effect transistor)

– Μεγάλης κλίμακας ολοκλήρωση – Διαρκής κατανάλωση πάνω στους αντιστάτες – Ν ΜΟSFET : άγει όταν η πύλη είναι στο 1. – P MOSFET : άγει όταν η πύλη είναι στο 0.

Page 12: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Οικογένειες ολοκληρωμένων κυκλωμάτων

• CMOS : Complementary Metal Oxide Semiconductor – Tρανζίστορ προσαύξησης n-type και p-type – Kατανάλωση ισχύος μόνο κατά τις μεταβάσεις – Ιδανικά για εφαρμογές χαμηλής κατανάλωσης ισχύος.

Page 13: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Υποοικογένειες CMOS

• H αντίστοιχη με την 7400 σειρά CMOS είναι η 74C00 • Υπάρχουν αντίστοιχες υποοικογένειες

– 74ACT αντίστοιχη της 74ALS • Δυναμικό εξόδου των CMOS : > 4.5 V για λογικό 1, < 0.5 V για λογικό 0

– Mπορεί να οδηγήσει ΤΤL (1) • Δυναμικό εισόδου των CMOS : < 2.7 V για λογικό 0, >2.7V για λογικό 1.

– Μπορεί να οδηγηθεί από ΤΤL (2) • (1), (2) => Tα CMOS της σειράς 74C00 είναι άμεσοι αντικαταστάτες των

ολοκληρωμένων ΤΤL της σειράς 7400, προσφέροντας παράλληλα μικρότερη κατανάλωση.

• CMOS => δυνατότητα πολύ μεγάλης κλίμακας ολοκλήρωσης – SSI, MSI – Bιβλιοθήκες πυλών, ακολουθιακών στοιχείων και έτοιμων σχεδιασμών για LSI, VLSI, ULSI

Page 14: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Παρεχόμενη πληροφορία χρόνου

• Το πιο σημαντικό κριτήριο επιλογής τεχνολογίας είναι ο χρόνος • Ο κατασκευαστής πρέπει να παρέχει αναλυτικές μετρήσεις του χρόνου, αφού αυτός

δεν είναι σταθερός, αλλά εξαρτάται : – Θερμοκρασία – Τάση τροφοδοσίας – Χωρητικότητα οδήγησης

• Συνήθως παρέχεται μια 3άδα τιμών : Καθυστέρηση ∈ [Καλύτερος χρόνος, …, Τυπικός Χρόνος, …, Χειρότερος χρόνος]

• Η καθυστέρηση συνεπώς είναι παράγων απροσδιοριστίας

Data

clk

QI

clk

I

Data

Page 15: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Παρεχόμενη πληροφορία χρόνου σε VLSI

• H πληροφορία για τη καθυστέρηση είναι φοβερά ανεπαρκής σε VLSI. – Oι είσοδοι κάθε πύλης αυτής της τεχνολογίας δεν είναι ισοδύναμες από πλευράς

καθυστέρησης – H καθυστέρηση μεταβάλλεται σημαντικά ανάλογα με τον αριθμό των οδηγούμενων πυλών,

• Oι βιβλιοθήκες αυτής της τεχνολογίας συνήθως περιγράφουν την καθυστέρηση της εξόδου ανεξάρτητα για κάθε είσοδο.

• Περιλαμβάνουν τις διαφορετικές καθυστερήσεις ανάλογα με το οδηγούμενο φορτίο • Δυνατότητα για πύλες με διαφορετικές ικανότητες οδήγησης. • Αυτοματοποιημένος τρόπος σχεδιασμού => Δώσε στα εργαλεία τη δυνατότητα να

εξετάζουν όλες αυτές τις πιθανότητες.

Page 16: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Τεχνοτροπίες σχεδιασμού σε CMOS VLSI

• Ο σχεδιαστής πρέπει να επιλέξει κάποια από αυτές τις τεχνοτροπίες όταν ο στοχευόμενος σχεδιασμός δεν είναι διαθέσιμος σαν ένα εμπορικό ολοκληρωμένο, ή όταν τα διαθέσιμα δεν καλύπτουν κάποιες ή όλες από τις ανάγκες του σχεδιαστή για ταχύτητα, εμβαδόν και κατανάλωση ισχύος.

• Πλήρως εξειδικευμένος σχεδιασμός (Full – custom design). – ο σχεδιαστής θα πρέπει να σχεδιάσει εξ αρχής, ακόμη και τα βασικά δομικά στοιχεία. – + : μέγιστη ευελιξία – - : επίπονος χρονικά, > πιθανότητα για σχεδιαστικά λάθη είναι πολύ μεγάλη, > κόστος κατασκευής

πολύ υψηλό. – Στόχος : μικροί σχεδιασμοί με πολύ αυξημένες απαιτήσεις σε ταχύτητα, εμβαδόν και κατανάλωση

ισχύος.

• Μερικά εξειδικευμένος σχεδιασμός (Semi-custom design). – Μερικά σχεδιαστικά κομμάτια παρέχονται έτοιμα – Ο σχεδιαστής έχει τη δυνατότητα αν δε καλύπτεται να σχεδιάσει τα δικά του και μετά να φτιάξει το

σχεδιασμό του σα μίγμα έτοιμων και νέων υποσχεδιασμών. – + : ευελιξία, < χρόνος από τη προηγούμενη περίπτωση, < πιθανότητα σχεδιαστικών λαθών

Page 17: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Τεχνοτροπίες σχεδιασμού σε CMOS VLSI - 2

• Σχεδιασμός με έτοιμα σχεδιαστικά κομμάτια (Standard-cell design). – Ο σχεδιαστής εφοδιάζεται με μια σχεδιαστική βιβλιοθήκη και εκφράζει το σχεδιασμό του σαν την

διασύνδεση στοιχείων αυτής της βιβλιοθήκης. – Η βιβλιοθήκη αυτή παρέχεται από τον τελικό κατασκευαστή του ολοκληρωμένου και μπορεί να

περιέχει από πολύ λίγα έως πάρα πολλά και πολύ σύνθετα σχεδιαστικά κομμάτια. – Θα μπορούσε να περιέχει μόνο τη πύλη NAND δύο εισόδων μιας και κάθε λογική συνάρτηση

μπορεί να εκφραστεί βάσει αυτής. – Οι βιβλιοθήκες που παρέχονται σήμερα περιέχουν όλες τις λογικές πύλες (και μάλιστα σε διάφορες

εκδόσεις ταχύτητας, εμβαδού και οδηγητικής ικανότητας), στοιχεία μνήμης, μικρά έως μεσαία συνδυαστικά κυκλώματα (αθροιστές, πολλαπλασιαστές, κλπ), μικρά έως μεσαία ακολουθιακά κυκλώματα (καταχωρητές, ολισθητές, μετρητές κλπ).

– + : < χρόνος ολοκλήρωσης του σχεδιασμού. – - : Μη δυνατότητα καθορισμού των ηλεκτρικών χαρακτηριστικών των στοιχειωδών σχεδιαστικών

κομματιών, με αποτέλεσμα τόσο οι μέγιστες ταχύτητες, όσο και το ελάχιστο εμβαδόν και η ελάχιστη κατανάλωση ισχύος που μπορεί να επιτευχθεί να μη μπορούν να καθοριστούν άμεσα από αυτόν.

– Ο σχεδιασμός με έτοιμα σχεδιαστικά κομμάτια είναι η κυρίαρχη τεχνοτροπία σχεδιασμού.

Page 18: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Μεθοδολογίες υλοποίησης CMOS VLSI κυκλωμάτων

• Η μεθοδολογία που θα ακολουθηθεί καθορίζει σε πολύ μεγάλο βαθμό το κόστος του ολοκληρωμένου.

• Υλοποίηση σαν σχεδιασμός από έτοιμα σχεδιαστικά κομμάτια (Standard-cell implementation).

– Συνήθως χρησιμοποιεί την πλέον πρόσφατη τεχνολογία – Απαιτεί την χρησιμοποίηση ενός πολύ μεγάλου αριθμού μασκών οι οποίες προκύπτουν από

φωτολιθογραφικές μεθόδους. – Με αυτό το τρόπο μπορούμε να εκμεταλλευτούμε πλήρως τις δυνατότητες της κάθε

τεχνολογίας, να επιτύχουμε τη μέγιστη ταχύτητα που μας προσφέρει, αλλά ταυτόχρονα θα πρέπει να είμαστε προετοιμασμένοι να πληρώσουμε υψηλό τίμημα.

– Υπολογίζεται ότι το πρώτο ολοκληρωμένο σε αυτό το τρόπο υλοποίησης μπορεί να κοστίσει $200.000 και κάθε επόμενο σημαντικά λιγότερο.

– Αυτή η μεθοδολογία υλοποίησης είναι ελκυστική μόνο όταν ο αριθμός των ολοκληρωμένων που θα κατασκευαστεί είναι τουλάχιστον 20.000.

– Χρόνος παράδοσης : 1,5 έως 2 μήνες.

Page 19: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Μεθοδολογίες υλοποίησης CMOS VLSI κυκλωμάτων

• Απεικόνιση σε πίνακα πυλών (Gate Array, Sea of Gates, etc.). – Αντί να φτιάχνονται όλες οι μάσκες από την αρχή για το ολοκληρωμένο που σχεδιάσαμε, υπάρχουν

ολοκληρωμένα στα οποία ήδη έχει υλοποιηθεί ένας πίνακας από τρανζίστορ. – Αυτά τα ολοκληρωμένα έχουν κατασκευαστεί σε εξαιρετικά μεγάλες ποσότητες και συνεπώς το

κόστος τους είναι πολύ χαμηλό. – Ο σχεδιασμός μας εκφράζεται σαν τη διασύνδεση αυτών των υπαρχόντων τρανζίστορ, ενώ κάποια

τρανζίστορ μπορεί να μείνουν και αχρησιμοποίητα. – Ενα ποσοστό χρήσης των υπαρχόντων τρανζίστορ της τάξης του 70-80% είναι εξαιρετικό αν και

απίθανο να επιτευχθεί. – Απαιτούνται να κατασκευαστούν μάσκες μόνο για τη διασύνδεση, γεγονός που περιορίζει σημαντικά

το κόστος αλλά και το χρόνο κατασκευής του ολοκληρωμένου (1 έως 2 εβδομάδες). – Η απόδοση του τελικού προϊόντος μπορεί να είναι αρκετά καλή, αλλά προφανώς χειρότερη από

αυτήν του προηγούμενου τρόπου υλοποίησης. – Αυτός ο τρόπος κατασκευής είναι ελκυστικός όταν ο αριθμός των ολοκληρωμένων που θα

κατασκευαστεί κυμαίνεται μεταξύ 1.000 έως 25.000.

Page 20: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Μεθοδολογίες υλοποίησης CMOS VLSI κυκλωμάτων

• Απεικόνιση σε προγραμματιζόμενο πίνακα πυλών (LPGA, FPGA, etc.). – Βασίζεται σε ολοκληρωμένα που πέρα από τρανζίστορ, περιέχουν και προ-υλοποιημένο πίνακα

πιθανών διασυνδέσεων μεταξύ τους. – Ο σχεδιασμός μας εκφράζεται με τη χρήση κάποιων από αυτά τα τρανζίστορ και κάποιων από τις

πιθανές διασυνδέσεις ή με άλλα λόγια με την απεικόνιση του στοχευόμενου σχεδιασμού πάνω στους υλοποιημένους πίνακες.

– Η απεικόνιση αυτή στην περίπτωση των LPGA (Laser Programmable Gate Arrays) γίνεται με τη χρήση laser, γεγονός που μεταφράζεται σε χρόνο υλοποίησης λιγότερο της μίας εβδομάδας.

– Στην περίπτωση των FPGA (Field Programmable Gate Arrays) η στοχευόμενη απεικόνιση μπορεί να διαβαστεί από μια εξωτερική μνήμη και συνεπώς ο χρόνος υλοποίησης στην ουσία καταλήγει στον προγραμματισμό αυτής της μνήμης, δηλαδή είναι της τάξης των μερικών λεπτών και μπορεί να γίνει από τον ίδιο το σχεδιαστή.

Page 21: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Printed Circuit Boards (PCBs)

• Γιατί ? – Ανεξάρτητα αν κάποιο μέρος ή και όλος ο σχεδιασμός μας υλοποιηθεί σε ένα και

μόνο ολοκληρωμένο κύκλωμα, αυτό το ολοκληρωμένο δε μπορεί να θεωρηθεί σα τελικό προϊόν.

– Θα χρειαστεί να σχεδιαστεί μια πλακέτα στην οποία θα τοποθετηθεί αυτό το ολοκληρωμένο μόνο του ή και με άλλα ολοκληρωμένα ώστε να αποτελέσει το τελικό σύστημα.

– Ο σχεδιασμός μιας πλακέτας ήταν και θα είναι πάντα επίκαιρος. – Ο σχεδιασμός μιας πλακέτας είναι και λίγο τέχνη ! – Οι καλλιτέχνες απολαμβάνουν εξαιρετικά μεγάλους μισθούς

Page 22: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Aπό τι είναι φτιαγμένο ένα PCB

• Ένα ή περισσότερα φύλλα. • Κάθε φύλλο είναι επιστρωμένο και από τις 2 πλευρές του με χαλκό. • Κάθε επιφάνεια επίστρωσης είναι ένα επίπεδο (layer) • Στην περίπτωση 2 ή περισσοτέρων φύλλων αυτά προσκολλώνται μεταξύ τους με την

ενδιάμεση προσθήκη κάποιου μονωτικού υλικού. • Αρα υπάρχουν πλακέτες των 2, 3, 4, 5, 6, 7, 8, 9, 10, … επιπέδων. Στη πράξη 8 επίπεδα

είναι υπεραρκετά. • Το πάχος των φύλλων καθορίζει το τελικό πάχος της πλακέτας

– Λεπτότερα φύλλα είναι διαθέσιμα σε μεγαλύτερες τιμές

Αγώγιμα επίπεδα (χαλκός)

Μονωτής

Page 23: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

PCB και packages

• Ολοκληρωμένα • Διάκριτα (αντιστάσεις, πυκνωτές, διακόπτες) • Ο σχεδιαστής πρέπει να ορίσει σαφώς τη θέση στην οποία θα τοποθετηθεί κάθε

στοιχείο. • Όμως κάθε στοιχείο υπάρχει διαθέσιμο σε μια πλειάδα περιβλημάτων (packages). • Κάθε περίβλημα έχει διαφορετικές ανάγκες για την ορθή του τοποθέτηση.

Page 24: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι
Page 25: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι
Page 26: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Απαιτήσεις through -hole • O σχεδιαστής πρέπει να παραδώσει στον κατασκευαστή της πλακέτας αρχείο με τις θέσεις

των οπών που θα πρέπει να διανοιχτούν πάνω στην πλακέτα καθώς και το διαμέτρημα αυτών. • Τα στοιχεία αυτά υπάρχουν καταχωρημένα σε διάφορες βάσεις δεδομένων που οι

κατασκευαστές στοιχείων παρέχουν στους σχεδιαστές. • Αν το περίβλημα του στοιχείου που θα χρησιμοποιηθεί δεν υπάρχει στη χρησιμοποιούμενη

βάση δεδομένων, τότε ο σχεδιαστής θα πρέπει μόνος του να περιγράψει το αποτύπωμα (footprint) του στοιχείου, χρησιμοποιώντας κατάλληλους editors.

• Οσο περισσότερα διαφορετικά διαμετρήματα χρησιμοποιήσει ο σχεδιαστής τόσα διαφορετικά τρυπάνια θα πρέπει να χρησιμοποιήσει ο κατασκευαστής με αποτέλεσμα να αυξάνεται η δυσκολία και ο χρόνος κατασκευής και συνεπώς και το κόστος της πλακέτας.

• Κάθε τέτοια οπή υπόκειται στη διαδικασία της επιμετάλλωσης (metallization), έτσι ώστε να προσφέρει ηλεκτρική αγωγή με όλα τα στρώματα χαλκού τα οποία διαπερνάει και φυσικά με τον ακροδέκτη του στοιχείου που θα τοποθετηθεί σ’ αυτήν.

• Η μη ηλεκτρική επαφή του συγκεκριμένου επιπέδου με το συγκεκριμένο pin ολοκληρωμένου διασφαλίζεται

– Με isolation rings για επίπεδα στα οποία ο πλεονάζων χαλκός δεν απομακρύνεται – Με την απομάκρυνση του χαλκού.

Page 27: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

ΤΗ : Συνδυασμοί περιβλημάτων - ακροδεκτών

• Δεν προσφέρεται κάθε συνδυασμός περιβλήματος – ακροδεκτών • Ο αριθμός των ακροδεκτών σε through- hole packages είναι περιορισμένος. • Περισσότεροι ακροδέκτες ? => Surface mount devices

Page 28: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Surface mount devices

• H τοποθέτησή τους γίνεται απλά με τη κόλλησή τους σε κατάλληλα ίχνη (tracks).

• To σύνολο των tracks είναι το αποτύπωμα (footprint) του ολοκληρωμένου. • Υπάρχουν βάσεις δεδομένων που περιέχουν αποτυπώματα για διάφορα

περιβλήματα SMD, ενώ στην περίπτωση που το αποτύπωμα δεν υπάρχει θα πρέπει να σχεδιαστεί.

• Ο κατασκευαστής του ολοκληρωμένου σε αυτή τη περίπτωση θα πρέπει να παρέχει σαφέστατα διαγράμματα με το μέγεθος των επαφών των ακροδεκτών, των αποστάσεων μεταξύ τους, την κατανομή τους κλπ.

Page 29: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Surface mount devices - Κατηγοριοποίηση • Ικανότητα απαγωγής θερμότητας

– Κεραμικό περίβλημα : Καλή απαγωγή θερμότητας, μεγάλο κόστος – Πλαστικό περίβλημα : Μέτρια απαγωγή θερμότητας, χαμηλό κόστος – Μεταλλικό περίβλημα : Προσκολλώνται εύκολα σε ψύκτρες για την καλύτερη δυνατή

απαγωγή θερμότητας

• Κατανομή και σχήμα ακροδεκτών – Ακροδέκτες σε 2 μόνο πλευρές – Ακροδέκτες και στις 4 πλευρές – Ακροδέκτες με τη μορφή πίνακα σε όλο το κάτω μέρος του ολοκληρωμένου. – J- Lead – Leadless

Page 30: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Surface mount devices – Κατηγοριοποίηση -2 – Ανάλογα με τον αριθμό των ακροδεκτών και τη κατανομή τους, είναι πιθανό η

πυκνότητά τους να μην επιτρέπει τη συγκόλληση αυτών των στοιχείων με χειρωνακτικό τρόπο.

– Υπάρχουν ειδικοί σταθμοί συγκόλλησης για SMD στοιχεία. – Συνήθως όμως συγκολλούνται από τον ίδιο το κατασκευαστή της πλακέτας – Στην περίπτωση που το περίβλημα έχει ακροδέκτες σε μορφή πίνακα στο κάτω μέρος

του η συγκόλληση από τον κατασκευαστή είναι η μόνη δυνατότητα – Ο κατασκευαστής έχει και την ευθύνη ελέγχου της ορθής συγκόλλησης με το

αντίστοιχο φυσικά αυξημένο κόστος.

• Το πάχος του στοιχείου. – Υπάρχουν εφαρμογές στις οποίες το πάχος είναι καθοριστικός παράγοντας (κάρτες

PCMCIA). – Υπάρχουν για τους λόγους αυτούς μικρά, πολύ μικρά και μικροσκοπικά περιβλήματα

(SOP, SSOP και ΤSSOP). Το πάχος ενός ΤSSOP περιβλήματος είναι τόσο μικρό που άνετα χωράει κάτω από ένα J-Lead ή PLCC στοιχείο.

Page 31: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι
Page 32: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

SMD : Συνδυασμοί περιβλημάτων - ακροδεκτών

Page 33: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

SMD : Συνδυασμοί περιβλημάτων - ακροδεκτών

Page 34: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Διασύνδεση των στοιχείων • Πέρα από τη θέση και τη προσαρμογή των ολοκληρωμένων και των διακριτών

στοιχείων του κυκλώματος, ο σχεδιαστής θα πρέπει να περιγράψει στον κατασκευαστή της πλακέτας και το τρόπο διασύνδεσής τους.

• Αρχείο γραμμών διασύνδεσης, που για κάθε μία θα περιγράφει την αρχή, το τέλος της και το πάχος της.

• Εναλλακτικά τοπογραφικό σχέδιο της επιθυμητής διασύνδεσης. • Ο αριθμός των εναλλακτικών παχών γραμμών που χρησιμοποιούνται καθώς και

το ελάχιστο πάχος είναι παράγοντες που επιβαρύνουν σημαντικά το κόστος

Page 35: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Διασύνδεση σε πολλά επίπεδα - vias • Τα στοιχεία συνήθως τοποθετούνται στη μία πλευρά της πλακέτας (πολλές φορές ονομαζόμενη

top ή component side), αν και υπάρχουν πλακέτες με στοιχεία και στην αντίθετη πλευρά. • Η διασύνδεση των στοιχείων ωστόσο, δεν μπορεί πάντοτε να ολοκληρωθεί στη μία πλευρά (στην

περίπτωση πλακετών με δύο επίπεδα το δεύτερο επίπεδο αναφέρεται και σα routing side). • Mια γραμμή διασύνδεσης που ξεκινά σε ένα επίπεδο χαλκού είναι απαραίτητο να συνεχιστεί σε

κάποιο άλλο. Αυτό γίνεται εφικτό με τη χρησιμοποίηση των vias. • Mια via είναι μια επιμεταλλωμένη οπή πολύ μικρότερου διαμετρήματος από ότι μια οπή για

through hole devices που σκοπό έχει τη διασύνδεση δύο κομματιών μιας γραμμής διασύνδεσης που βρίσκονται σε διαφορετικά αγώγιμα επίπεδα.

• Η via δημιουργεί ένα αγώγιμο μονοπάτι μεταξύ των δύο αγώγιμων επιπέδων διαπερνώντας το μονωτή.

• Στις περιπτώσεις πλακετών με περισσότερα επίπεδα υπάρχει περίπτωση το ένα ή και τα δύο αγώγιμα επίπεδα που ενώνονται με τη via να μην είναι ορατά (να είναι δηλαδή κάποιο από τα εσωτερικά επίπεδα της πλακέτας).

Τυφλές viasΘαμμένες vias

Page 36: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Eπίπεδα τροφοδοσίας και γης

• Στις πλακέτες που υπάρχουν πολλά αγώγιμα επίπεδα, είναι πολλές φορές επικερδές να αφιερώσουμε ένα ολόκληρο τέτοιο επίπεδο στην τροφοδοσία και άλλο ένα αποκλειστικά στη γείωση.

• Είναι γνωστό ότι για να μπορεί ο σχεδιασμός μας να ανταποκριθεί στην υψηλή πυκνότητα ρεύματος που απαιτείται για υψηλές ταχύτητες λειτουργίας, οι γραμμές τροφοδοσίας και γείωσης θα πρέπει να χαραχτούν με το μέγιστο δυνατό πάχος, έτσι ώστε αφενός να παρουσιάζουν τη μικρότερη αντίσταση και αφετέρου να έχουν αρκετούς φορείς.

• Οι παχιές γραμμές ωστόσο αυξάνουν το εμβαδόν του σχεδιασμού μας. Με την αφιέρωση ολόκληρου επιπέδου για τροφοδοσία και γείωση, τα SMD μπορούν να συνδεθούν με αυτά μέσω τυφλών vias χωρίς να χρειάζεται η χάραξη καμίας γραμμής διασύνδεσης. Αυτό προφανώς οδηγεί σε πλακέτες μικρότερου εμβαδού.

• Επίσης θα πρέπει να διευκρινιστεί ότι γύρω από τoυς ακροδέκτες των through hole devices σε αυτή τη περίπτωση χρειάζεται κόψιμο της αγωγιμότητας μέσω isolation rings.

Page 37: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Απεικόνιση του σχεδίου στο υλικό

• Χημικές μέθοδοι : – Χρησιμοποιούμε αυτό το σχέδιο σα μάσκα και υποβάλλουμε το στρώμα

χαλκού σε κάποια φωτοχημική διαδικασία. – Στο τέλος αυτής της διαδικασίας τα κομμάτια του χαλκού που δεν

προστατεύτηκαν από τη μάσκα έχουν αποκτήσει διαφορετικές χημικές ιδιότητες από τα υπόλοιπα.

– Χρησιμοποιώντας αυτές τις αποκτηθείσες ιδιότητες μπορούμε να τα απομακρύνουμε μέσω περαιτέρω χημικών διαδικασιών και έτσι να απομείνει μόνο ο χαλκός που η μάσκα μας όριζε.

• Μηχανολογικές μέθοδοι και ηλεκτρόλυση : – Χρησιμοποιούμε αυτό το σχέδιο για να καθοδηγήσουμε ένα βραχίονα ρομπότ που

χαράζει το περίγραμμα γύρω από τις επιθυμητές γραμμές διασύνδεσης, απομονώνοντάς τις από τον υπόλοιπο χαλκό.

– Μετά με ηλεκτρόλυση μπορούμε να απομακρύνουμε όλο τον υπόλοιπο χαλκό που δε χρειάζεται.

Page 38: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Μετά τη μεταφορά του σχεδίου

• Τα διαφορετικά φύλλα συγκολλώνται με τη προσθήκη μονωτικού ενδιάμεσα

• Διαδικασία για τη διάνοιξη των οπών και των vias.

• Επιμετάλλωση των οπών και των vias.

• Tα ορατά αγώγιμα επίπεδα καλύπτονται από ένα στρώμα υλικού ανθεκτικού στο φως (photoresist, είναι το υλικό που δίνει το χαρακτηριστικό πράσινο χρώμα στις περισσότερες πλακέτες) με σκοπό την αποφυγή της οξείδωσης του χαλκού με το πέρασμα του χρόνου.

Page 39: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Tι πρέπει να παραδώσει ο σχεδιαστής

• Αρχεία διασύνδεσης για κάθε αγώγιμο επίπεδο που χρησιμοποιείται για διασύνδεση (routing layer).

• Tα αποτυπώματα των SMD που χρησιμοποιεί για το component layer.

• Τις οπές που θα πρέπει να ανοιχτούν για τα through hole στοιχεία και το διαμέτρημά τους.

• Τις vias και τον τύπο τους.

Page 40: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Τη προηγούμενη φορά

• Είδαμε πως κατασκευάζεται μια πλακέτα

• Είδαμε τι πρέπει να παραδώσει ο σχεδιαστής για τη κατασκευή της – Αρχεία διασύνδεσης για κάθε αγώγιμο επίπεδο που

χρησιμοποιείται για διασύνδεση (routing layer). – Tα αποτυπώματα των SMD που χρησιμοποιεί για το component

layer. – Τις οπές που θα πρέπει να ανοιχτούν για τα through hole στοιχεία

και το διαμέτρημά τους. – Τις vias και τον τύπο τους.

• Θα μιλήσουμε για προγραμματιζόμενα ολοκληρωμένα

(programmable logic devices – PLDs)

Page 41: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

PLDs = Programmable Logic Devices • Πρώτα PCBs περιείχαν SSI + διάκριτα

• Μεγαλύτερη πολυπλοκότητα => περισσότερα layers => > κόστος

• Μεγαλύτερη πολυπλοκότητα => μεγαλύτερο εμβαδό πλακέτας => μη ικανοποίηση

standards

• Aντιγραφή = piece of cake !

• Aξιοπιστία => κοντά στο 0.

• Ανάγκη για ολοκληρωμένα που θα αντικαθιστούσαν ομάδες από SSI και θα παρείχαν κάποιο είδος προστασίας από αντιγραφή => welcome PLDs

• Σήμερα υπάρχουν εκατομμύρια διαφορετικά PLDs και πάμπολλες φιλοσοφίες σχεδιασμού τους.

• Τα πάντα ξεκίνησαν και (με μια μικρή διακοπή) συνεχίζονται βάσει της ίδιας πάντα ιδέας, την

"ΥΛΟΠΟΙΗΣΗ ΣΥΝΔΥΑΣΤΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ ΜΕ ΜΝΗΜΗ".

Page 42: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Υλοποίηση συναρτήσεων με μνήμη • f1(x1, x2, x3, ..., xm), f2(x1, x2, x3, ..., xm), …, fn(x1, x2, x3, ..., xm) • Η υπόθεση ότι κάθε συνάρτηση είναι των ίδιων μεταβλητών είναι

απόλυτα λογική καθώς οποιαδήποτε λιγότερων μπορεί να μετατραπεί σε συνάρτηση m μεταβλητών, όπου οι επιπλέον είναι αδιάφοροι.

• f(a,b,c) = ab + c • f΄(a,b,c,d) = (ab+c)1 = (ab+c) (d + !d) = abd + cd + ab!d + c!d

xm, xm-1, ...,x1 Address Bus

fn(0, 0, ...,0), fn-1(0, 0, ...,0), ..., f1(0, 0, ...,0)

fn(0, 0, ...,1), fn-1(0, 0, ...,1), ..., f1(0, 0, ...,1)

fn(1, 1, ...,0), fn-1(1, 1, ...,0), ..., f1(1, 1, ...,0)

fn(1, 1, ...,1), fn-1(1, 1, ...,1), ..., f1(1, 1, ...,1)

...

Data Busfn(xm, xm-1, ...,x1), fn-1(xm, xm-1, ...,x1), ..., f1(xm, xm-1, ...,x1)

Page 43: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Παράδειγμα υλοποίησης συναρτήσεων με μνήμη • f1(a) = a, f2(b, c) = bc, f3(a, b) = a + b • Aριθμός μεταβλητών m = 3 • f'1(a, b, c) = abc + ab!c + a!bc + a!b!c, • f'2(a, b, c) = abc + !abc • f'3(a, b, c) = abc + ab!c + a!bc + a!b!c + !abc + !ab!c

a,b,c Address Bus

f1(0, 0, 0), f2(0, 0, 0), f3(0, 0, 0) = 000

f1(0, 0, 1), f2(0, 0, 1), f3(0, 0, 1) = 000

Data Busf1(a, b, c), f2(a, b, c), f3(a, b, c)

f1(0, 1, 0), f2(0, 1, 0), f3(0, 1, 0) = 001

f1(0, 1, 1), f2(0, 1, 1), f3(0, 1, 1) = 011f1(1, 0, 0), f2(1, 0, 0), f3(1, 0, 0) = 101

f1(1, 0, 1), f2(1, 0, 1), f3(1, 0, 1) = 101

f1(1, 1, 0), f2(1, 1, 0), f3(1, 1, 0) = 101

f1(1, 1, 1), f2(1, 1, 1), f3(1, 1, 1) = 111

a

b

c

f΄1

f΄2

f΄3 0

0

0

0

0

0 0

0

1

0

0

0 0

1

0

0

0

1 0

1

1

0

1

1 1

0

0

1

0

1 1

0

1

1

0

1 1

1

0

1

0

1 1

1

1

1

1

1

Page 44: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Look-up Table (LUT)

• H υλοποίηση συναρτήσεων με μνήμη πολύ συχνά ονομάζεται σαν υλοποίηση με πίνακα ανεύρεσης

• Αυτό στη βιβλιογραφία είναι ιδιαίτερα συχνό όταν έχω μόνο μία συνάρτηση προς υλοποίηση, όταν δηλαδή η μνήμη που θα χρειαστώ είναι 2mx1

• H υλοποίηση με LUT έχει ένα "περίεργο" αποτέλεσμα. Κάθε συνάρτηση των m μεταβλητών απαιτεί ακριβώς τον ίδιο χρόνο για την υλοποίησή της ανεξάρτητα από τη πολυπλοκότητά της.

• Για παράδειγμα η ΝAND τεσσάρων εισόδων θα έχει ακριβώς την ίδια καθυστέρηση με τη συνάρτηση άρτιας ισοτίμίας των τεσσάρων μεταβλητών (συνήθως υλοποιούμενη σα δένδρο από 3 XOR των 2 εισόδων.

Page 45: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Read – Only Memories (ROMs)

Page 46: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Read – Only Memories (ROMs) - Mειονεκτήματα

• H απαιτούμενη μνήμη μεγαλώνει εκθετικά με τον αριθμό των μεταβλητών.

• Αντίστοιχα μεγαλώνει και ο χρόνος απόκρισης.

• Υποστηρίζονται μόνο συνδυαστικά κυκλώματα (μη ξεχνάτε και τα ακολουθιακά στοιχεία είναι στοιχεία μνήμης).

• Προγραμματισμός μόνο 1 φορά στο εργοστάσιο. Αυτό αφενώς καθιστά αλλαγές πολύ δαπανηρές, αφετέρου ο χρόνος κατασκευής είναι εξαιρετικά μεγάλος.

• Σπάνια (αν καθόλου) χρησιμοποιούνται ROM στις μέρες μας.

Page 47: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Μήπως φταίει η φιλοσοφία μας ?

• Νέα φιλοσοφία : Κάθε συνάρτηση μπορεί να εκφραστεί μοναδικά σα

SOP. • Aρα :

– Φτιάξε PLDs που να παρέχουν πολλά (ίσως και όλα) από τα πιθανά Products (ελαχιστόροι).

– Φτιάξε PLDs που να παρέχουν πολλούς (ίσως και όλους) τους πιθανούς συνδυασμούς σε αθροίσματα (Sums) των Products

– Δώσε την ευκαιρία στον σχεδιαστή να χρησιμοποιεί όσους από τους πόρους του διαθέτεις μέσω του καψίματος (προγραμματισμού) ασφαλειών.

Page 48: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

PROMs

• Ποιες συναρτήσεις υλοποιεί το παραπλεύρως σχήμα ?

• Ο1 = Α(~Β) | (~Α)Β = Α XOR B; • O2 = AB • O3 = 0 • O4 = 1

• + : Προγραμματισμός από το σχεδιαστή ! • - : Προγραμματισμός μόνο 1 φορά, όλα τα κακά των ROM. • ΕPROMs : Προγραμματισμός πολλές φορές με ενδιάμεσο σβήσιμο σε

UV φούρνο (παράθυρο vs ΟΤPROMs) • Floating gate concept. More at :

http://xtronics.com/memory/how_EPROM-works.htm

Page 49: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

EEPROMs = E2PROMs and Flash (nonvolatile) • Electrically erasable. To σβήσιμο αντί ωρών διαρκεί ms με την

εφαρμογή ειδικών τάσεων, συνήθως –12 ή –21 Volt και το σβήσιμο γίνεται one byte at a time.

• Αρα οι E2PROMs μπορούν να χρησιμοποιηθούν και σα RAM αν θέλουμε nonvolatile μνήμη και ο χρόνος δεν είναι κρίσιμος παράγοντας στην εφαρμογή μας.

• Paged E2PROMs : Oι διευθύνσεις χωρίζονται σε banks. Ένα bank μπορεί να σβηστεί όλο μαζί και ανεξάρτητα από τα υπόλοιπα.

• Flash E2PROMs : Το ολοκληρωμένο μπορεί να σβηστεί μονομιάς.

• Alert : Kανείς δεν εξηγεί ακριβώς που τελειώνουν τα όρια της Flash και που αρχίζουν αυτά των E2PROMs. Η τεχνολογία που χρησιμοποιεί ο κάθε κατασκευαστής είναι patented και τα μυστικά διαφυλάσσονται σα κόρη οφθαλμού.

Page 50: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Part Νumbering

1. 27(C)XXX are EPROMs or OTPROMSs.

2. 57(C)XXX are EPROMs or OTPROMSs that allow the lower 8 address lines to be multiplexed with the Data lines. (Some MCU's multiplex the lower address and data lines together). These parts still program like 27(C)XXX EPROMs on the programmer because the software algorithm takes this into account.

3. 28(C)XXX are EEPROMs with the C standing for CMOS.

4. 28FXXX are Flash EEPROMs with the F standing for Flash. Do not confuse these with EEPROMs as they are not .

Page 51: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Αλυτα (μέχρι ώρας) μειονεκτήματα

• Εκθετικός πίνακας σε σχέση με τις εισόδους • Μεγάλος χρόνος σβησίματος

– Λύση : Χρησιμοποίηση SRAM – Nέο πρόβλημα : Η SRAM είναι volatile.

• Αδυναμία υλοποίησης ακολουθιακών κυκλωμάτων

• Υπάρχει λύση στο πρώτο πρόβλημα ? – Μελέτες έδειξαν ότι σπάνια χρειαζόμαστε όλους τους ελαχιστόρους ! – Ναι αλλά πως επιλέγω πόσους θα υλοποιήσω (το ποιους δεν έχει σημασία αφού

μπορώ να το λύσω με αντιμετάθεση των μεταβλητών) ? – Απάντηση : Βάλε όσους σου επιτρέπει η τεχνολογία και δώσε στο χρήστη τη

δυνατότητα να χρησιμοποιεί όσους πραγματικά χρειάζεται. – Πάλι πρόβλημα : Διαφορετικές εκφράσεις των ίδιων συναρτήσεων μπορεί να

απαιτούν διαφορετικό αριθμό ελαχιστόρων. Πως ο χρήστης θα βρει τη καταλληλότερη ?

– Ωρα να αναλάβουν και οι κατασκευαστές την ευθύνη τους !

Page 52: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Ολοκληρωμένα λογικής προγραμματιζόμενου πίνακα (PAL)

Page 53: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

PALs

• + : O αριθμός των εισόδων στις OR είναι περιορισμένος. Αρα οι χρόνοι απόκρισης σημαντικά μικρότεροι των λύσεων ΧΧΧROM.

• + : tri-state, έξοδος σαν επιπλέον είσοδος

Page 54: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Επαυξημένες δυνατότητες σε PALs

Page 55: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

PLΑs • Το ποσοστό χρησιμοποίησης των πόρων σε ένα PAL είναι πολύ

μικρό. Για παράδειγμα για μια συνάρτηση ενός ελαχιστόρου, αν η πύλη ΟR χρησιμοποιεί άλλους 6 όρους, οι όροι αυτοί θα πρέπει να προγραμματιστούν στο 0 !

• Η ευελιξία των συνδέσεων του OR επιπέδου ήταν το κίνητρο για τα PLAs.

• Eνας κοινά χρησιμοποιούμενος ελαχιστόρος φτιάχνεται μόνο 1 φορά.

Page 56: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

PLΑs

• Σοβαρό πρόβλημα : Για τρεις μεταβλητές εισόδου έχουμε 14 γινόμενα ! • Πραγματικότητα : Ο αριθμός των γινομένων που προσφέρονται είναι μικρότερος

του 2m => • Δεν μπορούμε πάντα να παράγουμε όλες τις επιθυμητές συναρτήσεις ή δεν

μπορούμε στο ίδιο ολοκληρωμένο να παράγουμε ταυτόχρονα όλες τις συναρτήσεις που επιθυμούμε!

Page 57: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Κάτι όμως έχουμε καταφέρει !

Page 58: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Mετά τα PALs/PLAs

• Δραστική μείωση των ολοκληρωμένων που χρειαζόμαστε δε μπορεί να επιτευχθεί.

• Γιατί δε φτιάχνουμε μεγάλα PALs / PLAs ? • Mεγαλώνοντας μια PAL/PLA, μεγαλώνει ο αριθμός των

εισόδων στις πύλες και συνεπώς πληρώνεις το τίμημα του χρόνου.

• Μια πρώτη προσέγγιση είναι τα ολοκληρωμένα Gate Array Logic (GALs).

Page 59: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

GALs

• Mπορούν να αντικαταστήσουν έναν αριθμό από PALs. • Χρησιμοποιούν ένα επαναπρογραμματιζόμενο επίπεδο AND,

ένα σταθερό επίπεδο OR αλλά εισάγουν την έννοια των μεγακυττάρων εξόδου (Οutput Logic Macro Cells – OLMCs).

Page 60: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

ΟLΜCs • Mέσω των σημάτων S1 και S0, ο σχεδιαστής μπορεί να

καθορίσει την πολικότητα των εξόδων, τη συνδυαστική ή ακολουθιακή φύση του ακροδέκτη

• Το καταχωρημένο σήμα μπορεί να αποτελέσει όρο του AND array => δυνατότητα πραγματoποίησης σύγχρονων ακολουθιακών κυκλωμάτων.

Page 61: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Field Programmable Logic Sequencers • Yπάρχουν 2 arrays

δημιουργίας ελαχιστόρων.

• Το πρώτο είναι το γνωστό μας, στο οποίο έχουν εισαχθεί και οι έξοδες των ακολουθιακών στοιχείων.

• Το δεύτερο (control) ελέγχει τα set, reset των ακολουθιακών στοιχείων.

• Ιδανικά ολοκληρωμένα για την υποδοχή ακολουθητών προγράμματος

Page 62: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Eπανατοποθέτηση του προβλήματος • Εστω ότι έχω μειώσει σημαντικά τον αριθμό των ολοκληρωμένων που

χρειάζομαι για να εμφωλεύσω ένα σχεδιασμό, ή

• Εστω ότι μπορώ να έχω (με τη πρόοδο της τεχνολογίας αυτός είναι ο δρόμος που ακολουθήθηκε) πολύ μεγάλο αριθμό από ολοένα και εξυπνότερα μεγακύτταρα.

• Πως επικοινωνούν όλα αυτά μεταξύ τους ? (Η off-chip επικοινωνία είναι χρονοβόρα, εμβαδοβόρα και χαμηλής αξιοπιστίας) ?

• Δυστυχώς ακόμη κι εντός ενός ολοκληρωμένου, η πλήρης διασύνδεση είναι αδύνατη !

• Χρειάζομαι έξυπνες (και ιεραρχικά δομημένες) αρχιτεκτονικές διασύνδεσης αυτών των υποσχεδιασμών

Page 63: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Λύση 1 : Complex PLDs - CPLDs • Κεντροποιημένο σύστημα διασύνδεσης. • Υποσχεδιασμούς για την είσοδο – έξοδο. • Μεγακύτταρα • Σύμπλεγμα πιθανών διασυνδέσεων

Page 64: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

CPLDs – Πιο κοντινή ματιά • Κάθε μεγακύτταρο παίρνει τις εισόδους του από άλλα ή από τις μονάδες εισόδου, • Κάθε μεγακύτταρο έχει ένα επίπεδο AND, ένα ΟR και μία πύλη XOR που

καθορίζει τη πολικότητα της εξόδου. • Η έξοδος μπορεί να οδηγηθεί σε καταχωρητή και ακολούθως να αποτελέσει είσοδο

στο ίδιο ή άλλο μεγακύτταρο ή να περάσει στην έξοδο μέσω ενός απομονωτή τριών καταστάσεων.

Page 65: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

FPGAs – Oτι πιο σύγχρονο • Αποκεντρωμένο, ιεραρχικό και αρκετά πιο πολύπλοκο σύστημα διασύνδεσης. • Πολύ πιο μικρά μεγακύτταρα. Στόχος η πλήρης αξιοποίησή τους. Ονοματολογία

ανάλογα με κατασκευαστή. Αltera : Logic Cells. Xilinx : Complex Logic Blocks. • Εκατομμύρια μεγακύτταρα πλέον σήμερα σε ένα ολοκληρωμένο. • Γενική αρχιτεκτονική : CLBs, ΙΟΒs, Interconnect

Page 66: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Tην προηγούμενη φορά • Ψάξαμε για ολοκληρωμένα "προγραμματιζόμενα".

Σκοπός να μειώσουμε τον αριθμό ολοκληρωμένων στη πλακέτα, να αυξήσουμε την αξιοπιστία της διασύνδεσης και να προστατευτούμε από αντιγραφή.

• Δρόμος της μνήμης. Προβλήματα : – Εκθετικός πίνακας σε σχέση με μεταβλητές. – Σβήσιμο και επανεγγραφή δεδομένων. – Volatility – Με μνήμη δε μπορούμε να φτιάξουμε ακολουθιακά στοιχεία.

• Δρόμος των SOP. Προβλήματα : – Δεν μπορούμε να έχουμε όλους τους ελαχιστόρους. Λύνεται

με τη παρέμβαση των κατασκευαστών. – Μη επεκτάσιμες αρχιτεκτονικές.

Page 67: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Eπανατοποθέτηση του προβλήματος • Εστω ότι έχω μειώσει σημαντικά τον αριθμό των ολοκληρωμένων που

χρειάζομαι για να εμφωλεύσω ένα σχεδιασμό, ή

• Εστω ότι μπορώ να έχω (με τη πρόοδο της τεχνολογίας αυτός είναι ο δρόμος που ακολουθήθηκε) πολύ μεγάλο αριθμό από ολοένα και εξυπνότερα μεγακύτταρα.

• Πως επικοινωνούν όλα αυτά μεταξύ τους ? (Η off-chip επικοινωνία είναι χρονοβόρα, εμβαδοβόρα και χαμηλής αξιοπιστίας) ?

• Δυστυχώς ακόμη κι εντός ενός ολοκληρωμένου, η πλήρης διασύνδεση είναι αδύνατη !

• Χρειάζομαι έξυπνες (και ιεραρχικά δομημένες) αρχιτεκτονικές διασύνδεσης αυτών των υποσχεδιασμών

Page 68: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Λύση 1 : Complex PLDs - CPLDs • Κεντροποιημένο σύστημα διασύνδεσης. • Υποσχεδιασμούς για την είσοδο – έξοδο. • Μεγακύτταρα • Σύμπλεγμα πιθανών διασυνδέσεων (Κεντροποιημένο σύστημα)

Page 69: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

CPLDs – Πιο κοντινή ματιά • Κάθε μεγακύτταρο παίρνει τις εισόδους του από άλλα ή από τις μονάδες εισόδου, • Κάθε μεγακύτταρο έχει ένα επίπεδο AND, ένα ΟR και μία πύλη XOR που

καθορίζει τη πολικότητα της εξόδου. • Η έξοδος μπορεί να οδηγηθεί σε καταχωρητή και ακολούθως να αποτελέσει είσοδο

στο ίδιο ή άλλο μεγακύτταρο ή να περάσει στην έξοδο μέσω ενός απομονωτή τριών καταστάσεων.

Page 70: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

FPGAs – Oτι πιο σύγχρονο • Αποκεντρωμένο, ιεραρχικό και αρκετά πιο πολύπλοκο σύστημα διασύνδεσης. • Πολύ πιο μικρά μεγακύτταρα. Στόχος η πλήρης αξιοποίησή τους. Ονοματολογία

ανάλογα με κατασκευαστή. Αltera : Logic Cells. Xilinx : Complex Logic Blocks. • Εκατομμύρια μεγακύτταρα πλέον σήμερα σε ένα ολοκληρωμένο. • Γενική αρχιτεκτονική : CLBs, ΙΟΒs, Interconnect

Page 71: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

4000E / EX της Xilinx (donator)

Page 72: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

4000E / EX της Xilinx (donator) • Δύο LUT των τεσσάρων μεταβλητών. F και G αντίστοιχα. • Ενα LUT των τριών μεταβλητών εισόδου. Η. Στην περίπτωση που F, G και H

χρησιμοποιούνται για την υλοποίηση συνδυαστικών συναρτήσεων, τα δεδομένα τους γράφονται σε αυτά κατά την εκκίνηση λειτουργίας του FPGA, βάσει μιας διαδικασίας που ονομάζεται διάρθρωσή (configuration) του.

• Δύο καταχωρητές (D flip-flops), τα οποία μπορούν να λειτουργήσουν είτε με τη θετική είτε με την αρνητική ακμή του σήματος ρολογιού (Κ).

Page 73: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

4000E / EX family CLB • Ενα κύκλωμα ελέγχου του καθαρισμού ή της θέσης των καταχωρητών που κι αυτό

καθορίζεται κατά τη διάρθρωση του FPGA. • Μια πλειάδα πολυπλεκτών για τον ορισμό της επιθυμητής διασύνδεσης μεταξύ αυτών των

υποσχεδιασμών και της λογικής ακμοπυροδότησης των καταχωρητών. Τα σήματα ελέγχου αυτών των πολυπλεκτών προέρχονται από μία μνήμη που εγγράφεται κατά τη φάση διάρθρωσης.

Page 74: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Eνα CLB μπορεί να "χωρέσει" • Οποιεσδήποτε δύο συναρτήσεις έως και τεσσάρων ανεξάρτητων μεταξύ τους

μεταβλητών μαζί με οποιαδήποτε συνάρτηση τριών ανεξάρτητων μεταβλητών. (Προφανώς επειδή από το CLB υπάρχουν μόνο δύο συνδυαστικές έξοδοι μία εκ των τριών συναρτήσεων θα πρέπει να οδηγηθεί σε κάποιον από τους καταχωρητές)

• Οποιαδήποτε συνάρτηση πέντε μεταβλητών.

• Οποιαδήποτε συνάρτηση τεσσάρων μεταβλητών παράλληλα με μερικές συναρτήσεις των έξι μεταβλητών.

• Μερικές συναρτήσεις έως και εννέα μεταβλητών.

• Η υλοποίηση ακόμα και συναρτήσεων πολλών μεταβλητών, οδηγεί στη μείωση του αριθμού των CLBs που χρειάζονται για την υλοποίηση ενός σχεδιασμού αλλά και σε αυξημένη ταχύτητα μιας και αποφεύγεται διάδοση των σημάτων μεταξύ CLBs.

• Θυμηθείτε : αφού οι λογικές συναρτήσεις εντός του CLB υλοποιούνται με μνήμη, ο χρόνος υπολογισμού για μια συνάρτηση δύο ή τεσσάρων μεταβλητών είναι ο ίδιος

• Μόνο αυτά ? Όχι !!!

Page 75: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

4000E / EX της Xilinx (donator)

Page 76: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Eλεγχος των ακολουθιακών στοιχείων • Τα ακολουθιακά στοιχεία δέχονται το ίδιο ρολόι και το ίδιο σήμα επίτρεψης ρολογιού (EC). • Μπορούν να λειτουργήσουν σα flip flops ή σα latches. • Η πολικότητα ενεργοποίησης είναι προγραμματιζόμενη ανεξάρτητα για κάθε καταχωρητή.

στο 1 ή το 0 του ρολογιού όταν λειτουργούν σα latches και στην αρνητική ή τη θετική ακμή όταν λειτουργούν ως flip flops.

• Οι υποσχεδιασμοί S/R control, ελέγχουν την ασύγχρονη θέση ή καθαρισμό των καταχωρητών. Μέσω του σήματος SR / H0 χρησιμοποιούνται και για να καθορίσουν την έξοδο των καταχωρητών στην κατάσταση αρχικοποίησης (η κατάσταση αυτή υποδηλώνεται με ένα παλμό σε ένα σχεδιασμό που ονομάζεται γενικευμένος σχεδιασμός θέσης / καθαρισμού – Global Set / Reset – GSR).

Page 77: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Xρήση CLB σαν ενσωματωμένη μνήμη • Σε κάθε σχεδιασμό απαιτείται η ύπαρξη μνήμης. • Οι ενσωματωμένες μνήμες (embedded memories) είναι σαφώς προτιμητέες από

εξωτερικά ολοκληρωμένα μνήμης. • Τα LUT είναι μνήμες ! Αρα γιατί να μη μπορούν να χρησιμοποιηθούν σαν

ενσωματωμένες μνήμες ? • Μπορούν και μάλιστα με πολλούς εναλλακτικούς τρόπους. • Μπορούμε να φτιάξουμε μνήμη μίας θύρας (one port memory – μονάδα μνήμης που

προσφέρει μόνο ανάγνωση ή μόνο εγγραφή ανά πάσα στιγμή) που να λειτουργεί είτε με παλμό είτε με ακμή του ρολογιού, ή

• Μνήμη δύο θυρών (dual port memory – μονάδα μνήμης στην οποία μπορούμε παράλληλα να διαβάζουμε από δύο ξεχωριστές διευθύνσεις).

Page 78: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Mνήμη 16x1 (x2) Edge Triggered

Page 79: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Mνήμη 32x1 Edge Triggered

Page 80: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

"Κρυφά" κυκλώματα – Φυσική οργάνωση • Aπό τα πλέον συνήθη κυκλώματα είναι αριθμητικά κυκλώματα : αυξητές,

συγκριτές, προσθετές και αφαιρέτες. • Επίτευξη μεγάλων ταχυτήτων => επιπλέον λογική για γρήγορη διάδοση του

κρατουμένου (γνωστή ως fast carry logic). • Τα F και G LUT μπορούν να διαρθρωθούν σαν αθροιστές των δύο δυαδικών

ψηφίων το καθένα με ειδική πρόνοια για τη διάδοση του κρατουμένου εξόδου σε επόμενο γειτονικό CLB.

• "Περίεργο" αποτέλεσμα : Ανόητο να προσπαθήσουμε να εμφωλεύσουμε σε ένα FPGA άλλη αρχιτεκτονική για αθροιστές / αφαιρέτες παρά αυτής με διάδοση κρατουμένου (ripple carry). Ενας carry look ahead αθροιστής των 16 δυαδικών ψηφίων θα είναι αργότερος από έναν αντίστοιχο ripple carry αν και οι δύο υλοποιηθούν σε FPGA και ο δεύτερος κάνει χρήση αυτών των ειδικών δυνατοτήτων των CLBs.

• Κάθε CLB υλοποιείται σαν ένα ορθογώνιο ή ένα τετράγωνο. • Οι είσοδοι / έξοδοι του CLB είναι φυσικά διεσπαρμένες και στις τέσσερις πλευρές

του CLB. • Πιθανό να χρησιμοποιήσουμε ένα CLB και για λόγους διαδρόμισης, δηλαδή για να

περάσουμε απλά την είσοδο στην έξοδο που βρίσκεται σε κάποια άλλη πλευρά.

Page 81: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Eξέλιξη της χωρητικότητας των FPGAs :1999

• Σήμερα : Μπορείτε χονδρικά να πολλαπλασιάζετε τα παραπάνω νούμερα (πλην φυσικά των ακροδεκτών) x 25 !!!

Page 82: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

IOBs • Συνδέονται με έναν ακροδέκτη του ολοκληρωμένου.

• Ο ακροδέκτης μπορεί να προγραμματιστεί να είναι είσοδος / έξοδος ή και είσοδος – έξοδος.

• TTL / CMOS compatibility • Eίσοδος – έξοδος => ελέγχω

πότε είναι έξοδος, αλλά είναι πάντα είσοδος.

• Ελέγχω την έξοδο => πύλες τριών καταστάσεων.

• Παθητικά στοιχεία ανύψωσης – πτώσης δυναμικού => ικανότητα καλωδιωμένης λογικής.

• Οι ακροδέκτες του ολοκληρωμένου δεν είναι όλοι διαθέσιμοι κατά τη φάση διάρθρωσής του.

Page 83: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Διασυνδέσεις • Υπάρχουν προ-υλοποιημένες γραμμές διασύνδεσης. • Αυτές καταλήγουν σε προγραμματιζόμενα στοιχεία που μπορεί να

διασυνδέσουν κομμάτια υλοποιημένων γραμμών. • Ονομάζονται Programmable Switch Matrices (PSM). • TTL / CMOS compatibility • Kατηγορίες γραμμών : πάρα πολλές :

– Στον οριζόντιο και κάθετο άξονα των CLBs – Γύρω από τα ΙΟΒs – Συνολικές γραμμές, που οδηγούν όλα τα ακολουθιακά στοιχεία του

ολοκληρωμένου. • Ανάλογα με το μήκος των κομματιών τους :

– Απλές – Διπλές – Τετραπλές – Οκταπλές …

• Διακριτή μια ιεραρχία, σαφώς οριζόμενη και εύκολα επεκάσιμη

Page 84: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Ιεραρχία στην 4000 Ε / ΕΧ

• Ο αριθμός δείχνει το πόσες γραμμές είναι διαθέσιμες. • Το απλό – διπλό - … δείχνει πόσα CLBs θα "περάσει" το τμήμα

της γραμμής μέχρι να φτάσει σε ένα PSM, οπότε θα μπορεί να διασυνδεθεί με ένα άλλο

Page 85: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Λεπτομερής εικόνα

Page 86: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

PSM (Αρχιτεκτονική και Προγραμματισμός του)

Page 87: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Ιεραρχία Διασύνδεσης

Page 88: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι
Page 89: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

FPGAs – Ηθικά διδάγματα

• Η εμφώλευση ενός σχεδιασμού σε αυτά έγκειται στην αποθήκευση σε μία μνήμη (στο εξής θα την αποκαλούμε μνήμη διάρθρωσης – configuration memory), των τιμών που θέλουμε να περιέχουν τα LUT, των τιμών για τα σήματα ελέγχου των πολυπλεκτών στα CLBs και τα IOBs καθώς και των τιμών ελέγχου των pass τρανζίστορ στα PSMs.

• Ο σχεδιαστής το μόνο που χρειάζεται να παράγει σε αυτή τη περίπτωση είναι το αρχείο για τον προγραμματισμό αυτής της μνήμης (configuration / programming file).

Page 90: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

FPGAs – Να θυμάστε

• Η εμφώλευση ενός σχεδιασμού σε αυτά έγκειται στην αποθήκευση, των τιμών που θέλουμε να περιέχουν τα LUT, των τιμών για τα σήματα ελέγχου των πολυπλεκτών στα CLBs και τα IOBs καθώς και των τιμών ελέγχου των pass τρανζίστορ στα PSMs.

• Που αποθηκεύεται αυτή η πληροφορία ? – Σε μία μνήμη (στο εξής θα την αποκαλούμε μνήμη διάρθρωσης –

configuration memory). Αν είναι read only, μπορεί να περιέχει έναν ή περισσότερους μόνιμους σχεδιασμούς !

– Αν είναι read/write => αναδιαρθρούμενο Η/W !!! Off-line vs on-line ! – Να την στέλνουμε στο FPGA από ένα υπολογιστικό σύστημα.

• Ο σχεδιαστής το μόνο που χρειάζεται να παράγει σε αυτή τη περίπτωση είναι το αρχείο για τον προγραμματισμό του FPGA (configuration / programming file).

Page 91: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

FPGAs - Διάρθρωση

• Τα σύγχρονα FPGAs παρέχουν πολλούς τρόπους διάρθρωσης (configuration modes).

• On-line reconfiguration ! • Σειρά ΧC 4000 :

– Σειριακή – Παράλληλη – Μέσω της αλυσίδας ελέγχου – * 2, αφού το FPGA μπορεί να είναι κύριος / σκλάβος σε μια σειρά FPGAs (ή

FPGAs – CPLDs !) που θα διαρθρωθούν όλα μαζί και έχουν διασυνδεθεί κατάλληλα !

– * 2 για το αν χρειάζεται και εξωτερικός έλεγχος.

Page 92: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

4000 : Μοdes διάρθρωσης

• Καθοριζόμενος από τα σήματα Μ2, Μ1, Μ0 • Κύριος => δημιουργία CCLK ή / και διευθύνσεων για τη

προσπέλαση της μνήμης των δεδομένων διάρθρωσης. • Σειριακές ΕΕPROM.

Page 93: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

4000 : Pins διάρθρωσης (πέρα των Μ2, Μ1, Μ0) • Program : Σήμα αρνητικής λογικής με το οποίο ξεκινά η διαδικασία

διάρθρωσης. • Din : To σήμα σειριακών δεδομένων εισόδου. • Dout : Το σήμα σειριακών δεδομένων εξόδου. Χρησιμοποιείται

όταν έχουμε πολλά FPGAs και θέλουμε να χρησιμοποιήσουμε μόνο ένα ολοκληρωμένο μνήμης για την αποθήκευση των δεδομένων διάρθρωσής τους, οπότε και τα συνδέουμε με μια μορφή αλυσίδας (Daisy Chain). H γραμμή Dout χρησιμεύει για το πέρασμα δεδομένων στο επόμενο FPGA της αλυσίδας.

• Ιnit : Σήμα εισόδου / εξόδου ανοικτής καταβόθρας (open drain). Σκοπός του να δείχνει τη σταθεροποίηση της τροφοδοσίας και την ύπαρξη λάθους στη διαδικασία διάρθρωσης.

• Done. Σήμα εισόδου / εξόδου ανοικτής καταβόθρας. Δείχνει την ολοκλήρωση της διαδικασίας διάρθρωσης.

Page 94: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Flowchart Διάρθρωσης

Page 95: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Σειριακή φόρτωση

Page 96: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Παράλληλη & σειριακή φόρτωση

Page 97: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

FPGAs => SOCs, IP + Programmable Logic

Device

XC 3S50

XC 3S200

XC 3S400

XC 3S1000

XC 3S1500

XC 3S2000

XC 3S4000

XC 3S5000

System Gates

50K

200K

400K

1000K

1500K

2000K

4000K

5000K

Logic Cells

1,728

4,320

8,064

17,280

29,952

46,080

62,208

74,880

18x18 Multipliers

4

12

16

24

32

40

96

104

Block RAM Bits

72K

216K

288K

432K

576K

720K

1,728K

1,872K

Distributed RAM Bits

12K

30K

56K

120K

208K

320K

432K

520K

DCMs

2

4

4

4

4

4

4

4

I/O Standards

23

23

23

23

23

23

23

23

Max Differential I/O Pairs

56

76

116

175

221

270

312

344

Max Single Ended I/O

124

173

264

391

487

565

712

784

Page 98: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

FPGAs => Mέλλον • Ενσωμάτωση στο ίδιο ολοκληρωμένο μαζί με τη προγραμματιζόμενη

λογική, ενός τουλάχιστον επεξεργαστή και στατικής μνήμης. Σκοπός αυτής της κίνησης, είναι η μείωση του χρόνου επικοινωνίας μεταξύ των πλέον συνηθισμένων κομματιών που απαντάμε σε ένα σχεδιασμό.

• Ενσωμάτωση σχεδιαστικών πυρήνων (intellectual properties – cores) που θα επιτρέψουν τη πραγματοποίηση συναρτήσεων που είναι δύσκολο ή εξαιρετικά δαπανηρό (σε χρόνο) να επιτευχθούν με τη χρήση προγραμματιζόμενων blocks. Μια ιδιαίτερη κατηγορία θα πρέπει να θεωρούνται cores που επιτρέπουν την πολύ γρήγορη είσοδο / έξοδο δεδομένων προς και από το ολοκληρωμένο, π.χ. optical transceiver cores.

• Ενσωμάτωση αναλογικών προγραμματιζόμενων στοιχείων, όπως τελεστικοί ενισχυτές, μεταβλητές αντιστάσεις ή πυκνωτές. Συνήθως σε ένα σχεδιασμό συνυπάρχουν ψηφιακά και αναλογικά στοιχεία, οπότε η παροχή τέτοιων προγραμματιζόμενων στοιχείων επιτρέπει την πραγματοποίηση του σχεδιασμού σε ένα ολοκληρωμένο.

Page 99: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Family Device Package I/O LCs BRAM DCM Mult eMAC MGT PowerPC

Virtex-4 LX200 FF1513 960 200,448 6,048 12 96 0 0 0

Virtex-4 LX160 FF1513 960 152,064 5,184 12 96 0 0 0

Virtex-4 LX160 FF1148 768 152,064 5,184 12 96 0 0 0

Virtex-4 FX140 FF1760 896 142,128 9,936 20 192 4 24 2

Virtex-4 FX140 FF1517 768 142,128 9,936 20 192 4 24 2

Virtex-4 LX100 FF1513 960 110,592 4,320 12 96 0 0 0

Virtex-4 LX100 FF1148 768 110,592 4,320 12 96 0 0 0

Virtex-4 FX100 FF1517 768 94,896 6,768 12 160 4 20 2

Virtex-4 FX100 FF1152 576 94,896 6,768 12 160 4 20 2

Virtex-4 LX80 FF1148 768 80,640 3,600 12 80 0 0 0

Spartan-3 5000 FG900 633 74,880 1,872 4 104 0 0 0

Spartan-3 4000 FG900 633 62,208 1,728 4 96 0 0 0

Spartan-3 4000L FG900 633 62,208 1,728 4 96 0 0 0

Virtex-4 LX60 FF1148 640 59,904 2,880 8 64 0 0 0

Virtex-4 LX60 FF668 448 59,904 2,880 8 64 0 0 0

Virtex-4 FX60 FF1152 576 58,880 4,176 12 128 2 16 2

Virtex-4 FX60 FF672 352 58,880 4,176 12 128 2 16 2

Virtex-4 SX55 FF1148 640 55,296 5,760 8 512 0 0 0

Spartan-3 2000 FG900 565 46,080 720 4 40 0 0 0

Spartan-3 2000 FG676 487 46,080 720 4 40 0 0 0

Page 100: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Σχεδιαστική Ροή (Τι διαδικασίες πρέπει να ακολουθήσει ο σχεδιαστής)

• Γιατί να βάλουμε διαδικασίες ? • Η διαρκώς αυξανόμενη πολυπλοκότητα έχει σαν

συνέπειες : – Να αυξάνεται σημαντικά ο χρόνος που απαιτείται για τον

σχεδιασμό του συστήματος. – Να γίνεται δυσκολότερος ο έλεγχος του σχεδιασμού, τόσο από

λογικής δηλαδή αν πράγματι ο σχεδιασμός υλοποιεί όλες τις απαιτούμενες συναρτήσεις ακόμη και σε ακραίες καταστάσεις) όσο και από χρονικής πλευράς (δηλαδή αν ο σχεδιασμός ακόμη και κάτω από τις χειρότερες καταστάσεις ανταποκρίνεται μέσα στα πλαίσια της μέγιστης ανεκτής καθυστέρησης διάδοσης).

– Να γίνεται πιο πολύπλοκη η επικοινωνία μεταξύ των διαφορετικών ανθρώπων που ασχολούνται με τον σχεδιασμό υποσυστημάτων που τελικά συνδεόμενα θα αποτελέσουν το συνολικό σύστημα.

Page 101: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Σημερινή κατάσταση • Ο μέσος χρόνος ανταγωνιστικής παρουσίας (πρακτικά και ο

μέσος χρόνος ζωής) ενός συστήματος συρρικνώνεται διαρκώς.

• Σχεδιασμοί οι οποίοι δεν έχουν ελεγχθεί πλήρως για την ορθή λογική και χρονική λειτουργία τους, δεν έχουν κανένα περιθώριο βιωσιμότητας.

• Τα σημερινά συστήματα αποτελούνται πλέον από τόσο πολλά αλλά και τόσο ειδικευμένα υποσυστήματα που τουλάχιστον για το κάθε ένα από αυτά απαιτείται και η ενασχόληση ενός εξειδικευμένου σχεδιαστή. Ολοι αυτοί θα πρέπει να μπορούν να συνεργάζονται αρμονικά έχοντας σαν βάση κάποιο κοινό υπόβαθρο.

Page 102: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Χρήση εργαλείων σχεδιασμού • Να έχουμε ανά πάσα στιγμή μια τυπική αναπαράσταση (formal representation) του

σχεδιασμού μας, κάτι που μειώνει την πολυπλοκότητα ενός ιδεατού σχεδιασμού. • Να μπορούμε να περιγράφουμε τον σχεδιασμό μας σε διάφορα επίπεδα λεπτομέρειας ή

αφαίρεσης (abstraction levels), με σκοπό τον εντοπισμό λογικών λαθών όσο πιο νωρίς μέσα στον σχεδιαστικό κύκλο (design cycle).

• Να μπορούμε να καθορίσουμε με ακρίβεια τις λειτουργίες που θα πρέπει να επιτελεί κάθε υποσύστημα του συνολικού σχεδιασμού αρκετά νωρίς μέσα στο σχεδιαστικό κύκλο, έτσι ώστε οι διάφοροι σχεδιαστές που εργάζονται σε διαφορετικά υποσυστήματα να είναι ανεξάρτητοι ο ένας από την πρόοδο και τις ιδιαιτερότητες του σχεδιασμού του άλλου.

• Να σχεδιάζουμε χωρίς να ενδιαφερόμαστε για την τεχνολογία υλοποίησης παρά μόνο στα τελικά στάδια πρωτοτυποποίησης του σχεδιασμού μας.

• Να μπορούμε να δοκιμάζουμε διάφορες τεχνολογίες υλοποίησης του σχεδιασμού μας, με σκοπό να καταλήξουμε σε αυτήν που θα ικανοποιεί τις λογικές και χρονικές απαιτήσεις που τέθηκαν με το μικρότερο δυνατό κόστος, την ελάχιστη κατανάλωση ισχύος και την μεγαλύτερη αξιοπιστία (reliability).

• Να μπορούμε να παράγουμε με αυτόματο τρόπο σημαντικό μέρος από την τεκμηρίωση του σχεδιασμού μας.

• Να καταλήγουμε σε σχεδιασμούς άμεσα επαναχρησιμοποιούμενους.

Page 103: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Front vs Back End • Front – end. Κατά την φάση αυτή εκτελούνται η εισαγωγή του

σχεδιασμού στον υπολογιστή σε διάφορα επίπεδα αφαίρεσης και ο έλεγχος λογικής και χρονικής λειτουργίας του συστήματος. Η φάση αυτή είναι συνήθως ανεξάρτητη από την τελική υλοποίηση του κυκλώματος αν και για την χρονική επαλήθευση του σχεδιασμού χρησιμοποιούνται χρονικά μοντέλα για το υλικό κάποιας συγκεκριμένης τεχνολογίας.

• Back – end. Η φάση αυτή περιέχει τις διαδικασίες αντιστοίχησης του σχεδιασμού σε κάποια συγκεκριμένη τεχνολογία, την φυσική υλοποίησή του, την εξαγωγή πραγματικών χρονικών παραμέτρων και την χρονική επαλήθευση του υλοποιημένου σχεδιασμού.

Page 104: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Tρόποι περιγραφής σχεδιασμού

• Γραφικά. • Με λογικές συναρτήσεις ή με τους αντίστοιχους πίνακες

αληθείας του σχεδιασμού. • Με εξειδικευμένες γλώσσες περιγραφής υλικού (Hardware

Description Languages όπως για παράδειγμα οι καθιερωμένες Verilog και VHDL) ή κλασσικές γλώσσες με κατάλληλες δομές για την περιγραφή της παραλληλίας του υλικού (π.χ. Handel C).

• Με μηχανές πεπερασμένων καταστάσεων (Finite State Machines – FSM).

• Με γεννήτορες προκαθορισμένων σχεδιασμών (Block generators).

• Με οποιονδήποτε συνδυασμό των παραπάνω τεχνικών.

Page 105: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Φιλοσοφίες σχεδιασμού

• Η φιλοσοφία από το γενικότερο προς το ειδικότερο (Top – down) και

• Η φιλοσοφία από το ειδικότερο προς το γενικότερο (Bottom – up).

• Δημιουργείται μια ιεραρχία επιπέδων σχεδιασμού, όπου το πιο πάνω επίπεδο γίνεται πολύ πιο συγκεκριμένο βάσει του αμέσως επομένου επιπέδου της ιεραρχίας.

• Εισάγεται και η έννοια της επαναχρησιμοποίησης ενός υποσυστήματος (reusable design block).

• Η διαδικασία αλλαγών και δοκιμών γίνεται σημαντικά ευκολότερη.

Page 106: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Ιεραρχίες σχεδιασμού και αντιστοιχίσεις

• Σε σχέση με το σύστημα αρχείων : – …\ design \ schematic – …\ design \ 8-bit full-adder \ schematic – …\ design \ 8-bit full-adder \ 4-bit full-adder \ schematic – …\ design \ 8-bit full-adder \ 4-bit full-adder \ 2-bit full-adder \ schematic – …\ design\8-bit full-adder\4-bit full-adder\2-bit full-adder\ 1-bit full-adder \

schematic

Page 107: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Εξομοίωση

• Εξομοιωτής : s/w • Eίσοδοι : netlist + είσοδες (stimuli) • Για χρονική εξομοίωση + χρονική πληροφορία (από κατασκευαστή ή από

σχεδιαστή). • Εξοδοι : κυματομορφές / pass or fail or … • Tιμές σημάτων :

– U (uknown). Το σήμα βρίσκεται σε κατάσταση απροσδιοριστίας. – Z (high Z). To σήμα παρουσιάζει υψηλή εμπέδηση. – R1 (resistive 1). Το σήμα βρίσκεται στο λογικό 1, συνδεδεμένο στη τροφοδοσία μέσω

κάποιας αντίστασης. Προφανώς αυτό το σήμα έχει μικρότερη οδηγητική ικανότητα από ένα σήμα που βρίσκεται στο 1. Η βραχυκύκλωση ενός τέτοιου σήματος με το 0, θα δώσει 0 στην έξοδο και όχι κατάσταση απροσδιοριστίας.

– R0 (resistive 0). Το σήμα βρίσκεται στο λογικό 0, συνδεδεμένο στη γείωση μέσω κάποιας αντίστασης. Προφανώς αυτό το σήμα έχει μικρότερη οδηγητική ικανότητα από ένα σήμα που βρίσκεται στο 0. Η βραυχκύκλωση ενός τέτοιου σήματος με το 1, θα δώσει 1 στην έξοδο και όχι κατάσταση απροσδιοριστίας

• Ιnter-tool communication, cross-probing => εύκολο debugging !

Page 108: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Διαδικασίες για Back – end (διαφοροποιούνται ανάλογα με τη τεχνολογία υλοποίησης)

• Διαδικασία της σύνθεσης (synthesis) : κύκλωμα γενικευμένης τεχνολογίας (generic technology) ή σε κύκλωμα της συγκεκριμένης τεχνολογίας. – Ο συνθέτης δεν είναι ικανός να παρέχει ένα μόνο κύκλωμα στη στοχευόμενη τεχνολογία.

Είναι ικανός να παράγει διάφορα κυκλώματα τα οποία προφανώς υλοποιούν τις στοχευόμενες συναρτήσεις, αλλά το καθένα έχει διαφορετικά χαρακτηριστικά ταχύτητας λειτουργίας, εμβαδού υλοποίησης ή κατανάλωσης ισχύος.

– Ο σχεδιαστής είναι εκείνος που θα κατευθύνει τη διαδικασία της σύνθεσης και θα θέσει στον συνθέτη τους απαραίτητους στόχους – περιορισμούς (constraints) τους οποίους θα προσπαθήσει ο συνθέτης να εκπληρώσει.

– Τις περισσότερες φορές ο συνθέτης όχι μόνο θα εκπληρώσει τους περιορισμούς του σχεδιαστή αλλά θα τους υπερκεράσει, αφήνοντας έτσι ένα περιθώριο λάθους στις εκτιμήσεις του που είναι απαραίτητο μιας και ο σχεδιασμός δεν έχει πάρει ακόμη τη τελική φυσική του μορφή.

• Διαδικασία γέννησης Προκαθορισμένων Συναρτήσεων (Macro Block Generation) • Διαδικασία εξομάλυνσης του σχεδιασμού (Flattening) : netlist χωρίς καθόλου

ιεραρχικές αναφορές. • Διαδικασία αντιστοίχησης του κυκλώματος στην συγκεκριμένη τεχνολογία

(Mapping) • Διαδικασία συσκευασίας (packaging) – PCB only

Page 109: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Placement (Διαφορετικοί στόχοι για PCB και διαφορετικοί για FPGA)

• Στόχοι : – Ο συνολικός σχεδιασμός μας να καταλαμβάνει το δυνατόν μικρότερο φυσικό

χώρο. – Να μπορεί να γίνει απρόσκοπτα η διασύνδεση μεταξύ των στοιχειωδών

κομματιών αν και όπου απαιτείται αυτή σύμφωνα με τα δεδομένα του netlist. – Να εξασφαλίσουμε ότι διασυνδεδεόμενα κομμάτια του σχεδιασμού μας θα

βρίσκονται σε μικρή απόσταση το ένα από το άλλο και συνεπώς οι γραμμές διασύνδεσής τους θα έχουν μικρή αντίσταση και θα εισάγουν μικρή καθυστέρηση και τον ελάχιστο δυνατό θόρυβο.

– Να διατάξουμε τα υποσυστήματα του σχεδιασμού μας έτσι ώστε να διευκολύνουμε την διασύνδεσή του με άλλα συστήματα.

• ΝP complete πρόβλημα => Use heuristics. • Παρέμβαση από το σχεδιαστή πολλές φορές αναπόφευκτη.

Page 110: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Εξοδος Tοποθέτησης

Page 111: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Routing (Διαφορετικοί στόχοι για PCB και διαφορετικοί για FPGA)

• Στόχοι : – Ολοκλήρωση του όσο δυνατόν μεγαλύτερου ποσοστού

διαδρόμισης. – Ποιότητα διαδρόμισης :

• Συνολικό μήκος διαδρόμισης • Μέγιστο μήκος γραμμής • Ελάχιστη απόσταση μεταξύ γραμμών

• ΝP complete πρόβλημα => Use heuristics. Several passes. • Manual routing • Beautification

Page 112: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Εξοδος Διαδρόμισης

Page 113: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Χρονική Επαλήθευση και αρχεία κατασκευής • LVS (Layout vs Schematic)

• Εξαγωγή φυσικών μεγεθών (extraction)

– Aντίσταση – Χωρητικότητα – Θερμική πυκνότητα

• Eνημέρωση της βάσης δεδομένων του σχεδιασμού (back annotation) – Standard Delay File (SDF)

• Χρήση του εξομοιωτή με την επαυξημένη πληροφορία από το φυσικό κόσμο μαζί με τα μοντέλα χρονικής εξομοίωσης.

Page 114: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Συνοπτικό Flowchart Γραφική

Αναπαράσταση

Αναπαράσταση σεκάποια Γλώσσα

Προγραμματισμού

Περιγραφή σανΜηχανή

ΠεπερασμένωνΚαταστάσεων

Περιγραφή σανΠροκαθορισμένος

Σχεδιασμός

Εισαγωγή του Σχεδιασμού

Λογική ΕξομοίωσηStimulus File

ΧρονικήΕξομοίωση ήΕπαλήθευση

Χρονικά Μοντέλα

Σύνθεση Macro BlockGenerationΕξομάλυνση

Αντιστοίχηση στηνσυγκεκριμένη

τεχνολογία

Netlist

Netlist συγκεκριμένηςτεχνολογίας

Διάταξη στο χώρο& Διασύνδεση

Εξαγωγή φυσικώνμεγεθών

Αρχεία Κατασκευής ΕπαυξημέναΧρονικά Μοντέλα

Page 115: E-CADpc-vlsi18.ceid.upatras.gr/files/slides_ecad.pdf · 2011. 10. 28. · Υποοικογένειες cmos • h αντίστοιχη με την 7400 σειρά cmos είναι

Flow Engine

Translate

Map

Timing (Sim)

Place & Route

Configure