תוכן עניינים:

מערכת פיתוח לוגו הניתנת לתכנות (CPLD): 13 שלבים
מערכת פיתוח לוגו הניתנת לתכנות (CPLD): 13 שלבים

וִידֵאוֹ: מערכת פיתוח לוגו הניתנת לתכנות (CPLD): 13 שלבים

וִידֵאוֹ: מערכת פיתוח לוגו הניתנת לתכנות (CPLD): 13 שלבים
וִידֵאוֹ: בואו ליצור מערכת ניהול לקוחות מותאמת אישית לעסק שלכם 2024, נוֹבֶמבֶּר
Anonim
מערכת פיתוח לוגו הניתנת לתכנות (CPLD)
מערכת פיתוח לוגו הניתנת לתכנות (CPLD)

בחודשים האחרונים אני נהנה ממערכת פיתוח הגטו למעבדי ה- AVR. למעשה, הכלי הזה כמעט אפס דולר הוכיח את עצמו כל כך מרתק ושימושי שגרם לי לתהות אם אפשר להרחיב את הרעיון גם לפיתוח FPGA/CPLD. (FPGA: מערך שער הניתן לתכנות בשטח. CPLD: מכשיר לוגי לתכנות מורכב.) אז עשיתי קצת חפירה באינטרנט והמצאתי מערכת פיתוח עבור Atmel CPLDs. השוואה עם מכשירי Altera מראה שהסיכה שלהם זהה (בתוך המגבלות שאפרט להלן), כך שהם גם יעבדו. על ידי בניית לוח הפיתוח וכבל הממשק אציג ולאחר מכן הורדת הכלים תוכל לפתח יישומי CPLD משלך. שימו לב למגבלות ולהגבלות הבאות. ניסיתי לאזן בין היכולת והפשטות, כך שתוכל לבנות משהו שתיהנה ממנו ותלמד ממכשירי 5V בלבד. הרחבת המערכת לכסות מתח נוסף (3.3V, 2.5V, 1.8V נתמכים על ידי מכשירי Atmel באותה משפחה) אינה קשה, אך היא מסבכת את לוח הפיתוח ואת כבל התכנות. בוא נדלג על זה לעת עתה. שים לב שעליך לספק אספקת 5V ללוח.44 פינים PLCC בלבד. באופן ספציפי, תיכננתי את Atmel ATF1504AS. ניתן להרחיב את קונספט ה- Ghetto CPLD בקלות למכשירי Atmel אחרים, אך מכשיר זה נראה כפשרה טובה בין מחיר, קלות שימוש ויכולת. הרעיון צריך להתרחב גם למכשירים אחרים כגון אלה של Altera, Xilinx, Actel וכו '. למעשה, משפחת Max7000 EPM7032 ו- EPM7064 יעבדו באותו שקע כל עוד אתה משתמש בגרסאות ה- PLCC של 44 פינים. עד כה השתמשתי רק בכבל התכנות Atmel, אך ה- Altera Byte-Blaster נתמך על ידי תוכנת Atmel והוא אמור לפעול היטב. זה בעצם קצת יותר פשוט מהכבל Atmel. (בניתי את גרסת Atmel וזה עובד, אז לא ניסיתי את גרסת Altera.) SparkFun מציעה גרסה של 15 $ של כבל Altera. מכיוון שזה יעבוד הן לאטמל והן לאלטרה, אני ממליץ עליו. אם אתה מתפתח עם חלקי Altera, תרצה לקבל גם את תוכנת Altera. לא ממש ניסיתי את זה, אבל אין שום סיבה שאני יכול לחשוב שזה לא יעבוד. המהירות מוגבלת. מכיוון שמערכת הפיתוח CPLD של הגטו בנויה עם חיווט ביד וללא מטוס קרקע, אל תצפה להפעלה אמינה במהירויות של כמה מגה -הרץ בודדים. אפילו שזה לא מובטח שהקילומטראז 'שלך עשוי להשתנות! כמובן שאם אתה בונה חומרת אב טיפוס שיש לה מטוס קרקעי, ה- CPLD שלך עשוי לעבוד מצוין במהירויות גבוהות יותר. רק אל תצפה שהוא ילך מהר במערכת הפיתוח של הגטו.

שלב 1: עבור להזמין חלקים

לכו להזמין חלקים
לכו להזמין חלקים

תזדקק לשקע plcc עם 44 פינים, כמה כובעי ניתוק, כמה CPLD לא מתוכנתים, שקעים לחיבורי לוח, לחצן משיכה ואולי איזה לוח פרפור לבנות עליו. אם יש לך משהו מכל זה בקופסת הזבל שלך אתה יכול לחסוך כמה דולרים. לנוחיותך, להלן מספרי חלקים של Digikey: CONN PLCC SOCKET 44POS TIN PN: 1-822473-4-ND SOCKET IC OPEN FRAME 14POS.3 "PN: 3M5462-ND כמות: 2SOCKET IC OPEN FRAME 18POS.3 "PN: 3M5464-ND כמות: 2CAP ELECT 10UF 50V SU BI-POLAR PN: P1280-ND כמות: 1, C1CAP CER.10UF 50V 20% DISC RAD PN: 478 -4275-1-ND כמות: 4, C2-C5RES METAL FILM 5.10K OHM 1/4W 1% PN: P5.10KCACT-ND PC BOARD FR4 1-SIDE PPH 4.0X4.0 PN: V2010-ND IC CPLD 64 MACROCELL 10NS 44PLCC PN: ATF1504AS-10JC44-ND לכמה חלקים עשויים להיות כמויות מינימליות, אך עדיין אמור להיות די זול. אם ברצונך לבנות כמה בלינקרים (שלב 8) או להכין קבוצת מתגים (שלב 9) ייתכן שתרצה להזמין. גם אלה. זכור כי ל- Digikey יש מינימום של 25 $ כדי להימנע מתשלום טיפול, כך שאולי תרצה לקבל כמה CPLDs נוספים שאינם מתוכנתים או מעבד AVR או שניים סתם בשביל הכיף. אני ממליץ לך לקנות את כבל התכנות Altera מ- SparkFun. להלן מספרי החלקים. קבל גם את הכבל והמחבר. (אחרת, הזמינו חלקים לכבל מ- Digikey אם אתם בונים משלכם.) Altera FPGA תואם מתכנת PN: PGM-087052x5 Pin IDC סרט כבל PN: PRT-085352x5 Pin Headered Header PN: PRT-08506

שלב 2: קבל והתקן תוכנה

קבל והתקן תוכנה
קבל והתקן תוכנה

אני משתמש כרגע בשרשרת הכלים Atmel Prochip Designer 5.0. כלי זה מחייב אותך להירשם לאטמל ולמלא את טופס הבקשה הרשמי שלהם. אמרתי להם שאני מהנדס עיצוב, כיום מובטל, והמטרה העיקרית שלי הייתה ללמוד את המכשירים שלהם ואת ה- VHDL (הכל נכון, BTW). הם אישרו את בקשת הרישיון. התפיסה היחידה היא שהרישיון טוב למשך 6 חודשים בלבד. אני מקווה למצוא שרשרת כלים לרשות הציבור עד לפקיעתה. לאלטרה יש גם שרשרת כלים שאוכל לבדוק. כל הצעה תתקבל בברכה. ראה הערות וקישורים בשלב האחרון. Atmel Prochip Designer 5.0 נמצא כאן. אם אתה מקבל את זה, הקפד לקבל את Service Pack 1 גם עבור זה.

שלב 3: צור כבל תכנות

צור כבל תכנות
צור כבל תכנות

הגישה הקלה ביותר כאן היא לקנות את העבודה של Altera Byte-Blaster מדומה מ- Sparkfun (ראה שלב 1). אם 15 $ הוא יותר ממה שאתה מעוניין להוציא, תוכל להשתמש בסכימה הכבל של SparkFun Altera או להשתמש בכרטיס סכמטי ובניית שריטות. (אם יש עניין רב בבניית שריטות של הכבל, אני יכול להציע כמה הצעות, אבל ערכת Sparkfun נראית לי התשובה הנכונה.)

שלב 4: הפוך את המתכנת לעריסה

הפוך את המתכנת לעריסה
הפוך את המתכנת לעריסה
הפוך את המתכנת לעריסה
הפוך את המתכנת לעריסה
הפוך את המתכנת לעריסה
הפוך את המתכנת לעריסה

תסתכל על מתכנת Atmel. זה מאוד גמיש וזו אופציה מצוינת אם יש לך כסף ותכננת לבצע הרבה פיתוח CPLD. Altera מציע משהו דומה, אני מאמין. אבל הלכתי בגישה זולה יותר - על זה כל העניין! התמונות מציגות מבט מלפנים ומאחור על העריסה שבניתי. שימו לב לשקעי ה- DIP המשמשים כמחברי קרש לחם. כל הסיכות בצד אחד של כל מחבר מחוברות לקרקע; סיכות בצד השני מתחברות לסיכות אותות ב- CPLD. כללתי גם כמה חיבורי חשמל; הכניסו אותם למקום שבו הם מתאימים. התרשימים הם מעין תרשימים ציוריים; רק חיבורי החשמל הנוספים אינם מוצגים. תסתכל בתמונות לרעיונות בנושא.

שלב 5: בניית העריסה - חלק 1

בניית העריסה - חלק 1
בניית העריסה - חלק 1
בניית העריסה - חלק 1
בניית העריסה - חלק 1

התחל לבנות את העריסה על ידי הכנסת השקעים במקומות שבהם אתה רוצה אותם. אפשר שורה או שתיים פנויות כך שיהיה מקום לכובעי הניתוק. זה גם מקל על החיבור לסיכות האות CPLD. עוגן את השקעים במעט הלחמה או אפוקסי בהתאם לסוג לוח ה perf. אפשר קצת מקום נוסף בחלקו העליון (מעל סיכה 1 של שקע CPLD) למחבר JTAG ולמחבר החשמל. עיין בתמונות של זה שבניתי. חוט חוט חשוף (20 מד בערך) סביב החלק החיצוני של השקעים לאוטובוס קרקע. יש לנתב גם את אוטובוס הכוח. (החוט האדום בתמונות.) עיין בתמונות להדרכה מסוימת, אך כנראה שהלוח שלך יהיה קצת שונה - וזה בסדר גמור. זה יעזור לעגן את חוט האוטובוס.

שלב 6: בניית העריסה - חלק 2

בניית העריסה - חלק 2
בניית העריסה - חלק 2
בניית העריסה - חלק 2
בניית העריסה - חלק 2

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

שלב 7: בניית העריסה - סיכום

בניית העריסה - סיכום
בניית העריסה - סיכום
בניית העריסה - סיכום
בניית העריסה - סיכום
בניית העריסה - סיכום
בניית העריסה - סיכום

נתב את חיבורי JTAG לפינים הנכונים. תסתכל בכבל התכנות שלך כדי לוודא שהמחבר מכוון נכון. אל תשכח את המשיכה על סיכת ה- TDO. זה מוצג בתמונה בלבד ועובר בין סיכת TDO ל- Vcc. השלב האחרון הוא לחבר כל פין קלט/פלט של ה- CPLD לסיכה על השקעים. השתמש במספרים בתרשימים עבור החיבורים. זה לוקח את הזמן הארוך ביותר! אם תעקוב אחר תכנית המספור שלי, תוכל להשתמש בתרשים של Top View כמדריך בעת חיבור המעגלים שלך. אתה באמת לא צריך לחבר את כל אלה בתחילה אתה יכול לחכות עד שתזדקק להם למעגלים שאתה מעצב. בדוק היטב את עבודתך. וודא שהכוח והאדמה אינם קצרים!

שלב 8: צור בלינקלייטס (גרסת TTL)

צור בלינקלייטס (גרסת TTL)
צור בלינקלייטס (גרסת TTL)

אתה רוצה לראות את המעגלים שלך עובדים, כמובן. אז תרצה כמה בלינקלייטס (שהתפרסם על ידי The Real Elliot). התפיסה היחידה היא של- CPLDs אין תפוקות בשרניות שיש למעבדי AVR. השתמש בנורות LED המדורגות 10ma והשתמש בנגדים מסדרת 1KOhm. אלה יתנו לך אותות פלט ברורים מבלי להתאמץ על יציאות ה- CPLD.

שלב 9: בצע מתגים

בצעו מתגים
בצעו מתגים
בצעו מתגים
בצעו מתגים

כדי לספק גירויים למעגלים שלך, תזדקק לכמה מתגים. יש לך כמה אפשרויות כאן, אך הדרישות שונות מאשר למעבדי AVR. לתפוקות CPLD אין את הסגירות המובנות וזה לא כל כך פשוט לבצע ניתוק בתוכנה. (זה אפשרי, אבל לוקח משאבים שכנראה אתה רוצה להשתמש בהם במעגלים שלך.) מתגי ה- DIP המוצגים מספקים מספר מתגים באריזה נוחה, אך יש למשוך אותם כלפי מעלה. השתמשתי ב- 1K pull-ups. Pushbutons ניתן להכין באמצעות מעגל Atmel ממליץ ללוח ההדגמה שלהם. סכמות מופיעות בעמוד 36. אופציה נוספת היא לחבר מעבד AVR כדי לספק גירויים - ואפילו לבדוק תגובות. אבל זה תרגיל שנותר לתלמיד.

שלב 10: צור את המעגל הראשון שלך

צור את המעגל הראשון שלך
צור את המעגל הראשון שלך
צור את המעגל הראשון שלך
צור את המעגל הראשון שלך

בשלב זה היית צריך להשיג ולהתקין את התוכנה. עקוב אחר ההדרכה היסודית והמפורטת ליצירת מעגל ה- CPLD הפשוט הראשון שלך (שני כניסות AND שער; לא הופך להיות הרבה יותר פשוט). הקפד לבחור את המכשיר הנכון (44 פינים PLCC, 5V, 1504AS [פרטים]) ובחר מספרי פיני קלט/פלט הזמינים (השתמשתי ב -14 וב -16 כקלט, 28 כפלט). פרטים אלה שונים במקצת מהדרכה, אך לא אמורים לגרום לך בעיות.

שלב 11: תכנת ה- CPLD הראשון שלך

תכנת ה- CPLD הראשון שלך
תכנת ה- CPLD הראשון שלך
תכנת ה- CPLD הראשון שלך
תכנת ה- CPLD הראשון שלך

חבר את כבל התכנות שלך ליציאה המקבילה במחשב האישי שלך, חבר אותו למתקן המתכנת שלך, חבר 5 וולט למחבר החשמל ובצע את ההדרכה כדי לתכנת למעשה את ה- CPLD הראשון שלך. בחר את הגרסה הנכונה של הכבל. שים לב ש- Altera Byte-Blaster היא אחת האפשרויות.

שלב 12: בדוק את החלק המתוכנת שלך

בדוק את החלק המתוכנת שלך!
בדוק את החלק המתוכנת שלך!
בדוק את החלק המתוכנת שלך!
בדוק את החלק המתוכנת שלך!

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

שלב 13: הסוף וכמה משאבי אינטרנט

הסוף וכמה משאבי אינטרנט
הסוף וכמה משאבי אינטרנט

זו לא מטרת הדרכה זו ללמד אותך כיצד להשתמש ב- VHDL. (אני רק מתחיל ללמוד בגלל זה יצרתי את המתכנת, זוכר?) עם זאת, מצאתי כמה הדרכות מועילות מאוד וכמה משאבים שימושיים שאוכל להפנות אותך אליהם. משוב והצעות אחרות מוערכים מאוד. שים לב שאתה יכול גם להשתמש במערכת הפיתוח של Ghetto CPLD כדי ללמוד Verilog וטכניקות תכנות CPLD אחרות שהחומרה לא מעניינת. משאבי VHDL באינטרנט: יסודות וכמה קישורים לכאן ולכאן. קישורים אל כלים בחינם. הדרכות שאני אוהב נמצאות כאן וכאן, אבל תמצא הרבה אחרות. לבסוף (לעת עתה), תרצה לבדוק את קבוצת הדיון. תהנה, למד הרבה ושתף את מה שאתה יודע.

מוּמלָץ: