» נושאי לימוד
» נושאי לימוד
יום רביעי 12 באוגוסט 2020
פרק 10 - מעבד רב-מחזורי
דף ראשי  פרק 10 - מעבד רב-מחזורי גרסה להדפסה

 

רקע כללי:

 

כפי שרואים בפרק 9: מעבד חד-מחזורי מקצה לכל פעולה במעבד גודל קבוע – 5 יחידות שעון (כגודלה של הפעולה הארוכה ביותר – Load).

כדי לשפר ביצועים, מחשבים רבים משתמשים במעבד הרב-מחזורי שדרך פעולתו תוסבר בפרק הנ"ל.

 

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

הפעולות שהמעבד מבצע הן Fetch, Decode, Execute, Memory, Write Back.

 

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

 

 

Action for

branches

Action for memory

reference instructions

Action for Rtype

instructions

Step name

[IR = Memory[PC

;PC = PC + 4

Instruction fetch

[[A = Register[IR[25-21

[[B = Registers[IR[20-16

(Target = PC + (sign-extend (IR[15-0]) << 2

Instruction decode/

register fetch

if (A == B) then

PC = Target

ALUResult = A + sign-extend

[(IR[(15-0

 

ALUResult = A op B

Execution, ,address computation

or branch completion

 

memory-data = Memory[ALUResult]

or

Memory

ALUResult] = B]

[[Reg[IR[15-11=

ALUResult

Memory access or R-type

Completion

 

Reg[IR[20-16]] = memory-data

 

Write-back

 

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

  • פקודת R-Type לוקחת 4 יחידות שעון.
  • פקודת Load לוקחת 5 יחידות שעון.
  • פקודת Store לוקחת 4 יחידות שעון.
  • פקודת Branch לוקחת 3 יחידות שעון.
  • פקודת Jump לוקחת 3 יחידות שעון.



חסרונות המעבד הם:

יש צורך לשמור את תוצאת ה- ALU לאחר החישוב כדי שנוכל להשתמש במידע זה מאוחר יותר. כדי לעשות זאת נצטרך רכיב זיכרון (Target).

יש צורך בשימוש באוגר נוסף (Instruction Register) ששומר את ערכי הפקודה לביצוע לאורך כל זמן ביצוע הפעולה. בפעולות מסוימות יש צורך לגשת לאוגר זה ולמשוך את המידע ששמור בו.

השימוש בעוד חומרה דורש זמן עיבוד (למעשה זמן כתיבה לאוגר) גדול יותר.

 

יתרונו של המעבד הוא שיפור זמן ביצוע הפעולות, מכיוון שכל פעולה לוקחת בדיוק את הזמן הנחוץ לה. היתרון הנ"ל הוא משמעותי ביותר ומאפשר ריצת תוכנית בזמן מהיר יותר מאשר במעבד חד-מחזורי.

 

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

שקף 2 יסקור את רכיבי המעבד.

בשקף 9 יוסברו קווי הבקרה של המעבד, ואופן שליטתם על הרכיבים במעבד.

שקף 12 יכיל הסברים לגבי דרך ביצוע פעולה מסוג R-type במעבד. בשקף יוסברו התנהלותם של הערכים בקווי הבקרה בכל רגע נתון ויפורטו כל התהליכים המרכזיים. שקפים 13-16 יכילו הסברים דומים לגבי שאר הפעולות במעבד: Load, Store, Branch, Jump.

 

 22-02-04 / 20:09  עודכן ,  17-02-04 / 23:10  נוצר ע"י אפרת ליברך בתאריך 
 שקף 22 – מימוש אותות בקרה ביחידת הבקרה הראשית - הקודםהבא - שקף 2 - רכיבי המעבד. 
תגובות הקוראים    תגובות  -  0
דרכונט
מהי מערכת הדרכונט?
אינך מחובר, להתחברות:
דוא"ל
ססמא
נושאי לימוד
חיפוש  |  לא פועל
משלנו  |  לא פועל
גולשים מקוונים: 6