Что я могу использовать для разработки на FPGA (Virtex): C, C ++, OpenCL, MPI?

Решение

FPGA — это просто большая конфигурируемая схема, и для нее создается программа, которая «компилируется» в гигантскую карту того, как сконфигурированы транзисторы и другие низкоуровневые компоненты. Он принципиально отличается от обычного процессора или даже графического процессора: он очень параллелен на очень низком уровне.

Программирование такой доски требует другого мышления. Есть две основные стратегии:

  • Разработка с использованием системы Verilog или другого HDL (язык описания оборудования),
  • Используйте SystemC или другую оболочку, которая позволяет использовать C / C ++ для FPGA (это будет менее оптимизировано)

Обычно на плате должно быть руководство с указанием того, что использовать для его программирования.

Лично я никогда не использовал OpenCL с FPGA (но я использовал CUDA для GPGPU), поэтому я не знаю, как это работает (но я думаю, что у вас есть некоторые накладные расходы, так как вы должны эмулировать некоторые небольшие вычислительные блоки).

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]