12. Κωδικοποιητές

Ο κωδικοποιητής (Encoder) από m σε n, που γράφουμε mXn, είναι ένα συνδιαστικό κύκλωμα, με m γραμμές εισόδου και n γραμμές εξόδου (m≤2n) που έχει σαν λειτουργία, να παρέχει στην έξοδο ένα n-bit κωδικό, εκείνο που αντιστοιχεί στην ενεργοποιημένη είσοδο του κυκλώματος. Θα πρέπει να σημειωθεί ότι μόνο μια είσοδος επιτρέπεται να είναι ενεργοποιημένη στο λογικό «1»

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

Ο κωδικοποιητής 4Χ2 είναι ένα συνδυαστικό κύκλωμα που έχει τέσσερις (m=4) γραμμές εισόδου και δυο (n=2) γραμές εξόδου (m=2n). Ο κωδικοποιητής 4Χ2 παράγει στην έξοδο του τον δυαδικό κώδικα που αντιστοιχεί στην ενεργοποιημένη είσοδο του.

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

D1 = I1 + I3
D2 = I2 + I3

Το λογικό κύκλωμα του κωδικοποιητή 4Χ2 υλοποιείται μόνο από πύλες OR όπως φαίνεται στη συνέχεια:

Ο κωδικοποιητής 8Χ3 είναι ένα συνδυαστικό κύκλωμα που έχει οκτώ (m=8) γραμμές εισόδου και τρείς (n=3) γραμμές εξόδου (m=2n). Ο κωδικοποιητής 8Χ3 παράγει στην έξοδο του τον δυαδικό κώδικα που αντιστοιχεί στις εισόδους του:

Οι λογικές συναρτήσεις των εξόδων του κωδικοποιητή 8Χ3 είναι οι ακόλουθες:

D1 = I1 + I3 + I5 + I7
D2 = I2 + I3 + I6 + I7
D3 = I4 + I5 + I6 + I7

Οι λογικές συναρτήσεις των εξόδων του κωδικοποιητή 8Χ3 υλοποιούνται μόνο από πύλες OR

Ο κωδικοποιητής προτεραιότητας (Priority Encoder) διαθέτει καθορισμένη προτεραιότητα (priority) στις εισόδους του. Όταν δυο ή περισσότεροι είσοδοι του κωδικοποιητή είναι ενεργοποιημένες ταυτόχρονα σε λογικό «1», τότε η είσοδος με την μεγαλύτερη προτεραιότητα καθορίζει την έξοδο του κωδικοποιητή.

74xx147 κωδικοποιητής προτεραιότητας 10×4

Το ολοκληρωμένο κύκλωμα 74xx147 είναι ένας 9 εισόδων κωδικοποιητής προτεραιότητας, ο οποίος δέχεται δεδομένα από εννέα γραμμές εισόδου (I1 εως I9 ), σε μορφή active Low και παρέχει στην έξοδο D, C, B, A (με το A να είναι LSB), σε active Low, την δυαδική αναπαράσταση της εισόδου.

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

Μηδενική κατάσταση έχουμε όταν όλοι οι είσοδοι είναι HIGH και ο κώδικας στην έξοδο είναι σε τιμή HIGH και στις τέσσερις εξόδους.

74xx148 κωδικοποιητής προτεραιότητας 8×3

Το ολοκληρωμένο κύκλωμα 74xx148 είναι ένας κωδικοποιητής προτεραιότητας 8×3. Επιπρόσθετα περιλαμβάνει μια είσοδο ενεργοποίησης ΕΙ και μια έξοδο ενεργοποίησης ΕΟ. Με αυτές μπορούμε να συνδυάσουμε περισσότερα τέτοια ολοκληρωμένα κυκλώματα, για την ανάπτυξη κυκλωμάτων κωδικοποιητών με περισσότερες εισόδους, χωρίς την ανάπτυξη μεγάλων κυκλωμάτων. Θα πρέπει να σημειωθεί ότι, όλοι οι είσοδοι και έξοδοι λειτουργούν σε κατάσταση active Low.

Ο πίνακας λειτουργίας του κωδικοποιητή 74xx148 είναι ο ακόλουθος:

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

Κωδικοποιητής προτεραιότητας 16 γραμμών εισόδου σε 4 γραμμές εξόδου