Αποστολέλλης Βασίλης

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

Ψηφιακά Κυκλώματα (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

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

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

ΑΣΚΗΣΗ 3 η Ο ΑΝΤΙΣΤΡΟΦΕΑΣ CMOS

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

"My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch

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

Κεφάλαιο Τρία: Ψηφιακά Ηλεκτρονικά

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (10 η σειρά διαφανειών)

ΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών

ΑΣΚΗΣΗ 2 η N-MOS ΚΑΙ P-MOS TRANSISTOR ΩΣ ΔΙΑΚΟΠΤΗΣ

9 ο Μαθητικό Συνέδριο Πληροφορικής Κεντρικής Μακεδονίας. "My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch

Πράξεις με δυαδικούς αριθμούς

Εργαστηριακή άσκηση. Θεωρητικός και πρακτικός υπολογισμός καθυστερήσεων σε αναστροφείς CMOS VLSI

Δ Ι Π Λ Ω Μ ΑΤ Ι Κ Η Ε Ρ ΓΑ Σ Ι Α

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

ΘΕΜΑ : ΟΛΟΚΛΗΡΩΜΕΝΑ ΚΥΚΛΩΜΑΤΑ ΔΙΑΡΚΕΙΑ: 1 περιόδος. 24/11/ :09 Όνομα: Λεκάκης Κωνσταντίνος καθ. Τεχνολογίας

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (8 η σειρά διαφανειών)

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Ψηφιακή Σχεδίαση Εργαστηριο 1. Τμήμα: Μηχανικών Πληροφορικής κ Τηλεπικοινωνιών Διδάσκων: Δρ. Σωτήριος Κοντογιαννης Μάθημα 2 ου εξαμήνου

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI I

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Συνδυαστική Λογική. Επιμέλεια Διαφανειών: Δ.

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

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ.

Αθροιστές. Ημιαθροιστής

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

4/10/2008. Στατικές πύλες CMOS και πύλες με τρανζίστορ διέλευσης. Πραγματικά τρανζίστορ. Ψηφιακή λειτουργία. Κανόνες ψηφιακής λειτουργίας

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ. ΜΑΘΗΜΑ 2 ο. ΑΛΓΕΒΡΑ Boole ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ

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

4.2 Αναπαράσταση δυαδικών τιμών στα ψηφιακά κυκλώματα

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ

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

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

Εκτέλεση πράξεων. Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική. Πράξεις με δυαδικούς αριθμούς. Πράξεις με δυαδικούς αριθμούς

ΣΧΕΔΙΑΣΗ ΚΑΙ ΚΑΤΑΣΚΕΥΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ. Δρ. Δ. Λαμπάκης (9 η σειρά διαφανειών)

Ψηφιακά Συστήματα. 6. Σχεδίαση Συνδυαστικών Κυκλωμάτων

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

Πράξεις με δυαδικούς αριθμούς

Κεφάλαιο 8. Αριθμητική Λογική μονάδα

Εργαστηριακή άσκηση. Σχεδίαση layout και προσομοίωση κυκλώματος με το πρόγραμμα MICROWIND

Γ2.1 Στοιχεία Αρχιτεκτονικής. Γ Λυκείου Κατεύθυνσης

ΗΜΥ-210: Λογικός Σχεδιασμός Εαρινό Εξάμηνο Κυκλώματα CMOS. Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Κεφάλαιο 3. Λογικές Πύλες

4.1 Θεωρητική εισαγωγή

V Vin $N PULSE 1.8V p 0.1p 1n 2n M M1 $N 0002 $N 0001 Vout $N 0002 MpTSMC180 + L=180n + W=720n + AD=0.324p + AS=0.

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

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Επίπεδο Ψηφιακής Λογικής (The Digital Logic Level)

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος...9 ΚΕΦ. 1. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ - ΚΩΔΙΚΕΣ

2. ΛΟΓΙΚΕΣ ΠΥΛΕΣ. e-book ΛΟΓΙΚΗ ΣΧΕ ΙΑΣΗ ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ- ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 1

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

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

σύνθεση και απλοποίησή τους θεωρήµατα της άλγεβρας Boole, αξιώµατα του Huntington, κλπ.

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

ΑΣΚΗΣΗ 8 η -9 η ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΗΣ ΛΟΓΙΚΗΣ ΜΟΝΑΔΑΣ ΤΕΣΣΑΡΩΝ ΔΥΑΔΙΚΩΝ ΨΗΦΙΩΝ

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Αναλογικά & Ψηφιακά Κυκλώματα ιαφάνειες Μαθήματος ρ. Μηχ. Μαραβελάκης Εμ.

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

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

Καθυστέρηση στατικών πυλών CMOS

Ενότητα 3 ΨΗΦΙΑΚΑ ΟΛΟΚΛΗΡΩΜΕΝΑ ΚΥΚΛΩΜΑΤΑ

Εισαγωγή στους Υπολογιστές

10o ΕΡΓΑΣΤΗΡΙΟ Στοιχεία Χωροθεσίας (Layout) CMOS

3. ΛΟΓΙΚΕΣ ΠΡΑΞΕΙΣ & ΛΟΓΙΚΕΣ ΠΥΛΕΣ

9. OIΚΟΥΜΕΝΙΚΕΣ ΠΥΛΕΣ ΠΟΛΛΑΠΛΩΝ ΕΙΣΟ ΩΝ

1 η Θεµατική Ενότητα : Αριθµητικά Κυκλώµατα. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

Κεφάλαιο 4. Λογική Σχεδίαση

K15 Ψηφιακή Λογική Σχεδίαση 6: Λογικές πύλες και λογικά κυκλώματα

ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 2 ΛΟΓΙΚΕΣ ΠΥΛΕΣ OR, NOR, XOR

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ;

Περιεχόμενα. Πρώτο Κεφάλαιο. Εισαγωγή στα Ψηφιακά Συστήματα. Δεύτερο Κεφάλαιο. Αριθμητικά Συστήματα Κώδικες

e-book ΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΑΣΚΗΣΕΙΣ

ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΨΗΦΙΑΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ. Κεφάλαιο 3

6.1 Θεωρητική εισαγωγή

Σωστή απάντηση το: Γ. Απάντηση

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής

Υλοποίηση λογικών πυλών µε τρανζίστορ MOS. Εισαγωγή στην Ηλεκτρονική

Επίπεδο Ψηφιακής Λογικής (The Digital Logic Level)

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Άλγεβρα Boole και Λογικές Πύλες 2. Επιμέλεια Διαφανειών: Δ.

Το μάθημα συνοπτικά (1) Το μάθημα συνοπτικά (2) Τι είναι ένα υπολογιστικό σύστημα ;

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2016

Φυσική σχεδίαση ολοκληρωμένων κυκλωμάτων

Μάθημα 5: Χαρακτηριστικά της Κ.Μ.Ε.

3. Βασικές αρχές ψηφιακών κυκλωμάτων και συστημάτων

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΗΛΕΚΤΡΟΝΙΚΗ VLSI. Δρ. ΕΥΣΤΑΘΙΟΣ ΚΥΡΙΑΚΗΣ-ΜΠΙΤΖΑΡΟΣ ΑΝΑΠΛΗΡΩΤΗΣ ΚΑΘΗΓΗΤΗΣ

ΑΣΚΗΣΗ 4 ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΩΝ ΛΟΓΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ

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

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

Ενότητα 9 ΑΡΙΘΜΗΤΙΚΑ & ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ

Λογική Σχεδίαση Ι - Εξεταστική Φεβρουαρίου 2013 Διάρκεια εξέτασης : 160 Ονοματεπώνυμο : Α. Μ. Έτος σπουδών:

Ελίνα Μακρή

ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 3

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΕΙΡΙΑΚΗ ΠΡΟΣΘΕΣΗ

ΑΣΚΗΣΗ 3 ΣΥΝΔΥΑΣΤΙΚΑ ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ: ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ

Βασικές CMOS Λογικές οικογένειες (CMOS και Domino)

ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

Transcript:

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ «ΜΕΛΕΤΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΚΥΚΩΜΑΤΩΝ ΑΘΡΟΙΣΤΩΝ CMOS ΜΕ ΒΕΛΤΙΩΣΗ ΣΤΗΝ ΔΙΑΔΟΣΗ ΤΟΥ ΚΡΑΤΟΥΜΕΝΟΥ» Πτυχιακή Εργασία Αποστολέλλης Βασίλης Επιβλέπων Καθηγητής: Νικόλαος Κονοφάος ΘΕΣΣΑΛΟΝΙΚΗ 2014

ARISTOTLE UNIVERSITY OF THESSALONIKI FACULTY OF SCIENCES DEPARTMENT OF INFORMATICS «DESIGN AND SIMULATION OF THE CMOS FULL ADDER WITH REDUSED CARRY- OUT DELAY» Diploma Thesis Apostolellis Vasilis Supervising Professor: Nikolaos Konofaos THESSALONIKI 2014

Περιεχόμενα Πρόλογος... Περίληψη... 1 Abstract... 2 Μέρος Α... 3 1.1 Ολοκληρωμένο Κύκλωμα... 4 1.1.1 Εισαγωγή... 4 1.1.2 Ιστορική Αναδρομή... 4 1.1.3 Διάκριση Ολοκληρωμένων Κυκλωμάτων... 5 1.1.4 Κατασκευή... 5 1.2 Δυαδική Λογική... 7 1.2.1 Λογικές πύλες... 7 1.2.2 Είδη Λογικών Πυλών... 7 1.3 Τεχνολογία MOSFET... 10 1.3.1 Εισαγωγή... 10 1.3.2 n- MOS... 11 1.3.3 p- MOS... 12 1.3.4 Δυαδικότητα Και Λογική... 12 1.4 Αθροιστές... 14 1.4.1 Εισαγωγή... 14 1.4.2 Ημιαθροιστές... 15 1.4.3 Πλήρης Αθροιστές... 16 1.4.4 4- bit Αθροιστής Ριπής (Ripple carry adder)... 17 1.5 Αθροιστές με βελτίωση στην διάδοση του κρατουμένου... 21 1.5.1 Εισαγωγή... 21 1.5.2 4- bit Αθροιστής Βελτιωμένος (Ripple carry adder with complemented data)... 22 1.5.3 Carry Lookahead Αθροιστης... 24 1.6 Λογισμικό Προσομοίωσης Microwind... 27 1.6.1 Τι είναι το Microwind... 27 1.6.2 Δομικά Στοιχεία Και Γραφικό Περιβάλλον... 28 1.6.3 Διαδικασία Σχεδίασης... 29 1.6.4 Εξαγωγή Χαρακτηριστικών & Προσομοίωση Κυκλωμάτων... 32

Μέρος Β... 34 2.1 Εισαγωγή... 35 2.2 Σύνθεση Βασικών Κυκλωμάτων... 36 2.2.1 Κύκλωμα Αντιστροφέα... 36 2.2.2 Κύκλωμα Ζ1 & Z2... 38 2.2.3 Κύκλωμα 1- bit Adder... 43 2.2.4 Κύκλωμα 1- bit Adder with complemented data... 46 2.3 Σύνθεση Κυκλωμάτων 4- bit Αθροιστών... 49 2.3.1 4- bit Ripple- Carry Adder... 49 2.3.2 4- bit Ripple- Carry Adder with complemented data... 50 2.4 Τεχνολογία 32nm... 52 2.4.1 Εισαγωγή... 52 2.4.2 Επίδραση στο μέγεθος και στην κατανάλωση ισχύος... 53 2.5 Συμπεράσματα... 56 Βιβλιογραφία... 57

Πρόλογος Η παρούσα διπλωματική εργασία εκπονήθηκε στα πλαίσια της ολοκλήρωσης των σπουδών μου στο Τμήμα Πληροφορικής της Σχολής Θετικών Επιστημών του Αριστοτελείου Πανεπιστημίου Θεσσαλονίκης. Θα ήθελα να ευχαριστήσω θερμά τον επιβλέπων καθηγητή κύριο Νικόλαο Κονοφάο, αναπληρωτή καθηγητή του Τμήματος Πληροφορικής ΑΠΘ, για την συνεχή και ουσιαστική βοήθειά του στην συγκρότηση και ολοκλήρωση της εργασίας καθώς και για την άριστη συνεργασία που είχαμε τόσο ως επιβλέπων καθηγητή στην πτυχιακή αλλά και ως καθηγητή των μαθημάτων. Τέλος, θέλω να ευχαριστήσω τους γονείς μου και τα δυο μου αδέρφια για την αμέριστη συμπαράσταση και υποστήριξη που μου έδειξαν καθ' όλη την διάρκεια των σπουδών μου και για τα κίνητρα που μου έδιναν να συνεχίσω. Αποστολέλλης Βασίλης Θεσσαλονίκη, 2014

Περίληψη Στην παρούσα πτυχιακή εργασία έγινε μια γενική μελέτη των ολοκληρωμένων κυκλωμάτων και ειδικότερα αυτό του αθροιστή. Αρχικά στο πρώτο μέρος, δίνονται κάποιοι βασικοί ορισμοί που αφορούν τα ολοκληρωμένα κυκλώματα και την δυαδική λογική, όπως και ένα μικρό ιστορικό υπόβαθρο των τεχνολογιών αυτών. Μελετάμε τα συμπληρωματικά τρανζίστορ CMOS, ζωτικό στοιχείο των κυκλωμάτων που θα σχεδιάσουμε στο δεύτερο μέρος της παρούσας εργασίας, τον τρόπο λειτουργίας τους καθώς και κάποια πλεονεκτήματα και μειονεκτήματα που παρουσιάζουν. Ακολούθως, βλέπουμε ένα από τα σημαντικότερα δομικά στοιχεία των ολοκληρωμένων κυκλωμάτων, τους αθροιστές, περιγράφουμε την λειτουργία τους και μελετάμε τα διαφορετικά είδη που υπάρχουν και την χρησιμότητα του καθενός. Έπειτα αναλύουμε σε επίπεδο λογικών πυλών αλλά και επίπεδο τρανζίστορ το κύκλωμα του 4- bit πλήρη αθροιστή με βελτίωση στην διάδοση του κρατουμένου και κάνουμε και μια θεωρητική αλλά αναλυτική μελέτη του CLA ( carry look- ahead ) αθροιστή. Στη συνέχεια, γίνεται μια συνοπτική περιγραφή του λογισμικού με το οποίο υλοποιήθηκαν οι προσομοιώσεις, το Microwind 3.1. Στο δεύτερο μέρος της εργασίας, παρουσιάζονται αναλυτικά τα κυκλώματα του ripple- carry πλήρη αθροιστή αλλά και μια βελτιωμένη έκδοση αυτού που λύνει σε έναν μικρό βαθμό το πρόβλημα τις αργής διάδοσης του κρατουμένου. Σχεδιάζουμε το layout τους στο σχεδιαστικό περιβάλλον του Microwind και έπειτα τρέχουμε την προσομοίωση με διάφορες τιμές εισόδου για να διαπιστώσουμε την ορθή λειτουργία του κυκλώματος. Τέλος μελετήθηκε η απόδοση των δυο αυτών κυκλωμάτων στο πεδίο του χρόνου αλλά και με την χρήση των εργαλειών που παρέχει το Microwind βγάλαμε συμπεράσματα για την επιρροή της κλίμακας ολοκλήρωσης στην επιφάνεια, την κατανάλωση ισχύος και άλλα χαρακτηριστικά των κυκλωμάτων CMOS. 1

Abstract This thesis was a general study of integrated circuits and a more in depth study of the adder circuit. In the first part, we give some basic definitions related to integrated circuits and binary logic, such as a little historical background of these technologies. We study the complementary transistor CMOS, a very important element of the circuit that we will design in the second part of this paper, and we will explain how they operate and some advantages and disadvantages that they show. Next, we see one of the major building blocks of integrated circuits, adders, we describe their function and study some more complex adders and the way they operate. Then we analyze the 4- bit full adder with reduced carry- out delay and we do a theoretical analysis of the CLA (carry look- ahead) adder. At the end of the first part we make a brief description of the software, which implemented the simulations, the Microwind 3.1. In the second part we present in detail the circuits of the ripple- carry full adder and an improved version of it that solves the problem of the large carry delay- out time. We design the layout in the environment of Microwind and then we run the simulation with different input values to check the proper operation of the circuit. Finally we study the performance of these two circuits in the time domain and with the tools provided in Microwind we draw conclusions about the influence of the surface scale integration, power consumption and other characteristics of the CMOS circuits. 2

Μέρος Α 3

1.1 Ολοκληρωμένο Κύκλωμα 1.1.1 Εισαγωγή Τα ολοκληρωμένα κυκλώματα έχουν πλέον γίνει αναπόσπαστο μέρος της ζωής μας. Για παράδειγμα, οι περισσότεροι άνθρωποι έχουν ακούσει τον όρο «μικροεπεξεργαστής». Ένας μικροεπεξεργαστής είναι ένα ολοκληρωμένο κύκλωμα (ή όπως συνηθίζεται, απλά «ολοκληρωμένο») που επεξεργάζεται όλες τις πληροφορίες σε ένα Ηλεκτρονικό Υπολογιστή (Η/Υ). Συγκεκριμένα, κρατά πληροφορίες για το ποια πλήκτρα έχουν πατηθεί, τι πρέπει να εμφανιστεί στην οθόνη και εάν το ποντίκι έχει μετακινηθεί. Μπορεί να μετρήσει αριθμούς, να τρέξει προγράμματα, παιχνίδια και το λειτουργικό σύστημα. Τα ολοκληρωμένα βρίσκονται σχεδόν σε κάθε μοντέρνα ηλεκτρονική συσκευή, όπως τα αυτοκίνητα, οι τηλεοράσεις, τα κινητά τηλέφωνα, κτλ. Τι είναι όμως ένα ολοκληρωμένο κύκλωμα και ποια είναι η ιστορία του; 1.1.2 Ιστορική Αναδροµή Το πιο σημαντικό στοιχείο για την ανάπτυξη των σύγχρονων Η/Υ είναι το τρανζίστορ. Πριν από το τρανζίστορ, οι μηχανικοί αναγκάζονταν να χρησιμοποιούν ηλεκτρονικές λυχνίες. Η ηλεκτρονική λυχνία μπορεί να ενεργοποιήσει /απενεργοποιήσει τον ηλεκτρισμό ή να ενισχύσει το ρεύμα. Γιατί όμως χρειάστηκε να αντικατασταθεί από το τρανζίστορ; Η ηλεκτρονική λυχνία φαίνεται και συμπεριφέρεται πολύ παρόμοια με μία ηλεκτρική λάμπα. Παράγει αρκετή θερμότητα και έχει την τάση να καίγεται. Επιπρόσθετα, συγκριτικά με το τρανζίστορ, είναι αργή και ογκώδης. Όταν οι μηχανικοί προσπάθησαν να κατασκευάσουν πολύπλοκα ψηφιακά κυκλώματα, κατάλαβαν γρήγορα ότι οι ηλεκτρονικές λυχνίες είχαν περιορισμούς. Για παράδειγμα, ο πρώτος ψηφιακός Η/Υ, ο ENIAC (Electronic Numerical Integrator and Calculator), ήταν τεράστιος. Ζύγιζε περισσότερο από 30 τόνους και κατανάλωνε 200 KW ηλεκτρικής ενέργειας. Διάθετε περίπου 18,000 ηλεκτρονικές λυχνίες που καθιστούσαν το σύστημα αναξιόπιστο, αφού χρειάζονταν συχνή αντικατάσταση. Το 1950 το τρανζίστορ έλυσε ένα μεγάλο κομμάτι των προβλημάτων της λυχνίας αλλά δυστυχώς για τους μηχανικούς της εποχής εκείνης υπήρχε ακόμα ένα μεγάλο πρόβλημα γνωστό και ως «τυραννία των αριθμών». Ουσιαστικά το πρόβλημα ήταν το γεγονός οτι δεν υπήρχε αξιόπιστος τρόπος να κατασκευαστούν περίπλοκα και μεγάλα λογικά κυκλώματα. Το 1958 ο Τζακ Κίλμπυ εφηύρε το ολοκληρωμένο κύκλωμα. Η ιδέα του ήταν να δημιουργούνται τα στοιχεία του κυκλώματος πάνω σε ένα φύλλο ημιαγωγού με μηχανοποιημένο και συστηματικό 4

τρόπο, αντί να συνδέονται και να τοποθετούνται τα διάφορα στοιχεία του κυκλώματος με το χέρι. Η δημιουργία των στοιχείων γίνεται με νοθεύσεις άλλων στοιχείων και επιστρώσεις. Το ολοκληρωμένο κύκλωμα ήταν μια τομή στην ιστορία των υπολογιστών διαχωρίζοντάς την στα δύο. Υπάρχουν τέσσερις γενιές υπολογιστών, οι δύο πρώτες γενιά λυχνίας κενού και γενιά τρανζίστορ δεν κατασκευάζονται από ολοκληρωμένα κυκλώματα, ενώ οι επόμενες δύο γενιά ολοκληρωμένου κυκλώματος και γενιά μικροεπεξεργαστή χρησιμοποιούν ολοκληρωμένα κυκλώματα και η τέταρτη χρησιμοποιεί το ολοκληρωμένο κύκλωμα μικροεπεξεργαστής. Η εξέλιξη των ολοκληρωμένων κυκλωμάτων ακολουθεί τον νόμο του Μουρ, το πλήθος των τρανζίστορ ανά τετραγωνική ίντσα ενός ολοκληρωμένου κυκλώματος διπλασιάζεται κάθε 18 μήνες. 1.1.3 Διάκριση Ολοκληρωµένων Κυκλωµάτων Τα ολοκληρωμένα κυκλώματα διακρίνονται σε τέσσερις κατηγορίες SSI, MSI, LSI και VLSI, ανάλογα με τον αριθμό των λογικών πυλών από τα οποία αποτελούνται. SSI: Μικρής κλίμακας ολοκλήρωσης είναι τα ολοκληρωμένα κυκλώματα τα οποία περιλαμβάνουν μία με είκοσι λογικές πύλες. Περιέχουν τις μεμονωμένες λογικές πύλες που μπορεί να χρειάζεται ένα απλό κύκλωμα. MSI: Μεσαίας κλίμακας ολοκλήρωσης είναι τα ολοκληρωμένα κυκλώματα τα οποία περιλαμβάνουν είκοσι με 200 λογικές πύλες. Περιέχουν λειτουργικές δομικές μονάδες ολοκληρωμένων κυκλωμάτων LSI: Μεγάλης κλίμακας ολοκλήρωσης είναι τα ολοκληρωμένα κυκλώματα τα οποία περιλαμβάνουν 200 με περίπου 200000 λογικές πύλες. VLSI: Πολύ μεγάλης κλίμακας ολοκλήρωσης είναι τα ολοκληρωμένα κυκλώματα τα οποία περιλαμβάνουν πολλές λογικές πύλες. 1.1.4 Κατασκευή Η παραγωγή των τσιπ σήμερα βασίζεται στην φωτολιθογραφία, όπου UV (υπεριώδης ακτινοβολίας) φως υψηλής ενέργειας εκπέμπεται μέσα από μια μάσκα σε ένα κομμάτι πυρίτιο που είναι καλυμμένο με ένα φωτοευαίσθητο φιλμ. Η μάσκα περιγράφει τα στοιχεία του τσιπ και έτσι οι ακτίνες UV κτυπούν περιοχές που δεν καλύπτονται από την μάσκα αυτή. Όταν εμφανιστεί το φιλμ οι περιοχές που κτυπήθηκαν από το φως αφαιρούνται, με αποτέλεσμα το τσιπ να έχει 5

προστατευόμενες και μη- προστατευόμενες περιοχές που μορφοποιούν ένα σκελετό που είναι το πρώτο βήμα για τη δημιουργία των τελικών στοιχείων του τσιπ. Έπειτα οι μη- προστατευόμενες περιοχές επεξεργάζονται έτσι ώστε να αλλάξουν οι ηλεκτρικές τους ιδιότητες. Ένα νέο στρώμα υλικού προστίθεται, και η διαδικασία επαναλαμβάνεται, για κάθε στρώμα, για να κατασκευαστεί το κύκλωμα. Όταν δημιουργηθούν όλα τα στοιχεία και το κύκλωμα ολοκληρωθεί, προστίθεται ένα νέο στρώμα από μέταλλο και επαναλαμβάνεται η ίδια διαδικασία με την διαφορά ότι η μάσκα που χρησιμοποιείται περιγράφει τα σύρματα που ενώνουν τα διάφορα στοιχεία του τσιπ. Το φιλμ εμφανίζεται και αφαιρούνται τα κομμάτια που δεν είχαν εκτεθεί στην ακτινοβολία. Ακολούθως, τα κομμάτια μετάλλου που δεν προστατεύτηκαν από το φιλμ αφαιρούνται και έτσι τα σύρματα παίρνουν μορφή. Εικόνα 1.1: Ψηφιακή απεικόνιση ενός απλού κυκλώματος που φαίνονται ξεκάθαρα οι διαφορετικές στρώσεις. (το διηλεκτρικό έχει αφαιρεθεί από το σχέδιο) 6

1.2 Δυαδική Λογική 1.2.1 Λογικές πύλες Στα ηλεκτρονικά κυκλώματα, η λογική πύλη είναι μια συσκευή για την εφαρμογή της Boolean άλγεβρας. Δηλαδή εκτελεί μια λογική πράξη σε μία ή περισσότερες λογικές εισόδους, και παράγει μια ενιαία λογική έξοδο. Οι λογικές πύλες έχουν δημιουργηθεί για να δουλεύουν στο δυαδικό σύστημα. Στα ηλεκτρονικά κυκλώματα ως λογικό 0 θεωρείται η τάση εκείνη η οποία είναι κάτω από ένα κατώφλι που έχουν ορίσει οι κατασκευαστές της λογικής πύλης (πχ 0,5V). Αντίστοιχα το λογικό 1 αντιστοιχεί σε τάση η οποία υπερβαίνει κάποια τάση (συνήθως 5V αλλά οι τελευταίες τεχνολογίες έχουν καταφέρει να μειώσουν την τάση αυτή). Με άλλα λόγια το λογικό 0 αντιστοιχεί στην τάση γείωσης και το λογικό 1 σε τάση τροφοδοσίας. Οι λογικές πύλες υλοποιούνται κυρίως με τη χρήση διόδων ή τρανζίστορ που λειτουργούν ουσιαστικά ως ηλεκτρονικοί διακόπτες, αλλά υπάρχουν και άλλοι τρόποι που μπορούν να κατασκευαστούν όπως χρησιμοποιώντας ηλεκτρομαγνητικά ρελέ, οπτική, ή ακόμα και μηχανικά στοιχεία. Τα λογικά κυκλώματα αυτά αποτελούν δομικά στοιχεία συσκευών όπως αθροιστές, πολυπλέκτες, καταχωρητές, arithmetic logic units (ALUs), τη μνήμη του υπολογιστή, μέχρι και πολύ πιο πολύπλοκων κυκλωμάτων όπως αυτά των μικροεπεξεργαστών, που μπορούν να περιέχουν περισσότερα και από 100 εκατομμύρια πύλες. Στην πράξη, οι πύλες κατασκευάζονται από τρανζίστορ τύπου FETs (field- effect transistors), ιδίως MOSFETs (metal oxide semiconductor field- effect transistors). 1.2.2 Είδη Λογικών Πυλών 1. Πύλη ΝΟT Η πύλη ΝΟΤ (OXI) έχει μόνο μια είσοδο και δίνει μόνο μια έξοδο. Η λειτουργία της είναι η αντιστροφή του λογικού σήματος της εσόδου. Ο πίνακας αληθείας και το διάγραμμα της πύλης είναι : I NPUT OUTPUT A NOT A 0 1 1 0 7

2. Πύλη AND Η πύλη AND εκτελεί την λογική πράξη AND (ΚΑΙ) μεταξύ των εισόδων της. Η πράξη AND στην άλγεβρα Boole συμβολίζεται με το σύμβολο επί (*). Για παράδειγμα αν έχουμε μια λογική πύλη AND με δυο εισόδους ο πίνακας αληθείας είναι ο παρακάτω: C=A*B INPUT OUTPUT A B A AND B 0 0 0 0 1 0 1 0 0 1 1 1 3. Πύλη OR Η πύλη OR εκτελεί την λογική πράξη OR (Η) μεταξύ των εισόδων της. Η πράξη OR στην άλγεβρα Boole συμβολίζεται με το σύμβολο συν (+). Για παράδειγμα αν έχουμε μια λογική πύλη OR με δυο εισόδους ο πίνακας αληθείας είναι ο παρακάτω: C=A+B INPUT OUTPUT A B A OR B 0 0 0 0 1 1 1 0 1 1 1 1 4. Πύλη NAND Η πύλη NAND (not- AND) δίνει την αντίθετη έξοδο από την AND δηλαδή δίνει λογικό 1 όταν υπάρχει τουλάχιστον ένα λογικό 0 στις εισόδους. Ο πίνακας καταστάσεων και το διάγραμμα της πύλης είναι τα εξής: A B 8

INPUT OUTPUT A B A NAND B 0 0 1 0 1 1 1 0 1 1 1 0 5. Πύλη NOR Η πύλη NOR (not- OR) δίνει την αντίθετη έξοδο από την OR δηλαδή δίνει λογικό 1 όταν όλες οι είσοδοι είναι λογικό 0. Ο πίνακας καταστάσεων και το διάγραμμα της πύλης είναι τα εξής: Α- Β INPUT OUTPUT A B A NOR B 0 0 1 0 1 0 1 0 0 1 1 0 6. Πύλη XOR (exclusive OR) Η πύλη XOR εκτελεί την λογική πράξη XOR (αποκλειστικό Η') μεταξύ των εισόδων της. Η πράξη XOR στην άλγεβρα Boole συμβολίζεται με ένα συν μέσα σε ένα κύκλο ( ).Για παράδειγμα εάν η πύλη έχει 2 εισόδους (a και b) και μία έξοδο (c) θα γίνει η πράξη. Ο πίνακας αληθείας της λογικής πύλης ΧOR φαίνεται στο εξής σχήμα: C=Α B INPUT OUTPUT A B A XOR B 0 0 0 0 1 1 1 0 1 1 1 0 9

7. Πύλη XNOR Η πύλη ΧNΟR δίνει την αντίθετη έξοδο από την ΧOR, δηλαδή δίνει λογικό 1 όταν οι δύο είσοδοι είναι στην ίδια λογική στάθμη. Ο πίνακας καταστάσεων και το κυκλωματικό σχεδιάγραμμα είναι τα εξής: INPUT OUTPUT A B A XOR B 0 0 0 0 1 1 1 0 1 1 1 0 1.3 Τεχνολογία MOSFET 1.3.1 Εισαγωγή Το MOS τρανζίστορ ή MOSFET είναι ένα τρανζίστορ επίδρασης πεδίου, (Field Effect Transistor), όπως δηλώνει το δεύτερο συνθετικό του ονόματός του. Είναι τρανζίστορ απομονωμένης εισόδου, γι αυτό και αναφέρεται πολλές φορές και ως IGFET (Insulated Gate Field Effect Transistor). Η βασική τους διαφορά έναντι των JFET είναι ότι το δυναµικό που ελέγχει τη λειτουργία τους (δυναµικό πύλης) εφαρµόζεται στην ενεργό περιοχή (κανάλι) διαµέσου ενός µονωτικού στρώµατος από κατάλληλο οξείδιο αντί να εφαρµόζεται µέσω µιας p- n επαφής.τα κυκλώματα με MOS τρανζίστορ παρουσιάζουν πολύ χαμηλή κατανάλωση ισχύος συγκριτικά με αντίστοιχα κυκλώματα με διπολικά τρανζίστορ, όμως, υστερούν ως προς την ταχύτητα λειτουργίας τους. Επίσης, οι διαστάσεις κατασκευής MOS τρανζίστορ, σε ολοκληρωμένη μορφή, είναι κατά πολύ μικρότερες διπολικών τρανζίστορ, γεγονός που καθιστά την MOS τεχνολογία πολύ ελκυστική για κατασκευή ολοκληρωμένων κυκλωμάτων. Η τεχνολογία συμπληρωματικού CMOS (Complementary- MOS) χρησιμοποιεί ένα pmos και ένα nmos τρανζίστορ συνδεδεμένα με ένα συμπληρωματικό τρόπο σε όλα τα κυκλώματα. Τα pmos και nmos είναι MOSFET μονοπολικά τρανζίστορ P και Ν καναλιού αντίστοιχα. Τα ολοκληρωμένα κυκλώματα CMOS μπορούν να λειτουργήσουν ορθά για τάσεις τροφοδοσίας από +3V έως +15V. Τάσεις στην είσοδο από 0 έως 30% της τάσης τροφοδοσία θεωρούνται σαν το λογικό «0», ενώ τάσεις από 70% έως 100% της τάσης τροφοδοσίας θεωρούνται σαν λογικό «1» στην 10

είσοδο. Για παράδειγμα, με τάση τροφοδοσίας 5V, η χαμηλή στάθμη εισόδου κυμαίνεται από 0 έως 1,5V, ενώ για τη υψηλή στάθμη εισόδου είναι από 3,5V έως 5V. Οι τάσεις εξόδου είναι σχεδόν ίσες με τις τάσεις τροφοδοσίας. Για παράδειγμα, για τάση τροφοδοσίας 5V, η έξοδος υψηλής στάθμης είναι περίπου 5V ενώ η χαμηλή στάθμη εξόδου είναι σχεδόν 0V. Εικόνα 1.2: Το τρανζίστορ CMOS 1.3.2 n-mos Για να κατανοήσουμε πιο εύκολα την λειτουργία του κάθε τύπου transistor μπορούμε να τα φανταστούμε σαν μικρούς διακόπτες: Για τα N- type MOS transistors (nmos) έχουμε : Εικόνα 1.3: Το σχέδιο δείχνει ενα n- MOS transistor στην ανοιχτή (Base = 0) και στην κλειστή (Base = 1) μορφή του. 11

Η λογική τιμή που δίνουμε στο Base καθορίζει αν ο διακόπτης θα είναι σε ανοιχτή η κλειστή κατάσταση: Base= 0 : ο διακόπτης είναι ανοιχτός και το Source δεν είναι συνδεδεμένο στο drain. Base= 1 : ο διακόπτης είναι κλειστός και το Source είναι συνδεδεμένο στο drain. 1.3.3 p-mos Όπως και στα n- MOS έτσι και εδώ μπορούμε να τα φανταστούμε σαν μικρούς διακόπτες: Για τα P- type MOS transistors (pmos) έχουμε : Εικόνα 1.4: Το σχέδιο δείχνει ενα p- MOS transistor στην κλειστή (Base = 0) και στην ανοιχτή (Base = 1) μορφή του. Η λογική τιμή που δίνουμε στο Base καθορίζει αν ο διακόπτης θα είναι σε ανοιχτή η κλειστή κατάσταση: Base= 0 : ο διακόπτης είναι κλειστός και το Source είναι συνδεδεμένο στο drain. Base= 1 : ο διακόπτης είναι ανοιχτός και το Source δεν είναι συνδεδεμένο στο drain. 1.3.4 Δυαδικότητα Και Λογική Η δυαδικότητα μεταξύ των τρανζίστορ NMOS και PMOS είναι ένα πολύ σημαντικό χαρακτηριστικό της τεχνολογίας CMOS. Ένα κύκλωμα CMOS φτιάχνεται με τέτοιο τρόπο, ώστε πάντα να υπάρχει αγώγιμο μονοπάτι από την έξοδο προς την 12

τροφοδοσία ή τη γείωση. Για να επιτευχθεί αυτό, το σύνολο όλων των μονοπατιών στην τροφοδοσία πρέπει να είναι συμπλήρωμα του συνόλου των μονοπατιών στη γείωση. Λόγω της λογικής που βασίζεται στους νόμους του De Morgan, για τα τρανζίστορ PMOS σε παράλληλη σύνδεση υπάρχουν αντίστοιχα τρανζίστορ NMOS σε σειρά, ενώ$ για τα τρανζίστορ PMOS σε σειρά υπάρχουν αντίστοιχα τρανζίστορ NMOS σε παράλληλη σύνδεση. Για πολύπλοκες λογικές συναρτήσεις που περιλαμβάνουν πύλες AND και OR, απαιτείται έλεγχος των μονοπατιών μεταξύ των πυλών ώστε να αναπαρασταθεί η λογική. Όταν ένα μονοπάτι αποτελείται από δύο τρανζίστορ σε σειρά, και τα δύο τρανζίστορ πρέπει να έχουν χαμηλή αντίσταση στην αντίστοιχη τάση εισόδου, για να υλοποιήσουν μια λογική πράξη AND. Όταν ένα μονοπάτι αποτελείται από δύο τρανζίστορ σε παράλληλη σύνδεση, ένα από τα δύο ή και τα δύο τρανζίστορ πρέπει να έχουν χαμηλή αντίσταση ώστε να συνδέσουν την τάση εισόδου με την έξοδο και να υλοποιήσουν μια λογική πράξη OR. Για να δούμε και τον τρόπο λειτουργίας τους αλλά και το τρόπο διάταξης τους και την εφαρμογή τους σε λογικά κυκλώματα εξετάζουμε παρακάτω την υλοποίηση δυο απλών κυκλωμάτων παρουσιάζοντας πάλι τα τρανζίστορ σαν μικρούς διακόπτες. NOT gate : Οταν το input=0 τοτε στο pmos ο διακοπτης ειναι κλειστος και του nmos ο διακοπτης ειναι ανοιχτος οποτε το output=1. Οταν το input=1 τοτε στο pmos ο διακοπτης ειναι ανοιχτος και του nmos ο διακοπτης ειναι κλειστος οποτε το output=0. OR gate: Εικόνα 1.5: Κύκλωμα πύλης NOT με CMOS. Ανάλογα με τις τιμές της εισόδου του input Α η Β μπορούμε να δούμε ποιοι διακόπτες ανοίγουν και κλείνουν κάθε φορά. Αυτη η διάταξη μας δίνει ως αποτέλεσμα μια λογική πύλη OR. 13

Π.χ. για inputa=0 & inputb=0 τότε τα nmos είναι ανοιχτά και τα pmos είναι κλειστά οπότε output=0 Π.χ.για inputa=0 & inputb=1 τότε το αριστερο nmos και το πανω pmos είναι ανοιχτα και το δεξι nmos και το κατω pmos ειναι κλειστα το οπότε output=1 Εικόνα 1.6: Κύκλωμα πύλης OR με CMOS. 1.4 Αθροιστές 1.4.1 Εισαγωγή Τα ψηφιακά κυκλώματα και κατα επέκταση οι ηλεκτρονικοί υπολογιστές εκτέλουν ποικίλες διεργασίες επεξεργασίας πληροφορίας οπως για παράδειγμα αριθμητικές πράξεις. Η βασικότερη πράξη για έναν ηλεκτρονικό υπολογιστή είναι η πρόσθεση δύο δυαδικών ψηφίων. Αυτή η απλή πρόσθεση περιγράφεται από τέσσερις δυνατές στοιχειώδεις πράξεις: 0+0=0, 1+0=1, 0+1=1, 1+1=10. Οι πρώτες τρεις παράγουν άθροισμα ενός ψηφίου αλλά όταν και οι δυο προσθετέοι είναι ίσοι με την μονάδα (1), το δυαδικό άθροισμα αποτελείται από δύο ψηφία. Το δεύτερο bit αυτού του αποτελέσματος λέγεται κρατούμενο (carry). Όταν οι δυο προσθετέοι αποτελούνται από παραπάνω από ένα δυαδικό ψηφίο τότε το κρατούμενο που πιθανόν να προκύπτει από την πρόσθεση δυο bit προστίθεται στο αμέσως επόμενο ζευγάρι σημαντικών bit. 14

Το συνδυαστικό κύκλωμα που εκτελεί την πρόσθεση ονομάζεται ημιαθροιστής (half- adder) ενώ το κύκλωμα που προσθέτει και το κρατούμενο μαζί με τα δυο bit τους προσθετέους ονομάζεται πλήρης αθροιστής (full adder). 1.4.2 Ηµιαθροιστές Όπως είδαμε και στην εισαγωγή μπορούμε εύκολα να διαπιστώσουμε ότι το κύκλωμα του ημιαθροιστή έχει δυο δυαδικές εισόδους και δυο δυαδικές εξόδους. Τα δυο bit των προσθετέων είναι τα δυο bit εισόδου και το άθροισμα (SUM) και το κρατούμενο (CARRY) αποτελούν τα δυο bit εξόδου. Στο πίνακα αληθείας παρακάτω φαίνεται καθαρά η λειτουργία του ημιαθροιστή και μπορούμε επίσης από τον πίνακα να εξάγουμε και τις απλοποιημένες λογικές συναρτήσεις για τις δυο εξόδους. S = A B ή ΑΒ +Α Β C = AB INPUT OUTPUT A B S C 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 Πίνακας αληθείας και λογικές συναρτήσεις για το κύκλωμα του ημιαθροιστή. Εικόνα 1.7: Λογικό διάγραμμα για το κύκλωμα του ημιαθροιστή με την χρήση πυλών τύπου AND και OR. 15

Εικόνα 1.8: Λογικό διάγραμμα για το κύκλωμα του ημιαθροιστή με την χρήση πυλών τύπου XOR και AND. 1.4.3 Πλήρης Αθροιστές Ο πλήρης αθροιστής αντίθετα από των ημιαθροιστή υπολογίζει το άθροισμα τριών bit εισόδου. Έχει λοιπόν τρεις εισόδους και δυο εξόδους. Οι δυο από τις τρεις εσόδου είναι οι δυο προσθετέοι (όπως και στον ημιαθροιστή) ενώ η τρίτη είσοδος είναι το κρατούμενο από το αμέσως λιγότερο σημαντικό μέρος της πράξης. Στο πίνακα αληθείας παρακάτω φαίνεται καθαρά η λειτουργία του πλήρη αθροιστή και μπορούμε επίσης από τον πίνακα να εξάγουμε και τις απλοποιημένες λογικές συναρτήσεις για τις δυο εξόδους. S=A B Z+A BZ +AB Z +ABZ C=AB+AZ+BZ ή S=Z (A B) C=Z(AB +A B)+AB INPUT OUTPUT A B Cin (Z) Cout (C) S 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 Πίνακας αληθείας και λογικές συναρτήσεις για το κύκλωμα του πλήρη αθροιστή. 16

Εικόνα 1.9: Λογικό διάγραμμα για το κύκλωμα του πλήρη αθροιστή με την χρήση πυλών τύπου AND και OR. Εικόνα 1.10: Λογικό διάγραμμα για το κύκλωμα του πλήρη αθροιστή με την χρήση δυο ημιαθροιστών και μια OR. 1.4.4 4-bit Αθροιστής Ριπής (Ripple carry adder) Ο αθροιστής ριπής είναι ένα ψηφιακό κύκλωμα το οποίο παράγει το αριθμητικό άθροισμα δυο δυαδικών αριθμών. Μπορεί να κατασκευαστεί με την διαδοχική σύνδεση πλήρων αθροιστών εν σειρά όπου ο κάθε πλήρης αθροιστής θα παίρνει ως είσοδο κρατουμένου το κρατούμενο που παρήγαγε ο αμέσως προηγούμενος πλήρης αθροιστής. Τα κρατούμενα διαδίδονται μέσω των αθροιστών, ώστε τελικά να παραχθεί το κρατούμενο εξόδου. Ένας αθροιστής με n- bit απαιτεί n πλήρεις αθροιστές με κάθε κρατούμενο εξόδου συνδεδεμένο στην είσοδο κρατουμένου του αμέσως μεγαλύτερης τάξης πλήρους αθροιστή. Στο κεφάλαιο αυτό θα μελετήσουμε τον 4- bit ripple carry adder, θα σχεδιάσουμε το λογικό του διάγραμμα αλλά θα το αναλύσουμε και σε επίπεδο CMOS τρανζίστορ. 17

Ο αθροιστής ριπής 4- bit είναι ένα χαρακτηριστικό παράδειγμα ενός τυπικού κυττάρου κυκλώματος. Μπορεί να χρησιμοποιηθεί σε πολλές εφαρμογές που περιλαμβάνουν αριθμητικές πράξεις. Ο σχεδιασμός αυτού του κυκλώματος με την κλασσική μέθοδο θα απαιτούσε έναν πίνακα αλήθειας με 2^9=512 γραμμές επειδή υπάρχουν 9 είσοδοι στο κύκλωμα. Χρησιμοποιώντας μια επαναληπτική μέθοδο υπολογισμού του αθροίσματος, η οποία καταλήγει σε μια αλυσιδωτή σύνδεση ομοίων τυπικών κυκλωματικών κυττάρων, πετυχαίνουμε μια απλή και εύκολα κατανοητή υλοποίηση. Εικόνα 1.11: Διάγραμμα για το κύκλωμα του αθροιστή ριπής 4- Bbit. Με την βοήθεια του παραπάνω διαγράμματος αλλά και με την χρήση του λογικού κυττάρου που βλέπουμε παρακάτω μπορούμε να σχεδιάσουμε ολόκληρο το κύκλωμα του 4- bit αθροιστή. Το κύκλωμα του 1- bit αθροιστή που θα κατασκευαστεί σε επίπεδο πυλών είναι το παρακάτω: Εικόνα 1.12: Λογικό διάγραμμα για το κύκλωμα του πλήρη αθροιστή 18

Χρησιμοποιήσαμε το κύκλωμα αυτό που δεν κάνει χρήση πυλών XOR και επιτυγχάνεται χρησιμοποιώντας τον όρο CARRY μέσα στον όρο SUM ως κοινή υποέκφραση. Aυτό το κάνουμε γιατί παρακάτω στην παρούσα εργασία χρησιμοποιείται λογική2 CMOS και έτσι πετυχαίνουμε πιο εύκολο και γρήγορο σχεδιασμό. Επίσης είναι βολικό να υλοποιηθούν οι συμπληρωματικές των συναρτήσεων CARRY και SUM, έστω Ζ1 και Ζ2, και στη συνέχεια να ληφθούν τα επιθυμητά αποτελέσματα με τη χρήση αντιστροφέων. SUM=ABC+(A+B+C) CARRY = ABC + (A+B+C) ( AB + C(A+B) Ζ1=CARRY =(AB+C(A+B)) Z2=SUM =(ABC+(A+B+C)Z1) Το σχέδιο των τρανζίστορ για την υλοποίηση αυτή σε λογική CMOS δίνεται παρακάτω και χρησιμοποιεί συνολικά 28 τρανζίστορ (14 NMOS, 14 PMOS): Εικόνα 1.13: Υλοποίηση 1- bit adder cell σε λογική CMOS Στην επόμενη σελίδα έχουμε σχεδιάσει σε επίπεδο πυλών όλο το διάγραμμα του 4- bit ripple carry adder : 19

Εικόνα 1.14: Διάγραμμα για το κύκλωμα του αθροιστή ριπής 4- Bbit με λογικές πύλες. 20

1.5 Αθροιστές με βελτίωση στην διάδοση του κρατουμένου 1.5.1 Εισαγωγή Το µεγάλο εµπόδιο στην απόδοση του παράλληλου αθροιστή είναι η διάδοση του κρατουµένου στις επόµενες βαθµίδες. Όπως σε οποιοδήποτε συνδυαστικό κύκλωμα, τα σήματα εισόδου η τα παράγωγα τους πρέπει να διαδοθούν μέσα από τις κατάλληλες πύλες πριν εμφανιστεί στους ακροδέκτες εξόδου η σωστή τιμή του αθροίσματος. Ο συνολικός χρόνος διάδοσης είναι ίσος με την καθυστέρηση διάδοσης μιας τυπικής πύλης επί τον αριθμό των επιπέδων πυλών στο κύκλωμα. Στην περίπτωση του αθροιστή ο μεγαλύτερος χρόνος καθυστέρησης είναι ο χρόνος που κάνουν τα κρατούμενα να διαδοθούν μέσα από τους πλήρεις αθροιστές. Αν θεωρήσουµε ότι κάθε carry µεταδίδεται στον επόµενο full adder σε χρόνο t και ο πλήρης αθροιστής χρειάζεται t χρόνο για να υπολογίσει το S, τότε ο δεύτερος εν σειρά αθροιστής θα χρειαστεί t + t για να υπολογίσει το S1 και 2t για να υπολογίσει το C1. Εποµένως αν έχουµε Ν ψηφία, τότε τα αποτελέσµατα θα ολοκληρωθούν σε χρόνο t + (Ν- 1)t ενώ το τελευταίο carry θα εξαχθεί σε χρόνο Νt. Αυτό είναι αρκετά «αργό» σε περιπτώσεις που θέλουµε γρήγορη εξαγωγή αποτελεσµάτων. Πολλές φορές δηλαδή αυτή η διάδοση του κρατουµένου µας τρώει αρκετό από τον διαθέσιµο κύκλο ρολογιού καθώς εξαρτάται γραµµικά από το µήκος του adder Υπάρχουν πολλές τεχνικές που µπορούµε να χρησιµοποιήσουµε προκειµένου να εξαλείψουµε αυτές τις καθυστερήσεις, μερικές από αυτές είναι: Ripple- Carry Adder with complemented data Mirror Adder Carry- Skip Adder Carry- Select Adder Carry- Lookahead Adder 21

Παρακάτω θα αναλύσουμε τον Ripple- Carry Adder with complemented data ο οποίος είναι μια μικρή βελτίωση του κλασσικού αθροιστή ριπής και τον Carry- Lookahead Adder ο οποίος είναι πολύ πιο γρήγορος και αποτελεσματικός από οποιοδήποτε άλλο τύπο αθροιστή. 1.5.2 4-bit Αθροιστής Βελτιωµένος (Ripple carry adder with complemented data) Αυτού του τύπου οι αθροιστές παρουσιάζουν πολύ μικρή διαφορά από τον κλασσικό αθροιστή ριπής. Η βασικότερη διαφορά τους είναι ότι κάθε επόμενο στάδιο λειτουργεί με συμπληρωματικά δεδομένα. Αυτό συνεπάγεται στην αφαίρεση όλων των αντιστροφέων από την διαδρομή του κρατουμένου και άρα η διαδρομή του μικραίνει κατά ένα μικρο ποσοστό, ανάλογο φυσικά με το μήκος του αθροιστή. Παρακάτω φαίνεται το διάγραμμα του Ripple carry adder with complemented data: Εικόνα 1.15: Διάγραμμα για το κύκλωμα του Ripple carry adder with complemented data. Στην επόμενη σελίδα έχουμε σχεδιάσει σε επίπεδο πυλών όλο το διάγραμμα του 4- bit ripple carry adder with complemented data (μέσα σε κόκκινο κύκλο είναι οι αλλαγές που έχουν γίνει σε σχέση με τον απλό ripple- carry αθροιστη): 22

Εικόνα 1.16: Διάγραμμα για το κύκλωμα του αθροιστή ριπής 4- Bbit με βελτίωση στην διάδοση του κρατουμένου με λογικές πύλες. 23

1.5.3 Carry Lookahead Αθροιστης Όπως έχουμε δει μέχρι στιγμής στα προηγούμενα κεφάλαια ένα από τους σημαντικότερους παράγοντες στην σχεδίαση κυκλωμάτων αθροιστή είναι η ταχύτητα διάδοσης του κρατουμένου. Η προφανής λύση, στην οποία βασίστηκε και το σχέδιο που κάναμε στο προηγούμενο κεφάλαιο είναι να χρησιμοποιήσουμε γρηγορότερες πύλες σε μικρότερες διαδρομές με μειωμένες καθυστερήσεις. Όμως τα φυσικά κυκλώματα έχουν περιορισμούς στις δυνατότητες τους και επομένως και στην ταχύτητα τους. Μια άλλη λύση είναι να αυξήσουμε κατά πολύ την πολυπλοκότητα του κυκλώματος με τέτοιο τρόπο ώστε ο χρόνος διάδοσης του κρατουμένου να μειωθεί. Υπάρχουν αρκετές τεχνικές αλλά η πιο ευρέως διαδεδομένη είναι αυτη της πρόβλεψης κρατουμένου. Μια εναλλακτική σχεδίαση του κυκλώματος του πλήρη αθροιστή με την χρήση πυλών τύπου XOR θα μας βοηθήσει στην κατανόηση της λειτουργίας του carry- lookahead αθροιστη : Εικόνα 1.16: Διάγραμμα αθροιστή ριπής 4- Bbit με χρήση XOR. Από το κύκλωμα αυτό μπορούμε να ορίσουμε τις παρακάτω δυαδικές μεταβλητές: Pi = Ai Bi Gi = Ai Bi Οπότε μπορούμε να ορίσουμε και το άθροισμα και το κρατούμενο ως : Si = Pi Gi Ci+1 = Gi + Pi Ci Το Gi ονομάζεται σήμα γέννησης κρατουμένου και παράγει ένα κρατούμενο 1 όταν και το Αi και το Bi είναι 1, ανεξάρτητα από το κρατούμενο εισόδου Ci. Το Pi ονομάζεται σήμα διάδοσης κρατουμένου, επειδή είναι ο όρος που σχετίζεται με την διάδοση του κρατουμένου από το Ci στο Ci+1. 24

Άρα το κρατούμενο κάθε εξόδου μπορεί να εκφραστεί σε συνάρτηση με το κρατούμενο της προηγούμενης βαθμίδας : Co = κρατούμενο εισόδου C1 = Go + Po Co C2 = G1 + P1 C1 =G1 + P1 ( Go + Po Co )= G1 + P1 Go + P1 Po Co C3 = G2 + P2 C2 = G2 + P1 G1 + P2 P1 Go + P2 P1 Po Co C4 = G3 + P3 C3 = G3 + P3 G2 + P3 P1 G1 + P3 P2 P1 Go + P3 P2 P1 Po Co Παρατηρούμε ότι το C4 δεν χρειάζεται να περιμένει τη διάδοση των C1, C2 και C3.Παρακάτω βλέπουμε το διάγραμμα της γεννήτριας πρόβλεψης κρατουμένου: Εικόνα 1.17: Διάγραμμα γεννήτριας πρόβλεψης κρατουμένου για αθροιστή 4- bit. 25

Άρα για την κατασκευή ολόκληρου του πλήρη αθροιστή με πρόβλεψη κρατουμένου χρειαζόμαστε αρχικά το πρώτο κομμάτι του πλήρη αθροιστή που παρουσιάσαμε στην εικόνα 1.16 από το οποίο παράγεται το σήμα γέννησης Gi και το σήμα διάδοσης Pi. Αυτά τα δυο σήματα τα στέλνουμε στην γεννήτρια κρατουμένου η οποία παράγει τα κρατούμενα με τον τρόπο που εξηγήσαμε παραπάνω. Τέλος τα αποτελέσματα που παράγονται από την γεννήτρια φεύγουν για να καταλήξουν στο τελευταίο στάδιο όπου είναι το δεύτερο κομμάτι του αθροιστή της εικόνας 1.16 όπου το κρατούμενο μαζί με το σήμα διάδοσης περνάν μέσα από μια πύλη XOR και βγαίνει έτσι το τελικό αποτέλεσμα των προσθετέων. Εικόνα 1.18: Πλήρης διάγραμμα για αθροιστή 4- bit με πρόβλεψη κρατουμένου. 26

1.6 Λογισμικό Προσομοίωσης Microwind 1.6.1 Τι είναι το Microwind Το πρόγραμμα Microwind είναι ένα φιλικό προς το χρήστη εργαλείο επεξεργασίας και εξομοίωσης κυκλωμάτων CMOS για σχεδίαση σε λογικό επίπεδο και σε επίπεδο διάταξής (layout). Η κατασκευή του περιβάλλοντος αυτού χρειάστηκε περίπου οχτώ χρόνια για να ολοκληρωθεί και δημιουργός του είναι ο Γάλλος Sicard Etienne. Το Microwind είναι διαθέσιμο ελεύθερα (έκδοση lite) για εκπαιδευτικούς σκοπούς, καθώς συγκεντρώνει ένα σύνολο χαρακτηριστικών και εργαλείων που προσφέρουν εξοικείωση με όλα τα βήματα της σχεδίασης και εξομοίωσης ενός κυκλώματος. Εικόνα 1.19: Το περιβάλλον του Microwind Παρόλο που το Microwind δεν υποστηρίζει τη σχεδίαση ιδιαίτερα πολύπλοκων κυκλωμάτων και δεν συμπεριλαμβάνει όλες τις πιθανές τεχνολογικές επιλογές και κατευθύνσεις, αποτελεί μια άριστη λύση για γρήγορη επεξεργασία κυκλωμάτων CMOS, για αξιόπιστη εκτίμηση λειτουργικότητας και απόδοσης και φυσικά για δημιουργία μικρού. μεγέθους πρωτότυπων κυκλωμάτων. 27

1.6.2 Δοµικά Στοιχεία Και Γραφικό Περιβάλλον Το βασικότερο δομικό στοιχείο στο microwind είναι η παλέτα των υλικών. Η παλέτα αυτή περιέχει όλα τα υλικά σε όλες τις δυνατές επιστρώσεις που χρησιμοποιούνται στην κατασκευή μικροηλεκτρονικών διατάξεων και κυκλωμάτων ακόμα και σε αρκετά απαιτητικά κυκλώματα. Επίσης από την ίδια παλέτα δίνεται η δυνατότητα για τοποθέτηση παροχής, γείωσης και διάφορων παλμοσειρών εισόδου σε οποιοδήποτε σημείο του κυκλώματος επιθυμεί ο σχεδιαστής. Παρακάτω παρουσιάζουμε μερικά από αυτά τα υλικά : Πολυπυρίτιο (polysilicon) Ν- διάχυση (N+ Diffusion) P- διάχυση (P+ Diffusion) Μέταλλο- 1 (metal 1) Μέταλλο- 2 (metal 2) Επαφές- Ν Επαφές- Π Επαφές μετάλλου- 1/μετάλλου- 2 Επαφές μετάλλου/πολυπυριτίου Ν- πηγάδι (N well) Τάση τροφοδοσίας (VDD) Τάση γείωσης (V) Ψηφιακά σήματα εισόδου (A,B,C) Εικόνα 1.20: Σχεδιαστική παλέτα. Το γραφικό περιβάλλον του Microwind είναι πάραπολυ απλό και λιτό επικεντρώνοντας την προσοχή του σχεδιαστή στην διαδικασία σχεδίασης. Τρέχοντας την εφαρμογή ανοίγει το κυρίως παράθυρο το οποίο αποτελείται απο το κυρίως μενού, το παράθυρο σχεδίασης, το παράθυρο εικονιδίων και το παράθυρο της παλέτας με τις επιστρώσεις που αναφέραμε πιο πάνω. 28

Στην κάτω δεξιά θέση του παραθύρου φαίνεται η τεχνολογία σχεδίασης που ακολουθείται. Η προεπιλεγμένη τεχνολογία είναι στα 120 nm. Το παράθυρο σχεδίασης είναι οργανωμένο σαν ένα πλέγμα από κουκίδες, τοποθετημένες σε απόσταση λ (λάμδα) μεταξύ τους. Η τιμή του λ είναι όσο το μισό από την τεχνολογία λιθογραφίας που χρησιμοποιούμε. Άρα στα 120 nm το λάμδα είναι 60 nm. 1.6.3 Διαδικασία Σχεδίασης Σε αυτό το κεφάλαιο θα αναφέρουμε κάποια βασικά βήματα που ακολουθεί ο χρήστης για να σχεδιάσει κυκλώματα στο Microwind. Αρχικά θα δείξουμε την μεθοδολογία πίσω απο τον σχεδιασμό των τρανζίστορ p- MOS και n- MOS και τον συνδιασμό αυτών των δυο για την δημιουργία των CΜΟS κυκλωμάτων που όπως προαναφέραμε λειτουργούν πάντα συμπληρωματικά μέσα στα κυκλώματα και τέλος την σύνδεση διάφορων κυκλωμάτων μεταξύ τους, την τοποθέτηση παροχών, γειώσεων και παλμοσειρών εισόδου. Η διαδικασία που ακολουθούμε για να σχεδιάσουμε ένα τρανζίστορ τύπου p- MOS είναι η εξής: Επιλέγεται από την παλέτα υλικών το πολυπυρίτιο (polysilicon) και σχεδιάζεται μια κάθετη λωρίδα. Επιλέγεται η n- διάχυση (n- diffusion) και σχεδιάζεται ένα παραλληλόγραμμο που τέμνεται με την λωρίδα πολυπυριτίου. Η περιοχή τομής πολυπυριτίου και διάχυσης είναι το κανάλι του στοιχείου n- MOS. Εικόνα 1.21: Σχεδίαση n- MOS τρανζίστορ στο Microwind. 29

Ομοίως η διαδικασία που ακολουθούμε για να σχεδιάσουμε ένα τρανζίστορ τύπου p- MOS είναι η εξής: Επιλέγεται από την παλέτα υλικών το πολυπυρίτιο (polysilicon) και σχεδιάζεται μια κάθετη λωρίδα. Επιλέγεται η p- διάχυση (p- diffusion) και σχεδιάζεται ένα παραλληλόγραμμο που τέμνεται με την λωρίδα πολυπυριτίου. Επιλέγεται από την παλέτα το n- πηγάδι (n- well) και σχεδιάζεται ένα ορθογώνιο που περιβάλλει το MOSFET. Όπως και στο n- MOS έτσι και εδώ η περιοχή τομής πολυπυριτίου και διάχυσης είναι το κανάλι του στοιχείου p- MOS. Το τελευταίο βήμα που κάναμε είναι απαραίτητο διότι το στοιχείο p- MOS πρέπει να βρίσκεται πάνω σε ένα n- υπόστρωμα για να λειτουργήσει σωστά. Εικόνα 1.22: Σχεδίαση p- MOS τρανζίστορ στο Microwind. Έπειτα θα δείξουμε την διαδικασία σχεδίασης της τεχνολογίας CMOS όπου τα τρανζίστορ τύπου n- MOS και p- MOS που σχεδιάσαμε παραπάνω συνδυάζονται σε ένα κύκλωμα. Αξίζει να σημειωθεί ότι μια καλή τεχνική είναι η τοποθέτηση ενός p- MOS και ενός n- MOS τρανζίστορ πάνω σε κοινή λωρίδα πολυπυριτίου. Επίσης, συνηθίζεται να τοποθετούνται πολλά MOSFETs σε ένα ορθογώνιο n- ή p- διάχυσης. Μια τέτοιου τύπου διάταξη φαίνεται στη εικόνα 1.23. 30

Εικόνα 1.23: Συνδιασμένα p- MOS και n- MOS στο ίδιο κύκλωμα. Τέλος με την χρήση των διαφορετικών επαφών που φαίνονται στην εικόνα 1.24 μπορούμε να ορίσουμε όλους τους κόμβους σύνδεσης μέσα στο κύκλωμα και να τους συνδέσουμε μεταξύ τους με την χρήση των μετάλλων 1 και 2 (όπου 1 και 2 δηλώνουν το επίπεδο). Στην εικόνα 1.25 φαίνεται το κύκλωμα ενός CMOS αντιστροφέα που θα σχεδιάσουμε αναλυτικότερα στο δεύτερο μέρος της εργασίας αυτής οπού όλα τα στοιχεία που προαναφέραμε φαίνονται ξεκάθαρα. Εικόνα 1.24: Επαφές στο Microwind. Εικόνα 1.25: Κύκλωμα αντιστροφέα στο Microwind. 31

1.6.4 Εξαγωγή Χαρακτηριστικών & Προσοµοίωση Κυκλωµάτων Το Microwind δίνει την δυνατότητα στον χρήστη να κάνει εξαγωγή των χαρακτηριστικών του κάθε MOS στοιχείου που υπάρχει στο κύκλωμα του μεμονωμένα πατώντας απο το μενού στην επιλογή Simulate!MOS Characteristics και κάνοντας click στην αντίστοιχη περιοχή τομής πολυπυριτίου και διάχυσης που τον ενδιαφέρει. Το παράθυρο το οποίο ανοίγει δίνει μια πληθώρα επιλογών στον χρήστη. Μερικά απο αυτά είναι: να αλλάξουν τα μεγέθη του n- MOS ή p- MOS (ανάλογα τι έχει διαλέξει ο χρήστης) να αλλάξει η θερμοκρασία λειτουργίας να εμφανιστούν γραφικές παρααστάσεις για διαφορετικές παραμέτρους να αλλαχθεί η συσκευή από p- MOS σε n- MOS και αντίστροφα να αλλαχθεί το μοντέλο με το οποίο έγινε η εξομοίωση να αλλαχθούν οι παράμετροι του μοντέλου να αλλαχθούν τα δυναμικά που επηρεάζουν τη λειτουργία των τρανζίστορ Όσο ο χρήστης κάνει αλλαγές σε όλα αυτά τα χαρακτηριστικά μπορεί ταυτόχρονα να βλέπει τις αλλαγές που προκύπτουν και τις επιδράσεις που θα έχουν οι αλλαγές αυτές στη γραφική παράσταση. Εικόνα 1.26: Παράθυρο εξαγωγής χαρακτηριστικών για τα MOS τρανζίστορ. 32

Το Microwind τέλος δίνει την επιλογή στον χρήστη αφού σχεδιάσει το κύκλωμα του και αφού προσαρμόσει όλες τις παραμέτρους στις απαιτούμενες τιμές να τρέξει μια προσομοίωση για να διαπιστώσει την ορθή λειτουργία του. Ο χρήστης πηγαίνοντας στο μενού και πατώντας Simulate!Run Simulation! Voltage VS Time λαμβάνει ένα παράθυρο με την ανταπόκριση του κυκλώματος στις παλμοσειρές εσόδου που έχει διαλέξει ο χρήστης. Σε αυτό το παράθυρο ο χρήστης μπορεί να δεί διάφορα στοιχεία για το κύκλωμα του όπως : Την κατανάλωση ισχύος του κυκλώματος Πέρα από την Voltage vs Time υπάρχουν και άλλες επιλογές διαγράμματος προσομοίωσης που εμφανίζονται κάτω αριστερά (π.χ. frequency vs time, voltages and currents κτλ.) Αλλά πέρα απο τα στοιχεία που μπορεί να δεί του δίνεται και η δυνατότητα να αλλάξει μερικές παραμέτρους όπως : Time scale (ns): Το χρονικό διάστημα εκτέλεσης της προσομοίωσης Step (ps): Το υπολογιστικό βήμα της προσομοίωσης. Όσο μικραίνει το βήμα γίνεται πιο αργή η προσομοίωση αλλά και πιο ακριβής. Checkboxes για εμφάνιση επιπρόσθετων χαρακτηριστικών πάνω στο διάγραμμα τάσης/χρόνου όπως πχ συχνότητες, καθυστερήσεις κλπ. Εικόνα 1.27: Παράθυρο προσομοίωσης CMOS αντιστροφέα. 33

Μέρος Β 34

2.1 Εισαγωγή Στο πρώτο μέρος την εργασίας αυτής είδαμε το γενικό θεωρητικό κομμάτι γύρω απο τα ολοκληρωμένα κυκλώματα, αναλύσαμε την λογική πίσω απο τα δυαδικά συστήματα με λογικές πύλες και είδαμε αρκετά αναλυτικά τον τρόπο λειτουργίας των συμπληρωματικών τρανζίστορ CMOS. Έπειτα μελετήσαμε αρκετά εξονυχιστικά την διαδικασία ανάπτυξης και σχεδίασης πλήρους αθροιστών τόσο σε επίπεδο λογικών πυλών όσο και σε επίπεδο CMOS. Σε αυτό το μέρος της εργασίας θα ασχοληθούμε με την σχεδίαση, των κυκλωμάτων που αναλύσαμε, στο Microwind. Αρχικά θα ξεκινήσουμε (κεφάλαιο 2.2) με την σύνθεση του κυκλώματος του αντιστροφέα. Θα εξηγήσουμε την πορεία της κατασκευής του βήμα προς βήμα έτσι ώστε να γίνει κατανοητή η μεθοδολογία που θα ακολουθήσουμε γενικά στην σχεδίαση κάθε κυκλώματος. Στην συνέχεια θα ασχοληθούμε με την κατασκευή των κυκλωμάτων Ζ1 και Ζ2 που αναφέραμε στον πρώτο μέρος και πιο συγκεκριμένα κεφάλαιο 1.4.4 εικόνα 1.12. Έχοντας πλέον κατασκευάσει τα Ζ1 και Ζ2 θα τα συνδυάσουμε για να φτιάξουμε το κύκλωμα του 1- bit adder και μετα θα συνθέσουμε το ίδιο κύκλωμα που θα λειτουργεί όμως με συμπληρωματικά δεδομένα. Στο κεφάλαιο 2.3 αυτού του μέρους και έχοντας πλέον στην διάθεση μας τα cells των 1- bit adders θα τα συνδυάσουμε έτσι ώστε να φτιάξουμε τα κυκλώματα των 4- bit ripple carry adder και 4- bit ripple carry adder with complemented data. Τέλος στο κεφάλαιο 2.4 θα τρέξουμε τις προσομοιώσεις και θα εξάγουμε τα συμπεράσματά μας για τα κυκλώματα που σχεδιάσαμε. 35

2.2 Σύνθεση Βασικών Κυκλωμάτων Σε αυτό το σημείο αξίζει να αναφερθεί η μεθοδολογία που θα ακολουθήσουμε για την σχεδίαση των CMOS κυκλωμάτων. Αυτή είναι η εξής : i. Βρίσκουμε το συμπλήρωμα της συνάρτησης που θα υλοποιήσουμε ii. Με βάση τη σχέση αυτή σχεδιάζουμε το Ν- block της συνάρτησης στηριζόμενοι στους εξής κανόνες: a. Η λογική πράξη AND αντιστοιχεί σε σειρά σύνδεση των transistor b. Η λογική πράξη OR αντιστοιχεί σε παράλληλη σύνδεση των transistor iii. Βρίσκουμε ένα μονοπάτι στο Ν- block που να περνάει από όλα τα transistor (μονοπάτι Euler). Σημειώνουμε την σειρά με την οποία σαρώνονται τα transistor. iv. Βρίσκουμε ένα μονοπάτι στο P- block που να σαρώνει όλα τα transistor με την ίδια σειρά. Αν αυτό δεν είναι δυνατόν πάμε πάλι στο βήμα 3 και καθορίζουμε ένα διαφορετικό μονοπάτι. v. Σχεδιάζουμε το layout 2.2.1 Κύκλωµα Αντιστροφέα Το κύκλωμα του αντιστροφέα είναι αυτό που φαίνεται παρακάτω στην εικόνα 2.1 και αποτελείται από δυο τρανζίστορ, ένα τύπου n- MOS και ένα τύπου p- MOS. Τα δυο αυτά τρανζίστορ είναι συνδεδεμένα σε σειρά μεταξύ τους με το πάνω άκρο του p- MOS να είναι συνδεδεμένο στην τροφοδοσία και το κάτω άκρο του n- MOS στην γείωση. To κάτω άκρο του p- MOSFET και το πάνω άκρο του n- MOSFET συνδέονται μεταξύ τους και αυτός ο κόμβος αποτελεί την αντεστραμμένη έξοδο Out της εισόδου In του κυκλώματος που τροφοδοτείται και στα δυο τρανζίστορ. Εικόνα 2.1: CMOS αντιστροφέας. 36

Τα βήματα που ακολουθούμε στο Microwind είναι τα παρακάτω: Επιλέγουμε από την παλέτα το πολυπυρίτιο (polysilicon) και σχεδιάζεται μια κάθετη λωρίδα πάχους 2λ. Επιλέγουμε από την παλέτα τη p- διάχυση (p- diffusion) και σχεδιάζουμε ένα παραλληλόγραμμο πλάτους 10λ που τέμνεται με την λωρίδα πολυπυριτίου. Επιλέγουμε από την παλέτα τη n- διάχυση (n- diffusion) και σχεδιάζουμε ένα παραλληλόγραμμο πλάτους 6λ που τέμνεται με την λωρίδα πολυπυριτίου. Επιλέγουμε από την παλέτα το μέταλλο 1 (metal1) και σχεδιάζουμε δυο αγωγοιύς πλάτους 4λ πάνω και κάτω από τα MOSFETs. Επιλέγουμε από την παλέτα τη n- επαφή (n- contact) και τοποθετούμε 3 από αυτές, μια στον επάνω αγωγό όπου θα τοποθετησουμε τη VDD και 2 στα άκρα του n- MOSFET. Επιλέγουμε από την παλέτα τη p- επαφή (p- contact) και τοποθετούμε 3 από αυτές, μια στον κάτω αγωγό όπου θα τοποθετήσουμε τη VSS και 2 στα άκρα του p- MOSFET. Επιλέγουμε από την παλέτα τη VDD (τροφοδοσία) και την τοποθετούμε στη n- επαφή στον πάνω αγωγό. Επιλέγουμε στη συνέχεια τη VSS (γείωση) και την τοποθετούμε στην p- επαφή στον κάτω αγωγό. Συνδέουμε με μέταλλο 1 το αριστερό άκρο του p- MOSFET στην τροφοδοσία VDD και το αριστερό άκρο του n- MOSFET στη γείωση VSS. Συνδέουμε με μέταλλο 1 τα δεξιά άκρα των MOSFETs μεταξύ τους και αυτός ο αγωγός αποτελεί την έξοδο του αντιστροφέα. Επιλέγεται από την παλέτα το n- πηγάδι (n- well) και σχεδιάζεται ένα ορθογώνιο που περιβάλλει το p- MOSFET με πλάτος τουλάχιστον 6λ και την VDD με πλάτος τουλάχιστον 2λ. Εικόνα 2.2: Στάδια κατά την κατασκευή του αντιστροφέα CMOS στο Microwind. 37

Τέλος θα πρεπει να ορίσουμε την είσοδο του κυκλώματος για να μπορέσουμε να τρέξουμε την προσομοίωση.επιλέγουμε από την παλέτα τον παλμό ρολογιού (clock) και τον τοποθετούμε πάνω στη λωρίδα πολυπυριτίου οπου και ονομάζουμε In. Ως ρυθμίσεις στον παλμό αφήνουμε τις προεπιλεγμένες για τα 120 nm. Επίσης μπορούμε να ονομάσουμε την έξοδο του κυκλώματος με την επιλογή add text to layout. Σε αυτό το κύκλωμα την ονομάσαμε out. 2.2.2 Κύκλωµα Ζ1 & Z2 Να υπενθυμίσουμε ότι στο κεφάλαιο 1.4.4 χρησιμοποιήσαμε το κύκλωμα αυτό που δεν κάνει χρήση πυλών XOR και επιτυγχάνεται χρησιμοποιώντας τον όρο CARRY μέσα στον όρο SUM ως κοινή υποέκφραση. Aυτό το κάνουμε γιατί στην λογική' CMOS πετυχαίνουμε πιο εύκολο και γρήγορο σχεδιασμό με αυτόν τον τρόπο. Κάνοντας κατάλληλες πράξεις μπορούμε να αντιληφθούμε ότι το κρατούμενο εξόδου CARRY μπορεί να χρησιμοποιηθεί μέσα στον όρο του αθροίσματος SUM ως κοινή υποέκφραση. SUM=ABC+(A+B+C) CARRY CARRY=AB+C(A+B) Δεν μπορούμε να σχεδιάσουμε τον αθροιστή 1- bit απευθείας από τις συναρτήσεις SUM και CARRY που προκύπτουν από την θεωρία αλλά μπορούμε να σχεδιάσουμε τις συμπληρωματικές τους συναρτήσεις που τις ορίζουμε σαν Z1 και Z2 : Ζ1=CARRY =(AB+C(A+B)) Z2=SUM =(ABC+(A+B+C)Z1) Επειδή οι παραπάνω συναρτήσεις υπολογίζουν το αντίστροφο του κρατουμένου και του αθροίσματος αντίστοιχα θα πρέπει η εξοδος και απο το Ζ1 και από το Ζ2 να περάσει απο εναν αντιστροφέα για να λάβουμε τα σωστά αποτελέσματα. Αυτό δεν ισχύει στο κύκλωμα του ripple carry adder με συμπληρωματικά δεδομένα που θα σχεδιάσουμε παρακάτω. Στο κύκλωμα του κλασσικού ripple carry adder η έξοδος του Ζ1 δίνεται αυτούσια σαν είσοδος στο υποκύκλωμα Ζ2 38

Από την εικόνα 1.14 μπορούμε να δούμε ότι το σχεδιάγραμμα του υποκυκλώματος Ζ1 είναι αυτό της εικόνας 2.3 και αποτελείται απο 10 τρανζίστορ, 5 τύπου n- MOS και 5 τύπου p- MOS. Εικόνα 2.3: Σχεδιάγραμμα CMOS του κυκλώματος Ζ1. Σαν επιπλέον πληροφορία και με βασικό σκοπό τον έλεγχο της ορθής λειτουργίας του κυκλώματος παρατίθεται και ο πίνακας αληθείας του Ζ1: Ζ1=CARRY =(AB+C(A+B)) INPUT OUTPUT A B C Ζ1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 0 39

Με την ίδια μεθοδολογία που χρησιμοποιήσαμε για την κατασκευή του αντιστροφέα στο Micrownid θα συνθέσουμε και τώρα το υποκύκλωμα Ζ1. Εικόνα 2.5: Σχεδιάγραμμα του CMOS κυκλώματος Ζ1 στο Microwind. 40

Από την εικόνα 1.14 μπορούμε να δούμε ότι το σχεδιάγραμμα του υποκυκλώματος Ζ2 είναι αυτό της εικόνας 2.4 και αποτελείται απο 14 τρανζίστορ, 7 τύπου n- MOS και 7 τύπου p- MOS. Εικόνα 2.4: Σχεδιάγραμμα CMOS του κυκλώματος Ζ2. Σαν επιπλέον πληροφορία και με βασικό σκοπό τον έλεγχο της ορθής λειτουργίας του κυκλώματος παρατίθεται και ο πίνακας αληθείας του Ζ2: Z2=SUM =(ABC+(A+B+C)Z1) INPUT OUTPUT A B C Ζ2 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 41

Με την ίδια μεθοδολογία που χρησιμοποιήσαμε για την κατασκευή του αντιστροφέα στο Micrownid θα συνθέσουμε και τώρα το υποκύκλωμα Ζ2. Εικόνα 2.6: Σχεδιάγραμμα του CMOS κυκλώματος Z2 στο Microwind 42

2.2.3 Κύκλωµα 1-bit Adder "Σχεδίαση 1- bit Adder Για να κατασκευάσουμε το κύκλωμα του 1- bit adder αρκεί να συνδυάσουμε τα κυκλώματα που έχουμε κατασκευάσει μέχρι στιγμής. Πίο συγκεκριμένα η έξοδος του Ζ1 περνάει από δύο στάδια. Πρώτον τροφοδοτείται στο κύκλωμα Ζ2 αυτούσια και δεύτερον περνάει από ένα αντιστροφέα για να μας δώσει την αντεστραμμένη και σωστή έξοδο στο κρατούμενο (CARRY). Εν συνεχεία το κύκλωμα Ζ2 παράγει το άθροισμα (SUM) και αφού αντιστραφεί δίνεται στην έξοδο. Κατά την σχεδίαση του κυκλώματος ενοποιούνται οι είσοδοι A,B,C, καθώς και οι κόμβοι τροφοδοσίας και γείωσης για όλα τα υποκυκλώματα που συνδυάστηκαν έτσι ώστε να επιτευχθεί όσο το δυνατόν μικρότερη επιφάνεια. Υπενθυμίζουμε το CMOS κύκλωμα του 1- bit adder: Εικόνα 2.7: Σχεδιάγραμμα CMOS του κυκλώματος του 1- bit adder. 43

Συνδυάζοντας τα κυκλώματα στο Microwind φτιάχνουμε το παρακάτω κύκλωμα: Εικόνα 2.8: Σχεδιάγραμμα CMOS του κυκλώματος του 1- bit adder στο Microwind. 44

"Προσομοίωση 1- bit Adder Για να βεβαιωθούμε για την ορθή λειτουργία του αθροιστή που μόλις κατασκευάσαμε αρκεί να τρέξουμε μια προσομοίωση. Για να πραγματοποιηθεί αυτό θα πρέπει να εισάγουμε παλμοσειρές τέτοιες ώστε να μας δίνουν όλες τις πιθανές αλληλουχίες σε bit που είναι πιθανόν να εμφανιστούν. Έπειτα αρκεί να πατήσουμε στο Microwind προσομοίωση τύπου voltage vs time. Το μοντέλο προσομοίωσης που θα χρησιμοποιηθεί είναι το Bsim4, και θα εφαρμοστεί στην τεχνολογία των 32 nm. Το αποτέλεσμα φαίνεται παρακάτω: Εικόνα 2.9: Προσομοίωση του κυκλώματος του 1- bit adder 45

2.2.4 Κύκλωµα 1-bit Adder with complemented data "Σχεδίαση 1- bit Adder with complemented data Για να κατασκευάσουμε το κύκλωμα του 1- bit adder με συμπληρωματικά δεδομένα εργαζόμαστε ομοίως με τον κλασσικό αθροιστή που φτιάξαμε στο προηγούμενο κεφάλαιο με την διαφορά όμως ότι το πρώτο στάδιο είναι οι είσοδοι Α και Β να περάσουν από έναν αντιστροφέα και δεύτερον η έξοδος του κυκλώματος Ζ1 που αποτελεί και το Carry out δεν περνάει από αντιστροφέα. Ομοίως η έξοδος του Ζ2, που αποτελεί και την έξοδο SUM του αθροιστή δεν περνάει από αντιστροφέα αλλά δίνεται στην έξοδο αυτούσια Το CMOS κύκλωμα του 1- bit adder με συμπληρωματικά δεδομένα είναι το παρακάτω: Εικόνα 2.10: Σχεδιάγραμμα CMOS του κυκλώματος του 1- bit adder 46

Το κύκλωμα στο Microwind είναι το παρακάτω : Εικόνα 2.11: Σχεδιάγραμμα 1- bit αθροιστή με συμπληρωματικά δεδομένα στο Microwind. 47

"Προσομοίωση του 1- bit Adder with complemented data Όπως και στον απλό αθροιστή έτσι και εδώ θα χρησιμοποιήσουμε τις ίδιες παλμοσειρές εισόδου: Γι αυτές τις εισόδους λαμβάνουμε τα εξής αποτελέσματα: Εικόνα 2.12: Προσομοίωση του κυκλώματος του 1- bit adder with complemented data. Σε αυτό το διάγραμμα παραθέτουμε και τα συμπληρωματικά Α και Β. Επίσης να σημειώσουμε ότι το Sum είναι το αντίθετο από το Sum του κανονικού αθροιστή γιατί κανονικά θα έπρεπε να το λάβει αντεστραμμένο το κρατούμενο για να είναι ίδιες. 48

2.3 Σύνθεση Κυκλωμάτων 4- bit Αθροιστών 2.3.1 4-bit Ripple-Carry Adder Όπως είδαμε και στο κεφάλαιο 1.4.4 ένας αθροιστής με 4- bit απαιτεί 4 πλήρεις αθροιστές με κάθε κρατούμενο εξόδου συνδεδεμένο στην είσοδο κρατουμένου του αμέσως μεγαλύτερης τάξης πλήρους αθροιστή. Εικόνα 2.13: Σχεδιάγραμμα 4- bit αθροιστή στο Microwind. 49

Όπως παρατηρούμε από την εικόνα 2.11 το τελικό κύκλωμα έχει: Για 9 εισόδους, τους προσθετέους A[0], B[0], A[1], B[1], A[2], B[2], A[3], B[3] και το κρατούμενο εισόδου Carry In. Και τις 5 εξόδους, τα επί μέρους αθροίσματα Sum[0], Sum[1], Sum[2], Sum[3] και το εξαγόμενο κρατούμενο Carry Out. 2.3.2 4-bit Ripple-Carry Adder with complemented data Στην περίπτωση του ripple carry adder with complemented data είναι λίγο πιο περίπλοκα τα πράγματα. Αρχικά θα πρέπει να συνδυάσουμε το κύκλωμα που κατασκευάσαμε στο κεφάλαιο 2.2.4 με αυτό του κανονικού 1- bit ripple carry adder με την μόνη διαφορά όμως ότι από τον κανονικό adder θα αφαιρέσουμε τον αντιστροφέα του κρατουμένου. Υπενθυμίζουμε ότι αυτό γίνεται διότι κάθε επόμενο στάδιο λειτουργεί με συμπληρωματικά δεδομένα. Το κύκλωμα του 1- bit adder που θα χρησιμοποιηθεί σε συνδυασμό με αυτό που λειτουργεί με αντεστραμμένα δεδομένα είναι το παρακάτω: Εικόνα 2.14: Σχεδιάγραμμα 1- bit αθροιστή χωρίς τον αντιστροφέα κρατουμένου στο Microwind. 50

Συνδυάζοντας τα κυκλώματα της εικόνας 2.11 και 2.14 για την κατασκευή του ripple carry adder with complemented data συνθέτουμε το παρακάτω κύκλωμα: Εικόνα 2.15: Σχεδιάγραμμα 4- bit αθροιστή με συμπληρωματικά δεδομένα στο Microwind. Όπως παρατηρούμε από την εικόνα 2.15 το τελικό κύκλωμα έχει: Για 9 εισόδους, τους προσθετέους A[0], B[0], A[1], B[1], A[2], B[2], A[3], B[3] και το κρατούμενο εισόδου Carry In. 51

Και τις 5 εξόδους, τα επί μέρους αθροίσματα Sum[0], Sum[1], Sum[2], Sum[3] και το εξαγόμενο κρατούμενο Carry Out. 2.4 Τεχνολογία 32nm 2.4.1 Εισαγωγή Στο κεφάλαιο αυτό θα δείξουμε την επίδραση της μείωσης του μεγέθους των κυκλωμάτων CMOS στην επιφάνεια και την κατανάλωση ισχύος. Για την διεξαγωγή των αποτελεσμάτων σχεδιάστηκαν τα ίδια ακριβώς κυκλώματα με τεχνολογία 120nm, 90nm, 70nm, 50nm και 32nm. Η τάση τροφοδοσίας VDD είναι προκαθορισμένη από τους κανόνες σχεδίασης της κάθε τεχνολογίας. Στο περιβάλλον Microwind αλλάζοντας την τεχνολογία που χρησιμοποιείται, μετατρέπεται αυτόματα και η τάση τροφοδοσίας στην προκαθορισμένη τιμή. Αυτή βέβαια μπορεί να αλλαχθεί μετά, αλλά στην παρούσα μελέτη χρησιμοποιήθηκαν οι προκαθορισμένες από τους κανόνες τιμές, οι οποίες και εξασφαλίζουν την καλύτερη λειτουργία των κυκλωμάτων. Η προκαθορισμένη τιμή της VDD για 120 nm, 90 nm, 70 nm, 50 nm και 32 nm είναι 1.2V, 1.0V, 0.7V, 0.5V,0.8V αντίστοιχα. Το Microwind δίνει την επιλογή στον χρήστη να εξάγει όλα τα χαρακτηριστικά του κυκλώματος που έχει σχεδιάσει πηγαίνοντας στο παράθυρο File!Properties. Παρακάτω στην εικόνα 2.16 φαίνεται το παράθυρο Properties για το κύκλωμα του 4- bit αθροιστή στην τεχνολογία των 32nm: Εικόνα 2.16: Παράθυρο properties στο Microwind. 52

Κάτω αριστερά, στην περιοχή Layout Size φαίνεται το πλάτος, το ύψος και η επιφάνεια του layout. Κάτω δεξιά, στην περιοχή Electrical Properties, αφού πατηθεί το κουμπί Extract, εμφανίζεται ο αριθμός των ηλεκτρικών κόμβων και ο αριθμός των στοιχείων NMOS και PMOS. 2.4.2 Επίδραση στο µέγεθος και στην κατανάλωση ισχύος Για να μπορέσουμε να δούμε ξεκάθαρα την επίδραση της κάθε τεχνολογίας που έχει στο ίδιο κύκλωμα θα κατασκευάσουμε συγκεντρωτικούς πίνακες με τα παρακάτω στοιχεία: V dd (τάση λειτουργίας) p- MOS (αριθμός p- type τρανζίστορ) n- MOS (αριθμός n- type τρανζίστορ) ηλ.κόμβοι (αριθμός ηλεκτρικών κόμβων) πλάτος λ ύψος λ πλάτος μm ύψος μm επιφάνεια μm 2 ισχύς W Για τον 1- bit ripple carry adder έχουμε: 1- bit adder 120nm 90nm 70nm 50nm 32nm V dd V 1.2 1.0 0.7 0.5 0.8 p- MOS 14 14 14 14 14 n- MOS 14 14 14 14 14 Ηλ.κόμβοι 21 21 22 22 22 Πλάτος λ 172 172 214 214 197 Ύψος λ 93 93 112 112 98 Πλάτος μm 10.3 8.6 7.5 5.4 3 Ύψος μm 5.6 4.7 3.9 2.8 1.5 Επιφάνεια μm 2 57.6 40.0 29.4 15.0 4.3 Πίνακας 2.1: Σύγκριση τιμών για 1- bit ripple carry adder. 53

Για τον 4- bit ripple carry adder έχουμε: 4- bit adder 120nm 90nm 70nm 50nm 32nm V dd V 1.2 1.0 0.7 0.5 0.8 p- MOS 56 56 56 56 56 n- MOS 56 56 56 56 56 Ηλ.κόμβοι 78 78 82 82 82 Πλάτος λ 172 172 214 214 199 Ύψος λ 378 378 454 454 410 Πλάτος μm 10.3 8.6 7.5 5.4 3 Ύψος μm 22.7 18.9 15.9 11.4 6.1 Επιφάνεια μm 2 234.1 162.5 119.0 60.7 18.4 Ισχύς μw 52.47 32.87 11.0 2.17 1.506 Πίνακας 2.2: Σύγκριση τιμών για 4- bit ripple carry adder. Από τα δεδομένα αυτα παρατηρείται μια σημαντική μείωση της επιφάνειας των ολοκληρωμένων κυκλωμάτων, όσο μεγαλώνει η κλίμακα ολοκλήρωσης. Για τον 4- bit αθροιστή, συγκεκριμένα, έχουμε: 30.6% μείωση κατά τη μετάβαση από 120 nm σε 90 nm. 26.7% μείωση κατά τη μετάβαση από 90 nm σε 70 nm. 49% μείωση κατά τη μετάβαση από 70 nm σε 50 nm. 69.6% μείωση κατά τη μετάβαση από 50 nm σε 32 nm. συνολική μείωση 92.1% κατά τη μετάβαση από 120 nm σε 32 nm. Μπορούμε να δούμε τα αποτελέσματα και σε γραφική αναπαράσταση παρακάτω: Επιφάνεια σε μm^2 250 200 234.1 162.5 150 119 100 60.7 50 18.4 0 120nm 90nm 70nm 50nm 32nm Επιφάνεια σε μm^2 Γράφημα 2.1: Μείωση επιφάνειας στις διάφορες τεχνολογίες (σε μm 2 ). 54

Επίσης από τα δεδομένα αυτα παρατηρείται και μια σημαντική μείωση της ισχύς που καταναλώνουν τα ολοκληρωμένα κυκλωμάτα αυτά, όσο μεγαλώνει η κλίμακα ολοκλήρωσης. Για τον 4- bit αθροιστή, συγκεκριμένα, έχουμε: 37.3% μείωση κατά τη μετάβαση από 120 nm σε 90 nm. 66.5% μείωση κατά τη μετάβαση από 90 nm σε 70 nm. 80.3% μείωση κατά τη μετάβαση από 70 nm σε 50 nm. 30.7% μείωση κατά τη μετάβαση από 50 nm σε 32 nm. συνολική μείωση 97.1% κατά τη μετάβαση από 120 nm σε 32 nm. Μπορούμε να δούμε τα αποτελέσματα και σε γραφική αναπαράσταση παρακάτω: Ισχύς σε μw 60 50 52.47 40 32.87 30 20 11 10 2.17 1.5 0 120nm 90nm 70nm 50nm 32nm Ισχύς σε μw Γράφημα 2.2: Μείωση κατανάλωσης ισχύος στις διάφορες τεχνολογίες (σε μw). 55