بخشی از مقاله

خلاصه

امروزه FPGAs در کاربردهای صنعتی از اهمیت خاصی برخوردار هستند. از این رو، اطمینان از عملکرد صحیح آنها، از اهمیت ویژهای برخوردار است. ما در این مقاله، یک هسته تست داخلی از نوع خودتستکنندگی داخلی اتوماتیک را، در یک LUT با هدف تست و بررسی خطا، طراحی کردیم. جهت بررسی این روش از نرم افزار قدرتمند H_SPICE با دقت 45 نانومتر استفاده کردیم. از مزایای این روش اتوماتیک بودن، آشکارسازی خطاهای مختلف، حفظ اطلاعات اولیه و کاهش سربار سختافزاری به نسبت روش مقایسهای است.

.1 مقدمه

1FPGAs، نسل جدید مدارهای مجتمع دیجیتال قابل برنامهریزی هستند. عبارت FPGA از ابتدای کلمه های Field Programmable Logic Gate Array گرفته شده است، که امروزه در سیستمهای دیجیتالی کاربردهای زیادی دارند. آنها ساختارهای مهمی را جهت پیاده سازی و اصلاح مدارات منطقی در هر زمان دارند . با پیشرفت و پیچیدگی تکنولوژی، مشکلات بسیاری برای طراحان، جهت کنترل هزینههای تست از جمله افزایش تعداد پیکرهبندی یا صرف زمان بیشتر برای آشکارسازی تمامی نقصها ایجاد شده است. درنتیجه کاهش کلی هزینههای تست امری مهم است .[1]

بررسی این نوع تست بصورت ابتدایی به اواخر قرن 20 برمیگردد.[5-2] اما پیاده سازی آن بر روی FPGA های شرکتهای مختلف و عملی سازی آن مربوط به سالهای اخیر است .[8-6] به عنوان مثال اولین ساختار BIST2 برای LUTها در FPGAs در سال 1996 ارایه شد، که این تست قابل پیکرهبندی و بر پایه تست افلاین بود و از حافظه ی خارجی جهت ذخیره سازی پیکرهبندی و کلیه عملکردها در طول اجرای تست استفاده شد. این ساختار برخلاف داشتن سربارسخت افزاری بزرگ، حداکثر پوشش را به کمک الگوی شبه جامع ایجاد میکرد.[9

همچنین تست افلاین نخستین بار بر روی FPGA در مدل VIRTEX-4 در سال 2004 پیاده سازی شد، که هدف اصلی این پروژه را، افزایش پوشانندگی خطا در بلوکهای منطقی عنوان کردند.[10] اگر بخواهیم FPGA ها را به طور ساده تشریح کنیم، عبارت است از یک تراشه که از تعداد بالایی بلوک منطقی1، خطوط ارتباطی و پایه های ورودی/خروجی 2 تشکیل شده است که به صورت یک مجموعه در کنار یکدیگر قرار دارند. خطوط ارتباطی که وظیفهی آنها ارتباط بین بلوکهای منطقی است، از سوئیچ های قابل برنامه ریزی تشکیل شدهاند . این سوئیچها بسته به شرکت سازنده FPGA عملکرد متفاوتی دارند به عنوان نمونه برخی تنها یکبار و برخی به تعداد دفعات زیادی قابل برنامه ریزی هستند.[11]

سلولهای منطقی نیز دارای انواع مختلفی هستند، که عموما توسط المانی پایه ، تمامی توابع منطقی را ایجاد میکنند. بسیاری از سلولهای منطقی بر اساس جداول LUT ساخته میشوند . LUT از تعدادی سلولهای حافظه SRAM و MUX تشکیل میشود، که در هنگام برنامهریزی FPGA، پیکره بندی میشوند. به طور خلاصه LUT عبارت است از تولید توابع آماده برای استفاده در سلول های منطقی.[12]

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید