Generate Custom Generic Deep Learning Processor IP Core
This example shows how to generate a custom generic deep learning processor IP core. Integrate the generated generic deep learning processor IP core into your larger reference design. To learn how to integrate the generic deep learning processor IP core into your reference design, see Authoring a Reference Design for Live Camera Integration with Deep Learning Processor IP Core.
Create Generic Deep Learning Processor Configuration
Create a custom deep learning processor configuration, by using the dlhdl.ProcessorConfig object. Set the TargetPlatform of the deep learning processor configuration to 'Generic Deep Learning Processor'.
hPC = dlhdl.ProcessorConfig;
hPC.TargetPlatform = 'Generic Deep Learning Processor';Display the modified deep learning processor configuration.
hPC
hPC =
Processing Module "conv"
ModuleGeneration: 'on'
LRNBlockGeneration: 'off'
SegmentationBlockGeneration: 'on'
ConvThreadNumber: 16
InputMemorySize: [227 227 3]
OutputMemorySize: [227 227 3]
FeatureSizeLimit: 2048
Processing Module "fc"
ModuleGeneration: 'on'
SoftmaxBlockGeneration: 'off'
SigmoidBlockGeneration: 'off'
FCThreadNumber: 4
InputMemorySize: 25088
OutputMemorySize: 4096
Processing Module "custom"
ModuleGeneration: 'on'
Addition: 'on'
Multiplication: 'on'
Resize2D: 'off'
Sigmoid: 'off'
TanhLayer: 'off'
InputMemorySize: 40
OutputMemorySize: 40
Processor Top Level Properties
RunTimeControl: 'register'
RunTimeStatus: 'register'
InputStreamControl: 'register'
OutputStreamControl: 'register'
SetupControl: 'register'
ProcessorDataType: 'single'
System Level Properties
TargetPlatform: 'Generic Deep Learning Processor'
TargetFrequency: 200
SynthesisTool: 'Xilinx Vivado'
ReferenceDesign: ''
SynthesisToolChipFamily: 'Zynq UltraScale+'
SynthesisToolDeviceName: 'xczu9eg-ffvb1156-2-e'
SynthesisToolPackageName: ''
SynthesisToolSpeedValue: ''
The generic deep learning processor configuration generates a generic Xilinx® IP core. To generate a generic Intel® core, enter:
hPC.SynthesisTool = 'Altera QUARTUS II'
Generate Generic Deep Learning Processor IP Core
Generate a generic deep learning processor IP core by using the dlhdl.buildProcessor function. Set the ProjectFolder, ProcessorName, and TargetLanguage properties of the generic deep learning processor.
dlhdl.buildProcessor(hPC,'ProjectFolder','genericipcore_prj','ProcessorName','GenericProcessor','HDLCoderConfig',{'TargetLanguage','VHDL'})
This image shows the files generated for the generic deep learning processor IP core.

This image shows the generated generic deep learning processor IP core:

The generic IP core consists of:
An AXI4 slave interface called
AXI4.Three AXI4 master interfaces for activation, weights, and utility or debug data.
The dlhdl.buildProcessor function also generates an IP core generation report that contains:
Register address mapping table
IP core user guide
IP core file list
For more information, see Deep Learning Processor IP Core Report.
See Also
dlhdl.ProcessorConfig | dlhdl.buildProcessor