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