Table of Contents

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

מה הם אנשי זמן קשים?

צירים קשיחים הם היקפיים ייעודיים בתוך מיקרובקר או מעבדים שיוצרים אותות תזמון מדויקים. a timer הוא היקפי במיקרובקר אשר ספירה או למטה בתדירות מסוימת.בניגוד מנגנוני תזמון מבוסס תוכנה להסתמך על מחזורי CPU ויכולים להיות מושפע על ידי עומס מערכת, חומרי חומרה פועלים באופן עצמאי של המעבד הראשי, מתן תזמון עקבי ואמינה.

מיקרו-בקרים רבים (ומיקרו-מעבדים) כוללים אחד או יותר צירי חומרה.אלה יכולים להיות מוגדרים (לעתים קרובות על ידי הגדרת רישומים שונים) לספור או למטה ולגרור שגרת שירות מפריעה (ISR) כאשר הם יפוג. עצמאות זו מן ה- CPU הופכת את הזמן לא יקר עבור פעולות קריטיות בזמן במערכות משובצות.

המונחים: Hardware Timers

לוח זמנים קשיח מורכב ממספר מרכיבים מרכזיים שעובדים יחד כדי לספק פונקציונליות תזמון מדויקת:

  • (FLT:0) רשם: ההרחבה 1 (FLT:1) , רכז פנימי של מיקרובקר הוא רכיב חומרה בנוי המשמש למדידת מרווחי זמן ולעורר אירועים בזמנים ספציפיים.זה מורכב מדלפק כי הצטברות בתדירות מסוימת, בדרך כלל על בסיס השעון המערכת, וניתן להגדיר אותו כדי ליצור הפרעות או לגרום פעולות אחרות כאשר זמן מסוים או ספירה הוא ערך.
  • (FLT:0)Prescaler:FLT:1; ה-Prescaler מחלק את השעון המערכת, ומאפשר ל-Timer לספור בתדר איטי יותר.לדוגמה, אם שעון המערכת הוא 16 MHz והטרקלייר מוגדר ל-16, הזמן ספירה בשעה 1 MHz.זה מאפשר למפתחים להתאים את ההחלטה והטווח של הזמן כדי להתאים לדרישות ספציפיות של יישום.
  • (FLT:0)Compare/Match Registers: ההרחבה 1 (הרישום) אלה מחזיקים בערכים שהדלפק משווה נגדם כאשר הדלפק מגיע לערך ההשוואה, פעולות ספציפיות יכולות להיות מופעלות, כגון יצירת הפרעה או פיזור של סיכה.
  • (FLT:0)Control Registers:FLT:1eurs אלה קובע את מצב ההפעלה של ה-Timer, מקור השעון, ערך מקדים והגדרות להפריע.

סוגים של Hardware Timers

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

  • (ב) ויקרא:א): "הדברים פשוטים" (ב"ב) השתמשו בעיקר ביצירת בסיסים בזמן והפרעות תקופתיות.
  • (FLT:0) כללי-Purpose Timers:FreaLT:1) המאזינים המקיפים ביותר, תומכים בצורות מרובות כולל לכידת, תפוקה, השוואה ודור PWM.
  • (FLT:0) , Advanced Timersreas:FLT:1 , משככי עתים עשירים תכונות נועדו לשליטה מוטורית ויישומים מורכבים אחרים, לעתים קרובות כולל דור במשרה מתה ותפוקה משלימה.
  • (FLT:0)Watchdog Timersrea:FLT:1 מכונים מכונים מכונים "טיים" (בתרגום חופשי:0) ,0) ,Watchdog Timersrea: אם לא רענון מעת לעת.

מערכות הפעלה בזמן אמת

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

מאפיינים מרכזיים של RTOS

מערכות הפעלה בזמן אמת הן מונעות אירוע ומניעה, כלומר מערכת ההפעלה יכולה לפקח על העדיפות הרלוונטית של משימות מתחרות, ולבצע שינויים בעדיפות המשימה.תכונה מרכזית של RTOS היא רמת העקביות שלה ביחס לכמות הזמן שהיא לוקחת לקבל ולשלים את המשימה של היישום; הגמישות היא "ג'יטר".

כמה מאפיינים בסיסיים להבחין RTOS ממערכות הפעלה כלליות למטרות כלליות:

  • (ב) ⁇ :0) ⁇ : "הכוח לחזות מתי משימות יסיימו וישלמו עם מידה גבוהה של ודאות.
  • (ב) [15] ל"לאו ג'רמי: 1FLT:1 מיניאל וריאציות בתזמון ביצוע משימה, הבטחת ביצועים עקביים.
  • (FLT:0) משימות פרטיות גבוהות יותר יכולות להפריע למשימות פרטיות נמוכות יותר כדי להבטיח פעולות קריטיות בזמן להשלים עם לוח הזמנים.
  • (ב) ⁇ :0) , ⁇ ⁇ : מעבר מהיר בין משימות למזער את פני הראש ולשמור על היענות.
  • (FLT:0) הוצאה לאור מבוססת-פריוריות: קיד 1 (המשימה) מוקצים סדרי עדיפויות, והלוח הזמנים מבטיח את המשימה המוכנה ביותר תמיד מבצעת.

מערכות זמן אמיתיות

מערכות בזמן אמת מסווגות על בסיס ההשלכות של מועדים חסרים:

  • מערכות ההפעלה של ממש בזמן אמת: FLT:1 קשה מערכות הפעלה בזמן אמת עדיפויות משימות קריטיות מעל כל השאר, הם מבטיחים כי משימות קריטיות עומדות בלוח הזמנים שלהם, אפילו במחיר של השעות או ירידה של משימות פרטיות נמוכה יותר. החסר מועד אחרון במערכות זמן קשות יכול לגרום לכישלון קטסטרופלי, מה שהופך אותם חיוניים ליישומים קריטיים כמו מערכות בקרה או מערכות רפואיות.
  • (FLT:0) Soft Real-Time Systems:FLT:1 Soft RTOSs גם לתעד משימות קריטיות בזמן, אך מאפשרות גמישות מסוימת.בעוד הם שואפים לעמוד בדרישות בזמן אמת, הם עשויים לפעמים להחמיץ מועדים, עדיפות יציבות המערכת על פני תזמון קפדני.מערכות אלה מתאימים יישומים כמו הזרמת מולטימדיה שבו מועדי מועד מינוף של ביצועים אך לא לגרום כישלונות מערכת.
  • (FLT:0)Firm Real-Time Systems: FLT:1; A האמצעי שבו מועדים חסרים מדי פעם הוא נסבל, אבל התוצאות של משימות מאוחרות אין ערך.

תפקיד ה-Hardware Timers ב- RTOS

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

דור ה-Tick

התפקיד הבסיסי ביותר של משככי חומרה ב RTOS הוא יצירת המערכת מתקתקת.מערכת סיגנל היא הפרעה תקופתית שמניעה את לוח הזמנים RTOS, המאפשרת לו לעקוב אחר זמן, לנהל עיכובים משימה וליישם בזמן.התיק מתרחש בתדר קבוע, בדרך כלל החל מ -100 הרץ ל 1000Hz, בהתאם לדרישות היישום.

כאשר לוח החומרה מייצר הפרעה מתקתקת, RTOS מבצע מספר פעולות קריטיות:

  • המונחים: system lex against
  • עדכון המשימה מעכב את הנגד ומתעורר משימות שהעיכובים שלהם הסתיימו
  • בדיקות עבור תנאי זמן על חסימת פעולות
  • Invokes לוח הזמנים כדי לקבוע אם יש צורך בשינוי ההקשר
  • עדכונים של משתמשי תוכנה וקוראים לפונקציות ה-Callback שלהם כאשר הם יפוג

משימות שולכות ו-Context Switching

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

לוח הזמנים משתמש במידע תזמון של מזמני חומרה כדי לקבל החלטות לגבי איזו משימה צריכה לבצע.כאשר עובר זמן מפריע קורה, שגרת השירות מפריע מעדכנת את מצב המערכת ועלולה לגרום להחלפת הקשר אם משימה בעלת עדיפות גבוהה יותר הפכה מוכנה לרוץ.מנגנון זה מבטיח כי משימות קריטיות זמן לקבל זמן CPU זמן בהתאם לעדיפות ולדרישות התזמון שלהם.

ניהול זמן

יישומי RTOS מספקים שירותי ניהול זמן שונים שנבנו על לוחות חומרה:

  • (ב) ⁇ :0) ⁇ ⁇ (ה) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
  • (ב) ⁇ :0) ,(ב) ,(ב) ,(ב) ,(ב) ,(הפונקציות שעולות עד ספירת סיגנל ספציפית, שימושיות ליישום משימות תקופתיות עם סחף מינימלי.
  • (ב) ⁇ :0)Timeouts: FLT:1 חסימת פעולות על תורים, סמפורים, ו mutexes יכולים לציין זמני המתנה מקסימליים.
  • (FLT:0) Software Timers:FLT:1ir FreeRTOS (והרבה אחרים RTOSs) נותן לנו לוחות תוכנה שנוכל להשתמש כדי לעכב את השימוש בפעולת או לקרוא לתפקוד מעת לעת.

יישום Hardware Timers ב RTOS

יישום לוחות זמן חומרה ביעילות ב RTOS דורש תצורה זהירה ואינטגרציה עם תשתית התזמון של מערכת ההפעלה.תהליך יישום כרוך כמה שלבים ושיקולים מרכזיים.

זמן רב וידוי

תצורה נאותה של זמן הוא חיוני להשגת דיוק התזמון הרצוי וביצועי המערכת.תהליך התצורה כרוך בדרך כלל:

(FLT:0Clock Source Selection: FLT:1) בחר מקור שעון מתאים עבור ה-Timer. Options כוללים בדרך כלל את השעון הראשי של המערכת, שעונים היקפיים, או מקורות שעונים חיצוניים.הבחירה משפיעה על פתרון זמן, צריכת חשמל ודיוק.

(FLT:0) ,Prescaler Configuration:FIRLT:1 Calculate וקביעת הערך מראש כדי להשיג את התדר הרצוי של טייפ.המדן מחלק את השעון קלט להאט את הדלפק, ומאפשר לתקופות זמן ארוכות יותר להיות נמדד עם רוחב נגד מוגבל.

(FLT:0)Period Calculation:FLT:1) Determine the timer תקופת או להשוות ערך אשר יניב הפרעות בתדר הנדרש.עבור מערכת של 1 kHz (1 מ' תקופת), לחשב את הערך של סמן הזמן מבוסס על תדירות השעון בזמן לאחר הדבקה.

(FLT:0 Interrupt Configuration: FIRLT:1) השתמש ברישום הספציפי (כמו TIMx DIER, UARTx CR1, או EXTI IMR) כדי לאפשר לדור ההפרעה עבור אותו פריפריה.מעט בקרים יש צעדים נוספים כמו "Set Interrupt עדיפות" ו-"NVIC מאפשר".

עיצוב Interrupt Service Routine Design

הפרעה היא אות שמספר המיקרובקר לעצור באופן זמני את המשימה הנוכחית ולבצע פונקציה מסוימת, הנקראת אינטררופווט שירות Routine (ISR) מנגנון זה מאפשר ל-MCU להגיב במהירות לאירועים קריטיים מבלי לחכות ללולאה התוכנית העיקרית כדי לבדוק עבורם.

ה- ISR בהקשר RTOS חייב להיות מתוכנן עם מספר שיקולים קריטיים:

(FLT:0) שמור על ISRs קצר: FLT:1rea מנסה להפוך את קוד ISR שלך קצר ככל האפשר.זכור כי ISRs ייקח מעל ביצוע תוכנית רגילה.אתה רוצה שהרגע הזה יהיה קצר ככל האפשר לא להפריע לתוכנית שלך. Long ISRs להגדיל את הסבלנות להפריע יכול לגרום הפרעות אחרות להיות מעוכב או מפספס.

(FLT:0) קליר דגלים: FIRLT:1 מיקרובקר אות כי מצב מפריע הגיע על ידי הצבת דגל - קצת באחד מרשומות המערכת.עבור הזמן שלנו להפריע, הדגל הזה נקבע כאשר הזמן מתגלגל על ידי הפרעה זו, זה יגרור למעשה.

(FLT:0) עיבוד: FLT:1 בצע רק פעולות חיוניות ב ISR. Defer עיבוד מורכב קוד ברמת המשימה באמצעות דגלים, תורים, או סמפורים למשימות אות.

(FLT:0)Afree Blocking תפעול:FLT:1hil לעולם לא קורא לחסום RTOS פונקציות מ ISR. השתמש בגרסאות ISR-Safe (בדרך כלל עם "מ-ISR" suffix ב- FreeRTOS) שאינן חוסמות.

(FLT:0)Handle Nested Interrupts: ⁇ 1) כמה מיקרובקרים מאפשרים לך להקצות סדרי עדיפויות להפרעות שונות, הקובעים את הסדר שבו הם מטופלים אם מספר הפרעות מתרחשות בו זמנית.

אינטגרציה עם RTOS לוח זמנים

ה- ISR חייב להשתלב כראוי עם לוח הזמנים RTOS כדי לשמור על תזמון המערכת ולאפשר ריבוי משימות טרום מרתיע.הזרם הטיפוסי ב- ISR עבור הדור של RTOS כולל:

  1. לשמור על הקשר בין מעבד (לעתים קרובות מטופל באופן אוטומטי על ידי חומרה להפריע)
  2. הקליר את דגל הזמן
  3. עקבו אחרי RTOS CTE COST
  4. עדכון רשימות עבודה מתעכבות ועורר כל משימות שהעיכובים שלהם הסתיימו
  5. בדוק ועדכון לוח הזמנים של התוכנה
  6. Invoke את לוח הזמנים כדי לקבוע אם יש צורך בשינוי ההקשר
  7. הפעל את הקישור אם נדרש
  8. שחזור המעבד וחזור מהפרעה

טכניקות זמן מתקדמות ב RTOS

מעבר לדור הקרציות הבסיסי, ניתן למנף את חומרי החומרה לטכניקות תזמון מתקדמות שמשפרות את הפונקציונליות של RTOS וביצועי היישום.

כמות שעות

יישומים רבים של RTOS נהנים משימוש במספר רב של חומרי חומרה למטרות שונות:

(FLT:0) נדחה טייק טיקר: 1FreaLT 1) 1 מילואים אחד בלבד עבור דור סיגנל מערכת כדי להבטיח הפעלה לוח זמנים עקבי.

(FLT:0) High-Resolution Timing:FLT:1) השתמש בשעון נפרד רץ בתדר גבוה יותר במדידות תזמון ברמה מיקרו-שנית וזמני אירוע מדויקים.

(FLT:0) תזמון היקפי: FLT:1) ,דיור זמניים כדי לפריפריה מסוימת או פונקציות כמו דור PWM, לכידת או תזמון תקשורת.

(ב) ⁇ 0 (ראו:0) ,Watchdog functions: FLT:1) , יישום של משככי שעונים עצמאיים כדי לזהות ולאושש מכישלונות מערכת.

המונחים: ickless Idle Mode

יישום RTOS מודרני תומך במצב של idle , טכניקה מתקדמת של כוח שמונע את הסימון המחזורי להפריע כאשר אין משימות מוכן לרוץ. במקום להעיר את המעבד כל תקופת סיגנל, המערכת מחשבת כאשר המשימה הבאה תצטרך לרוץ ותוכניות את הזמן כדי ליצור הפרעה בזמן הספציפי הזה.

היתרונות של idle פגום כוללים:

  • צריכת חשמל מופחתת על ידי מתן המעבד להישאר במצבי שינה בעוצמה נמוכה לתקופות ארוכות יותר
  • הפרעה מוגזמת כאשר המערכת היא בעיקר idle
  • חיי סוללה מורחבים למכשירים ניידים ו-IoT

יישום דורש טיפול זהיר של זמן reprogramming וחשבונאות עבור הזמן בילה במצב שינה בעת עדכון ספירת הקרציות המערכת.

Timer SynSyncization

במערכות עם מספר רב של צירים או מקורות תזמון מבוזרים, סינכרוניזציה הופכת חשובה.טכניקה כוללת:

(בקיצור:0)Timer chaining:FLT:1 Connect מספר עונים ב-Cscade כדי ליצור תקופות זמן ארוכות יותר או יותר החלטה מאשר פרק זמן אחד יכול לספק.

(FLT:0) SynSyncization: FLT:1 SynSyncize צירים פנימיים לזמני זמן חיצוניים עבור יישומים הדורשים תיאום עם מערכות חיצוניות או דיוק זמן מוחלט.

(FLT:0Cross-Timerתיאום:FreaLT:1) השתמש בסוהר אחד כדי לעורר או לאפס עוד, המאפשר דפוסים מורכבים של תזמון ומערכות יחסים.

תזמון של דמוקרטיה ודעה קדומה

השגת דיוק התזמון ושמירה על דיוק התזמון היא חיונית במערכות בזמן אמת. גורמים מסוימים משפיעים על דיוק התזמון, והבנתם חיונית למבצע RTOS אמין.

מקור שגיאות תזמון

(FLT:0 Interrupt Latency:FLT:1) הזמן עיכוב בין גורם מפריע והוצאה להורג ISR נקרא שיבוש עצלות. Minimizing latency הוא חיוני ביישומים קריטיים בזמן, וזה יכול להיות מושג על ידי שמירה על ISRs קצר וקידוד של ביצוע קוד כללי. Latency משתנה על בסיס ארכיטקטורת מעבד, מצב הנוכחי להפריע, ואם בעיות גבוהות יותר מפריעות הם שירות.

(FLT:0Clock Source Accuracy:FLT:1 דיוק של מקור השעון של ה-Timer משפיע ישירות על דיוק התזמון. oscillators קריסטל מספקים דיוק טוב יותר מאשר אוספיטורים פנימיים של ה-RC, אך בעלות גבוהה יותר וצריכת חשמל.

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

(FLT:0)ISR הוצאה לאור: 1FreaLT (אם זמן הביצוע של ISR משתנה באופן משמעותי, הוא יכול להציג ג'ייטר בתקופת הקרציות של המערכת.

שיפור הדטמינג

מספר טכניקות יכולות לשפר את דיוק התזמון באפליקציות RTOS:

(FLT:0) הוא כתב עת מוזמן: ⁇ 1 במקום לטעון ערך קבוע לתוך העיתוי בכל הפרעה, תוך הקטנת התקופה הרצויה מהערך הנוכחי.זה לפצות על אי-נוחות להפריע ו- ISR זמן, שמירה על דיוק ארוך טווח.

מקורות שעון גבוהה:0 (High-Quality clock מקורות:FreaLT:1) משתמשים ב-oscillators קריסטלים מתואם טמפרטורה (TCXO) או אפילו או אפילו אופוסטורים גבישיים מבוקרים תנורים (OCXO) עבור יישומים הדורשים דיוק גבוה.

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

(FLT:0) צמצום זמן בלתי ניתן להפרדה בין-הזמן: ההרחבה 1 (FLT:1) צמצום הזמן שבילה עם הפרעות חסרות-מוגבלות כדי למזער את הגוון של הפרעת הצמיגים.

היתרונות של שימוש ב-Hardware Timers ב- RTOS

משככי מודעות מספקים יתרונות רבים שהופכים אותם הכרחיים במערכות הפעלה בזמן אמת:

דיוק ודעה קדומה

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

המונחים:

לוח זמנים קשיח מאפשר התנהגות חקונית, דרישה בסיסית עבור מערכות בזמן אמת. על ידי מתן הפרעות צפויות, קבועות, הם מאפשרים ללוח הזמנים RTOS להפוך את ערבויות תזמון על ביצוע משימות. ⁇ זה חיוני כדי לעמוד בלוח זמנים קשה בזמן אמת ולהבטיח אמינות מערכת.

CPU יעילות

לוח זמנים קשיח מקלקל משימות תזמון מן ה- CPU, המאפשר לו להתמקד בקוד יישומים.שימוש בזמנים פנימיים יכול להיות יעיל יותר מאשר שימוש בפונקציות עיכוב, שכן המיקרובקר יכול להיכנס למצבים של כוח נמוך בעוד ה-Timer פועל ברקע.CPU אינו צריך סקר או לספור מחזורים ברציפות כדי לעקוב אחר זמן, צמצום מעבדים על פני ומאפשר ביצועים כלליים יותר.

גמישות ויציבות

צירי חומרה מודרניים מציעים אפשרויות תצורה נרחבות:

  • מצבי הפעלה מרובים (up-counting, down-counting, Central-aligned)
  • חומרים מתקדמים למגוון רחב של תזמון
  • מספר ערוצים השוואתיים /capture
  • אפשרויות שונות של טריגר וסינכרון
  • שילוב עם חומרים אחרים (DMA, ADC, ממשקי תקשורת)

גמישות זו מאפשרת למפתחים להתאים את התנהגות הזמן לדרישות יישום ספציפיות ללא להקריב ביצועים או דיוק.

צמצום Jitter

לוח זמנים קשיח ממזער את התזמון Jitter בהשוואה לשיטות תזמון מבוססות תוכנה.מכיוון שהפרעות בזמן הזמן מיוצרים על ידי חומרה במרווחים מדויקים, הם לא מושפעים מריאציות בזמן ביצוע תוכנה או עומס CPU. זה ג'ייטר נמוך קריטי עבור יישומים הדורשים תזמון עקבי, כגון פרוטוקולי תקשורת, בקרה מוטורית ועיבוד אודיו.

תמיכה בתבניות מורכבות תזמון

לוח זמנים קשיח מאפשר יישום של דפוסי תזמון מורכבים כי יהיה קשה או בלתי אפשרי עם תזמון תוכנה:

  • דופק רוחב מודולציה (PWM) עבור בקרת מנוע ותקנה כוח
  • לכידת תזמון אות חיצוני
  • OUTEXINGS AS DINGS
  • ממשקי Encoder עבור מיקום
  • מצב אחד-פולס לייצור דופק חד פעמי, בדיוק בזמן.

RTOS Timer Implementation Patterns

כמה דפוסים נפוצים מופיעים כאשר מיישום של זמנם ביישומים RTOS.הבנת תבניות אלה מסייעת למפתחים ליצור פתרונות תזמון חזקים ויעילים.

ביצוע משימות תקופתיות

הפרעות בזמן משמשים בדרך כלל כדי להפעיל משימות במרווחים קבועים.לדוגמה, הפרעה בזמן יכול לשמש כדי מדגם חיישן כל 10 מילי שניות או לעדכן תצוגה כל 100 מילישניות.תבנית זו היא יסוד יישומים רבים משובצים.

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

1-Shot Timers

אחד מהם יוציא לפועל את פונקציות ה-Callback שלו רק פעם אחת.לדוגמה, הוא יתחיל ולאחר זמן מוגדר לבצע פעולות חוזר.אבל זה לא יפעיל את עצמו מחדש באופן אוטומטי.עלינו להפעיל אותו באופן ידני.

רכב-Reload Timers

זמני עומס אוטומטי משמשים לביצוע תקופתי של פונקציות.הם יפנו את עצמם מחדש לאחר ביצוע פונקציית callback.תבנית זו אידיאלית עבור משימות הדורשות לרוץ שוב ושוב במרווחים קבועים, כגון סקרי חיישן, עדכונים תצוגה או שידור נתונים תקופתי.

תגית: Watchdog Timer

נתבי השמירה מזהים ומחלימים מכישלונות במערכת.היישום חייב להיות "קליק" או לרענן את ה- Watchdog timer כדי למנוע ממנו להתפוגג.אם המערכת תולה או נכנסת למצב לא חוקי, ה- Watchdog תוקף ולאפס את המערכת, ומספקת מנגנון התאוששות.

Best Practices for Hardware Timer Usage ב- RTOS

לאחר שיטות עבודה מבוססות מבטיח יישום זמן אמין ויעיל ביישומים RTOS.

בחרו את Appropriate Tick Frequency

בחר תדירות תזמון מערכת שמשנה את החלטת התזמון עם להפריע מעל הראש. תדרי קרציות גבוהים מספקים טוב יותר תזמון מהירויות אבל להגדיל CPU overhead בשל הפרעות תכופות יותר.תדירות גבוהה יותר. תדרי טייפ נפוצים בטווח של 100 הרץ (10 מ"ס) עבור יישומים פחות דורשים 1000 הרץ (1 מ"ס תקופת) עבור יישומים הדורשים בקרת תזמון בסדר.

זמן ההוצאה להורג של ISR

שמור על זמן ISRs קצר ככל האפשר. בצע רק פעולות חיוניות ב ISR ו defer עיבוד מורכב קוד ברמת המשימה. השתמש דגלים, תורים, או סמפוריות כדי לתקשר בין ISRs לבין משימות, המאפשר ISR ל במהירות אות אירוע ולחזור.

שימוש ב-Appropriate Timer Types

יכולות זמן התאמה לדרישות היישום. השתמש ב Timers בסיסיים עבור הדור הפשוט של טייפ, מעבדי זמן למטרות כלליות עבור PWM ולכידת / שותפים פונקציות, וזמני זמן מתקדמים לשליטה מוטורית ודפוסי תזמון מורכבים.אל תבזבזו תכונות זמן מתקדמות על משימות פשוטות כאשר לוחות זמנים בסיסיים מספיקים.

« « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « «

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

המונחים: power

ביישומים מופעלים סוללות, מאזן דרישות תזמון עם צריכת חשמל. השתמש במצב idle טיק כאשר מתאים, לבחור תדרי קרקה נמוכים יותר אם מקובל, לשקול שימוש בפריפריה של זמן קצר שיכול לפעול במהלך מצבי שינה.

דרישות תזמון

באופן שגרתי לבדוק התנהגות תזמון בתנאים שונים של עומס. Measure latency, Jitter, וזמני תגובה למשימה כדי להבטיח שהם עומדים בדרישות היישום. השתמש oscilloscopes, מנתחי לוגיקה, או GPIO להתגלות כדי לדמיין התנהגות תזמון.

בעיות בזמן דיון

בעיות הקשורות ל-Timer יכולות להיות עדינות וקשה לאבחן בעיות נפוצות וטכניקות פיזור חיוני לפיתוח RTOS מוצלח.

בעיות בזמן נפוצות

(FLT:0) ,Incorrect Tick Frequency:FreaLT:1) ערכים מוקדמים או תקופתיים מתועדות בתדרי טייפ מערכת שאינם מתאימים לציפיות, מה שגורם לשגיאות תזמון לאורך כל המערכת.

(FLT:0) ממיס אינטרפוגטס: 1FLT: אם ה- ISR לוקח יותר מדי זמן או הפרעות מוגבלות לתקופות ארוכות, הפרעות בזמן עלולות להחמיץ, מה שגורם לנטיעת תזמון ולבעיות לוח הזמנים.

(FLT:0) סכסוכים סותרים: FLT:1 תצורה נכונה של הפרעת עדיפות יכול לגרום לטר מפריע להיות מתעכב על ידי הפסקות פרטיות נמוכה, הגדלת ג'יטר ועצלות.

תנאי ההרחבה:0 (Race Conditions: Reph 1) סינתזה בלתי הולמת בין ISRs ומשימות יכולה להוביל לתנאי גזע בעת גישה לנתונים תזמון משותפים.

טכניקות וויכוח

(FLT:0)GPIO toggling: 1FLT:1 toggle GPIO pins בנקודות מפתח ב- ISRs ומשימות כדי לדמיין התנהגות תזמון עם אוקטילוסקופ או מנתח לוגיקה.

(ב) ,0) מדדים: FLT:1hil השתמש בנסיכים ברזולוציה גבוהה כדי למדוד זמן ביצוע ISR, להפריע לעקביות, וזמני תגובה למשימה.

(FLT:0)RTOS Tracing: 1FLT 1 Utilize RTOS מסלולים כדי לדמיין לוח זמנים של משימות, להפריע פעילות, ומערכות יחסים תזמון.

(FLT:0-Systematic Testing:FLT:1) התנהגות תזמון מבחן בתנאי עומס שונים, כולל תרחישים הגרועים ביותר עם שיעורי הפרעות מקסימליים וניצול CPU.

יישומים אמיתיים

לוח זמנים קשיח בסביבות RTOS מאפשר מגוון רחב של יישומים בעולם האמיתי על פני תעשיות מרובות.

אוטומציה תעשייתית

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

מערכות רכב

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

מכשירים רפואיים

מכשירים רפואיים לעתים קרובות יש דרישות תזמון קפדניות לבטיחות המטופל. משאבות אינפוזיה חייב לספק מנות תרופות מדויקות במרווחים ספציפיים, קוצני קצב דורשים תזמון מדויק עבור ניהול קצב הלב, ומוניטורים המטופל זקוקים לדגימה קבועה, אמינה חיישן בזמן ה- RTOS לספק את הדיוק והאמינות הנדרשת עבור יישומים קריטיים אלה.

אוויר והגנת

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

מוצרי אלקטרוניקה

מכשירים צרכניים משלבים יותר ויותר את RTOS לניהול פונקציונליות מורכבת.מכשירים לבישים משתמשים ב-Timers עבור חיישן sampling, עדכוני תצוגה ותזמון תקשורת אלחוטי.מכשירי בית חכם לתאם משימות מרובות עם תזמון מדויק של אינטראקציה למשתמש תגובה וניהול יעיל של כוח.

מגמות עתידיות ב- RTOS Timing

תחום מערכות ההפעלה בזמן אמת והשימוש בחומרה ממשיך להתפתח עם טכנולוגיות מתקדמות והחלפת דרישות היישום.

בינה מלאכותית ושילוב Machine Learning

מערכות הפעלה רבות בזמן אמת משלבות בינה מלאכותית (AI) ולמידה מכונה (ML) כדי להתמודד עם מערכות דינמיות, הסתגלותיות ומורכבות יותר.לדוגמה, RTOS בעל יכולת AI לנתח תבניות נתונים, לחזות כישלון ואופטימיזציה של משימות בזמן אמת בהתבסס על תנאי מערכת.אינטגרציה זו מבטיחה ניהול תזמון חכם יותר ותזמון הסתגלות.

מערכות מרובותcore ו-Heterogeneous Systems

ככל שמערכות משובצות יותר ויותר לאמץ מעבדים רב-coreים וארכיטקטורה הטרוגנית המשלבת סוגים שונים של מעבד, ניהול הזמן הופך מורכב יותר.יישום RTOS בעתיד יצטרכו סינכרוניזציה מתוחכמת מעבר ליבות ותיאום בין תחומים תזמון שונים.

כוח אולטרה-לו תזמון

הצמיחה של מכשירי IoT וסוללות המופעלות על ידי סוללות מניעה את הביקוש לפתרונות תזמון אנרגיה אולטרה-נמוכים.יישומים מתקדמים, תזמון אנרגיה-הההארוטיזציה של תזמון מתאים, ושינויים במצבי כוח אינטליגנטיים יהפכו חשובים יותר ויותר.

רשת זמן-רגישות

יישומים תעשייתיים של IoT ותעשייה 4.0 דורשים סינכרוניזציה מדויקת של זמן על פני מערכות מבוזרות.אינטגרציה של IEEE 802.1AS רגישות לזמן תקני רשתות עם תשתית תזמון RTOS תאפשר הפעלה מתואמת של מערכות בזמן אמת מבוזרות.

בחירת ה- RTOS הנכונה עבור יישומים עתיריים

בחירת RTOS מתאים ליישומים עם דרישות תזמון דורשות כרוכה בהערכה של מספר גורמים.

תזמון מאפיינים

להעריך את המאפיינים של RTOS של התזמון כולל תקופת טייפ מינימלית, להפריע לעקביות, זמן מתג ההקשר, וג'ייטר. המדדים האלה משפיעים ישירות על יכולת המערכת לעמוד בלוח הזמנים.

תמיכה בזמן

שקול את תכונות התמיכה של RTOS כולל יישום זמן תוכנה, יכולת idle , תזמון ברזולוציה גבוהה APIs, וניהול זמן overhead.כרגע, micro-ROS תומך בשלוש RTOSes, אשר כולם באים עם (בסיק) POSIX יישום: FreeRTOS, Zephyr ו- NutX, כולם משולבים לתוך מערכת ה-micro-ROS.

תמיכה ב-Hardware Platform

ודא ש- RTOS תומך בפלטפורמת חומרה היעד שלך ומספק נהגי זמן מתאימים למשפחת המיקרובקר שלך.שכבות מופשטות חומרה טובה מפשטות את הנמל תוך שמירה על הביצועים.

אישור וסטנדרטים

עבור יישומים קריטיים בטיחותיים, שקול האם RTOS עומד בסטנדרטים רלוונטיים של הסמכה כגון DO-178C עבור אווירורל, IEC 61508 עבור בטיחות תעשייתית, או ISO 26262 עבור יישומי רכב.

מסקנה

לוח זמנים קשיח הם היסוד להשגת תזמון מדויק במערכות הפעלה בזמן אמת.הם מספקים את בסיס התזמון המדויק והדוטרנטי שבו RTOS תזמון, ניהול משימות, פעולות תלויות זמן בנויות. על ידי הבנת פעילות לוח הזמנים של חומרה, טכניקות יישום נאותות, ושיטות הטובות ביותר, מפתחים יכולים ליצור מערכות משובצות חזקות העומדות בדרישות תזמון רבות.

היתרונות של צירי חומרה - כולל דיוק גבוה, דטרמניזם, יעילות CPU וגמישות - להפוך אותם הכרחיים במערכות משובצות מודרניות.מאוטומציה תעשייתית למכשירים רפואיים, ממערכות רכב לאלקטרוניקה צרכנית, חומרי חומרה מאפשרים בקרת התזמון המדויקת כי יישומים בזמן אמת דורשים.

ככל שמערכות משובצות ממשיכות להתפתח עם מעבדי רב-core, שילוב בינה מלאכותית ודרישות כוח אולטרה-נמוכות, השימוש בחומרה בסביבות RTOS יהיה אפילו יותר מתוחכם.מפתחים אשר שולטים בבסיסי התזמון הללו יהיו בעלי יכולת טובה ליצור את הדור הבא של מערכות זמן אמתיות אמינות ויעילות.

(ב) לקריאה נוספת על פיתוח מערכות RTOS ו- משובצות, יש לבחון משאבים מארגונים כמו FLT:0 Embedded Systems Engineering Community Engineering NetworkFLT:1, theFLT:2FreeRTOS DocumentFLT 3, וגופים אקדמיים המציעים קורסים משובצים במערכות מיקרובקר כגון FLT:4STMielectronicsFLT5 ו-Fillos , ו-Fiber, אשר מציעים שיטות עיבוד נרחבות של 7.