מעבד במערכות SOC
ידוע שעיקר האתגר במערכות ספרתית על פיסת סיליקון אחת (SOC), היא בדיקת התכנון - VERIFICATION. לכן השימוש ביחידות בדוקות מראש, הוא הכוון המבטיח. בחלק גדול מהתכנונים יש צורך במעבד פנימי (על אותו CHIP). אל המעבד מתחברים רכיבים נוספים (peripheral) כמו בקר זיכרון, בקר תקשורת טורית וכ"ד. רכיבים אלו (IP CORES), זמינים לשימוש הלקוח. בכדי שרכיבי המדף האלו, יכתבו ויבדקו באופן עצמאי , יש להשתמש בתקינה אחידה שבה יוכלו מכיני הרכיבים להכינם ללא תלות בלקוח.
אחד מהתקנים הללו הוא AMBA BUS של חברת ARM. התקן מגדיר שני מערכות (BUSSES). אחד מהיר לכל המרכיבים שדרושים להם ביצועים גבוהים (AHB). השני מיועד לרכיבים לא מהירים, שעבורם חשוב להוריד את צריכת ההספק ושטח על פיסת הסיליקון (APB).
בפרויקטים רוצים לפעמים לבדוק את התכנון לפני מסירה של קוד למערכת הגדולה, באופן עצמאי. היתרונות לכך ברורים: מערכת קטנה זמן מחשב הדרוש לבדיקה הוא קצר בדרך כלל נמשך מספר דקות, לעומת זמן של שעות או ימים במערכת הגדולה המכילה את כל המרכיבים.
במערכת הגדולה בדרך כלל מקפידים על הפרדה בין קבוצות של מפתחי הקוד ובדיקתו. ישנם קבוצות תכנון, בדיקות. במערכת הקטנה כל העבודה תהיה בחלקו של המתכנן. לכן נשאלת השאלה איך ניתן למנוע שגיאה חוזרת בקוד התכנון והבדיקה שלו שכאמור צריכה לעשות על ידי אותו מהנדס. כאן רצוי להשתמש כמה שניתן בקוד ובתכנונים קיימים ובדוקים, שניתן להורידם חינם מהרשת.
לסוכנות החלל האירופאית יש פרויקט חופשי של קוד פתוח (ברובו) של מעבד (LEON). הקוד כתוב בשפת VHDL. המעבד משתמש AMBA.
אני הוצאתי מספר מרכיבים בדוקים ממנו וחיברתי אותם כך שניתן ליצור מחולל פעולות (TRANSACTIONS) של AHB MASTER ו APB MASTER.
פרטים נוספים, הסברים נוספים, קוד חופשי וצורת גלים (VCD) ניתן כמובן למצוא באתר שלי.
ידוע שעיקר האתגר במערכות ספרתית על פיסת סיליקון אחת (SOC), היא בדיקת התכנון - VERIFICATION. לכן השימוש ביחידות בדוקות מראש, הוא הכוון המבטיח. בחלק גדול מהתכנונים יש צורך במעבד פנימי (על אותו CHIP). אל המעבד מתחברים רכיבים נוספים (peripheral) כמו בקר זיכרון, בקר תקשורת טורית וכ"ד. רכיבים אלו (IP CORES), זמינים לשימוש הלקוח. בכדי שרכיבי המדף האלו, יכתבו ויבדקו באופן עצמאי , יש להשתמש בתקינה אחידה שבה יוכלו מכיני הרכיבים להכינם ללא תלות בלקוח.
אחד מהתקנים הללו הוא AMBA BUS של חברת ARM. התקן מגדיר שני מערכות (BUSSES). אחד מהיר לכל המרכיבים שדרושים להם ביצועים גבוהים (AHB). השני מיועד לרכיבים לא מהירים, שעבורם חשוב להוריד את צריכת ההספק ושטח על פיסת הסיליקון (APB).
בפרויקטים רוצים לפעמים לבדוק את התכנון לפני מסירה של קוד למערכת הגדולה, באופן עצמאי. היתרונות לכך ברורים: מערכת קטנה זמן מחשב הדרוש לבדיקה הוא קצר בדרך כלל נמשך מספר דקות, לעומת זמן של שעות או ימים במערכת הגדולה המכילה את כל המרכיבים.
במערכת הגדולה בדרך כלל מקפידים על הפרדה בין קבוצות של מפתחי הקוד ובדיקתו. ישנם קבוצות תכנון, בדיקות. במערכת הקטנה כל העבודה תהיה בחלקו של המתכנן. לכן נשאלת השאלה איך ניתן למנוע שגיאה חוזרת בקוד התכנון והבדיקה שלו שכאמור צריכה לעשות על ידי אותו מהנדס. כאן רצוי להשתמש כמה שניתן בקוד ובתכנונים קיימים ובדוקים, שניתן להורידם חינם מהרשת.
לסוכנות החלל האירופאית יש פרויקט חופשי של קוד פתוח (ברובו) של מעבד (LEON). הקוד כתוב בשפת VHDL. המעבד משתמש AMBA.
אני הוצאתי מספר מרכיבים בדוקים ממנו וחיברתי אותם כך שניתן ליצור מחולל פעולות (TRANSACTIONS) של AHB MASTER ו APB MASTER.
פרטים נוספים, הסברים נוספים, קוד חופשי וצורת גלים (VCD) ניתן כמובן למצוא באתר שלי.
Free lance contractor specialize in digital hardware design and verification.