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

שעון עצר בסיסי באמצעות לוח VHDL ו- Basys3: 9 שלבים
שעון עצר בסיסי באמצעות לוח VHDL ו- Basys3: 9 שלבים

וִידֵאוֹ: שעון עצר בסיסי באמצעות לוח VHDL ו- Basys3: 9 שלבים

וִידֵאוֹ: שעון עצר בסיסי באמצעות לוח VHDL ו- Basys3: 9 שלבים
וִידֵאוֹ: איך ליצר סרטון הדרכה באמצעות לוח חכם 2024, נוֹבֶמבֶּר
Anonim
Image
Image

ברוכים הבאים למדריך כיצד לבנות שעון עצר באמצעות לוח VHDL בסיסי ו- Basys 3. אנו שמחים לשתף אתכם בפרויקט שלנו! זה היה פרויקט גמר לקורס CPE 133 (עיצוב דיגיטלי) ב- Cal Poly, SLO בסתיו 2016. הפרויקט שבנינו הוא שעון עצר פשוט שמתחיל, מאפס ומשהה את הזמן. הוא מכניס שלושה כפתורי לחיצה על לוח Basys3 ככניסות, והזמן מוצג בתצוגה של ארבעה ספרות של שבעה פלחים. הזמן שחלף מוצג בפורמט שניות: סנטיס שניות. הוא משתמש בשעון המערכת של הלוח כקלט כדי לעקוב אחר הזמן שחלף ומוציא את הזמן לארבע הספרות בתצוגת שבעה הפלחים.

שלב 1: חומרים

הגדרת כניסות ויציאות
הגדרת כניסות ויציאות

החומרים הדרושים לכם לפרויקט זה:

  • מחשב אחד עם Vivado Design Suite WebPack מותקן מ- Xilinx (עדיף גירסה 2016.2)
  • 1 Digilent Basys3 לוח Xilinx Artix-7 FPGA
  • כבל יציאת USB אחד

שלב 2: הגדרת כניסות ויציאות

האיור לעיל מציג תרשים בלוק ברמה העליונה של מודול שעון העצר הראשי. שעון העצר מכניס את כניסות "CLK" (שעון), "S1" (כפתור התחלה), "S2" (לחצן השהיה) ו- "RST" (איפוס) ויש לו פלט של 4 סיביות "אנודות", 7 סיביות פלט "קטע" ופלט סיביות יחיד "DP" (נקודה עשרונית). כאשר קלט "S1" גבוה, שעון העצר מתחיל לספור זמן. כאשר "S2" נמוך, שעון העצר מושהה את הזמן. כאשר "RST" גבוה, שעון העצר עוצר ומאפס את השעה. ישנם ארבעה מודולי משנה בתוך המעגל: מחלק השעונים, מונה הספרות, מנהל התצוגה של שבעה קטעים וקידוד התצוגה של שבעה פלחים. המודול הראשי של שעון העצר מקשר את כל תת המודולים יחד עם הכניסות והיציאות.

שלב 3: הכנת שעונים

הכנת שעונים
הכנת שעונים

מודול מחלק השעונים מקבל שעון מערכת ומשתמש בכניסת מחלק ליצירת שעון בכל מהירות שאינה גדולה מזו של שעון המערכת. שעון העצר משתמש בשני מודולי שעון שונים, אחד שיוצר שעון של 500 הרץ ואחר שיוצר שעון של 100 הרץ. סכמטי מחלק השעון מוצג באיור לעיל. מחלק השעון מקבל קלט סיביות יחיד "CLK", וכניסת 32 סיביות "מחלק" ופלט סיביות "CLKOUT". "CLK" הוא שעון המערכת ו- "CLKOUT" הוא השעון המתקבל. המודול כולל גם שער NOT, המחליף אות "CLKTOG" כאשר הספירה מגיעה לערך המחלק.

שלב 4: ספירה לעשרה

סופר עד עשר
סופר עד עשר

מונה הספרות סופר כל ספרה בין 0 ל -10 ויוצר שעון נוסף עבור הספרה הבאה שתתפקד מתוך זה מתנדנד כשהספירה מגיעה 10. המודול מקבל 3 כניסות סיביות בודדות "S", "RST" ו- "CLK "ומביא לפלט סיביות אחד" N "ולפלט של 4 סיביות" D ". קלט "S" הוא הפעלת הכניסה. השעון נדלק כאשר "S" גבוה וכיבוי כאשר "S" נמוך. "RST" הוא קלט האיפוס כך שהשעון מתאפס כאשר "RST" גבוה. "CLK" הוא קלט השעון של מונה הספרות. "N" הוא פלט השעון שהופך לשעון הקלט של הספרה הבאה. פלט "D" מציג את הערך הבינארי של הספרה בה מונה.

שלב 5: הצגת מספרים

הצגת מספרים
הצגת מספרים

מקודד התצוגה בן שבעה הפלחים יקודד את המספר הבינארי המתקבל ממודול מנהל התצוגה של שבעה פלחים ויהפוך אותו לזרם של סיביות שיתפרשו כערכי '1' או '0' עבור כל קטע בתצוגה. המספר הבינארי מתקבל על ידי המודול כ"ספרה "קלט של 4 סיביות ומביא ל"קטעי" פלט של 7 סיביות. המודול מורכב מחסימת תהליך מקרה יחיד המקצה זרם ספציפי של 7 סיביות לכל ערך קלט אפשרי מ -0 עד 9. כל ביט בזרמי שבעה סיביות מייצג את אחד משבעת מקטעי הספרות בתצוגה. סדר הקטעים בזרם הוא "abcdefg" כאשר '0' מייצגים את הקטעים הנאירים למספר הנתון.

שלב 6: כיצד להציג את שעון העצור

כיצד להציג את שעון העצור
כיצד להציג את שעון העצור

במודול התקן התצוגה של שבעה קטעים, יש ארבע כניסות של 4 סיביות "D0", "D1", "D2" ו- "D3", כל אחת מייצגת את ארבע הספרות שיוצגו. קלט "CLK" הוא קלט השעון של המערכת. פלט סיביות יחיד "DP" מייצג את הנקודה העשרונית בתצוגה של שבעה פלחים. פלט "4 האנודות" של 4 סיביות קובע איזו ספרה בתצוגת שבעה המגזרים מוצגת ו"טמפ "פלט של 4 סיביות תלוי במצב כניסת הבקרה של 2 סיביות" SEL ". המודול משתמש ב -4 מרבבים עבור קלט הבקרה "SEL" ושלושת היציאות; "Anodes", "temp" ו- "DP".

שלב 7: להביא את הכל ביחד

בלוק תהליכי 'אם' שעובד על שעון ה -500 הרץ משמש ליצירת לחצני ההתחלה וההשהיה. לאחר מכן חבר את כל תת המודולים יחד במודול הראשי של שעון העצר על ידי הצהרת המרכיבים של כל מודול משנה בודד ושימוש באותות שונים. תת המודולים של הספרות מקבלים את תפוקת השעון של תת המודול הקודם, כאשר הראשון לוקח את השעון של 100 הרץ. יציאות ה- "D" של תת המודולות של הספרות הופכות לאחר מכן לכניסות ה" D "של מודול התקן התצוגה של שבעת הקטע. ולבסוף פלט ה"טמפ '"של מודול הנהג התצוגה של שבעה קטעים הופך לקלט ה"טמפ" של מודול מקודד שבעת הקטע.

שלב 8: אילוצים

אילוצים
אילוצים

השתמש בשלושה כפתורי לחיצה (W19, T17 ו- U18) עבור כניסות "RST", "S1" ו- "S2". W19 הוא לחצן האיפוס, T17 הוא לחצן ההתחלה (S1) ו- U18 הוא לחצן ההשהיה (S2). יש צורך באילוץ עבור קלט קלט השעון גם באמצעות יציאה W5. כמו כן, זכור להוסיף שורה זו לאילוץ השעון:

create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports {CLK}]

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

שלב 9: בדיקה

בדיקה
בדיקה

וודא שהמכשיר שלך פועל על ידי משחק עם שלושת הכפתורים: לחיצה והחזקתם בכל סדר אפשרי על מנת למצוא בעיות אפשריות בקוד שלך.

מוּמלָץ: