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

    הרשמה /

מחפש מידע על דרך פעולת מחשב

Dexter

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

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

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

http://webcourse.cs.technion.ac.il/234118/Winter2007-2008/en/ho.html
כאן יש חומרים מקורס את"מ של הטכניון. עקרונית, זה קורס של אסמבלי, אבל יש שם גם דיבורים על החומרה. אמנם הם ברובם נעשו בהרצאות ולא בתרגולים (את ההרצאות אין באתר), אבל זה גם משהו.

מהכוון האחר, יש לך את הקורס מערכות ספרתיות ואחריו תכן לוגי, שבאים מכוון של מעגלים חשמליים ובונים את דרכם למעלה.
http://moodle.technion.ac.il/course/view.php?id=694 - מערכות ספרתיות (תלחץ על כניסה בתור אורח, הוא אמור לאשר לך)
http://webcourse.cs.technion.ac.il/234262/Winter2007-2008/en/ho.html - תכן לוגי, ההמשך למערכות ספרתיות

ברמה יותר גבוהה יש לך את מבנה מערכות ספרתיות: http://webcourse.cs.technion.ac.il/234267/Spring2008/en/ho.html
לקורס הזה עוד לא הגעתי ואני לא יכול להגיד אם יש לו דרישות מעבר לקורסים הרשומים לעיל.
 
תודה רבה, אבל אני צריך את זה יותר להרצאה קצרה (מאוד), וזה קורס שלם אני מניח. יש אולי מבואות?

עריכה:
רק רציתי לבקש, אם אפשר, לתת מידע על איך זיכרון הRAM עובד ואיך הוא מבצע אינטרקציה עם חלקי המחשב השונים?
 
תוכל להיות מעט יותר ממוקד לגבי מה אתה צריך?
ובפרט - מה הבעיה עם החומר בויקי , איזה רמה של טקסט אתה צריך ואיזה חלק של פעולת ה RAM מעניין אותך (קריאה\כתיבה בחומרה של flip flop בודד? בקשות קריאה כתיבה של בלוק? גישה למטמון? מעבר על ה bus?)
 
כרגע אני צריך ממש מידע על הRAM, ובגלל שאין לי מושג מה כל מה שאמרת אומר, אני בעצם רוצה קצת מידע על כל אחד מהדברים שאמרת. בעיקרון, לתת מעין תמונה כללית של פעולות הזיכרון ותפקידו במכונה שנקראית "מחשב".
 
flip flop הוא היחידה הבסיסית של הזכרון, ומורכב מכמה שערים לוגיים (אני מניח שאתה יודע מה אלה) שמחוברים במעיין לולאת היזון חוזר לעצמם, וככה שומרים על ערך יציב בתוכם (לפחות בתיאוריה. למעשה הם מאבדים זרם בגלל התנגדות, וצריך לרענן אותו כל כמה מילישניות).

הסבר יותר מפורט יש בקישורים הבאים:
http://wearcam.org/ece385/lectureflipflops/flipflops/ http://www.play-hookey.com/digital/rs_nand_latch.html

flip flop בעצם מייצג לנו ביט בודד של זכרון (הוא יכול להכיל בתוכו 0 או 1, מן הסתם). אם מחברים כמה כאלה ביחד, אפשר ליצור "תאים" של זכרון.
אם נשים קבוצה גדולה שלהם ביחד, נקבל בעצם מבנה בסיסי של זכרון. כדי שנוכל לבחור אל איזה תא לכתוב, או מאיזה תא לקרוא, משתמשים במבנה חומרה שנקרא multiplexer (מרבב, בעברית, אאז"נ) שנותן לנו להכניס את מספר התא שאנחנו רוצים לעבוד איתו. המספר הזה הוא בעצם ה"כתובת" של התא.

שוב, הסבר יותר מפורט פה:
http://www.doc.ic.ac.uk/~dfg/hardware/HardwareLecture12.pdf

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

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

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

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

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

הפעם , ההסבר בויקי די ברור ומספק:
http://en.wikipedia.org/wiki/CPU_cache

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

עריכה:

רק לא ברור לי, איפה נשמרות הכתובות, ואיך מוצאים את הכתובת הנכונה לכל נתון?
 
תודה רבה לכל מי שעזר, בסוף לא הייתי צריך את כל החומר הזה, (לא נתנו לי לסיים את ההרצאה, או אפילו להתחיל אותה) אבל תודה רבה שעזרתם פה!
 
חזרה
Top