0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是FPGA工程师的核心竞争力

电子工程师 来源:xx 2019-04-05 07:57 次阅读

这个问题是老石在知乎上看到的,大家的回答都是“调板子”、“debug”、“硬件实现”等等。作为FPGA工程师,老石看了实在要报以一个礼貌的微笑。

换个角度看,难道其他硬件工程师就不具备调板子、debug、硬件实现的能力了?或者,为什么说这些是专属于FPGA工程师的核心竞争力?

老石认为,这个问题其实可以引申为以下两点:

  1. 什么是只有FPGA工程师能做的

  2. 作为FPGA工程师,我们应该如何培养这些能力

接下来就是老石的解答。

什么是只有FPGA工程师能做到的

对于上面提到的一些回答,的确是FPGA工程师不可或缺的能力,但老石总觉得没有说清楚这个问题的本质。

首先给出老石的回答:FPGA工程师最核心的就是全栈能力。

这里的全栈,指的是系统级的软硬件全栈能力。它既包括了在系统层面的架构设计、芯片开发的前后端流程,也包括了软件设计的全栈流程,甚至还有后期的项目维护、技术支持、与客户的沟通等等软技能。它可以看成是综合多种技能的技能树。

老石随手写了一下FPGA工程师的全栈技能树,见下图,尽管很不完整,但仍可供大家参考。之前很多人提到的,诸如调试与分析的能力,其实是这个全栈技能树里的一片树叶,或一个分支。

只有FPGA工程师能做到一人成团,在短时间内将想法落实到高质量的软硬件系统实现。这是其他系统架构师、ASIC工程师、单片机工程师、软件工程师等等都无法单独完成的。与这些工程师相比,FPGA工程师有着很强的单兵作战能力。当然,技能树过于庞大也是为什么很多人认为FPGA难学的本质原因。

有人会问,为什么其他类型的工程师没有这种全栈能力,或者换句话说,为什么只有FPGA工程师才能做到全栈?这和FPGA本身的特点有关。

在下图中,老石对比了FPGA与ASIC、CPU(或单片机)的特点与主要开发方式和风格。

对于传统的IC工程师而言,他们的具体职责可以大致分成前端和后端两部分。前端主要负责逻辑实现,后端负责芯片物理实现。两路人马通常有各自的技能树,需要互相配合才能完成产品级的芯片,这个过程往往很久,而且伴随着巨大的前期投入和风险。

对于单片机或CPU工程师而言,更多的是基于给定的单片机架构和API,使用诸如C或C++的高层语言编写应用程序。如果要写出高质量的应用,固然需要了解目标芯片的硬件结构,但并不需要对硬件的逻辑实现有过多了解。虽然基于CPU或MCU可以灵活实现各种应用,但由于架构限制,在很多诸如人工智能的应用领域里并不能达到很好的性能。

FPGA很大程度上结合了两者的优点。在硬件方面,FPGA底层架构固定,因此不需要做太多芯片后端的工作,但仍需要FPGA工程师掌握时序优化、面积优化、功耗优化等后端技能。因此一个优秀的FPGA工程师凭借自身的前后端与软硬件技能,就可以完成一个完整的而且质量比较高的FPGA项目。

软件方面,FPGA可以灵活定义API与软件架构,并可以通过内置的处理器内核完成软硬件协同开发,这样也能兼顾应用的灵活性。因此,一个优秀的FPGA工程师通常也具有优秀的软件编程能力。

在系统层面,FPGA工程师可以自定义软硬件整体架构,不会像CPU或单片机一样存在明显的架构瓶颈,也不会像ASIC一样需要考虑过多底层电路单元以及工艺的具体实现。

综上,只有FPGA工程师能拥有软硬件系统的全栈能力,这也是FPGA工程师的核心竞争力。并且,这种能力可以在工程实践中不断自我丰富和提升。这使得优秀的FPGA工程师不需要太过依赖其他人,能够自己或少量人很快完成完整的系统级方案。

现在很多AI初创公司选择使用FPGA作为硬件平台的主要原因之一,就是看中FPGA工程师的全栈能力,使得公司能在较少投入的情况下,取得性能、灵活性、可扩展性等多个方面的良好平衡。

全栈能力是FPGA工程师需要的完整技能树。至于很多答友提到的调试和debug能力,更多的是在回答这个技能树的技能点分配问题。这就是老石要讲的第二个方面:

作为FPGA工程师,我们应该如何培养这些能力

相信很多人会问,老石你说的这种全栈能力,究竟是不是在画大饼吹牛逼?在实际生活中,到底是不是真的有人能全部精通技能树中的所有分支?老石的答案是,虽然很少,但确实有这样的大牛,而且老石有幸和他在一个团队里工作。

一般来说,如果一个FPGA工程师能在这个FPGA技能栈里精通某一项,就可以成为这个领域的大牛和权威。比如,像很多人提到的,如果你特别会调板子,硬件调试能力很强,那你就可以很好的负责项目中的硬件测试环节。再比如,你RTL写的很好,或者验证很强,或者对系统架构有很深的理解,你都能在项目里成为不可或缺的人。

但是,在老石所在团队里就有一位带头大哥,可以从系统架构、模块设计、验证、系统整合、FPGA后端优化、硬件测试、软件开发和调试等等全部环节一个人搞定,可以说是点满了技能树上所有的技能点。

这样的人就像阿里的多隆,一个人可以顶一支团队,公司缺他不可。因此如果一个FPGA工程师能够获取软硬件的全栈能力,将是团队乃至全公司的最主要竞争能力。

作为一个新人,应该如何培养自己的FPGA全栈能力呢?其实,带头大哥的技术功底也并非通过一天练成的,最重要的是时间的积累,不断的钻研以及真正的兴趣。这些道理在任何行业都是一样的。一开始可以先重点突破技能树的某个分支,但最终的目标还是要让整个技能树枝繁叶茂。

此外,工程师需要的软技能也是不可或缺的,例如独立思考的能力、沟通、写作以及良好的英语等等。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1592

    文章

    21207

    浏览量

    592136

原文标题:什么是FPGA工程师的核心竞争力

文章出处:【微信号:xiaojiaoyafpga,微信公众号:电子森林】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    从天龙八部论嵌入式行业中个人与企业的核心竞争力

    ,抓住核心竞争力很重要。而在这里,内功就是核心竞争力。萧远山和慕容博恰恰是因为没有抓住核心竞争力
    发表于 12-31 20:50

    嵌入式开发的核心竞争力是什么

    ,”嵌入式开发“的主体是工程师。因此不同主体在不同范畴下的核心竞争力也不同。对于企业,在嵌入式领域的核心竞争力是”标准“。”标准“具体展开可
    发表于 05-07 15:52

    关于嵌入式的技术竞争力

    的通信协议的核心业务逻辑。同理,在嵌入式+AI相关的公司,虽然嵌入式工程师不一定要懂得自己实现AI核心算法,但是核心技术竞争力也不是指调用别
    发表于 05-16 16:21

    各路大神对于嵌入式的核心竞争力的看法

    来看看。另外,著名嵌入式工程师老石也对FPGA工程师核心竞争力进行了讲解:老石认为,这个问题其实可以引申为以下两点:1、什么是只有
    发表于 07-18 09:21

    嵌入式开发的核心竞争力有哪些?

    `嵌入式开发的核心竞争力有哪些?嵌入式开发是一种软硬件结合的知识与技术。相比较其他开发方向,嵌入式开发的核心竞争力主要有以下几个方面:一,精通软硬件,技术“整合”度高。嵌入式开发需要懂
    发表于 11-27 15:00

    关于嵌入式的技术竞争力的相关资料分享

    转载自火哥公众号 嵌入式老鸟的职场之道相信很多刚入行1-2年,甚至5年10年的嵌入式工程师都会有这些疑惑。我做的事情好像没有多少技术含量,我做的事情好像没有多少创新,做嵌入式的技术竞争力到底在
    发表于 10-27 07:51

    嵌入式系统的核心竞争力是什么

    不管是什么技术想要有自己的发展前景就要有自己的有点在现在这这个技术快速发展的时代必须要有自己的核心竞争力才会有好的发展空间。接下来呢我们就来看一下嵌入式系统的核心竞争力:1、接口——可
    发表于 11-08 08:46

    嵌入式工程师需要哪些关键技能呢

    的技能对于工程师来说具有重要的竞争力,使其在就业市场中具有竞争力并发展其职业。无需成为电气工程师或芯片设计,但是需要了解一些硬件。了解地址
    发表于 11-08 08:14

    FPGA工程师需要具备哪些技能?

    和新方法应用到实际项目中。随着企业对FPGA工程师日益增加的需求,不断提升自己的技能水平将成为竞争的不二法门。因此,在这个快速发展的行业中,不断学习、磨炼技能和开拓思路,将会让FPGA
    发表于 11-09 11:03

    什么是FPGA工程师核心竞争力

    、debug、硬件实现的能力了?或者,为什么说这些是专属于FPGA工程师核心竞争力? 老石认为,这个问题其实可以引申为以下两点: 什么是只有FPG
    发表于 02-23 11:28 1388次阅读

    什么是FPGA工程师核心竞争力

    仅仅“调板子”、“debug”、“硬件实现”等等?
    的头像 发表于 04-30 14:25 8173次阅读

    FPGA工程师核心竞争力 — 方法篇(二)

    本篇将重点学习解读后面三章内容:设计约束、设计实现和设计收敛。
    的头像 发表于 02-16 16:21 1360次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>工程师</b>的<b class='flag-5'>核心</b><b class='flag-5'>竞争力</b> — 方法篇(二)

    FPGA工程师核心竞争力 - 方法篇(一)

    本文主要参考UG949,进行重点阐述。
    的头像 发表于 02-16 16:21 1219次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>工程师</b>的<b class='flag-5'>核心</b><b class='flag-5'>竞争力</b> - 方法篇(一)

    FPGA工程师核心竞争力—学习篇(一)

    要做一名合格的FPGA工程师,需要从底层做起,从语法、模块编写、工程搭建、系统开发与验证、资源评估和性能优化、平台和架构设计,到系统级的软硬件全栈能力,无疑,这是一名优秀的FPGA
    的头像 发表于 02-16 16:21 2722次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>工程师</b>的<b class='flag-5'>核心</b><b class='flag-5'>竞争力</b>—学习篇(一)

    FPGA到底是什么?,FPGA工程师核心竞争力是什么?

    Intel和AMD都斥巨资收购了领先的 FPGA 公司。撇开相对较小的嵌入式计算和通信/互联网市场,这些基本上是对FPGA作为数据中心服务器CPU的关键组合的未来的赌注。但除非克服了在软件程序员
    的头像 发表于 01-07 02:45 1004次阅读