Latest News

האם טכנולוגיית NVMe הגיונית בשביל מערכות משובצות?

טכנולוגיית NVM Express‏ (NVMe) כבר עושה רעש גדול בשוקי הארגונים והצרכנים. אך יש השואלים כיום אם לפרוטוקול כונן מצב מוצק (SSD) זה, המהיר במיוחד, יכול להיות עתיד גם בתחום המערכות המשובצות.

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

הבנת NVMe

NVMe, שיצא לשוק בשנת 2012, הוא פרוטוקול אחסון המיועד לכונני זיכרון נייד שפועלים באפיק מסוג PCI Express‏ (PCIe). בעוד שפרוטוקולים מדור קודם, כגון SATA, נוצרו בעידן הדיסקים המסתובבים, NVMe נועד מההתחלה למצות את מלוא הפוטנציאל של זיכרון נייד. לשם כך הוא מנצל את העיבוד המקבילי המובנה במערכות המחשוב של ימינו, וכן את אופי הגישה האקראית של אחסון הבזק. במקום תור הפקודות היחיד של SATA, שמקבץ 32 פקודות, NVMe תומך בעד 64,000 תורים, כל אחד עם עד 64,000 פקודות.

מכיוון שהוא פועל באפיק PCIe, ה-NVMe הוא ממשק מדרגי במלואו, שמסוגל לתמוך במהירויות מרביות גבוהות מאוד. בעוד ש-SATA III מגיע למהירות שיא של 600 מגה-בייט לשנייה, מהירות האפיק של NVMe נקבעת על פי מספר נתיבי PCIe שנתמכים. עם נתיבים בקצב נתונים של 1 גיגה-בייט לשנייה, הנתמכים על ידי PCIe דור 3, התפוקה יכולה כתוצאה מכך להיות מוכפלת פי כמה. כפרוטוקול שפועל ישירות באפיק PCIe, ל-NVMe גם אין צורך בבקר קלט/פלט או במתאם אפיק מארח, כגון SATA או SCSI. הדבר מצמצם הן את ההשהיה והן את צריכת החשמל הכללית של המערכת.

שלא כמו המתחרה הראשי שלו, SATA, שמגדיר מחבר, אפיק ופרוטוקול לוגי (AHCI),‏ NVMe פשוט מתאר שכבת פרוטוקול לוגי שפועלת באפיק החשמלי של PCIe. התקני NVMe עשויים להגיע במגוון גורמי צורה, ולהיות מחוברים דרך מחבר פיזי מסוג PCIe,‏ M.2, או U.2.

בהשוואה ל-SATA, ל-NVMe יש לא רק מהירויות גבוהות יותר, אלא הוא גם פועל ביתר יעילות באופן כללי. בעוד ש-AHCI מחייב ארבע קריאות רגיסטר שאינן ניתנות לאחסון בזיכרון מטמון כדי להנפיק פקודה, NVMe אינו זקוק לכאלה – ולכן שוב יוצר השהיה נמוכה יותר. הוא גם משתמש בערכת פקודות יעילה יותר שזקוקה לפחות ממחצית מחזורי שעון מעבד לצורך עיבוד של בקשת קלט/פלט לעומת SATA. כמו כן ניתן לבצע פעולות קלט/פלט קטנות אקראיות ביתר יעילות. בקשת קריאה של 4 קילו-בייט מצריכה שתי הוראות ב-SATA, אולם ב-NVMe דרושה רק הוראה אחת.

הטמעה משובצת של NVMe

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

שיקולי צריכת חשמל

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

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

בעוד ש-NVMe אינו מחייב היצמדות לגודל וצורה מסוימים, הוא נתמך על ידי גורם הצורה M.2, שהנו אחד מגורמי הצורה הקטנים והדחוסים ביותר של SSD בשוק. תקן M.2 מאפשר רוחבי מודולים שבין 30-12 מ”מ, ואורכים של 110-16 מ”מ. בעוד שכונני SSD M.2 מבוססי צרכנים בדרך כלל צריכים להסתמך על גורמי צורה ארוכים יותר כדי להכיל קיבולות גדולות יותר, M.2 מאפשר מערכות משובצות שלא זקוקות לקיבולות גדולות כאלה, ולכן יכולות להשתמש בכונני SSD קטנים במיוחד. מלבד M.2, כונני NVMe SSD יכולים להגיע גם באריזות BGA, שמאפשרות להם להתחרות ישירות עם כונני eMMC SSD.

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

חיבור ה-PCIe עשוי לצרוך חשמל רב, עד 50 מגה-ואט, אפילו במצב הלא פעיל הרגיל שלו, L1, ולכן מצבי ניהול צריכת חשמל מתקדמים מציעים צריכת חשמל נמוכה עוד יותר במצב של אי-פעולה. תת-המצב L1.1 מצמצם את השימוש בחשמל תוך שמירה על מתח מצב רגיל, ותת-המצב L1.2 מכבה מעגלים במהירות גבוהה. באמצעות תמיכה בשני מצבים אלה, כונני SSD של NVMe יכולים להשיג צריכת חשמל נמוכה במצב של אי-פעולה, עד 2.5 מגה-ואט, שהנה נמוכה ב-50% ממצב אי-הפעולה המקביל של DevSLP ברוב כונני ה-SSD של SATA.

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

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

NVMe להתקנים ניידים ומחשוב קצה

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

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

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

איור 1: מודול SSD מסדרה 600p של Intel עם ממשקי NMVe

NVMe לאחסון משובץ

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

עבור התקנים משובצים הצורכים מעט חשמל, ניתן להתאים את NVMe לפורמטים הקטנים ביותר של חבילות. מחסנית התוכנה (software stack) הקלה שלו והממשק הישיר לאפיק ה-PCIe הופכים אותו למהיר, יעיל ונוח להטמעה. היכולת לתמוך במצבי צריכת חשמל נמוכה של PCIe גם מסייעת לו לשמור על צריכת חשמל מינימלית. בעוד ש-NVMe כנראה שלעולם לא יחליף את eMMC, היתרונות שלו הופכים אותו למועמד טוב עבור יישומים שבהם משתמשים כיום ב-mSATA.

הודות למשאב ממשק PCIe Gen3 x4 NVMe שלו, מודול 3D NAND SSD מסדרה 600p של Intel מהיר עד פי 17 מ-HDD, ומהיר פי 3 מכונני SSD מבוססי SATA. הוא מסוגל לצמצם את צריכת החשמל ביותר מ-90% לעומת HDD, ולכן להאריך באופן משמעותי את חיי הסוללה הנתמכים. במפגש הפסגה Flash Memory Summit לשנת 2017, שהתקיים מוקדם יותר הקיץ,, Swissbit חשפה את מודול N-10 שלה. זהו אב-טיפוס למודול NVMe PCIe M.2 SSD עם תצורה של 2 נתיבים ו-4 ערוצים, המיועד ישירות למערכות בעלות מגבלות חשמל ומקום בחלל המשובץ. הוא יהיה מסוגל לספק ביצועים גבוהים פי שניים מכונן SSD עם יכולות ממשק SATA 6Gb/s, תוך צמצום צריכת החשמל באופן משמעותי.

מרק פטריק, Mouser Electronics

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