زبان‌های توصیف سخت‌افزار

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 و وریلاگ

ارزیابی

  • تمرین‌های نظری: ۳ نمره
  • آزمون‌‌های میان‌ترم و پایانی: ۱۵ نمره
  • آزمونک‌ها: ۲ نمره

مراجع

  1. SystemC User’s Guide. Ver. 2.0, SystemC Consortium, 2002.
  2. J Bhaskar. A SystemC Primer. Star Galaxy Publishing, 2002.
  3. Peter J. Ashenden. The designer's guide to VHDL. Elsevier (Morgan Kaufmann), 2008.
  4. Z. Navabi. VHDL: Analysis and Modeling of Digital Systems. McGraw Hill, 1998.
  5. D. L. Perry. VHDL: Programming by examples. McGraw Hill, 2002.