תקשורת סריאלית מגיש: דביר דדון מנחה: ד"ר מרטין לנד.

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

מבוא למדעי המחשב לתעשייה וניהול
1 Formal Specifications for Complex Systems (236368) Tutorial #4 Refinement in Z: data refinement; operations refinement; their combinations.
Present Progressive הווה עכשווי/ממושך.
פרוייקט מסכם-עיבוד מקבילי
מכונת מצבים תרגול מס' 4 Moshe Malka.
רקורסיות נושאי השיעור פתרון משוואות רקורסיביות שיטת ההצבה
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
Na+ P-. הפוטנציאל האלקטרוכימי אנרגיה חופשית ל - 1 mole חומר. מרכיב חשמלי מרכיב כימי מרכיבי הפוטנציאל האלקטרוכימי של חומר X: המרכיב הכימי : RTlnC x R –
שאלות חזרה לבחינה. שאלה דיסקים אופטיים מסוג WORM (write-once-read-many) משמשים חברות לצורך איחסון כמויות גדולות של מידע באופן קבוע ומבלי שניתן לשנותו.
Power Consumption Awareness by using a Pedometer המעבדה לרשתות מחשבים המעבדה לרשתות מחשבים סמסטר אביב תשס " ח סמסטר אביב תשס " ח מנחים: איתי דברן – המעבדה.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology,
1 Formal Specifications for Complex Systems (236368) Tutorial #5 Refinement in Z: data refinement; operations refinement; their combinations.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
משטר סטטי שערים לוגיים Wired Drives – © Dima Elenbogen 2009, Moshe Malka :29.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
תכנות תרגול 6 שבוע : תרגיל שורש של מספר מחושב לפי הסדרה הבאה : root 0 = 1 root n = root n-1 + a / root n-1 2 כאשר האיבר ה n של הסדרה הוא קירוב.
תרגול מספר 7 אוגרים Registers
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
ערכים עצמיים בשיטות נומריות. משוואה אופינית X מציין וקטור עצמי מציינת ערך עצמי תואם לוקטור.
מבני בקרה לולאות. שאלה #1 שאלה ב' – תכתוב תוכנה הכותבת את תפריט הבאה Type 1 to find the area of a circle Type 2 to find the circumference of a circle.
הקיבול איננו תלוי במטען ובפוטנציאל
1 תרגול : קודי קו בינאריים בסיסיים. 2 יצירת קוד קו יצירת הלמים לפי קוד קו מסנן בעל תגובה להלם h(t) ביטי כניסה X(t)Y(t) a1 a2 a3 a4 t Ts.
A. Frank File Organization Transfer Time/Rate Parameters.
Galileo Navigation System Software Systems lab Software Systems lab סמסטר חורף תשס " ט סמסטר חורף תשס " ט מנחה: ולדימיר זדורנוב משה חיות מבצעים: גליה סימנובסקי.
Remember Remember The 5 th of November. תרגול 2 קובץ סדרתי.
רגרסיה קו רגרסיה הוא קו תיאורטי המאפשר לנו לבחון את השפעתו של משתנה מנבא אחד (או יותר) על המשתנה התלוי: במילים אחרות, מודל רגרסיה עוזר לנו לנבא על פי משתנה.
מערכים עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר int grade1, grade2, …, grade20; int grade1, grade2, …, grade20;
מודל הלמידה מדוגמאות Learning from Examples קלט: אוסף של דוגמאות פלט: קונסיסטנטי עם פונקציה f ב- C ז"א קונסיסטנטי עם S ז"א מודל הלמידה מדוגמאות Learning.
עקרון ההכלה וההדחה.
יחס סדר חלקי.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב' Templates תבניות.
Markov Decision Processes (MDP) תומר באום Based on ch. 14 in “Probabilistic Robotics” By Thrun et al. ב"הב"ה.
תקשורת. ראשי פרקים ממשקי תקשורת עקרון ההדדיות תיאום מימוש תקשורת : פרוטוקולים טופולוגיות של תקשורת : טבעת, אפיק, כוכב סוגי תווכים : זוג שזור, כבל קואקסיאלי,
מערכות הפעלה ( אביב 2004) חגית עטיה © 1 תהליכים  מהו תהליך ?  מבני הנתונים לניהול תהליכים.  החלפת הקשר.  ניהול תהליכים ע " י מערכת ההפעלה.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #3 Internet Control Message Protocol (ICMP)
1 מבוא למדעי המחשב סיבוכיות. 2 סיבוכיות - מוטיבציה סידרת פיבונאצ'י: long fibonacci (int n) { if (n == 1 || n == 2) return 1; else return (fibonacci(n-1)
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
Points on a perimeter (Convex Hull) קורס – מבוא לעבוד מקבילי מבצעים – אריאל פנדלר יאיר ברעם.
בקרה תומר באום ב"הב"ה. סוגי בקרה חוג פתוח Open-loop control : אנו מכוונים את הרובוט למצב הבא שהוא אמור להיות בו לפי מודל מסוים, כמו שעשינו בקינמטיקה הפוכה.
Text to speech In Mobile Phones איתי לוי. הקדמה שימוש בהודעות טקסט על המכשירים הסלולארים היא דרך תקשורת מאוד פופולארית בימינו אשר משתמשים בה למטרות רבות,
11 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
תכנות אסינכרוני, תקשורת ופיתוח אפליקציות ל- Windows 8.1 ואפליקציות ל- Windows Phone 8 Control (Part II)
קשר לוגי : סיבה ותוצאה. במשפט – דוגמות קלות בגלל הגשם החלטנו לא לנסוע לטיול לחיפה. הרצון שלי להצליח הניע אותי להשקיע בלימודים. ציפורים נודדות בין יבשות.
פס על כל העיר נורית זרחי.
מחרוזות – הטיפוס String
אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 5 תרשימי מצבים Statecharts למחלקות תגובתיות Reactive Classes הקדמה ודוגמא.
מספרים אקראיים ניתן לייצר מספרים אקראיים ע"י הפונקציה int rand(void);
Tirgul 12 Trees 1.
מבוא למדעי המחשב סיבוכיות.
HDTV DVD HD-DVD BLU-RAY Moshe Inger April 2012.
פרק 2: השכבה הפיזית Overview Digital versus Analog communications
תקשורת ומחשוב תרגול 1 IP, Classes and Masks.
מבוסס על הרצאות של יורם זינגר, האוניברסיטה העברית י"ם
SQL בסיסי – הגדרה אינדוקטיבית
טרנזיסטור כמתג דו מצבי ממסר - RELAY הפעלה רציפה , PWM
עבודה עם נתונים באמצעות ADO.NET
אוגרים ומונים – Registers & Counters
פרוקטוז, C6H12O6 , חד-סוכר מיוחד
ממשקים - interfaces איך לאפשר "הורשה מרובה".
מהו טרנזיסטור?.
Marina Kogan Sadetsky –
תרגול 11 NP complete.
Shell Scripts בסביבת UNIX
עקרונות בסיסיים בתכנות Visual Basic
Computer Architecture and Assembly Language
Presentation transcript:

תקשורת סריאלית מגיש: דביר דדון מנחה: ד"ר מרטין לנד

תקשורת סריאלית הגדרה: תקשרות סריאלית, בין שני משתמשי קצה אשר המידע בינהם עובר באופן טורי. סריאלית = סדרתי/טורי בתקשורת סריאלית אנו מעבירים מידע באופן סדרתי, כלומר המידע עובר ביט אחר ביט (כאשר רק סיבית אחת תעבור ברגע מסוים). ההפך מתקשורת סיריאלית היא תקשורת מקבילית. בתקשורת מקבילית מספר סיביות יעברו בבת אחת ממחשב למחשב.

דוגמא לתקשורת סריאלית לדוגמא: מעוניינים להעביר מילה 10011101 בתקשורת סריאלית (טורית) בין שני מחשבים.

דוגמא לתקשורת מקבילית לדוגמא: מעוניינים להעביר מילה 10011101 בתקשורת מקבילית בין שני מחשבים.

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

תקשורת סריאלית תקשורת סריאלית מחולקת לשני סוגים - תקשורת סריאלית סינכרונית - תקשורת סריאלית אסיכרונית סינכרונית – יתואם מראש בין שני ההתקנים קצב העברת המידע על ידי שעון, כך כל דגימה של הקו ידועה מראש. כיצד? נקבע מראש את קצב השעון, וכך בכל פעם שהשעון יראה "1" לוגי אזי ההתקן המקבל ידגום את קו התקשרות. וכאשר השעון מראה "0" לוגי אזי ההתקן המוסר יעביר את המתח החשמלי בקו התקשורת.

תקשורת סריאלית אסינכרונית – אין צורך בשליחת סיגנל שעון למקבל ההודעה. בין השולח והמקבל יסוכם מראש צורת העברת המידע השולח והמקבל נמנעים לשדר רצפים ארוכים של סיביות, זאת משום שאין סנכרון מלא בין היחידה ששולחת נתונים לזו המקבלת. במקרה זה, המידע המשודר מחולק למסגרות מידעframes) , ) בגודל של בית אחד כאשר כל מסגרת כוללת סיבית Startוסיבית Stop סיבית Start מסמנת את תחילת מסגרת חדשה, וסיביתStop מסמנת את סיומה. מסגרות המידע אינן חייבות להיות משודרות במרווחי זמן שווים, מכוון שאינן תלויות בשעון.

UART פרוטוקול Universal Asynchronous Receiver Transmitter (UART) הוא פרוטוקול תקשורת נפוץ לתקשורת טורית אסינכרונית הפרוטוקול מאפשר שליטה על מספר פרמטרים: קצב העברת הנתונים - 50, 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 57600 ו115200 סיביות לשנייה. כמות סיביות המידע בכל מסגרת - 5,6,7 או 8 סיביות מידע בכל מסגרת (כלומר בין סימבול ההתחלה לסימבול הסיום). הוספת סיבית זוגיות - ניתן להוסיף לכל מסגרת סיבית אשר תקבע את מצב הזוגיות של ביטי המידע במסגרת משך סימבול הסיום - ניתן לקבוע את משך הזמן של שידור סימבול הסיום לאורך של 1, 1.5 או 2 סיביות.

UART פרוטוקול סט הפרמטרים הנפוץ ביותר הוא 1N8 שמשמעותו '8' סיביות מידע, 'N' - ללא סיבית זוגיות, '1' - אורך סיבית הסיום היא (משך הזמן של) סיבית יחידה. המושג BAUD RATE זהו קצב העברת הסיביות בקו. כלומר, כמות הסיביות העובר בקו בשניה אחת. קצבים מקובלים: 110,150,300,600,1200,2400,4800,9600,14400,19200,28800, 33600,57600,115200…. BAUD.

UART פרוטוקול קצב העברת הנתונים נטו ניתן לחישוב לפי פרמטרי המערכת. למשל, סט הפרמטרים8N1 , קצב הנתונים הוא ביחס של 8:10 מקצב הסימבולים, עקב 2 סיביות תקורה אשר מתווספות לכל בית של מידע גולמי. ניתן לחשב את קצב הנתונים לפי הנוסחה הבאה: נגדיר: SB אורך סימבול הסיום; P קיום סיבית זוגיות (0 אם לא קיימת, 1 אם קיימת); D כמות סיביות המידע בכל מסגרת. קצב המידע נתון על ידי:

UART פרוטוקול דוגמא: הסבר: כדי להעביר מילה בקו טורי עלינו לשדר לפי סדר: א. START BIT ב. סיביות הנתון (בדרך כלל 8), מתחילים עם ה- LSB ג. STOP BIT אחד או שניים.

UART פרוטוקול דוגמא: כמה מילים לדקה נוכל להעביר בקו, אם קצב ההעברה הוא 2400 BAUD מילת הנתון היא בת 8 סיביות וקיים STOP BIT אחד? [2400 / (1+8+1)] * 60 = 14,400 bytes

RS-232 פרוטוקולRS-232 מאפיין תקשורת בינארית טורית Single-Ended (קו העברה בודד לכל כיוון תקשורת) המחבר בין שני מכשירים אלקטרוניים Point to Point) ) יציאות התקשורת הטורית של מחשבים אישיים רבים תומכים בפרוטוקול RS-232 הפרוטוקול מגדיר את המאפיינים החשמליים והתזמון של האותות, המשמעות של כל אות, וסידור הפינים והמחברים. פרטים על אופיין הביטים וקצב השידור נשלטים באמצעות החומרה (כגון רכיבי UART) מבנה של פרוטוקול RS-232 מופיע באיור הבא:

RS-232 ערכי המתחים בפרוטוקול זה נעים באזור ה- V±15 עבור מידע(Data Bits) ערך מתח שלילי נותן ערך לוגי "1" ואילו ערך מתח חיובי נותן ערך לוגי "0". עבור שליטה (Control Bits) ערך מתח חיובי נותן ערך לוגי "1" וערך מתח שלילי נותן ערך לוגי "0".

RS-232 בגלל שהמתחים בפרוטוקול זה גבוהים ממתחי (TTL 0-5V) שמיושמים במעגלים חשמליים רבים, נדרש רכיב שממיר את רמות המתח של RS-232 לרמות מתח TTL פרוטוקולRS-232 מיועד לשדר ולקלוט נתונים בקצבים של עד 20Kbps אך יש יצרנים של מכשירים שמאפשרים לבצע את ההעברה בקצב גבוה יותר. פרוטוקולRS-232 רגיש מאוד להפרשים בפין ההארקה בשני צידי הכבל. יש ליצור הארקה משותפת לפיני ההארקה על מנת לשמור על תקשורת אמינה. זו אחת הסיבות שפרוטוקול זה אינו מיועד לשימוש במרחקים גדולים.

SPI תקן SPI (Serial Peripheral Interface) נועד לאפשר תקשורת טורית בין מכשירMaster אחד למספר מכשירי Slave התקן הזה לא מגדיר את המידע אלא את אופן ותזמון השידור והקליטה שלו. קצב השידור בפרוטוקולSPI הוא עד 1Mbps והמרחק המומלץ בין מכשירים הוא 10ft. התקן מבוסס על העברת מידע באמצעות ארבעה קווי תקשורת דו כיווניים:

SPI תהליך התקשורת המלא מתחיל בכך שרכיב ה-MASTER מגדיר את קצב השעון ואת מוד הפעולה שלו. קיימים ארבעה מודי פעולה של שעון:

SPI לאחר מכן ה- MASTER מגדיר לאיזהSLAVE הוא עומד לבצע תקשורת באמצעות שליחת "0" בקו ה-CS של ה-SLAVE הרצוי. לאחר מכן, הוא שולח ביט התחלה בקו ה- MOSI שאותו ה-SLAVE קורא. במקביל, ה-SLAVE שולח ביט אישור בקו ה MISO שאותו ה- MASTER קורא.

SPI כאשר ה-MASTER מסיים את שליחת המידע, הוא מפסיק את פעולת השעון. פעולה זו גורמת לביטול הבחירה של ה- SLAVE רק ה-SLAVE שנבחר באמצעות קו ה- CS מתייחס לשעון CLK ולקו ה- MOSI ורק הוא יכול לכתוב מידע בקו ה-MISO שאר רכיבי ה-SLAVE מתעלמים מהשעון ומה- MOSI ואינם רשאים לכתוב לקו ה-MISO

IIC/I2C תקן IIC (Inter-Integrated Circuit) שנועד לאפשר תקשורת טורית בין מכשירMaster אחד למספר מכשיריSlave התקן הזה לא מגדיר את המידע אלא את אופן ותזמון השידור והקליטה שלו. (ביט אחד בכל מחזור שעון ו-8 ביטי מידע נוספים בין שני אישורים). קיימים שלושה קצבי שידור: Standard Mode – 100Kbps Fast Mode – 400Kbps High-Speed Mode – 3.4Mbps המרחק המומלץ בין מכשירים בפרוטוקול זה הוא עד 10ft. התקן מאפשר זיהוי התנגשויותCollision Detection) ) סנכרון שעון וביצוע Hand-Shake

IIC/I2C התקן מבוסס על העברת מידע באמצעות שני קווי תקשורת דו כיווניים: SCL – Serial Clock Line SDA – Serial Data Line בזמן התקשרות גם ה- Master וגם ה-Slave משמשים גם כמשדרים וגם כמקלטים. מספר רכיבי Slave שניתן לחבר ל-Master תלוי בסך הקיבול של הרכיבים. רמות המתחים של פרוטוקול I2C הן רמות TTL 0-5V)) לפרוטוקול I2C יש 127 כתובות. עקרונות הפעולה של פרוטוקול I2C הן ששינוי מידע בקו SDA אפשרי רק כאשר קו SCL נמוך "0". כאשר קו SCL גבוה "1" קו ה-SDA חייב להיות יציב ולא להשתנות. סיגנל START מתאפשר כאשרSDA עובר מ-"1" ל-"0" בזמן ש-SCL נמצא ב-"1". סיגנלSTOP מתאפשר כאשרSDA עובר מ-"0" ל-"1" בזמן ש-SCL נמצא ב-"1".

IIC/I2C אורך מילה בקו ה- SDA מוגדרת בגודל של 9 ביט. 8 עבור מידע וביט תשיעי עבור אישור. השעון של האישור מיוצר ע"י מכשיר ה-MASTER קיימים שלושה מצבים עבור אישור: בזמן אישור מכשיר ה- MASTER יוצר מתח-צף על קו ה-SDA וה-SLAVE יוצר "0" על קו ה-SDA כאשר SLAVE לא משדר אישור הוא יוצר מתח-צף בקו ה-SDA ומשחרר אותו לטובת ה-MASTER כאשר SLAVE משדר אי אישור הוא יוצר מתח "1" ומייד אחר כך יוצר מתח-צף על קו ה-SDA ומשחרר אותו לטובת ה-MASTER מכשיר ה- SLAVE יכול לגרום ל- MASTER להמתין באמצעות הורדת קו ה- SCL ל-"0". כאשר קיימים מספר מכשירי MASTER על אותו קו תקשורת ניתן לסנכרן את השעון של כולם.SCL יעבור למצב "1" רק כאשר כל מכשירי ה-MASTER יציגו בשעון שלהם "1".

IIC/I2C תהליך התקשורת המלא מתחיל בכך שרכיב ה-MASTER בודק אם קו התקשורת פנוי. במידה וכן, הוא מייצר ביט התחלה + 7 ביטי כתובת של SLAVE וביט תשיעי של מוד כתיבה ("0") או קריאה ("1"). לאחר מכן, מתקבל ביט ACK ע"י ה- SLAVE וה-MASTER ממשיך בשליחת המידע (8 ביטים).

דוגמא ממערכות מובילאיי במובילאיי ה-צ'יפ של החברה (IQ4) הוא ה- Master והמצלמה היא ה-Slave (קיימים עוד כמה רכיבים שקשורים למצלמה שהםSlaves נוספים, כגון: אופרציות אוגרים וה- process על התמונה) התקשורת ביניהם עובדת לפי פרוטוקול i2c בין ה-צ'יפ ליצרנית הרכב התקשורת כיום (בצ'יפ המתקדם של החברה = (IQ4)) הינה לפי פרוטוקולSPI כאשר מספר המעבדים בצ'יפ הם ה-Slaves ו ה- Masterהוא יצרן הרכב. בצ'יפים הישנים של מובילאיי ((IQ3), (IQ2), (IQ1)) בהם יש מעבד אחד משתמשים בפרוטוקול UART מדוע? הצ'יפ יותר פרימיטיבי (= יותר איטי) ולכן אין צורך בפרוטוקולים חכמים ומתקדמים כמו I2C ו- SPI

סוף! תודה רבה על ההקשבה!