Укажите пользовательский исходный проект

Указывать пользовательский исходный проект:

  1. Задайте исходный проект.

  2. Создайте плагин исходного проекта.

  3. Задайте регистрационную функцию исходного проекта или добавьте новый плагин исходного проекта в существующую регистрационную функцию исходного проекта.

Задайте исходный проект

Определением исходного проекта должна быть функция MATLAB®, которая возвращает объект hdlcoder.ReferenceDesign. Создайте функцию определения исходного проекта в папке плагина исходного проекта. Можно использовать любое имя для функции определения исходного проекта.

Создать определение исходного проекта:

  1. Создайте новый файл, который задает функцию MATLAB с любым именем.

  2. В функции MATLAB создайте объект hdlcoder.ReferenceDesign и задайте его свойства и интерфейсы согласно характеристикам вашего проекта встраиваемой системы.

  3. Если вы хотите проверять, что определение завершено, запустите метод validateReferenceDesign.

Эта функция MATLAB задает пользовательский исходный проект:

function hRD = plugin_rd()
% Reference design definition

% Construct reference design object
hRD = hdlcoder.ReferenceDesign('SynthesisTool', 'Xilinx Vivado');

hRD.ReferenceDesignName = 'Demo system (Vivado 2014.2)';
hRD.BoardName = 'Digilent Zynq ZyBo';

% Tool information
% It is recommended to use a tool version that is compatible with the supported tool
% version. If you choose a different tool version, it is possible that HDL Coder is
% unable to create the reference design project for IP core integration.
hRD.SupportedToolVersion = {'2015.4'};

%% Add custom design files
% add custom Vivado design
hRD.addCustomVivadoDesign( ...
    'CustomBlockDesignTcl', 'design_led.tcl');

hRD.CustomFiles = {'ZYBO_zynq_def.xml'};
%% Add interfaces
% add clock interface
hRD.addClockInterface( ...
    'ClockConnection',   'clk_wiz_0/clk_out1', ...
    'ResetConnection',   'proc_sys_reset_0/peripheral_aresetn');

% add AXI4 and AXI4-Lite slave interfaces
hRD.addAXI4SlaveInterface( ...
    'InterfaceConnection', 'axi_interconnect_0/M00_AXI', ...
    'BaseAddress',         '0x40010000', ...
    'MasterAddressSpace',  'processing_system7_0/Data');

По умолчанию HDL Coder™ генерирует ядро IP с настройками по умолчанию и интегрирует его в проект исходного проекта. Чтобы настроить эти настройки по умолчанию, используйте свойства в объекте hdlcoder.ReferenceDesign задать пользовательские параметры и указать указатель на функцию пользовательских функций обратного вызова. Для получения дополнительной информации смотрите, Задают Пользовательские Параметры и Функции обратного вызова для Пользовательского Исходного проекта.

Создайте плагин исходного проекта

Плагин исходного проекта является папкой пакета, которую вы задаете на пути MATLAB. Папка содержит файл определения платы и любые пользовательские функции обратного вызова.

Создать плагин исходного проекта:

  1. В папке плагина платы для связанной платы создайте новую папку, которая имеет имя с префиксом +.

    Например, плагин исходного проекта может быть папкой под названием +vivado_base_ref_design.

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

  3. В новой папке сохраните любые файлы, которые требуются дизайн-проектом встраиваемой системы, и характерны для вашего стороннего инструмента синтеза, включая Tcl, проект, и разрабатывают файлы.

  4. Добавьте папку в свой путь MATLAB.

Задайте регистрационную функцию исходного проекта

Регистрационная функция исходного проекта содержит список функций исходного проекта и связанного имени платы. Необходимо назвать функциональный hdlcoder_ref_design_customization.m. Когда HDL Workflow Advisor открывается, он ищет путь MATLAB файлы с именем hdlcoder_ref_design_customization.m и использует информацию, чтобы заполнить опции исходного проекта для каждой платы.

Задавать регистрационную функцию исходного проекта:

  1. Создайте файл с именем hdlcoder_ref_design_customization.m и сохраните его где угодно на пути MATLAB.

  2. В hdlcoder_board_customization.m задайте функцию, которая возвращает связанное имя платы, заданное как вектор символов и список плагинов исходного проекта, заданных как массив ячеек из символьных векторов.

    Например, следующий код задает регистрационную функцию исходного проекта.

    function [rd, boardName] = hdlcoder_ref_design_customization
    % Reference design plugin registration file
    
    rd = {'ZyBoRegistration.Vivado2015_4.plugin_rd', ...
         };
    
    boardName = 'Digilent Zynq ZyBo';
    
    end

Регистрационная функция исходного проекта возвращает связанное имя платы, заданное как вектор символов и список плагинов исходного проекта, заданных как массив ячеек из символьных векторов.

Смотрите также

|

Связанные примеры

Больше о