להרחיב את הגבולות

לקראת התקן הרשמי, בדיקות “סריקת גבולות” (JTAG Boundary Scan) ברמת מערכת
 ניתנת להשגה במספר דרכים

עידן רם, רדט ציוד ומערכות

בשנת 1990 הוגדר תקן IEEE-1149.1 – Boundary Scan Architecture  המוכר גם בשם JTAG, בעברית אם תרצו “סריקת גבולות”.
שיטה זו פופולרית מאוד ומסייעת בבדיקת מעגלים חשמליים לאחר הרכבתם ואיתור תקלות ייצור, כמו כן היא משמשת כאמצעי לצריבת זיכרונות (Flash, EEPROM) וטעינת רכיבי לוגיקה מתוכנתים (CPLD, FPGA).
לרכיבים אשר תומכים בתקן ה-Boundary Scan  יש ארבע או חמש רגלים מיוחדות:
רגל שעון (TCK –Test Clock), מצב בדיקה (TMS –Test Mode Select), כניסת נתונים (TDI – Test Data Input), יציאת נתונים (TDO – Test Data Output) ורגל חמישית אופציונאלית שהיא: האיפוס
(TRST – Test Reset).
רגלי כניסת ויציאת הנתונים מחוברות בין רכיב אחד למשנהו בצורת שרשור, רגלי ה- TCK, TMS, TRST מחוברות בצורה מקבילית בין הרכיבים המשורשרים יחדיו, וכל רגלי ה-JTAG מחוברים על גבי המעגלים למחבר (קונקטור) יציאה הנקרא: TAP – Test Access Port או בעברית אם תרצו “נמל הגישה לבדיקות”, כדוגמא באיור מספר 1.
בשנים האחרונות גוברת הזמינות של רכיבים הנקראים “Scan gateways” או “Scan Bridge”, רכיבים אלו משמשים כשערים לממשק ה- JTAG  ומאפשרים הרחבה של השימוש בטכנולוגיית הבדיקה לרמה של בדיקת מערכת שלמה.
רכיבים אלה אשר בצורתם הפשוטה ביותר יכולים להיחשב כהתקני ריבוב (multiplexers) בעלי כתובת גישה, מאפשרים בדיקות חיבוריות (קצר, נתק) בין כרטיסים בעלי רכיבי JTAG , לדוגמא: בדיקות של לוח אם וכרטיסי מרפסת, בדיקות כרטיסי BackPlane וסלי כרטיסים, כמו כן ניתן לעדכן גרסאות תוכנה לרכיבים הנצרבים.
בשיטה זו ניתן לאתר תקלות הרכבה של מערכות הכוללות מספר כרטיסים חשמליים ואימות תקינות המערכת לאחר האינטגרציה ולפני שליחה ללקוח הסופי.
שימוש ברכיבי “ריבוב” מאפשר חיסכון בכמות המחברים והקווים של ארכיטקטורת ה- JTAG  במערכת, והוא דבר חשוב בפני עצמו.
יש כמה אסטרטגיות בהן ניתן להשתמש על מנת לנתב את קווי ה-JTAG  במערכת:
ארכיטקטורות כגון: חיבור טבעת, חיבור כוכב או ארכיטקטורת שכבות (Multi-Drop), אך רק האחרונה למעשה מבוססת על תקן ה- IEEE1149.1 והיא הגישה הנפוצה כיום בשוק ולמעשה האמינה ביותר המבטיחה גמישות מרבית בתכנון המערכת.
במסגרת אסטרטגית ה- Multi-Drop חמשת קווי הגישה המרכזיים של ה-JTAG מחוברים בצורה מקבילה לכל כרטיסי המערכת על גבי כרטיס הבסיס (Back-Plane).

איור מספר 1: ארכיטקטורת JTAG בסיסית ברמת מעגל חשמלי

איור מספר 2: שימוש באסטרטגיית Multi-Drop לחיבור קווי ה-JTAG במערכת

ע”י הקצאה של שישה או שבעה קווים ייעודיים בחומרת כרטיס הבסיס לכל מחבר של כרטיס משנה, נקבל סך של 64 עד 128 כתובות ייחודיות או למעשה כתובת לכל כרטיס משנה (Addressable Slots), כדוגמא באיור מספר 2.
מבדק Jtag – Boundary Scan שמחובר לקווים בכרטיס הבסיס של המערכת
(GSC – Global Scan Chain) ומשדר עליהם, יכול לגשת לכל אחד מכרטיסי המערכת ע”י שידור הכתובת הייחודית בקו כניסת הנתונים (TDI), רק כרטיס המשנה במערכת המחזיק בכתובת המשודרת “יתעורר לחיים”, למעשה רכיב השער (Scan Bridge or Gateway) שממוקם על אותו כרטיס משנה, הוא זה שיאפשר גישה אליו ואל שרשרת ה- JTAG  המקומית (Local Scan Chain).
רכיבי “שער” (Scan-Bridge) לבדיקות JTAG ברמת מערכת זמינים היום ממספר יצרנים כדוגמא: חברת FireCron או נשיונל סמיקונדקטור. התפקיד העיקרי של רכיבים אלו הוא לספק גישה מרמה של שרשרת JTAG  גלובלית (GSC) לרמת שרשראות מקומיות (LSCs) וספציפיות לכל כרטיס במערכת.
בחירה של שרשרת או שרשראות מקומיות (LSCs) יכול להתבצע באופן נפרד או משותף (כשרשור) ובכל שילוב רצוי, על מנת לספק גמישות מלאה עבור הבדיקה הרצויה.
תכונה זו שימושית במיוחד עבור מקרים בהם נדרשת צריבה של זיכרון פלאש – ראה איור 3.
בנסיבות אלה מספר הוקטורים הנדרשים לעבור סביב שרשרת ה-JTAG  גדול מאוד, על מנת לנסות ולייעל את זמני המחזור וקיצור זמן הצריבה הכולל של הפלאש, צריך לנסות ולקצר למינימום את כמות הרכיבים המעורבים בצריבה ואורך שרשראות הסריקה.
רכיבי שער מודרניים תומכים כיום גם בממשקים ישירים עבור פונקציות  מיוחדות כגון: Jtag Technologies AutoWrite המאפשר גישה ישירה מהמבדק לקו ה- Write Enable של הפלאש ובכך מקטין את מספר הווקטורים הנדרשים במחזור כתיבה ומקצר את זמן הצריבה בצורה משמעותית.

שליטה המשובצת בתוך המערכת (Embedded Control)
בתרחישים שדברנו עד כה ההנחה הייתה שמערכת בדיקה כגון: Jtag Technologies מחוברת לשרשרת הגלובלית (GSC) בסל הכרטיסים הנבדק ע”י כבל, והיא שדוחפת את הקווים ובודקת את המערכת.
עם זאת יש מספר ארכיטקטורות שונות שבעזרתן ניתן להטמיע בקרי בדיקה תומכי תקן IEEE1149.1 ברמת מערכת, וליישם למערכת יכולות בדיקה עצמית מובנות (BIST – Built in Self-Test).
יכולות אילו לרוב הן בעלות אופי של “בדיקות חשמליות” לאיתור תקלות מבניות ולא בדיקות פונקציונאליות לביצועי מערכת.
רכיבי שער כגון: STA101 (של נשיונל סמיקונדקטור) או JTS01 (של Firecron) יכולים להיות מונעים ע”י  המעבד של סל הכרטיסים או המערכת, הטמעה זו אינה נפוצה מאוד למרות שקיימת כבר שנים רבות.
חברת Jtag Technologies מציעה בנוסף למערכות הבדיקה הרגילות, גם בקר מובנה, המיועד לשימוש כחלק מתכנון המערכת (הוא למעשה כרטיס מרפסת קטן הכולל מעבד, זיכרון וממשק צריבה) ומסוגל לתרגם ולהחזיק מערכי בדיקה עבור המערכת.
בנוסף ניתן לרתום כיום את בקרי הבדיקה לאחת מיציאות התקשורת פרוטוקולים רחבות הסרט של המערכת ושתשמש כצינור גישה לארכיטקטורת ה-1149.1 IEEE.
דוגמא נוספת: היא מערכת ה- “Tap-Communicator” של חברת Jtag Technologies המאפשר בתקשורת  מסוג: (Gigabit Ethernet (IEEE 802.3z 1998 ושימוש ביחידות Down-link  ו-  Up-linkלהעברה של פרוטוקולי  בדיקת ה- JTAG בין המבדק (מבדקי JTAG סטנדרטיים של כל חברה) ולבין היחידה הנבדקת המרוחקת.
טכנולוגיה זו קיימת היום כמערכת מהמדף, או בתור קניין רוחני (IP) כתכן חשמלי וקוד VHDL או Verilog שנרכש ברישיון וניתן להטמיעו בתוך רכיבי המערכת הלוגיים (ASIC or FPGA).

מה עוד ניתן לעשות?
מכיוון שטכנולוגיית ה- TAP-Communicator רבגונית ניתן להשתמש בה במערכות תקשורת שונות כגון CAN  או Arinc בתחום הצבאי וכמובן Bluetooth  או תקשורת אלחוטיות באפליקציות שונות ואכן, גם טכנולוגיית SpaceWire כבר יושמה ב- TAP-Communicator כדי להקל על בדיקות ואבחון מרחוק של מערכות לוויינים בחלל.
חשוב להדגיש, במערכות בהן בקר הבדיקה מוטמע אפשר לבצע בדיקה עצמאית לחלוטין של המערכת, וגם בדיקה לאחר אתחול (Power-on Self-Test) מכיוון שווקטורי הבדיקה נמצאים על זיכרון פלאש במערכת.
יכולות אלו מאפשרות איתור תקלות למערכות שנמצאות בשטח, ויכולת החלפה של כרטיס תקול בצורה יעילה ומהירה.
ניתן לתכנן את המערכת כך שיהיה בקר אחד או מספר בקרים מוטמעים על כרטיסי המערכת, אבל מכיוון שבדרך כלל הנטייה היא שכרטיס הבסיס (Back-Plane) של המערכת יהיה פסיבי וללא רכיבים, המימוש הנפוץ הוא שאחד מכרטיסי המערכת הוא הראשי (MASTER) ועליו הבקר, שאר הכרטיסים הם משניים (SLAVES),  בצורה זו מערכי הבדיקה אם לבדיקת כרטיס בודד או בדיקת מספר כרטיסים והחיבור ביניהם מונעים מהכרטיס הראשי ובשליטתו, כמו כן ניתן להפעיל בדיקות מובנות מהירות (embedded at-speed BIST), ועדכוני תוכנה של רכיבי זיכרון פלאש ורכיבי לוגיקה נטענים (PLD’s).

איור מספר 3: חיבור של שרשרת מקומית אחת בלבד לטובת צריבת זיכרון פלאש מהירה

לסיכום:
בזכות הדרישה הגוברת של לקוחות הואץ הפיתוח של תקן ה- IEEE1149.1:Boundary-Scan ולמעשה הפכה הטכנולוגיה לנפוצה והמקובלת ביותר בתחום בדיקות הרכיבים ומעגלים החשמליים.
כמו כן נעשה שימוש נרחב בתשתית ה-JTAG  לטובת יכולות נוספות של ניהול ושליטה על רכיבים ומערכות.
הפיתוחים הנוספים של יכולות בדיקה מובנות בזכות בקרי בדיקה מוטמעים, ויכולות בדיקה עצמיות BIST, הרחיב את השימוש בטכנולוגיית JTAG  לרמת מערכת ונעשה נפוץ יותר ויותר במערכות גדולות ומורכבות, גם בתחום הצבאי וגם במערכות תקשורת נתונים.
יתכן ובקרוב נראה הרחבה נוספת לתקן המקור (IEEE1149.1) אשר יגדיר כללים וארכיטקטורה אחידה לבדיקה של מערכות שלמות.

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