חדשות היום

מיקרו – מעבד של 64 סיביות עבור IoT בשוק ההמוני

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

 ארכיטקטורות ריבוי עיבודים סימטריות (SMP) מציעות את הגמישות של תפעול מערכות הפעלה עשירות, אך לעתים קרובות אינן מצליחות לספק את הביצועים הדטרמיניסטיים הנדרשים על ידי מערכות זמן-אמת. לעומת זאת, ריבוי עיבודים אסימטרי (AMP) מאפשר מיטוב ספציפית למשימה על ידי בידוד עומסי עבודה ביחידות עיבוד נבדלות – אם כי גישה זו יכולה להיות מורכבת יותר ליישום. כדי להתמודד עם אתגר זה, Microchip השתמשה באשכול מוכח של שרשורי חומרה מסוג RISC – V® (המכונים “harts” במינוח RISC – V) בתוך ליבה יחידה של מעבד עבור ארכיטקטורת שבבים התומכת ביכולות AMP במגוון רחב של יישומי AI תעשייתיים וקצה.

ה – PIC64GX MPU משלב מעבד בעל יכולת לינוקס עם הארטים מרובים (שרשורי חומרה) במכלול יחיד שמלוכד עם תת-המערכת של הזיכרון, ומאפשר שילוב של מערכות זמן-אמת דטרמיניסטיות ומערכת ההפעלה של לינוקס באשכול מעבד יחיד. זה מאפשר תפעול AMP עבור חזון תעשייתי מיינסטרים ויישומי Edge AI, תוך פישוט הפיתוח של קוד שיכול לפעול במערכות הפעלה זמן-אמת, בלינוקס או אפילו בחומרה פיזית.

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

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

המערכת מבוססת על ליבת מעבד RV64IMAC עם ‎ 600 MHz E51 ו-64 סיביות כמנטר המערכת, עם זיכרון 16 KB שיכול לשמש כמטמון הנחיה מתוקנת משגיאה דו-כיוונית של L1 או כזיכרון משולב בהידוק, זיכרון נתונים משולב בהידוק של ‎ 8 KB ויחידת PMP לעיבוד יישומים.

אבל לב המערכת הוא מכלול הליבה של ארבעה Harts מעבדי יישומים RV64GC U54 עם 64 סיביות שתדר ההפעלה המרבי שלהם הוא 600 MHz, שכל אחד מהם מספק 3.1 CoreMarks/MHz וביצועים של 1.7 DMIPs/MHz. זהו אותו אשכול המשמש במערכת PolarFire®‎ על שבב FPGA, המבטיח תת-מערכת מהימנה ומוכחת עם ריבוי ליבות, ויחסים מבוססים היטב בין הכלים.  הארט חמישי מטפל בפונקציות הניטור עבור השבב, אך זמין גם להפעלת עומסי עבודה זמן-אמת או ישירות בעומסי עבודה של שרת חומרה פיזית.

תת – מערכת הזיכרון L1 כוללת מטמון הדרכה בשמונה ערוצים עם 32 ק”ב או כאפשרות נוספת, זיכרון בשילוב מהודק אופציונלי של 28 ק”ב, ומטמון נתונים בשמונה ערוצים עם 32 ק”ב. נוסף לכך, יש יחידת הגנה על זיכרון פיזי (PMP) ויחידת ניהול זיכרון (MMU).  מערכת הזיכרון כוללת מספר תכונות כולל זיכרון 2 MiB L2 עם מצבי גישה שונים, בקר זיכרון משולב התומך בגרסאות DDR שונות, יחידת הגנה על זיכרון (MPU) וזיכרון מוטבע לא נדיף לאפשרויות אתחול מאובטחות.

מטריצת CPU הקוהרנטית של המטמון ותת-מערכת הזיכרון הגמישה 2 MiB L2 הם המפתח להפעלת AMP. הזיכרון מתוקן השגיאה ניתן להגדרה כמטמון L2 אסוציאטיבי עם מערך 16 ערוצים עם מצב זיכרון משולב רופף (LIM) עבור גישה דטרמיניסטית, ועם מצב זיכרון Scratchpad מלוכד עבור הודעות משותפות על פני הארטים.

בקר זיכרון DDR4/LPDDR4 משולב של 36 סיביות עם תיקון שגיאות תומך ב-DDR4 ב -1.6 Gbps עם שטח כתובת 8 GiB עם יחידת הגנה על זיכרון (MPU) וזיכרון לא נדיף משולב 128 KB (eNVM) לאתחול. זה מספק תצורה גמישה מלאה בעת האתחול לצורך יצירת מחיצה לתפעול זמן-אמת או הארט Linux עם תמיכה במטמון L2.

שילוב AMP

ביחידות עיבוד RISC-V נקראים שרשורי חומרה, או harts וכל הארט ב – PIC64GX MPU מייצג הקשר עצמאי בהוצאה לפועל, שמסוגל להפעיל מערכת הפעלה משלו או עומס עבודה בחומרה פיזית. ניתן להגדיר את אשכול היישומים של quad-hart כך שיפעיל עד שני הקשרי תוכנה עצמאיים. לכל הקשר יכולים להיות מערכת הפעלה, אזורי זיכרון ומשאבי חומרה מוקצים משלו. חומרה מונעת גישה למשאבים של הקשר אחר באמצעות הפרדת חומרה. ניתן לזהות הפרות ולטפל בהן על ידי Hart Software Services (HSS), בעוד שההארט ניטור E51 מוקדש להפעלת הקושחה של Hart Software Services (HSS).

HSS זה הוא מעמיס אתחול באפס שלבים, מנטר מערכת וספק שירותי זמן ריצה ליישומים. ה-HSS תומך בהגדרת מערכת מוקדמת, בהדרכת DDR ובאתחול/כינון תצורת חומרה. הוא פועל בעיקר על ה-E51, עם כמות קטנה של פונקציונליות ברמת מצב מכונה הפועלת על כל U54s. הוא מאתחל הקשר אחד או יותר על ידי טעינת מיטען יישום מזיכרון האתחול, אשר יכול להיות NVM על שבב, ומספק פלטפורמת שירותי זמן ריצה/סביבת ביצוע מפקח (SEE) עבור גרעיני מערכת הפעלה. הוא תומך באתחול מאובטח וחשיבותו בכך שהוא מבטיח יצירת מחיצה/הפרדת חומרה עבור הקשרי AMP.

זה משמש לקביעת התצורה של קומפלקס quad-hart. לדוגמה, ניתן להגדיר את המכלול כך שיפעיל לינוקס בשלוש הארטים של U54, ואת ה-Zephyr® RTOs על ההארט הנותר. ניתן להקצות ציוד היקפי לכל אחד מההקשרים.

מסגרת תוכנה בתקן פתוח הנקראת Open Asymmetric Multiprocessing (OpenAMP) מספקת את רכיבי התוכנה לפיתוח יישומי תוכנה למערכות AMP. המרכיבים העיקריים לכך הם העברת הודעות של מעבד מרוחק (RPMsg) ומעבד מרוחק (remoteProc) המשמשים לפיצול עומסי העבודה על פני שני ההקשרים של AMP יכולים לתקשר בקלות זה עם זה.

רמזים לעיצוב

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

מפתחים צריכים להתמקד במפת הזיכרון ובפריסת הזיכרון של PIC64GX MPUs, בשיטות התקשורת RPmsg ו-RPmsg-lite ובבעלות על משאבים, המכסה את ההקצאה הבלעדית של זיכרון ו/או ציוד היקפי עבור הקשר ספציפי.

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

ציוד היקפי

מבחינת ציוד היקפי, משפחת מעבדי PIC64GX מרובי הארט כוללת Gigabit Ethernet MACs לחיבור מהיר, כמו גם USB 2.0 OTG וממשקי כרטיס 5.1 SD/SDIO MMC. ישנן שתי יציאות 2.0 CAN עם חמישה UARTs מרובי מצבים, שני SPI ושני ממשקי I2C וכן בקר פלאש Quad SPI לביצוע במקום, לצד יחיד משולב x1 או x4 PCIe® Gen 2 Root Port.

אבטחה

תכונות אבטחה שונות משולבות במערכת כדי לספק הגנה חזקה מפני איומים. פונקציה משולבת בלתי ניתנת לשכפול פיזי (PUF) מספקת את הבסיס של שורש האמון עבור מפתחות הצפנה, עם 56 KiB של זיכרון לא נדיף מאובטח (sNVM) ו -128 KiB של זיכרון מוטבע לא נדיף (eNVM) על שבב. התכנון כולל גם גלאי חבלות מובנים ואמצעי נגד, בדיקות שלמות עבור בלוקי זיכרון sNVM ו-eNVM, והתנגדות להתקפות ניתוח הספק דיפרנציאלי (DPA) שניתן להשתמש בהן כדי ללכוד מפתחות.

יישומים

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

ניתן לחבר בקלות את החיישנים ל – PIC64GX MPU באמצעות ציוד היקפי לממשק כגון SPI ו-I2C. מערכת ההפעלה זמן-אמת יכולה לעבד נתוני חיישנים וניתן להשתמש בבלוקי תקשורת כמו UART ו-CAN להעברת נתונים או נתוני סיכום כנדרש על סמך מחשוב קצה.

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

כלים

השימוש ב – AMP ביישומי AI תעשייתיים הופך מורכב יותר ויותר, ול-PIC64GX MPU יש קשר למערכות בנייה באמצעות מערך כלים עבור לינוקס ו-RTOS בקוד פתוח, VxWorks וספקים אחרים לפיתוח מערכות שבטיחותן קריטית. הרחבות MPLAB® מעניקות אפשרות להגדרת תצורה ומקלות על המעבר ממעבדי Microchip אחרים וזה כולל את שירותי התוכנה של הארט (HSS) המספקים את קוד המקור עבור HSS zero stage bootloader ומנטר המערכת

בשלבים הראשוניים של יחסי הגומלין בין Zephyr RTOS לבין חבילת התמיכה של Yocto Project® Linux (BSP) קיימת תמיכה. מערכת הבנייה של Linux המבוססת על Buildroot משתמשת בגרעין Linux4Microchip, ויש תמיכה ב- Ubuntu® Linux מ -2024.10. זה כולל את כל מנהלי ההתקנים, כולל ציוד היקפי הדרוש לפיתוח.  לקבלת כלים ומערכות, נא לעיין במאגר https://github.com/pic64gx GitHub.

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

לסיכום

MPUs PIC64GX תוכננו במיוחד לשילוב AMP ביישומי קצה חכמים מוטבעים הדורשים רגישות מעורבת לקריטיות.  מיקבץ חזק ומוכח של ארבעה הארט RISC-V של 64 סיביות בתוך מכלול ליבה יחיד ניתן להגדרה באופן מאובטח בזמן האתחול להפעלת מערכת הפעלה זמן-אמת לצד מערכת הפעלה של Linux. בייחוד מאפשר הדבר עיבוד צפייה זורם של ערוצי העברה עם AI מקיש עם ביצועי זמן-אמת.  עם מערך כלים בשל ונתמך היטב, PIC64GX MPU מעניק למפתחים מוטמעים עוצמה לבנות בביטחון יישומים מורכבים החוצים תחומים תעשייתיים, של בינה מלאכותית/ML, וזמן-אמת – מייעל את הפיתוח ומאיץ את זמן היציאה לשוק


מאת ונקי נאריאנן, מנהל השיווק של היחידה העסקית FPGA של Microchip, Microchip Technology

תגובות סגורות