Как написать функции, которые принимают 2d массив и возвращают 2d массив в vivado hls?
Привет, я недавно работал над сетями CNN, и у меня готов их код на C, но теперь, когда я хочу использовать vivado-hls, я действительно запутался, как объявлять функции, которые принимают 2d-массив в качестве входных данных и дают 2d-массив в качестве вывода ... Я знаю, что не могу использовать функции malloc и free в Vivado hls, поэтому, если кто-то может мне помочь, я очень ценю это ... Например, я хочу сделать это как функцию в Vivado-hls:
//Relu
for(m=0;m<18;m++){
for(n=0;n<18;n++){
if (oc[m][n]<0){
oc[m][n]=0;
}
}
Также у меня есть готовая камера на FPGA с собственным VGA, есть ли предложения, как я могу прикрепить ее к моему коду Vivado hls? Это означает, что я хочу передавать изображения vivado-hls, поступающие с моей камеры, чтобы после некоторой обработки он давал соответствующий класс .. Моя камера имеет интерфейс wishbone b4. Должен ли я использовать axi4-stream?
Камера: OV7670
Плата: Nexys4 DDR