我是一名计算机科学与技术专业的学生,大学排名一般 关注了 FPGA 相关的方向看到了其在加速计算领域的作用,但是又看到了直接进行硬件编程是困难的,想要学习 HLS 相关的内容向高性能计算方向走 想问问大家,HLS 有必要学吗,如果有必要是从哪个方向开始学习呢?现在还算是没有入门在周围看看的阶段 如果抛开 Xilinx 的 HLS ,CIRCT 有必要进行研究学习吗?在厂商资料较为封闭的情况下有必要自己去试着做一个基本的综合器磨练一下水平还是有其他更好的项目方式呢?
1
Laussan 2023-04-15 03:05:38 +08:00
HLS 做点小的 prototyping 还行,稍微复杂点都不如直接写 Verilog/SV
高性能计算和 HLS 在某些领域能联系上但总的来说不是非常搭边,做 HPC 的话上到架构仿真中到上板验证下到 asic flow ,精进一个方向感觉都挺耗精力,写综合器的话可能意义不大 |
2
artnowben 2023-04-15 05:54:46 +08:00 via Android
fpga 是微电子专业的,岗位并不多。 计算机专业方向非常多,空间也很大,先把专业课学好,关注一些开源项目,扩展一下思路。
例如, 网络领域 dpdk dpvs nginx dperf 操作系统 RTthread https://github.com/baidu/dperf |
3
SmiteChow 2023-04-15 09:29:37 +08:00
问题太多了,fpga 只是一个工具,你是想造工具还是想用工具?造工具你要自学微电子得课程,用工具你不需要额外学什么,只需要买一个 fpga 照着文档用编程语言把灯点亮就完成了,要想深入没办法,只能进公司实习。
|
4
westerndream 2023-04-16 01:32:46 +08:00
fpga 从业者,不过我们这边不是坐加速计算的,这边还是传统的 verilog 为主,但是也在引入 chisel
感觉楼上 @Laussan 说的有道理,HLS 和厂商强绑定,而且更接近一种调 ip 的形态,如果说单纯只是想做加速计算,偏软件方向可以一搞,但是后面想做设计或者数字 ic 前端这种硬件路线,那还不如多看看开源项目、打好数电基础,学学 chisel 或者其他一些高抽象的新 HDL 。综合器那又是 eda 的领域了,eda 算法那些,和用 fpga 做业务不在一个方向上了。 |
5
DaTouJun OP 谢谢你们的指导,作为一名学生还有很多的内容需要学习
首先是 @SmiteChow 和 @Laussan 指出的,直接使用 HLS 意义不大,我明白这个问题,并且我的方向也不是直接做真正的硬件优化计算,我想要的是学好如何针对一个具体的优化问题入手,能够帮助自己在计算机体系结构、系统优化、数据传递优化等方面进行学习 @artnowben 和 @westerndream 提出的思路很多,不过我也确实不是软件或者 EDA 专业,总感觉自己在计科似乎处于一种中间层确实不是很好摸到自己的生态位,我将会继续在这相关方面进行学习,尽快找到一个项目或者平台整理好自己要做什么 |