Registers and Counters יהודה אפק, נתן אינטרטור אוניברסיטת תל אביב מבוסס על הרצאות של יורם זינגר, האוניברסיטה העברית י"ם
יחידות סטנדרטיות המשמשות לאגירת נתונים בעזרת FF. Registers יחידות סטנדרטיות המשמשות לאגירת נתונים בעזרת FF. מחזיקות את המשתנים אשר צריכים להיות זמינים (לולאות משתנה לולאה) מאפשרים "מבחר" פעולות: הזזות "ימינה" "שמאלה" "מעגליות" טעינה פשוטה ומהירה מנייה "מעלה" "מטה" משמשים ברכיבים המהירים ביותר אבן היסוד של CPU אוגרים ל- Integers ובדר"כ אוגרים נוספים ל- Floating Point ALU CU Arithmetic Logic Unit Control Unit חובר בספטמבר 2001
אוגר 4-bit עם טעינה מקבילית שעון משותף דורש טעינה כל פעם שהשעון
אוגר 4-bit עם טעינה מקבילית ועם בקרה מימוש בעזרת SRFF LOAD = 0 אין שינוי ערך LOAD = 1 CLEAR איפוס אסינכרוני אוגר 4-bit עם טעינה מקבילית ועם בקרה
טעינה מקבילית עם בקרה -מימוש בעזרת DFF כאשר Load = 0 כניסות DFFs מקבלות את היציאות והערך הקודם נשאר
מימוש לוגיקה סדרתית ע"י אוגרים CP ערך המצב הבא מעגל צירופי יציאות כניסות load = 1 clear = 1 האוגר משמש כ"זוכר מצב" המעגל הצירופי יכול להיות ממומש ע"י: לוגיקה בדידה רכיבים סטנדרטיים Select, Mux יחידות זיכרון (ROM) LOAD ו- CLEAR קבועים כך שאין השפעה חיצונית על האוגר
דוגמא: טבלת המצבים שני משתני מצב B, A משתנה כניסה X. משתנה יציאה Y. נוכחי הבא יציאה A B X Y 1 2 3 4 5 6 7 טבלת המצבים
מימוש ע"י אוגר ושערים לוגים A D1 B D2 D3 לא בשימוש Y D4 L=1 C=1 X
אוגרי הזזה - Shift Registers n ביטים – n יחידות של FF יציאה טורית כניסה טורית MSB LSB הזזה שמאלה Serial Output (SO) Serial Input (SI) MSB LSB הזזה ימינה (defaults: 0 – pos 1 – neg ) יציאה טורית כניסה טורית MSB LSB הזזה מעגלית שמאלה MSB LSB הזזה מעגלית ימינה שימושים: כפלים/חילוקים פשוטים קודים (לינאריים) לתיקון שגיאות הצפנות...
אוגרי הזזה - מימוש פשוט אוגרי הזזה - העברה טורית SI CP SO D Q SO אוגר הזזה 4 ביטים אוגרי הזזה - העברה טורית חיבור ה – SI של אוגר "מקבל" אל ה – SO של אוגר "מוסר". דורש פעימות שעון כאורך האוגרים. שעון cp אוגר הזזה A SO SI אוגר הזזה B SO(B) CPI CPI בקרת הזזה Shift Control Word Time זמן מילה CPI T1 T2 T3 T4 A: B: SO(B): 1 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 לפני תחילת החיבור הראשון חיסכון בחומרה האטה לעומת חיבור מקבילי אות הבקרה צריך להיות "1" כל משך החיבור
מונים - Counters מעגלים סדרתיים העוברים דרך סדרת מצבים נתונה מראש Count Pulse – דופק מנייה שעון או מקור חיצוני גורמים למעבר טבלת המעברים: n מצבים שורה i שורה i+1 שורה n שורה 1 דוגמא: מונה 3 סיביות בינאריות 000 111 001 אין כניסות ויציאות מעבר מתבצע כל דופק שעון משמשים לתזמון, חלוק תדר וכו'... 110 010 101 011 100
טבלת עירור עבור מונה 3 ביט בינארי טבלת עירור – מימוש בעזרת TFF עבור מונים בינאריים כדאי להשתמש ב – TFF היות והפעולה הבסיסית הינה היפוך מצב. לדוגמא - עבור סיבית ה- least מתבצע היפוך כל פעימה טבלת עירור עבור מונה 3 ביט בינארי סדרת מנייה כניסות FF X3 X2 X1 TX3 TX2 TX1 1
באינדוקציה - עבור מונה בינארי בן i סיביות: TX1 = 1 TX2 = X1 TX3 = X1X2 X3 1 X2 X3 X1 TXi = Txi-1Xi-1 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
מונים בינאריים - ניתוח שני 1 1 Count Down מעברים 1 0 או 0 1 מתבצעים כאשר כל הביטים "הקודמים" הינם 00…0 Count Up מעברים 1 0 או 0 1 מתבצעים כאשר כל הביטים "הקודמים" הינם 11…1
מונים בינאריים - ספירה מעלה/מטה Count Up Count Down Ti = Ti-1Qi-1 Count Up Ti = Ti-1Q'i-1 Count Down T1 = 1 בכל "פעימה" -
Up Counter
Down Counter
Up-Down Counter
1 1 0 0 0 1 1 0 0
מונה כללי – דוגמא בעזרת JKFF 000001 010 100 101 110 6 מצבים 3 דלגלגים סדרת מנייה כניסות ה - FF A B C JA KA JB KB JC KC 1 לא מנוצל A B C 1 פירוט לשורה ראשונה : J K C: 0 1 (Set OR Flip) 1 B: 0 0 (Reset OR Stay) 0 A: 0 0 (Reset OR Stay) 0
מימוש: 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
חיבור טורי – מימוש בעזרת JKFF נתייחס אל הנשא מהדרגה הקודמת כאל מצב ונסתכל על טבלת העירור/מעברים מצב נוכחי Carry – Q כניסות מצב הבא Q יציאה S בקרה X Y JQ KQ 1 Cn an bn Cn+1 Sn JQ = XY KQ = X’Y’ = (X+Y)’ S = XYQ נוכל לממש את המחבר הטורי ע"י 2 אוגרי הזזה + JKFF + שערים בדידים
מימוש מסכם טורי ע"י JKFF SR - A SR - B SI הזז ימינה S SR - A SO=X CP J Q כניסה חיצונית K SR - B SO=Y Clear בקרות J,K של JKFF תלויות רק ביציאות אוגרי ההזזה.