module rev_array;
initial
begin
int array_in[10]={0,1,2,3,4,5,6,7,8,9};
typedef integer array[9:0];
function array reverse(int array_in[10]);
array reverse;
for(integer i=0;i<$size(array_in)-1;i++)
begin
for(int j=$size(array_in)-1;j>=0;j--)
begin
reverse[j]=array_in[i];
end
end
return reverse;
endfunction:reverse
reverse(array_in);
for(integer k=0;k<$size(array_in)-1;k++)
begin
$display("reverse[%0d]:%0d", k, reverse[k]);
end
end
endmodule
Для приведенного выше кода я получаю сообщение об ошибке
Ошибка- [SE] Синтаксическая ошибка
Следующий источник verilog имеет синтаксическую ошибку:
"testbench.sv", 7: токен является "функцией"
обратный массив функций (int array_in [10]);
Я хочу вернуть массив с именем reverse (то же имя, что и у функции), который имеет 10 элементов, каждый из которых является целым числом, что я здесь не так делаю?