הבחירה והשימוש במערכי FPGA‏ עבור ממשקים, אבטחה ועומסים עתירי-מיחשוב ברכב

מאת ‎Clive "Max" Maxfield

באדיבות ‎DigiKey's North American Editors

באופן מסורתי, משימות חישוב במכוניות בוצעו על ידי יחידות מיקרו-בקר (MCU) ומעבדי יישומים (AP). רכב מנהלים/משפחתי טיפוסי יכול להכיל 25 עד 35 יחידות MCU‏/AP‏, בעוד שמכוניות יוקרה עשויות להכיל 70 או יותר. מכוניות דורשות יותר ויותר יכולות עתירות-חישובים ומתוחכמות ביותר עבור משימות כגון מערכות עזר מתקדמות לנהג (ADAS), מערכות מידע ובידור, בקרה, רשתות ואבטחה. רבים מיישומים אלו כוללים ראיית מכונה בצורה של עיבוד תמונה ווידאו ביחד עם בינה מלאכותית (AI).

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

כדי להתמודד עם המורכבות הזו, מתכנני מערכות רכב פונים למערכי שערים הניתנים לתכנות בשטח (FPGA), לא כדי להחליף את יחידות ה- MCU‏/AP‏ הקיימות, אלא כדי לשמש כגשר בינם לבין התקנים אחרים ולשפר אותם על ידי הורדת עומס התקשורת ומשימות אינטנסיביות חישוביות אחרות.

מכיוון שניתן לתכנת מערכי FPGA‏ לתמיכה במגוון רחב של ממשקים ופרוטוקולים חשמליים, הם יכולים לשמש כגשר בין יחידות MCU‏/AP‏ וחיישנים, מצלמות ותצוגות. כמו כן, מכיוון שהם יכולים לבצע חישובים ופעולות בצורה מקבילה מסיבית, ניתן להשתמש במערכי FPGA‏ לביצוע עיבוד ראייה ומשימות AI עתירות-חישובים, ובכך לשחרר את מעבדי המארח עבור פעילויות אחרות.

מאמר זה דן בדרישות העיבוד של רכבים מודרניים ומתאר כמה מיישומי הרכב שניתן לטפל בהם באמצעות מערכי FPGA‏. לאחר מכן הוא מציג כמה מערכי FPGA‏ לדוגמה מבית Lattice Semiconductor ומראה כיצד ניתן להשתמש בהם כדי לפתור בעיות חיבוריות, עיבוד ואבטחה. המאמר מציג גם לוחות פיתוח נלווים כדי לעזור למתכננים בצעדיהם הראשונים.

יישומי יעד ברכב עבור מערכי FPGA‏

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

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

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

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

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

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

התקנים בדירוג כלי-רכב

חשוב לזכור שלא כל FPGA מתאים עבור יישומי רכב. מועצת האלקטרוניקה לרכב (AEC) היא ארגון שהוקם במקור בשנות ה- 90 על ידי קרייזלר, פורד ו- GM במטרה לקבוע תקני מערכות איכות והרשאת חלקים משותפים. אחד המסמכים הנפוצים ביותר של AEC הוא AEC-Q100, "הוכחת הכשירות של בדיקות מאמץ מבוססות מנגנוני תקלות עבור מעגלים משולבים".

ה- IATF 16949:2016‏ הוא מפרט טכני המיועד לפיתוח מערכת ניהול איכות המאפשרת שיפורים מתמידים, תוך שימת דגש על מניעת פגמים והפחתת השונות והפחת בשרשרת האספקה ובתהליך ההרכבה בתעשיית הרכב. מבוסס על תקן ISO 9001, ה- IATF 16949:2016 נוצר על ידי כוח המשימה הבינלאומי לרכב (IATF‏) והוועדה הטכנית של ISO.

ספקי מערכות אלקטרוניות לשוק הרכב דורשים יותר ויותר שספקי מוליכים-למחצה יספקו מוצרים התואמים לתקן AEC-Q100, ויכולים להציג אישור ISO/TS-16949 של מערכות בקרת האיכות שלהם.

בחירת ה- FPGA המתאים לתפקיד

מערכי FPGA‏ הם גמישים ביותר, אך משפחות התקנים שונות מציעות שילובים שונים של יכולות ופונקציות ההופכות אותם למתאימים יותר למשימות ספציפיות. במקרה של יישומי ראייה משובצים, למשל, מצלמות ותצוגות מודרניות משתמשות לרוב בממשקי MIPI. פרוטוקולי MIPI CSI-2 (מצלמה/חיישן) ו-DSI (תצוגה) משתמשים בשכבת תקשורת פיזית (PHY) הנקראת D-PHY‏. יחידות MCU‏/AP‏ מדורות קודמים לא תומכות בממשק זה, אך כמה ממערכי FPGA‏ כן תומכים, כמו ראייה משובצת CrossLink-NX‏ ומערכי FPGA‏ לעיבוד מבית Lattice Semiconductor.

בנוסף לשני מקמ"שי MIPI D-PHY מוקשחים עם ארבעה נתיבים התומכים ב- 10 גיגה-ביט לשנייה (Gbits/s) לכל PHY, התקני CrossLink-NX תומכים גם ב- PCIe‏ של Gbits/s‏ 5, כניסות/יציאות (I/O‏) ניתנות לתכנות של Gbits/s‏ 1.5 ו- DDR3‏ עם 1,066 מגה-ביט לשנייה (Mbits/s‏). התקנים אלה תומכים גם בממשקים ופרוטוקולים חשמליים מסורתיים כמו איתות דיפרנציאלי במתח נמוך (LVDS‏), Sub-LVDS (גרסת מתח מופחת של LVDS), ממשק תצוגה LVDS פתוח (OLDI‏), וממשק בלתי-תלוי בתווך גיגה-ביט טורי (SGMII‏). כתוצאה מכך התקנים אלה יכולים לשמש עבור שילוב זרמי וידאו, פיצול זרמי וידאו, הפעלת יישומי בינה מלאכותית, ותוך כדי ביצוע כל זה - גם לשמש כגשר בין יחידות MCU‏/AP‏ מדורות קודמים לבין חיישנים וצגים מודרניים.

מפתחי מערכות רכב המעוניינים להעריך את מערכי ה- CrossLink-NX FPGA ימצאו את השילוב לוח כניסת חיישנים CrossLink-NX VIP‏ LIFCL-VIP-SI-EVN‏ (איור 1‏) וערכת ראייה משובצת מודולרית LF-EVDK1-EVN‏ מעניין במיוחד (הראשון יכול לשמש כלוח כניסה עבור האחרון). בנוסף ל- CrossLink-NX FPGA, לוח כניסות החיישנים כולל גם ארבעה חיישני תמונה Sony IMX258 CMOS MIPI של 13 מגה-פיקסל, התומכים ב- 4K2K‏ ב- 30 פריימים לשנייה (fps) או ב- 1080P‏ ב- fps‏ 60‏. הוא תומך גם בחיבוריות חיישן קלה באמצעות שלושה ממשקי PMOD עצמאיים.

תמונה של לוח כניסות חיישנים VIP‏ CrossLink-NX מבית Lattice Semiconductorאיור 1: לוח כניסות חיישנים VIP‏ CrossLink-NX, היכול לשמש ככניסה לערכת פיתוח ראייה משובצת, מכיל CrossLink-NX FPGA ותומך בשילוב של ארבעה חיישני תמונה MIPI Sony IMX258. (מקור התמונה: Lattice Semiconductor)

עבור יישומים עתירי מיחשוב הדורשים גם רוחב פס גבוה של כניסה/יציאה - כמו AI עבור משימות כגון זיהוי ובקרת תנועות-יד, זיהוי ובקרה קולית, זיהוי נוכחות אדם, זיהוי נוסע וניטור נהג - מערכי ECP5 FPGA מבית Latice כוללים ממיר מקבילי-לטורי/טורי-למקבילי (SERDES) עד Gbit/s‏ 3.2, עד ארבעה ערוצים לכל התקן בבלוקים דו-ערוציים עבור גרנולריות גבוהה יותר, עד 85K טבלאות LUT, בלוקים של עיבוד אותות דיגיטלי (DSP) משופר המעניקים שיפור משאבים פי 2 עבור מסננים סימטריים, ותמיכה במיתון שיבוש אירוע בודד (SEU). מערכי FPGA‏ אלה מספקים גם תמיכה ב- I/O ניתן-לתכנות עבור ממשקי I/O‏ LVCMOS 33/25/18/15/12‏, XGMII‏, LVTTL‏, LVDS‏, LVDS‏-אפיק, LVDS‏ 7:1‏, LVPECL‏ ו- MIPI D-PHY‏.

התקן ECP5 לדוגמה הוא ה- LFE5U-85F-6BG554C‏ עם 84,000 אלמנטי לוגיקה, 3.75 מגה-ביט (Mbits) של זיכרון RAM ו- 259 כניסות/יציאות. גם ערכת הפיתוח ECP5 Versa‏ LFE5UM-45F-VERSA-EVNG‏ (איור 2) היא מעניינת. הלוח משתמש בגורם צורה (PCI Express (PCIe בחצי-אורך ומאפשר למתכננים להעריך את מאפייני החיבוריות העיקריים של ה- ECP5 FPGA, כולל PCIe, Gigabit Ethernet (GbE), DDR3 וביצועי SERDES גנריים.

תמונה של ערכת הפיתוח ECPe Versa‏ מבית Lattice Semiconductor‏איור 2‏: נתונה בגורם צורה PCI Express בחצי-אורך, ערכת הפיתוח ECPe Versa‏ מאפשרת למתכננים להעריך את מאפייני החיבוריות העיקריים של ה- ECP5 FPGA, כולל PCIe, Gigabit Ethernet (GbE), DDR3 וביצועי SERDES גנריים. (מקור התמונה: Lattice Semiconductor)

אבטחת מכוניות באמצעות מערכי FPGA‏

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

חלק גדול מפתרון האבטחה של רכב הוא Root of Trust‏ (RoT); כלומר, משאב חומרה בתוך המערכת שתמיד אפשר לסמוך עליו. פתרון אחד הוא חומרת RoT‏ (HRoT‏) מבוסס FPGA, כמו זה המסופק על ידי משפחת ההתקנים MachXO3D מבית Lattice. בנוסף למשאבי LUT ניכרים ומספר גדול של כניסות/יציאות, התקנים מבוססי-Flash‏ אלה מציעים יכולות הפעלה-מיידית וחיבור-תחת-מתח. יישומים למטרות כלליות כוללים Glue Logic‏, גישור אפיקים, ממשק אפיק, בקרת מנוע, בקרת התנעה ויישומי לוגיקת בקרה אחרים.

מעניינת במיוחד היא העובדה שה- MachXO3D הוא ה- FPGA היחיד עם יכולת Dual-Boot‏ ופחות מ- 10K טבלאות LUT המצויד במנוע אבטחה שלא-ניתן-להשתקה המורשה על-ידי המכון הלאומי לתקנים וטכנולוגיה (NIST‏). זה מאפשר ל- MachXO3D‏ לשמש כ- HRoT של הרכב בצורה של התקן המופעל-ראשון ומכובה-אחרון של המערכת. כאשר המערכת מופעלת, ה- MachXO3D בודק תחילה כדי לוודא שהוא מריץ קושחה מאומתת. לאחר מכן הוא בודק את הקושחה של שאר ההתקנים במערכת. אם אחד מהרכיבים במערכת מותקף או נפגע, כולל הוא עצמו, ה- MachXO3D דוחה את הקושחה החשודה וטוען מחדש את הרכיב הזה עם תמונת קושחה מאומתת המוכרת כטובה.

עבור אותם מפתחים המעוניינים להעריך תכנים מבוססי MachXO3D, לוח הפיתוח MachXO3D‏ LCMXO3D-9400HC-D-EVN‏ מספק פלטפורמת בניית אב-טיפוס הניתנת להרחבה (איור 3). הלוח כולל התקן ניהול חומרה L-ASC10 (חישה ובקרה אנלוגית), ממשק I/O למטרות כלליות לשימוש עם לוחות Arduino ו- Raspberry Pi, שני מיקומים לפסי-פינים (DNI‏) Hirose FX12-40, פס-פינים (DNI‏) Aardvark‏, ו- Flash‏ עבור ממשק היקפי טורי (SPI‏) Mbit‏ 128‏ עם מאפיין קריאה מרובעת (Quad‏).

תמונה של לוח הפיתוח MachXO3D מבית Lattice Semiconductor‏איור 3‏: לוח הפיתוח MachXO3D‏ כולל FPGA‏ MachXO3D‏, התקן ניהול חומרה L-ASC10 (חישה ובקרה אנלוגית), תמיכה עבור לוחות Arduino ו- Raspberry Pi, שני מיקומים לפסי-פינים (DNI‏) Hirose FX12-40, פס-פינים Aardvark‏, וחיבור USB-B עבור תכנות ההתקן. (מקור התמונה: Lattice Semiconductor)

הלוח מגיע בגורם צורה 6‏ x‏ 4‏ אינץ' וכולל מחבר USB Mini-B עבור הספקת-כוח ותכנות, ומספר מיקומים עבור פסי-פינים התומכים ב- Arduino, Aardvark, FX12, Hirose ו- Raspberry Pi. כלולים גם כבל USB‏ ומדריך התחלה מהירה.

סיכום

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

כפי שהוצג, על ידי יישום מתאים של מערכי FPGA‏, המתכננים יכולים להוסיף מידה של גמישות וכוח עיבוד היכולים לגשר על סביבות עיבוד שונות, לבצע פונקציות שילוב והיתוך חיישנים, לתת מענה לדרישות רוחב-פס כניסה/יציאה ולבצע חישובים ופעולות בצורה מקבילית מסיבית, תוך שחרור מעבדי המארח עבור פעילויות אחרות.

עבור האבטחה, FPGA מבוסס Flash‏ עם יכולת Dual-Boot‏ ומנוע אבטחה שלא-ניתן-להשתקה מורשה-NIST יכול לשמש כ- HRoT של הרכב ולהבטיח שהוא - והתקנים אחרים - מריצים רק קושחה מאומתת, ובכך למנוע מהאקרים לסכן את מערכות הרכב מבחינה קריפטוגרפית.

לקריאה נוספת:

  1. יסודות מערכי FPGA‏: מהם מערכי FPGA‏ ומדוע הם נחוצים?
DigiKey logo

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

אודות כותב זה

Image of Max Maxfield

Clive "Max" Maxfield

Clive "Max" Maxfield קיבל את התואר הראשון שלו בהנדסת בקרה בשנת 1980 מאוניברסיטת Sheffield Hallam, אנגליה, והחל את דרכו כמתכנן יחידות עיבוד מרכזיות (CPUs) עבור מחשבי מיינפריים גדולים. במהלך השנים תכנן מקס כל דבר, החל משבבי סיליקון ועד מעגלים וממגברי גלי מוח ועד למנועי מדע בדיוני Prognostication Engines (אל תשאלו). הוא גם היה בחזית של אוטומציית תכנון אלקטרוני (EDA) במשך יותר מ- 30 שנה.

מקס הוא מחבר ו/או מחבר-שותף של מספר ספרים, כולל Designus Maximus Unleashed (נאסר לפרסום במדינת אלבמה), Bebop to the Boolean Boogie (מדריך לא שגרתי לאלקטרוניקה), EDA: Where Electronics Begins‏, FPGAs: Instant Access ו- How Computers Do Math‏. בקרו בבלוג שלו “Max’s Cool Beans‏”.

אודות מוציא לאור זה

DigiKey's North American Editors