Deep Learning HDL Toolbox™ 提供一系列函数和工具,用于面向 FPGA 和 SoC 进行深度学习网络原型开发和实现。它提供预置的比特流,用于在支持的 Xilinx® 和 Intel® FPGA 与 SoC 设备上运行各种深度学习网络。借助性能分析和估计工具,您可以探索各种设计、性能和资源使用量权衡方案,以便自定义深度学习网络。
通过 Deep Learning HDL Toolbox,您可以自定义深度学习网络的硬件实现,并生成可移植、可合成的 Verilog® 和 VHDL® 代码,在各种 FPGA 上进行部署(需要 HDL Coder™ 和 Simulink®)。
开始:
可编程的深度学习处理器
此工具箱包含一个深度学习处理器,该处理器提供常规的卷积和全连接层,由调度逻辑控制。此深度学习处理器可以对使用 Deep Learning Toolbox™ 开发的网络执行基于 FPGA 的推断。高带宽内存接口可加速层和权重数据的内存传输。
编译和部署
将您的深度学习网络编译为一组可由深度学习处理器运行的指令。部署到 FPGA 并运行预测,同时捕获实际设备性能指标。
利用预置比特流快速起步
本工具箱预置适用于主流 FPGA 开发套件的比特流,您无需进行 FPGA 编程即可开发网络原型。
创建网络以进行部署
第一步是使用 Deep Learning Toolbox 设计、训练和分析您的深度学习网络,以执行目标检测或分类等任务。您也可以从其他框架导入经过训练的网络或层。
将您的网络部署到 FPGA
训练网络后,通过深度学习处理器和以太网或 JTAG 接口,使用 deploy
命令对 FPGA 进行编程。然后使用 compile
命令为经过训练的网络生成一组指令,而无需对 FPGA 进行重新编程。
将基于 FPGA 的推断作为 MATLAB 应用程序的一部分运行
在 MATLAB® 中运行整个应用程序,包括测试平台、预处理和后处理算法,以及基于 FPGA 的深度学习推断。只需使用 MATLAB 中的 predict
命令,即可在 FPGA 上执行推断并将结果返回 MATLAB 工作区。
调整网络设计
使用 Deep Learning Toolbox,根据性能分析指标调整您的网络配置。例如,使用深度网络设计器添加层、删除层或创建新连接。
深度学习量化
将您的深度学习网络量化到定点表示,从而减少资源使用。使用 Model Quantization Library 支持包在准确度和资源使用量之间进行权衡分析。
生成可合成的 RTL
使用 HDL Coder 从深度学习处理器生成可合成的 RTL,以便在各种实现工作流和设备中使用。将同一深度学习处理器重用于原型开发和生产部署。
生成 IP 核用于集成
当 HDL Coder 从深度学习处理器生成 RTL 时,它还会生成一个带标准 AXI 接口的 IP 核,用于集成到 SoC 参考设计中。