Проблемы с оптимизацией потоковой передачи в HDL Coder

Я новичок в Verilog HDL. Теперь я использую HDL Coder для преобразования моей функции MATLAB в Verilog HDL. Когда я пытаюсь выполнять потоковую передачу циклов в моей функции MATLAB, я получаю предупреждения:

Невозможно применить векторную оптимизацию потоковой передачи. Возможные причины: 1. Нет действительной операции, которая поддерживается для потоковой передачи. 2. Нет векторов для потоковой передачи. 3. Использование постоянных переменных.

Я не знаю причину. Ниже приведена моя функция MATLAB. Не могли бы вы помочь мне найти причину этого предупреждения? Спасибо большое.

    function [dx, dy] = computeGradient(img)
       % img: uint8 [390 x 1]
       % dx:  int16 [128 x 1]
       % dy:  int16 [128 x 1]

       dx = zeros(128, 1);
       dy = zeros(128, 1);

       for rr = 1 : 128
           dx(rr) = int16( img(rr+261) ) - int16( img(rr+  1) );
           dy(rr) = int16( img(rr+132) ) - int16( img(rr+130) );
       end
    end

0 ответов

Другие вопросы по тегам