220 likes | 435 Views
מערכות זיכרון – Sequential Logic. יציאות. כניסות. מעגל צירופי. זיכרון. עד כה טיפלנו במערכות צירופיות שהנן חסרות זיכרון . כל מחשב מכיל זיכרון המשמש לשמירת נתונים ולביצוע תוכניות. הזיכרון שנתייחס אליו בקורס הנוכחי מושג ע"י שימוש במשוב (feedback) של יחידות לוגיות.
E N D
מערכות זיכרון – Sequential Logic יציאות כניסות מעגל צירופי זיכרון • עד כה טיפלנו במערכות צירופיות שהנן חסרות זיכרון. • כל מחשב מכיל זיכרון המשמש לשמירת נתונים ולביצוע תוכניות. • הזיכרון שנתייחס אליו בקורס הנוכחי מושג ע"י שימוש במשוב (feedback) של יחידות לוגיות. • מעגל עם משוב איננו מעגל צירופי, כי מעגל צירופי הוא גרף חסר מעגלים.
Synchronous Sequential Circuits פעולת המערכת מתבצעת ב"פיקודו" של שעון. אנו דוגמים את מצב המערכת רק ברגעי זמן דיסקרטיים, המוגדרים ע"י השעון. Asynchronous Sequential Circuits פעולות המערכת תלויות רק בסדר של שינוי הכניסות. ניתן לדגום את מצב המערכת בכל רגע נתון. יציב מהיר בקורס הנוכחי נדון כמעט אך ורק במערכות סינכרוניות. Combinatorial Circuit Memory Clock Pulses
L A T C H Reset O 1 R 1 Q 1 0 0 0 0 1 2 Q’ Set S S R – L a t c h
L A T C H Reset 1 0 0 R Q 1 0 1 1 0 2 Q’ 0 0 Set S S R – L a t c h
L A T C H הערך הקודם Reset 0 1 (1) R (0) Q 1 0 (0) (1) 0 2 Q’ Set S הערך הקודם S R – L a t c h • נניח שניתנה פקודת Set , ז"א S=1, R=0 ועתה אנו מאפסים את הכניסות (S=0, R=0). • ערכי היציאה Q’, Q "זוכרים" את פקודת ה-Set. • מן הסימטריה ברור שבאותו אופן יזכרו את ה - Reset.
L A T C H Reset 1 0 R 0 Q 1 0 0 1 2 Q’ Set S S R – L a t c h • כאשר S=R=1, נקבל Q=Q’=0. • אם כעת מאפסים את הכניסות (S=0, R=0), הערך של Q ו Q’ תלוי באיזה קו ישתנה ראשון RACE Condition . • המצב הזה, מבחינתנו, הוא איננו חוקי.
דיאגרמת זמנים: 1 Q 0 1 S 0 1 R 0 טבלת המצבים: Reset State Set State Illegal • Latch איננו פונקציה בוליאנית, כי ערכי היציאה תלויים בפעולת Set או Reset האחרונה. • עבור כניסות (0,0) ערך היציאה נשמר קבוע כל זמן שיש מתח.
R Q Q’ S SR Latch with NAND Reset State Set State Illegal
R Q CP Q’ S SR Latch מבוקר שעון Clock Pulse S R CP Q
D Q CP Q’ D (data) Latch
1 1 D 0 1 Q 0 1 CP 1 1 Q’ 0 0 0 C D Next State of Q 0 No change 1 0 Q = 0 (Reset) 1 1 Q = 1 (Set) D (data) Latch • D-Latch הנה יחידה שאוגרת ביט יחיד. • זוהי אבן הבניין הבסיסית של אוגרים (Registers).
K 1 Q 3 CP Q’ 4 2 J JK Latch • זהו שכלול של SR Latch. • הרכיב פעיל אך ורק כאשר 1CP=, ואז: • כאשר K=0 , J=1 , המעגל יתייצב על Q=1,Q’=0. • כאשר K=1, J=0, נקבל Q’=1, Q=0. • מה קורה כאשר K=1, J=1 ?
1 0 0 K 1 Q 3 (1) CP 0 0 Q’ 4 2 J 1 1 (0) מצב Q מתהפך. אם לאורך זמן CP=J=K=1 , מצב Q יתהפך שוב ושוב. JK Latch מה קורה כאשר K=1, J=1 ?
טבלת אמת עבור JK-Latch דיאגרמת זמנים: J K CP Q אם J=K=1 אז Q יתהפך בין 0 ל –1 הלוך ושוב כל זמן ש – cp=1
T (trigger)-Latch • מתקבל ע"י חיבור J,K ב JK-Latch למקור אחד: • T = 0 - אין שינוי במצב • T = 1 - היפוך מצב • היפוך מצב זה הנו יחיד אם משך הזמן בו T = 1 קצר מספיק.
(דלגלגים)Flip - Flops • המוצא של רכיב זכרון אינו צריך להיות תלוי בתזמון, וצריך • להיות יציב לפרק זמןמובטח. • Flip-Flop הוא פתרון המבוסס על Latch. זהו רכיב זכרון • של ביט יחיד. • Master-Slave Flip-Flop ו- Edge-Triggered Flip-Flop • הם שני פתרונות שימושיים. • Master-Slave Flip-Flopהוא פתרון המבוסס עלשימוש בשני Latch, בצורה שמבטיחה שהפלט יהיה מבודד מהכניסות.
M S Y S Q S Q S Q C C ג ב ר ת ע ב ד Y’ R Q’ R Q’ R Q’ C Master – Slave SRFlip - Flop • כאשר M פעיל S סביל, וההפך. C S Y Q אין השפעה!
Master Slave Y Q Q J S Q D D Latch SR Latch C K Q’ Q’ R C C JK Flip-Flop
Master Slave Y Q S Q D Q D Latch SR Latch T C Q’ Q’ R C Master Slave Y Q D D D D Latch D Latch C C T (trigger) Flip-Flop D (data) Flip-Flop
טבלאות המצבים t t+1 שינוי של קלט שינוי של פלט JKFF SRFF DFF TFF
Edge Triggered Flip-Flops • שינוי המצב מתבצע ברגע שינוי השעון. : clock pulse Positive edge Negative edge Ts-Setup Time CP Ts Th Th-Holdup Time D יציב Ts+Th
כניסות ישירות(Direct Inputs) • כאשר מפעילים את המחשב, המצב Q(t=0), של ה- Flip Flops , איננו מוגדר. • לכן יש לבצע אתחול (כי Q(t+1) הוא פונ' של Q(t)). • אתחול מבוצע ע"י כניסות ישירות אשר קובעות ישירות את המצב (Preset). preset / clear J Q CP K Q’