نمونه سازی fpga

نمونه سازی FPGA ، گاهی اوقات نیز به عنوان نمونه سازی مبتنی بر FPGA، نمونه سازی ASIC یا نمونه سازی SoC نامیده می‌شود، روشی برای طراحی نمونه SoC و ASIC در FPGA برای تایید سخت‌افزار و توسعه نرم‌افزار اولیه است.
روش‌های تایید طراحی سخت‌افزار و همچنین نرم‌افزار اولیه و طراحی مجدد سیستم عامل تبدیل به جریان اصلی شده‌اند. طراحی نمونه SoC و ASIC با یک یا چند FPGA به روش خوبی برای انجام این کار تبدیل شده‌است.
چرا نمونه سازی اهمیت دارد؟
طراحی SoC در نمونه اولیه FPGA یک راه قابل اطمینان برای اطمینان از کارکرد درست آن است. در مقایسه با طراحانی که تنها با تکیه بر شبیه سازی نرم‌افزاری، می‌توانند تایید کنند که طراحی سخت‌افزار آن‌ها درست است. حدود یک سوم از تمام طرح‌های SoC فعلی در طول عبور از اولین سیلیکون بدون خطا هستند، و تقریبا نیمی از همه چرخش‌های مجدد به دلیل اشتباهات منطقی در حین کار به وجود می‌آیند. یک بستر نمونه برداری اولیه می‌تواند قبل از اولین انتقال سیلیکون، سخت‌افزار، سیستم عامل و نرم‌افزار کاربردی نرم‌افزار را تایید کند.
کاهش TTM دوره(Time-To-Market):در جامعه تکنولوژیکی امروزی، محصولات جدید به سرعت در حال معرفی هستند و عدم دسترسی به یک محصول در یک بازار مشخص می‌تواند هزینه قابل توجهی را به شرکت تحمیل کند. اگر محصولی خیلی دیر وارد بازار شود، بی‌فایده خواهد بود و شرکت مسولیت سرمایه‌گذاری در محصول را بر عهده دارد. پس از فرایند طراحی، FPGAها برای تولید آماده می‌شوند، در حالی که تولید ASICهای استاندارد بیشتر از شش ماه طول می‌کشد.
هزینه توسعه:هزینه تولید ۹۰ نانومتر نوار ضبط ASIC / SoC در حدود ۲۰ میلیون دلار است و مجموعه ماسک به تنهایی بیش از ۱ میلیون دلار هزینه دارد. انتظار می‌رود که هزینه‌های توسعه ۴۵ نانومتر به ۴۰ میلیون دلار برسد. با افزایش هزینه مجموعه‌های ماسک و کاهش مداوم اندازه IC، به حداقل رساندن تعداد اسپین‌های مجدد برای فرایند توسعه حیاتی است.
طراحی برای نمونه سازی
موانعی که تیم‌های توسعه یافته که نمونه‌های FPGA را دریافت می‌کنند با آن روبه رو می‌شوند، می‌توانند به سه «قوانین» تقسیم شوند:
Socها از FPGAها بزرگ‌تر هستند.
Socها از FPGAها سریع‌تر هستند.
طرح‌های Socها ضد FPGA است.
قرار دادن یک طراحی SoC در یک نمونه اولیه FPGA مستلزم برنامه‌ریزی دقیق برای دستیابی به اهداف نمونه برداری با کمترین تلاش است. برای به حداقل رساندن توسعه نمونه اولیه، یکی از بهترین شیوه‌ها که به نام «طراحی برای نمونه سازی» (یا DFP) نامیده می‌شود، هم بر سبک طراحی SoC هم در شیوه‌های پروژه اعمال شده توسط تیم‌های طراحی تاثیر می‌گذارد. توصیه‌های رویه‌ای شامل افزودن توافقنامه DFP به استانداردهای برنامه‌نویسی RTL، استفاده از یک محیط شبیه سازی سازگار با نمونه اولیه و ایجاد استراتژی اشکال‌زدایی در سیستم با تیم نرم‌افزاری است.
اشکال زدایی
یکی از وظایف سخت‌افزاری و وقت گیر در نمونه سازی اولیه FPGA، طراحی سیستم‌های اشکال زدایی است. اشکال زدایی با ظهور طرح‌های بزرگ و پیچیده ASIC و SoC بسیار دشوار و وقت گیر شده‌است. برای رفع اشکال نمونه اولیه FPGA، پروب‌ها به‌طور مستقیم به طراحی RTL اضافه می‌شوند تا سیگنال‌های خاصی را برای مشاهده، سنتز و دانلود روی پلت فرم نمونه اولیه FPGA در دسترس قرار بدهند.
دو نمونه از ابزارهای استاندارد اشکال زدایی ارائه شده توسط فروشندگان FPGA , ChipScope و SignalTAP است. این ابزارها می‌توانند حداکثر ۱۰۲۴ سیگنال را بررسی کنند و نیاز به منابع LUT و حافظه گسترده داشته باشند. برای SoC و طرح‌های دیگر، اشکال زدایی کارآمد اغلب به دسترسی همزمان به سیگنال‌های ۱۰،۰۰۰ یا بیشتر نیاز دارد. اگر یک اشکال توسط مجموعه اولیه پروب‌ها پیدا نشود، دسترسی به سیگنال‌های اضافی در وضعیت «رفتن به خانه در روز» قرار می‌گیرد. این به دلیل جریانهای طولانی و پیچیده CAD برای سنتز و محل و مسیر است که می‌تواند از ۸ تا ۱۸ ساعت برای تکمیل نیاز داشته باشد.
رویکردهای پیشرفته شامل ابزارهایی مانند Certus از Tektronix یا EXOSTIV از آزمایشگاه‌های Exostiv است.
Certus در اشکال زدایی مبتنی بر FPGA دید را در سطح RTL بهبود می‌بخشد. این یک متمرکز کننده چند مرحله‌ای بسیار کارآمد را به عنوان پایه‌ای برای شبکه مشاهده برای کاهش تعداد LUTهای مورد نیاز در هر سیگنال برای افزایش تعداد سیگنال‌هایی که می‌تواند در یک فضای مشخص مورد بررسی قرار گیرد، استفاده می‌کند. توانایی مشاهده هر ترکیبی از سیگنال‌ها برای Certus منحصر به فرد است و از طریق یکی از مهم‌ترین تنگناها نمونه سازی می‌شود.