Процессор и синхронизация FPGA

В HDL Workflow Advisor можно выбрать Processor/FPGA synchronization mode для процессора и FPGA когда вы:

  • Сгенерируйте пользовательское ядро IP, чтобы использовать в проекте интегрирования встраиваемой системы.

  • Используйте рабочий процесс Simulink Real-Time FPGA I/O.

Следующие режимы синхронизации доступны:

  • Free running (значение по умолчанию)

  • Coprocessing – blocking

  • Coprocessing – nonblocking with delay (доступный только для рабочего процесса Simulink Real-Time FPGA I/O)

Режим свободного доступа

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

Выберите Free running как Processor/FPGA synchronization mode, когда вы не захотите, чтобы ваш процессор и FPGA автоматически синхронизировались.

Следующая схема показывает, как процессор и FPGA могут связаться в режиме свободного доступа. Заштрихованные области указывают, что процессор и FPGA запускаются постоянно.

Совместная обработка – блокирующийся режим

В блокирующемся режиме сопроцессора HDL Coder™ автоматически генерирует логику синхронизации для FPGA так, чтобы процессор и FPGA, запущенный в тандеме.

Выберите Coprocessing – blocking как Processor/FPGA synchronization mode, когда время выполнения FPGA коротко относительно шага расчета процессора, и вы хотите, чтобы FPGA завершился, прежде чем процессор продолжится.

Следующая схема показывает как процессор и FPGA, запущенный в блокировании режима совместной обработки.

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

Совместная обработка – не блокирующийся с режимом задержки

В задержанном режиме сопроцессора неблокирования HDL Coder автоматически генерирует логику синхронизации для FPGA так, чтобы процессор и FPGA, запущенный в тандеме. Этот режим только доступен для модулей Speedgoat IO, которые используют Xilinx® ISE с рабочим процессом Simulink Real-Time FPGA I/O.

Выберите Coprocessing – nonblocking with delay как Processor/FPGA synchronization mode, когда время вычислений FPGA долго относительно шага расчета процессора, или вы не хотите, чтобы процессор ожидал FPGA, чтобы закончиться, прежде чем процессор продолжит запускаться.

Следующая схема показывает как процессор и FPGA, запущенный в задержанном режиме сопроцессора неблокирования.

Заштрихованные области указывают, когда процессор и FPGA запускаются. Во время каждого шага расчета процессор считывает данные о FPGA из предыдущего шага расчета, затем пишет в FPGA и продолжает запускаться, не ожидая FPGA, чтобы закончиться. Каждый раз запуски FPGA, это выполняет логику, сгенерированную для одного шага расчета подсистемы DUT.