- יישומים
- מָקוֹר
- דֶגֶם
- אדריכלות הרווארד שונה
- כיצד עובדת אדריכלות הרווארד?
- תוספות באדריכלות
- כתובות זיכרון
- מערכת זיכרון
- יתרון
- רמת הגנה
- מהירות גבוהה יותר
- חסרונות
- מורכבות רבה יותר ועלות
- שימוש מועט
- שימוש לרעה במרחב הזיכרון
- הפניות
האדריכלות הרווארד היא בתצורה של המחשב שבו הנתונים והוראות תכנית ממוקמים תאים נפרדים של זיכרון, אשר ניתן לטפל באופן עצמאי.
כלומר, זהו המונח המשמש למערכת מחשבים המכילה שני אזורים נפרדים: לפקודות או הוראות ולנתונים. לכן התפקיד העיקרי של ארכיטקטורה זו הוא לאחסן את הנתונים המופרדים פיזית, לספק נתיבי אות שונים להוראות ולנתונים.
מקור: מ- Nessa los - עבודה משלו, CC BY-SA 3.0, commons.wikimedia
בארכיטקטורה זו, גם הפורמט וגם המדיה של שני מקטעי המערכת הללו יכולים להיות לא שווים, מכיוון ששני החלקים מורכבים משני מבנים נפרדים.
כמה דוגמאות לארכיטקטורות של הרווארד כוללות מערכות מחשב מוקדמות, בהן הוראות התוכנית יכולות להיות על מדיום אחד, למשל על כרטיסי אגרוף, ונתונים מאוחסנים יכולים להיות על מדיום אחר, למשל, על קלטות מגנטיות.
יישומים
ארכיטקטורה מסוג זה כוללת יישום נרחב במוצרי עיבוד וידאו ושמע. עם כל כלי לעיבוד וידאו ושמע ניתן לראות את הדמות של ארכיטקטורת הרווארד.
התקנים אנלוגיים מעבדי Blackfin הם המכשיר הספציפי בו מצא את השימוש העיקרי שלו. במוצרים מבוססי שבבים אלקטרוניים אחרים, הארכיטקטורה של הרווארד נמצאת בשימוש נרחב.
עם זאת, מרבית המחשבים משתמשים בארכיטקטורת פון נוימן ומעסיקים במטמון מעבד כדי להשיג חפיפה.
מָקוֹר
עבודה שבוצעה באוניברסיטת הרווארד בשנות הארבעים בהנהגתו של הווארד אייקן יצרה מחשב מקורי מבוסס ממסר, המכונה הרווארד מארק הראשון, וזה המונח ממנו קם המושג אדריכלות הרווארד.
מחשב זה השתמש ביחידות זיכרון נפרדות כדי לאחסן נתונים והוראות. ואז חלה התפתחות משמעותית בארכיטקטורה זו.
אייקן עודד את השימוש בזיכרונות נפרדים למידע ולהוראות תוכנית, עם אוטובוסים נפרדים לכל אחד.
הארכיטקטורה המקורית של הרווארד שמרה בדרך כלל הוראות על קלטות אגרוף ונתונים על דלפקים אלקטרומכניים.
אחסון הנתונים של מכונות מוקדמות אלה היה כולו בתוך יחידת העיבוד המרכזית. מצד שני, הם לא נתנו גישה לאחסן את ההוראות כנתונים. מפעיל היה צריך לטעון את התוכניות.
ארכיטקטורה של הרווארד יכולה לעבד נתונים ולבצע הוראות במקביל, מכיוון שלכל אחד מהם יש אוטובוס כתובת משלו.
דֶגֶם
מודל זה מאופיין בכך שאוטובוסים המידע והאחסון מופרדים פיזית עבור הנתונים וקוד התוכנית.
מכיוון שהאוטובוסים פועלים באופן אוטונומי, ניתן לקבל הוראות נתונים ותוכניות בו זמנית ובכך לשפר את המהירות על פני תכנון האוטובוסים היחיד.
לכן, מודל הרווארד מתגלה כמורכב יותר. עם זאת, קיום האוטובוסים באופן עצמאי נמנע מצוואר הבקבוק המיוצר על ידי האדריכלות פון נוימן.
מחשב יכול להיות מהיר יותר למעגל בעל מורכבות מסוימת, מכיוון שחיפוש אחר הוראות וגישה לנתונים אינו צריך להילחם על אוטובוס זיכרון יחיד.
לעבודה יש שתי כתובות זיכרון. לכן קיים פנקס זיכרון להוראות מכונה ורשם זיכרון נוסף לנתונים.
בניגוד לארכיטקטורת פון נוימן, המשתמשת באוטובוס בכדי להעביר הן הוראות והן נתונים בזיכרון, ארכיטקטורת הרווארד משתמשת בזיכרון אחד לצורך נתונים ואחרת להוראות.
אדריכלות הרווארד שונה
במחשבים של ימינו אין פילוג פיזי של אזורי הזיכרון המשמשים תוכניות ונתונים. מסיבה זו ניתן לומר כי מבחינה טכנולוגית יש להם ארכיטקטורת פון נוימן.
עם זאת, הארכיטקטורה המשונה של הרווארד משמשת לייצוג הטוב ביותר של המחשבים של ימינו.
למרות שיחידות העיבוד הנוכחיות חולקות זיכרון, יש להם אלמנטים מסוימים, כגון הוראות ייחודיות, המונעים הסתבכות של נתונים עם ההוראות. זה נקרא אדריכלות הרווארד שונה.
לפיכך, בארכיטקטורת הרווארד שהשתנה יש שני אוטובוסים נפרדים, אחד לקוד ואחד לנתונים, אך הזיכרון עצמו הוא מרכיב משותף פיזית.
בקר הזיכרון הוא היכן שהשינוי יושב, מכיוון שמכשיר זה הוא זה שמטפל בזיכרון ואופן השימוש בו.
עיצובים מודרניים ממוחשבים נתמכים על ידי הארכיטקטורה המשונה של הרווארד. הם משמשים בבקרי מיקרו ובעיבוד אותות דיגיטליים.
כיצד עובדת אדריכלות הרווארד?
לארכיטקטורה של הרווארד אזורי כתובת זיכרון שונים לתוכנית ולנתונים.
התוצאה היא היכולת לתכנן מעגל בצורה כזו שניתן להשתמש באוטובוס ומעגל בקרה לטיפול בזרימת המידע מזיכרון התוכנית ובנפרד נפרד לטיפול בזרימת המידע לזיכרון הנתונים.
השימוש באוטובוסים נפרדים פירושו כי ניתן לאחזר ולהוציא לפועל תוכנית ללא הפרעה על ידי העברת מדי פעם לזיכרון נתונים.
לדוגמה, בגרסה פשוטה של ארכיטקטורה זו, יחידת שחזור התוכנית עשויה להיות עסוקה באחזור ההוראות הבאה ברצף התוכנית ובמקביל לבצע פעולת העברת נתונים שיכולה הייתה להיות חלק מההוראות הקודמות של התוכנית. .
ברמה זו, לארכיטקטורה של הרווארד יש מגבלה, מכיוון שבדרך כלל לא ניתן להכניס קוד תוכנית לזיכרון נתונים ולבצע אותו משם.
תוספות באדריכלות
ניתן להוסיף גרסאות קיימות רבות ומסובכות יותר לצורה הפשוטה של אדריכלות הרווארד.
תוספת נפוצה היא הוספת מטמון הוראות לאוטובוס הנתונים של התוכנית, ומאפשרת ליחידת ביצוע ההוראות גישה מהירה יותר לשלב הבא בתוכנית, מבלי שתצטרך לעבור לזיכרון איטי יותר כדי להגיע לשלב. של התוכנית בכל פעם שהיא נדרשת.
כתובות זיכרון
למחשב אדריכלות של הרווארד יש אזורי הוראות וכתובות נתונים שונות: כתובת ההוראות האחת אינה זהה לזה של כתובת הנתונים.
כתובת ההוראות יכולה להכיל ערך של עשרים וארבעה סיביות, בעוד שכתובת נתונים אחת יכולה להצביע על בייט של שמונה סיביות, שאינו חלק מאותו ערך של עשרים וארבעה סיביות.
מערכת זיכרון
מכיוון שיש אזור זיכרון נפרד להוראות ונתונים, המפריד בין האותות לבין אחסון הזיכרון של הקוד והנתונים, הדבר מאפשר גישה בו זמנית לכל אחת ממערכות הזיכרון.
יתרון
- יש פחות סיכוי לשחיתות בהעברה, מכיוון שמועברים נתונים והוראות באמצעות אוטובוסים שונים.
- גישה לנתונים והוראות הנה באותה דרך.
- מאפשר הוראות ומידע על אמצעי אחסון שונים. לדוגמה, אתה יכול להכניס את ההוראות ל ROM לא יקר והנתונים ב- RAM יקר.
- שני הזיכרונות יכולים להשתמש בגדלי תאים שונים, ובכך לעשות שימוש יעיל במשאבים.
- יש לו רוחב פס גדול יותר של זיכרון, וזה צפוי יותר בכך שיש לו זיכרונות נפרדים להוראות ולנתונים.
רמת הגנה
במערכות שאין בהן יחידת ניהול זיכרון, היא מציעה רמת הגנה נוספת, מכיוון שלא ניתן להפעיל נתונים כקוד, וחושפת את המערכת לבעיות רבות, כמו הצפת מאגר.
זו הסיבה שהיא פופולרית בקרב מערכות משובצות קטנות, כמו מיקרוגל או שעון.
מהירות גבוהה יותר
ארכיטקטורת הרווארד יכולה לקרוא הוראות וגם לגשת לזיכרון נתונים בו זמנית במהירות מהירה.
היא מציעה ביצועים גדולים יותר, מכיוון שהיא מאפשרת לקבל נתונים בו-זמנית והוראות והוראות בזיכרונות נפרדים ולנסוע באוטובוסים שונים.
ארכיטקטורה של הרווארד בדרך כלל תסייע למחשב עם רמת מורכבות מסוימת לרוץ מהר יותר מארכיטקטורת פון נוימן, כל עוד אין צורך לחלוק משאבים בין זיכרונות קוד לזיכרון נתונים.
אם מגבלות סיכות או גורמים אחרים מאלצים את השימוש באוטובוס יחיד כדי לגשת לשני מרחבי הזיכרון, סביר להניח כי יתרונות אלה בטלים במידה רבה.
חסרונות
מורכבות רבה יותר ועלות
הבעיה עם ארכיטקטורת הרווארד היא המורכבות והעלות הגדולה שלה מכיוון שבמקום אוטובוס נתונים אחד, כעת יש צורך בשניים.
ייצור מחשב עם שני אוטובוסים יקר בהרבה ונדרש זמן רב לייצור. זה דורש יחידת בקרה לשני אוטובוסים, שהיא יותר מורכבת, זמן רב ויקר לפיתוח.
המשמעות היא יישום מורכב יותר עבור היצרנים. זה דורש יותר סיכות במעבד, לוח אם מורכב יותר וצורך לשכפל שבבי זיכרון RAM, כמו גם עיצוב מטמון מורכב יותר.
שימוש מועט
הארכיטקטורה של הרווארד אינה בשימוש נרחב, מה שמקשה על היישום. זו הסיבה שהוא משמש לעיתים נדירות מחוץ למעבד.
עם זאת, לעתים קרובות משתמשים בארכיטקטורה זו בתוך המעבד לניהול המטמון שלה.
שימוש לרעה במרחב הזיכרון
כאשר יש מקום פנוי בזיכרון הנתונים, לא ניתן להשתמש בו לאחסון הוראות ולהיפך.
לכן, יש לאזן בזהירות את הזיכרונות המסוימים המוקדשים לכל אחד מהם בייצורם.
הפניות
- הבדלי רשימה (2019). ההבדל בין פון נוימן לארכיטקטורה של הרווארד? נלקח מ: listdifferences.com.
- מגזין PC (2019). הגדרה של: ארכיטקטורת הרווארד. נלקח מ: pcmag.com.
- Techopedia (2019). אדריכלות הרווארד. לקוח מ: ceilingpedia.com.
- סקוט ת'ורנטון (2018). מה ההבדל בין ארכיטקטורות פון-נוימן להרווארד? טיפים למיקרו-בקר. נלקח מ: microcontrollertips.com.
- ויקיפדיה, האינציקלופדיה החופשית (2019). אדריכלות הרווארד. נלקח מ: en.wikipedia.org.
- המתכנת המטורף (2019). ההבדל בין פון נוימן לארכיטקטורה של הרווארד. נלקח מ: thecrazyprogrammer.com.