Mismatch between Deep Learning HDL Estimator and Vivado Resource Utilization
32 views (last 30 days)
Show older comments
Juan Martin de las mulas
on 7 Jan 2026
Commented: Juan Martin de las mulas
on 16 Jan 2026 at 6:50
Hi,
I'm deploying a Deep Learning HDL processor on the ZCU102 Evaluation Kit. I am using the following processor configuration:
hPC.TargetPlatform = 'Xilinx Zynq UltraScale+ MPSoC ZCU102 Evaluation Kit';
hPC.TargetFrequency = 200; % MHz
hPC.SynthesisTool = 'Xilinx Vivado';
setModuleProperty(hPC,'conv','InputMemorySize', [255 255 3]);
setModuleProperty(hPC,'conv','InputMemorySize', [123 123 16]);
setModuleProperty(hPC,'conv','FeatureSizeLimit', 1024);
setModuleProperty(hPC,'conv','LRNBlockGeneration','off');
setModuleProperty(hPC,'conv','SegmentationBlockGeneration','off');
setModuleProperty(hPC,'conv','WeightBlockGeneration','false');
setModuleProperty(hPC,'fc','ModuleGeneration','off');
setModuleProperty(hPC,'custom','Resize2D','on');
setModuleProperty(hPC,'custom','Addition','off');
setModuleProperty(hPC,'custom','Identity','off');
setModuleProperty(hPC,'custom','Multiplication','off');
When I run the resource estimation in MATLAB, I obtain the following result:

The issue is that when I generate the complete design (reference + DL processor) bitstream in Vivado, I get the following results:

Why does the final bitstream use 90% of the FPGA CLB resources?
Thanks,
Juan
0 Comments
Answers (1)
Yashwanth
on 16 Jan 2026 at 5:32
Hi Juan,
I believe the final bitstream uses ~90% CLB resources because Vivado adds timing-closure, interconnect, control, and clocking logic on top of the estimated Deep Learning Processor resources, and this overhead grows rapidly at high clock frequencies (200 MHz).
See Also
Categories
Find more on FPGA, ASIC, and SoC Development in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!