FPGA
۱۴۰۵/۱/۲۷
یک FPGA (آرایه گیت قابل برنامهریزی میدانی) یک مدار مجتمع است که میتواند پس از تولید برنامهریزی شود. برخلاف تراشههای با عملکرد ثابت، منطق یک FPGA میتواند با استفاده از زبانهای توصیف سختافزار (HDL) مانند VHDL یا Verilog دوباره پیکربندی شود.
FPGA در استخراج
FPGAs در طیف سختافزار استخراج جایگاهی میانی دارند:
| سختافزار | انعطافپذیری | کارایی | هزینه |
|---|---|---|---|
| CPU | بالا | بسیار کم | کم |
| GPU | متوسط | کم–متوسط | متوسط |
| FPGA | متوسط | متوسط–بالا | بالا |
| ASIC | هیچ | بسیار بالا | بسیار بالا |
FPGAs برای الگوریتمهای خاص استخراج انرژی بیشتری نسبت به GPUها دارند، اما نیاز به تخصص فنی برای پیکربندی (نوشتن یا پیادهسازی بیتاستریمها) دارند.
زمانی که از FPGAs استفاده میشود
- آزمایش الگوریتم — قبل از اینکه ASICها بر یک کوین جدید تسلط پیدا کنند
- کوینهای مقاوم در برابر ASIC — برخی الگوریتمها به گونهای طراحی شدهاند که FPGAs را بر ASICها ترجیح دهند
- استخراج با حجم کم — زمانی که یک الگوریتم توسعه کامل ASIC را توجیه نمیکند
FPGA در مقابل ASIC
زمانی که یک ASIC برای یک الگوریتم توسعه مییابد، معمولاً در هر دو نرخ هش و کارایی به طور قابل توجهی از FPGAs پیشی میگیرد. FPGAs میتوانند برای الگوریتمهای مختلف دوباره برنامهریزی شوند؛ ASICها نمیتوانند.
