Есть платка, на борту у которой
- zynq xc7z010 - там FPGA
- Cortex-A9 два ядра в том же чипе
- 512MB DDR3L памяти
- microsd
- ethernet
- какая-то припаяная NAND флешка с которой грузится сейчас какой-то busybox-овы линукс.
- куча всяких проводочков выведено из FPGA переменного назначения. Нет USB, но через эти проводочки можно заимплементить наверное, но не суть.
Есть идея поднять на этом чипе любой рандомный armbian и запустить в нём в юзерспейсе такой процесс, который сделает mmap 128 мегабайт ОЗУ и дальше самое интересное - как-то пробросить эти 128 мегабайт в FPGA и на FPGA реализовать некий сложный DSP на этом куске памяти. Сообщать FPGA о том что нужно начать обработку и от FPGA в «линукс» о том, что обработка завершена незнаю как пока, не понимаю бывают ли в этом мире какие-то прерывания между ними.
Хочется спросить у опытных чуваков, кто с таким работал, в целом насколько на этом поле деятельности всё хорошо документировано или это для одного человека на уровне хобби просто неподьёмная задача по степени недокументированности и всякого внезапного кала?
На C++ писать могу, линуксы на ARM-ы накатывать могу, осциллографом и паяльником даже умею пользоваться, но вот с FPGA работал последний раз на детском уровне в универе на каком-то курсаче, а тем более не трогал современные FPGA технологии и особенно их связность с линуксами.
Финально чо хочется сделать: поток IQ семплов с rtl-sdr USB-приёмника процессить на FPGA в задачах корелляции сигналов, спрятанных под уровнем шума, типа попробовать программно подетектировать LORA посылки - для этого надо запустить несколько тысяч параллельных корелляторов наверное, проц такое не потянет, FPGA вполне может, но только с внешней памятью. USB на плате не выведено, ну может по ethernet поток семплов запихаю туда. Процессить IQ-семплы с rtl-sdr на обычном железе алгоритмами на C++ пробовал, но ARM-ядра в этой задаче хватит не на особо амбициозные задачи. Заранее чувствую, что это такая невероятная жопа, что проще помоделировать свои идеи в условном матлабе и успокоиться, но всё равно прикольно было бы поиграться в FPGA хоть как-то.
fpga