如何在PYNQ和ZYNQ上用FPGA加速神经网络
1、在PYNQ上顶层用Python调用,但是准备工作是框架(如:tensorflow)和IP(如:CNN),IP部分要自己在Vivado HLS(基于OpenCL)里面用C/C++或图形化界面进行设计,最后生成一个.bit和一个.tcl文件,再通过Jupyter把这俩文件上传至PYNQ的memory。也就是把新的框架和IP自己手动放入memory,然后就可以在顶层用Python完成所有调用,实现ARM+FPGA。
2、目前有两个例程,都是ARM+FPGA:a、Spark+PYNQ+LR进行MNIST模型训练;b、Theano+CNN进行MNIST模型预测。且都对比了有FPGA加速和仅用ARM时的速度。
3、ZYNQ加速和PYNQ加速大体基本一致,就是在顶层用C/C++调用已在ZYNQ上配置好的新框架和IP
例程地址:a、GitHub -AcceleratedCloud/SPynq: Spark on Pynq
b、GitHub -awai54st/PYNQ-Classification: Python on Zynq FPGA for Convolutional NeuralNetworks
领取专属 10元无门槛券
私享最新 技术干货