Κεφάλαιο 04

Απαριθμητές (Counters)

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

01

Τι είναι ο απαριθμητής;

Ο απαριθμητής είναι μια αλυσίδα από Φλιπ-Φλοπ (συνήθως JK ή T) συνδεδεμένα έτσι ώστε σε κάθε παλμό ρολογιού η συνολική τους κατάσταση να αλλάζει με βάση μια συγκεκριμένη ακολουθία αριθμών.

Με n bits (δηλαδή n φλιπ-φλοπ) μπορούμε να μετρήσουμε μέχρι 2n διαφορετικές καταστάσεις:

  • 2 FF → 4 καταστάσεις (0–3)
  • 3 FF → 8 καταστάσεις (0–7)
  • 4 FF → 16 καταστάσεις (0–15)
02

Πέντε Βασικά Χαρακτηριστικά

  1. Κατεύθυνση αρίθμησης: Up, Down, ή Up/Down
  2. Κώδικας αρίθμησης: Δυαδικός (binary) ή BCD (Binary Coded Decimal)
  3. Αριθμός Φλιπ-Φλοπ: Καθορίζει το μέγιστο μέτρο
  4. Μέτρο (modulo): Πόσες διαφορετικές καταστάσεις περνάει πριν επιστρέψει
  5. Χρονισμός: Ασύγχρονος ή Σύγχρονος
03

Κατεύθυνση Αρίθμησης

⬆️

Up Counter

Μετράει αυξητικά: 0 → 1 → 2 → 3 → ...

⬇️

Down Counter

Μετράει μειωτικά: 7 → 6 → 5 → 4 → ...

↕️

Up/Down Counter

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

🎮

Διαδραστικό: Δυαδικός Απαριθμητής

Πάτα το ρολόι!

Δες τα bits να μετράνε

Επίλεξε τον αριθμό bits (FF) και την κατεύθυνση. Πάτα Παλμός Ρολογιού για να προχωρήσεις τον απαριθμητή κατά 1. Παρατήρησε πως κάθε παλμός αλλάζει το LSB (Q₀), ενώ τα ανώτερα bits αλλάζουν λιγότερο συχνά.

3 bits
Δεκαδική
0
Δυαδική
000
Παλμοί
0
Μέγ. μέτρο
8

Κατάσταση Φλιπ-Φλοπ

Χρονικό διάγραμμα

04

Μέτρο (Modulo) Απαριθμητή

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

Για παράδειγμα, ένας mod-5 απαριθμητής με 3 FF μετράει: 0 → 1 → 2 → 3 → 4 → 0 → 1 → 2 → ... Δεν χρησιμοποιεί τις καταστάσεις 5, 6, 7 παρότι έχει 3 FF.

📐 Σχέση μέτρου με Φλιπ-Φλοπ

Για μέτρο N, χρειάζονται n FF όπου 2n-1 < N ≤ 2n. Δηλαδή: για mod-10 χρειάζονται 4 FF (αφού 8 < 10 ≤ 16).

🎮

Διαδραστικό: Mod-N Counter Designer

Επίλεξε μέτρο

Σχεδίασε τον δικό σου mod-N απαριθμητή

Επίλεξε το μέτρο N από 2 μέχρι 16. Δες πόσα FF χρειάζονται, ποιες καταστάσεις χρησιμοποιούνται και ποιες είναι "παράνομες". Πάτα ▶️ Auto για να δεις τη σειρά.

10
Μέτρο
10
FF χρειάζονται
4
Μέγ. μέτρο
16
Αχρ. καταστάσεις
6

Πίνακας Καταστάσεων

05

Ασύγχρονοι vs Σύγχρονοι

ΧαρακτηριστικόΑσύγχρονοςΣύγχρονος
Πηγή ρολογιούΔιαφορετική για κάθε FFΊδια για όλα τα FF
ΚαθυστέρησηΣυσσωρεύεται από FF σε FFΚαμία (όλα ταυτόχρονα)
Μέγιστη συχνότηταΜικρότερηΜεγαλύτερη
ΠολυπλοκότηταΜικρήΜεγαλύτερη
FFJK, T, D ή SRΑυστηρά JK
💡 Πότε ποιον;

Ασύγχρονος: όταν χρειάζεσαι απλότητα και η ταχύτητα δεν είναι κρίσιμη. Σύγχρονος: όταν χρειάζεσαι υψηλή συχνότητα και ακριβή χρονισμό.

06

Απαριθμητής ως Διαιρέτης Συχνότητας

Κάθε FF σε έναν απαριθμητή λειτουργεί ως διαιρέτης συχνότητας ÷2. Άρα ένας n-bit απαριθμητής διαιρεί τη συχνότητα του ρολογιού:

Q₀: fclk / 2
Q₁: fclk / 4
Q₂: fclk / 8
fMSB = fclk / N

Όπου N είναι το μέτρο του απαριθμητή. Για mod-10 BCD απαριθμητή, η συχνότητα του πιο σημαντικού bit είναι fclk/10.

🎮

Διαδραστικό: Διαιρέτης Συχνότητας

Δες τη διαίρεση

Από fclk σε fclk/2, /4, /8...

Ρύθμισε τη συχνότητα του ρολογιού και τον αριθμό bits του απαριθμητή. Δες τη συχνότητα κάθε bit και πώς εμφανίζεται στο χρονικό διάγραμμα.

8000 Hz
4 bits
07

BCD Απαριθμητής (Mod-10)

Ο BCD (Binary-Coded Decimal) απαριθμητής μετράει από 0 έως 9 (10 καταστάσεις). Παρόλο που χρησιμοποιεί 4 FF (που θα μπορούσαν να φτάσουν στο 15), στον 10ο παλμό γίνεται αυτόματο reset μέσω σήματος CLR = Q₁ · Q₃.

🧮 Εφαρμογή

Συναντάς τους BCD απαριθμητές σε ψηφιακά ρολόγια, αριθμομηχανές, και οπουδήποτε θες να εμφανίσεις δεκαδικούς αριθμούς σε 7-segment displays.

08

📄 Διαφάνειες & Σημειώσεις

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