12
BAR-ILAN UNIVERSITY Engineering Faculty ןןןן- ןןןןןןןןןן ןן ההההההה הההההה ןןןן ןןןןןן ןןןןןןן83-301 ןןן"ן ןןן' ן' ןןןן ן' הה ההההה הההה הההההה ההההההה הההה ההההה83-301 הה ההההה הה הההה הההההההה+ הההה' ההההה הההה ההה"ה ההההה ה' הההה ה' ההה הההההה ההה הההה הההה ההה ההה ההה ההההה הה הההההההPatterson & Hennessy הההה ההההה ההההההה הההה+ .)הההה ההההה הה ההההה( הה הההה ההה, הההה ההההההה, הההההה ההההההההה, הההההההה, ההה', הההההה הההההה. ןן ןןןן ןן ןןןןןן ןןןןןן ןןןןןן. הה ההההה הה הה הההההה. הה ההההה הה הההה ההההההה. הה ההההה הההההה הההההה הה הההה ההה הההההה. הה"ה ההההההה הההההההה110 . הההה הההההה הה הההה הה100 . ןן ןןןןן ןןן ןןןן. ןןןןן ןןןןןן ןן ןןןןן. !ןןןןןן

אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

BAR-ILAN UNIVERSITY

Engineering Faculty

אוניברסיטת בר-אילן

הפקולטה להנדסה

83-301מבנה מחשבים ספרתיים תשע"ה סמס' ב' מועד א'

מבנה מחשבים ספרתייםשם הקורס83-301מספר הקורס

פרופ' שמואל וימר + מר עמית מנדלבאוםשם המרצהמועד א'סמסטר ב'תשע"ה

שלש שעותמשך הבחינה +Patterson & Hennessyשני ספר הקורס של המחברים חומר עזר

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

מחשבונים, וכו', אסורים בשימוש..יש לצרף את שאלוני הבחינה למחברת

יש לענות על כל השאלות. כל תשובה יש לנמק ולהסביר.כל תשובה מספרית מחייבת את הצגת דרך החישוב.

. ציון הבחינה לא יעלה על110סה"כ הנקודות האפשריות 100.

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

!בהצלחה

נק'(25 )שאלה א'

לזיכרון הראשי מגדילה את זמן קבלתCPU כמתווך בין ה- Cacheידוע כי הוספת נק'( 2).1 מקטינה את זמן הגישהCacheהמידע ישירות מהזיכרון הראשי, מדוע בכל זאת הוספת

לזיכרון? : אמנם זמן קבלת המידע מהזיכרון עולה אך לאחר מכן, בזכות השימוש בעיקרוןתשובה

נקרא שוב ללא גישותCacheהלקאליות, מידע שהיה באותו הבלוק שהובא מהזיכרון ל – נוספות לזיכרון הראשי ולכן בסך הכל זמן הגישה לזיכרון מתקצר.

לא לאזכר את עקרון הלוקאליותטעות נפוצה:

נק'( נתונים שני מעבדים הפועלים באותו תדר ומריצים אותה תכנית בדיוק.5).2

Page 2: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

ננושניות,30 הינו CACHE MISSבמעבד הראשון זמן הגישה לזכרון הראשי במקרה של מהזמן.80% קורה ב CACHE HIT ננושניות. ידוע ש 3 אורך CACHE HITואילו

ננושניות,50 הינו CACHE MISSבמעבד השני זמן הגישה לזכרון הראשי במקרה של מהזמן.90% קורה ב CACHE HIT ננושניות. ידוע ש 2 אורך CACHE HITואילו

חשב בצורה מלאה את ביצועי הזכרון של שני המעבדים. לאיזה מהם ביצועים טובים יותר?

Answer:In the 1st processor 80% of the time the access will be 3 ns while the rest of the time )20%( the access time will be 30 ns. The average is )0.8 × 3 ns( + )0.2 × 30 ns( = 2.4 ns + 6 ns = 8.4 nsIn the 1st processor 90% of the time the access will be 2 ns while the rest of the time )10%( the access time will be 50 ns. The average is )0.9 × 2 ns( + )0.1 × 50 ns( = 1.8 ns + 5 ns = 6.8 ns

מהמקרים100% ב- Hit-timeחישוב טעות נפוצה:

-DIRECT, FULLY ASSOCIATIVE, N) איזה מבין שלשת סוגי זכרון המטמון נק'(3).3WAY)? איננו נדרש ל REPLACEMENT ALGORITHM ?מדוע ולכן כאשר ישcache כל כתובת ממופה לתא אחד בלבד ב-Direct מסוג Cache: ב-תשובה

צורך לחליף מידע בתא מסוים אין "בחירה" איזה תא להחליף ולכן לא נדרש אלגוריתםהחלפה.

של מעבד כלשהו. בכל אחד מהסעיפים שלהלן צרףCACHE לפניך חלק מתוך נק'(15).4.הסבר מלא וחישוב מדוייקלתשובתך

(DIRECT, FULLY ASSOCIATIVE, N-WAY הנ"ל? )CACHEמאיזה סוג הא.Answer: It is a 2-way set associative cache, i.e., there are two lines per set.

בתים בבלוק4 כי יש way-4: טעות נפוצהמה גודל מרחב הכתובות של המעבד?ב.

Page 3: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

Bytes 224( לכן2 +8 + 14 ביטים בכתובת סה"כ )24: ישנן תשובה

כמה בלוקים יש במרחב הכתובות? ג.Blocks 222 בתים, לכן 4בכל בלוק ישנם : תשובה

( BYTES בבתים? )CACHEמה גדלו של ה ד.Answer: Since it is a 2-way set associative cache, and since there is an 8-bit tag, there are 28+1=512 lines. Each line has 4 bytes, so the cache has a total of 2048 bytes.

: חישוב לפי הגודל שמופיע בטופס הבחינה )למרות שכתוב במפורשטעות נפוצהשזה רק חלק(.

.0x7121C5(( הנמצא בכתובת BYTEנדרש לקרוא ממרחב הזיכרון את הבית ה.האם ניתן לדעת מה ערכו של הנתון בכתובת הנ"ל? ובמידה וכן, מהו ערכו?

Answer :First, convert 7121C5 to binary. 7121C516 = 111000100100001110001012

The last two bits, 01, identify the word position within the block. 01 means that it is in the second column of data.The next eight bits, 01110001, should identify the set. It identifies the set consisting of the third and fourth rows from the bottom.The fourth row from the bottom has the matching tag of 0111000100100. Therefore, the data is in the second column of the fourth row from the bottom, i.e., A5.

נק'(50) שאלה ב' )FP RF )FLOATING POINT REGISTER FILE, וה RS, ROBמהם מצבי טבלאות ה

, אשר מריץ אתTOMASULOהמצורפות עבור מעבד ספקולטיבי המממש את אלגוריתם התכניות שלהלן, תחת ההנחות הבאות:

( רק פקודה אחת יכולה לצאתISSUE.בכל מחזור שעון ) לROB 8 ישנן( כניסות SLOTS( והוא משמש גם בתור חוצץ )BUFFERל )LOAD. ול

STORE( כל היחידות הפונקציונליותFU הינן )FULLY PIPELINED. יחידות 2ישנן RS לכפל FP MULTIPLY((, 3 יחידות לחבור FP ADD ו ))יחידות 3 RS

.STORE ו LOADלשלמים, המשמשות גם ל ( חריגותEXCEPTIONS.אינן קורות )( השיהוי בבצועEXECUTION.פעולות בשלמים הינו מחזור שעון אחד ) להוציאSTRUCTURAL HAZARD פעולת ,LOAD,יוצאת לדרך במחזור שעון אחד

ב פעולה התלויה בשלישי. וכותבת בזה שאחריו, )LOADמבוצעת להתבצע יכולה EXECUTE.ברביעי )

( השיהוי בבצועEXECUTION חבור )FP מחזורי שעון וכפל 2 הינו FP 4.מחזורי שעון במקרה של קונפליקט בכתיבה לCDB( הקדימות ,PRIORITYלפקודה שיצאה לדרך )

מוקדם יותר.( בצועEXECUTIONשל פקודות תלויות יכול להתחיל במחזור השעון לאחר שנתוניהן )

.CDBמשודרים ב

Page 4: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

מניחים שטבלאות הRS, ROB ו FP RFהינן ריקות ופנויות בעת תחילת בצוע התכניות שלהלן.

" העמודהVALUE מתעדכנת בעת שידור הערך ב "CDB.

, נדרש כמובןNOT BUSY" ל ""BUSY בכל שינו ממצב ":דרישה חשובה בתשובות לשאלה את תוכן שאר העמודות )אלא אם כן הדברלא למחוקלעדכן את העמודה המתאימה, אבל

נדרש כתוצאה מפקודה אחרת התופסת מקום זה(.

טעויות כלליות נפוצות:.Write גם עבור פקודות שלא עשו Valueא. רישום שדה Execute עבור פקודות שעשו )או במהלך( Qב. רישום שדות

Busy כאשר הם לא Register statusג. מחיקת רגיסטרים מה- כאשר הערך שלהם אמור להתעדכן. Vk ו-Vjד.חוסר עדכון של שדות ה-

Issue במקום ב- Executeסעיף ב' טעות נפוצה מאוד – פקודה לפני אחרונה ב-

הפקודה25)א. של השגור בעת המצורפות הטבלאות את מלא באופן רשום נקודות( האחרונה בקוד שלהלן

Page 5: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

)ב. הפקודה25 של השגור בעת המצורפות הטבלאות את מלא באופן רשום נקודות( האחרונה בקוד שלהלן

Page 6: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה
Page 7: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

נקודות(35 )שאלה ג'נתונה התכנית שלהלן

Rנתונים ערכי ההתחלה הבאים: 1=n ,R 2=0 ,R 3=pמצביע לראש מערך של מספרים( שלמים(.

הניחו ש MIPSברשותנו מעבד חיזוי קפיצות המתואר להלן. מנגנון אינםb2ו b1בעל מתנגשים בטבלת היסטורית הקפיצות.

של 5)א. ערכו מהו הנ"ל? התכנית מבצעת בדיוק מה נקודות( R היציאה2 בעת מהלולאה?

האיברים הראשונים בו שוניםn וסופרת כמה מבין Pהתוכנית מקבלת מערך : תשובה0 מכיל את כמות האיברים ששונים מ-R2. בסיום התוכנית 0מ-

n: לא מתייחסים ל –טעות נפוצההינו 10)ב. לתכנית שהקלט נניח נקודות( n=8ו

p [ 0 ]=1 , p [ 1 ]=0 , p [2 ]=1, p [3 ]=0 , במלואה. … המצורפת א' טבלה את .מלא ה PCהעמודה נמצא בה מציינת את הפקודה שבטבלה PC העמודות .b bו 1 2

מצייןT, ואילו NOT TAKEN מציין Nמציינות את מצב מכונות המצבים המתאימות, TAKEN.מצב מכונת המצבים בעת קבלת הניחוש מצויין במודגש, ואילו המצב הבא

?מהו מספר חיזויי הקפיצה השגוייםמצויין באלכסון. 7)ראה טבלה ליד הטבלה המקורית( מספר החיזויים השגויים : : תשובה

Page 8: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

הקפיצות ולכן ממלאיםלפני 1 יורד ב-R1 לא שמים לב ש-טעות נפוצה )גם בסעיף ג'( השורות האחרונות בטבלה )למרות שאמורות להישאר ריקות(2את

נקודות( מוסיפים כעת לטבלת חיזוי הקפיצות סיבית של היסטוריה כאשר הסיבית10)ג. מלא את טבלה ב' המצורפת כאשר קרתה קפיצה. 1 פירושו שלא קרתה קפיצה ו 0

?מהו מספר חיזויי הקפיצה השגויים. במלואה5)ראה טבלה ליד הטבלה המקורית( מספר חיזויים שגויים: : תשובה

חוסר הבנה של משמעות של ביט ההיסטוריהטעות נפוצה:

נקודות( השווה בין חיזוי הקפיצות בסעיף ב' ובסעיף' ג' לעיל.10)ד.,באיזה שלב של התכנית )התחלה, אמצע, סוף( קורות מירב השגיאות בחיזוי הקפיצה

ומדוע? בהתחלה. עבור הלולאה השנייה )שתמיד נלקחת עד הסוף( , לוקח זמן לחוזה: תשובה

להתייצב ולכן יש שגיאות בהתחלה. עבור הלולאה הראשונה )במקרה שיש ביט שלהיסטוריה( כנ"ל

האם הוספת סיבית נוספת של היסטורית קפיצות תשנה את המצב עבור תכנית זאת והנתונים הללו )תשובה ללא הסבר ונימוק לא תתקבל(?

לא, הלולאה ראשונה נלקחת ולא נלקחת לסירוגין. לכן מספיק לנו רק ביט: תשובה וממילא10 ו 01אחד של היסטוריה, ביט נוסף לא יעזור כיוון שתמיד ניפול בסטים

חזרנו למצב שבו יש לנו רק שני סטים )=ביט אחד של היסטוריה(. עבור הלולאה השנייה ממילא אין שיפור במעבר לשני סטים ולכן ברור שהוספת ביט נוסף לא תשפר

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

לסירוגין בלולאה הראשונה(

טבלה א'

Page 9: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

Branch behaviorPredictorSystem stateActualPredictedB2 bitsB1 bitsR3/R4PC

NN00004/1B1TN00004/1B2TN01008/0B1TN01018/0B2NN110112/1B1TT110012/1B2TN110016/0B1TT110116/0B2NN110120/1B1TT110020/1B2TN110024/0B1TT110124/0B2NN110128/1B1TT110028/1B2TN110032/0B1NT110132/0B2

Page 10: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה
Page 11: אוניברסיטת בר-אילןwimers/files/courses/Computer_Structure_and... · Web viewBAR-ILAN UNIVERSITY . Engineering Faculty. אוניברסיטת בר-אילן . הפקולטה

טבלה ב'

Branch behaviorPredictorHistory bit

System state

ActualPredictedB2 bitsB1 bitsR3/R4PCNN0000000004/1B1TN0000000014/1B2TN0100000008/0B1TN0100000118/0B2NN11000001112/1B1TT11000001112/1B2TN11000001016/0B1TT11000011116/0B2NN11000011120/1B1TT11000011120/1B2TT11000011024/0B1TT11000011124/0B2NN11000011128/1B1TT11000011128/1B2TT11000011032/0B1NT11000011132/0B2