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