Класс: hdlcoder. ReferenceDesign
Пакет: hdlcoder
Дескриптор функции для пользовательской функции обратного вызова, которая выполняется во время задачи «» Целевое устройство программы «» в помощнике по рабочим процессам
CallbackCustomProgrammingMethod
CallbackCustomProgrammingMethod регистрирует дескриптор функции обратного вызова, который выполняется при выполнении задачи «Целевое устройство программы» в помощнике по рабочим процессам HDL. Если hRD - ссылочный объект конструкции, который создается с помощью hdlcoder.ReferenceDesign , затем используйте этот синтаксис для регистрации дескриптора функции:
hRD.CallbackCustomProgrammingMethod = @my_reference_design.callback_CustomProgrammingMethod;
Чтобы определить функцию обратного вызова, создайте файл, определяющий функцию MATLAB ®, и добавьте ее в путь MATLAB. Для функции обратного вызова можно использовать любое имя. В этом примере имя функции: callback_PostBuildBitstream, расположенный в папке пакета ссылочного проекта, +my_reference_design.
С помощью этой функции обратного вызова можно задать пользовательский метод программирования для программирования целевого устройства. В этом примере кода показано, как создать функцию обратного вызова.
function [status, log] = callback_CustomProgrammingMethod(infoStruct) % Reference design callback function for custom programming method % % infoStruct: information in structure format % infoStruct.ReferenceDesignObject: current reference design registration object % infoStruct.BoardObject: current board registration object % infoStruct.ParameterStruct: custom parameters of the current reference design, in struct format % infoStruct.HDLModelDutPath: the block path to the HDL DUT subsystem % infoStruct.BitstreamPath: the path to the generated FPGA bitstream file % infoStruct.ToolProjectFolder: the path to synthesis tool project folder % infoStruct.ToolProjectName: the synthesis tool project name % infoStruct.ToolCommandString: the command for running a tcl file % % status: process run status % status == true means process run successfully % status == false means process run failed % log: output log string status = true; log = sprintf('Run custom programming method callback...\n'); % Enter your commands for custom programming here % ... % ... end
В помощнике по рабочим процессам HDL Coder™ выбирает пользовательский метод программирования для программирования целевого устройства SoC. Если пользовательский метод программирования не указан, кодер HDL предоставляет JTAG и Download в качестве опций для программирования целевого устройства.
При создании функции обратного вызова передайте infoStruct аргумент функции. Аргумент содержит ссылочную конструкцию и информацию о плате в structure формат. Эта информация используется для задания пользовательских параметров для процесса построения и создания битового потока.