درس:۴۰۸۴۳

طراحی الکترونیکی در سطح سیستم

Electronic System Level Design

شماره درس: ۴۰۸۴۳ تعداد واحد: ۳
مقطع: کارشناسی ارشد نوع درس: نظری
پیش‌نیاز: – هم‌نیاز: –

اهداف درس

هدف از اين درس، آشنایی دانش‌جویان با …

ریز مواد

  1. روند رشد متدولوژیهای طراحی سخت‌افزار و نرم‌افزار سیستمهای نهفته تا رسیدن به طراحی الکترونیک در سطح سیستم
    • مروري بر سير تكاملي روشها و ابزار طراحي سخت‏افزار
    • انگيزه‌هاي حرکت به سوي طراحی ESL.
  2. دسته بندی مباحث مطرح در طراحی ESL
    • توصیف (Specification)، سنتز، درستی‌سنجی (Validation).
    • تحلیل پیش از بخش‌بندی (Partitioning)، بخش‌بندی، تحلیل پس از بخش‌بندی، پیاده‌سازی سخت‌افزار، پیاده‌سازی نرم‌افزار، درستی‌سنجی پس از بخش‌بندی
  3. زبان سیستم‌سی و نحوه مدلسازی سخت‌افزار با این زبان
    • ماجول، پورت، پروسس، نوعهای داده‌ای، روشهای پیاده‌سازی مدارهای ترکیبی و ترتیبی، روشهای پیاده‌سازی ماشین حالت، سنتز مدلهای سیستم‌سی.
  4. یک روش سیستماتیک تبدیل برنامه‌های نرم‌افزاری به پیاده‌سازی سخت‌افزاری
    • آشنایی با مدل Finite State Machine with Datapath (FSMD) و اهمیت آن.
    • دسته بندی عمومی دستورات زبانهای نرم‌افزاری.
    • پیاده سازی هر Basic Block با استفاده از مدل FSMD.
    • روشی عمومی برای پیاده‌سازی یک برنامه با استفاده مدل FSMD.
    • معرفی موضوع سنتز رفتاری (Behavioral Synthesis یا سنتز سطح بالا: High Level Synthesis).
    • دسته‌بندی مباحث مطرح در سنتز سطح بالا: تخصیص منابع (Allocation)، زمان‌بندی (Scheduling)، انتساب منابع (Binding).
    • مرور روشها و الگوریتمهای معروف در سه مبحث پیش‌گفته.
  5. اهمیت و روشهای تبادل اطلاعات (Communication) بین اجزا در پیاده‌سازی سیستمها بصورت سخت‌افزار-نرم‌افزار
    • مثالی از پیاده‌سازی رمزنگار AES بصورت نرم‌افزاری و سپس تبدیل به سخت‌افزار و مقایسه میزان افت کارآیی به دلیل حجم Communication
    • مرور روشهای تبادل اطلاعات بین سخت‌افزار و نرم‌افزار، و نیز بین نرم‌افزار و نرم‌افزار در تک پردازنده‌ها و چند‌پردازنده‌ها
  6. مدلسازی در سطح تراکنشها (TLM: Transaction Level Modeling)
    • اهمیت جدا کردن محاسبات از مبادله اطلاعات.
    • موضوع کانال (Channel)، ویژگیها و اهمیت آن.
    • مدلهای TLM گاجسکی، اجزای آنها، و روند استفاده از آنها در یک طراحی بالا به پایین در سطح سیستم.
    • امکانات زبان سیستم‌سی برای تعریف کانال و نحوه استفاده از آن برای مدلسازی TLM.
  7. روشهای سنتز و بهینه سازی در سطح سیستم
    • مروري بر فاکتورهاي اصلي: کارآيي، مساحت، مصرف توان
    • الگوريتم‌هاي هم‌سنتز (Co-synthesis)
  8. روش‌ها و بسترهاي نوين پياده‌سازي سيستم‌هاي ديجيتال
    • مرور روند پيشرفت‌ فن‌آوري ساخت نيمه‌هادي‌ها تا System-on-Chip (SoC)
    • مرور روند پيشرفت FPGAها تا Programmable SoCهاي امروزي
    • چالش‌ها و فرصت‌هاي ناشي از پيشرفت‌هاي فوق
    • آموزش طراحي با ابزارهاي موجود براي طراحي با Programmable SoCها
  9. روشهای درستی‌سنجی در سطح سیستم
    • روش‌هاي مختلف هم‌شبيه‌سازي سخت‌افزار-نرم‌افزار.
    • مقدمه‌اي بر روش‌هاي وارسي صوري (Formal Verification) سيستمهاي سخت‌افزار-نرم‏افزاري.
  10. روشهای بهینه سازی سیستم در سطح نرم‌افزار
    • موضوع نوسان فرایند ساخت (Process Variation) و اهمیت و نقش آن.
    • الگوریتم مدیریت توان برخط برای بهینه‌سازی مصرف توان و کارآیی تراشه‌های چندپردازنده با درنظر گرفتن نوسان فرآیند ساخت.
    • بهینه‌سازی بازده توان با استفاده از زمانبندی پردازه‌ها در تراشه‌های چندپردازنده با درنظر گرفتن نوسان فرآیند ساخت.
    • روشهای تخصیص کد و داده‌ها به حافظه و تاثیر آن

ارزیابی

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

مراجع

1. Brian Bailey, Grant Martin, Andrew Piziali, “Electronic System Level Design and Verification,” Morgan Kaufmann Publishers, Series in Systems on Silicon, 2007.

2. W. Wolf, "Computers as Components: Principles of Embedded Computing System Design, " Morgan Kaufmann Publishers, 2001.

3. J. Staunstrup, W. Wolf, "Hardware/Software Codesign: Principles and Practice," Kluwer Academic Publishers, 1997

4. G. DeMicheli, "Hardware/Software Codesign", Kluwer Academic Publishers, 1996.

5. F. Balarin et al, "Hardware/Software Codesign: The POLIS Approach," Kluwer Academic Publishers, 1997.

درس/۴۰۸۴۳.txt · آخرین ویرایش: 2023/03/11 14:32 توسط مرتضی امینی