אוגרים ומונים – Registers & Counters יחידות סטנדרטיות המשמשות לאגירת נתונים, ומורכבות מדלגלגים. הם מחזיקים את המשתנים אשר צריכים להיות זמינים בזמן ריצת תכנית (למשל משתני לולאה). מאפשרים מבחר פעולות: הזזות ימינה, שמאלה, מעגליות טעינה פשוטה ומהירה מנייה מעלה, מטה משמשים כיחידות הזיכרון ברכיבים המהירים ביותר. CPU ALU CU Arithmetic Logic Unit Control Unit חובר בספטמבר 2001
אוגר 4-bit עם טעינה מקבילית שעון משותף יש טעינה כל פעם שהשעון
אוגר 4-bit עם טעינה מקבילית ועם בקרה מימוש בעזרת SRFF LOAD = 0 - אין שינוי ערך LOAD = 1 - טעינה CLEAR = 0 - איפוס אסינכרוני אוגר 4-bit עם טעינה מקבילית ועם בקרה
טעינה מקבילית עם בקרה -מימוש בעזרת DFF
מימוש מעגל סדרתי ע"י אוגרים CP ערך המצב הבא מעגל צירופי יציאות כניסות load = 1 clear = 1 האוגר משמש כ"זוכר מצב" המעגל הצירופי יכול להיות ממומש ע"י: לוגיקה בדידה רכיבים סטנדרטיים (Mux, Decoder, etc.) יחידות זיכרון (ROM) LOAD ו- CLEAR קבועים כך שאין השפעה חיצונית על האוגר
דוגמה טבלת המצבים שני משתני מצב B, A משתנה כניסה X. משתנה יציאה Y. נוכחי הבא יציאה A B X Y 1 2 3 4 5 6 7
מימוש בעזרת אוגר של 4 ביט A D1 B D2 D3 לא בשימוש Y D4 L=1 C=1 X
אוגרי הזזה - Shift Registers יציאה טורית כניסה טורית הזזה שמאלה הזזה ימינה יציאה טורית כניסה טורית הזזה מעגלית שמאלה הזזה מעגלית ימינה שימושים: כפלים/חילוקים פשוטים קודים (לינאריים) לתיקון שגיאות הצפנות...
אוגרי הזזה - מימוש פשוט אוגר הזזה של 4 ביטים: SI CP D Q SO
Serial Shift Register with Parallel Load
Serial Input for RIGHT Shift 0 0 0 1 0 0 0 1 0 0 Serial Input for RIGHT Shift 0 1
Serial Input for LEFT Shift 1 0 1 1 1 0 1 1 1 0 1 1
חיבור טורי ע"י אוגרי הזזה חיבור טורי ע"י אוגרי הזזה הזז מינה SI SO SR-A X FA S OP CP cp Y כניסה חיצונית Z C SI SR-B OP SO D FF Q cp clear זמן החיבור כאורך האוגרים (1+). DFF : שומר את ה- Carry מהשלב הקודם. יש לאפס את ה- DFF לפני תחילת החישוב. חסכון בחומרה. האטה לעומת חיבור מקבילי.
מונים - Counters מעגלים סדרתיים העוברים דרך סדרת מצבים קבועה מראש. שעון או מקור חיצוני גורמים למעבר. דוגמא: מונה 3 סיביות בינאריות 000 111 001 אין כניסות ויציאות מעבר מתבצע כל דופק שעון משמשים בעיקר לבקרת תזמון 110 010 101 011 100
טבלת עירור עבור מונה 3 ביט בינארי מונה 3 ביט – מימוש בעזרת TFF עבור מונים בינאריים טבעי להשתמש ב – TFF היות והפעולה הבסיסית הנה היפוך מצב. טבלת עירור עבור מונה 3 ביט בינארי סדרת מנייה כניסות FF X3 X2 X1 TX3 TX2 TX1 1
באינדוקציה - עבור מונה בינארי בן i סיביות: TX1 = 1 TX2 = X1 TX3 = X1X2 X3 1 X2 X3 X1 1 X2 X1 באינדוקציה - עבור מונה בינארי בן i סיביות: Count Pulse TX3 TX2 TX1 T T T TX3 TX21 TX1 Q Q Q X3 X2 X1 1 O3 O2 O1 נוסחת רקורסיה:
מניה מעלה ומניה מטה Count Down 1 1 Count Down מעברים 1 0 או 0 1 מתבצעים כאשר כל הביטים מימין הנם 00…0 Count Up מעברים 1 0 או 0 1 מתבצעים כאשר כל הביטים מימין הנם 11…1
מניה מעלה/מטה T1 = 1 Ti = Ti-1Qi-1 מניה מעלה: מניה מטה: ביטוי בעזרת נוסחאות רקורסיה T1 = 1 Ti = Ti-1Qi-1 מניה מעלה: Ti = Ti-1Q'i-1 מניה מטה:
Up Counter
Down Counter
Up-Down Counter 00 - המצב נשמר 10 - מניה מעלה 01 - מניה מטה 11 - ???
מונה כללי – דוגמא בעזרת JKFF 000001 010 100 101 110 6 מצבים 3 דלגלגים סדרת מנייה כניסות ה - FF A B C JA KA JB KB JC KC 1 לא מנוצל
מימוש: JA JA = B KA = B KA JB = C KB = 1 JC = B’ KC = 1 1 B A C B 00 01 11 10 1 JA A JA = B KA = B C B 00 01 11 10 1 KA A JB = C KB = 1 JC = B’ KC = 1 C A B C Q’ Q Q’ Q Q’ Q K J K J K J cp 1 1
דיאגרמת מצבים מצב JA JB JC KA KB KC 011 1 111 100 000 000 111 001 110 010 101 100 011 מצב JA JB JC KA KB KC 011 1 111 100 000
מנה (עבור למצב הבינארי הבא) מונים – סיכום Reset - איפוס CP LOAD COUNT פונקציה/ פעולה אפס 1 אין שינוי טען כניסות מנה (עבור למצב הבינארי הבא) Load Reset L R Clock Pulse Count CP C הכללה של מניהn modulo נאתחל את המונה בערך X נאפשר מנייה עד ערך X+n-1 הערך X+n-1 יגרום לטעינה מחודשת או לאתחול של המונה
דוגמה: מניה מודולו 6 1 מונה 1 01 2 3 4 5 1 1 מונה 2 L 3 2 1 0 01 2 3 4 5 R 1 מונה 1 Clock 1 CP 3 2 1 0 C L 3 2 1 0 1 R מונה 2 3 4 5 6 7 8 Clock 1 CP 3 2 1 0 C 0 0 1 1 6 01 2 3 4 5 L 3 2 1 0 R מונה 3 (טריק מלוכלך) Clock 1 CP 3 2 1 0 C אין השפעה
ניתוח מונה 2 Load 3 Load 3 M 3 4 5 6 7 8 3 ... S 8 3 4 5 6 7 8 3 ... נאתחל את המונה בערך 3 נאפשר מנייה עד ערך 3+6-1=8 הערך 8 יגרום לטעינה מחודשת של המונה מחזור מנייה 3 .. 8
M 5 6 0 1 ... S 5 6 0 1 ... ניתוח מונה 3 Direct Preset: M0 S0 Master Count-up 5 6 M 5 6 0 1 ... S 5 6 0 1 ... Slave Count-up Ends 5 6