234262 234262 – © yohai devir 2007 © dima elenbogen 2009 technion - iit tutorial #7 preventing...

24
234262 234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

Post on 21-Dec-2015

221 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

234262234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion -

IIT

Tutorial #7

Preventing combinatorial loops

Page 2: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

מילי / מור

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

Mealy vs Moore

OutInL

next_state

Mealy FSM

STATE

DataPath

Mealyחסרונות לא בטוחים במסלולים •

צירופיים.הם יכולים לעבור בצורה

זה עלול להאריך כלשהיזמן מחזור

מעגלים צירופיים! •

234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

Mealyיתרונות פחות מצבים•משתמשים לשם הפחתת זמן •

חישוב

Page 4: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

מעגלים צירופיים

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

מעגלים צירופיים 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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

:דוגמא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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

:דוגמא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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

מניעת מעגלים ברמה של יחידות

אנו מעונינים לתאר את המערכת כרשת מכוונת של יחידות -ים.FF(תת-מערכות), ולא של שערים ו-

מסיבת הסתרת מידע, אנו רוצים לדעת כמה שפחות על יחידות אלו.

בעיה:מצד אחד, מעגל צירופי הוא מעגל מכוון של שערים

ומצד שני אנו לא רוצים לתאר את המערכת ברמה של שערים.

כלומר, אנו מעונינים ש:לא יהיה מעגל צירופי במערכת1.עובדה זו תובטח מתאור המערכת ברמה של יחידות.2.

234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

Page 11: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

יחידות מילי ויחידות מוריחידות חישוביות סדרתיות מסווגות כדלקמן:

= מובטח שאין מסלול צירופי בין קלט לפלט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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

234262 © – Yohai Devir 2007Technion - IIT

פרוק הבקר ליחידות תלוי באופן החלוקה של המערכת Mealyקריטריון ליחידות.

יתכן שאותה מערכת:.תקיים את הקריטריון עבור חלוקה מסוימת .לא תקיים אותו עבור חלוקה אחרת

עבור מערכת בקר ומסלול נתונים:לפעמים ניתן לקיים את הקריטריון רק ע"י שינוי

מבנה הבקר, בלי שינוי תוכנית הפעולה ודיאגרמת המצבים של הבקר.

Page 13: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

דוגמא

. 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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

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 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

דוגמא שניה וחלק מתרשים הזרימה של בקר מילי:DPלפניכם חלק מ-

b -תלוי ב x c -תלוי ב x -וב y

x -תלוי ב a y -תלוי ב b

234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

Page 20: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

דוגמא שנייה ניסיון

Page 21: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

דוגמא שנייה ניסיון

a → x → control → a

234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

Page 22: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

דוגמא שנייה ב' ניסיון

aנשים לב שהאות לאשהבקר מוציא הוא

פלט מותנה

234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

Page 23: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

דוגמא שנייה ב' ניסיון

aנשים לב שהאות לאשהבקר מוציא הוא

פלט מותנה

b → y → c1 → b

234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

Page 24: 234262 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT Tutorial #7 Preventing combinatorial loops

דוגמא שנייה ג' ניסיון

234262 © – Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT