.TH GVHDL "1" "December 2005" "Debian/GNU Linux" "User Commands" .SH "نام (NAME)" gvhdl \- پیشخوان و رابط کامپایلر و شبیه‌ساز VHDL یعنی FreeHDL .SH "خلاصه دستور (SYNOPSIS)" .B gvhdl [\fIگزینه\fR] ... [\fIفایل‌های_VHDL\fR] ... [\fIفایل‌های_شیء\fR] ... .SH "توضیحات (DESCRIPTION)" .PP \fBFreeHDL\fR مجموعه‌ای از کامپایلر و شبیه‌ساز برای زبان توصیف سخت‌افزار VHDL است. این ابزار از استانداردهای VHDL'93 و همچنین VHDL'87 پشتیبانی می‌کند. .PP \fBFreeHDL\fR فایل‌های منبع اصلی VHDL را به ++C ترجمه می‌کند. سپس منبع ++C کامپایل شده و با هسته پیوند (link) داده می‌شود تا برنامه شبیه‌سازی ساخته شود. با اجرای فایل اجرایی تولیدشده، مدل VHDL مربوطه شبیه‌سازی خواهد شد. فرایند ساخت واقعی برای تولید شبیه‌ساز از منبع VHDL یک فرایند پیچیده است که توسط اسکریپت \fBgvhdl\fR مدیریت می‌شود. .PP \fIVHDL_FILES\fR فهرستی از نام‌های فایل‌های منبع VHDL است که باید به پسوند vhdl. یا vhd. ختم شوند. نام نخستین فایل VHDL نام فایل اجرایی شبیه‌ساز را نیز مشخص می‌کند؛ به این معنا که نام فایل اجرایی نهایی بر اساس نام اولین فایل VHDL بدون پسوند vhdl. یا vhd. تعیین می‌شود. توجه داشته باشید که فایل‌های شیء (object files) و همچنین فایل شبیه‌ساز در دایرکتوری جاری ایجاد خواهند شد. .PP \fIOBJECT_FILES\fR فهرستی از فایل‌های شیء را مشخص می‌کند که با فایل اجرایی شبیه‌ساز پیوند داده می‌شوند. دستور \fBgvhdl\fR تمامی فایل‌هایی را که به o. ختم می‌شوند به عنوان فایل شیء در نظر می‌گیرد. معمولاً این فایل‌های شیء قبلاً (با استفاده از گزینه c-) از کد منبع VHDL در طول یک مرحله کامپایل جداگانه تولید شده‌اند. .SH "گزینه‌ها (OPTIONS)" .TP \fB\-L\fR \fIVHDLLIB\fR مسیر دایرکتوری ریشه کتابخانه VHDL. کامپایلر درون این دایرکتوری به دنبال فایلی به نام \fIv2cc.libs\fR می‌گردد. فایل نگاشت \fIv2cc.libs\fR نام واحدهای کتابخانه را به دایرکتوری‌ها ترجمه می‌کند. توجه داشته باشید که می‌توان بیش از یک VHDLLIB را مشخص کرد. .TP \fB\-g\fR افزودن اطلاعات اشکال‌زدایی (دیباگ) به فایل اجرایی. به طور دقیق‌تر، این گزینه کد ماشین تولیدشده را به خطوط متناظر در فایل‌های منبع VHDL مرتبط می‌سازد. .TP \fB\-G\fR افزودن اطلاعات اشکال‌زدایی به فایل اجرایی بدون مرتبط کردن کد ماشین با خطوط منبع VHDL. این گزینه در واقع برای اشکال‌زدایی کد ++C تولیدشده به کار می‌رود. .TP \fB\-c\fR عدم تولید فایل اجرایی شبیه‌ساز. با استفاده از این گزینه، کامپایلر منبع VHDL را ترجمه کرده و آن را به کد شیء کامپایل می‌کند اما فایل اجرایی شبیه‌ساز نهایی را تولید نمی‌کند. این گزینه به ویژه برای کامپایل بسته‌های VHDL مفید است. .TP \fB\-l\fR \fILIBNAME\fR مرتبط کردن کد منبع VHDL با کتابخانه VHDL با نام LIBNAME. به طور پیش‌فرض از نام کتابخانه WORK استفاده می‌شود. این گزینه به ویژه زمانی مهم است که مؤلفه‌های VHDL از چندین کتابخانه VHDL باید در شبیه‌ساز ساخته شوند. توجه داشته باشید که برای استفاده موفقیت‌آمیز از یک مؤلفه VHDL از کتابخانه‌ای غیر از کتابخانه کاری جاری، فایل‌های VHDL متناظر باید توسط کامپایلر با استفاده از سازوکارهای شرح‌داده‌شده در v2cc.libs پیدا شوند. علاوه بر این، مؤلفه‌ها باید با گزینه مناسب l LIBNAME- کامپایل گردند. .TP \fB\--relaxed-component-visibility\fR اجازه پیوندهای پیش‌فرض نامرئی از \fIWORK\fR را می‌دهد. .TP \fB\--libieee\fR افزودن فایل‌های کتابخانه استاندارد IEEE به فایل اجرایی شبیه‌سازی. .SH "متغیرهای محیطی (ENVIRONMENT VARIABLES)" .TP \fBV2CC_LIBRARY_PATH\fR متغیر V2CC_LIBRARY_PATH شامل نام فایل‌ها یا مسیرهایی است که با ":" از یکدیگر جدا شده‌اند. علاوه بر این متغیر محیطی، می‌توانید از گزینه خط فرمان "L libdir-" با v2cc استفاده کنید. دایرکتوری‌های مشخص‌شده با "L-" پیش از دایرکتوری‌های مشخص‌شده توسط V2CC_LIBRARY_PATH اضافه می‌شوند. در مسیر نهایی کتابخانه، آن‌ها با همان ترتیبی که در خط فرمان آمده‌اند ظاهر خواهند شد. .SH "زیرمجموعه پشتیبانی‌شده VHDL (SUPPORTED VHDL SUBSET)" در حال حاضر، FreeHDL از کل استاندارد VHDL'93 پشتیبانی نمی‌کند. فهرست ناقص زیر نمایی کلی از مواردی که در حال حاضر پشتیبانی نمی‌شوند ارائه می‌دهد: .IP \(bu 2 انتساب مجزای متغیرهای صوری (formals) از نوع مرکب (composite) پشتیبانی نمی‌شود. .IP \(bu 2 متغیرهای مشترک (Shared variables) پشتیبانی نمی‌شوند. .IP \(bu 2 ویژگی‌های transaction، quiet، stable و delayed پشتیبانی نمی‌شوند. .IP \(bu 2 ویژگی‌های تعریف‌شده توسط کاربر پشتیبانی نمی‌شوند. .IP \(bu 2 گروه‌ها (Groups) پشتیبانی نمی‌شوند. .IP \(bu 2 انتساب‌های سیگنال محافظت‌شده (Guarded signal assignments) پشتیبانی نمی‌شوند. .IP \(bu 2 پیکربندی‌ها (Configurations) پشتیبانی نمی‌شوند. .IP \(bu 2 در حال حاضر، راه‌اندازها (درایورها) را نمی‌توان خاموش کرد. .SH "مثال‌ها (EXAMPLES)" .PP دستور: .PP .nf gvhdl -c adder.vhdl .fi .PP برای ساخت یک فایل شیء از adder.vhdl استفاده می‌شود. توجه داشته باشید که adder.vhdl ممکن است حاوی چندین مدل VHDL باشد. .PP دستور: .PP .nf gvhdl adder.vhdl .fi .PP یک شبیه‌ساز برای \fBآخرین\fR مدل VHDL یافت‌شده در adder.vhdl تولید خواهد کرد. با این حال، در این حالت، تمام مؤلفه‌های VHDL مورد نیاز برای ساخت شبیه‌ساز باید در فایل منبع VHDL گنجانده شده باشند. .PP دستور: .PP .nf gvhdl top.vhdl adder.o --libieee .fi .PP یک شبیه‌ساز برای \fBآخرین\fR مدل VHDL یافت‌شده در top.vhdl تولید می‌کند که این کار را با کامپایل تمام مدل‌های موجود در top.vhdl و پیوند دادن فایل شیء adder.o (که قبلاً تولید شده) و کتابخانه‌های استاندارد IEEE به فایل اجرایی انجام می‌دهد. .PP دستور: .PP .nf gvhdl -c -l mylib adder.vhdl .fi .PP یک فایل شیء شامل تمام مؤلفه‌های ارائه‌شده در adder.vhdl می‌سازد. با این حال، در این حالت مؤلفه‌ها به جای نام پیش‌فرض کتابخانه یعنی work، به کتابخانه mylib منتسب می‌شوند. توجه داشته باشید که گزینه l- فقط بر کد منبع ++C تولیدشده تأثیر می‌گذارد و محل ذخیره فایل‌های شیء یا فایل‌های اجرایی را تغییر نمی‌دهد. .SH "دستورات شبیه‌سازی (SIMULATION COMMANDS)" پس از راه‌اندازی شبیه‌ساز، خلاصه کوتاهی از دستورات در دسترس روی صفحه نمایش چاپ می‌شود: .PP .nf c : execute cycles = execute simulation cycles n : next = execute next simulation cycle q : quit = quit simulation r