Вставка регистров трубопроводов на выходе выражения MATLAB
out = coder.hdl.pipeline( вставляет один регистр трубопровода на выходе expr)expr в сгенерированном коде HDL. Эта прагматика не влияет на поведение моделирования MATLAB ®.
Используйте эту прагматику, чтобы точно указать место вставки регистров трубопровода. Например, в инструкции назначения MATLAB можно указать pragma coder.hdl.pipeline:
В правой части инструкции о присвоении.
На субэкспрессии.
Вложив несколько прагматов.
При вызове подфункции, если подфункция возвращает одно значение. Нельзя указать прагматику для подфункции, возвращающей несколько значений.
Если включена распределенная конвейерная обработка, HDL Coder™ может перемещать регистры трубопровода для разрыва критического пути.
Кодер HDL не может вставить регистр конвейера на выходе выражения MATLAB, если одна из переменных в выражении:
В петле.
Постоянная переменная, которая сопоставляется с элементом состояния, как регистр состояния или ОЗУ.
Вывод функции. Например, в следующем коде нельзя добавить регистр трубопровода для выражения, содержащего y:
function [y] = myfun(x) y = x + 5; end
В цикле обратной связи данных. Например, в следующем коде невозможно переместить выражение, содержащее t или pvar переменные:
persistent pvar; t = u + pvar; pvar = t + v;
Вы не можете использовать coder.hdl.pipeline вставка регистра трубопровода для одной переменной или другого выражения no-op. Инструкции по вставке регистра трубопровода для входной переменной функции см. в разделе Регистры портов.
out = coder.hdl.pipeline( вставки expr,num)num регистры трубопроводов на выходе expr в сгенерированном коде HDL. Эта прагматика не влияет на поведение моделирования MATLAB.
Используйте эту прагматику, чтобы точно указать место вставки регистров трубопровода. Например, в инструкции назначения MATLAB можно указать pragma coder.hdl.pipeline:
В правой части инструкции о присвоении.
На субэкспрессии.
Вложив несколько прагматов.
При вызове подфункции, если подфункция возвращает одно значение. Нельзя указать прагматику для подфункции, возвращающей несколько значений.
Если включена распределенная конвейерная обработка, кодер HDL может перемещать регистры трубопровода для разрыва критического пути.
Кодер HDL не может вставить регистр конвейера на выходе выражения MATLAB, если одна из переменных в выражении:
В петле.
Постоянная переменная, которая сопоставляется с элементом состояния, как регистр состояния или ОЗУ.
Вывод функции. Например, в следующем коде нельзя добавить регистр трубопровода для выражения, содержащего y:
function [y] = myfun(x) y = x + 5; end
В цикле обратной связи данных. Например, в следующем коде невозможно переместить выражение, содержащее t или pvar переменные:
persistent pvar; t = u + pvar; pvar = t + v;
Вы не можете использовать coder.hdl.pipeline вставка регистра трубопровода для одной переменной или другого выражения no-op. Инструкции по вставке регистра трубопровода для входной переменной функции см. в разделе Регистры портов.