Σχεδίαση κυκλωμάτων σε SystemVerilog: 1o μέρος
|
|
- Αίγλη Σκλαβούνος
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Σχεδίαση κυκλωμάτων σε SystemVerilog: 1o μέρος Γιώργος Δημητρακόπουλος Το πρώτο σας κύκλωμα Τα ψηφιακά κυκλώματα είναι μια συλλογή από λογικές πύλες και ακολουθιακά στοιχεία αποθήκευσης (ή συγχρονισμού) όπως τα flip-flops. Αποτελούνται επίσης εξειδικευμένες μονάδες αποθήκευσης πληροφορίας όπως οι μνήμες τις οποίες θα πρέπει μεταχειριστούμε χωριστά από τα υπόλοιπα κυκλωματικά στοιχεία στην περίπτωση που περιγράφουμε τη λειτουργία των κυκλωμάτων με μια γλώσσα περιγραφής υλικού. Όπως και στην παρουσίαση των βασικών αρχών της ψηφιακής σχεδίασης θα ξεκινήσουμε από τα συνδυαστικά κυκλώματα και τον τρόπο περιγραφής τους και στη συνέχεια θα ασχοληθούμε με συνθετότερες δομές που μπορούν και θυμούνται προηγούμενες καταστάσεις λειτουργίας τους επαυξάνοντας ταυτόχρονα τις δυνατότητες που μας δίνει η VHDL στην περιγραφή των κυκλωμάτων. Ένα απλό παράδειγμα συνδυαστικής λογικής φαίνεται στο σχήμα που ακολουθεί. assign A = (B & C) (~D); Το κύκλωμα αποτελείται από 3 καλώδια εισόδου Β, C, και D και υπολογίζει μια έξοδο Α. H περιγραφή της λειτουργίας του κυκλώματος σε SystemVerilog περιλαμβάνει απλές λογικές πράξεις and &, or και not ~ οι οποίες θα εφαρμόζονταν πάνω στα καλώδια των εισόδων για να υπολογίσουν μια νέα έξοδο. Στο παράδειγμα αυτό τα A, B, C και D είναι ονόματα των σημάτων της περιγραφής σε SystemVerilog, τα οποία αντιστοιχούν σε απλά καλώδια στην πραγματικότητα. H ανάθεση στο σήμα Α γίνεται μέσω της απευθείας ανάθεσης assign A = αφού πρώτα υπολογιστεί η λογική συνάρτηση που συνδέει τις τιμές των υπολοίπων σημάτων. Οι παρενθέσεις μας επιτρέπουν να καθορίσουμε τη σειρά υπολογισμού των λογικών εκφράσεων, ενώ κάθε ανάθεση σε ένα σήμα ολοκληρώνεται με ένα ; στο τέλος της πρότασης. Κάθε φορά που κάποιο από τα σήματα στη δεξιά πλευρά της ανάθεσης assign <> = <> αλλάξει τιμή, πχ το B, το C, ή το D, τότε υπολογίζεται αυτόματα μια νέα τιμή για το σήμα στην αριστερή πλευρά της ανάθεσης. Η λογική αυτή μας επιτρέπει να πούμε πως οι απευθείας αναθέσεις αυτές περιγράφουν τη λειτουργία μιας οποιαδήποτε συνδυαστικής λογικής. Η πιο απλή μορφή ανάθεσης είναι αυτή μιας σταθερής λογικής τιμής και γράφεται ως εξής: assign Α = 1 b1; Η τιμή του λογικού 0 και 1 τοποθετείται μετά την παράσταση 1 b το οποίο δηλώνει πως η ποσότητα που θα ακολουθήσει είναι του ενός μπιτ. Για τα ψηφιακά κυκλώματα με περισσότερες από μία εξόδους χρησιμοποιούμε περισσότερες αναθέσεις, μία για κάθε έξοδο του κυκλώματος. Αυτό φαίνεται στο παρακάτω παράδειγμα του κυκλώματος του πλήρη αθροιστή, όπου tα σήματα στην έξοδο του κυκλώματος S και Co υπολογίζονται ως λογικές συναρτήσεις των εισόδων A, Β και Ci. assign S = A ^ B ^ Ci; assign Co = (A & B) ((A ^ B) & Ci); Δομή κάθε περιγραφής σε SystemVerilog Όπως σε κάθε ψηφιακό κύκλωμα πέρα από την περιγραφή της λειτουργίας του πρέπει να είμαστε σε θέση να ορίσουμε με σαφήνεια τις εισόδους και τις εξόδους του καθώς και να του δώσουμε ένα όνομα που θα μας επιτρέπει να το ξεχωρίζουμε από τα υπόλοιπα. Έτσι η πλήρης περιγραφή σε SystemVerilog του κυκλώματος του πλήρη αθροιστή φαίνεται παρακάτω: 1
2 module fulladder ( input logic A, input logic B, // input bits for this stage input logic Ci, // carry into this stage output logic S, // sum bit output logic Co ); // carry out of this stage assign S = A ^ B ^ Ci; assign Co = (A & B) ((A ^ B) & Ci); Η περιγραφή του πλήρη αθροιστή (full adder) αποτελείτε από 2 μέρη. To πρώτο μέρος (module) περιγράφει το όνομα του κυκλώματος και τις πόρτες εισόδου και εξόδου του, ενώ το δεύτερο μέρος περιλαμβάνει την περιγραφή της λειτουργίας του. Το όνομα του κυκλώματος δηλώνεται αμέσως μετά την ειδική λέξη module. Κάθε δήλωση ξεκινά με τη γραμμή module <όνομα> (πόρτες εισόδου/εξόδου); και τελειώνει με τη δήλωση. Για τον πλήρη αθροιστή διαλέξαμε το όνομα fullαdder. Μέσα στη δήλωση κάθε module περιλαμβάνουμε μια λίστα με τις δηλώσεις των εισόδων και των εξόδων του κυκλώματος. Η λίστα αυτή εμπεριέχεται μέσα σε παρενθέσεις. Για κάθε πόρτα του κυκλώματος μας πρέπει να δηλώσουμε το όνομα του σήματος που συνδέεται σε αυτήν μέσα στο κύκλωμα, αν πρόκειται για είσοδο ή έξοδο του κυκλώματος και τον τύπου του σήματος. Στο παράδειγμα μας ο πλήρης αθροιστής διαθέτει 2 εξόδους και 3 εισόδους εκ των οποίων η μία είναι το σήμα B το οποίο είναι τύπου logic. Αυτό το καταλαβαίνουμε κοιτώντας τη δήλωση module fulladder (., input logic B, );. Για όλα τα κυκλώματα που θα σχεδιάσουμε στη συνέχεια θα διαλέξουμε ο τύπος των καλωδίων που θα χρησιμοποιήσουμε θα είναι πάντα logic. Ο τύπος logic αντιστοιχεί ουσιαστικά σε όλες τις τιμές που μπορεί να πάρει ένα καλώδιο στην πραγματικότητα και δεν είναι άλλες από το λογικό 0 το λογικό 1, απροσδιόριστες τιμές εξαιτίας λανθασμένης ή πολλαπλής οδήγησης και μη οδηγούμενη τιμή (floating). Τη δήλωση της διεπαφής (interface) του κυκλώματος ακολουθεί η περιγραφή της λειτουργίας του, η οποία αποτελείται από δύο απευθείας αναθέσεις στα σήματα Χ. Υ που αποτελούν τις εξόδους του κυκλώματος μας. Για την πλήρη περιγραφή ενός κυκλώματος απαιτείται τόσο η δήλωση του module όσο και η περιγραφή της λειτουργίας του. Η μεν δήλωση του module έχει να κάνει μόνο με το όνομα του κυκλώματος και τα ονόματα των σημάτων που συνδέονται στις πόρτες εισόδου και εξόδου του, ενώ το κύριο σώμα της περιγραφής δηλώνει ακριβώς τη συμπεριφορά του κυκλώματος πάνω στα σήματα εισόδου. Για παράδειγμα κάθε φορά που δηλώνουμε ένα module είναι σαν να σχεδιάζουμε ένα κενό κουτί με εισόδους και εξόδους όπως φαίνεται στο παρακάτω σχήμα. Με την περιγραφή της συμπεριφοράς του είναι σαν να γεμίζουμε το άδειο κουτί με ένα λογικό διάγραμμα. Τέλος όπως και σε κάθε κώδικα έτσι και στη SystemVerillog χρειαζόμαστε σχόλια τα οποία θα συνοδεύουν την περιγραφή του κυκλώματος κάνοντας την πιο ευανάγνωστη. Τα σχόλια ξεκινούν με δύο πλάγιες γραμμές // (όπως στη C) και δε επηρεάζουν σε τίποτε την υπόλοιπη περιγραφή. Καλό είναι να βάζετε κατανοητά σχόλια στον κώδικα σας στα σημεία που απαιτούν περισσότερες διευκρινήσεις. Στην περιγραφή του fullαdder που δείξαμε μέχρι στιγμής όλα τα σήματα του κυκλώματος είναι είτε είσοδοι είτε έξοδοι του κυκλώματος. Φυσικά μπορούμε να έχουμε χωριστά ονόματα και για τα εσωτερικά καλώδια (σήματα) του κυκλώματος μας. Για παράδειγμα θα μπορούσαμε να περιγράψουμε τη συμπεριφορά του πλήρη αθροιστή ως εξής: 2
3 logic X; assign X = A ^ B; assign S = X ^ Ci; assign Co = (A & B) (X & Ci); Στην περίπτωση αυτή για την περιγραφή του πλήρη αθροιστή χρησιμοποιήσαμε ένα επιπλέον εσωτερικό καλώδιο Χ στο οποίο αναθέσαμε την τιμή του A ^ Β ( δλδ A xor B). Στη συνέχεια χρησιμοποιήσαμε την τιμή αυτού του καλωδίου ώστε να υπολογίσουμε τις τιμές των σημάτων της εξόδου S και Co. Για να χρησιμοποιήσουμε το καλώδιο αυτό θα έπρεπε να το δηλώσουμε μέσα στο σώμα της περιγραφής του κυκλώματος. H δήλωση όλων των εσωτερικών σημάτων ακολουθεί πάντα την ίδια δομή logic <όνομα>;. Οι απευθείας αναθέσεις στα σήματα Χ, S και Co πραγματοποιούνται ταυτόχρονα και στα 3 σήματα και το αποτέλεσμα τους είναι ανεξάρτητο από τη σειρά που έχουν τοποθετηθεί στον κώδικα. Για παράδειγμα οι δύο παρακάτω παραλλαγές assign X = A ^ B; assign S = X ^ Ci; assign Co = (A & B) (X & Ci); assign Co = (A & B) (X & Ci); assign X = A ^ B; assign S = X ^ Ci; θα είχαν ακριβώς το ίδιο αποτέλεσμα, εφόσον στις απευθείας αναθέσεις τις SystemVerilog δεν υπάρχει η έννοια της σειριακής εκτέλεσης των εντολών όπως σε ένα πρόγραμμα. Μία απευθείας ανάθεση assign <signal> <= f(<signals>) αντιστοιχεί σε ένα κομμάτι ενός κυκλώματος με μία έξοδο. Το σήμα στην αριστερή πλευρά της ανάθεσης είναι η έξοδος του υποτιθέμενου κυκλώματος και τα σήματα στη δεξιά πλευρά οι είσοδοι του. Στο παράδειγμα μας το κύκλωμα που περιγράφουμε αποτελείται από 4 υποκυκλώματα τα οποία ενώνονται με καλώδια. assign p2 = a2 a3; assign p3 = p2 ^ a1; assign p1 = (~a1) & a2; assign p4 = p1 & p3; Όταν ένα καλώδιο (όπως τα p1, p3) συμμετέχει τόσο στη δεξιά όσο και στην αριστερή πλευρά κάποιων αναθέσεων υπονοείται πως πρόκειται για ένα καλώδιο που ενώνει δύο υποκυκλώματα. Όπως και στα πραγματικά κυκλώματα λογικών πυλών έτσι και στη SystemVerilog οι αναθέσεις υπολογίζονται εκ νέου κάθε φορά που τα σήματα (καλώδια) στη δεξιά πλευρά των αναθέσεων αλλάζουν τιμή ανεξάρτητα από τη σειρά που έχουν γραφεί στον κώδικα. Άλλωστε όταν ζωγραφίζουμε ένα κύκλωμα δεν παίζει ρόλο ούτε η σειρά με την οποία ζωγραφίσαμε τις πύλες στο χαρτί ούτε πια βάλαμε μπροστά και ποια πίσω αρκεί να τις συνδέσαμε σωστά με τα καλώδια που έχουμε στη διάθεση μας. Αυτό όμως που πρέπει οπωσδήποτε να αποφεύγουμε είναι να έχουμε περισσότερες από μία απευθείας αναθέσεις στο ίδιο σήμα. Στο παρακάτω παράδειγμα το σήμα y ανατίθεται περισσότερο από μια φορές με απευθείας ανάθεση. assign y = a c; assign y = a & b; assign x = y & d; Οι αναθέσεις αυτές αν και συντακτικά σωστές παρουσιάζουν ένα ουσιαστικό λάθος. Το κύκλωμα στο οποίο αντιστοιχούν αποτελείται από 2 AND πύλες και μια OR. Η μία ΟR πύλη συνδυάζει τις εισόδους a και b και παράγει το σήμα y. To ίδιο όμως ακριβώς προσπαθεί να παράγει και η AND πύλη που συνδυάζει τις εισόδους a και c. Το αποτέλεσμα αυτού του διπλού υπολογισμού του y μέσω απευθείας αναθέσεων οδηγεί σε ένα βραχυκύκλωμα πάνω στο καλώδιο y η τιμή του οποίου θα είναι άγνωστη στην περίπτωση που η πάνω και η κάτω πύλη προσπαθούν να το οδηγήσουν σε αντίθετες λογικές τιμές. 3
4 Απευθείας αναθέσεις υπό συνθήκη Οι λογικές σχέσεις not, and, or, xor αρκούν για να περιγράψουν τη λειτουργία ενός οποιοδήποτε συνδυαστικού κυκλώματος. Παρόλα αυτά, συνήθως χρησιμοποιούμε υπό-συνθήκη αναθέσεις οι οποίες κάνουν την περιγραφή πιο κατανοητή. Μια τέτοια ανάθεση υπό-συνθήκη στο σήμα d περιγράφεται στη VHDL ως εξής assign d = (a==b)? '1': (c==1 b1)? b : ~a; Το σήμα d παίρνει την τιμή του λογικού 1 όταν τα οι τιμές των σημάτων a και b είναι ίσες. Αν αυτό δεν ισχύει αλλά η τιμή του c είναι ίση με 1 τότε στο d ανατίθεται η τιμή του b. Αν τίποτε από αυτά δεν ικανοποιείται τότε το d παίρνει την αντίστροφη τιμή του a. Το πρώτο που πρέπει να παρατηρήσετε είναι πως ο έλεγχος της συνθήκης ισότητας γίνεται το διπλό τελεστή ισότητας ==. Οι υπο-συνθήκη αναθέσεις μας επιτρέπουν να περιγράψουμε με ένα κατανοητό τρόπο απευθείας τη λειτουργία της πολύπλεξης. Για παράδειγμα η αντιστοίχιση της πιο πάνω υπο-συνθήκη ανάθεσης σε κύκλωμα φαίνεται στο παρακάτω σχήμα. Το ισοδύναμο κύκλωμα αποτελείται από 2 εν σειρά πολυπλέκτες οι οποίοι καθορίζουν ποια από τις 3 επιλογές που έχουμε για την ανάθεση, δηλαδή το '1', το b ή το not a θα περάσει τελικά στο d. Ποιο από τα 3 πιθανά μονοπάτια θα ενεργοποιηθεί τελικά εξαρτάται από την ικανοποίηση η όχι των επιμέρους συνθηκών οι οποίες συνδέονται στη γραμμή επιλογής του κάθε πολυπλέκτη. Θεωρούμε πως όταν μια συνθήκη ικανοποιηθεί τότε η έξοδος του αντίστοιχου κυκλώματος που την υλοποιεί οδηγείται στο λογικό 1. Εφόσον όλα τα σήματα του κυκλώματος μας είναι του 1 δυαδικού ψηφίου τότε ο έλεγχος της ισότητας μπορεί να γίνει μέσω μιας πύλης XNOR. Κάθε υπό-συνθήκη ανάθεση ακολουθεί τη γενική δομή του παρακάτω σχήματος. assign x = (cond#1)? Value#1 : (cond#2)? Value#2 :... (cond#n)? value#n-1 : value#n. Όταν η υπο-συνθήκη ανάθεση υλοποιηθεί αντιστοιχεί σε μια σειριακή δομή από πολυπλέκτες. Η είσοδος επιλογής του κάθε πολυπλέκτη συνδέεται στο αντίστοιχο κύκλωμα ικανοποίησης της συνθήκης ελέγχου, με τις εισόδους του πολυπλέκτη η μια να συνδέεται στην τιμή προς ανάθεση ενώ η άλλη στην έξοδο του προηγούμενο πολυπλέκτη. Οι πολυπλέκτες που βρίσκονται πιο κοντά στην έξοδο είναι αυτοί που ελέγχουν τις συνθήκες πιο κοντά στην ανάθεση. Ο πιο απλός πολυπλέκτης 2 σε 1 θα γραφόταν ως εξής assign x = (s==1 b1)? a : b; Ομάδες καλωδίων από κοινού επεξεργασία Στην πραγματικότητα σε πολλές περιπτώσεις τα κυκλώματα μας καλούνται να επεξεργαστούν ταυτόχρονα ομάδες από καλώδια τα οποία αποτελούν μια φυσική οντότητα αρκετών δυαδικών ψηφίων. Κάθε τέτοιο σήμα είναι ουσιαστικά μια συλλογή από απλά σήματα logic του ενός δυαδικού ψηφίου. Για παράδειγμα ένα σήμα Χ των 8 καλωδίων δηλώνεται ως εξής: logic [7:0] X; 4
5 Μαζί με την δήλωση του τύπου (logic) του σήματος Χ οφείλουμε να δηλώσουμε και το εύρος του. Δηλαδή το δείκτη της πρώτης και της τελευταίας θέσης του πίνακα, [7 : 0]. Το σήμα X δεν είναι τίποτε άλλο από 8 παράλληλα καλώδια τύπου logic το καθένα. Μπορούμε να αναφερθούμε σε κάθε ένα από αυτά χρησιμοποιώντας αγκύλες και το δείκτη του κάθε καλωδίου. Για παράδειγμα το πρώτο καλώδιο είναι το Χ[0] ενώ το τελευταίο το X[7]. Επίσης μπορούμε να αναφερθούμε απευθείας σε κάποιες συνεχόμενες υπο-ομάδες του Χ. Για παράδειγμα, μπορούμε να αναφερθούμε στα 4 καλώδια Χ[6], Χ[5], Χ[4] και Χ[3], ως X[6:3]. Οι αναθέσεις σε ομάδες καλωδίων γίνονται ακριβώς όπως και στα απλά σήματα, με τη μόνη διαφορά ότι ο λογικός τελεστής που ενδεχομένως να συνοδεύει την ανάθεση εφαρμόζεται παράλληλα σε όλα τα δυαδικά ψηφία της ομάδας των καλωδίων. Για παράδειγμα, στο σήμα Χ των 8 δυαδικών ψηφίων που δηλώσαμε πιο πριν μπορούμε να αναθέσουμε μια σταθερή τιμή assign Χ = 8 b ; Αυτή η απευθείας ανάθεση ισοδυναμεί με την ανάθεση σε ένα-ένα τα δυαδικά ψηφία του Χ των σταθερών τιμών assign Χ[7] = 1 b0; assign Χ[6] = 1 b1; assign Χ[5] = 1 b0; assign X[4] = 1 b0; assign X[3] = 1 b1; assign X[2] = 1 b0; assign X[1] = 1 b1; assign X[0] = 1 b0; Προσέξτε πως στην περίπτωση τις ανάθεσης σταθερής τιμής σε ομάδες καλωδίων τοποθετούμε σωστά το πλήθος των μπιτ πριν το b. Επίσης σε περίπτωση λογικών πράξεων μπορούμε να περιγράψουμε 8 παράλληλες AND πύλες χωρίς να χρειάζεται να περιγράψουμε τη λογική πράξη για κάθε ζεύγος από δυαδικά ψηφία χωριστά ( assign Χ[0] = ~(Α[0] & B[0]);... assign Χ[7] = ~(Α[7] & B[7]);) όπως φαίνεται στο σχήμα που ακολουθεί. assign X = ~(A & B); Σε αυτό το σημείο πρέπει να προσέξετε πως για να είναι η ανάθεση αυτή σωστή θα πρέπει το εύρος των εισόδων Α και Β να ταιριάζει με το εύρος του σήματος Χ. Δεν επιτρέπεται η λογική πράξη μεταξύ ενός logic vector των 6 δυαδικών ψηφίων με ένα των 7 δυαδικών ψηφίων. Αν θέλουμε να εφαρμόσουμε λογικές πράξεις πάνω σε σήματα διαφορετικού εύρους πρέπει πρώτα να εξισώσουμε τα μεγέθη τους. Για παράδειγμα η εφαρμογή μιας μάσκας mask στα 8 μπιτς ενός 8μπιτου σήματος θα έπρεπε να περιγραφεί ως εξής: logic [7:0] X, Y; logic [7:0] temp; logic mask; assign temp = { 8{mask} }; // repeat mask 8 times assign Y = X & temp; // bitwise and Με την ανάθεση αυτή κάθε μπιτ Χ[i] του σήματος Χ γίνεται and με το ίδιο σήμα mask. Αυτό συμβαίνει γιατί μέσω της δήλωσης { 8{mask} } αντιγράψαμε σε κάθε θέση του temp ένα αντίγραφο του mask. 5
6 Με την ίδια λογική μπορούμε να περιγράψουμε απευθείας αναθέσεις υπό συνθήκη σε ομάδες καλωδίων. Αυτό κάνουμε για ένα πολυλέκτη 2-σε-1 των 4 δυαδικών ψηφίων. module mux_4bits ( input logic [3:0] A, input logic [3:0] B, input logic sel, output logic [3:0] Z); assign Χ = (sel == 1 b1) B : A; Σε αυτό το παράδειγμα αξίζει να προσέξουμε δύο στοιχεία. Πρώτον οι ομάδες καλωδίων μπορούν να χρησιμοποιηθούν ως είσοδοι και έξοδοι του κυκλώματος μας. Δεύτερον η συνθήκη sel==1 b1 που ελέγχει την ανάθεση συνδέεται σε 4 παράλληλους 2-σε-1 πολυπλέκτες του ενός δυαδικού ψηφίου παράγοντας στην έξοδο μια 4μπιτη ποσότητα Χ. Ακόμη και στην περίπτωση που η συνθήκη περιέχει μια λογική σχέση ( για το OR, && για το AND και! για το ΝΟΤ), το αποτέλεσμα της πράξης αυτής μοιράζεται σε όλους του πολυπλέκτες, όπως στο παράδειγμα που ακολουθεί. assign Χ = ( C D)? B : A; Επίσης η υπο-συνθήκη απευθείας αναθέσεις μπορούν να αφορούν σε χωριστά μέρη του ίδιου σήματος όπως στις δυο αναθέσεις που ακολουθούν. assign Χ[1:0] = (sel == 1 b1) 2 b10: 2 b00; assign Χ[3:2] = (sel == 1 b0) 2 b11: 2 b00; Στο σχηματισμό συνθηκών ελέγχου μπορούν να συμμετέχουν και ομάδες καλωδίων τύπου std_logic_vector, τόσο σε αναθέσεις που αφορούν πολλά δυαδικά ψηφία όσο και σε αναθέσεις που αφορούν ένα καλώδιο. Για παράδειγμα ένας αποκωδικοποιητής 2-σε-4 μπορεί πολύ εύκολα να περιγραφεί ως εξής: module decoder_2to4 ( input logic [1:0] A, input logic en, output logic [3:0] Z); logic [3:0] A _dec; assign A_dec = (A==2 b00)? 4 b0001: (A==2 b01)? 4 b0010: (A==2 b10)? 4 b0100: (A==2 b11)? 4 b1000: 4 b0001; assign Z = (en==1 b1) A_dec: 4 b0000; Στο παράδειγμα μας η έξοδος του αποκωδικοποιητή ελέγχεται ταυτόχρονα και από ένα σήμα επίτρεψης en. Στην περίπτωση που το σήμα αυτό έχει την τιμή '0' τότε όλα τα καλώδια του αποκωδικοποιητή οδηγούνται στο λογικό 0. Αν εκτελέσετε όλες τις 6
7 λογικές απλοποιήσεις που προκύπτουν από τις σταθερές τιμές στην είσοδο των πολυπλεκτών θα προκύψει η δομή του decoder που θυμάστε από την ψηφιακή σχεδίαση. Μέσω της συνένωσης (concatenation) {,, } μπορούμε να παράγουμε μεγαλύτερες συλλογές καλωδίων. logic [ 3:0] A; logic [ 3:0] B; logic [ 3:0] C; logic [11:0] D; assign D = {A, B, C}; Στο παράδειγμα η 12μπιτή ποσότητα D προκύπτει από τη συνένωση 3 4μπιτων σημάτων Α, Β και C. Τα μπιτς του Α καταλαμβάνουν τις 4 πιο σημαντικές θέσεις στο σήμα D ενώ τα μπιτς του Β τις τέσσερις λιγότερο σημαντικές. Ισοδύναμα η παραπάνω απευθείας ανάθεση στο D θα μπορούσε να περιγραφεί ως εξής: assign D[11:8] = A; assign D[ 7:4] = B; assign D[ 3:0] = C; Τέλος στην περίπτωση που θέλουμε να μειώσουμε (reduction) τα μπιτς ενός πολύμπιτου σήματος σε μόνο ένα εφαρμόζοντας αναδρομικά την ίδια λογική συνάρτηση θα μπορούσαμε να χρησιμοποιήσουμε τις αναθέσεις μείωσης. logic [ 3:0] A; logic X, Y, Z; assign X = A; // D <- A[0] or A[1] or A[2] or A[3] assign Y = &A; // D <- A[0] and A[1] and A[2] and A[3] assign Z = ^A; // D <- A[0] xor A[1] xor A[2] xor A[3] Tα σήματα ως αριθμοί Σε πολλές περιπτώσεις οι ομάδες καλωδίων, δεν είναι απλά μια ομαδοποίηση ομοειδών σημάτων, αλλά περιγράφουν αριθμούς είτε θετικούς είτε αρνητικούς με τους οποίους θα θέλαμε να εκτελέσουμε αριθμητικές πράξεις. Για παράδειγμα όταν στο σήμα Χ των 4 δυαδικών ψηφίων (logic [3:0]) αναθέτουμε την τιμή 4 b1110 αυτό έμμεσα σημαίνει ότι το Χ είναι ο αριθμός 14. Το Χ δηλαδή ακολουθεί την unsigned αναπαράσταση στα 4 μπιτς. Με άλλα λόγια οι δύο παρακάτω αναθέσεις είναι ισοδύναμες. logic [3:0] X; assign X = 4 b0011; assign X = 3; Λόγω αυτής της ισοδυναμίας μπορούμε στα σήματα μας να χρησιμοποιήσουμε τους τελεστές αριθμητικών πράξεων +, - ή και αριθμητικών συγκρίσεων >, <, >=, <=, ==. Σύνθετοι υπολογισμοί όπως *, /, %, ** οδηγούν σε μεγάλα κυκλώματα τα οποία δεν παράγονται αυτόματα από πολλά προγράμματα λογικής σύνθεσης με αποτέλεσμα να μην μπορούμε να τους χρησιμοποιήσουμε. module test ( input logic [3:0] a, b, c, output logic [3:0] x, y, z, output logic res); assign x = a + b + 2; assign y = c + 1; assign z = c 2; assign res = (a > b)? 1 : 0; // the last line can be equivalently written as // assign res = (a > b); 7
8 Οι απευθείας αναθέσεις του παραδείγματος προσθέτουν, αφαιρούν και συγκρίνουν logic vectors θεωρώντας πως αυτά περιγράφουν αριθμούς χωρίς πρόσημο. Αυτήν την υπόθεση θα κάνει και το εργαλείο προσωμοίωσης και της λογικής σύνθεσης του σχεδιασμού μας. Αν τα αποτελέσματα δεν είναι τα ζητούμενα εξαιτίας μη επαρκούς ακρίβειας ή δυναμικής περιοχής (απαιτούμενο πλήθος από δυαδικά ψηφία) είναι πρόβλημα του σχεδιαστή και δε μπορεί να αντιμετωπιστεί αυτόματα. Για παράδειγμα η πρόσθεση y = c + 1 του παραδείγματος θα δώσει στο y την τιμή 0000 όταν το c είναι ίσο με Αυτή η συμπεριφορά wrap around οφείλετε στο γεγονός πως το ζητούμενο αποτέλεσμα απαιτεί 5 δυαδικά ψηφία για να υπολογιστεί ενώ το y διαθέτει μόνο 4. Σε κάποιες εφαρμογές όπως στη σχεδίαση μετρητών (counter) η συμπεριφορά αυτή είναι επιθυμητή, ενώ σε κάποιες άλλες μπορεί να δώσει λαναθσμένα αποτελέσματα. module average_of_four ( input logic [3:0] b, c, d, output logic [3:0] avg); // We increase the bitwidth of the vectors for avoiding overflow logic [3:0] sumab, sumcd; logic [4:0] sum; assign sumab = a + b; assign sumbc = c + d; assign sum = sumab + sumbc; // average = sum/4. Division by 4 is equivalent to 2 positions // right shift for unsigned numbers assign avg = sum[5:3]; Στην περίπτωση που θέλετε να χρησιμοποιήσετε στην περιγραφή σας τόσο αριθμούς χωρίς πρόσημο (unsigned) όσο και προσημασμένους αριθμούς στην αναπαράσταστη συμπλήρωμα ως προς 2 (signed) τότε πρέπει να χρησιμοποιείτε συναρτήσεις επιλογής τύπου ώστε να περιγράψετε με σαφήνεια την αριθμητική αναπαράσταση που έχετε επιλέξει κάθε φορά. Κάτι τέτοιο φαίνεται στο παράδειγμα που ακολουθεί. assign x = $signed(a) + $signed(b); assign y = $signed(c+1); assign z = $signed(c-2); Τέλος, τα σήματα logic vector από τη στιγμή που τους προσδίδουμε αριθμητική σημασία μπορούν να χρησιμοποιηθούν ως δείκτες (διευθύνσεις) για την επιλογή από ένα σύνολο από δεδομένα επιτρέποντας μας να περιγράψουμε-σχεδιάσουμε αποκωδικοποιητές, πολυπλέκτες και άλλα κυκλώματα με ένα πολύ σύντομο τρόπο. Για παράδειγμα θέλουμε από ένα logic [3:0] με το όνομα data να επιλέξουμε εκείνα τα δεδομένα που βρίσκονται στη θέση που δηλώνει ένα άλλο σήμα τύπου logic [1:0] των 2 δυαδικών ψηφίων με όνομα sel. module mux4 ( input logic[3:0] datain, input logic[1:0] sel, output logic dataout); assign dataout = datain[sel]; Ιεραρχία κατά τη σχεδίαση - υποκυκλώματα Κατά τη σχεδίαση σύνθετων κυκλωμάτων διαλέγουμε πολλές φορές να σχεδιάσουμε τα κυκλώματα μας ιεραρχικά χωρίζοντας το κύκλωμα μας σε υπο-κυκλώματα. Το τελικό κύκλωμα προκύπτει μετά από μια απλή σύνδεση με καλώδια των υποκυκλωμάτων που έχουμε σχεδιάσει. Πως όμως μπορούμε να επαναχρησιμοποιήσουμε έτοιμα κυκλώματα και να τα συνδέσουμε μεταξύ τους σε VHDL; Αυτό μπορούμε πολύ εύκολα να το μάθουμε χρησιμοποιώντας ως παράδειγμα ένα 4μπιτο αθροιστή τον οποίο θα κατασκευάσουμε συνδέοντας σε σειρά τους 4 πλήρης αθροιστές. 8
9 module adder4 ( input logic [3:0] A, input logic [3:0] B, input logic Ci, output logic [3:0] S, output logic Cout); -- internal carry signals logic [3:0] C; fulladder b0 (A[0],B[0], Ci,S[0],C[1]); fulladder b1 (A[1],B[1],C[1],S[1],C[2]); fulladder b2 (A[2],B[2],C[2],S[2],C[3]); fulladder b3 (A[3],B[3],C[3],S[3], Co); Στην περίπτωση αυτή το κύκλωμα μας adder4 δέχεται στην είσοδο του δύο σήματα A και Β των 4 δυαδικών ψηφίων και ένα κρατούμενο εισόδου Ci. Αφού το κύκλωμα ολοκληρώσει την πρόσθεση δίνει στην έξοδο του το άθροισμα Α + Β + Ci στην έξοδο S και το κρατούμενο εξόδου στην έξοδο Co. Στο κομμάτι της περιγραφής της συμπεριφοράς του κυκλώματος παρατηρούμε ότι δε πραγματοποιούνται αναθέσεις σε κάποια από τα σήματα εξόδου αλλά οι τιμές των εξόδων προκύπτουν από την επαναχρησιμοποιήση 4 κυκλωμάτων πλήρων αθροιστών fulladder. Για να μπορέσουμε να χρησιμοποιήσουμε το υποκύκλωμα fulladder μέσα στo adder4 πρέπει να δημιουργήσουμε ενα στιγμιότυπο (instance) για κάθε ένα που θέλουμε να χρησιμοποιήσουμε και να συνδέσουμε τις εισόδους και τις εξόδους του στα αντίστοιχα καλώδια. Στο παράδειγμα μας χρησιμοποιούμε 4 φορές το υποκύκλωμα του fulladder, χρησιμοποιώντας 4 δηλώσεις της μορφής. fulladder b0 (A[0],B[0], Ci,S[0],C[1]); Κάθε τέτοια δήλωση ενός υποκυκλώματος περιλαμβάνει το όνομα του υποκυκλώματος που χρησιμοποιoύμε (πχ fulladder), ένα όνομα για το υποκύκλωμα ώστε να το ξεχωρίζουμε από τα υπόλοιπα (πχ b0), καθώς και την αντιστοίχιση των καλωδίων του adder4 (είσοδοι, έξοδοι και εσωτερικά σήματα) στις πόρτες του fulladder. Στο παράδειγμα μας η λίστα αντιστοίχισης των εισόδων και των εξόδων με εξωτερικά καλώδια γίνεται με βάση τη σειρά δήλωσης των ονομάτων των καλωδίων. Δηλαδή το καλώδιο εισόδου του adder4 A(0) συνδέεται στην είσοδο Α του fulladder όπως φαίνεται στη σελίδα 2. Αντίστοιχα, το σήμα Ci που είναι 3ο στη λίστα της δήλωση για το instance b0 συνδέεται με το 3ο σήμα του fulladder που είναι η είσοδος C. H SystemVerilog επιτρέπει επίσης τη σύνδεση των καλωδίων στις εισόδους και εξόδους κάθε υποκυκλώματος με βάση το όνομα της κάθε πόρτας εισόδου και εξόδου χωρίς να είναι αναγκαία η τήρησης της σειράς με την οποία δηλώθηκαν οι πόρτες στο αρχικό modules. Για παράδειγμα θα μπορούσαμε να γράψουμε: fulladder b0 (.A( A[0] ),.B ( B[0] ),.S( S[0] ),.Ci( Ci ),.C0 ( C[1] ) ); Στο παράδειγμα αυτό φαίνεται σε πια ακριβώς πόρτα συνδέονται τα σήματα του adder4 μέσω της αντιστοίχισης.<όνομα πόρτας> (<όνομα σήματος>). Φυσικά σε κάθε περίπτωση πρέπει να προσέξετε ο τύπος της πόρτας στην οποία συνδέεται ένα εξωτερικό καλώδιο να ταιριάζει ακριβώς με τον τύπο του καλωδίου (ή ομάδας καλωδίων αντίστοιχα). Τι θα έπρεπε όμως να κάνουμε στην περίπτωση που θα θέλαμε να σχεδιάσουμε ένα 32μπιτο αθροιστή; Η επαναχρησιμοποίηση 32 πλήρων αθροιστών (fulladder) θα απαιτούσε τη δήλωση 32 υποκυκλώμάτων και τη σύνδεση 5x32 συνολικά καλωδίων, παρόλο που η συνδεσμολογία σε κάθε υποκυκλωμα ακολουθεί μια επαναληπτική δομή. Για να δείτε τη δομή των επαναλήψεων αρκεί να παρατηρήσετε τις συνδέσεις στα υποκυκλώματα b1 και b2 του adder4. O fulladder που βρίσκεται στη θέση i συνδέεται πάντα με τα καλώδια Α[i], Β[i], C[i] ενώ παράγει στην έξοδο του τα καλώδια S[i] και C[i+1] το οποίο θα χρησιμοποιηθεί ως είσοδος από το fulladder της επόμενης θέσης. Επομένως θα μας ήταν πολύ βολικό αν στη SystemVerilog 9
10 υπήρχε κάποιος τρόπος να δηλώναμε όσα υποκυκλώματα επιθυμούσαμε με έναν επαναληπτικό τρόπο χωρίς να χρειάζεται να δηλώνουμε το καθένα χωριστά. Ευτυχώς ο τρόπος αυτός υπάρχει και ονομάζεται επαναλήψεις γέννησης υποκυκλωμάτων (generate for loops). H δημιουργία του ίδιου αθροιστή των 4 δυαδικών ψηφίων μέσω τέτοιων επαναλήψεων φαίνεται στο παράδειγμα που ακολουθεί. module adder4 ( input logic [3:0] A, input logic [3:0] B, input logic Ci, output logic [3:0] S, output logic Cout); -- internal carry signals logic [4:0] C; assign C[0] = Ci; generate genvar i; for (i=0; i < 4; i=i+1) begin : fa fulladder b (A[i],B[i],C[i],S[i],C[i+1]); end endgenerate assign Co = C[4]; Η δήλωση των υποκυκλωμάτων περιέχεται μέσα σε μια επαναληπτική δομή τύπου for generate στην οποία είμαστε υποχρεωμένοι να δώσουμε ένα όνομα επανάληψης και να ορίσουμε μια μεταβλητή επανάληψης (genvar). Τη μεταβλητή δεν απαιτείται να την έχουμε δηλώσει κάπου πιο πριν. Αυτό που πρέπει να προσέξουμε είναι τα όρια των επαναλήψεων να είναι στατικά ορισμένα και να μην εξαρτώνται από τις τιμές άλλων σημάτων του κυκλώματος μας. Μην ξεχνάτε ότι ο ρόλος των επαναλήψεων for generate δεν είναι η υλοποίηση των επαναλήψεων ενός αλγορίθμου αλλά η εύκολη δημιουργία ενός συγκεκριμένου αριθμού υποκυκλωμάτων των οποίων το πλήθος και τον τρόπο που συνδέονται τον γνωρίζουμε εξαρχής. Τέλος παρατηρήστε πως στη δήλωση των υποκυκλωμάτων fulladder μέσα στην επανάληψη τύπου for generate χρησιμοποιήσαμε το ίδιο όνομα b. Αυτό δε μας ενοχλεί καθώς το εργαλείο λογικής σύνθεσης θα αντιληφθεί την επαναληπτική διαδικασία και θα δώσει ένα διαφορετικό όνομα σε κάθε υποκύκλωμα (πχ b_0, b_1, ανάλογα με την τιμή του δείκτη της επανάληψης που τα γέννησε). Διαπιστώνοντας τη χρησιμότητα αυτής της επαναληπτικής δήλωσης των υποκυκλωμάτων έρχεται στο νου μας η εξής επιθυμητή ιδιότητα για τις περιγραφές των κυκλωμάτων μας σε SystemVerillog. Πως θα μπορούσαμε να είχαμε περιγράψει σε SystemVerilog μόνο έναν αθροιστή και αλλάζοντας απλά την τιμή μιας μεταβλητής να μπορούσαμε να έχουμε στη διάθεση μας κατά περίπτωση ένα αθροιστή των 4 bits είτε ένα των 32 bits χωρίς να αλλάξουμε ξανά τον κώδικα μας. Κάτι τέτοιο μπορεί να γίνει μέσω της δήλωσης των παραμετρικών μεταβλητών για το κύκλωμα μας όπως φαίνεται από την περιγραφή ενός αθροιστή των N δυαδικών ψηφίων ο οποίος εσωτερικά αποτελείται από Ν πλήρεις αθροιστές (fulladder). module adder #( parameter N = 10 )( input logic [N-1:0] A, input logic [N-1:0] B, input logic Ci, output logic [N-1:0] S, output logic Cout); -- internal carry signals logic [Ν-1:0] C; generate genvar i; for (i=0; i < N; i=i+1) begin : fa 10
11 fulladder b (A[i],B[i],C[i],S[i],C[i+1]); end endgenerate Στο παράδειγμα αυτό το μόνο που προσθέσαμε στον κώδικα μας και μας επέτρεψε να γενικεύσουμε τη λειτουργία του κυκλώματος μας είναι η δήλωση #(parameter N=10) μεταξύ της δήλωσης του module και της λίστας των εισόδων και εξόδων του. Η μεταβλητή Ν, της οποίας την τιμή δεν επιτρέπεται να αλλάξουμε, είναι ένας σταθερός ακέραιος αριθμός, με βασική τιμή το 10, και περιγράφει το πλήθος των δυαδικών ψηφίων του αθροιστή. Έτσι μπορούμε να τη χρησιμοποιήσουμε για να θέσουμε τα όρια για όλα τα σήματα εισόδου και εξόδου του adder, για τα εσωτερικά καλώδια του καθώς και για τα όρια της επανάληψης for generate. Έτσι δηλώνοντας τα όρια των σημάτων μας συναρτήσει του Ν και αποφεύγοντας τη χρήση σταθερών ορίων, όπως logic [3:0] μπορούμε να περιγράψουμε αυθαίρετα μικρά ή μεγάλα κυκλώματα τα οποία ακολουθούν πάντα την ίδια δομή. Πως όμως θα χρησιμοποιούσαμε ως υποκύκλωμα την περιγραφή του παραμετροποιημένου adder; Με άλλα λόγια πως μπορώ να αναθέσω μια τιμή στην παράμετρο N του adder ανάλογα με την εφαρμογή που θέλω να τον χρησιμοποιήσω. Ας πάρουμε ως παράδειγμα τη σχεδίαση ενός κυκλώματος πρόσθεση και αφαίρεσης των 32 δυαδικών ψηφίων. Το κύκλωμα αυτό δέχεται ως είσοδο δύο αριθμούς Α και Β. Όταν operation==1 τότε το κύκλωμα τους προσθέτει δίνοντας στην έξοδο S το Α+Β, ενώ όταν οperation==0 τους αφαιρεί δίνοντας στην έξοδο το Α-Β. Για την εκτέλεση της αφαίρεσης η πράξη που εκτελεί είναι η Α + Bb+1. Το κύκλωμα πρόσθεση/αφαίρεσης χτίζεται γύρω το γενικό κύκλωμα αθροιστή (adder) που μόλις περιγράψαμε το οποίο ουσιαστικά εκτελεί την πράξη A + (operation xor Β) + οperation. Όπου το σήμα operation τοποθετείται ως κρατούμενο εισόδου στον αθροιστή adder. module addersubstractor ( input logic [31:0] A, input logic [31:0] B, input logic Ci, inputu logic op, output logic [31:0] sum, output logic Cout); adder #(32) addx (.A(A),.B(B),.S(sum),.Co(Cout),.Ci(Ci),.operation(op)); Για να μπορέσουμε να επαναχρησιμοποιήσουμε τον adder στο νέο κύκλωμα addersubtractor απλά δηλώνουμε τον adder ως ένα υποκύκλωμα με το όνομα addx. Τώρα μαζί με τη λίστα αντιστοίχισης των εισόδων/εξόδων είμαστε υποχρεωμένοι να συμπεριλάβουμε και μία τιμή για την παράμετρο N, #(32),μεταξύ του ονομάτος του module και του ονόματος του instance. Ετσι έμμεσα αναθέτουμε στην εσωτερική παράμετρο Ν του adder την τιμή 32. H αρχική τιμή 10 που δώσαμε στο N μέσα στο κύκλωμα του adder αγνοείται και αντικαθίσταται από τη νέα τιμή 32. Η αρχική τιμή θα έπαιζε ρόλο μόνο αν ξεχνούσαμε να δηλώσουμε μια τιμή στο Ν κατά την αντιστοίχιση των παραμέτρων. 11
Σχεδίαση κυκλωμάτων με VHDL: 1o μέρος
Σχεδίαση κυκλωμάτων με VHDL: 1o μέρος Γ. Δημητρακόπουλος Το πρώτο σας κύκλωμα Τα ψηφιακά κυκλώματα είναι μια συλλογή από λογικές πύλες και ακολουθιακά στοιχεία αποθήκευσης (ή συγχρονισμού) όπως τα flip-flops.
Διαβάστε περισσότεραΛογική Σχεδίαση Ι - Εξεταστική Φεβρουαρίου 2013 Διάρκεια εξέτασης : 160 Ονοματεπώνυμο : Α. Μ. Έτος σπουδών:
Λογική Σχεδίαση Ι - Εξεταστική Φεβρουαρίου 23 Διάρκεια εξέτασης : 6 Ονοματεπώνυμο : Α. Μ. Έτος σπουδών: Θέμα (,5 μονάδες) Στις εισόδους του ακόλουθου κυκλώματος c b a εφαρμόζονται οι κάτωθι κυματομορφές.
Διαβάστε περισσότεραΗ κανονική μορφή της συνάρτησης που υλοποιείται με τον προηγούμενο πίνακα αληθείας σε μορφή ελαχιστόρων είναι η Q = [A].
Κανονική μορφή συνάρτησης λογικής 5. Η κανονική μορφή μιας λογικής συνάρτησης (ΛΣ) ως άθροισμα ελαχιστόρων, από τον πίνακα αληθείας προκύπτει ως εξής: ) Παράγουμε ένα [A] όρων από την κάθε σειρά για την
Διαβάστε περισσότεραΠράξεις με δυαδικούς αριθμούς
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 25-6 Πράξεις με δυαδικούς αριθμούς (αριθμητικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Πράξεις με δυαδικούς
Διαβάστε περισσότερα! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 25-6 Πράξεις με δυαδικούς αριθμούς (αριθμητικές ) http://di.ionio.gr/~mistral/tp/csintro/ Αριθμοί Πράξεις με δυαδικούς αριθμούς
Διαβάστε περισσότεραΠαράδειγμα αντιστοίχισης κυκλώματος σε FPGA
Πανεπιστήμιο Κρήτης Τμήμα Επιστήμης Υπολογιστών Παράδειγμα αντιστοίχισης κυκλώματος σε FPGA Γιώργος Δημητρακόπουλος με τη βοήθεια του Βασίλη Παπαευσταθίου Στο παράδειγμα αυτό χρησιμοποιώντας μια πολύ μικρή
Διαβάστε περισσότεραΕργαστήριο Εισαγωγής στη Σχεδίαση Συστημάτων VLSI
Ε.Μ.Π. - ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗ ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ VLSI
Διαβάστε περισσότεραi Το τρανζίστορ αυτό είναι τύπου NMOS. Υπάρχει και το συμπληρωματικό PMOS. ; Τι συμβαίνει στο τρανζίστορ PMOS; Το τρανζίστορ MOS(FET)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 25-6 Το τρανζίστορ MOS(FET) πύλη (gate) Ψηφιακή και Σχεδίαση πηγή (source) καταβόθρα (drai) (σχεδίαση συνδυαστικών κυκλωμάτων) http://di.ioio.gr/~mistral/tp/comparch/
Διαβάστε περισσότεραΨηφιακή Λογική και Σχεδίαση
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 26-7 Ψηφιακή Λογική και Σχεδίαση (σχεδίαση συνδυαστικών κυκλωμάτων) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης Το τρανζίστορ
Διαβάστε περισσότεραΨηφιακά Συστήματα. 6. Σχεδίαση Συνδυαστικών Κυκλωμάτων
Ψηφιακά Συστήματα 6. Σχεδίαση Συνδυαστικών Κυκλωμάτων Βιβλιογραφία 1. Φανουράκης Κ., Πάτσης Γ., Τσακιρίδης Ο., Θεωρία και Ασκήσεις Ψηφιακών Ηλεκτρονικών, ΜΑΡΙΑ ΠΑΡΙΚΟΥ & ΣΙΑ ΕΠΕ, 2016. [59382199] 2. Floyd
Διαβάστε περισσότεραΕλίνα Μακρή
Ελίνα Μακρή elmak@unipi.gr Μετατροπή Αριθμητικών Συστημάτων Πράξεις στα Αριθμητικά Συστήματα Σχεδίαση Ψηφιακών Κυκλωμάτων με Logism Άλγεβρα Boole Λογικές Πύλες (AND, OR, NOT, NAND, XOR) Flip Flops (D,
Διαβάστε περισσότεραBehavioral & Mixed VHDL Architectures Finite State Machines in VHDL
ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL Διδάσκoντες: Δρ. Αγαθοκλής Παπαδόπουλος και Δρ. Γιώργος Ζάγγουλος Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων
Διαβάστε περισσότεραΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων
ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL Διδάσκων: Γιώργος Ζάγγουλος Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Διαβάστε περισσότεραΠανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Συνδυαστική Λογική. Επιμέλεια Διαφανειών: Δ.
Πανεπιστήμιο Πατρών Τμήμα Φυσικής Ψηφιακά Ηλεκτρονικά Συνδυαστική Λογική Επιμέλεια Διαφανειών: Δ. Μπακάλης Πάτρα, Φεβρουάριος 2009 Ψηφιακά Κυκλώματα Τα ψηφιακά κυκλώματα διακρίνονται σε συνδυαστικά (combinational)
Διαβάστε περισσότεραΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών
ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.3 : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών Στόχοι Μαθήματος: Να γνωρίσετε τις βασικές αρχές αριθμητικής των Η/Υ. Ποια είναι τα κυκλώματα
Διαβάστε περισσότεραBehavioral & Mixed VHDL Architectures Finite State Machines in VHDL
ΗΜΥ211 Εργαστήριο Ψηφιακών Συστημάτων Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL Διδάσκoντες: Δρ. Γιώργος Ζάγγουλοςκαι Δρ. Παναγιώτα Δημοσθένους Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων
Διαβάστε περισσότεραΣυνδυαστικά Κυκλώματα
3 Συνδυαστικά Κυκλώματα 3.1. ΣΥΝΔΥΑΣΤΙΚΗ Λ ΟΓΙΚΗ Συνδυαστικά κυκλώματα ονομάζονται τα ψηφιακά κυκλώματα των οποίων οι τιμές της εξόδου ή των εξόδων τους διαμορφώνονται αποκλειστικά, οποιαδήποτε στιγμή,
Διαβάστε περισσότεραΟλοκληρωμένα Κυκλώματα
Δημοκρίτειο Πανεπιστήμιο Θράκης Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Γ. Δημητρακόπουλος Ολοκληρωμένα Κυκλώματα Πρόοδος - Φθινόπωρο 2017 Θέμα 1 ο Σχεδιάστε το datapath για τον υπολογισμό
Διαβάστε περισσότεραΠράξεις με δυαδικούς αριθμούς
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 25-6 Πράξεις με δυαδικούς αριθμούς (λογικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Εκτέλεση πράξεων
Διαβάστε περισσότεραK15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων
K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Η έννοια του συνδυαστικού
Διαβάστε περισσότεραΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers)
ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers) ΧΑΡΗΣ ΘΕΟΧΑΡΙΔΗΣ Επίκουρος Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy) Περίληψη q Καταχωρητές Παράλληλης
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ. ΜΑΘΗΜΑ 2 ο. ΑΛΓΕΒΡΑ Boole ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ ΜΑΘΗΜΑ 2 ο ΑΛΓΕΒΡΑ Boole ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ 2009-10 ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ 1 Άλγεβρα Βοοle η θεωρητική βάση των λογικών κυκλωμάτων Η άλγεβρα Βοοle ορίζεται επάνω στο σύνολο
Διαβάστε περισσότερα"My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch
"My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch Καραγιάννη Ελένη 1, Καραγιαννάκη Μαρία-Ελένη 2, Βασιλειάδης Αθανάσιος 3, Κωστουλίδης Αναστάσιος-Συμεών 4, Μουτεβελίδης Ιωάννης-Παναγιώτης 5,
Διαβάστε περισσότεραΨηφιακά Κυκλώματα (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική
Ψηφιακά Κυκλώματα ( ο μέρος) ΜΥΥ-6 Εισαγωγή στους Η/Υ και στην Πληροφορική Ψηφιακά κυκλώματα Οι δύο λογικές τιμές, αντιστοιχούν σε ηλεκτρικές τάσεις Υλοποιούνται με τρανζίστορ ή διόδους: ελεγχόμενοι διακόπτες
Διαβάστε περισσότεραΣχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II
Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II 3 η Εργαστηριακή Άσκηση Σχεδίαση και Υλοποίηση μίας ALU δύο εισόδων VHDL Εργαστήριο_2 2012-2013 1 Άδειες Χρήσης Το παρόν υλικό διατίθεται με τους όρους της άδειας
Διαβάστε περισσότερα4.1 Θεωρητική εισαγωγή
ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΥΑ ΙΚΟΣ ΑΘΡΟΙΣΤΗΣ-ΑΦΑΙΡΕΤΗΣ Σκοπός: Να µελετηθούν αριθµητικά κυκλώµατα δυαδικής πρόσθεσης και αφαίρεσης. Να σχεδιαστούν τα κυκλώµατα από τους πίνακες αληθείας
Διαβάστε περισσότεραΠερίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών
ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Κεφάλαιο 7 i: Καταχωρητές Περίληψη Καταχωρητές Παράλληλης Φόρτωσης Καταχωρητές Ολίσθησης Σειριακή Φόρτωση Σειριακή Ολίσθηση Καταχωρητές Ολίσθησης Παράλληλης Φόρτωσης
Διαβάστε περισσότεραΠΛΗ21 Κεφάλαιο 2. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: Παράσταση Προσημασμένων Αριθμών Συμπληρώματα
Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: 2 2.3.4 Παράσταση Προσημασμένων Αριθμών Συμπληρώματα Στόχοι του κεφαλαίου είναι να γνωρίσουμε: Τι είναι ένας Συμπλήρωμα ενός αριθμού πρακτικά Τι είναι Συμπλήρωμα ως
Διαβάστε περισσότεραΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1
ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης Φόρτωσης Καταχωρητές
Διαβάστε περισσότεραΤμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 4 ο Πράξεις με bits. Δρ.
Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Πληροφορική Ι Μάθημα 4 ο Πράξεις με bits Δρ. Γκόγκος Χρήστος Κατηγορίες πράξεων με bits Πράξεις με δυαδικά ψηφία Αριθμητικές πράξεις
Διαβάστε περισσότερα26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ
ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Χειμερινό Εξάμηνο 2009 Καταχωρητές Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Περίληψη Καταχωρητές Παράλληλης
Διαβάστε περισσότεραHY430 Εργαστήριο Ψηφιακών Κυκλωμάτων.
HY430 Εργαστήριο Ψηφιακών Κυκλωμάτων Διδάσκων: Χ. Σωτηρίου, Βοηθός: (θα ανακοινωθεί) http://inf-server.inf.uth.gr/courses/ce430/ 1 Περιεχόμενα Κυκλώματα Πρόσθεσης Half-adder Full-Adder Σειριακό Κρατούμενο
Διαβάστε περισσότερα9. OIΚΟΥΜΕΝΙΚΕΣ ΠΥΛΕΣ ΠΟΛΛΑΠΛΩΝ ΕΙΣΟ ΩΝ
ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 61 9. OIΚΟΥΜΕΝΙΚΕΣ ΠΥΛΕΣ ΠΟΛΛΑΠΛΩΝ ΕΙΣΟ ΩΝ I. Βασική Θεωρία Οι πύλες NAND και NOR ονομάζονται οικουμενικές πύλες (universal gates) γιατί κάθε συνδυαστικό κύκλωμα μπορεί να υλοποιηθεί
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Κ. Δεμέστιχας Εργαστήριο Πληροφορικής Γεωπονικό Πανεπιστήμιο Αθηνών Επικοινωνία μέσω e-mail: cdemest@aua.gr, cdemest@cn.ntua.gr 1 5. ΑΛΓΕΒΡΑ BOOLE ΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΜΕΡΟΣ Β 2 Επαναληπτική
Διαβάστε περισσότεραΘΕΜΑΤΑ & ΕΝΔΕΙΚΤΙΚΕΣ ΛΥΣΕΙΣ
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεματική Ενότητα Ακαδημαϊκό Έτος 2010 2011 Ημερομηνία Εξέτασης Κυριακή 26.6.2011 Ώρα Έναρξης Εξέτασης
Διαβάστε περισσότεραΕνότητα 9 ΑΡΙΘΜΗΤΙΚΑ & ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ
Ενότητα 9 ΑΡΙΘΜΗΤΙΚΑ & ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ Γενικές Γραμμές Προσημασμένοι Ακέραιοι Δυαδικοί Αριθμοί Ημιαθροιστής - Ημιαφαιρέτης Πλήρης Αθροιστής - Πλήρης Αφαιρέτης Αθροιστής Διάδοσης Κρατούμενου Επαναληπτικές
Διαβάστε περισσότεραΠροβλήματα, αλγόριθμοι, ψευδοκώδικας
Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι
Διαβάστε περισσότεραΕισαγωγή στους Ηλεκτρονικούς Υπολογιστές
Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές 12 ο Μάθημα Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ E-mail: leo@mail.ntua.gr URL: http://users.ntua.gr/leo 1 GROUP I A Λ ΤΡΙΤΗ PC-Lab GROUP IΙ Μ Ω ΠΑΡΑΣΚΕΥΗ Central Κέντρο
Διαβάστε περισσότεραΕισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 -
Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL Βασικές εντολές και η περιγραφή συνδυαστικών κυκλωµάτων Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 2 - Περίγραµµα διάλεξης Υποκυκλώµατα Περιγραφή δοµής στη VHDL Βιβλιοθήκες
Διαβάστε περισσότεραΗΜΥ 100 Εισαγωγή στην Τεχνολογία
ΗΜΥ 00 Εισαγωγή στην Τεχνολογία Στέλιος Τιμοθέου ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΑ ΘΕΜΑΤΑ ΜΑΣ ΣΗΜΕΡΑ Δυαδική λογική Πύλες AND, OR, NOT, NAND,
Διαβάστε περισσότεραΚεφάλαιο 8. Αριθμητική Λογική μονάδα
Κεφάλαιο 8 Αριθμητική Λογική μονάδα 8.1 Εισαγωγή Στη μηχανική υπολογιστών η αριθμητική/λογική μονάδα (ALU) είναι ένα ψηφιακό κύκλωμα το οποίο εκτελεί αριθμητικούς και λογικούς υπολογισμούς. Η ALU είναι
Διαβάστε περισσότεραΗλεκτρολόγοι Μηχανικοί ΕΜΠ Λογική Σχεδίαση Ψηφιακών Συστημάτων Διαγώνισμα κανονικής εξέτασης Θέμα 1ο (3 μονάδες)
Ηλεκτρολόγοι Μηχανικοί ΕΜΠ Λογική Σχεδίαση Ψηφιακών Συστημάτων Διαγώνισμα κανονικής εξέτασης 2016 Θέμα 1ο (3 μονάδες) Υλοποιήστε το ακoλουθιακό κύκλωμα που περιγράφεται από το ανωτέρω διάγραμμα καταστάσεων,
Διαβάστε περισσότεραΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ
Θεµατική Ενότητα ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Ακαδηµαϊκό Έτος 2006 2007 Γραπτή Εργασία #2 Ηµεροµηνία Παράδοσης 28-0 - 2007 ΠΛΗ 2: Ψηφιακά Συστήµατα ΠΡΟΤΕΙΝΟΜΕΝΕΣ ΛΥΣΕΙΣ Άσκηση : [5 µονάδες] Έχετε στη
Διαβάστε περισσότερα«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Συντρέχων Κώδικας
«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 216-217 Συντρέχων Κώδικας Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr
Διαβάστε περισσότεραΜία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής
Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής Βασισμένο σε μια εργασία των Καζαρλή, Καλόμοιρου, Μαστοροκώστα, Μπαλουκτσή, Καλαϊτζή, Βαλαή, Πετρίδη Εισαγωγή Η Εξελικτική Υπολογιστική
Διαβάστε περισσότεραΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων
ΗΜΥ-2: Σχεδιασμός Ψηφιακών Συστημάτων Χειμερινό Εξάμηνο 28 Αριθμητικές Συναρτήσεις και Κυκλώματα Διδάσκουσα: Μαρία Κ. Μιχαήλ Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Πρόσθεση
Διαβάστε περισσότεραΕκτέλεση πράξεων. Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική. Πράξεις με δυαδικούς αριθμούς. Πράξεις με δυαδικούς αριθμούς
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 24-5 Πράξεις με δυαδικούς αριθμούς (λογικές πράξεις) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης ; Ποιες κατηγορίες
Διαβάστε περισσότερα«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Ακολουθιακός Κώδικας
«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Ακολουθιακός Κώδικας Παρασκευάς Κίτσος http://diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr
Διαβάστε περισσότεραΑΣΚΗΣΗ 4 ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΩΝ ΛΟΓΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ
ΑΣΚΗΣΗ 4 ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΩΝ ΛΟΓΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ Αντικείμενο της άσκησης: Λογική και μεθοδολογία σχεδίασης αριθμητικών λογικών κυκλωμάτων και λειτουργική εξομοίωση με το λογισμικό EWB.. Αθροιστές. Σχεδίαση
Διαβάστε περισσότεραw x y Υλοποίηση της F(w,x,y,z) με πολυπλέκτη 8-σε-1
Άσκηση 1 Οι λύσεις απαντήσεις που προτείνονται είναι ενδεικτικές και θα πρέπει να προσθέσετε Α) Αρχικά σχεδιάζουμε τον πίνακα αληθείας της λογικής έκφρασης: w x y z x G1 =x y G2 =z w F = G1 G2 Είσοδοι
Διαβάστε περισσότεραΥπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).
Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται
Διαβάστε περισσότεραΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ
ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΨΗΦΙΑΚΑ ΟΛΟΚΛΗΡΩΜΕΝΑ ΗΛΕΚΤΡΟΝΙΚΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ ΟΜΑ Α Α Αριθµητική Λογική Μονάδα των 8-bit 1. Εισαγωγή Γενικά µια αριθµητική λογική µονάδα (ALU, Arithmetic Logic Unit)
Διαβάστε περισσότεραΕισαγωγή στην επιστήμη των υπολογιστών. Πράξεις με μπιτ
Εισαγωγή στην επιστήμη των υπολογιστών Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 Αριθμητικές Πράξεις σε Ακέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση 3 Πρόσθεση στη μορφή συμπληρώματος ως προς δύο
Διαβάστε περισσότεραK24 Ψηφιακά Ηλεκτρονικά 6: Πολυπλέκτες/Αποπολυπλέκτες
K24 Ψηφιακά Ηλεκτρονικά 6: Πολυπλέκτες/Αποπολυπλέκτες TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΧΝΟΛΟΓΙΚΟ Περιεχόμενα 1 2 3 4 Λειτουργία Πολυπλέκτης (Mul plexer) Ο
Διαβάστε περισσότερα8 η Θεµατική Ενότητα : Εισαγωγή στις Γλώσσες Περιγραφής Υλικού: Μοντέλα Συνδυαστικών Κυκλωµάτων
8 η Θεµατική Ενότητα : Εισαγωγή στις Γλώσσες Περιγραφής Υλικού: Μοντέλα Συνδυαστικών Κυκλωµάτων Εισαγωγή Η λογική που περιγράφεται σε ένα module µπορεί να περιγραφεί µε διάφορα στυλ Μοντελοποίηση σε επίπεδο
Διαβάστε περισσότεραΓ2.1 Στοιχεία Αρχιτεκτονικής. Γ Λυκείου Κατεύθυνσης
Γ2.1 Στοιχεία Αρχιτεκτονικής Γ Λυκείου Κατεύθυνσης Ορισμός άλγεβρας Boole Η άλγεβρα Boole ορίζεται, ως μία αλγεβρική δομή A, όπου: (α) Το Α είναι ένα σύνολο στοιχείων που περιέχει δύο τουλάχιστον στοιχεία
Διαβάστε περισσότερα100 ΕΡΩΤΗΣΕΙΣ ΜΕ ΤΙΣ ΑΝΤΙΣΤΟΙΧΕΣ ΑΠΑΝΤΗΣΕΙΣ ΓΙΑ ΤΟ ΜΑΘΗΜΑ ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ
100 ΕΡΩΤΗΣΕΙΣ ΜΕ ΤΙΣ ΑΝΤΙΣΤΟΙΧΕΣ ΑΠΑΝΤΗΣΕΙΣ ΓΙΑ ΤΟ ΜΑΘΗΜΑ ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ 1) Να μετατρέψετε τον δεκαδικό αριθμό (60,25) 10, στον αντίστοιχο δυαδικό 11111,11 111001,01 111100,01 100111,1 111100,01 2)
Διαβάστε περισσότεραΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
ΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΣΥΝΔΥΑΣΤΙΚΗ ΛΟΓΙΚΗ 2017, Δρ. Ηρακλής Σπηλιώτης Συνδυαστικά και ακολουθιακά κυκλώματα Τα λογικά κυκλώματα χωρίζονται σε συνδυαστικά (combinatorial) και ακολουθιακά (sequential).
Διαβάστε περισσότεραΠανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ψηφιακή Σχεδίαση Ενότητα 9: Ελαχιστοποίηση και Κωδικοποίηση Καταστάσεων, Σχεδίαση με D flip-flop, Σχεδίαση με JK flip-flop, Σχεδίαση με T flip-flop Δρ. Μηνάς
Διαβάστε περισσότεραΕισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ
Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 Αριθμητικές Πράξεις σε Ακέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση Ο πολλαπλασιασμός
Διαβάστε περισσότεραΕισαγωγή στην πληροφορική
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 4: Ψηφιακή Λογική, Άλγεβρα Boole, Πίνακες Αλήθειας (Μέρος B) Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών
Διαβάστε περισσότερα9 ο Μαθητικό Συνέδριο Πληροφορικής Κεντρικής Μακεδονίας. "My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch
9 ο Μαθητικό Συνέδριο Πληροφορικής Κεντρικής Μακεδονίας Θεσσαλονίκη, 25-28 Απριλίου 2017, ΝΟΗΣΙΣ "My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής
Διαβάστε περισσότερα«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Τύποι Δεδομένων και Τελεστές
«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο 2016-2017 Τύποι Δεδομένων και Τελεστές Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής Tμήμα Μηχανικών Πληροφορικής ΤΕ E-mail: pkitsos@teimes.gr Αντίρριο
Διαβάστε περισσότεραΟλοκληρωμένα κυκλώματα 1 ο σετ ασκήσεων
Δημοκρίτειο Πανεπιστήμιο Θράκης Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Γ. Δημητρακόπουλος Ολοκληρωμένα κυκλώματα 1 ο σετ ασκήσεων Άσκηση 1 Καλείστε να σχεδιάσετε ένα κύκλωμα το οποίο θα
Διαβάστε περισσότεραΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος...9 ΚΕΦ. 1. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ - ΚΩΔΙΚΕΣ
ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος...9 ΚΕΦ. 1. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ - ΚΩΔΙΚΕΣ 1.1 Εισαγωγή...11 1.2 Τα κύρια αριθμητικά Συστήματα...12 1.3 Μετατροπή αριθμών μεταξύ των αριθμητικών συστημάτων...13 1.3.1 Μετατροπή ακέραιων
Διαβάστε περισσότεραΑΣΚΗΣΗ 8 η -9 η ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΗΣ ΛΟΓΙΚΗΣ ΜΟΝΑΔΑΣ ΤΕΣΣΑΡΩΝ ΔΥΑΔΙΚΩΝ ΨΗΦΙΩΝ
ΑΣΚΗΣΗ 8 η -9 η ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΗΣ ΛΟΓΙΚΗΣ ΜΟΝΑΔΑΣ ΤΕΣΣΑΡΩΝ ΔΥΑΔΙΚΩΝ ΨΗΦΙΩΝ ΘΕΩΡΙΑ Αντικείμενο της άσκησης είναι ο λογικός σχεδιασμός, και η εξομοίωση μίας αριθμητικήςλογικής μονάδας τεσσάρων δυαδικών
Διαβάστε περισσότεραΒΑΣΙΚΕΣ ΑΡΧΕΣ ΨΗΦΙΑΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ. Κεφάλαιο 3
ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΨΗΦΙΑΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Κεφάλαιο 3 Δυαδική λογική Με τον όρο λογική πρόταση ή απλά πρόταση καλούμε κάθε φράση η οποία μπορεί να χαρακτηριστεί αληθής ή ψευδής με βάση το νόημα της. π.χ. Σήμερα
Διαβάστε περισσότεραΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Σχεδίαση Ψηφιακών Συστημάτων. Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ᄃ Σχεδίαση Ψηφιακών Συστημάτων Ενότητα: ΚΑΤΑΧΩΡΗΤΕΣ - ΑΠΑΡΙΘΜΗΤΕΣ Κυριάκης - Μπιτζάρος Ευστάθιος Τμήμα Ηλεκτρονικών Μηχανικών
Διαβάστε περισσότεραΔομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός
Δομές Ακολουθίας- Επιλογής - Επανάληψης Δομημένος Προγραμματισμός 1 Βασικές Έννοιες αλγορίθμων Σταθερές Μεταβλητές Εκφράσεις Πράξεις Εντολές 2 Βασικές Έννοιες Αλγορίθμων Σταθερά: Μια ποσότητα που έχει
Διαβάστε περισσότεραΑσκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο
Πρόβλημα ο Ασκήσεις Φροντιστηρίου 5 o Φροντιστήριο Δίνεται το παρακάτω σύνολο εκπαίδευσης: # Είσοδος Κατηγορία 0 0 0 Α 2 0 0 Α 0 Β 4 0 0 Α 5 0 Β 6 0 0 Α 7 0 Β 8 Β α) Στον παρακάτω κύβο τοποθετείστε τα
Διαβάστε περισσότεραC D C D C D C D A B
Απλοποίηση µέσω Πίνακα Karnaugh: Παράδειγµα - 2 Στον παρακάτω πίνακα έχει ήδη γίνει το «βήμα- 1». Επομένως: Βήμα 2: Δεν υπάρχουν απομονωμένα κελιά. Βήμα 3: Στο ζεύγος (3,7) το κελί 3 γειτνιάζει μόνο με
Διαβάστε περισσότεραΕισαγωγή στη γλώσσα περιγραφής υλικού VHDL. Γενικά χαρακτηριστικά, σύνταξη και τύποι. Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 -
Εισαγωγή στη γλώσσα περιγραφής υλικού VHDL Γενικά χαρακτηριστικά, σύνταξη και τύποι Ψηφιακή Σχεδίαση µε CAD ΙΙ - ιάλεξη 1 - Περίγραµµα διάλεξης Τι είναι η VHDL? Πλεονεκτήµατα της VHDL στη σχεδίαση κυκλωµάτων
Διαβάστε περισσότεραΜάθημα 5: Χαρακτηριστικά της Κ.Μ.Ε.
Μάθημα 5: Χαρακτηριστικά της Κ.Μ.Ε. 5.1 Το ρολόι Κάθε μία από αυτές τις λειτουργίες της Κ.Μ.Ε. διαρκεί ένα μικρό χρονικό διάστημα. Για το συγχρονισμό των λειτουργιών αυτών, είναι απαραίτητο κάποιο ρολόι.
Διαβάστε περισσότεραΠερίληψη. ΗΜΥ 210: Λογικός Σχεδιασµός, Εαρινό Εξάµηνο 2005. υαδική Αφαίρεση. υαδική Αφαίρεση (συν.) Ακόµη ένα παράδειγµα Αφαίρεσης.
ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο 2005 Κεφάλαιο 5 -ii: Αριθµητικές Συναρτήσεις και Κυκλώµατα Πανεπιστήµιο Κύπρου Τµήµα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Αφαίρεση δυαδικών Περίληψη
Διαβάστε περισσότεραΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΕΙΡΙΑΚΗ ΠΡΟΣΘΕΣΗ
ΑΣΠΑΙΤΕ ΤΜΗΜΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΗΛΕΚΤΡΟΛΟΓΙΑΣ & ΗΛΕΚΤΡΟΝΙΚΗΣ ΕΡΓΑΣΤΗΡΙΟ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ & μ-υπολογιστων ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΕΙΡΙΑΚΗ ΠΡΟΣΘΕΣΗ Θεωρητικό Μέρος Οι σειριακές λειτουργίες είναι πιο
Διαβάστε περισσότεραΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΜΙΚΡΟΗΛΕΚΤΡΟΝΙΚΗ - VLSI Ενότητα: Συνδιαστικά κυκλώματα, βασικές στατικές λογικές πύλες, σύνθετες και δυναμικές πύλες Κυριάκης
Διαβάστε περισσότεραΕφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων
Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων 1 Είσοδος/Έξοδος Είσοδος/Έξοδος ανάλογα με τον τύπο του προγράμματος Πρόγραμμα
Διαβάστε περισσότεραΕισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ
Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 ΑριθμητικέςΠράξειςσεΑκέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση Ο πολλαπλασιασμός
Διαβάστε περισσότεραΜοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες.
Γλώσσες Περιγραφής Μοντέλα Ένα µοντέλο ενός κυκλώµατος είναι µία αναπαράσταση που παρουσιάζει χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες. Τα τυπικά µοντέλα έχουν καλά ορισµένη σύνταξη. Τα αυτόµατα
Διαβάστε περισσότεραΟργάνωση της φυσικής δομής του ολοκληρωμένου κυκλώματος
Οργάνωση της φυσικής δομής του ολοκληρωμένου κυκλώματος Γιώργος Δημητρακόπουλος Δημοκρίτειο Πανεπιστήμιο Θράκης Φθινόπωρο 2013 Ψηφιακά ολοκληρωμένα κυκλώματα 1 Οργάνωση του φυσικού σχεδίου Αποφασίζουμε
Διαβάστε περισσότεραΕργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL
Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι Εισαγωγή στη VHDL Εισαγωγή Very High Speed Integrated Circuits Hardware Description Language ιαφορές από γλώσσες προγραμματισμού: παράλληλη εκτέλεση εντολών προσδιορισμός
Διαβάστε περισσότεραΕισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ
Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 Αριθμητικές Πράξεις σε Ακέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση Ο πολλαπλασιασμός
Διαβάστε περισσότεραΑθροιστές. Ημιαθροιστής
Αθροιστές Η πιο βασική αριθμητική πράξη είναι η πρόσθεση. Για την πρόσθεση δύο δυαδικών ψηφίων υπάρχουν τέσσερις δυνατές περιπτώσεις: +=, +=, +=, +=. Οι τρεις πρώτες πράξεις δημιουργούν ένα άθροισμα που
Διαβάστε περισσότεραΟργάνωση Η/Υ. Γιώργος Δημητρίου. Μάθημα 2 ο Σύντομη Επανάληψη. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής
Γιώργος Δημητρίου Μάθημα 2 ο Σύντομη Επανάληψη Από την Εισαγωγή στους Η/Υ Γλώσσες Μηχανής Πεδία εντολής Μέθοδοι διευθυνσιοδότησης Αρχιτεκτονικές συνόλου εντολών Κύκλος εντολής Αλγόριθμοι/Υλικό Αριθμητικών
Διαβάστε περισσότεραΘέμα 1ο (3 μονάδες) Υλοποιήστε το ακoλουθιακό κύκλωμα που περιγράφεται από το κατωτέρω διάγραμμα
Ηλεκτρολόγοι Μηχανικοί ΕΜΠ Λογική Σχεδίαση Ψηφιακών Συστημάτων Διαγώνισμα επαναληπτικής εξέτασης 2016 Θέμα 1ο (3 μονάδες) Υλοποιήστε το ακoλουθιακό κύκλωμα που περιγράφεται από το κατωτέρω διάγραμμα καταστάσεων,
Διαβάστε περισσότεραΔιαδικασιακός Προγραμματισμός
Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 4 η Τελεστές Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης
Διαβάστε περισσότεραΜελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ.
ΤΕΙ ΚΡΗΤΗΣ / ΠΑΡΑΡΤΗΜΑ ΧΑΝΙΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΗΣ Μελέτη και σχεδίαση µιας υποτυπώδους κεντρικής µονάδας επεξεργασίας στα 32 µπιτ mode mode(0) ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Εµµανουήλ Καπαρού Επιβλέπων : ρ Μηχ Νικόλαος
Διαβάστε περισσότεραΠεριεχόμενα. Πρώτο Κεφάλαιο. Εισαγωγή στα Ψηφιακά Συστήματα. Δεύτερο Κεφάλαιο. Αριθμητικά Συστήματα Κώδικες
Πρώτο Κεφάλαιο Εισαγωγή στα Ψηφιακά Συστήματα 1.1 Αναλογικά και Ψηφιακά Σήματα και Συστήματα... 1 1.2 Βασικά Ψηφιακά Κυκλώματα... 3 1.3 Ολοκληρωμένα κυκλώματα... 4 1.4 Τυπωμένα κυκλώματα... 7 1.5 Εργαλεία
Διαβάστε περισσότεραΣυνδυαστικά Λογικά Κυκλώματα
Συνδυαστικά Λογικά Κυκλώματα Ένα συνδυαστικό λογικό κύκλωμα συντίθεται από λογικές πύλες, δέχεται εισόδους και παράγει μία ή περισσότερες εξόδους. Στα συνδυαστικά λογικά κυκλώματα οι έξοδοι σε κάθε χρονική
Διαβάστε περισσότεραΕνότητα 7 ΑΠΟΚΩΔΙΚΟΠΟΙΗΤΕΣ - ΚΩΔΙΚΟΠΟΙΗΤΕΣ ΑΠΟΠΛΕΚΤΕΣ - ΠΟΛΥΠΛΕΚΤΕΣ
Ενότητα 7 ΑΠΟΚΩΔΙΚΟΠΟΙΗΤΕΣ - ΚΩΔΙΚΟΠΟΙΗΤΕΣ ΑΠΟΠΛΕΚΤΕΣ - ΠΟΛΥΠΛΕΚΤΕΣ Γενικές Γραμμές Δυαδικοί Αριθμοί έναντι Δυαδικών Κωδίκων Δυαδικοί Αποκωδικοποιητές Υλοποίηση Συνδυαστικής Λογικής με Δυαδικό Αποκωδικοποιητή
Διαβάστε περισσότεραΆσκηση 3 Ένα νέο είδος flip flop έχει τον ακόλουθο πίνακα αληθείας : I 1 I 0 Q (t+1) Q (t) 1 0 ~Q (t) Κατασκευάστε τον πίνακα
Άσκηση Δίδονται οι ακόλουθες κυματομορφές ρολογιού και εισόδου D που είναι κοινή σε ένα D latch και ένα D flip flop. Το latch είναι θετικά ενεργό, ενώ το ff θετικά ακμοπυροδοτούμενο. Σχεδιάστε τις κυματομορφές
Διαβάστε περισσότεραΑΣΚΗΣΗ 10 ΣΧΕΔΙΑΣΗ ΑΚΟΛΟΥΘΙΑΚΩΝ ΚΥΚΛΩΜΑΤΩΝ
ΑΣΚΗΣΗ ΣΧΕΔΙΑΣΗ ΑΚΟΛΟΥΘΙΑΚΩΝ ΚΥΚΛΩΜΑΤΩΝ.. ΣΚΟΠΟΣ Η σχεδίαση ακολουθιακών κυκλωμάτων..2. ΘΕΩΡΗΤΙΚΟ ΜΕΡΟΣ.2.. ΑΛΓΟΡΙΘΜΟΣ ΣΧΕΔΙΑΣΗΣ ΑΚΟΛΟΥΘΙΑΚΩΝ ΚΥΚΛΩΜΑΤΩΝ Τα ψηφιακά κυκλώματα με μνήμη ονομάζονται ακολουθιακά.
Διαβάστε περισσότεραΑλγόριθμος. Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών βημάτων με σκοπό την επίλυση ενός προβλήματος.
Αλγόριθμος Αλγόριθμο ονομάζουμε τη σαφή και ακριβή περιγραφή μιας σειράς ξεχωριστών οδηγιών βημάτων με σκοπό την επίλυση ενός προβλήματος. Εντολές ή οδηγίες ονομάζονται τα βήματα που αποτελούν έναν αλγόριθμο.
Διαβάστε περισσότερα1 η Θεµατική Ενότητα : Αριθµητικά Κυκλώµατα. Επιµέλεια διαφανειών: Χρ. Καβουσιανός
η Θεµατική Ενότητα : Αριθµητικά Κυκλώµατα Επιµέλεια διαφανειών: Χρ. Καβουσιανός Άθροιση + + + + a +b 2c+s + Κρατούµενο προηγούµενης βαθµίδας κρατούµενο άθροισµα Μεταφέρεται στην επόµενη βαθµίδα σηµαντικότητας
Διαβάστε περισσότεραΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL
8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to
Διαβάστε περισσότεραΕισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Ενότητα 3 Λειτουργίες σε Bits, Αριθμητικά Συστήματα Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Φύση υπολογιστών Η
Διαβάστε περισσότεραΚυκλώµατα µε MSI. υαδικός Αθροιστής & Αφαιρέτης
5 η Θεµατική Ενότητα : Συνδυαστικά Κυκλώµατα µε MSI υαδικός Αθροιστής & Αφαιρέτης A i B i FA S i C i C i+1 D Σειριακός Αθροιστής Σειριακός Αθροιστής: απαιτεί 1 πλήρη αθροιστή, 1 στοιχείο µνήµης και παράγει
Διαβάστε περισσότεραΕργαστήριο Ψηφιακών Συστηµάτων ΗΜΥ211
Εργαστήριο Ψηφιακών Συστηµάτων ΗΜΥ2 Χειµερινό 23 Εργαστήριο Ψηφιακών Συστηµάτων ΗΜΥ2 υαδικός Αθροιστής, Πολυπλέκτες και Αποκωδικοποιητές Εβδοµάδα: 5 Εργαστήριο Ψηφιακών Συστηµάτων ΗΜΥ2 Χειµερινό 23 Στόχοι
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python
ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής
Διαβάστε περισσότεραΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ : Κ. ΠΕΚΜΕΣΤΖΗ
ΠΡΑΞΕΙΣ ΜΕ ΠΡΟΣΗΜΑΣΜΕΝΟΥΣ ΑΡΙΘΜΟΥΣ ΚΥΚΛΩΜΑΤΙΚΕΣ ΕΦΑΡΜΟΓΕΣ ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ & ΠΑΡΑΣΤΑΣΗ ΑΡΙΘΜΩΝ Συμπλήρωμα ως προς 2 Booth, Modified Booth Reduntant αριθμητικά συστήματα Signed Digit αριθμητική Κανονική
Διαβάστε περισσότερα