מה אני עושה בעבודה?

גלילאו, החברה בה אני עובד, מתכננת ומשווקת רכיבי ASIC לתקשורת מחשבים.  קבוצת ה- Switching Products מתכננת רכיבים היושבים (בין השאר, באופן כללי

אל תתפסו אותי במילה אני לא כותב כאן מסמך טכני) היושבות בלב מערכות הצומת של רשת האינטרנט (נתבים – Routers) ומהווים את מנוע המיתוג (Switching) של הצומת. ניתן לדמות רשת מחשבים, ובפרט את רשת האינטרנט, למערכת כבישים המחוברים ביניהם בצמתים, ואת חבילות המידע (data packets) העוברות ברשת כמכוניות הנעות על אותה תשתית כבישים. כל מכונית רוצה להגיע ממקום (משתמש קצה) כלשהו למשתמש אחר של הרשת, אך להבדיל מבמשל המכוניות, לחבילות המידע אין ממש נהג שידע לכוון את המכונית דרך כל הצמתים ליעדה. לשם כך דרוש מנוע מיתוג, היושב בכל צומת (שוטר תנועה אם תרצו), ומורה לכל מכונית לאן לפנות בצומת הנוכחית, ע"פ מידע המצוי בתוך חבילת המידע (מס' הרישוי של הרכב?...). זהו אותו מנוע אותו מתכננים בגלילאו.

מהו ASIC?

ראשי-תיבות Application Specific Integrated Circuit, זהו שבב עשוי סיליקון עליו ממשים מעגלים לוגיים, והוא משמש כשם ששמו מרמז ליישום ספציפי, למשל מיתוג חבילות-מידע ברשת אם נתחבר לפסקה הקודמת. סיליקון הוא חומר מוליך-למחצה בעל תכונות נוחות שניתן לנצלן כדי לבנות טרנזיסטורים מזעריים (ניתן לחשוב על טרנזיסטור כמתג חשמלי זעיר אשר יכול להעביר זרם בין שתי "רגליים" שלו, בהתאם לרמת המתח ב"רגל" שלישית. בטכנולוגיות המתקדמות כיום מדובר על התקנים בעלי מימד אורך מייצג של 0.13 מיקרון, כלומר כאחד-חלקי 10,000 מילימטר), מהם בונים תאים של לוגיקה בוליאנית (לוגיקה של 0 ו-1). ניתן לסממם (ללכלך) את הסיליקון באלקטרונים חופשיים עודפים, או לחילופין ליצור מחסור באלקטרונים בהשוואה למצב היציב ("אין-אלקטרון" כזה מכונה "חור"). בשל ממדים הקטנים של ההתקנים ניתן לצופף מיליוני טרנזיסטורים על שטח קטן (בסדר גודל של סנטימטר מרובע אחד) מה שמאפשר לבנות מעגלים מהירים מאוד הצורכים הספק נמוך. הטכנולוגיה בה בונים את הטרנזיסטורים על גבי פרוסת סיליקון נקראת VLSI (Very Large Silicon Integration) והיא דומה להכנת עוגת שכבות – בכל שלב בתהליך מסממים או מחמצנים אזורים מסוימים בשכבה נתונה בסיליקון, ולאחר כמה שכבות בנינו מיליוני טרנזיסטורים המחוברים ביניהם ברשת זעירה המממשת לוגיקה בעלת יכולת אדירה, מהירות מסחררת, ברכיב בגודל מטבע של 10 אגורות.

Design For Testing

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

Functional Patterns (Vectors)

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

Scan-ATPG

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

JTAG

הפינים המקשרים בין ה-ASIC לבין העולם החיצוני, דרכם נכנס הקלט לרכיב ודרכם יוצא הפלט, כלומר תוצאת הלוגיקה או החישוב, מחוברים לתאים המכונים pads שהם מסובכים ורגישים אף יותר מתאים אחרים ב-ASIC, בפרט בשל העובדה שהם מקשרים את ה-ASIC ללוח עליו הוא יושב, שהוא שונה לחלוטין מבחינה פיסית וחשמלית. מעגלי  JTAG היושבים בתוך וליד ה-pads מאפשרים לנתק את ה-pads מליבת הרכיב ולחברן במקביל כך שמוצא pad אחד יכנס לתוך ה-pad השכן (במקום לצאת החוצה לפין שלו). בצורה זו מתאפשר לטעון את הרכיב דרך ה-pads באופן מקבילי בסדרה של 0 ו-1 כרצוננו, ולהוציא את אותה סידרה באופן טורי (דרך פין אחד ייעודי). בדומה ניתן לבצע את ההפך – לטעון בצורה טורית דרך הפין הייעודי ולדחוף החוצה דרך ה-pads באופן מקבילי. בצורה זו ניתן לוודא תקינות ה-pads במצבים שונים, וכן ניתן לוודא תקינות החיבור שלהם ללוח עליו יושב ה-ASIC, וכן ניתן לשרשר בבדיקת JTAG מספר רכיבים היושבים על אותו לוח.

 

On-Chip Memory Testing

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

חזרה למשרד     |            לכניסה