1 / 22

ΗΥ 120

ΗΥ 120. Αλγοριθμικες μηχανες καταστασεως Algorithmic State Machines – ASM 2 nd part. Υλοποιηση του Ελεγκτη με Πολυπλεκτες Ενα δευτερο παραδειγμα. Παραδειγμα #2. Υλοποιηση του Ελεγκτη με Πολυπλεκτες Ενα δευτερο παραδειγμα. Θεματα χρονισμου. Δινεται το πιο κατω διαγραμμα ASM. Εισοδος.

holli
Download Presentation

ΗΥ 120

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ΗΥ 120 Αλγοριθμικες μηχανες καταστασεως Algorithmic State Machines – ASM 2nd part

  2. Υλοποιηση του Ελεγκτη με Πολυπλεκτες Ενα δευτερο παραδειγμα Παραδειγμα #2

  3. Υλοποιηση του Ελεγκτη με Πολυπλεκτες Ενα δευτερο παραδειγμα

  4. Θεματα χρονισμου • Δινεται το πιο κατω διαγραμμα ASM Εισοδος IDLE AVAIL Exit Start 0 1 A←0 1 0 Q0 Exit Exit MUL0 MUL1

  5. Παραδειγμα Σχεδιασης:Πολλαπλασιαστης Δυαδικων • Πολλαπλασιαστης θετικων δυαδικων αριθμων • Παραδειγμα πολλαπλασιασμου «με το χερι» 23 10111 Πολλαπλασιαστεος 19 10011 Πολλαπλασιαστης 10111 10111 00000 00000 10111 437 110110101 Γινομενο

  6. Εναλλακτικος τροπος πολ/σμου 23 10111 Πολλαπλασιαστεος 19 10011 Πολλαπλασιαστης 000 00000 Αρχικο μερικο γινομενο 207 10111 Προσθεση πολλαπλασιαστεου επειδη το 1ο bit του πολ/στη ειναι 1 207 10111 Μερικο γινομενο μετα την προσθεση και πριν την ολισθηση 0207 010111 Μερικο γινομενο μετα την ολισθηση 23 10111 Προσθεση πολ/στεου επειδη το 2ο bit του πολ/στη ειναι 1 437 1000101 Μερικο γινομενο μετα την προσθεση και πριν την ολισθηση 1000101 Μερικο γινομενο μετα την ολισθηση 01000101 Μερικο γινομενο μετα την ολισθηση επειδη το 3ο bit του πολ/στη ειναι 0 001000101 Μερικο γινομενο μετα την ολισθηση επειδη το 4ο bit του πολ/στη ειναι 0 10111 Προσθεση πολλαπλασιαστεου επειδη το 5ο bit του πολ/στη ειναι 1 110110101 Μερικο γινομενο μετα την προσθεση και πριν την ολισθηση 0437 0110110101 Μερικο γινομενο μετα την τελικη ολισθηση Εδω εχουμε ενδιαμεση και προσωρινη υπερχειλιση

  7. Χονδρικο διαγραμμα του Πολ/στη n-bit Πολ/στεος Πολ/στης Σηματα ελεγχου log2n  = o μικροτερος ακεραιος αριθμος που υπερβαινει τον log2n

  8. Χονδρικο διαγραμμα του Πολ/στη n-bit Πολ/στεος 10111 10011 00000 10111 10111 010111 10111 1000101 1000101 01000101 001000101 10111 110110101 0110110101 + + Πολ/στης + Σηματα ελεγχου

  9. Εξαρτηματα του πολ/στη • Καταχωρητης Β n-bit για αποθηκευση του πολ/στεου • Καταχωρητης ολισθησης Qn-bits για αποθηκευση του πολ/στη και του λιγότερο σημαντικου μερους του γινομενου • Καταχωρητης ολισθησης Α n-bits για αποθηκευση των μερικων γινομενων και του περισσοτερο σημαντικου μερους του γινομενου • Flip-flop C με συγχρονο clear για προσωρινη αποθηκευση κρατουμενου (υπερχειλισης) • Μετρητη P των log2n -bits o οποιος μετρα προς τα κατω απο το n-1 εως το 0, για να σταματησει την λειτουργια του πολ/στη. Πρεπει να εχει παραλληλη φορτωση. • Μοναδα ελεγχου η οποια εχοντας ως εισοδους το σημα εναρξης GO, το σημα μηδενισμου Z του καταχωρητη Ρ (περας διαδικασιας) και την τιμη του τρεχοντος bit του πολ/στη Q0διδει τα καταλληλα σηματα ελεγχου για φορτωση των παραγοντων και του αριθμου των bits, για προσθεση, για ολισθηση και για μηδενισμο του flip-flop C.

  10. IDLE 0 1 G C← 0, A← 0 P ← n-1 MUL0 Q0 1 0 A ← A+B C ← Cout MUL1 C← 0, C║A║Q ← sr C║A║Q, P ← P-1 0 1 Z Διαγραμμα ASM του πολ/στη 10111 10011 00000 10111 10111 010111 10111 1000101 1000101 01000101 001000101 10111 110110101 0110110101 Οι καταχωρητες Β και Q φορτωνονται πριν την εναρξη λειτουργιας του πολ/στη C║A║Q = καταχωρητης που προκυπτει απο τον συνδυασμο των καταχωρητων C, A και Q sr R = shift right του R

  11. Σηματα ελεγχου του δυαδικου Πολ/στη

  12. IDLE 0 1 G C← 0, A← 0 P ← n-1 MUL0 Q0 1 0 A ← A+B C ← Cout MUL1 C← 0, C║A║Q ← sr C║A║Q, P ← P-1 0 1 Z Σηματα ελεγχου του δυαδικου πολ/στη

  13. IDLE 00 G=1 MUL0 01 Z=1 Z=0 MUL1 10 Εξαγωγη διαγραμματος καταστασεων απο το διαγραμμα ASM G=0 00 IDLE Κωδικοποιηση καταστασεων M1M0 IDLE = 0 0 MUL0 = 0 1 MUL1 = 1 0 1 0 G 01 MUL0 10 MUL1 1 0 Z Ισοδυναμο διαγραμμα καταστασεων Διαδοχη καταστασεων στο διαγραμμα ASM

  14. IDLE 00 Παρουσα Επομενη Εξοδοι κατασταση Εισοδοι κατασταση ελεγκτη Ονομα Μ1 Μ0G Z M1 M0 IDLE MUL0 MUL1 0 0 0 X 0 0 1 0 0 IDLE 0 0 1 X 0 1 1 0 0 MUL0 0 1 X X 1 0 0 1 0 1 0 X 0 0 1 0 0 1 MUL1 1 0 X 1 0 0 0 0 1 --- 1 1 X X X X X X X G=1 MUL0 01 Z=1 Z=0 MUL1 10 Πινακας καταστασεων του υποσυστηματος ελεγχου Απο τον πινακα καταστασεων μπορουμε να σχεδιασουμε το κυκλωμα του ελεγκτη χρησιμοποιωντας JK flip-flops (οποτε πρεπει να συμπληρωθει ο πιο πανω πινακας με τις στηλες των εισοδων των flip-flops, και να βρεθουν με την βοηθεια χαρτων Karnaugh οι εξισωσεις εισοδων των flip-flop,κ.ο.κ.) ή Dflip-flops και αποκωδικοποιητη οποτε γραφουμε κατευθειαν τις εξισωσεις εισοδων τους: DM0 = M0(t+1) = IDLE•G + MUL1•Z , και DM1 = M1(t+1) = MUL0

  15. Υλοποιηση με D flip-flops και decoder DM0 = IDLE•G + MUL1•Z , και DM1 = MUL0

  16. Entry Κατασταση Entry D Q > Clock Κουτι καταστασης Exit Exit Entry 2 x Entry 0 1 Κουτι αποφασης x Exit 0 Exit 1 Entry 1 Entry 1 Entry 2 Entry 2 Exit 0 Exit 1 Entry Exit Exit 0 1 x x Entry Κουτι υπο-συνθηκη Exit 0 Exit 1 Control Exit 1 Διαγραμμα ASM Ισοδυναμα κυκλωματα 1 3 Συμβολη 4

  17. IDLE 0 1 G C← 0, A← 0 P ← n-1 MUL0 Q0 1 0 A ← A+B C ← Cout MUL1 C← 0, C║A║Q ← sr C║A║Q, P ← P-1 0 1 Z Υλοποιηση του ελεγκτη με ενα D flip-flop ανα κατασταση

  18. D Q > IDLE IDLE 00 Z Initialize G Load Q0 G G=1 D Q > MUL0 Initialize MUL0 01 Z=1 Clear_C Z=0 D Q > MUL1 MUL1 10 Shift_dec Clock Υλοποιηση του ελεγκτη με ενα D flip-flop ανα κατασταση:Εναλλακτικος τροπος DIDLE = IDLE G' + MUL1 Z G=0 DMUL0 = IDLE G + MUL1 Z' DMUL1 = MUL0

  19. D Q > IDLE Z Initialize G Load Q0 G D Q > MUL0 Initialize Clear_C D Q > MUL1 Shift_dec Clock Συγκριση κυκλωματων ελεγκτη

More Related