תוכן עניינים:

סקירה כללית של מחשב 8 סיביות על לוח קרשים: 3 שלבים
סקירה כללית של מחשב 8 סיביות על לוח קרשים: 3 שלבים

וִידֵאוֹ: סקירה כללית של מחשב 8 סיביות על לוח קרשים: 3 שלבים

וִידֵאוֹ: סקירה כללית של מחשב 8 סיביות על לוח קרשים: 3 שלבים
וִידֵאוֹ: ככה זה כשיש לך חברה רוסיה 2024, יולי
Anonim
סקירה כללית של מחשב 8 סיביות על לוח קרשים
סקירה כללית של מחשב 8 סיביות על לוח קרשים

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

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

שלב 1: מחקר לאורך כל הדרך

מחקר בדרך
מחקר בדרך
מחקר בדרך
מחקר בדרך

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

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

אחת הסיבות האחרונות ממחקר בפרויקט זה הייתה הבנת ההבדלים במפרט בין שבבים דומים. פעמים רבות מצאתי שבבים עם אותם ערכי מזהה אך אותיות תיאור שונות כמו LS ו- HC. מה שלמדתי היה שזה לא רק ייצור תוויות, אלא גם תזמון ומפרט הספק לגבי השבבים. למרבה המזל, מכיוון שהמחשב שלי השתמש ברכיבים נמוכים למדי, בעלי סובלנות גבוהה, לא הייתי צריך לדאוג להתאמת מפרטים רבים, אך בעיצוב ברמה גבוהה יותר למדתי שדברים כמו מהירות השעון ושאיבת חשמל הם קריטיים להצלחתו או לכישלונו של אלקטרוניקה. לְעַצֵב

שלב 2: נתקלו בקשיים

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

שלב 3: הישגים והשתקפות

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

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

מוּמלָץ: