234262 tutorial #7 preventing combinatorial loops 234262 – © yohai devir 2007 © dima elenbogen...
Post on 20-Dec-2015
218 views
TRANSCRIPT
![Page 1: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/1.jpg)
234262
Tutorial #7
Preventing combinatorial loops
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 2: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/2.jpg)
מילי / מור
L1
nextstate
MooreFSM
L2
STATE
OutInL
next_state
Mealy FSM
STATE
In
•STATE מכיל את המצב הנוכחי של ה FSM .•L, L1 ו ,L2 לאו דווקא הן לוגיקות צירופיותROM .משטר התזמון הבו-זמני. •
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 3: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/3.jpg)
Mealy vs Moore
OutInL
next_state
Mealy FSM
STATE
DataPath
Mealyחסרונות לא בטוחים במסלולים •
צירופיים.הם יכולים לעבור בצורה
זה עלול להאריך כלשהיזמן מחזור
מעגלים צירופיים! •
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
Mealyיתרונות פחות מצבים•משתמשים לשם הפחתת זמן •
חישוב
![Page 4: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/4.jpg)
FSMמסלולים צירופיים ב מילי/מור
L1
nextstate
MooreFSM
L2
STATE
OutInL
next_state
Mealy FSM
STATE
In
DataPath DataPath
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 5: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/5.jpg)
FSMמסלולים צירופיים ב מילי/מור
L1
nextstate
MooreFSM
L2
STATE
OutInL
next_state
Mealy FSM
STATE
In
DataPath DataPath
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 6: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/6.jpg)
מעגלים צירופיים
ZERO
x xy
y
M4M4=1 ZERO
Somewhere in the DP…Somewhere in the
Control’s flow chart…
מעגל צירופי:בודאותבמערכת יש
ZERO של הבקר תלוי בערך הנוכחי של הכניסה M4המוצא • .4M ל ZEROחייב להיות בבקר מסלול צירופי מ-
. ZERO למוצא M4 יש מסלול צירופי מכניסת הבקרה של DPב-•שני מסלולים אלו מהווים ביחד מעגל צירופי.•
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 7: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/7.jpg)
מעגלים צירופיים ZERO
x xy y
M4M4=1
everywhere in the
Control’s flow chart…
הנחה חדשה: אבל אין לו את המצב הנ"ל, ואות Mealy הבקר אמנם מסוג
שלו כלל לא מותנה בקלט. M4הפלט ?M4 ל- ZEROהאם יש בבקר מסלול צירופי מ-
OIL
STATE
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 8: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/8.jpg)
:דוגמאc ו-a, b הם: DPאותות סטטוס ה-
yאותות הבקרה הם:
y = f(a, b, c) = a Λ b
y ← b או y ← a מסוגים DPאין מסלול ב-
:שאלההאם יש מעגל צירופי אם מממשים את הבקר
?Mealyכ-
234262 © – Dima Elenbogen 2009 Technion - IIT
![Page 9: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/9.jpg)
:דוגמאc ו-a, b הם: DPאותות סטטוס ה-
yאותות הבקרה הם:
y = f(a, b, c) = a Λ b
y ← b או y ← aמסוגים DP אין מסלול ב-
?Mealyהאם יש מעגל צירופי אם מממשים את הבקר כ-
ROMa
b
cy
a
b y
c
234262 © – Dima Elenbogen 2009 Technion - IIT
![Page 10: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/10.jpg)
מניעת מעגלים ברמה של יחידות
אנו מעונינים לתאר את המערכת כרשת מכוונת של יחידות -ים.FF(תת-מערכות), ולא של שערים ו-
מסיבת הסתרת מידע, אנו רוצים לדעת כמה שפחות על יחידות אלו.
בעיה:מצד אחד, מעגל צירופי הוא מעגל מכוון של שערים
ומצד שני אנו לא רוצים לתאר את המערכת ברמה של שערים.
כלומר, אנו מעונינים ש:לא יהיה מעגל צירופי במערכת1.עובדה זו תובטח מתאור המערכת ברמה של יחידות.2.
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 11: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/11.jpg)
יחידות מילי ויחידות מוריחידות חישוביות סדרתיות מסווגות כדלקמן:
= מובטח שאין מסלול צירופי בין קלט לפלטMooreסוג •.Moore: רגיסטר הוא מסוג ובפרט
= לא מובטח שלא קיים מסלול צירופי בין קלט Mealyסוג •לפלט
Mealy: לוגיקה צירופית היא מסוג ובפרט
.Gנתייחס למבנה המערכת ברמת יחידות כגרף מכוון הגדרות: שכל הצמתים שלו מסוג G – מסלול מכוון ב-Mealyמסלול Mealy . שכל הצמתים שלו מסוג G – מעגל מכוון ב-Mealyמעגל Mealy.
.Mealy אין מעגל G אם"ם ב-Mealyקריטריון מקיים את Gגרף
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 12: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/12.jpg)
234262 © – Yohai Devir 2007Technion - IIT
פרוק הבקר ליחידות תלוי באופן החלוקה של המערכת Mealyקריטריון ליחידות.
יתכן שאותה מערכת:.תקיים את הקריטריון עבור חלוקה מסוימת .לא תקיים אותו עבור חלוקה אחרת
עבור מערכת בקר ומסלול נתונים:לפעמים ניתן לקיים את הקריטריון רק ע"י שינוי
מבנה הבקר, בלי שינוי תוכנית הפעולה ודיאגרמת המצבים של הבקר.
![Page 13: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/13.jpg)
דוגמא
. DP( ו-Mealyנתונה מערכת של בקר )מסוג והוראה רבים. STATUSלמערכת אותות
יש מסלולים צירופיים מרוב כניסות הבקרה לרוב יציאות DPב- הבקרה.
.כאשר הבקר הוא יחידה אחת, הקריטריון לא מתקיים
:הנחות. b ו- a לבקר יש רק שני פלטים מותנים: •• a מותנה רק בקלט x -ו b רק בקלט y ., Mealy אין מעגל DP ב- • מהסוגים הבאים:Mealy מסלולי אין DP ב- •
a x, b x, b y
234262 © – Dima Elenbogen 2009 Technion - IIT
![Page 14: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/14.jpg)
234262 © – Yohai Devir 2007Technion - IIT
דוגמאנפרק את הבקר לשלושה חלקים
x L
Other Control signals
C.S.
yOther status
ba
STATE
C1
STATE
x C2 a
STATUSy- וxכולל
הוראהb- וaפרט ל
y C3 b
![Page 15: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/15.jpg)
234262 © – Yohai Devir 2007Technion - IIT
דוגמא
C1
STATE
x C2 a
STATUSy- וxכולל
הוראהb- וaפרט ל
y C3 b
x DP
Other Control signals
yOther status
ba
עם מבנה זה המערכת מקימת את קריטריון Mealy:כי ,C3 אין מעגל העובר דרך •C2. אין מעגל העובר דרך •
![Page 16: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/16.jpg)
234262 © – Yohai Devir 2007Technion - IIT
דוגמא – מסלולים אחרים
C1
STATE
x C2 a
STATUSy- וxכולל
הוראהb- וaפרט ל
y C3 b
x DP
Other Control signals
yOther status
ba
![Page 17: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/17.jpg)
234262 © – Yohai Devir 2007Technion - IIT
דוגמא – מסלולים אחרים
C1
STATE
x C2 a
STATUSy- וxכולל
הוראהb- וaפרט ל
y C3 b
x DP
Other Control signals
yOther status
ba
![Page 18: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/18.jpg)
234262 © – Yohai Devir 2007Technion - IIT
דוגמא – מסלולים אחרים
C1
STATE
x C2 a
STATUSy- וxכולל
הוראהb- וaפרט ל
y C3 b
x DP
Other Control signals
yOther status
ba
?
![Page 19: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/19.jpg)
דוגמא שניה וחלק מתרשים הזרימה של בקר מילי:DPלפניכם חלק מ-
b -תלוי ב x c -תלוי ב x -וב y
x -תלוי ב a y -תלוי ב b
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 20: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/20.jpg)
דוגמא שנייה ניסיון
![Page 21: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/21.jpg)
דוגמא שנייה ניסיון
a → x → control → a
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 22: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/22.jpg)
דוגמא שנייה ב' ניסיון
aנשים לב שהאות לאשהבקר מוציא הוא
פלט מותנה
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 23: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/23.jpg)
דוגמא שנייה ב' ניסיון
aנשים לב שהאות לאשהבקר מוציא הוא
פלט מותנה
b → y → c1 → b
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 24: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/24.jpg)
דוגמא שנייה ג' ניסיון
234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT
![Page 25: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/25.jpg)
3דוגמא
234262 © – Dima Elenbogen 2010 Technion - IIT
האם המערכת מקיימת
את עיקרון Mealy?
![Page 26: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/26.jpg)
3דוגמא
234262 © – Dima Elenbogen 2010 Technion - IIT
האם קיים זוג יחידות
כך שאחרי מיזוגן
המערכת תפר את עיקרון Mealy?
![Page 27: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/27.jpg)
3דוגמא
234262 © – Dima Elenbogen 2010 Technion - IIT
קיים זוג יחידות כך
שאחרי מיזוגן
המערכת תפר את עיקרון Mealy!
![Page 28: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/28.jpg)
234262 © – Dima Elenbogen 2010 Technion - IIT
![Page 29: 234262 Tutorial #7 Preventing combinatorial loops 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT](https://reader035.vdocuments.pub/reader035/viewer/2022062714/56649d425503460f94a1dfea/html5/thumbnails/29.jpg)
234262 © – Yohai Devir 2007Technion - IIT
234262 © – Dima Elenbogen 2010 Technion - IIT