על מערכות משובצות ועל המעבד המתחרה החדש מ-AMD

בואו נדבר מעט על מערכות חומרה משובצות (Embedded). מה הן בעצם? אלו בעצם מערכות שמיועדות ללקוחות קצה ואמורות להיות סגורות ולהחזיק זמן רב. הנה מספר דוגמאות כלליות: תחשבו על המכשיר שיש לנהגי אוטובוסים לקרוא ולעדכן כרטיסי רב קו, תחשבו על נתבים, תחשבו על פתרונות Firewall, על פתרונות CDN כקופסאות שמיועדים לשבת ב"קצה" (Edge), תחשבו על פתרונות סטורג' קנייניים, על כספומטים, על שלטי חוצות דיגיטליים ועוד המון דברים.

לכל הדברים שהזכרתי יש מס' דברים משותפים:

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

בעולם הקופסאות המשובצות, יש חשיבות גדולה לאיזו חומרה מכניסים, החל ברמת לוח אם, וכלה בשבבים, יציאות, קירור וכו'. במקרים מסויימים יצרנים פשוט ירכשו לוחות אם Mini ITX ומטה (Nano-ITX, Pico-ITX,Mini-STX) עם מעבדים מולחמים ללוח האם והיצרן יוסיף ללוח זכרון, SATA DOM בשביל התוכנה וידאג לפתרון קירור/איוורור מספק + ספק כח קטן מובנה. במקרים אחרים היצרן יעצב לוח אם עם השבבים שהוא בוחר, כניסות/יציאות, פתרון אחסון, קירור, ספק כח וכו' ויצור קשר עם יצרן לוח מטיוואן (Compal, Quanta, Pegasus, FoxConn ועוד) שיקבל את כל השבבים והחלקים, ידפיס לוח אם, ירכיב את החלקים, יבדוק וימשיך בשרשרת האופציות (הרכבה בקופסאות, בדיקות QA/QC וכו'). השיטה הזו לדוגמא מתאימה ליצרנים שצריכים כמות גדולה מאוד של אותו פתרון Embedded (מינימום הזמנה: 10,000 חתיכות). הדברים מעט שונים אצל ספקי ענן ציבורי – הם מתכננים לוח אם, שולחים לייצור ומקבלים את הלוחות בחזרה, ההרכבה וכו' נעשית מקומית אצל ספק הענן.

מבחינת ה"שחקנים" בשוק המעבדים לציוד משובץ, ברוב המקרים אם צריכים מערכת קטנה שאין לה צורך עיבוד רציני, אז סוגרים עיסקה עם יצרן מעבד ARM כלשהו. אם צריך משהו שמצריך עיבוד תקשורת רציני, יסגרו עיסקה על מעבדים כאלו עם חברות כמו Broadcom ואחרים, ואם צריך מעבדים X86-64 – הולכים כמובן לאינטל. לאינטל יש את סידרת Xeon-D וסידרת ATOM CXXX לצרכים הללו.

כל הסידור הזה ידוע לכל יצרן מערכות משובצות. הבעיות מתחילות כשמתגלות תקלות הקשורות למעבד.

בתחילת 2017 התגלה באג קריטי במשפחת מעבדי Atom C2000 למערכות משובצות. מי שרוצה לקרוא על הבאג יכול לקרוא כאן אולם אם נקצר את הדברים, אז יוצא כך: המערכת תעבוד יפה במשך שנה וחצי אבל יום אחד היא יכולה ליפול ולא לקום עקב באג רציני במעבד. מכיוון שאלו מערכות משובצות, בהן אין תושבת המאפשרת החלפת מעבד (המעבד מולחם בשיטה שנקראת BGA – Ball Grid Array), הפתרון הוא להחליף את כל לוח האם. אבל מה קורה אם היצרן החליט להכניס שבבי SSD/Flash על לוח האם? כאן זה נהיה יותר מורכב. תכפילו את המורכבות הזו באלפי מערכות שנמצאות מסביב לעולם – ותקבלו היסטריה רבתי! היצרן צריך לייצר מחדש לוחות אם עם מעבד מתוקן, עם כל השבבים הנוספים (יצרני השבבים הנוספים בהחלט נהנים מהרכישה הכפולה), לשלוח טכנאים על חשבון היצרן, להעביר איכשהו את הגדרות הלקוח, וכמובן לסבול מכל לקוח צעקות על השבתה ארוכה ואולי גם תביעות בדרך מאותם לקוחות. בקיצור – היסטריה רבתי.

בקיצור, לאחר הבעיה המהותית הזו, יצרני קופסאות גדולים החלו לחפש פתרונות אלטרנטיביים שיתנו תאימות X86-64 והעיקר שיהיו עם כמה שפחות באגים כאלו. אחד מיצרני הקופסאות ביקש יצור של לוח אם מיוחד עם מעבד Desktop מסוג Ryzen של AMD ושיהיה עם תושבת – לקופסאות שלו. אב הטיפוס של הלוח נראה כך (המאוורר משמאל מסתיר GPU זמני שיוחלף במעבד ARM של ASPEED לשם שליטה מרחוק):

השאלה שעתה כמעט כל יצרן שואל – יש אלטרנטיבה למעבדי CXXX ו-Xeon-D שיתנו תואמות מלאה?

כן

ב-AMD לאחרונה החליטו להוציא סידרה חדשה של מעבדי EPYC: סידרה 3000 המיועדת כולה למערכות משובצות. היתרונות של המעבדים החדשים קשורים לתאימות מלאה, חסכון בחשמל וביצועים שווים או יותר מהמעבדים המתחרים של אינטל. בנוסף ניתן לחסוך ב-BOM כי אין צורך ב-Chipset.

להלן רשימת המעבדים במשפחת ה-EPYC (לחצו להגדלה):

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

כמובן ששום יצרן לא יקח מעבד חדש בלי מערכת לבדיקות. לשם כך ל-AMD יש לוחות אם הכוללים מעבדי EPYC Embedded תחת השם AMD Wallaby. הלוח שונה מעט בין דגמי המעבדים השונים, כך הוא נראה עם מעבד 8 ליבות ו-16 נימים (לחצו להגדלה):

אז איך המעבדי EPYC 3000 בהשוואה לתחרות מבית אינטל? הם צורכים מעט יותר חשמל (דגם 3251 שמופיע בסקירה כאן לדוגמא) מכיל 8 ליבות אך מכיל גם 16 נימים. המעבד הכי קרוב (דגם C3758 מאינטל) מכיל רק 8 ליבות. ה-C3758 יכול להגיע למהירות שעון מקסימלית של 2.20 ג'יגהרץ ואילו ה-3251 מגיע עד 3.10 ג'יגהרץ.

ומה עם אלו שמחפשים פתרון יותר קטן הכולל חיבורים למסך/ים חיצוני/ים, שצורך פחות חשמל עם פחות ליבות? ל-AMD יש פתרון גם לזה, והוא ה-Ryzen Embedded 1XXX המכיל עד 4 כניסות Display Port, עם 2-4 ליבות, ועם 4 עד 8 נימים. חברת Sapphire מייצרת מספר לוחות כאלו וניתן לקרוא עליהם כאן. העלות של הפתרון המוכן (ללא קופסא, זכרון ואמצעי אחסון) נע בין 325-450 דולר. יש ל-Sapphire עוד מספר פתרונות והם כמובן גם ODM ומייצרים לוחות ללקוחות שרוצים לוח לפתרונות רפואיים, קופות רושמות, קיוסקים, ציוד תקשורת, שילוט חוצות ועוד. אפשר לראות עוד פרטים בוידאו הבא:

לסיכום: לא מעט חברות מעוניינות לדעת לגבי פתרונות אלטרנטיביים למעבדי Embedded של אינטל ואני מקווה שפוסט זה נותן קצת יותר מידע לגבי האלנטיבות מבית AMD ואם החברה כבר משתמשת בקוד שרץ על X86-64, כמות השינויים שיצטרכו כדי לעבור למערכת החדשה היא מאוד מינימלית.