12. ΚΑΤΑΧΩΡΗΤΕΣ e-book ΛΟΓΙΚΗ ΣΧΕ ΙΑΣΗ ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ- ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 1
ΚΑΤΑΧΩΡΗΤΕΣ Ο ΚΑΤΑΧΩΡΗΤΗΣ ΩΣ ΣΤΟΙΧΕΙΟ ΜΝΗΜΗΣ ΕΙ Η ΚΑΤΑΧΩΡΗΤΩΝ ΣΤΑΤΙΚΟΣ ΚΑΤΑΧΩΡΗΤΗΣ ΚΑΤΑΧΩΡΗΤΗΣ ΟΛΙΣΘΗΣΗΣ ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ-ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 2
Ο ΚΑΤΑΧΩΡΗΤΗΣ ΩΣ ΣΤΟΙΧΕΙΟ ΜΝΗΜΗΣ Ένας καταχωρητής (register) είναι ένα κύκλωµα που χρησιµοποιείται για την αποθήκευση πληροφοριών. Ένα flip-flop µπορεί να αποθηκεύσει ένα (1) bit πληροφορίας. Εποµένως, αν χρησιµοποιηθούν n flip-flops µπορούν να αποθηκευτούν n-bit λέξεις. Ένας καταχωρητής των n bit µπορεί να αποθηκεύσει n bit πληροφορία και κατασκευάζεται από µία οµάδα από n flip-flops και πύλες για τον έλεγχο της µεταφοράς πληροφορίας από και προς τον καταχωρητή. ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ-ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 3
ΕΙ Η ΚΑΤΑΧΩΡΗΤΩΝ Yπάρχουν δύο βασικά είδη καταχωρητών: - ο στατικός καταχωρητής, ο οποίος αποτελείται από ανεξάρτητα flip-flops στα οποία µπορεί να αποθηκευτεί µία πληροφορία και να λαµβάνεται όποτε χρειαστεί - ο καταχωρητής ολίσθησης (shift register), το περιεχόµενο του οποίου ολισθαίνει (µετακινείται) κατά µία θέση σε κάθε εφαρµογή του παλµού ρολογιού ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ-ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 4
ΣΤΑΤΙΚΟΣ ΚΑΤΑΧΩΡΗΤΗΣ ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ-ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 5
ΦΟΡΤΩΣΗ Η είσοδος ελέχγου «φόρτωση» επιτρέπει ή απαγορεύει στους παλµούς του ρολογιού να περάσουν στα flip-flops του καταχωρητή. Ανηείσοδοςφόρτωσηςείναι 0,τότεηέξοδοςτηςπύλης ANDείναι 0 και ανεξάρτητα από το αν υπάρχουν παλµοί στην είσοδο ρολογιού, τα flip-flops δεν θα δέχονται παλµούς, µε αποτέλεσµα τα δεδοµένα του καταχωρητή να µην αλλάζουν. Αν η είσοδος φόρτωσης είναι 1, τότε τα flip-flops θα ταυτόχρονα παλµούς ρολογιού ταυτόχρονα (η είσοδος ρολογιού είναι κοινή για τα flip- flops), µε αποτέλεσµα τα δεδοµένα που βρίσκονται στις εισόδους D0, D1, D2και D3 (το DOείναιτο LSBκαιτο D3είναιτο MSB)να µεταφέρονται στα 4 flip-flops του καταχωρητή ταυτόχρονα. Οι τέσσερις έξοδοι Q1, Q2, Q3 και Q4 των flip-flops αποτελούν τις εξόδους του καταχωρητή. Η µεταφορά της πληροφορίας από τις εισόδους στις εξόδους του καταχωρητή ονοµάζεται φόρτωση (loading). Με αυτόν τον τρόπο φορτώνονται νέα δεδοµένα στον καταχωρητή. Για παράδειγµα, αν οι είσοδοι των flip-flops είναι D3=1, D2=0, D1=1 και D0=1, τότε οι έξοδοι των flip-flops γίνονται Q3=1, Q2=0, Q1=1 και Q0=1, µε αποτέλεσµα στον καταχωρητή να αποθηκευθεί η πληροφορία ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ-ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 1011. 6
ΚΑΤΑΧΩΡΗΤΗΣ ΟΛΙΣΘΗΣΗΣ Ο καταχωρητής ολίσθησης (shift register) είναι ένας καταχωρητής, όπου η έξοδος του κάθε flip-flop τροφοδοτεί την είσοδο του γειτονικού του. Έτσι, τα δεδοµένα του καταχωρητή ολισθαίνουν από κάθε flipflop στο γειτονικό του µε κάθε παλµό ρολογιού. Ανάλογα µε την κατεύθυνση ολίσθησης, ο καταχωρητής ονοµάζεται καταχωρητής δεξιάς ολίσθησης αν ολισθαίνει τα δεδοµένα προς τα δεξιά ή καταχωρητής αριστερής ολίσθησης αν ολισθαίνει τα δεδοµένα προς τα αριστερά. Αν η έξοδος του τελευταίου flip-flop είναι συνδεδεµένη στην είσοδο του πρώτου, τότε ο καταχωρητής ονοµάζεται καταχωρητής κυκλικής ολίσθησης. Σε έναν καταχωρητή ολίσθησης είναι δυνατό να ολισθήσουµε το περιεχόµενο είτε προς τα δεξιά είτε προς τα αριστερά, οπότε ο καταχωρητής ονοµάζεται αµφίδροµος καταχωρητής ολίσθησης. ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ-ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 7
ΚΑΤΗΓΟΡΙΕΣ ΚΑΤΑΧΩΡΗΤΩΝ ΟΛΙΣΘΗΣΗΣ Ανάλογα µε τον τρόπο τοποθέτησης των δεδοµένων εισόδου και τον τρόπο εξόδου των περιεχοµένων ενός καταχωρητή ολίσθησης µπορούµε να τους κατατάξουµε σε τέσσερις κατηγορίες: - Σειριακής εισόδου- σειριακής εξόδου (serial-in, serial-out: SISO) - Σειριακής εισόδου-παράλληλης εξόδου (serial-in, parallel-out: SIPO) - Παράλληλης εισόδου- εξόδου (parallel-in, serial-out: PISO) - Παράλληλης εισόδου- παράλληλης εξόδου (parallel-in, parallel-out: PIPO) ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ-ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 8