Presentation is loading. Please wait.

Presentation is loading. Please wait.

234262 שאלת חזרה בקר ומסלול נתונים 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT.

Similar presentations


Presentation on theme: "234262 שאלת חזרה בקר ומסלול נתונים 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT."— Presentation transcript:

1 234262 שאלת חזרה בקר ומסלול נתונים 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

2 שאלה 9 – בקר ומסלול - נתונים נתונה המערכת הבאה של בקר ומסלול נתונים. כל הקווים העבים בשרטוט ה DP הם ברוחב n. ה -ADDER מחבר מודולו n 2. COMPARE הוא רכיב צירופי המשדר 1 על EQ אםם שני הקלטים שלו שווים. נתון שבמצב התחלתי A=1 ו B=2. מה יהיה ערכו של A כאשר המערכת תגיע למצב END ? ADDER LD B B EQ LD A A LD B Start LD B LD A END  EQ EQ A+B S1 S2 S4 S5 S3 COMPARE 234262 – © Dima Elenbogen 2009 5:27

3 ADDER LD B B LD A A A+B EQ COMPARE אות הסטטוס LD A LD B Start LD B LD A END  EQ S1 S2 S5 S3 S4 234262 – © Dima Elenbogen 2009 5:27 EQ

4 ADDER LD B B LD A A A+B EQ COMPARE אות הסטטוס LD A LD B Start LD B LD A END  EQ EQ S1 S2 S5 S3 S4 EQ תלוי בערכי A ו -B של המחזור הקודם 234262 – © Dima Elenbogen 2009 5:27

5 ADDER LD B B EQ LD A A A+B כל הקווים העבים בשרטוט ה DP הם ברוחב n. ה -ADDER מחבר מודולו n 2. COMPARE הוא רכיב צירופי המשדר 1 על EQ אםם שני הקלטים שלו שווים. נתון שבמצב התחלתי A=1 ו B=2. מה יהיה ערכו של A כאשר המערכת תגיע למצב END ? COMPARE LD A LD B Start LD B LD A END  EQ EQ S1 S2 S5 S3 S4 EQ = (A prev == B prev ) A prev = __ B prev = __ 234262 – © Dima Elenbogen 2009 5:27

6 NSEQA+BBA LD B LD A CSCycle S2032100S11 S4032111S22 S5163310S43 096300S54 LD A LD B Start LD B LD A END  EQ EQ S1 S2 S4 S5 S3 ADDER LD B B EQ LD A A A+B כל הקווים העבים בשרטוט ה DP הם ברוחב n. ה -ADDER מחבר מודולו n 2. COMP הוא רכיב צירופי המשדר 1 על EQ אםם שני הקלטים שלו שווים. נתון שבמצב התחלתי A=1 ו B=2. מה יהיה ערכו של A כאשר המערכת תגיע למצב END ? COMPARE 234262 – © Dima Elenbogen 2009 5:27

7 234262 Tutorial #6 Controller + DataPath part II 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

8 GCD (Euclid's algorithm) 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

9 Euclid Al- Khwārizmī Ευκλείδης από την Αλεξάνδρεια Born: c. 325 BC Birthplace: Alexandria, Egypt Died: c. 265 BC Location of death: Alexandria, Egypt Nationality: Ancient GreekAlexandria, Egypt Muhammad ibn Mūsā al-Khwārizmī Born: c. 787 AC Birthplace: Khwārizm, Persia Died: c. 850 AC Location of death: Baghdad, Arab. Caliphate Nationality: PersianKhwārizm, PersiaBaghdad, Arab. Caliphate 234262 – © Dima Elenbogen 2009 Technion - IIT

10 ALU a is given at the first cycle and that b is given at the following cycle ALUOp CC AB 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

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

12 DP construction Variables… Operations… 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

13 Switch implementation 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT 1010 AB ALUOp CC In SelB LdB SelA LdA Out

14 Implementation – just as in tutorial 4… 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT 1010 AB ALUOp CC In SelB LdB SelA LdA Out

15 GCD – slower ALU אופן פעולה 3 – ההשהייה של יחידה צירופית גדולה ממחזור השעון 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT נניח: T cycle < T pd (ALU) < 2 · T cycle 1010 AB ALUOp CC In SelB LdB SelA LdA Out

16 GCD – slower ALU 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT T cycle < T pd (ALU) < 2 · T cycle

17 GCD – slower ALU 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT T cycle < T pd (ALU) < 2 · T cycle

18 GCD – slower ALU ? 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT T cycle < T pd (ALU) < 2 · T cycle

19 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT GCD – slower ALU

20 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT 1010 AB ALUOp CC In SelB LdB SelA LdA Out

21 GCD – slower ALU בעיה I - זיהום אות הסטטוס CC 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT 1010 AB ALUOp In SelB LdB SelA LdA Out מוצאי ה- ALU יהיו תקפים (לוגים) רק אחרי שני מחזורי שעון, לכן כעבור מחזור שעון אחד מתחילת החישוב, מוצאי הרכיב, ובפרט אות הסטטוס (CC), יהיו מזוהמים. הבעיה: הבקר ידגום ערך מזוהם.

22 GCD – slower ALU בעיה I - זיהום אות הסטטוס – פתרון (1) 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT הפתרון מבוסס על רכיב הנקרא מחסום, שמטרתו לחסום, בתנאים מסוימים, מעבר של זיהום לתוך הבקר. לרכיב שתי כניסות ויציאה אחת כדלקמן: כאשר ENABLE=1, הרכיב מעביר את IN ל – OUT. כאשר ENABLE=0, הרכיב משדר ערך לוגי קבוע על OUT, למשל את הערך 0. OUTIN ENABLE

23 GCD – slower ALU בעיה I - זיהום אות הסטטוס – פתרון (2) Clean CC ReadCC 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT 1010 AB ALUOp In SelB LdB SelA LdA Out CC

24 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT ReadCC 1010 AB ALUOp In SelB LdB CC SelA LdA Out GCD – slower ALU בעיה I - זיהום אות הסטטוס – פתרון (3)

25 234262 – © Dima Elenbogen 2009 Technion - IIT GCD – slower ALU בעיה II – שימור אות ההוראה 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT רכיב ה – ALU מקבל אות בקרה, ALUop, שמורה לו איזו פעולה לבצע, כזכור כל אותות הכניסה של הרכיב חייבות להיות תקפות למשך Tpd(ALU) יחידות זמן, במקרה דנן אות ה -ALUop חייב להיות יציב לאורך שני מחזורי שעון, ובפרט בתפר שבין המחזורים. Reg ספחת (Hazard) היא תופעה שמעבר בקלטים גורם לעודף מעברים בפלט. ספחת סטטית נספחת לפלט האמור להיות יציב. הערה: אות השעון נחשב כקלט. בקרוס שלנו נניח ש FF – הוא חסר ספחות סטטיות, אלא אם נאמר אחרת. בהקשר של FF, אם אנחנו אומרים ש FF -הוא חסר ספחות סטטיות אזי בקטע A אות המוצא נשאר תקף באם הערך החדש שנדגם זהה לערך הקודם. דבר דומה קורה עבור FF מותנה כאשר כניסת ה – ENABLE שלו היא 0, פלט הרכיב נשאר תקף בקטע A..

26 ALUop אות הסטטוס 234262 – © Dima Elenbogen 2009 Technion - IIT GCD – slower ALU בעיה II – שימור אות ההוראה - פתרון

27 ALU op Output comb. logics Transition comb. logics.. 234262 – © Dima Elenbogen 2010 Technion - IIT 1010 AB ALUOp CC In SelB LdB SelA LdA Out

28 ספחת סטטית FF של ALU OP חייב להיות חסר ספחת סטטית!  ספחת סטטית היא תופעה שבה יחידה יכולה לשנות את המוצא שלה כאשר הכניסות שלה לא השתנו 234262 – © Dima Elenbogen 2009 Technion - IIT

29 ALU op Output comb. logics Transition comb. logics.. 234262 – © Dima Elenbogen 2010 Technion - IIT CC '0' ReadCC 1 1010 AB ALUOp In SelB LdB SelA LdA Out 0

30 000 001 010 100101 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT נשים לב שאות הבקרה שנכנס למסלול הנתונים יוצא ישירות מרגיסטר חסר ספחות סטטיות. על כן יש לבחור בקפידה קידוד מתאים, מכיוון שאותות הבקרה לא עוברים דרך לוגיקה צירופית.

31 DP mealy (regular ALU) 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

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

33 Controller Mealy 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT ?

34 Standard Mealy Notation 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

35 selA=0 selB=0 if (CC==pos) ldA, OP=A-B if (CC==neg) ldB, OP=B-A CC=pos CC=neg ? 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

36 ALU OP depends on CC ALU ! Combinatorial Logics NS CS 234262 – © Dima Elenbogen 2009 Technion - IIT selA=0 selB=0 if (CC==pos) ldA, OP=A-B if (CC==neg) ldB, OP=B-A CC=posCC=neg 1010 AB ALUOp CC In SelB LdB SelA LdA Out

37 ALU OP depends on CC ALU ! AB ALUOp CC ALU LdB SelA Comb. Logics NS CS LdA 234262 – © Dima Elenbogen 2009 Technion - IIT selA=0 selB=0 if (CC==pos) ldA, OP=A-B if (CC==neg) ldB, OP=B-A CC=posCC=neg 1010 In SelB

38 Mistake by standard notations 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT

39 Mealy Controller 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT 1010 AB ALUOp CC In SelB LdB SelA LdA Out


Download ppt "234262 שאלת חזרה בקר ומסלול נתונים 234262 – © Yohai Devir 2007 © Dima Elenbogen 2009 Technion - IIT."

Similar presentations


Ads by Google