עם הפופולריות הגוברת של מהנדסי מיקרו-בקרים משתמשים במיקרו-בקרים יותר מאשר ב- FPGA. המיקרו - בקרים הפכו לדומיננטיים ביחס ל- FPGA בגלל עלותם הזולה, התמיכה הטובה, הזמינות הקלה, הקהילה הגדולה, הרב-תכליתיות, התכנות וכו '. אך פרט לכך למיקרו-מעבדים יש מגבלות מסוימות, כגון ההוראות שנקבעו, ביצוע רציף של תוכניות (עיבוד עוקב) היעדר גמישות ושימוש חוזר וכו '. עם זאת ה- FPGA יכול להתגבר על מגבלות אלו מכיוון ש- FPGAs מבצעים ביצועים מקבילים של תוכניות והוא מאפשר לתכנת מחדש שוב ושוב למשימות שונות.
מה זה FPGA וכיצד הוא שונה ממיקרו-בקר
שדה-Programmable Array השער הוא שבב סיליקון מעגל משולב שבו יש מערך של שערים לוגיים, מערך זה יכול להיות מתוכן בתחום כלומר, המשתמש יכול להחליף את התצורות הקיימות עם התצורות המוגדרות החדשות שלה והוא יכול ליצור מעגל הדיגיטלי משלהם על מגרש. ה- FPGA יכולים להיחשב כצפנה ריקה. FPGAs לא עושים דבר בפני עצמו ואילו על מעצבים ליצור קובץ תצורה הנקרא לעתים קרובות קובץ bit עבור ה- FPGA. ה- FPGA יתנהג כמו המעגל הדיגיטלי ברגע שהוא נטען בקובץ סיביות.
בעוד שבמיקרו-בקרים זה לא המקרה שכן לא ניתן לתכנת או לבנות מחדש מיקרו-בקרים בשטח. המשתמש אינו רשאי להחליף את תצורותיו הקיימות ולא יכול ליצור מעגל דיגיטלי כלשהו בשטח. המיקרו-בקרים קלים לתכנות והקהילה גם רחבה. המיקרו-בקרים הם מחשבי מיני שנבנו בהתאמה אישית המגיעים בצורת IC בעוד ש- FPGA מכיל רק בלוקים לוגיים ששוב ניתן לחבר מחדש את החשמל. גם מבחינת מיקרו-בקרים, הוא צורך פחות חשמל מאשר FPGA. ידוע כי ה- FPGA הם יקרים וזה דורש עלות גבוהה יותר ממיקרו-בקר בכל הנוגע לבניית מכשיר כלשהו. להתקני FPGA לוקח הרבה יותר זמן בזמן שהמיקרו-בקרים זמינים שנבנו בקלות ליישומים ספציפיים.
FPGA אדריכלות
ל- FPGA מבנה קבוע של תאי לוגיקה או מודולים וקישורים אינטראקטיביים שנמצאים בשליטה מלאה של היזמים והמעצבים. ה- FPGA בנוי בעיקר עם שלושה בלוקים עיקריים כגון בלוק לוגי להגדרה (CLB), בלוקי I / O או רפידות וחוטי מטריקס / חיבורי מתג. להלן בקצרה נדון בכל בלוק.
- CLB (Block Logic Blockable Configure): אלה התאים הבסיסיים של FPGA. הוא מורכב ממחולל פונקציות אחד של 8 סיביות, שני מחוללי פונקציות של 16 סיביות, שני רושמים (כפכפים או תפסים) ובקרות ניתוב מתוכנות מחדש (מולטיפלקסרים). ה- CLB מיושמים ליישום פונקציות ומקרואים מתוכננים אחרים. לכל CLB יש תשומות בכל צד, מה שהופך אותם לגמישים למיפוי וחלוקה של הלוגיקה.
- רפידות קלט / פלט או בלוקים: רפידות הקלט / פלט משמשות לציוד היקפי החיצוני לגישה לפונקציות של FPGA ובאמצעות רפידות ה- I / O הן יכולות לתקשר עם FPGA ליישומים שונים המשתמשים בציוד היקפי שונה.
- חוטי מטריקס / חיבורי מתג : מתג מטריקס משמש ב- FPGA לחיבור חוטי החיבור הארוכים והקצרים יחד בשילוב גמיש. הוא מכיל גם את הטרנזיסטורים להפעלת / כיבוי חיבורים בין קווים שונים.
כאשר יש צורך ב- FPGA
כפי שהוזכר לעיל, למיקרו-בקרים יש מגבלה מסוימת ולא ניתן להשתמש בהם לביצוע משימה במקביל, שכן מיקרו-בקר ומיקרו-מעבדים פועלים על ביצוע רציף של תוכניות מה שהופך אותו למעט איטי בחלק מהיישומים, בתרחיש זה ל- FPGA יש יתרון וניתן להשתמש בהם בצורה יעילה. כמו כן מיקרו-בקר יכול לבצע משימות מוגבלות מכיוון שהם מגיעים עם הוראות והמעגלים שלהם. על מתכנת לעמוד במגבלות בעת פיתוח קוד. כך שגם בתרחיש זה, ל- FPGA יש יתרון.
עם זאת, במקרה של מיקרו-בקרים, המעבד עובר מקוד אחד למשנהו כדי להשיג רמה מסוימת של מקבילות. יהיה לך קל יותר לכתוב קודים על מיקרו-בקרים מאשר FPGA. יכולת העיבוד המקבילה של FPGAs מאפשרת לכם לשלוט הפרעות ביעילות באמצעות אוטומט סופי (FSMs).
במקרה של מיקרו-בקרים, עליך להסביר את הזמן שלוקח ISR כדי לפתור הפרעה. אתה יכול לחבר מחדש FPGA בקלות רק על ידי תכנותו מחדש. התצורה ב- FPGA נטענת על תאי הלוגיקה הניתנים להגדרה כאשר החשמל מופעל.
אין צורך לבצע שינויים בחומרה כדי לתכנת מחדש את ה- FPGA. מכשירי FPGA מתאימים לעיבוד מהיר של נתונים מקבילים ומגיעים עם רמת התאמה אישית גבוהה. עם זאת, יש להם גם חסרונות בתפעול אב-טיפוס ומורכבות התצורה. לכן, ניתן לבחור את ה- FPGA עם יתרונות אלה על פני מיקרו-בקרים. נתחיל בתכנות FPGA ונדגיש