1 / 16

תכונות ומגבלות של מערכות עקיבה

תכונות ומגבלות של מערכות עקיבה. מערכות העקיבה מומשו עד כה באמצעות זיכרון סופי, ולכן מספר המצבים הוא סופי. מכונות כאלו קרויות Finite State Machine (FSM) . האם ניתן לחשב באמצעות מכונה כזו כל חישוב שהוא? האם ניתן לממש באמצעותה כל טרנספורמציה רצויה על הקלט?

Download Presentation

תכונות ומגבלות של מערכות עקיבה

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. תכונות ומגבלות של מערכות עקיבה • מערכות העקיבה מומשו עד כה באמצעות זיכרון סופי, ולכן מספר המצבים הוא סופי. מכונות כאלו קרויות Finite State Machine (FSM). • האם ניתן לחשב באמצעות מכונה כזו כל חישוב שהוא? האם ניתן לממש באמצעותה כל טרנספורמציה רצויה על הקלט? • התשובה כמובן שלילית: מספר המצבים הסופי מטיל מגבלה על יכולת החישוב. • נניח כי למכונה n מצבים, והקלט הוא סדרה של 1–ים, ארוכה מ- n. עם קריאת הקלט המכונה תעבור על סדרת מצבים • נקבל, לראשונה, St(i)=St(j)עבור 0i<jn. • מובן שהמכונה תמשיך מ- St(i) ומ- St(j) באותה סדרת מצבים (הרי הקלט הוא אותו קלט בשני המקרים). • באותו אופן, המכונה גם תייצר אותו פלט בשני המקרים. • במילים אחרות, אנו מקבלים פלט מחזורי !

  2. משפט: מכונה בעלת מספר מצבים סופי מפיקה יציאה מחזורית תחת קלט מחזורי, למעט "זמן‑מעבר" סופי. הוכחה: נניח שלמכונה n מצבים ואורך המחזור של סדרת הקלט הוא k סיביות. נבדוק מהו מצב המכונה בכל פעם שמחזור הקלט מתחיל מחדש (כלומר בכל k סיביות קלט). לאחר n+1 מחזורי קלט לכל היותר, לפחות שני מצבים יהיו זהים: מאחר ששני המצבים זהים וסדרת הקלט זהה, גם סדרת הפלט תהייה זהה. לכן גם סדרת הפלט מחזורית. מ.ש.ל. משפט זה גורר שחישובים מסויימים אינם ניתנים למימוש באמצעות מכונה סופית.

  3. דוגמה: תכנן מכונה המוציאה z=1 אם"ם מספר ה- 1–ים שווה למספר האפסים. למשל: נניח שקיימת מכונה עם n מצבים המבצעת את הנדרש. נספק לה את הקלט על המכונה להוציא 1 לראשונה רק עם תום קריאת הקלט. אולם, כיוון שאורך סדרת האפסים הואn+1, המכונה נכנסה למחזור, ולכן תוציא 0!

  4. דוגמה: תכנן מכונה המוציאה z=1 אם"ם מספר ה- 1–ים בכניסה הוא ריבוע שלם. נניח כי אכן קיימת מכונה כזו. כי אז, תחת סדרת-קלט של 1–ים, היתה מוציאה סדרת הפלט איננה מחזורית: עבור כל מספר n, המועמד להיות מחזור, קיים ko כך שעבור: כלומר יהיו רצפים של n אפסים, למרות שהסדרה איננה זהותית 0! מסקנה: המכונה הנ"ל איננה ניתנת למימוש במספר סופי של מצבים.

  5. דוגמה: תכנן מכונה המוציאה z=1 אם"ם המספר הבינרי המתקבל באופן טורי בקלט מתחלק ב- 5 ללא שארית (ה-msb נכנס ראשון). דוגמה: תכנן מכונה המוציאה z=1 אם"ם המספר הבינרי המתקבל באופן טורי בקלט מתחלק ב- 5 ללא שארית (ה-msb נכנס ראשון). מכונה זו ניתנת למימוש. יש לזכור רק את השארית בחלוקה ב-5 של המספר שנקרא עד כה. מכונה זו ניתנת למימוש. יש לזכור רק את השארית בחלוקה ב-5 של המספר שנקרא עד כה. נניח שהמספר שהתקבל עד כה הואx והשארית היא 0, וכעת מגיעה הסיבית הבאה. המספר החדש שווה בערכו ל-2x (x הוזז שמאלה בסיבית אחת) ועוד 0 (אם הסיבית החדשה היא0) או 2x+1(אם הסיבית החדשה היא 1).השארית החדשה היא 0 או 1, בהתאמה. במקרה הראשון היציאה צ"ל 1. אם, לעומת זאת, השארית של חלוקתx ב-5 היא 1. אזי השארית של 2x היא 2 ושל 2x+1 היא 3, וכן הלאה:

  6. מה קורה אם ה- lsb נכנס ראשון, כלומר הסבית החדשה היא תמיד ה-msb? האם עדיין ניתן לממש את המכונה באמצעות מספר סופי של מצבים? כן!!!

  7. דוגמה: תכנן מכונה המוציאה z=1 אם"ם המספר הבינרי המתקבל באופן טורי בקלט מתחלק ב- 5 ללא שארית (ה-lsb נכנס ראשון). נניח שהמספר שהתקבל עד כה הוא בן n סיביות, ערכו x ו- x(mod 5)=k. את סיביות הקלט נסמן ב-bi כאשר b0 היא ה-lsb. בעקבות הגעת הסיבית הבאה, bn, המספר החדש שווה ל- x+bn∙2n. נשים לב כעת לשתי עובדות חשובות: • 2n (mod 5) = 1,2,4,3,1,2,4,3,… (n=0,1,2,…) • (x+y)(mod 5) = (x(mod 5) + y(mod 5))(mod 5) לפיכך, ניתן לממש את הפונקציה הנדרשת בעזרת מכונת מצבי סופית. המצב יורכב מהשילוב של (x (mod 5), n (mod 4)). כלומר, במכונה יהיו 20 מצבים.

  8. מערכות איטרטיביות ניתן ליישם את שיטת התכן של מערכות עקיבה גם לסוג מסויים של מערכת צירופית, הקרוי מערכת איטרטיבית. זהו מעגל בו מחוברים מספר רכיבים (צירופיים) זהים בטור. הרעיון הוא "לפרוש" מערכת עקיבה המתקדמת בציר הזמן למערכת איטרטיבית הנפרשת במרחב. מערכת איטרטיבית נראית כך באופן כללי: כל הכניסותxij נכנסות במקביל (בו-זמנית), כמו בכל מערכת צירופית. התא ה-i הינו החלק הצירופי של מערכת עקיבה המבצעת את אותה המשימה.

  9. דוגמה: תכנן את גלאי המחרוזת 0101 (מן השיעור הקודם) כמערכת איטרטיבית. נתחיל בתכנון כאילו היה עלינו לתכנן מערכת עקיבה. כזכור, דיאגרמת המצבים היא: ובהקצאת המצבים לפי קוד גריי קיבלנו את המימוש הבא של החלק הצירופי:

  10. ובאופן כללי נסמן את התא: דוגמת מערכת בעלת 6 תאים וכניסה 010101:

  11. מה קורה כאשר סדרת הכניסה ארוכה יותר? ניתן לשלב תכנון צירופי ומערכת עקיבה. בדוגמה להלן (כמו למעלה, גילוי הסדרה 0101) נפרק את סדרת הכניסה לרביעיות, ונגיש למעגל רביעיה אחר רביעיה: הוספנו כניסת CLEAR לרכיבי הזכרון על מנת שנוכל לייצר את המצב ההתחלתי, A=00. מסקנה: סינתיזה של מערכת איטרטיבית היא כשל מערכת עקיבה.

  12. דוגמה: בנה רשת איטרטיבית בה לכל תא כניסה אחת ויציאה אחת , כך ש- אם ורק אם עד כה היו בדיוק 1 בודד או שני 1-ים בכניסות . דיאגרמת המצבים: טבלת המצבים: NS, z PS x=0 x=1

  13. הקצאת מצבים: xi=0 xi=1

  14. פונקציות העירור ופונקצית היציאה: מימוש מעגל התא:

  15. כמו בדוגמה הקודמת, המערכת האיטרטיבית ניתנת למימוש בעבור כל מספר שלk כניסות במקביל, וניתן לטפל בקלט ארוך יותר ע"י חלוקתו לקבוצות של k סיביות המוגשות למערכת בזו אחר זו:

More Related