350 likes | 676 Views
בנית שערים לוגיים באמצעות מתגים. המימוש הטכנולוגי של שערים לוגיים נעשה באמצעות טרנזיסטורים המשמשים כמתגים. לכל מתג שלושה קצוות: כניסת בקרה ( C ) ושני קצוות ( A , B ) שהמתג יכול לחבר ביניהם. נגדיר שני סוגי מתגים, P ו- N , באמצעות טבלות אמת:. בנית מהפך באמצעות מתגים.
E N D
בנית שערים לוגיים באמצעות מתגים • המימוש הטכנולוגי של שערים לוגיים נעשה באמצעות טרנזיסטורים המשמשים כמתגים. • לכל מתג שלושה קצוות: כניסת בקרה (C) ושני קצוות (A,B) שהמתג יכול לחבר ביניהם. • נגדיר שני סוגי מתגים, P ו-N , באמצעות טבלות אמת:
בנית מהפך באמצעות מתגים • זוג מתגים המחוברים בטור בין הקבועים '1' ו-'0' (VPLUS, VMINUS) • כאשר A=0, מתג N מנותק ומתג P מחובר, וכך עובר הקבוע '1' ליציאה B. • כאשר A=1, מתג N מחובר ומתג P מנותק, וכך עובר הקבוע '0' ליציאה B. .
Three (Tri)-State Inverter • Three-State Inverter • נגדיר שער חדש באמצעות מתגים: • כאשר =1Enable פועל השער כמו NOT רגיל • כאשר =0Enable מנותקת יציאתו B, והשער איננו מסוגל לכתוב ערך לוגי על היציאה. • זהו "המצב השלישי": היציאה איננה '0' ואיננה '1' • השער קרוי: מהפך עם יציאה מסוגthree-state”" • או גם: מהפך עם יציאת HIGH-Z. • נסמן את השער החדש בסימון: • באותו אופן ניתן לבנות כל שער לוגי שיש לו יציאת three-state”"
Three-State Bus • ניתן לחבר יחד יציאות של מספר שערי 3-state כאלו • היציאה המשותפת קרויה BUS (עורק) • שער אחד לכל היותר רשאי לכתוב בו זמנית על היציאה המשותפת • מפענח יבטיח שלכל היותר אחד מן השערים יכתוב על ה-BUS בו זמנית • אם יש למפענח כניסת Enable אזי אם Enable=0 כל יציאות המפענח הן '0' ואף שער אינו כותב על ה-BUS
Three-State Bus • המערכת כולה (אוסף השערים, ה-BUS, והמפענח) שקולה לבורר. • BUS עשוי להיות מהיר יותר במקצת מאשר בורר, אך יתרונו העיקרי טמון בפשטותו: • בורר מצריך פרישת חוטים רבים • BUS מכיל חוט יחיד. • המפענח בדרך כלל ממומש באופן מבוזר, ולכל היותר דרושים log(K) חוטים להעברת אותות הבקרה.
Three-State Bus • מימוש BUS עם מפענח מבוזר: • BUS של N חיבורים • רק 2log(N)+1 קווי בקרה מועברים לכל השערים
2-bit three-state bus • קווי הבקרה משותפים • סימון מקוצר ל-BUS מרובה סיביות: BUS[0:15] 16
Wired-AND Bus • קיים סוג נוסף של BUS , הנבדל מקודמו רק בדרך המימוש. • נגדיר שני שערים חדשים: • שער pull-down הוא החצי התחתון של שער NOT • שער pull-up הינו החצי העליון:
Wired-AND (pull-down) Bus • הכניסה של שערי pullup/pulldown יכולה לבוא מימין או משמאל • היציאה מחוברת ל-Bus בכיוון מעלה-מטה. • Bus המורכב כולו משערי pull-down פועל כלהלן: • אם יש '1' בכניסה של שער אחד או יותר, ערכו של ה-Bus הוא '0'. • אחרת, ערכו של ה-Bus הוא '1' (התקן מיוחד, המסומן כקופסה מרובעת בציור, מחובר אל ה-Bus ומבטיח את קיום ברירת המחדל). • pull-down Bus מממש פונקציה של שער NOR(או לפי דה-מורגן פונקצית AND)
Wired-OR (pull-up) Bus • באופן דומה, Bus המורכב כולו משערי pull-up פועל כלהלן: • אם יש '0' בכניסה של שער אחד או יותר, ערכו של ה-Bus הוא '1'. • אחרת, ערכו של ה-Bus הוא '0' (התקן מיוחד, המסומן כקופסה מרובעת בציור, מחובר אל ה-Bus ומבטיח את קיום ברירת המחדל). • לכן pull-up Bus מממש פונקציה NAND, (או לפי דה-מורגן OR)
Programmable Logic Array (PLA) • מימוש רגולרי יעיל של מספר פונקציות של אותן כניסות • שימוש חוזר במכפלות המשותפות • Wired-AND Buses (המאורגנים ב"מישור AND") משמשים לחישוב המכפלות • "מישור OR" המורכב מ- Wired-OR Buses משמש לסיכום המכפלות ליצירת הפונקציות. • למשל, מימוש הפונקציה f=AB+CD יראה כלהלן:
Programmable Logic Array (PLA) • בדרך כלל משתמשים במערך PLA מוכן מראש • יש רק לבחור אילו שערים משתתפים במימוש = "תכנות" של ה- PLA. • לפשטות הסימון מסמנים רק את המקומות של השערים המשתתפים. • למשל:
Programmable Logic Array (PLA) • אפיון PLA: • מספר משתני הכניסה (5) • מספר המכפלות האפשריות (6) • מספר היציאות האפשריות (3)
Field Programmable Gate Array (FPGA) • רכיב המכיל מספר גדול של: • טבלאות אמת • תאי זיכרון • קווי חיבור ביניהם העוברים דרך מתגי ניתוב • קווי קלט/פלט אל העולם החיצון • פעולה: • טבלאות האמת מאפשרות מימוש לוגיקה צירופית כלשהי • תאי הזיכרון מאפשרים שמירת מצב. • המתגים מאפשרים יצירת חיבוריות כרצוננו. • בסה"כ, רכיב מתכנת המאפשר ליצור מערכות מורכבות ללא עלויות ייצור רכיב ייעודי
Read Only Memory (ROM) • ROM -- רכיב (מערך רגולרי של) זיכרון הכולל: • תאי זיכרון קבוע (בעצם חיבורים קבועים ל-'0' או '1') • קווי כניסה ("קווי הכתובת") לבחירת תא זיכרון מסוים • קו יציאה לקריאת ערכו של תא הזיכרון שנבחר. • יתרון: המידע אינו נמחק עם כיבוי המתח החשמלי • לכן ה-ROM משמש לאחסון מידע קבוע (כגון התוכנה שמסייעת להתחלת הפעולה של מחשב, מיד לאחר שמדליקים אותו). • חסרון: לא ניתן לשנות את התוכן (לכתוב לזיכרון) • לחילופין, ROM מממש טבלת אמת של פונקציה: • משתני הפונקציה מוכנסים על קווי הכתובת • ערך הפונקציה מופיע במוצא.
Read Only Memory (ROM) מימוש עם בורר one word storage
Read Only Memory (ROM) • מימוש עם BUS • יתרון: פחות קווי בקרה בתוך המערך • חסרון: כל תא מכיל שער גדול • כדאי להשוות את שני השיקולים ולבחור בהתאם one word storage
Read Only Memory (ROM) מערך חד-מימדי עם מפענח וPull-down bus - one word storage
n m Read Only Memory (ROM) מבנה עקרוני שלROM דו-ממדיבעל n+m קוי כתובת (2n+m תאי זכרון): one word storage יש רכיב pull-downבכל צומת השייך לכתובת בה אגור '0' אין רכיב pull-downבכל צומת השייך לכתובת בה אגור '1'. הכתובת מחולקת לשני חלקים:
מימוש דו-מימדי שלROM • נניח כתובת של n+m סיביות • מימוש עם BUS יחיד כולל 2m+n חיבורים ל-BUS • עומס גדול מידי על שערי 3state • מפצלים ל-2mbuses, לכל bus מחוברים 2n תאי זיכרון • כל ה-buses מחוברים ל-bus יציאה אחד • מימוש דו-ממדי מאפשר קריאת כתובות זיכרון עוקבות במהירות רבה, כאשר משנים רק את m סיביות הכתובת של bus היציאה • אפשרי גם מימוש עם בוררים (לעתים הוא יעיל יותר, נראה כזה בהמשך)
Read Only Memory (ROM) רכיב הזכרון מכיל את פונקצית הראשוניות של מספרים בני 6 סיביות: בכתובת – מספר ביציאה – חיווי האם המספר ראשוני יש 26=64 כתובות בזכרון. למשל, 11 מיוצג ע"י 001011: שלוש הסיביות השמאליות (001) מצביעות על שורה 1, ושלוש הסיביות הבאות (011) בוחרות את עמודה 3. המספר 6 (000110) נמצא בשורה 0, עמודה 6.
Read Only Memory (ROM) • רכיבי ROM מחולקים לשלוש מחלקות, בהתאם לאופן בו המידע מתוכנת אליהם: • ROM - מיוצר עם תוכן מקודד שאינו ניתן לשינוי. • Programmable ROM (PROM)– ניתנים לתכנות חד-פעמי ע"י המשתמש. בטכנולוגיה הנפוצה כיום, אותות התכנות "שורפים" חיבורים ברכיב, ולכן התכנות הוא חד פעמי ובלתי הפיך. • Erasable PROM (EPROM)– ניתנים להחזרה למצבם המקורי על ידי חשיפה לאור אולטרה-סגול או על ידי חיבור למתח חשמלי גבוה, ואז לתכנות מחדש. • תהליכי הכתיבה והמחיקה של PROM ו- EPROM הם בסדרי גודל יותר איטיים מאשר תהליך הקריאה, ואינם מיועדים לשימוש שוטף. • בדרך כלל, רכיב כזה משמש כ- ROM לכל דבר. לעיתים משתמשים ברכיבי EPROM (או רכיבים דומים, הקרויים Flash Memory) לאחסון תכנה ונתונים הניתנים לעדכון והחלפת גרסה אחת למספר חודשים.
Random Access Memory (RAM) • תא זכרון בסיסי: • מאפשר קריאת תוכנו בכל זמן • מאפשר כתיבה כאשר WE=1 • הערך על Data In נכתב לתוך התא והופך להיות תוכנו מאותו זמן
RAM חד-מימדי (דלת אחת, single port) • אותה כתובת לכתיבה וקריאה • אפשרי גם עם buses
RAM חד-מימדי (dual port: read, write) What happens when: • Different Read and write address ? • Same read and write address ?
RAM חד-מימדי: שיפורים • על ידי הוספת בורר נוסף ביציאה, ניתן לבצע פעולת כתיבה ושתי פעולות קריאה בו זמנית. • על ידי שימוש ב- n עותקים של הזיכרון והבוררים ביציאה ניתן לבנות זיכרון למילים בנות n סיביות (אין צורך לשכפל את המפענח בכניסה). • לצורך בניית זיכרונות גדולים משתמשים בד"כ בטכנולוגיות אחרות (למשל במערכי קבלים של זיכרונות DRAM שהמטען בהם מייצג סיביות של מידע).
מימוש דו-ממדי של RAM • במערך מטריצה של קווי בקרה: • 2m שורות • 2n עמודות • בכל תא יש שער AND המשלב את קווי הבקרה של השורה והעמודה ויוצר select לתא • שני המפענחים + הלוגיקה אותה הם מזינים מממשים בורר (MUX) • ניתן לממש גם עם buses, אבל אז בכל תא יש שער AND גדול יותר. • בדרך כלל שני קווי בקרה ושער AND קטן תופסים פחות מקום מאשר m או n קווים ושער גדול...
גילוי תקלות בזכרונות • שיטת הסריקה איננה מתאימה לזיכרונות. • שיטה אפשרית אחרת היא לכתוב לכל תא בזיכרון, לקרוא אותו, ולהשוות את מה שנכתב למה שנקרא. • יש צורך לחזור על כך עם תוכן שונה בכל פעם, בכדי לבדוק תקלות שונות התלויות בתוכן הנכתב. זהו תהליך ארוך ויקר. • במקום זאת משתמשים במכונות מצבים המייצרות תוכן אקראי לכאורה, כותבות לזיכרון וקוראות בחזרה. • משתמשים בקודים לגילוי שגיאות, הפוטרים את מכונת המצבים מלזכור מה נרשם לתוך הזיכרון • המכונה יכולה לחשב האם הייתה שגיאה (כלומר תקלה) על פי התוכן הנקרא.
גילוי תקלות בזכרונות (המשך) • מכונות אלו בנויות יחד עם הזיכרון והפעלתן איננה דורשת מכשיר בדיקה חיצוני. שיטה זו קרויהTest (BIST) Built In Self • ניתן להוסיף לכל זיכרון כמות קטנה של זיכרון רזרבי: • המכונה לגילוי התקלות יכולה לתכנת את הזיכרון כך שאזור זיכרון שיש בו תקלה יוחלף בזיכרון רזרבי. • שיטה זו קרויה Built In Self Repair (BISR) והיא נפוצה מאוד במוצרי זיכרון שונים.