本文是我经过一段时间学习的学习总结,由于是初学者的缘故,可能总结会有纰漏甚至错误,希望同样从事该方向研究的大佬以及爱好者批评指正,不胜感激。
下面我会从硬件和神经网络两方面来介绍使用FPGA做卷积神经网络加速所需要的知识基础。
1.FPGA
1.FPGA分类
毫无疑问,Xilinx是当前FPGA领域的带头大哥,占据了百分之60左右的全球市场份额。而Altera在被intel收购以后,也有着相当优秀的发展潜力。就这两家而言,Xilinx胜在高端性能,资源丰富。而Altera胜在价格低廉,是新手入门的性价比的不二之选。
2.开发工具
Xilinx:Vivado,功能完善,集成了HLS,虽然会有一些奇怪的bug,但是瑕不掩瑜。
Altera:Quartus II,集成了modelsim工能,非常直觉化,容易入门,bug很少(曾是高管骄傲的谈资),非常适合新手入门,但并不适合大规模系统开发。
3.开发工具2
VHDL/Verilog:硬件描述语言,永远的神。就目前而言,想要完全发挥FPGA的性能,硬件描述语言无疑是首选,但是上手有一定的难度,需要付出比较大的努力。
(补充:学习资源丰富,不会增加搜寻资源的时间成本)。
HLS:HLS是高层综合(High level Synthesis)&#x