قبل از کاربرد FPGA باید ببینیم تعریف FPGA چیست و با چه زبانی برنامه ریزی میشود.

کاربرد FPGA چیست؟
FPGA چیست؟
FPGA (Field-Programmable Gate Array) نوعی پردازنده است که برعکس دیگر پردازنده ها در ابتدا سخت افزار از پیش طراحی شده ای ندارد.
در واقع در برنامه نویسی FPGA برعکس دیگر پردازنده ها در حال طراحی سخت افزار هستیم.
FPGA از واحد های LUT تشکیل شده است که با برنامه ریزی و اتصال صحیح آنها یک سخت افزار تشکیل میشود.
FPGA با زبان های طراحی سخت افزار مانند VHDL (Very High-Speed Integrated Circuit Hardware Description Language) یا Verilog توصیف میشود.
مهمترین مزیت FPGA نسبت به دیگر پردازند ها در موارد زیر است.
- پردازش موازی
- پردازش در زمان واقعی
- پردازش سریع
- انعطاف پذیری
- کم مصرف بودن
یک مثال برای درک تفاوت FPGA و ASIC
این یک IC ساده است با نام 7400 که چهار گیت NAND را برای ما راه اندازی میکند. فرضا یک قطعه سفارشی است که به صورت ASIC ساخته شده است.

FPGA چیست؟ تفاوت آن با ASIC
آیا با FPGA میتوان نظیر این آیسی را ساخت؟ جواب بله است. حالا تفاوت اینجاست که اگر نیاز باشد میتوان سخت افزار را در FPGA تغییر داد.
مثلا میخواهیم یک مالتی پلکسر ایجاد کنیم، با FPGA امکان پذیر است، اما این مدار مجتمع قابل تغییر نیست.
کاربردهای FPGA
صنایع مخابراتی
FPGA به دلیل خصوصیت هایی که دارد میتواند در بسیار از پروژه های مخابراتی به کار گرفته شود.
رادارها، روترها، آنتن ها، شبکه، فیلترها و دیگر موارد همواره با ترافیک های زیادی از داده ها مواجه هستند که باید آنها را دریافت، پردازش و ارسال کنند.
مخصوصا در مواردی که پردازش موازی لازم باشد و حجم دیتا بالا باشد استفاده از FPGA در مقابل دیگر پردازنده ها توصیه میشود.
میتوانید برای آگاهی بیشتر از کاربرد FPGA در مخابرات به این مقاله مراجعه کنید.
کابرد FPGA در صنعت نظامی
همانطور که میدانید معمولا صنایع نظامی صنایع حساسی هستند که باید با دقت بالا و با کمترین خطا داده ها را سریعا پردازش کنند.
FPGA در سامانه های مختلف مانند رادارها، موشکها، جمرها، جنگنده ها و بسیاری موارد دیگر مورد انتخاب قرار میگیرند. FPGA میتواند داده ها را در صنایع نظامی به سرعت و به صورت موازی پردازش کند.
علاوه بر آن در مواردی که تغذیه، باتری است، این پردازنده، با مصرف توان کمتر میتواند ساعات بیشتری روشن بماند.
کاربرد FPGA در الکترونیک قدرت
علم قدرت در گذشته، تبدیل ها را با استفاده از ترانس ها و ادوات با هسته های فولاد و رساناهای مسی سنگین و گران انجام میداد. الکترونیک قدرت تلفیق الکترونیک و قدرت است که هدف آن انجام کارهای قدرتی با علم الکترونیک است و از ادوات مختلفی تشکیل شده است.
به عنوان مثال مدارهای منبع تغذیه سوئیچینگ برای تنظیم دقیق ولتاژ خروجی و فیدبک گیری از آن و تولید پالس مناسب PWM نیاز به پردازنده های پر سرعت دارند.
در مثال دیگر میتوان درایو موتورهای الکتریکی را دید که با تنظیم صحیح شکل پالس میتوانند زاویه و یا دور موتور را کنترل کنند.
دیده میشود که استفاده از CPU هایی مانند هسته های ARM به دلیل ایجاد وقفه(Interrupt)، میتواند در برخی موارد مشکلات غیرقابل حلی را برای این سیستم ها ایجاد کند.
چرا که یک هسته CPU قادر نیست دو وظیفه را به صورت همزمان انجام دهد، برعکس پردازش موازی در FPGA ها.
کاربرد FPGA در مهندسی پزشکی
FPGA با توجه به قدرت پردازش و انعطاف پذیری که دارد میتواند نقش مهمی در بیوالکتریک ایفا کند.
گاهی اوقات، بهترین پردازنده برای دستگاههای مختلف تصویربرداری، دستگاههای عمل جراحی و دیگر دستگاههایی که نیاز به پردازش سریع و موازی داشته باشند، FPGA است.
میتوانید توضیحات بیشتر در مودر کاربرد FPGA در مهندسی پزشکی را در این مقاله بخوانید.
کاربرد FPGA در صنعت هوافضا
FPGA با توجه به ویژگی هایی که داراست، میتواند در بخش های مختلف صنعت هوافضا مورد استفاده قرار گیرد.
- سیستمهای کنترل ماهواره
- سیستمهای کنترل پرواز
- سیستمهای ارتباطی فضایی
دلیل دیگر کاربرد FPGA در صنایع فضایی
یکی دیگر از دلایل استفاده از FPGA در صنعت هوافضا، نویزهایی است که در جو زمین وجود ندارد اما در فضا دیده میشود. معمولا به آنها پرتوهای کیهانی نیز گفته میشود.
این پرتوها که از جنس های مختلف امواج الکترومغناطیس یا ذرات باردار یا غیر باردار هستند، میتوانند به سخت افزار نفوذ کرده و عملکرد آن را با اختلال مواجه کنند.
هرچند این اختلال صفر نخواهد بود و باید محافظ گذاری(shielding) شود، اما عملکرد FPGA در این گونه موارد بهتر از دیگر پردازنده هاست. حتی مداراتی برای مقابله با نویزهای کیهانی در نظر گرفته شده است.