Что я могу использовать для разработки на FPGA Virtex-5 или Virtex-7: C, C ++, C ++ 11, OpenCL, MPI?
И что чаще всего для этого используют?
Есть:
FPGA — это просто большая конфигурируемая схема, и для нее создается программа, которая «компилируется» в гигантскую карту того, как сконфигурированы транзисторы и другие низкоуровневые компоненты. Он принципиально отличается от обычного процессора или даже графического процессора: он очень параллелен на очень низком уровне.
Программирование такой доски требует другого мышления. Есть две основные стратегии:
Обычно на плате должно быть руководство с указанием того, что использовать для его программирования.
Лично я никогда не использовал OpenCL с FPGA (но я использовал CUDA для GPGPU), поэтому я не знаю, как это работает (но я думаю, что у вас есть некоторые накладные расходы, так как вы должны эмулировать некоторые небольшие вычислительные блоки).
Других решений пока нет …