Конвейерный код MATLAB

Конвейеризация помогает достичь более высокой максимальной тактовой частоты путем вставки регистров в стратегических точках оборудования, чтобы прервать критический путь. Однако более высокая тактовая частота возникает за счет увеличения площади чипа и увеличения начальной задержки.

Регистры портов

Входной и выходной регистры портов для модулей помогают разбить большой проект, так что критический путь не простирается через контуры модулей. Наличие регистра портов у каждого входного и выходного портов является хорошей практикой проекта для синхронных интерфейсов. Распределённая конвейеризация не влияет на регистры портов. Для вставки входных или выходных регистров портов:

  1. В HDL Workflow Advisor выберите HDL Code Generation задачу и вкладку Optimizations.

  2. Включите Register inputs, Register outputs или то и другое.

Входной и выходной регистры трубопровода

Можно вставить несколько ступеней входа и вывода трубопровода. Распределённая конвейеризация может переместить эти входной и выходной регистры конвейера, чтобы помочь уменьшить ваш критический путь в модуле. Если вы вставляете входные и выходные этапы трубопровода, не применяя распределенную конвейеризацию, регистры остаются на входах и выходах DUT.

Для вставки входных или выходных каскадов регистра трубопровода:

  1. В HDL Workflow Advisor выберите HDL Code Generation задачу и вкладку Optimizations.

  2. Для Input pipelining, Output pipelining или обоих введите количество этапов регистра трубопровода.

Операция конвейеризаций

Operation pipelining вставляет один или несколько регистров в выход определенного выражения в MATLAB® код. Если вы знаете, что определенное выражение является частью критического пути, можно добавить регистр трубопровода на его выходе, чтобы уменьшить ваш критический путь.

Чтобы узнать, как вставить регистр трубопровода в выходы выражения MATLAB, смотрите Pipeline MATLAB Expressions.