Flip Flop

Shared by: HC111211033216
Categories
Tags
-
Stats
views:
34
posted:
12/10/2011
language:
Hebrew
pages:
31
Document Sample
scope of work template
							         ‫‪Flip Flop‬‬
 ‫יהודה אפק, נתן אינטרטור‬
   ‫אוניברסיטת תל אביב‬

       ‫מבוסס על הרצאות של‬
‫יורם זינגר, האוניברסיטה העברית י"ם‬
           ‫מערכות זיכרון – ‪Sequential Logic‬‬

‫‪Input‬‬             ‫‪Combinatorial‬‬                                ‫‪Output‬‬
‫כניסות‬               ‫‪Circuit‬‬                                   ‫יציאות‬
                   ‫מעגל צירופי‬               ‫‪Storage/Mem‬‬
                                              ‫יחידה זיכרון‬



  ‫• עד כה טיפלנו במערכות צירופיות שהינן חסרות "זיכרון" או מצב. ‪ ‬שינוי‬
           ‫בערכי הכניסה גורר שינוי "מיידי" (לאחר השהייה) בערכי היציאה.‬
     ‫• כל מחשב וכן בקרים מתוכנתים )‪ (Controllers‬מכילים זיכרון המשמש‬
                                       ‫לשמירת נתונים ולביצוע תוכניות.‬
     ‫• פרט למבנים כמו ‪ SDRAM,ROM‬וזיכרון בועות )‪,(Bubble memory‬‬
         ‫"הזיכרון" מושג ע"י שימוש במשוב )‪ (feedback‬של יחידות לוגיות.‬
        ‫‪Synchronous Sequential Circuits‬‬
‫"יציב" פעולת המערכת מתבצעת ב"פיקודו" של שעון וערכי המערכת נקבעים‬
   ‫מערכי הכניסה בנקודות זמן מסוימות שהינן תלויות שעון ‪ ‬מצב‬
                                         ‫המערכת תלוי בשעון.‬

       ‫‪Asynchronous Sequential Circuits‬‬
‫"מהיר" פעולות המערכת תלויות בסדר של שינוי הכניסות, מצב המערכת יכול‬
                                            ‫להשתנות בכל רגע.‬

         ‫‪Combinatorial‬‬
         ‫‪Circuit‬‬
                          ‫‪Clock‬‬        ‫‪Memory‬‬
                          ‫‪Pulses‬‬
‫זיכרון‬



   ‫1‬          ‫‪Q‬‬
         ‫10‬



         ‫01‬
   ‫2‬          ‫’‪Q‬‬
                    ‫זיכרון‬

    ‫קלט‬   ‫1‬   ‫פלט‬   ‫=‬
                    ‫=‬
                          ‫0‬
                        ‫קלט‬   ‫1‬    ‫פלט‬



‫‪R‬‬         ‫0‬
                        ‫1‬          ‫‪Q‬‬
                              ‫10‬



                              ‫01‬
‫‪S‬‬
    ‫0‬                   ‫2‬          ‫’‪Q‬‬
                LAT C H
    Reset O                      1
R                             1
                    0   1         Q


                          0
                                  0
    Set 1              2 0       Q’
S
                SR–Latch
              LAT C H
    Reset 1
R                               0   0
                        1           Q
                            0



                  0             1   1
S   Set 0             0 2           Q’

              SR–Latch
                 ‫‪LAT C H‬‬                  ‫מקודם‬

‫‪R‬‬
     ‫0 ‪Reset‬‬                          ‫)1(‬         ‫1‬
                           ‫1 )0(‬                  ‫‪Q‬‬



                        ‫)1(‬         ‫)0(‬           ‫0‬
‫‪S‬‬    ‫0 ‪Set‬‬                     ‫2‬                  ‫’‪Q‬‬
                                       ‫מקודם‬
                ‫‪SR–Latch‬‬
                                   ‫• נניח שניתנה פקודת ‪Set‬‬
‫‪ S=1, R=0 ‬ועתה אנו "מורידים" את הכניסות )0=‪.(S=0, R‬‬
            ‫• ערכי היציאה ‪" Q’, Q‬זוכרים" את פקודת ה-‪.Set‬‬
                          ‫• באותו אופן יזכרו את ה - ‪.Reset‬‬
                   ‫‪LAT C H‬‬
       ‫‪Reset‬‬               ‫1‬                      ‫0‬
   ‫‪R‬‬                                       ‫0‬
                                 ‫1‬                ‫‪Q‬‬



                                       ‫0‬          ‫0‬
   ‫‪S‬‬   ‫‪Set‬‬                 ‫1‬     ‫2‬                ‫’‪Q‬‬

                  ‫‪SR–Latch‬‬
                                                 ‫• 1=‪R=1, S‬‬
‫• כאשר הערכים יורדים ל – "0" )0=‪ (S=0, R‬הערך של ‪ Q‬ו ’‪ Q‬תלוי‬
            ‫‪RACE Condition ‬‬           ‫באיזה קו ישתנה ראשון‬

                                 ‫• המצב הבא נקרא לא מוגדר.‬
                     ‫דיאגרמת זמנים:‬
                                                 ‫"1"‬
      ‫‪Q‬‬                                          ‫"0"‬
                                                 ‫"1"‬
      ‫‪S‬‬                                          ‫"0"‬
                                                 ‫"1"‬
      ‫‪R‬‬                                          ‫"0"‬

                                 ‫טבלת אמת – מצבים:‬
            ‫‪S‬‬    ‫‪R‬‬     ‫‪Q‬‬   ‫’‪Q‬‬
            ‫0‬    ‫1‬     ‫0‬   ‫1‬
                                  ‫‪Reset State‬‬
            ‫0‬    ‫0‬     ‫0‬   ‫1‬
            ‫1‬    ‫0‬     ‫1‬   ‫0‬
            ‫0‬    ‫0‬     ‫1‬   ‫0‬
                                  ‫‪Set State‬‬
            ‫1‬    ‫1‬     ‫0‬   ‫0‬       ‫(מצב אסור) ‪Undefined‬‬
                          ‫• ‪ Latch‬איננו פונקציה בוליאנית.‬
      ‫• ערכי היציאה תלויים בפעולת ‪ Set‬או ‪ Reset‬האחרונה.‬
‫• עבור כניסות )0,0( ערך היציאה נשמר קבוע כל זמן שיש מתח.‬
     SR Latch with NAND
 R1                            0
                                   Q

      0                        1
 S                                 Q’
  S       R   Q’   Q
  0       1   1    0
                           Set State
  1       1   1    0
  1       0   0    1
  1       1   0    1
                           Reset State
  0       0   1    1       Undefined
                       1
Set Command            0

                       1
Reset Command          0
     SR Latch with NAND
 R1                            0
                                   Q

      0                        1
 S                                 Q’
  S       R   Q’   Q
  0       1   1    0
                           Set State
  1       1   1    0
  1       0   0    1
  1       1   0    1
                           Reset State
  0       0   1    1       Undefined
                       1
Set Command            0

                       1
Reset Command          0
                     :‫ מבוקר שעון‬SR Latch
                         R            0
           R                                      Q
                                          1
Clock Pulse CP   1
                 0

           S              S                       Q’
                                      0
   S
   R
 CP

   Q                      C   S   R   Next Q
                          0         No change
                          1   1   0   Q=1
                          1   0   1   Q=0
                          1   1   1   Undef
                          1   0   0   No change
                ‫‪D (data) Latch‬‬
    ‫1‬                                           ‫1‬
‫‪D‬‬                               ‫0‬           ‫1‬
                                    ‫0‬           ‫‪Q‬‬
          ‫1 ‪CP‬‬
                                ‫1‬
            ‫0‬               ‫1‬                   ‫’‪Q‬‬
                                            ‫0‬   ‫'‪D‬‬
                 ‫‪C‬‬   ‫‪D‬‬    ‫‪Next State of Q‬‬
                 ‫0‬   ‫‪‬‬    ‫‪No change‬‬
                 ‫1‬   ‫0‬    ‫)‪Q = 0 (Reset‬‬
                 ‫1‬   ‫1‬    ‫)‪Q = 1 (Set‬‬

    ‫• ‪ Latch D‬הינו יחידה שאוגרת / "זוכרת" ביט יחיד.‬
                           ‫• נמנעים ממצב לא מוגדר.‬
          ‫• אבן בניין בסיסית של אוגרים )‪.(Registers‬‬
               ‫‪ D Latch‬אינו מספיק !!‬


‫‪Input‬‬         ‫‪Combinatorial‬‬                      ‫‪Output‬‬
‫כניסות‬           ‫‪Circuit‬‬                         ‫יציאות‬
               ‫מעגל צירופי‬  ‫‪D‬‬                      ‫‪Q‬‬
                                 ‫‪C‬‬
                                 ‫‪P‬‬                 ‫‪Q‬‬
                                                   ‫’‬


     ‫מחזור שעון ארוך והמעגל יחליף את מצבו מספר פעמים !!!‬
                   ‫‪Flip - Flops‬‬
‫• הזמן שלוקח עד שהמוצא של ‪ Latch‬מתייצב יכול ליצור בעיות‬
                          ‫כאשר מחברים שתי יחידות זיכרון.‬
‫• המוצא אינו צריך להיות תלוי בתזמון וצריך להימנע "ממצבים‬
                                           ‫מתהפכים" )‪.(JK‬‬
     ‫• פתרון צריך לדאוג שהמוצא יהיה יציב לפרק זמן מובטח.‬

                         ‫‪ Flip-Flop‬פתרון מבוסס על ‪:Latch‬‬
    ‫• שימוש בשני ‪ Latch‬בצורה שתבטיח שהפלט יהיה מבודד‬
                                 ‫מהכניסות המשתנות:‬
                             ‫‪Master-Slave Flip-Flop‬‬
            Master – Slave Flip - Flop
                         M                   S
                                  Y
S                S           Q          S        Q              Q

                     C            Y’     C
R                R           Q’         R        Q’             Q’


C




‫) אינו פעיל והינו זוכר את היציאות של‬slave( S ‫( פעיל‬master) M ‫• כאשר‬
                                           .‫ היה סביל‬M – ‫ מהשלב ש‬M
C
S

Y
Q
         !‫אין השפעה‬
                 ‫‪Master – Slave Flip - Flop‬‬
‫1‬
                               ‫‪M‬‬            ‫נשאר 1‬       ‫‪S‬‬
                                        ‫‪Y‬‬
    ‫‪S‬‬                                                             ‫1‪0‬‬   ‫‪Q‬‬
                       ‫‪S‬‬           ‫‪Q‬‬                 ‫‪S‬‬       ‫‪Q‬‬
                           ‫‪C‬‬            ‫’‪Y‬‬           ‫‪C‬‬
    ‫‪R‬‬                  ‫‪R‬‬           ‫’‪Q‬‬                ‫‪R‬‬       ‫’‪Q‬‬         ‫’‪Q‬‬


    ‫‪C‬‬
                                                     ‫נעשה פעיל‬
‫0‬       ‫0‪1‬‬                                  ‫1‪0‬‬

    ‫• כאשר ‪ M‬פעיל ‪ S‬אינו פעיל והינו זוכר את היציאות של ‪ M‬מהשלב ש – ‪M‬‬
                                                            ‫היה סביל.‬
    ‫‪C‬‬
    ‫‪S‬‬

    ‫‪Y‬‬
    ‫‪Q‬‬
              ‫אין השפעה!‬
         !! ‫ מספיק‬Master/Slave Flip Flop

Input         Combinatorial
‫כניסות‬           Circuit         M                S
                            S            Y                Q
                                S    Q        S       Q
               ‫ מעגל צירופי‬R     C       Y’   C
                                R    Q        R       Q
                            C        ’                ’
             ‫‪JK Latch‬‬
                        ‫•"עידון" של ‪:SR Latch‬‬
 ‫‪K‬‬       ‫1‬                   ‫3‬                  ‫‪Q‬‬
‫‪CP‬‬
 ‫‪J‬‬       ‫2‬                   ‫4‬                  ‫’‪Q‬‬


                ‫• כאשר 0=‪ CP‬אין שינוי מצב כמקודם.‬
                          ‫• כאשר 1 = ‪: K = 0 , J‬‬
     ‫א) המשוב מ – ‪ Q‬לתוך שער 1 לא משפיע היות ו – 0=‪.K‬‬
             ‫ב) כניסות לשער 3 הינם 0,0 ‪.Q’=0  Q=1 ‬‬
                  ‫• כאשר 0=‪ K=1, J‬נקבל 0=‪.Q’=1 Q‬‬
                               ‫• כאשר 1=‪? K=1, J‬‬
                                                     ‫‪Q=0 K=0 J=1 a‬‬
                     ‫‪JK Latch‬‬
                                ‫•"עידון" של ‪:SR Latch‬‬
     ‫0‬              ‫0‬    ‫(חדש)‬                     ‫("חדש") 1‬
 ‫‪K‬‬             ‫1‬      ‫0 ‪1‬‬     ‫3‬                           ‫‪Q‬‬
     ‫1‬             ‫(ישן)‬
‫‪CP‬‬           ‫1‬                                     ‫("חדש") 0‬
 ‫‪J‬‬             ‫1 2‬        ‫1‬    ‫4‬                           ‫’‪Q‬‬
         ‫1‬                                       ‫(ישן) 1‬

                        ‫• כאשר 0=‪ CP‬אין שינוי מצב כמקודם.‬
                                  ‫• כאשר 1 = ‪: K = 0 , J‬‬
             ‫א) המשוב מ – ‪ Q‬לתוך שער 1 לא משפיע היות ו – 0=‪.K‬‬
                     ‫ב) כניסות לשער 3 הינם 0,0 ‪.Q’=0  Q=1 ‬‬
                          ‫• כאשר 0=‪ K=1, J‬נקבל 0=‪.Q’=1 Q‬‬
                                       ‫• כאשר 1=‪? K=1, J‬‬
                                                         ‫‪Q=0 K=1 J=0 b‬‬
   ‫המצב‬                 ‫‪JK Latch‬‬
   ‫"נשמר"‬
‫או ‪Reset‬‬                            ‫•"עידון" של ‪:SR Latch‬‬
                                                 ‫("ישן") 0‬
            ‫1‬           ‫0‬       ‫0‬                                  ‫0‬
    ‫‪K‬‬               ‫1‬                   ‫3‬
                                ‫1‬                  ‫‪( Q‬ישן) 0‬
   ‫‪CP‬‬                           ‫0‬                                  ‫1‬
                                                    ‫(ישן)1‬
    ‫‪J‬‬               ‫0 2‬         ‫0‬       ‫4‬                    ‫’‪Q‬‬
            ‫0‬                                      ‫(ישן) 1‬

                            ‫• כאשר 0=‪ CP‬אין שינוי מצב כמקודם.‬
                                      ‫• כאשר 1 = ‪: K = 0 , J‬‬
                ‫א) המשוב מ – ‪ Q‬לתוך שער 1 לא משפיע היות ו – 0=‪.K‬‬
                        ‫ב) כניסות לשער 3 הינם 0,0 ‪.Q’=0  Q=1 ‬‬
                             ‫• כאשר 0=‪ K=1, J‬נקבל 0=‪.Q’=1 Q‬‬
                                          ‫• כאשר 1=‪? K=1, J‬‬
                                                  ‫1=‪K=1 J‬‬   ‫‪c‬‬
               ‫‪JK Latch‬‬
                           ‫•"עידון" של ‪:SR Latch‬‬
                           ‫1‬                 ‫0‬
 ‫‪K‬‬         ‫1‬                   ‫3‬                    ‫0 ‪Q‬‬
‫‪CP‬‬                                                  ‫)1(‬
                           ‫0‬
 ‫‪J‬‬         ‫2‬           ‫0‬       ‫4‬              ‫1‬     ‫1 ’‪Q‬‬
                                            ‫)0(‬
                  ‫• כאשר 0=‪ CP‬אין שינוי מצב כמקודם.‬
                            ‫• כאשר 1 = ‪: K = 0 , J‬‬
       ‫א) המשוב מ – ‪ Q‬לתוך שער 1 לא משפיע היות ו – 0=‪.K‬‬
               ‫ב) כניסות לשער 3 הינם 0,0 ‪.Q’=0  Q=1 ‬‬
                    ‫• כאשר 0=‪ K=1, J‬נקבל 0=‪.Q’=1 Q‬‬
                                    ‫• כאשר 1=‪? K=1, J‬‬
                                       ‫מצב ‪ Q‬מתהפך.‬
     ‫אם ‪ 1=J=K=C‬לאורך זמן מצב ‪ Q‬יתהפך עוד ועוד.‬
                             ‫‪ ‬מעברים חוזרים ונשנים.‬
               ‫טבלת אמת עבור ‪:JK‬‬
                ‫)‪Q(t‬‬   ‫‪J‬‬   ‫‪K‬‬   ‫)1+‪Q(t‬‬
                 ‫0‬     ‫0‬   ‫0‬     ‫0‬
                 ‫0‬     ‫0‬   ‫1‬     ‫0‬
                 ‫0‬     ‫1‬   ‫0‬     ‫1‬
                 ‫0‬     ‫1‬   ‫1‬     ‫1‬
                 ‫1‬     ‫0‬   ‫0‬     ‫1‬
                 ‫1‬     ‫0‬   ‫1‬     ‫0‬
                 ‫1‬     ‫1‬   ‫0‬     ‫1‬
                 ‫1‬     ‫1‬   ‫1‬     ‫0‬
                  ‫דיאגרמת זמנים:‬
‫‪J‬‬
‫‪K‬‬
‫‪CP‬‬

‫‪Q‬‬
     ‫‪ Q‬יתהפך בין 0 ל –1 הלוך ושוב כל זמן ש – 1=‪cp‬‬
          ‫‪T (trigger) Latch‬‬
 ‫• מתקבל ע"י חיבור ‪ J,K‬ב ‪ JK-Latch‬למקור אחד:‬
           ‫0 = ‪ T = 0  J = K‬אין שינוי במצב‬
               ‫1 = ‪ T = 1  J = K‬היפוך מצב‬
‫היפוך זה יחיד אם משך הזמן בו 1 = ‪ T‬הינו "קצר"‬

    ‫‪Qt‬‬   ‫‪T‬‬   ‫1+‪Qt‬‬          ‫‪Qt‬‬   ‫‪D‬‬   ‫1+‪Qt‬‬
    ‫0‬    ‫0‬    ‫0‬            ‫0‬    ‫0‬    ‫0‬
    ‫0‬    ‫1‬    ‫1‬            ‫0‬    ‫1‬    ‫1‬
    ‫1‬    ‫0‬    ‫1‬            ‫1‬    ‫0‬    ‫0‬
    ‫1‬    ‫1‬    ‫0‬            ‫1‬    ‫1‬    ‫1‬
                         ‫:‪JK Flip-Flop‬‬
           ‫01‬
                     ‫‪Master‬‬                    ‫‪Slave‬‬
                ‫01‬                ‫1‪Y‬‬                     ‫0‪‬‬   ‫1‬
‫1 ‪J‬‬                  ‫‪S‬‬
                        ‫‪SR‬‬
                             ‫‪Q‬‬                ‫‪D‬‬
                                                 ‫‪D‬‬
                                                     ‫‪Q‬‬             ‫)0( ‪Q‬‬
  ‫1‬                  ‫‪C‬‬
                       ‫‪Latch‬‬      ‫0‪Y‬‬           ‫‪Latch‬‬
‫‪K‬‬               ‫0‬    ‫‪R‬‬                        ‫‪C‬‬      ‫’‪Q‬‬            ‫)1( ’‪Q‬‬
                ‫1‬                                              ‫0‬
      ‫0‬
‫‪C‬‬
           ‫1‪0‬‬                     ‫0‪1‬‬

                                 ‫• כאשר 1 = ‪ J = K‬היציאה ‪ Q‬הינה קבועה.‬

                     ‫• עם עליית השעון ה ‪ Master‬יהפוך מצב (‪ Y‬התהפך).‬

‫• ‪ Q‬ישאר קבוע כל זמן שהשעון הינו "1" ו – ‪ Y‬ישאר קבוע לאחר עליית‬
                                                         ‫השעון.‬

          ‫• עם ירידת השעון הערך של ‪ Y‬יוכנס ל – ‪ D Latch‬ו – ‪ Q‬ישתנה.‬
     T (trigger) Flip-Flop
        Master Y        Slave
       S SR Q          D D Q        Q
T      C Latch           Latch
       R               C       Q’   Q’



    Q(t) T=1 Q’(t+1)
         T=0
    Q(t)     Q(t)
    D (data) Flip-Flop
        Master Y        Slave
D      D
          D
                       D
                            D
                                    Q
                           Latch
       C Latch         C



    Q(t+1)  D(t)
                      :‫טבלאות המצבים‬

               t          t+1
              Q(t)        Q(t)
          ‫שינוי‬   ‫שינוי‬
           ‫של‬      ‫של‬
          ‫קלט‬      ‫פלט‬

        JKFF                            SRFF
J   K Q(t+1)                     S   R Q(t+1)
0   0  Q(t) No Change            0   0  Q(t) No Change
0   1   0    Reset               0   1   0    Reset
1   0   1    Set                 1   0   1    Set
1   1 Q’(t) Complement           1   1   ?    Undef.

         DFF                              TFF
     D Q(t+1)                         T Q(t+1)
     0   0    Reset                   0  Q(t) No Change
     1   1    Set                     1 Q’(t) Complement
           ‫דלגלגים מדורבני קצה:‬
         ‫‪Edge Triggered Flip-Flops‬‬
     ‫•שינוי המצב מתבצע עם שינוי השעון ומתייצב אח"כ.‬

                                ‫דופק ושעון חיובי‬

        ‫קצה חיובי‬   ‫קצה שלילי‬


                                ‫דופק ושעון שלילי‬

        ‫קצה שלילי‬   ‫קצה חיובי‬

                                    ‫‪Ts-Setup Time‬‬
‫‪CP‬‬

‫‪D Ts‬‬                 ‫‪Tn‬‬             ‫‪Th-Holdup Time‬‬
       ‫יציב ‪Ts+Tn‬‬
                           ‫כניסות ישירות:‬
                            ‫‪Direct Inputs‬‬
  ‫• כאשר המתח במעגל ספרתי "עולה" המצב של ‪ Flip Flops‬איננו מוגדר לכן‬
                                                      ‫יש לבצע אתחול.‬
‫• אתחול מבוצע ע"י כניסות ישירות אשר קובעות ישירות את המצב )‪.(Preset‬‬

       ‫‪preset / clear‬‬
          ‫‪J‬‬      ‫‪Q‬‬
  ‫‪CP‬‬
          ‫‪K‬‬     ‫’‪Q‬‬

                        ‫‪PreSet‬‬   ‫‪CP‬‬   ‫‪J‬‬   ‫‪K‬‬     ‫‪Q‬‬     ‫’‪Q‬‬
                          ‫0‬      ‫‪‬‬    ‫‪‬‬   ‫‪‬‬     ‫0‬      ‫1‬
                          ‫1‬      ‫‪‬‬    ‫0‬   ‫0‬   ‫‪no change‬‬
                          ‫1‬      ‫‪‬‬    ‫0‬   ‫1‬     ‫0‬      ‫1‬
                          ‫1‬      ‫‪‬‬    ‫1‬   ‫0‬     ‫1‬      ‫0‬
                          ‫1‬      ‫‪‬‬    ‫1‬   ‫1‬   ‫‪flip state‬‬
                     :‫תזמון‬
                              MSJFF            :‫דוגמא‬
         MSJFF
              YA                   YB
        J      Q             J       Q          Out
         CP   A Q’            CP
                              K
                                   B Q’     Out(t)
         K
                                   D(t-2)
                                            2JKFF

 
CP
YA
QA
YB
QB

						
Related docs
Other docs by HC111211033216
Umbrella Certification
Views: 1  |  Downloads: 0
Lista de Pilotos
Views: 14  |  Downloads: 0
INTERNATIONAL CONFERENCE
Views: 0  |  Downloads: 0
Situational Theory Types of Publics
Views: 105  |  Downloads: 0
INTRODUCCION
Views: 46  |  Downloads: 0
VACUUM SYSTEM FOR CLASSROOM EXPERIMENTS
Views: 3  |  Downloads: 0
Slide sem t�tulo
Views: 4  |  Downloads: 0