Быстрое прототипирование развертывание нейронных сетей для глубокого обучения к вашей пользовательской плате при помощи estimateResources
функция. Оцените использование ресурса настройки процессора глубокого обучения для вашей пользовательской платы. Оптимизируйте интегрирование пользовательских ядер IP и исходного проекта в вашу систему при помощи estimateResources
функционируйте, чтобы оценить использование ресурса вашего исходного проекта. Инструмент синтеза, который вы используете, должен быть в списке инструментов, поддержанных SynthesisTool
свойство dlhdl.ProcessorConfig
объект. Для списка поддерживаемых инструментов и семейств устройств, смотрите SynthesisTool и SynthesisToolChipFamily.
В этом примере оцените использование ресурса для своей пользовательской платы, которая имеет Kintex® Ultrascale +™ серия ИС. Также оцените использование ресурса исходного проекта для Xilinx® Zynq® Ultrascale +™ плата MPSoC ZCU102.
Deep Learning HDL Toolbox™
Пакет поддержки Deep Learning HDL Toolbox™ для FPGA Xilinx и SoC
HDL Coder™
Чтобы оценить использование ресурса для вашей пользовательской платы, которая имеет Kintex® Ultrascale +™ серия ИС, используйте estimateResource
функция dlhdl.ProcessorConfig
объект.
Добавьте dlhdl_device_registration.m
файл к пути поиска файлов MATLAB®.
Создайте dlhdl.ProcessorConfig
объект.
Обновите SynthesisToolChipFamily
и SynthesisToolDevicename
свойства dlhdl.ProcessorConfig
объект.
Используйте estimateResources
функция, чтобы получить использование ресурса для вашей пользовательской платы.
Deep Learning HDL Toolbox™ не поддерживает интерполяционную таблицу (LUT) оценка для пользовательских плат.
hPC = dlhdl.ProcessorConfig; hPC.SynthesisToolChipFamily = 'Kintex Ultrascale+'; hPC.SynthesisToolDeviceName = 'xcku11p-ffva1156-1-e'; hPC.estimateResources
Warning: Device family "Kintex Ultrascale+" is not currently supported for LUT Estimation. Supported families are Zynq, Zynq UltraScale+ and Arria 10.
Deep Learning Processor Estimator Resource Results DSPs Block RAM* LUTs(CLB/ALUT) ------------- ------------- ------------- Available 2928 600 298560 ------------- ------------- ------------- DL_Processor 377( 13%) 508( 85%) 0( 0%) * Block RAM represents Block RAM tiles in Xilinx devices and Block RAM bits in Intel devices
Оцените использование ресурса для исходного проекта, который вы хотите интегрировать в свою систему, которая имеет Xilinx® Zynq® Ultrascale +™ плата MPSoC ZCU102. Используйте estimateResource
функция с IncludeReferenceDesign
аргумент значения имени. estimateResources
функционируйте использует ResourcesUsed.LogicElements
, ResourcesUsed.DSP
, и ResourcesUsed.RAM
информация в файле плагина исходного проекта, чтобы выполнить оценку ресурса. Чтобы оценить использование ресурса для вашего пользовательского исходного проекта, необходимо заполнить файл исходного проекта со значениями для ResourcesUsed.LogicElements
, ResourcesUsed.DSP
, и ResourcesUsed.RAM
. Смотрите ResourcesUsed. Исходный проект, используемый в этом коде, расположен в $supportpackageinstallationfolder/Xilinx/boards/+DLZCU102/+matlab_libiio_3axi4_master_2019_1/plugin_rd.m
.
hPC_referencedesign = dlhdl.ProcessorConfig;
hPC_referencedesign.estimateResources('IncludeReferenceDesign',true)
Deep Learning Processor Estimator Resource Results DSPs Block RAM* LUTs(CLB/ALUT) ------------- ------------- ------------- Available 2520 912 274080 ------------- ------------- ------------- Total 380( 16%) 586( 65%) 269176( 99%) ReferenceDesign 3( 1%) 78( 9%) 35000( 13%) DL_Processor 377( 15%) 508( 56%) 234175( 86%) * Block RAM represents Block RAM tiles in Xilinx devices and Block RAM bits in Intel devices
estimateResources
функция возвращает использование ресурса для исходного проекта и для настройки процессора глубокого обучения.
Используйте dlhdl_device_registration.m
файл, чтобы указать семейство отдельных устройств. Оцените использование ресурса отдельного устройства при помощи estimateResources
функция.
type dlhdl_device_registration.m
function hFPGADeviceFamily = dlhdl_device_registration % Register a new device family by providing the following details: % 1. Device Family Name % 2. Vendor(Intel/Xilinx) % 3. DSP Width % 4. RAM Width % 5. RAM Depth % 6. SplitDSP Width(Optional) - alternative DSP Width supported by the DSP macro % 7. SplitRAM Width(Optional) - alternative RAM Width supported by the RAM macro hFPGADeviceFamily = { ... kintex_ultrascale();... }; end function hFPGADeviceFamily = kintex_ultrascale() % Datasheets : % https://www.xilinx.com/support/documentation/user_guides/ug579-ultrascale-dsp.pdf % https://www.xilinx.com/support/documentation/user_guides/ug573-ultrascale-memory-resources.pdf hFPGADeviceFamily = hdlcoder.FPGADeviceInfo('Name', 'Kintex Ultrascale+'); hFPGADeviceFamily.Vendor = 'Xilinx'; hFPGADeviceFamily.DSPWidth = [27, 18]; hFPGADeviceFamily.RAMWidth = 36; hFPGADeviceFamily.SplitRAMWidth = 18; hFPGADeviceFamily.RAMDepth = 1024; end