Разверните или потоковые циклы в сгенерированном HDL-коде
coder.hdl.loopspec('unroll')coder.hdl.loopspec('unroll',unroll_factor)coder.hdl.loopspec('stream')coder.hdl.loopspec('stream',stream_factor)coder.hdl.loopspec('unroll') полностью разворачивает цикл в сгенерированном HDL-коде. Вместо инструкции циклов сгенерированный код содержит несколько экземпляров тела цикла с одним экземпляром тела цикла на итерацию цикла.
Прагма coder.hdl.loopspec не влияет на поведение симуляции MATLAB®.
Если вы задаете прагму coder.unroll, эта прагма более приоритетна по сравнению с coder.hdl.loopspec. coder.hdl.loopspec не имеет никакого эффекта.
coder.hdl.loopspec('unroll', разворачивает цикл заданным разворачивающим фактором, unroll_factor)unroll_factor, в сгенерированном HDL-коде.
Сгенерированный HDL-код является инструкцией циклов, которая содержит экземпляры unroll_factor исходного тела цикла. Количество итераций цикла в сгенерированном коде (original_loop_iterations / unroll_factor). Если (original_loop_iterations / unroll_factor) имеет остаток, остающиеся итерации полностью развернуты как экземпляры тела цикла вне цикла.
Эта прагма не влияет на поведение симуляции MATLAB.
Если вы задаете прагму coder.unroll, эта прагма более приоритетна по сравнению с coder.hdl.loopspec. coder.hdl.loopspec не имеет никакого эффекта.
coder.hdl.loopspec('stream') генерирует один экземпляр тела цикла в HDL-коде. Вместо того, чтобы использовать инструкцию циклов, сгенерированный код реализует локальную сверхдискретизацию и добавленную логику, чтобы совпадать с функциональностью исходного цикла.
Можно задать эту прагму циклы for в верхнем уровне проекта MATLAB.
Эта прагма не влияет на поведение симуляции MATLAB.
Если вы задаете прагму coder.unroll, эта прагма более приоритетна по сравнению с coder.hdl.loopspec. coder.hdl.loopspec не имеет никакого эффекта.
coder.hdl.loopspec('stream', разворачивает цикл с набором stream_factor)unroll_factor к original_loop_iterations / stream_factor, округленный в меньшую сторону до самого близкого целого числа, и также сверхдискретизировал цикл. Если (original_loop_iterations / stream_factor) имеет остаток, экземпляры тела цикла остатка вне цикла не сверхдискретизированы, и выполнение на исходном уровне.
Можно задать эту прагму циклы for в верхнем уровне проекта MATLAB.
Эта прагма не влияет на поведение симуляции MATLAB.
Если вы задаете прагму coder.unroll, эта прагма более приоритетна по сравнению с coder.hdl.loopspec. coder.hdl.loopspec не имеет никакого эффекта.