הבית > תערוכה > תוכן

מערך תכנות לתכנות שדה ותכנות

Mar 11, 2019

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


באמצעות אוטומציה אלקטרוניים כלי עיצוב, netlist ממופה טכנולוגיה מופק. Netlist יכול להיות מתאים לארכיטקטורת FPGA בפועל באמצעות תהליך הנקרא מקום ותוואי, המבוצע בדרך כלל על-ידי תוכנת הקניין והתוכנה הקניינית של חברת FPGA. המשתמש יאמת את תוצאות המפה, המקום והתוואי באמצעות ניתוח תזמון, סימולציה ואסטרטגיות אימות ואימות אחרות. לאחר שתהליך התכנון והאימות הושלם, הקובץ הבינארי שנוצר, בדרך כלל באמצעות התוכנה הקניינית של הספק FPGA, משמש כדי להגדיר מחדש את ה- FPGA. קובץ זה מועבר ל- FPGA / CPLD באמצעות ממשק טורי (JTAG) או להתקן זיכרון חיצוני כמו EEPROM.


הנפוצים ביותר הם HDLs VHDL ו Verilog וכן הרחבות כגון SystemVerilog. עם זאת, בניסיון להקטין את המורכבות של עיצוב HDLs, אשר הושוו המקבילה של שפות הרכבה, יש מהלכים להעלות את רמת הפשטה באמצעות הקדמה של שפות חלופיות. שפת התכנות הגרפית של National Instruments 'LabVIEW' (המכונה לעתים "G") כוללת מודול תוסף FPGA זמין למיקוד וחומרה של FPGA.


כדי לפשט את העיצוב של מערכות מורכבות FPGAs, קיימות ספריות של פונקציות מורכבות מראש ומעגלים שנבדקו אופטימיזציה כדי להאיץ את תהליך התכנון. מעגלים מוגדרים מראש אלה נקראים בדרך כלל ליבות קניין רוחני (IP), והם זמינים מספקי FPGA וספקי IP של צד שלישי. הם חופשיים לעתים רחוקות, ומשוחררים בדרך כלל תחת רישיונות קנייניים. מעגלים מוגדרים מראש אחרים זמינים בקהילות המפתחים כגון OpenCores (שוחררו בדרך כלל תחת רשיונות קוד פתוח וקוד פתוח כגון רשיון GPL, BSD או רישיון דומה) ומקורות אחרים. עיצובים אלה ידועים בשם "קוד פתוח".


ב זרימת עיצוב טיפוסית, מפתחת FPGA היישום יהיה לדמות את העיצוב בשלבים מרובים לאורך תהליך התכנון. בתחילה מדמה את תיאור ה- RTL ב- VHDL או Verilog על ידי יצירת ספסלי בדיקה כדי לדמות את המערכת ולצפות בתוצאות. לאחר מכן, לאחר שמנוע הסינתזה מיפה את העיצוב ל- netlist, netlist מתורגם לתיאור ברמת השער שבו הדמיה חוזרת על עצמה כדי לאשר את הסינתזה נמשכת ללא שגיאות. לבסוף העיצוב הוא הניח את FPGA שבו נקודת עיכובים הפצה ניתן להוסיף את הסימולציה לרוץ שוב עם ערכים אלה backoted על netlist.


לאחרונה, OpenCL (שפת המחשוב הפתוח) נמצאת בשימוש על ידי מתכנתים כדי לנצל את הביצועים ואת היעילות צריכת החשמל כי FPGAs לספק. OpenCL מאפשרת למתכנתים לפתח קוד בשפת התכנות C ופונקציות היעד FPGA כמו גרעיני OpenCL באמצעות בונה OpenCL. לקבלת מידע נוסף, ראה סינתזה ברמה גבוהה ו- C ל- HDL.