מאת: מאנוג’ גנדי, סינופסיס
בעבר, הגורם הדומיננטי בהכנסתו לשוק של שבב חדש היה הייצור. כיום, עלויות התכנון והוריפיקציה גדולות מאלה של הייצור ביחס של כמעט 2:1. מתכנני שבבים משקיעים כ-75% מזמן הפיתוח הכולל בבדיקות התכנון. לכן, כמעט לא מפתיע שתהליך הוריפיקציה הוא החלק הארי בעלויות הפיתוח. מדוע שלב זה שולט בתהליך הפיתוח כיום?
בעיה ללא גבולות
אם אתה מתכנן שבב מורכב פי ששה מהשבב האחרון שתכננת, כנראה שתצטרך פי 100 יותר מחזורי סימולציה כדי לבדוק אותו. משמעות הגידול האקספוננציאלי הזה היא שמרחב המצבים של תכנון במורכבות בינונית הוא כל כך גדול שלא ניתן להשיג כיסוי מלא ולבדוק את כל המצבים האפשריים. וריפיקציה היא בעיה ללא גבולות וניהול וריפיקציה– השגת יעדי בדיקה אגרסיביים בתקציב ובלוחות זמנים מוגבלים – הוא תהליך קריטי שקובע את כל הכלכלה של כל פרויקט פיתוח שבב.
בשל אופיה הבלתי מוגבל, המטרה חייבת להיות וריפיקציה חכמה יותר. משמעות הדבר היא התמקדות במשימות האימות בעלות ‘הערך הגבוה’. מהנדסים צריכים למצוא שגיאות בשלב המוקדם ביותר בתהליך התכנון, תוך שימוש במינימום האפשרי של המשאבים.
מדידת הערך של פעילות וריפיקציה היא שלב קשה אך חשוב בניהול העלות הכוללת. קיימים מחקרים המצביעים על כך שבתהליך הוריפיקציהקיים מכפיל של 10: שגיאה שתיקונה ב-RTL עולה 10,000 דולר, תעלה 100,000 דולר אם היא נכנסת לתוך ה-layout ותצמח למיליון דולר אם היא עוברת את שלב ה-tapeout. לטכנולוגיות או לפעילויות שמסייעות להימנע משגיאות או למצוא שגיאות בשלב מוקדם יותר בתהליך יש ערך וריפיקציה גבוה (ראה איור 1).
ערך האימות
מפתחים מובילים של שבבים מודדים את ההחזר על ההשקעה בוריפיקציה. בתחום הוריפיקציה, “השקעה” היא שילוב של מהנדסים, תשתית מחשוב וכלי EDA הדרושים כדי לעמוד בדרישות הזמנים והאיכות במסגרת תקציב הפיתוח. עבור רוב החברות, ההשקעה הגדולה ביותר מבין אלה היא אנשים. חברות רבות מעסיקות שלושה מהנדסי אימות על כל מתכנן חומרה אחד. להגדלה פריון העבודה של מהנדסי אימות בתחומי מפתח יש ערך גדול עבור האימות.
הגידול במורכבות הוריפיקציה הפעיל לחץ עצום על תשתית המחשוב הדרושה לפיתוח שבבים. חוות מחשוב שמשמשות לוריפיקציה כוללות אלפי עד עשרות אלפי שרתים, עם הוצאות תפעול ופחת של מיליוני דולרים. תשתית המחשוב הממוצעת של לקוחותינו גדלה בשיעור מדהים של 30% בשנה בשמונה השנים האחרונות, מגמה שאנו מצפים להימשכותה.
בנוסף להשקעה באנשים ובחומרה, חברות שבבים משקיעות בכלי וריפיקציה, בקניין אינטלקטואלי (IP) ובשיטות להגדלת יעילות הצוותים ותשתיות המחשוב. נקיטת גישה חכמה לאימות משמעותה ניצול הכלים המתאימים לכל משימת אימות.
וריפיקציה מבוססת על מנוע רנדומלי מונחה אילוצים (constrained-random verification) בשפת SystemVerilog היא טכנולוגיה מרכזית כיום. טכנולוגיה זו רותמת את עוצמתן של חוות המחשוב כדי ליצור ולהריץ באופן אוטומטי אלפי בדיקות, כולל בדיקות שייתכן ומהנדס תכנון או וריפיקציהמעולם לא שקל לבצע. כתוצאה מכך חל בשנים האחרונות שיפור דרמטי בתפוקת הוריפיקציה. כלי VCS® של סינופסיס מאפשר למהנדסים ליצור סביבות בדיקה אפקטיביות המשתמשות ב-constrained – random, בכיסוי פונקציונלי וב-assertions.
סינופסיס הציגה טכנולוגיות חדשות לבדיקת תכנונים נמוכי הספק, אשר כוללים מתחמי מתח רבים. מערכת VCS הכוללת MVSIM היא מנוע המאפשר בדיקה פונקציונלית עבור כל התכנונים בתחום ניהול ההספק. יחד עם MVRC, כלי בדיקה סטטית וכן מערכות HSPICE® ו- CustomSim™ לניתוח של זליגת הספק, צמתים צפים ונפילת IR דינמית, סינופסיס מציעה פתרון כיסוי כולל ומדויק עבור תכנונים מנוהלי הספק.
כדי לשפר ביצועים, טכנולוגיית ריבוי הליבות Synopsys VCS מקצרת את זמן הוריפיקציה על ידי הרצה במקביל של התכנון, קוד הבדיקה, ה-assertions, הכיסוי ותיקון השגיאות על גבי פלטפורמות מחשוב מרובות ליבות. מערכת VCS תומכת בעבודה מקבילית הן ברמת התכנון והן ברמת היישום.
תהליכים מהירים של יצירת אבות טיפוס (prototyping) ושל תיקון שגיאות על בסיס שבבי FPGA מספקים לצוותי אימות רבים שיפור בפריון העבודה וירידה בעלות של בדיקת חומרה/תוכנה וכן מאפשרים בדיקה במהירות המערכת. פלטפורמת Confirma™ Rapid Prototyping של סינופסיס מאיצה את שלב הבדיקה של שבבי ה-FPGA ושל שבבי ה-ASIC כאחד. מערכות יצירת אבות הטיפוס מדגמי HAPS™ ו- CHIPit®של סינופסיס הן אידיאליות עבור צוותי תכנון ווריפיקציה של IP ושל מערכות על גבי שבב המעוניינים לנצל יצירה מבוססת FPGA של אבות טיפוס כדי למצוא שגיאות חומרה של מקרי קצה או בכדי להתחיל בפיתוח ובאינטגרציה של תוכנה לפני שקיים סיליקון.
כלי הוריפיקציה הפונקציונלית של סינופסיס משולבים בצורה הדוקה בחבילה אחת הכוללת את הטכנולוגיות הטובות מסוגן. כשמפעילים טכנולוגיות אלה יחד, הן מאפשרות למתכננים למצוא שגיאות במהירות ובקלות. כך משפרים בצורה ניכרת את איכותם של התכנונים המורכבים ביותר ויוצרים סיליקון מוצלח בניסיון הראשון. בנוסף לכלים שהוזכרו כאן, הם כוללים את הכלי Magellan לאימות פורמלי היברידי, את ספריית הוריפיקציה של VCS (IP עבור וריפיקציה), את הכלי Leda® לבדיקה סטטית וכן מגוון של שירותי וריפיקציה, כולל ייעוץ מתודולוגי.
ללמוד מפרקטיקת התוכנה הטובה ביותר
פרויקטי וריפיקציה כוללים לעיתים קרובות מיליוני שורות קוד. משמעות הדבר היא שהליך הוריפיקציה הכולל מתחיל להיראות כיום יותר כמו מאמץ גדול לפיתוח תוכנה. צוותי וריפיקצית חומרה צריכים לשקול להשוות את מיטב הפרקטיקות שלהם עם אלה של תעשיית התוכנה.
תעשיית התוכנה מובילה ביכולתה להבין את נושא בשלות התהליך. מכיוון שרבות ממשימותיה תלויות בתשומות אנושיות, היא נוהגת למדוד ולשפר מדדים כגון פריון עבודה למהנדס. התוצאה היא מיקוד בצורה שבה יש לכתוב קוד טוב יותר עם פחות שגיאות. תהליך זה של תיקון מתוכנן בשל יותר מהתהליכים בתחום החומרה.
צוותי תוכנה משקיעים בעריכה של קוד יותר זמן מאשר צוותי חומרה. הם ממטבים את תשתית הפיתוח שלהם על ידי מדידה של זמני ההידור ומסירת הגרסאות, ועוקבים אחרי הזמן שלוקח למהנדס לבדוק קוד ולהשלים סדרות בדיקה. באופן כללי, לצוותי תוכנה יש מדדים מוכנים שמאפשרים להם לזהות ולתקן צווארי בקבוק בפריון העבודה.
מדוד, ואז נהל
בשנים האחרונות שיתפנו פעולה עם עשרות חברות שבבים גדולות וספקי מערכות העוסקים בתכנונים מובילים במספר ענפים ונתקלים באתגרי וריפיקציה חסרי תקדים. בתהליך שיתוף הפעולה שלנו חשוב מאוד להעריך בצורה אובייקטיבית את הערך הצפוי של מגוון גישות חדשות לאימות, המבוססות על ניהול העלות הכוללת של האימות ללקוח. כדי שנבין טוב יותר היכן יש צווארי בקבוק והזדמנויות, אנו עוקבים בדרך כלל אחרי 30-25 מדדים בכל פרויקט. כך השגנו התקדמות עצומה בהבנת היחס בין סוגים שונים של יישומים, שיטות ועלויות.
כל הפעילות הזו הובילה אותנו לעבוד מול כמה לקוחות מפתח ולעזור להם לנהל את העלויות הגדלות של הוריפיקציה – הן בהיבט האנושי והן בהיבטי תשתית המחשוב. נקטנו בכמה מהפרקטיקות הטובות ביותר בעולם התוכנה, מימשנו אותן כדי לשפר את תפוקת האימות ואנו מסירים צווארי בקבוק בפריון העבודה. בזכות ההתבוננות בפריסת המהנדסים, בתהליכים ובטכנולוגיות, עזרנו לכמה ארגונים לחסוך עשרות מיליוני דולרים.
אנו צופים שסגנון עבודה שיתופי זה יהפוך לשגרתי יותר בעתיד. שיתוף פעולה קרוב בין מפתח השבבים לבין ספק פתרון האימות יכול לסייע לגלות היכן קיימות עלויות אימות ולעזור לתכנן אסטרטגיות להפחתת עלויות. מאוחר יותר, נוכל לעבוד מול מפתחי שבבים כדי להתאים את התהליכים והטכנולוגיות שלהם באופן שימקסם את ההחזר על השקעתם באימות. הוספת תכונות חדשות לכלי EDA נקודתיים תהפוך באופן הדרגתי את האימות לבעל פריון גבוה יותר. עם זאת, הפחתה גדולה בעלויות דורשת חשיבה רחבה יותר לרוחב תחומי אימות מרובים ולעיתים גם פתרונות ‘תפורים’ המכוונים לסוגי תכנון ספציפיים.
קיימות באופק טכנולוגיות אטרקטיביות רבות בתחום הוריפיקציה. איזו טכנולוגיה תחולל את הגל הגדול הבא בשיפור התפוקה? באיזו טכנולוגיה צריכים ספקי EDA ומפתחי שבבים להשקיע? רק העתיד יגיד, אבל דבר אחד ודאי: ההתקדמות הגדולה הבא בוריפיקציהתתחולל על ידי כלכלת הוריפיקציה, ותיכנס לשוק באמצעות שיתוף הפעולה ההדוק בין מפתחי שבבים ושותפי ה-EDA שלהם.