1 / 25

תכן לוגי

תכן לוגי. תרגול 1 - ClkSkew. אפיונים דינמיים של F . F. ה- 7474 הוא D-FF מסוג Edge triggered משפע מעליית שעון (כלומר ברגע שהשעון עולה בלבד) - היציאה Q מקבלת את ערך הכניסה D במעבר השעון מ- '0' ל-'1'. נגדיר מספר מושגים חשובים:.

nodin
Download Presentation

תכן לוגי

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. תכן לוגי תרגול 1 - ClkSkew

  2. אפיונים דינמיים של F.F • ה- 7474 הוא D-FF מסוג Edge triggered משפע מעליית שעון (כלומר ברגע שהשעון עולה בלבד) - היציאה Q מקבלת את ערך הכניסה Dבמעבר השעון מ- '0' ל-'1'.

  3. נגדיר מספר מושגים חשובים: • מעבר אקטיבי של השעון – מעבר בהחלפת השעון הגורר שינוי ביציאה. • tw(H), tw(L) - רוחב פולסי השעון. tw(H)+tw(L)=T זמן המחזור. • tsetup - משך הזמן שיש להחזיק את הכניסות קבועות לפני המעבר האקטיבי של השעון על מנת שהיציאות יהיו נכונות. • thold - משך הזמן שיש להחזיק את הכניסות קבועות אחרי המעבר האקטיבי של השעון על מנת שהיציאות יהיו נכונות. • tpdLH - זמן ההשהיה ממעבר השעון האקטיבי עד שהיציאה משתנה מ- '0' ל- '1'. • tpdHL - זמן ההשהיה ממעבר השעון האקטיבי עד שהיציאה משתנה מ- '1' ל- '0'. • לרכיב יש שתי כניסות הפועלות ללא תלות בשעון (כניסות אסינכרוניות): 0=Sd←1=Q, 0=Rd← 0=Q

  4. נגדיר מספר מושגים חשובים: • כדי שישמרו תנאי setupו- hold נדרש: T1>Tsetup,T2>Thold

  5. Fmax • תדר השעון המקסימלי המותר כך שהמערכת תתפקד נכון. • ניתן לפרק מערכת סינכרונית ל- 2 חלקים: • זיכרון (המכיל את משתני המצב) • לוגיקה צירופית • מעבר אקטיבי של השעון גורם לזיכרון לשנות מצב, שינוי המצב "עובר" דרך הלוגיקה וחוזר לכניסות הזיכרון (ככניסות למצב הבא). מכאן שיש זמן מינימלי שיש לחכות בין 2 מעברים אקטיביים עוקבים.

  6. חישוב Fmax • מחשבים מהו Tmin - זמן המחזור המינימלי כך שהמערכת תתפקד נכון, Tmin=1/Fmax • ל- Tmin שלושה חלקים: • זמן ההשהיה של הזיכרון מהמעבר האקטיבי עד להתיצבות יציאותיו - Tcp→out (למשל ב- 7474 Tcp→out=max{tpdHL,tpdLH} ). • זמן ההתפשטות של המצב החדש דרך הלוגיקה עד לכניסות הזיכרון tpdcl. • זמן ה- set-up של הזיכרון. • כלומר מתחילים ממצב התחלתי נתון, כעת מתקבל מעבר אקטיבי של השעון, ושואלים מתי ניתן לתת את המעבר האקטיבי הבא. על מנת למצוא את Tmin יש לבצע את התהליך הנ"ל לכל המצבים של המערכת. למזלנו, בד"כ ניתן לראות מהם המצבים ההתחלתיים שיתנו Tmin גדול, ולבדוק רק אותם.

  7. דוגמה לחישוב Fmax • 747: • 7408 • חישוב: Tsetup=20ns, Thold=5ns TpdLH=25ns, TpdHL=40ns TpdLH (set,reset→out)=25ns, TpdHL= (set,reset→out)= 40ns TpdLH=27ns, TpdHL=19ns Tmin=max{tpHL7474+tpHL7408,tpLH7474+tpLH7408}+tsetup7474 Tmin=max{59,52}+20=79ns Fmax=1/Tmin=12.66MHz

  8. X Y Z B C A Q0 D0 Q1 FF0 D1 FF1 CLKA CLKB Clock Skew • המשטר הדינמי מחייב הזנת שעון יחיד בו זמנית לכל הרכיבים המתוזמנים במעגל. • במקרים רבים נתקלים בקושי של מגבלות פיזיקליות, והשעון מגיע בהפרשי זמן מסוימים לחלקים שונים במעגל. הפרש הזמן המכסימלי נקרא "עוות השעון" (clock skew).

  9. רכיב זיכרון - FF לעומת רכיב צרופי tPD tPD Q tCD tCD

  10. תנאי Setup ו-Hold • תנאי Setup – יש לוודא כי המרחק בין עליות השעון מספיק ארוך • תנאי Hold – תלוי בנתונים של רכיבי המעגל. אם לא מתקיים עלינו לשנות את מבנה המעגל.

  11. B C A Q1 D1 FF1 CLKB Without CLK skew – Setup Conditions X Y Z Q0 D0 FF0 Set Y=1,Z=1 X:0↑1 CLKA A/B Clk tCD(FF0) Q0 tPD(FF0) tPD(C) tSETUP(FF1) tCD(FF1) tSETUP(FF0) Q1 tPD(A+B) tPD(FF1) FF0->FF1 FF1->FF0

  12. B C A Q0 D0 FF0 Q1 D1 FF1 Without CLK skew – Setup Conditions => תנאי setup נבדוק על ה"מסלול הארוך" ביותר במערכת. Tmin>Tpd(FF)+max {Tpd(CL)} + Tsetup

  13. B C A Q0 D0 FF0 Q1 D1 FF1 דוגמא מספרית – זמן מחזור

  14. B C A Q1 D1 FF1 CLKB Without CLK skew – Hold Conditions (FF0->FF1) X Y Z Q0 D0 FF0 Set Y=1,Z=1 X:0↑1 CLKA A/B Clk tCD(FF0) Q0 tHOLD(FF1) tCD(C) tCD(FF1) Q1 tHOLD(FF1) tCD(A)+tCD(B) FF0->FF1 FF1->FF0

  15. B C A Q0 D0 FF0 Q1 D1 FF1 Without CLK skew – Hold Conditions => תנאי Hold נבדוק על ה"מסלול הקצר" ביותר במערכת. Thold<Tcd(FF)+min {Tcd(CL)}

  16. B C A Q0 D0 FF0 Q1 D1 FF1 דוגמא מספרית – תנאי Hold

  17. X Y Z B A C Q0 D0 Q1 FF0 D1 FF1 CLKA CLKB B tCD(FF0) tskew Clk Q0 tCD(FF1) tHOLD(FF1) tPD(FF1) With CLK skew – Hold Conditions (FF0->FF1) Set Y=1,Z=1 X:0↑1 Delay A tCD(C) Q1

  18. X Y Z B C A Q0 D0 Q1 FF0 D1 FF1 CLKA CLKB Clk B A tCD(FF1) Clk Q1 tCD(A+B) With CLK skew – Hold Conditions (FF1->FF0) Set Y=1,Z=1 X:0↑1 Delay tskew Q0 tHOLD(FF0)

  19. With CLK skew – Hold Conditions מה יקרה אם tskew שלילי? • נניח כי ב-t=0, t=T, … עולה שעון A. • בהתאמה ב- t=tskew, t=T+tskew, … עולה שעון B. • מתוך התנאי הראשון, תנאי Hold עלולים לא להתקיים אם tskew גדול מדי: • מתוך התנאי השני, בהנחה שהמערכת עובדת ללא skew, הרי שהיא תעבוד גם עכשיו.

  20. X Y Z B C A Q0 D0 Q1 FF0 D1 FF1 CLKA CLKB B tskew With CLK skew – Setup Conditions (FF0->FF1) Set Y=1,Z=1 X:0↑1 Delay Tmin A Clk tPD(FF0) Q0 tPD(C) Q1 tSetup(FF1)

  21. X Y Z B C A Q0 D0 Q1 FF0 D1 FF1 CLKA CLKB B With CLK skew – Setup Conditions (FF1->FF0) Set Y=1,Z=1 X:0↑1 Delay Tmin Clk A tskew Clk tPD(FF1) Q1 tPD(A+B) Q0 tSetup(FF0)

  22. With CLK skew – Setup Conditions • נניח כי ב-t=0, t=T, … עולה שעון A. • בהתאמה ב- t=tskew, t=T+tskew, … עולה שעון B. • האם Tmin יגדל או יקטן? • מה יקרה אם tskew שלילי?

  23. B C A Q0 D0 FF0 Q1 D1 FF1 דוגמא מספרית: מה הערך המכסימלי והמינימאלי של tskew?

  24. דוגמא מספרית: • מה ההשפעה על זמן המחזור המינימאלי האפשרי? • קודם כל נחשב את זמן המחזור ללא skew . • נבחר את הערכים הקיצוניים האפשריים של tskew ונבדוק את ההשפעה שלהם (על פי הנוסחאות בע"מ 8).

  25. מסקנה: • בחירה נכונה של Skew יכולה לעיתים לשפר את ביצועי המערכת. תזכורת: • ערכי skew שליליים פירושו שהשעון מגיע מהכיוון ההפוך ביחס לכיוון הראשוני שיחסנו לו (במקרה שלפנינו skew שלילי הוא כאשר השעון מגיע מימין במקום משמאל).

More Related