תכן לוגי
תרגול ClkSkew - 1
1
אפיונים דינמיים של F .F
• ה 7474 -הוא D-FFמסוג Edge triggeredמושפע מעליית שעון
(כלומר ברגע שהשעון עולה בלבד) -היציאה Qמקבלת את ערך
הכניסה Dבמעבר השעון מ '0' -ל.'1'-
2
נגדיר מספר מושגים חשובים:
•
•
•
•
•
•
•
מעבר אקטיבי של השעון – מעבר בהחלפת השעון הגורר שינוי
ביציאה.
) - tw(L) ,tw(Hרוחב פולסי השעון T=tw(L)+tw(H) .זמן המחזור.
- tsetupמשך הזמן שיש להחזיק את הכניסות קבועות לפני המעבר
האקטיבי של השעון על מנת שהיציאות יהיו נכונות.
- tholdמשך הזמן שיש להחזיק את הכניסות קבועות אחרי המעבר
האקטיבי של השעון על מנת שהיציאות יהיו נכונות.
-tpdזמן ההשהיה ממעבר השעון האקטיבי עד שהיציאה משתנה.
- tcdהזמן לאחר מעבר השעון האקטיבי בו עדיין מובטח כי היציאה
לא השתנתה.
לרכיב יש שתי כניסות הפועלות ללא תלות בשעון (כניסות
אסינכרוניות)Q=0 ← Rd=0 ,Q=1← Sd=0 :
3
נגדיר מספר מושגים חשובים:
• כדי שישמרו תנאי setupו hold -נדרש:
T2>Thold
T1>Tsetup,
4
Fmax
תדר השעון המקסימלי המותר כך שהמערכת תתפקד נכון.
ניתן לפרק מערכת סינכרונית ל 2 -חלקים:
•
•
–
–
–
פליפ-פלופים (המכילים את משתני המצב)
לוגיקה צירופית
מעבר אקטיבי של השעון גורם לזיכרון לשנות מצב ,שינוי המצב "עובר"
דרך הלוגיקה וחוזר לכניסות הפליפ-פלופים (ככניסות למצב הבא) .מכאן
שיש זמן מינימלי שיש לחכות בין 2מעברים אקטיביים עוקבים.
5
חישוב Fmax
•
•
•
מחשבים מהו - Tminזמן המחזור המינימלי כך שהמערכת
תתפקד נכוןTmin=1/Fmax ,
ל Tmin -שלושה חלקים:
זמן ההשהיה של הזיכרון מהמעבר האקטיבי עד להתיצבות יציאותיו -
–
( Tc→outלמשל ב.) Tc→out=max{tpdHL,tpdLH} 7474 -
זמן ההתפשטות של המצב החדש דרך הלוגיקה עד לכניסות הזיכרון .tpdcl
–
זמן ה set-up -של הזיכרון.
–
כלומר מתחילים ממצב התחלתי נתון ,כעת מתקבל מעבר אקטיבי של השעון,
ושואלים מתי ניתן לתת את המעבר האקטיבי הבא .על מנת למצוא את Tmin
יש לבצע את התהליך הנ"ל לכל המצבים של המערכת .למזלנו ,בד"כ ניתן
לראות מהם המצבים ההתחלתיים שיתנו Tminגדול ,ולבדוק רק אותם.
6
Fmax דוגמה לחישוב
IN1
D1
Q1
7474
OUT
7408
IN2
D2
Q2
D3
Q3
7474
:7474 •
7474
CLK1
Tsetup=20ns, Thold=5ns
TpCQ= 40ns
Tpd=19ns
Tmin=tpd7474+tpd7408 +tsetup7474
Tmin=40+19+20=79ns
Fmax=1/Tmin=12.66MHz
7
7408 •
:• חישוב
תנאי SetupוHold-
תנאי – Setup
יש לוודא כי המרחק בין עליות השעון מספיק ארוך
אם לא מתקיים:
.1
.2
.3
להאריך את זמן מחזור השעון (להקטין תדר)
להקטין השהייה לוגית על ידי הסרת חלק מהפונקציות
להקטין השהייה לוגית על ידי שימוש ברכיבים מהירים יותר
תנאי – Hold
תלוי בנתונים של רכיבי המעגל .אם לא מתקיים עלינו
לשנות את מבנה המעגל להוסיף השהיות.
8
Without CLK skew – Setup Conditions
X
B
A
Q0
D0
Y
FF0
CLKA
Q1
D1
C
Set Y=0,Z=1
FF1
X:0↑1
CLKB
Z
Clk A/B
tCD(FF0)
Q0
tPD(FF0)
tPD(C)
tSETUP(FF1)
tCD(FF1)
Q1
tPD(FF1)
9
FF0->FF1
tSETUP(FF0)
tPD(A+B)
FF1->FF0
Without CLK skew – Setup
Conditions
B
FF 0 FF1: Tmin Tpd ( FF 0) Tpd (C ) Tsetup ( FF1)
FF1 FF 0 : Tmin Tpd ( FF1) Tpd ( A) Tpd ( B ) Tsetup ( FF 0)
A
D
QC
0
0
FF0
D
Q
1
1
FF1
Tmin TFF 0 FF 1 , TFF 1 FF 0
. נבדוק על ה"מסלול הארוך" ביותר במערכתsetup => תנאי
Tmin>Tpd(FF)+max {Tpd(CL)} + Tsetup
10
דוגמא מספרית – זמן מחזור
TCD
TPD
nand
2
22
nor
2
20
FF
5
40
TSETUP
THOLD
FF 0 FF1: Tmin 40 22 20
FF1 FF 0 : Tmin 40 22 20 20
20
5
Tmin 102
FF 0 FF1: Tmin Tpd ( FF 0) Tpd (nand ) Tsetup ( FF1)
FF1 FF 0 : Tmin Tpd ( FF1) Tpd (nand ) Tpd (nor ) Tsetup ( FF 0)
Tmin TFF 0 FF 1 , TFF 1 FF 0
B
11
A
D
QC
0
0
FF0
D
Q
1
1
FF1
Without CLK skew – Hold Conditions (FF0->FF1)
X
B
A
Q0
D0
Y
C
Set Y=0,Z=1
FF0
CLKA
Q1
D1
FF1
X:0↑1
CLKB
Z
Clk A/B
tCD(FF0)
Q0
tCD(C)
Q1
12
tHOLD(FF1)
FF0->FF1
tHOLD(FF0)
tCD(FF1)
tCD(A)+tCD(B)
FF1->FF0
Without CLK skew – Hold
Conditions
FF 0 FF1: THold ( FF1) Tcd ( FF 0) Tcd (C )
FF1 FF 0 : THold ( FF 0) Tcd ( FF1) Tcd ( A) Tcd ( B )
B
A
D
QC
0
0
FF0
D
Q
1
1
FF1
THold min{Tcd ( FF 0) Tcd (C ), Tcd ( FF1) Tcd ( A) Tcd ( B)}
. נבדוק על ה"מסלול הקצר" ביותר במערכתHold => תנאי
Thold<Tcd(FF)+min {Tcd(CL)}
13
Hold דוגמא מספרית – תנאי
TCD
TPD
nand
2
22
nor
2
20
FF
5
40
TSETUP
THOLD
FF 0 FF1: 5 5 2
20
5
FF1 FF 0 : 5 5 2 2
FF 0 FF1 : THold ( FF1) Tcd ( FF 0) Tcd (nand )
FF1 FF 0 : THold ( FF 0) Tcd ( FF1) Tcd (nand ) Tcd (nor )
B
14
A
D
QC
0
0
FF0
D
Q
1
1
FF1
Clock Skew
• המשטר הדינמי מחייב הזנת שעון יחיד בו זמנית
לכל הרכיבים המתוזמנים במעגל.
• במקרים רבים נתקלים בקושי של מגבלות
פיזיקליות ,והשעון מגיע בהפרשי זמן מסוימים
לחלקים שונים במעגל .הפרש הזמן המכסימלי
נקרא "עוות השעון" ).(clock skew
B
A
Q
1
C
D
FF1
1
CLK
B
X
Q
D
0
0
FF0
Y
CLK
A
Z
With CLK skew – Hold Conditions (FF0->FF1)
B
X
Set Y=0,Z=1
Q0
D0
Y
A
C
FF0
Q1
D1
X:0↑1
FF1
CLKA
CLKB
Z
Delay
A
Clk B
tskew
tCD(FF0)
Q0
tCD(C)
16
Q1
tHOLD(FF1)
tCD(FF1)
tPD(FF1)
With CLK skew – Hold Conditions (FF1->FF0)
X
B
A
Q0
D0
Y
FF0
Z
C
CLKA
tskew
Clk B
tCD(FF1)
Q1
tCD(A+B)
Q0
17
tHOLD(FF0)
Q1
D1
FF1
CLKB
Delay
Clk A
Set Y=0,Z=1
X:0↑1
With CLK skew – Hold
Conditions
.A עולה שעוןt=0, t=T, …-•נניח כי ב
.B עולה שעוןt=tskew, t=T+tskew, … -•בהתאמה ב
FF 0 FF1: tskew THold Tcd ( FF 0) Tcd (C )
FF1 FF 0 : THold tskew Tcd ( FF1) Tcd ( A) Tcd ( B )
tskew עלולים לא להתקיים אםHold תנאי,•מתוך התנאי הראשון
:גדול מדי
tskew Tcd ( FF 0) Tcd (C ) THold
הרי,skew בהנחה שהמערכת עובדת ללא,•מתוך התנאי השני
.שהיא תעבוד גם עכשיו
18
tskew Tcd ( FF1) Tcd ( A) Tcd ( B ) THold
With CLK skew – Setup Conditions (FF0->FF1)
B
X
Set Y=0,Z=1
Q0
D0
Y
A
C
FF0
Q1
D1
X:0↑1
FF1
CLKA
CLKB
Z
Delay
Tmin
A
tskew
Clk B
tPD(FF0)
Q0
tPD(C)
19
Q1
tSetup(FF1)
With CLK skew – Setup Conditions (FF1->FF0)
X
B
A
Q0
D0
Y
FF0
Q1
D1
C
CLKA
Z
Set Y=0,Z=1
FF1
CLKB
Delay
Tmin
Clk A
tskew
Clk B
tPD(FF1)
Q1
tPD(A+B)
20
Q0
tSetup(FF0)
X:0↑1
With CLK skew – Setup
Conditions
.A עולה שעוןt=0, t=T, …-•נניח כי ב
.B עולה שעוןt=tskew, t=T+tskew, … -•בהתאמה ב
Tpd ( FF 0) Tpd (C ) Tsetup ( FF1) Tmin t skew
tskew Tpd ( FF1) Tpd ( A) Tpd ( B ) Tsetup ( FF 0) Tmin
? יגדל או יקטןTmin •האם
? שליליtskew •מה יקרה אם
21
:שאלת סיכום
מהו התדר הגבוה האפשרי בו,עבור המערכת שנדונה מקודם
?skew המערכת תפעל באופן תקין כאשר ניתן לקבוע ערך ל
TCD
TPD
nand
2
22
nor
2
20
FF
5
40
TSETUP
THOLD
20
5
?tskew מה הערך המכסימלי והמינימאלי של
FF 0 FF1: tskew THold Tcd ( FF 0) Tcd (C )
tskew 5 2 5 2
B
FF1 FF 0 : THold tskew Tcd ( FF1) Tcd ( A) Tcd ( B )
4 5 (5 2 2) tskew
4 tskew 2
22
A
D
QC
0
0
FF0
D
Q
1
1
FF1
TCD
TPD
nand
2
22
nor
2
20
FF
5
40
TSETUP
THOLD
20
5
:דוגמא מספרית
4 tskew 2
?מה ההשפעה על זמן המחזור המינימאלי האפשרי
. skew קודם כל נחשב את זמן המחזור ללא
FF 0 FF1: Tmin 40 22 20
FF1 FF 0 : Tmin 40 22 20 20
Tmin 102
ונבדוק את ההשפעהtskew נבחר את הערכים הקיצוניים האפשריים של
.שלהם
tskew 2
tskew 4
23
40 22 20 Tmin 2
2 40 22 20 20 Tmin
40 22 20 Tmin 4
4 40 22 20 20 Tmin
Tmin 104
Tmin 98
מסקנה:
• בחירה נכונה של Skewיכולה לעיתים לשפר את
ביצועי המערכת.
תזכורת:
• ערכי skewשליליים פירושו שהשעון מגיע מהכיוון
ההפוך ביחס לכיוון הראשוני שיחסנו לו
(במקרה שלפנינו skewשלילי הוא כאשר השעון מגיע מימין במקום משמאל).
24
© Copyright 2025