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

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. V. A. Pedroni. Circuit Design with VHDL. Third Edition, MIT Press 2020
  2. SystemC User’s Guide. Version 2.0, SystemC Consortium, 2002.
  3. Orhan Gazi. A Tutorial Introduction to VHDL Programming. Springer, 2019.
  4. D. L. Perry. VHDL: Programming by examples. 4th Edition, McGraw Hill, 2002.