百科问答小站 logo
百科问答小站 font logo



能同时用opencl和HDL来开发fpga吗? 第1页

  

user avatar   zhangshujia 网友的相关建议: 
      

Xilinx/Altera的OpenCL都是提供了一个基本框架,将自己写的OpenCL Kernel编译成RTL模块,放入这个基本框架里。而后进行synthesis,再下载到板子里。过程中也是先生成RTL,然后再由FPGA的综合器map成电路。

普遍的OpenCL下面调用的还是HLS,C++综合,看似效率高(驱动,各种硬件接口,DMA,全部基础模块都现成的,很容易写出一个能跑的硬件Demo),但是实际工程中会有更多约束,比如想加个自定义的配置寄存器,调试寄存器就不方便,要修改它们的驱动(比如直接调用pcie_wr和pcie_rd 函数),以及调试寄存器所需的读写返回时间太久,代码效率并不高。此外也担心在复杂代码下,是不是编译器都能优化的搞定,很多时候HLS->RTL一方面效率低,一方面代码不能用,再次手动调试/重写的代价很高。【同时缅怀一下老RTL工程师作为人肉综合器的岁月】

另外,HLS对做算法的工程师要求太高,须时刻考虑硬件的实现难易。所以,除非有大量的手调准确的例程和标准IP可供调用,否则感觉HLS在实际工程中的优势不大。HLS经过十数年的发展,最近的趋势是把“有效利用片上和片外各类存储单元”作为研究热点了,目前虽然看到诸如AutoPilot、OpenCL SDK等FPGA HLS商业化成功的案例出现,但距离其完全替代人工RTL建模还有很长的路,在这个方向,丛京生老师奋斗20年+了,但每当硬件平台升级、高层语言版本更新、某个math lib更新等,当前HLS开发就要失效了,再次调试/重写代码所花费的时间和成本代价很大,再更新一版HLS的时间/成本也要超过软硬件技术演进。




  

相关话题

  能同时用opencl和HDL来开发fpga吗? 
  如何看待xilinx提出的all progarmable 的概念? 
  如何看待近期上海安路科技发布的ELF2型FPGA新品? 
  北京深鉴科技基于FPGA平台的DPU架构如何? 
  Verilog 有什么奇技淫巧? 
  如何从头开始系统学习VHDL语言? 
  我应该从计算机视觉回到做FPGA 吗? 
  如何用FPGA加速卷积神经网络(CNN)? 
  如何看待近期上海安路科技发布的ELF2型FPGA新品? 
  为什么最近几年 FPGA 变得越发受大家重视了? 

前一个讨论
Y Combinator 喜欢什么样的创业者?
下一个讨论
如何评价白宫的美国史上最壕发钱计划(2万亿美刀,成人1200刀,儿童500刀)?





© 2024-05-18 - tinynew.org. All Rights Reserved.
© 2024-05-18 - tinynew.org. 保留所有权利