Microsemi -LOGO

Microsemi DG0618 איתור ותיקון שגיאות במכשירי SmartFusion2 המשתמשים בזיכרון DDR

Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-Using-DDR Memory-PRODUCT-IMAGE

מטה התאגידים של Microsemi
One Enterprise, Aliso Viejo,
CA 92656 ארה"ב
בתוך ארה"ב: +1 800-713-4113
מחוץ לארה"ב: +1 949-380-6100
פקס: 1+ 949-215-4996
אֶלֶקטרוֹנִי: sales.support@microsemi.com
www.microsemi.com
© 2017 Microsemi Corporation. כל הזכויות שמורות. Microsemi והלוגו של Microsemi הם סימנים מסחריים של Microsemi Corporation. כל שאר הסימנים המסחריים וסימני השירות הם רכושם של בעליהם בהתאמה

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

על Microsemi
Microsemi Corporation (נאסד"ק: MSCC) מציעה פורטפוליו מקיף של פתרונות מוליכים למחצה ומערכות עבור תעופה וחלל והגנה, תקשורת, מרכזי נתונים ושווקים תעשייתיים. המוצרים כוללים מעגלים משולבים של אותות מעורבים אנלוגיים בעלי ביצועים גבוהים ומוקשים בקרינה, FPGAs, SoCs ו-ASICs; מוצרי ניהול חשמל; מכשירי תזמון וסנכרון ופתרונות זמן מדויקים, מציבים את הסטנדרט העולמי לזמן; מכשירים לעיבוד קול; פתרונות RF; רכיבים בדידים; פתרונות אחסון ותקשורת ארגוניים, טכנולוגיות אבטחה ואנטי-ט ניתן להרחבהampER מוצרים; פתרונות Ethernet; Power-over-Ethernet ICs ו-midspans; כמו גם יכולות ושירותי עיצוב מותאמים אישית. מטה מיקרוסמי נמצא ב-Aliso Viejo, קליפורניה, ויש לו כ-4,800 עובדים ברחבי העולם. למידע נוסף ב www.microsemi.com.

היסטוריית גרסאות

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

  • גרסה 4.0
    עדכן את המסמך עבור מהדורת התוכנה Libero v11.8.
  • גרסה 3.0
    עדכן את המסמך עבור מהדורת התוכנה Libero v11.7.
  • גרסה 2.0
    עדכן את המסמך עבור מהדורת התוכנה Libero v11.6.
  • גרסה 1.0
    מהדורה ראשונית עבור שחרור תוכנת Libero SoC v11.5.

איתור ותיקון שגיאות במכשירי SmartFusion2 המשתמשים בזיכרון DDR

מָבוֹא
בסביבה רגישה לאירוע יחיד (SEU), זיכרון גישה אקראית (RAM) נוטה לשגיאות חולפות הנגרמות על ידי יונים כבדים.
מסמך זה מתאר את יכולות ה-EDAC של ה-SoC FPGA, המשמשות ביישומים עם זיכרונות המחוברים דרך תת-מערכת המיקרו-בקר (MSS) DDR (MDDR).
בקרי ה-EDAC המיושמים בהתקני SmartFusion2 תומכים בתיקון שגיאות בודדות וזיהוי שגיאות כפולות (SECDED). כל הזיכרונות - זיכרון גישה אקראית סטטי משופר (eSRAM), DDR, DDR בהספק נמוך (LPDDR) - בתוך התקני SmartFusion2 MSS מוגנים על ידי SECDED. זיכרון DDR סינכרוני דינמי גישה אקראית (SDRAM) יכול להיות DDR2, DDR3 או LPDDR1, בהתאם לתצורת MDDR וליכולות ECC של החומרה.
מערכת המשנה SmartFusion2 MDDR תומכת בצפיפות זיכרון של עד 4 GB. בהדגמה זו, אתה יכול לבחור כל מיקום זיכרון של 1 GB במרחב הכתובות של DDR (0xA0000000 עד 0xDFFFFFFF).
כאשר SECDED מופעל:

  • פעולת כתיבה מחשבת ומוסיפה 8 סיביות של קוד SECDED (לכל 64 סיביות של נתונים)
  • פעולת קריאה קוראת ובודקת את הנתונים מול קוד ה-SECDED המאוחסן כדי לתמוך בתיקון שגיאות 1-bit וזיהוי שגיאות של 2-bit

האיור הבא מתאר את דיאגרמת הבלוק של SmartFusion2 EDAC ב-DDR SDRAM.

איור 1 • תרשים בלוקים ברמה העליונה

תכונת EDAC של DDR תומכת בדברים הבאים:

  1.  מנגנון SECDED
  2. מספק פסיקות למעבד ARM Cortex-M3 ולמארג FPGA לאחר זיהוי של שגיאה של 1 סיביות או שגיאה של 2 סיביות
  3. מאחסן את מספר השגיאות של 1-bit ו-2-bit באוגרי מונה השגיאות
  4. מאחסן את הכתובת של מיקום הזיכרון האחרון שהושפע על ידי 1-bit או 2-bit
  5. מאחסן את נתוני השגיאה של 1 סיביות או 2 סיביות באוגרי SECDED
  6. מספק אותות אפיק שגיאה למארג ה-FPGA

למידע נוסף על EDAC, ראה UG0443: SmartFusion2 ו-IGLOO2 FPGA Security and Reliability User Guide ו-UG0446: SmartFusion2 ו-IGLOO2 FPGA High-Speed ​​DDR Interfaces Guide.

דרישות עיצוב
הטבלה הבאה מפרטת את דרישות העיצוב.

טבלה 1 • דרישות עיצוב

  • תיאור דרישות העיצוב
  • דרישות חומרה
  • SmartFusion2 Advanced Development Kit לוח Rev B ואילך
  • מתכנת FlashPro5 ומעלה
  • כבל USB A ל-mini-B
  • מתאם מתח 12 וולט
  • לוח הבת DDR3
  • מערכת הפעלה כל 64 סיביות או 32 סיביות של Windows XP SP2
  • כל 64 סיביות או 32 סיביות Windows 7
  • דרישות תוכנה
  • Libero® System-on-Chip (SoC) v11.8
  • SoftConsole v4.0
  • תוכנת תכנות FlashPro v11.8
  • מנהלי התקן למחשב מארח USB ל-UART מנהלי התקנים
  • מסגרת להפעלת הדגמה של לקוח Microsoft .NET Framework 4

עיצוב הדגמה
עיצוב ההדגמה files זמינים להורדה מהנתיב הבא ב-Microsemi webאֲתַר: http://soc.microsemi.com/download/rsc/?f=m2s_dg0618_liberov11p8_df
עיצוב ההדגמה files כוללים:

  • תצורת DDR File
  • DDR_EDAC
  • תִכנוּת files
  • בר הפעלה GUI
  • קרא לי file

האיור הבא מתאר את המבנה ברמה העליונה של העיצוב fileס. לפרטים נוספים, עיין ב-readme.txt file.

איור 2 • מבנה ברמה העליונה של עיצוב הדגמה

Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-2

יישום עיצוב הדגמה
למערכת המשנה MDDR יש בקר EDAC ייעודי. EDAC מזהה שגיאה של 1-bit או 2-bit כאשר קוראים נתונים מהזיכרון. אם EDAC מזהה את השגיאה של 1 סיביות, בקר EDAC מתקן את סיביות השגיאה. אם EDAC מופעל עבור כל השגיאות של 1 סיביות ו-2 סיביות, מונים שגיאות תואמים באוגרי המערכת מוגדלים ומוצרים פסיקות מתאימות ואותות אפיק שגיאה למארג ה-FPGA.
זה קורה בזמן אמת. כדי להדגים תכונה זו של SECDED, שגיאה מוצגת באופן ידני ונצפה באיתור ותיקון.
עיצוב הדגמה זה כולל יישום של השלבים הבאים:

  1. הפעל את EDAC
  2. כתוב נתונים ל-DDR
  3. קרא נתונים מ-DDR
  4. השבת את EDAC
  5. פגום 1 או 2 ביטים
  6. כתוב נתונים ל-DDR
  7. הפעל את EDAC
  8. קרא את הנתונים
  9. במקרה של שגיאה של 1 סיביות, בקר EDAC מתקן את השגיאה, מעדכן את אוגרי המצב המתאימים ונותן את הנתונים שנכתבו בשלב 2 בפעולת הקריאה שנעשתה בשלב 8.
  10. במקרה של שגיאה של 2 סיביות, נוצרת הפסקה מתאימה ועל האפליקציה לתקן את הנתונים או לנקוט בפעולה המתאימה במטפל ההפרעות. שתי השיטות הללו מודגמות בהדגמה זו.

שתי בדיקות מיושמות בהדגמה זו: בדיקת לולאה ובדיקה ידנית והן ישימות לשגיאות של 1-bit ו-2-bit.

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

  1. הפעל את בקר EDAC
  2. כתוב את הנתונים למיקום הזיכרון הספציפי של DDR
  3. השבת את בקר EDAC
  4. כתוב את נתוני השגיאה של 1 סיביות או 2 סיביות לאותו מיקום זיכרון DDR
  5. הפעל את בקר EDAC
  6. קרא את הנתונים מאותו מיקום זיכרון DDR
  7. שלח את נתוני זיהוי השגיאות של 1-bit או 2-bit ותיקון שגיאות של 1-bit במקרה של שגיאה של 1-bit לממשק המשתמש

בדיקה ידנית
שיטה זו מאפשרת בדיקה ידנית של זיהוי ותיקון שגיאות של 1-bit וזיהוי שגיאות של 2-bit עבור כתובת זיכרון DDR (0xA0000000 עד 0xDFFFFFFF) עם אתחול. שגיאת 1-bit/2-bit מוצגת באופן ידני לכתובת זיכרון DDR שנבחרה. הנתונים הנתונים נכתבים למיקום זיכרון ה-DDR שנבחר כאשר EDAC מופעל. נתוני השגיאה הפגומים של 1-bit או 2-bit נכתבים לאחר מכן לאותו מיקום זיכרון כאשר EDAC מושבת. המידע על השגיאה של 1 סיביות או 2 סיביות שזוהתה נרשם כאשר הנתונים נקראים מאותו מיקום זיכרון עם EDAC מופעל. בקר DMA בעל ביצועים גבוהים
(HPDMA) משמש לקריאת הנתונים מזיכרון ה-DDR. המטפל בפסיקה לזיהוי שגיאות כפול סיביות מיושם כדי לנקוט בפעולה המתאימה כאשר מזוהה שגיאה של 2 סיביות.
האיור הבא מתאר את פעולות ההדגמה של EDAC.

איור 3 • זרימת עיצוב

Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-3

פֶּתֶק: עבור שגיאה של 2 סיביות, כאשר מעבד Cortex-M3 קורא את הנתונים, ביצוע הקוד נכנס למטפל בתקלות הקשיח, מכיוון שההפסקה שהתקבלה מאחרת למעבד להגיב. בזמן שהוא מגיב להפרעה, ייתכן שהוא כבר העביר את הנתונים והפעיל בטעות פקודה. כתוצאה מכך, ה-HRESP מפסיק לעבד את הנתונים השגויים. זיהוי שגיאות של 2 סיביות משתמש ב-HPDMA כדי לקרוא את הנתונים ממיקום כתובת ה-DDR, מה שמנחה את המעבד שבקריאת הנתונים יש שגיאה של 2 סיביות ועל המערכת לנקוט בפעולה מתאימה כדי לשחזר (ECC Interrupt Handler).

הגדרת עיצוב ההדגמה
סעיף זה מתאר את הגדרת לוח SmartFusion2 Advanced Development Kit, אפשרויות ה-GUI וכיצד לבצע את עיצוב ההדגמה.
השלבים הבאים מתארים כיצד להגדיר את ההדגמה:

  1. חבר קצה אחד של כבל USB mini-B למחבר J33 המסופק בלוח SmartFusion2 Advanced Development Kit. חבר את הקצה השני של כבל ה-USB למחשב המארח. דיודה פולטת אור (LED) DS27 חייבת להידלק, מה שמציין שקישור UART הוקם. ודא שמנהלי ההתקן של גשר USB ל-UART מזוהים אוטומטית (ניתן לאמת במנהל ההתקנים), כפי שמוצג באיור הבא.
    איור 4 • מנהלי התקן USB ל-UART Bridge
    Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-4
    אם לא מותקנים מנהלי התקנים של גשר USB ל-UART, הורד והתקן את מנהלי ההתקן מ: www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip.
  2. חבר את המגשרים בלוח SmartFusion2 Advanced Development Kit, כפי שמוצג בטבלה 4, עמוד 11. יש לכבות את מתג אספקת החשמל SW7, בזמן ביצוע חיבורי המגשרים.

איור 5 • הגדרת לוח ערכת פיתוח מתקדמת SmartFusion2

Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-5

 ממשק משתמש גרפי
סעיף זה מתאר את ה-DDR – EDAC Demo GUI.

איור 6 • DDR – EDAC Demo GUI

Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-6

ה-GUI תומך בתכונות הבאות:

  1. בחירת יציאת COM וקצב Baud
  2. בחירה של כרטיסיית תיקון שגיאה של 1 סיביות או זיהוי שגיאות של 2 סיביות
  3. שדה כתובת כדי לכתוב או לקרוא נתונים לכתובת DDR שצוינה או ממנה
  4. שדה נתונים כדי לכתוב או לקרוא נתונים לכתובת DDR שצוינה או ממנה
  5. מקטע מסוף סדרתי כדי להדפיס את מידע הסטטוס שהתקבל מהאפליקציה
  6. הפעל EDAC/השבת EDAC: מפעיל או משבית את ה-EDAC
  7. כתיבה: מאפשר כתיבת נתונים לכתובת שצוינה
  8.  קריאה: מאפשר קריאת נתונים מהכתובת שצוינה
  9. בדיקת לולאה ON/OFF: מאפשר בדיקת מנגנון EDAC בשיטת לולאה
  10.  אתחול: מאפשר לאתחל את מיקום הזיכרון המוגדר מראש (בהדגמה זו A0000000-A000CFFF)

הפעלת עיצוב ההדגמה
השלבים הבאים מתארים כיצד להפעיל את העיצוב: השלבים הבאים מתארים כיצד להפעיל את העיצוב:

  1. הפעל את מתג האספקה, SW7.
  2. תכנת את התקן SmarFusion2 עם התכנות file מסופק בעיצוב files.(\תכנותFile\EDAC_DDR3.stp) באמצעות תוכנת עיצוב FlashPro, כפי שמוצג באיור הבא.
    איור 7 • חלון תכנות FlashPro
    Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-7
  3. לחץ על מתג SW6 כדי לאפס את הלוח לאחר תכנות מוצלח.
  4. הפעל את קובץ ההפעלה של EDAC_DDR Demo GUI file זמין בעיצוב files (\GUI Executable\ EDAC_DDR.exe). חלון ה-GUI מוצג, כפי שמוצג באיור 8, עמוד 9.
  5. לחץ על התחבר, זה בוחר את יציאת ה-COM ויוצר את החיבור. שינויים באפשרות החיבור לניתוק.
  6. בחר בכרטיסייה תיקון שגיאות 1-bit או 2-bit Error Detection.
  7. ניתן לבצע בדיקות ידניות ולולאות.
  8. לחץ על אתחול כדי לאתחל את זיכרון ה-DDR כדי לבצע את הבדיקות הידניות והלולאה, הודעת השלמת אתחול מוצגת ב-Serial Console, כפי שמוצג באיור 8, עמוד 9.

איור 8 • חלון האתחול הושלם

Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-8

ביצוע בדיקת לולאה
לחץ על בדיקת לולאה מופעל. הוא פועל במצב לולאה שבו מתבצע תיקון וזיהוי רציפים של שגיאות. כל הפעולות המבוצעות במכשיר SmartFusion2 נרשמות בקטע ה-Serial Console של ה-GUI.

טבלה 2 • כתובות זיכרון DDR3 המשמשות בבדיקת לולאה

  • זיכרון DDR3
  • תיקון שגיאה 1-bit 0xA0008000
  • זיהוי שגיאות של 2 סיביות 0xA000C000

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

טבלה 3 • כתובות זיכרון DDR3 המשמשות בבדיקה ידנית

שדות קלט כתובת ונתונים (השתמש בערכים הקסדצימליים של 32 סיביות).

  • זיכרון DDR3
  • תיקון שגיאה 1 סיביות 0xA0000000-0xA0004000
  • זיהוי שגיאות של 2 סיביות 0xA0004000-0xA0008000
  1. לחץ על הפעל EDAC.
  2. לחץ על כתוב.
  3. לחץ על השבת EDAC.
  4. שנה ביט אחד (במקרה של תיקון שגיאה של סיביות 1) או שני סיביות (במקרה של זיהוי שגיאות של 2 סיביות) בשדה נתונים (מציג שגיאה).
  5. לחץ על כתוב.
  6. לחץ על הפעל EDAC.
  7. לחץ על קרא.
  8. שים לב לשדה תצוגת ספירת שגיאות ונתונים בממשק המשתמש. ערך ספירת השגיאות גדל ב-1.

חלון תיקון לולאת השגיאה של 1 סיביות מוצג באיור הבא.

איור 9 • חלון זיהוי לולאת שגיאה 1-bit

Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-9

החלון הידני לזיהוי שגיאות של 2 סיביות מוצג באיור הבא.

איור 10 • חלון ידני לזיהוי שגיאות של 2 סיביות

Microsemi -DG0618-Error-Detection-and-Correction-on-SmartFusion2-Devices-using-DDR Memory-10

מַסְקָנָה
הדגמה זו מציגה יכולות SmartFusion2 SECDED עבור תת-המערכת MDDR.

נספח: הגדרות מגשר

הטבלה הבאה מציגה את כל המגשרים הנדרשים להגדרה בערכת הפיתוח המתקדמת SmartFusion2.

טבלה 4 • SmartFusion2 Advanced Development Kit Jumper הגדרות

מגשר : סיכה (מאת) : סיכה (אל) : הערות

  • J116, J353, J354, J54 1 2 אלו הן הגדרות המגשרים המוגדרות כברירת מחדל של Advanced
  • לוח ערכת פיתוח J123 2 3. ודא שמגשרים אלה מוגדרים בהתאם.
  • J124, J121, J32 1 2 JTAG תכנות באמצעות FTDI

DG0618 מדריך הדגמה גרסה 4.0

מסמכים / משאבים

Microsemi DG0618 איתור ותיקון שגיאות במכשירי SmartFusion2 המשתמשים בזיכרון DDR [pdfמדריך למשתמש
DG0618 זיהוי ותיקון שגיאות במכשירי SmartFusion2 המשתמשים בזיכרון DDR, DG0618, זיהוי ותיקון שגיאות במכשירי SmartFusion2 המשתמשים בזיכרון DDR, התקני SmartFusion2 המשתמשים בזיכרון DDR, זיכרון DDR

הפניות

השאר תגובה

כתובת האימייל שלך לא תפורסם. שדות חובה מסומנים *