מעבד משותף: ארכיטקטורה, עבודה, סוגים ויישומיה

נסה את הכלי שלנו לביטול בעיות





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


מהו Coprocessor?

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



  מעבד שותף
מעבד שותף

ארכיטקטורת מעבד

הארכיטקטורה המשותפת כמו 8087 מוצגת להלן. בדרך כלל, מעבד משותף זה עובד עם המיקרו-מעבד במקביל. מעבד שותף זה פותח על ידי אינטל והשתמש בו עם מעבדי 16-bit ממשפחת 8086. כאשר המעבד פועל בשילוב עם המיקרו-מעבד, חלק החישוב מטופל פשוט על ידי המעבד וזה מאפשר ל-CPU לנצל את המשאבים לביצוע פעילויות שונות אחרות.

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



  ארכיטקטורת מעבד 8087
ארכיטקטורת מעבד 8087

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

יחידת הבקרה במעבד המשותפת היא לשלוט בביצוע הפקודות (IE) שעליו אחראית יחידת הביצוע הנומרית. לרוב, יחידת בקרת המיקרוקוד (CU) של יחידת הביצוע המספרית משיגה את ההוראות המספריות מיחידת הבקרה של המעבד. למעבד המשנה הזה יש 8 רגיסטרים שלמים של 80 סיביות וכל אחד מהם מנוצל בערימת LIFO. האופרנדים שעליהם יתרחשו הוראות המעבד המשותף קיימים בערימת האוגר.

  PCBWay

המחסנית הקיימת מופנית דרך ה-SP 3-bit (מצביע מחסנית) המחזיק את הערכים הבינאריים שנעים בין 000 - 111 על מנת להציג את 8 אוגרי המחסנית. זה עובד בצורת מחסנית מעגלית במצב LIFO. אבל ברגע שפעולת האיפוס מתרחשת, ניתן לאתחל את המצביע על ידי ערך בינארי '000'.

הנתונים המספריים שלושה סיווגים שעליהם פונקציות המעבד המשותף ארוזים מספרים עשרוניים, מספרים ממשיים ומספרים שלמים בינאריים. המספרים השלמים הבינאריים הם שלושה סוגים של מילים שלם של 16 סיביות, מספר שלם קצר של 32 סיביות ומספר שלם ארוך של 64 סיביות. פורמט BCD של 80 סיביות מסמל את המספרים העשרוניים הארוזים בעוד שמספרים ממשיים הם 3 סוגים; 32-bit קצר אמיתי, 64-bit ארוך אמיתי ו-80-bit זמני אמיתי.

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

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

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

כיצד עובד Coprocessor?

המעבד המשנה מיועד בעיקר לעבודה עם מעבדי 8086 ו-8088. המעבד המשנה משמש כדי לעזור למערכת לפעול בצורה חזקה יותר על ידי הורדת משימות CPU ספציפיות. ברגע שמעבד זה עובד בשילוב עם המיקרו-מעבד, ההוראות של המיקרו-מעבד וה-Co-processor משולבות תוך כתיבת התוכנית. לתחילת ההוראות בתוכנית שפת ה-Assembly יש 'F' המייצג את ההוראות של מעבד המשנה ואילו ההוראות ללא קידומת 'F' מציגות את הוראות המיקרו-מעבד.

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

סוגי מעבדים שותפים

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

מעבד משותף של אינטל 8087

Intel 8087 הוא מעבד משותף שתוכנן במיוחד המשמש לביצוע חישובים מתמטיים הכוללים ערכי נקודה צפה ומספרים שלמים. לפעמים, זה ידוע גם כמעבד נתונים מספריים ומעבד מתמטיקה. זהו מעבד משותף מספרי עבור מעבדי Intel 80188, 8086, 80186 ו-8088. מעבד המשנה 8087 כולל שמונה אוגרים כלליים של 80 סיביות אשר מבוצעים כמחסנית. אז כל פעולות הנקודה הצפה מבוצעות פשוט עם נתונים מהמחסנית ומזיכרון חיצוני.

  מעבד משותף של אינטל 8087
מעבד משותף של אינטל 8087

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

אז מעבר ממספר בעל דיוק כפול למספר בעל דיוק יחיד, אחרת ממספר שלם של 64 סיביות - מספרים שלמים של 32 סיביות/16 סיביות אינם נותנים שום שיפור משמעותי בביצועים. מעבדי 8087 לא יוצרו רק על ידי אינטל אלא גם AMD, Cyrix ו-IBM מייצרות מעבדי שותפים אלה.

מוטורולה 68881

מוטורולה 68881 הוא מעבד שותף המשמש בעיקר עם דור שני של מוטורולה 68K מיקרו-מעבדים כמו Motorola 68030 ו-68020. תיאורטית, מעבד שותף זה משמש עם מעבדי 68000 או 68010 קודמים כהתקן היקפי.

  מוטורולה 68881
מוטורולה 68881

המעבד המשותף של מוטורולה 68881 פשוט מתפקד כמו מכשיר ממופה זיכרון. ברגע שה-CPU הראשי טוען את ההוראה של המעבד המשותף, אז הוא כותב את קוד ההוראות לתוך CIR (Co-processor Interface Registers), אשר ממופים בתוך מרחב הכתובות של ה-CPU, ולאחר מכן, הוא קורא את התגובה של ה-CPU. מעבד משותף מאחד מרישומי CIR.

המעבדים המשתנים של מוטורולה 68881/68882 שימשו בתחנות העבודה של IBM RT PC, תחנות העבודה Sun Microsystems Sun-3, NeXT Computer, Apple Computer Macintosh II, Amiga 3000, Sharp X68000, Convergent Technologies MightyFrame, TT, Atari Mega STE & Falcon. מעבדים אלה משמשים גם בחלק ממוצרי Atari & Amiga של צד שלישי כמו מכשיר ממופה זיכרון ל-68000.

Apple Motion Coprocessors

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

  Apple Motion Coprocessors
Apple Motion Coprocessors

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

ההבדל בין מעבד למעבד שותף

ההבדל בין מעבד למעבד שותף כולל את הדברים הבאים.

מעבד

מעבד שותף

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

המעבד מטפל בכל העבודות העיקריות

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

יתרונות

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

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

חסרונות

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

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

יישומים

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

  • המעבד המשותף משמש לביצוע כמה מהמשימות המיוחדות יותר, כגון עיבוד תצוגה גרפית או חישובים מתמטיים מורכבים.
  • מעבד משותף משמש פשוט להפחתת העומס על המעבד של המחשב.
  • מעבד זה עובד עם המעבד של המחשב זה לצד זה.
  • מעבד זה מבצע פעולות מתמטיות ברמה גבוהה הרבה יותר מהר בהשוואה למעבד הראשי כמו שורשים, לוגריתמים, פונקציות טריגונומטריה וכו'.
  • מעבד משנה מגדיל את הפונקציות של המעבד הראשי.
  • המעבד המשנה מבצע פעולות שונות כמו עיבוד אותות, אריתמטיקה של נקודה צפה, עיבוד מחרוזות, גרפיקה, ממשק קלט/פלט דרך התקנים היקפיים, קריפטוגרפיה וכו'.
  • מעבדים אלה הם שבבים עצמאיים במחשבים שולחניים קודמים שהיו מחוברים ללוח האם.
  • מעבד שותף מטפל במשימות ה-CPU כדי להגביר את הביצועים הכוללים.

לפיכך, זהו סקירה כללית של מעבד שותף - עבודה ויישומיה. מעבד זה ידוע גם כמעבד מתמטי. מעבד שותף מבצע משימות שונות מהר מאוד בהשוואה למעבד הליבה. כך, המהירות הכוללת של מערכת המחשב עולה. ניתן לחבר את המעבד הזה למעבד ARM. לאחר הוספתו, עלינו להגדיל את ערכת ההוראות של Core CPU או לכלול אוגרים הניתנים להגדרה להגדלת כוח העיבוד. הנה שאלה בשבילך, מה זה מיקרו-מעבד?