fpga چیست ؟ چرا باید از آن استفاده کرد ؟
FPGA یک مدار مجتمع قابل برنامه ریزی توسط کاربر ، با ظرفیت حدود 20000 تا چند میلیون گیت می باشد و با تکنولوژی CMOS ساخته شده است . FPGA و CPLD بر اساس سلول های منطقی قابل برنامه ریزی طراحی شده اند که در ارتباط بین این سلول ها نیز قابل برنامه ریزی می باشد چون FPGA و CPLD از نظر برنامه ریزی و کاربردی مشابه به هم هستند در برخی نوشته ها CPLD را نوعی FPGA می نامند . FPGA برای ساختن نمونه ای از مدار و طراحی سریع سیستم های دیجیتال ، بسیار مناسب می باشد و چون قابل برنامه ریزی است ، بنابراین به آسانی می توان متناسب با نیاز کابر تغییرات لازم را در طراحی انجام داد و FPGA را مجدداً برنامه ریزی نمود به عبارت دیگر نمونه جدیدی از سیستم دیجیتالی طراحی کرد .
مدارات برنامه پذیر به سه دسته تقسیم می شوند .
- حافظه های فقط خواندنی برنامه پذیر (PROM)
- افزاره های منطقی برنامه پذیر (PLD)
- آرایه ی دروازه های برنامه پذیر میانی (FPGA)
FPGA ها برنامه پذیری هستند که استفاده کننده نهایی می تواند آن را بدون داشتن تسهیلات ساخت پیکربندی نماید . استفاده از FPGA در اکثر کاربردها ، تمام مزایای سخت افزارهای سفارشی را دارند در حالی که نیاز به صرف هزینه و زمان ساخت را ندارند اولین FPGA در سال 1985 به وسیله شرکت Xliinx ارائه شد از آن زمان به بعد FPGA های متفاوتی توسط شرکت های مختلف تولید شده و می شود از جمله این شرکتها می توان به Altera ،Actel ،AT&T ، Motorola ،PLessey ، QuickLogic ، و Atmel اشاره کرد.
سرعت اجرای توابع منطقی در FPGA ها بسیار بالا و در حد نانو ثانیه میباشد . اگر بخواهیم FPGA را به طور ساده تشریح کنیم ، عبارت است از یک تراشه که از تعداد بالایی بلوک منطقی (LB ) و خطوط ارتباطی و پایه های ورودی / خروجی (IOB) تشکیل شده است که به صورت آرایه ای در کنار یکدیگر قرار گرفته اند . خطوط ارتباطی که وظیفه آنها ارتباط بین بلوک های منطقی است از سوئیچ های قابل برنامه ریزی تشکیل شده اند . این سوئیچ ها بسته به نوعی که دارند ، برخی تنها یکبار قابل برنامه ریزی بوده و برخی به تعداد دفعات زیادی برنامه ریزی میگردند . بلوک های منطقی نیز دارای انواع مختلفی میباشند که عموما توسط المانی پایه ، تمامی توابع منطقی را ایجاد مینمایند . به عنوان مثال بلوک های منطقی در خانواده ACT-1 از شرکت Actel ، با پایه مالتی پلکسری عمل مینمایند . به این معنا که توسط مالتی پلکسر ، توانایی ایجاد توابع منطقی مختلف را دارا میباشند . البته تعداد ورودی های هر بلوک منطقی متفاوت بوده و به نوع FPGA مربوط میگردد . به عنوان مثال بلوک های منطقی در خانواده ACT-1 از نوع 8 ورودی میباشد . در برخی موارد به بلوک های منطقی ، سلول های منطقی نیز گفته می شود (LC) . بلوک دیاگرام یک FPGA به طور ساده در شکل زیر نشان داده شده است:
البته بسیاری از سلول های منطقی بر اساس جداول LUT ساخته میشوند . LUT از تعدادی سلولهای حافظه SRAM تشکیل میگردد که در هنگام برنامه ریزی FPGA ، مقدار دهی میگردند . به طور خلاصه LUT عبارت است از تولید توابع آماده برای استفاده در سلول های منطقی . پیاده سازی توابع مختلف نیز به وسیله در کنار هم قرار گرفتن بلوک های منطقی و همچنین تنظیم ارتباط بین هر بلوک و به عهده گرفتن پردازش اطلاعات توسط هر بخش انجام میپذیرد.
در صورتی که سفارش پروژه fpga دارید و زمان کافی برای انجام ندارید با شماره 09108391389 کارشناسان متلب پروژه تماس بگیرید تا در کمترین زمان ممکن به درخواست شما پاسخ داده شود.