מקונספט ראשוני למערכת תקשורת מבצעית – גישת פיתוח חדשה מבוססת MATLAB
מהנדס יקר, אם אתה מחפש דרכים לקצר ולייעל את תהליך הפיתוח שלך, הפוסט הזה בשבילך. והוא מתחיל בסיפור הבא […]
כמעט בכל החברות מפתחים מערכות תקשורת כך:
- מהנדס המערכת כותב מסמך דרישות (PRD) בתחילת הפרויקט
- מפתחי אלגוריתמים, HW ,RF, אנלוגי ו-Mixed Signal עובדים כל אחד בנפרד (התקשורת ביניהם עוברת דרך מסמך הדרישות)
- כשהאלגוריתם בשל, מהנדס ה-HW מתרגם אותו ידנית לקוד חומרה.
(זאת אומרת שאין דרך חזרה. מרגע זה, כל שינוי באלגוריתם גורר כתיבה (ידנית) מחדש של קוד החומרה)
ובגלל שאיש ה-HW כותב קוד אופטימלי עבור חומרה מסוימת, המחויבות לחומרה הזו נוצרת כבר בתחילת התהליך.
- אינטגרציית מערכת נעשית בשלב מאוחר בפרויקט (כשהאבטיפוס חוזר מייצור)
אבל ההתפתחויות האחרונות בפיתוח מערכות תקשורת מאתגרות את שיטת הפיתוח הזו מכמה בחינות.
ראשית, טכנולוגיות ה-Wireless מפותחות כיום בסביבה תחרותית מאוד. ע"פ הסטטיסטיקה, 80% מבעיות הפיתוח בשיטה הנ"ל מתגלות בשלב קריטי בפרויקט – שלב אינטגרציית המערכת במעבדה.
באגים בשלב הזה גורמים לאי-עמידה ביעדים ובעלויות פיתוח נוספות.
(בסביבה תחרותית שכזו, זה יכול גם לגרום לכישלון הפרויקט – כי מי שמגיע ראשון לשוק, מוביל אותו…)
שנית, הצורך בקצבי נתונים מהירים וריבוי המשתמשים הוביל לפיתוח ארכיטקטורות חדשות (כמו MU MIMO ו-Hybrid Beamforming).
ארכיטקטורות אלו דורשות סימולציות מורכבות המשלבות דיגיטל ואנלוג (שני חלקים של המערכת שלא היו מסומלצים ביחד בעבר).
לבסוף, טכנולוגיות תקשורת כמו 4G… 5G… WLAN… מתעדכנות לעיתים קרובות.
עדכונים אלו מאלצים עדכונים בדרישות המערכת במהלך תהליך הפיתוח.
ויש לכך השלכות כבדות על ביצועי המערכת.
מה המשמעויות של כל זה על הארגונים החדשניים? כדי להישאר תחרותיים אנחנו צריכים:
- תהליך פיתוח מהיר שמאפשר לפתור בעיות מערכתיות כבר בשלב מוקדם בפרויקט
- תהליך פיתוח שמאפשר למפתחים לשתף מודלים ולבחון השפעות מערכתיות על התכן שלהם (למשל השפעות RF impairments על ביצועי אלגוריתמים)
- תהליך פיתוח גמיש שמאפשר מענה מהיר לשינויים בדרישות מערכתיות (או סביבתיות) חדשות.
גישת הפיתוח [Model Based Design [MBD עונה על כל הצרכים האלו.
אז מה היא גישת MBD?
גישת הפיתוח MBD – Model Based Design היא גישת פיתוח מערכתית מבוססת מודל. זה אומר שמודל מערכתי אחד מחבר בין אלגוריתמים, חומרה, RF ו-Mixed Signal בסביבת פיתוח אחת.
המודל הזה מלווה את הפרויקט משלב בחינת הרעיון הראשוני ועד שלב הוולידציה של האבטיפוס.
זה גם אומר שמפתחים יכולים לשתף מודלים, לבחון השפעות הדדיות ולבצע שינויים מהירים בתכן שלהם.
בנוסף, הם יכולים לאתר ולפתור בעיות מערכתיות בשלב מוקדם של הפרויקט – בשלב המידול (ולא בשלב האינטגרציה המערכתית, כפי שקרה קודם לכן).
אבל הנקודה הבאה היא הקריטית ביותר בכל התהליך:
גישת MBD מלווה את הפרויקט משלב הרעיון עד שלב ה-prototype וזה אומר שבתהליך כזה ניתן לייצר קוד
חומרה באופן אוטומטי – קוד HDL, Embedded (ואפילו לתכנן SOC מלא) – ישירות מהמודל המערכתי!
איש ה-HW לא צריך להשקיע זמן בכתיבה ידנית ו-debugging של קוד החומרה.
הוא יכול להתרכז אך ורק במקומות בהם נדרשת המומחיות שלו כאיש פיתוח – באופטימיזציה של קוד
החומרה. ובזכות זה תהליך הפיתוח מתייעל ומתקצר.
ערך נוסף נוצר מכך שהתהליך מאפשר לדחות את רגע ההתחייבות לחומרה הספציפית לשלב מאוחר יותר
בפרויקט – שלב אופטימיזציה של קוד החומרה.
ועוד דבר אחד אחרון…
שיטת MBD מאפשרת חיבור ישיר בין דרישות המערכת לבין האבטיפוס.
זאת אומרת שניתן לראות ויזואלית איך ואיפה כל דרישת מערכת ממומשת במודל המערכתי או בקוד החומרה שמופק ממנו.
וזה מאפשר בחינת ההשפעה של שינויים בדרישות מערכת על ביצועי המערכת כולה (או כל חלק ממנה).
אז כדי להמחיש איך גישת MBD יכולה לעזור בתהליך הפיתוח, תוכלו לצפות בשלושה סרטונים שצולמו
בכנס MATLAB & Simulink EXPO 2019 שהתקיים ב – 26.5.19 במלון הילטון תל אביב.
סרטים אלו ממחישים כל אחד בנפרד את הערך של חלק מסוים בתהליך פיתוח בגישת MBD בעולם התקשורת:
איך כלי Deep Learning חדשים מאפשרים לך לתכנן אלגוריתם עיבוד אות מלא ב-2 שורות קוד בלבד
איך יכולות חדשות ב-MATLAB ו-Simulink מאפשרות לך לבחון את ביצועי האלגוריתמים בסביבת מערכת מלאה
ולבסוף
איך להפוך אוטומטית את האלגוריתם שלך לקוד חומרה הניתן למעקב ולייצור (Traceable & Synthesizable) מתוך מודל המערכת שבנית