زبانهای توصیف سختافزار
Hardware Description Languages
شماره درس: ۴۰۴۸۳ | تعداد واحد: ۳ |
مقطع: کارشناسی | نوع درس: نظری |
پیشنیاز: طراحی سیستمهای دیجیتال، معماری کامپیوتر | همنیاز: – |
اهداف درس
هدف از این درس آشنایی دانشجویان با ویژگیهای موردنیاز در زبانهای توصیف سختافزار در مقایسه با زبانهای نرمافزاری، مرور و معرفی سه زبان معروف طراحی سختافزار شامل VHDL، وریلاگ، و سیستمسی، کارکردن با زبانهای فوق و شناخت تفاوتهای مهم بین آنها در مدلسازی سختافزار و نیز درک تفاوتهای مدلسازی سختافزار و مدلسازی سیستم با سیستمسی است.
ریز مواد
- زبان سیستمسی و نحوهی مدلسازی سختافزار با آن
- تاریخچه و روند رشد زبان سیستمی
- ماژول و اجزای آن
- پورت و انواع آن، مفهوم سیگنال و کاربردهای آن
- انواع روال (process) در سیستمسی و کاربردهای آنها
- دادهگونهها (Data Types) در سیستمسی، منطق دوحالته، منطق چهار حالته، دادهگونهها برای عملیات محاسباتی، دادهگونهها برای عملیات بیتی
- Complex data types، نحوه تعریف و استفاده از struct برای سیگنالها و پورتها
- روشهای پیادهسازی مدارهای ترکیبی و ترتیبی با سیستمسی، استفاده از انواع مختلف پروسس برای این کار و تفاوتهای آنها
- ماشینحالت و انواع میلی و مور آن، روشهای پیادهسازی ماشین حالت با سیستمسی، توصیف ضمنی ماشین حالت، توصیف صریح ماشین حالت
- سنتز مدلهای سیستمسی، سنتز مدارهای ترکیبی، نکات مهم برای تولید مدار موردنظر، جلوگیری از تولید Latch، سنتز مدارهای ترتیبی و سبک توصیه شده برای این کار
- مدل Finite State Machine with Datapath (FSMD) و اهمیت آن، نحوهی پیادهسازی این مدل با سیستمسی
- زبان VHDL و نحوهی مدلسازی سختافزار با آن
- تاریخچه و روند رشد و نقاط قوت VHDL
- مرور ساختار کلی زبان
- انواع تاخیر در VHDL
- توصیف ساختاری، روشهای اتصال درگاهها، مثال طراحی فلیپ فلاپ، مثال طراحی ساختارهای تکراری
- نحوهی پارامتری کردن طرح و تعریف پیکربندی (config)
- انواع دادهها، آرایهها، دادههای فیزیکی
- منطق چند مقداره و بستههای مربوطه IEEE
- دستورالعمل process، طراحی ماشین حالت
- زیرمجموعهی قابل سنتز و سبکهای طراحی
- مرور سریع زبان وریلاگ و مقایسهی کیفی زبانهای سیستمسی، VHDL و وریلاگ
ارزیابی
- تمرینهای نظری: ۳ نمره
- آزمونهای میانترم و پایانی: ۱۵ نمره
- آزمونکها: ۲ نمره
مراجع
- SystemC User’s Guide. Ver. 2.0, SystemC Consortium, 2002.
- J Bhaskar. A SystemC Primer. Star Galaxy Publishing, 2002.
- Peter J. Ashenden. The designer's guide to VHDL. Elsevier (Morgan Kaufmann), 2008.
- Z. Navabi. VHDL: Analysis and Modeling of Digital Systems. McGraw Hill, 1998.
- D. L. Perry. VHDL: Programming by examples. McGraw Hill, 2002.