Transcript 3-Majority
תכן לוגי 234262 1 תרגול Yossi Kuperman 2011 © שערים לוגיים (לחלק מהשערים יש סמלים מקובלים) NOT 2-OR 3-AND 2 to 1 Mux 2-XOR 2-NOR שערים לוגיים מחשבים פונקציות בוליאניות: פונקציה מהצורה .𝑓: 0,1 𝑘 → 0,1 2-NAND פונקציות בוליאניות פונקציה בוליאנית הינה פונקציה מהצורה הבאה: 𝑓: 0,1 𝑘 → 0,1 למשל ,שער 2-ANDמממש את הפונקציה הבוליאנית הדו-מקומית ( )k=2המתוארת בטבלה הבאה: )AND(a,b a,b 0 0,0 0 0,1 0 1,0 1 1,1 טבלת אמת פונקציות בוליאניות (המשך)... ניתן לתאר פונקציה בוליאנית במספר אופנים: • • • • באופן מילולי טבלת אמת נוסחה אריתמטית נוסחה לוגית לדוגמא נציג שתי פונקציות -3מקומיות שיקראו 3-Prime :ו3-Majority - פונקציות בוליאניות (המשך)... הגדרה מילולית ) 𝟎𝒙 = 3-Majority(𝒙𝟐 ,𝒙𝟏,הערך הבינארי המופיע ברוב המקומות במילה 𝑥2 𝑥1 𝑥0 3-Prime(𝒙𝟐 ,𝒙𝟏, 𝒙𝟎 )=1אם ורק אם הערך המספרי של המילה הבינארית 𝑥2 𝑥1 𝑥0הוא ראשוני. פונקציות בוליאניות (המשך)... הגדרה על ידי טבלת אמת )3-Majority(c,b,a )3-Prime(c,b,a c,b,a 0 0 0,0,0 0 0 0,0,1 0 1 0,1,0 1 1 0,1,1 0 0 1,0,0 1 1 1,0,1 1 0 1,1,0 1 1 1,1,1 פונקציות בוליאניות (המשך)... הגדרה על ידי נוסחה אריתמטית a b c 1 3 Majority ( c, b, a ) 3 2 234262 – © Dima Elenbogen 2009 Technion - IIT פונקציות בוליאניות (המשך)... הגדרה על ידי נוסחה לוגית )(aΛc )(avc v Λ )3-Prime(c,b,a) = (¬cΛb) v (aΛc )= (av¬c) Λ (bvc )3-Majority(c,b,a) = (aΛb) v (bΛc )= (avb) Λ (bvc הצורה הראשונה נקראת ) ,DNF (Disjunctive Normal Formבסלנג "סכום מכפלות". הצורה השנייה נקראת ) ,CNF(Conjunctive Normal Formבסלנג "מכפלת סכומים". כל פונקציה בוליאנית ניתנת להצגה בשתי הצורות הנ"ל. פונקציות בוליאניות מימוש על ידי לוגיקה צירופית משפט :ניתן לממש כל פונקציה בוליאנית בעזרת לוגיקה צירופית המורכבת מהשערים הלוגיים הבאים 2-AND, 2-OR, NOT :בלבד. שאלה :1האם כל שלושת השערים הנ"ל נחוצים? השער NOTהכרחי .אפשר לוותר על אחד מהשערים 2-ORאו .2-AND שאלה :2האם קיים שער יחיד שאפשר לממש בעזרתו כל פונקציה בוליאנית? כן ,יש שני שערים כאלו 2-NORו – .2-NAND 234262 – © Dima Elenbogen 2009 Busרב כיווני מספר יחידות מחוברות לקו משותף. כל היחידות מקשיבות לקו. כולן יכולות לשדר עליו ,אך לא בו-זמנית. ההיתרון הגדול של מבנה כזה הוא חיסכון בחיווט. Busרב כיווני (המשך)... שערים לוגיים משדרים תמיד על הפלט שלהם ולכן אי אפשר לחבר אותם ל .Bus - ישנם רכיבים מיוחדים שנקראים .Bus Drivers להבדיל משערים לוגים ,רכיבים אלו לא תמיד משדרים על הפלט שלהם, ולכן אפשר להשתמש בהם לשידור על קו משותף. Bus Drivers Tri-State Driver Enable 0 1 1 Data in לא משנה 0 1 Output Net נתק 0 1 Busרב כיווני (המשך)... Bus Bus Drivers Wired AND אופן העובדה של הרכיב: ’ :Input = ‘0משדר ' '0על מוצאו. ’ :Input = ‘1הרכיב מנותק מהמוצא .הערך האנלוגי על הקו נקבע על ידי רכיבים אחרים. Bus Drivers Pull-Up הרכיב משדר תמיד '.'1 אבל "עוצמת" השידור נמוכה יחסית ל – .Wired AND Driver Bus Drivers Wired-AND Bus היתרון של המבנה העליון הוא בחיווט. בדרך כלל בקורס לא נתעניין בשיקולים אלו. Bus Drivers Wired-OR & Pull-Down Wired-OR התנהגות Input Output 0 נתק 1 1 ROM Read Only Memory שיטה כללית למימוש כל פונ' בוליאניות )-(k,mמקומיות דהיינו פונקציה מהצורה: 𝑚 → 0,1 𝑘 𝑓: 0,1 לצורך העניין הפונקציה fמוגדרת על ידי טבלת אמת בת 𝑘 2מילים, כל אחת ברוחב mביטים ,לכל מילה יש כתובת בת kביטים. לכן ה ROMהמתאים יקרא: אופן העבודה של ה :ROMמקבל סדרה של kביטים המפורשת ככתובת ,בוחר את המילה המתאימה בטבלה ומשדר אותה החוצה ROM 23x2 AND-Plain OR-Plain Non-Programmable Programmable 000 001 010 011 100 101 110 111 3-Prime 3-Majority ROM 23x2 AND-Plain OR-Plain Non-Programmable Programmable c,b,a 3-Prime 3-Majority 000 001 0,0,0 0 0 0,0,1 0 0 010 0,1,0 1 0 011 100 0,1,1 1 1 1,0,0 0 0 101 1,0,1 1 1 110 111 1,1,0 0 1 1,1,1 1 1 3-Prime 3-Majority PLA Programmable Logic Array .מקומית-(k,m) אבל אי אפשר לחשב בו כל פונקציהROM – הוא יותר זול מ. לענייםROM הואPLA AND-Plain OR-Plain Programmable Programmable 3-Prime 3-Majority PLA 3-Prime(c,b,a) = (¬cΛb) v (aΛc) 3-Majority(c,b,a) = (aΛb) v (bΛc) v (aΛc) AND-Plain OR-Plain Programmable Programmable ¬cΛb aΛc cΛb bΛa 3-Prime 3-Majority תרגיל ברשותך מספר לא מוגבל של רכיבי ROMבעלי 3 כניסות ויציאה אחת (.)ROM 23x1 כמה רכיבים כאלו מספיקים כדי לממש כל פונקציה -4מקומית? תרגיל (המשך)... טענה :לכל פונקציה בוליאנית -nמקומית fוכל מילה בינארית x1, x2,…, xnמתקיים: )ƒ)x1, x2,...,xn) = ¬x1∙ƒ)0, x2,...,xn) v x1∙ƒ)1, x2,...,xn נגדיר שתי פונקציות )-(n-1מקומיות שיקראו 𝑓𝑥1=0 :ו𝑓𝑥1=1 - כדלקמן: )ƒx1 =0 (x2,...,xn) =ƒ)0, x2,...,xn )ƒx1 =1 (x2,...,xn) =ƒ)1, x2,...,xn )...(המשך תרגיל X1 ROM X2 X3 x4 ROM ƒx1 =0 ƒx1 =1 Multiplexer X2 X3 x4 )...(המשך תרגיל X1 X2 X3 x4 ROM ƒx1 =0 ROM Multiplexer (mux) X2 X3 x4 ROM ƒx1 =1