alliance-genpat - מקוון בענן

זהו ה-command alliance-genpat שניתן להריץ בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


genpat, מחולל קבצי דפוסים פרוצדורליים

תַקצִיר


genpat [-v] [-k] [קוֹבֶץ]

תיאור


Genpat הוא קבוצה של פונקציות C המאפשרת תיאור פרוצדורלי של קובץ דפוסי קלט
עבור סימולטור ההיגיון ASIMUT. יוניקס genpat הפקודה מקבלת קובץ C כקלט ו
מייצר קובץ תיאור דפוס כפלט. אין לתת את הסיומת ".c". ה
קובץ שנוצר על ידי genpat הוא בפורמט pat, אז זה מומלץ מאוד לראות טפיחה(5)
לפני מדריך זה.

אפשרויות


-v מצב מילולי

-k שומר את קובץ ההפעלה יחד עם הקומפילציה Makefile לאחר השלמתו

GENPAT קובץ פורמט


מנקודת מבט של משתמש, genpat היא שפת תיאור דפוס המשתמשת בכל תקן C
מתקנים (כוללים, מגדירים, משתנים, לולאה, ...). פונקציות מסופקות על ידי genpat הוא
לשמש בסדר נתון. שימוש בהם בסדר אחר לא תרסק את המערכת, אבל כן
לגרום לשגיאות ביצוע. להלן התיאור של קובץ הקלט.

A טפיחה ניתן לחלק את קובץ הפורמט לשני חלקים: הצהרה וחלק תיאור.

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

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

באופן דומה, א genpat ניתן לחלק את הקובץ לשני חלקים: הצהרה וחלק תיאור.
יש לקרוא לפונקציות הקשורות להצהרה לפני כל פונקציה הקשורה ל-
חלק תיאור.

הכרזה חלק
הדבר הראשון שעליך לעשות בחלק זה הוא לתת את שם קובץ הפלט
(ראה DEF_GENPAT(3)). לאחר מכן, חלק זה מאפשר לך להכריז על התשומות, ה
תפוקות ונקודות תצפית פנימיות (ראה הצהר(3)). אפשר גם
צור מערכים וירטואליים (ראה מַעֲרָך(3)).

תיאור חלק
לאחר הכרזת כל האותות, אתה יכול להתחיל להגדיר ערכי קלט שהם
ליישום על כניסות המעגל או ערכי פלט שאמורים להיות
השוו עם הערכים שנוצרו במהלך הסימולציה. (לִרְאוֹת להשפיע(3)). Genpat
מתאר את הגירוי לפי אירוע: רק מעברי אותות מתוארים. זֶה
חלק גם מאפשר לך לתת הוראות לכלי הסימולציה כדי לשמור את
מצב המעגל בסוף הסימולציה. (לִרְאוֹת לשמור(3)). דבר אחרון אתה
צריך לעשות בחלק זה הוא ליצור את קובץ הפלט (ראה SAV_GENPAT(3)).

פונקציות


DEF_GENPAT() מגדיר את שם קובץ הפלט.

SAV_GENPAT() לגרום לקובץ הפלט להיווצר

DECLAR() מכריז על תשומות, פלטים ונקודות התצפית הפנימיות.

מַעֲרָך() מאפשר לקבץ אותות מאותו סוג ב"מערך וירטואלי" ב
כדי להקל על המניפולציה שלהם

INIT() משנה את ערכי הרשמים בין שני תבניות.

להשפיע() מקצה ערך לאות, במספר דפוס נתון. ערך זה נשמר
על האות עד שיוקצה ערך חדש לאות.

לשמור() מודיע לכלי הסימולציה לשמור את מצב המעגל בסוף
הדמיה

תווית() נותן תווית לדפוס הנוכחי

GETCPAT() להחזיר את המספר של התבנית הנוכחית

דוגמאות


#לִכלוֹל
#include "genpat.h"

char *inttostr(entier)
int entier;
{
char * str;
str = (char *) mbkalloc (32 * sizeof (char));
sprintf (str, "%d",entier);
return(str);
}
/*--------------------------------------*/
/* סוף התיאור */
/*--------------------------------------*/

עיקרי ()
{
int i;
int j;
int cur_vect = 0;

DEF_GENPAT("דוגמה");

/* ממשק */
DECLAR ("א", ":2", "X", IN, "3 עד 0", "" );
DECLAR ("b", ":2", "X", IN, "3 עד 0", "" );
DECLAR ("s", ":2", "X", OUT, "3 downto 0", "" );
DECLAR ("vdd", ":2", "B", IN, "", "" );
DECLAR ("vss", ":2", "B", IN, "", "" );

LABEL ("מוסיף");
AFFECT ("0", "vdd", "0b1");
AFFECT ("0", "vss", "0b0");

עבור (i = 0; i <16; i ++)
{
עבור (j=0; j<16; j++)
{
AFFECT (inttostr(cur_vect), "a", inttostr(i) );
AFFECT (inttostr(cur_vect), "b", inttostr(j) );
cur_vect++;
}
}

SAV_GENPAT ();
}

הסביבה וריאציות


Genpat קורא את משתנה הסביבה VH_PATSFX כדי לתת לקובץ התוצאה סיומת.

השתמש ב-alliance-genpat באינטרנט באמצעות שירותי onworks.net



התוכניות המקוונות האחרונות של לינוקס ו-Windows