利用FPGA进行算法加速和实现已经被广泛认知,但对于很多没有FPGA和HDL设计经验的开发者而言,往往又觉得开发门槛较高,因此全球相关的科研和工程人员都在致力于如何将FPGA技术介绍给更多的开发者,使更多人从FPGA的并行性,高性能,低功耗,灵活配置中获益。其中,Vivado HLS(高层次综合)就是一个成功的代表。通过Vivado HLS 工具中,开发者可利用C/C++语言对FPGA进行编程,这项技术已经趋于成熟,在Xilinx客户的工程实践中也已广泛采用。
为此Xilinx研究院一直在考虑如何将HLS这项技术更好的介绍给学术圈,帮助原来熟悉FPGA开发的提高开发效率,帮助原来不了解FPGA开发的快速上手FPGA算法实现。此次Xilinx研究院的Steve首席工程师与UCSD的Ryan Kastner教授团队合作,推出了这本电子书,全书通过10个算法实现案例完整的介绍了通过HLS工具利用C/C++语言快速实现高性能FPGA实现的过程。看到这本电子书,我顿时觉得这就是我想要找的内容。这本书通过多年的工程、科研、教学经验的积累,深入浅出的将HLS实现方法,硬件设计的考虑以及系统优化都一一介绍。
因此,在此书刚刚推出后,我们在FPGA技术群里就发起了翻译志愿者的活动,当天就得到了本书的翻译者曹越,吴彦北,胡博,王芝斌,杨勇的支持,同时由Xilinx实习生胡成龙作为翻译项目经理,通过Github平台带领志愿者们开始协同翻译的工作,并将其电子版以博客的形式部署到GitHub Page和Gitbook上。Xilinx实习生李彦晔和陈雯也完成了部分翻译和审校工作,以及全部工程实现。大家都抱着一个心态,希望尽快将此书介绍给国内的读者。利用工作之余的时间,在短短两个月的时间内完成了本书的翻译,初次校对,以及全书工程实现的目标。本书的工程实现也有一定的特点,相关工程不仅仅实现了算法的并行编程,同时利用Pynq框架,在Pynq-Z2上通过Python实现了算法实现过程的可视化,这是相比于原始英文版加强之处。
相信通过阅读此书,可以让更多人了解、尝试并喜欢上FPGA开发,本书只是一个开始,我们也欢迎更多人的爱好者和我们一起来拓展HLS的应用场景,并将知识记录和传递下去。有任何疑问和建议,请与我联系 joshua.lu@xilinx.com 。
陆佳华
2018年8月
在第一版众筹的文档中不免存在一些翻译不准确,错别字等情况,因此在2020年下半年开始,我们组织了Xilinx实习生 郑溪桐,胡云皓,张启星一起,根据过去两年读者的反馈,进行了书稿内容的校订,并且匹配了更多的案例,希望通过这次校订更好的为读者服务。
陆佳华 2021年3月