您的位置 首页 报告

骏龙科技Andrew ―― FPGA资深FAE的经历独白

看似简单的几个问题,Andrew却回答的井井有条,小编已经没有办法有什么其他词语去形容了。本文Andrew不仅仅对FPGA入门学习流程做了详细的分享,更是对FPGA开发工作的要求分成大公司和小公司两个

看似简略的几个问题,Andrew却答复的有条不紊,小编现已没有办法有什么其他词语去描绘了。本文Andrew不只仅对FPGA入门学习流程做了详细的共享,更是对FPGA开发作业的要求分红大公司和小公司两个层面来剖析。你能幻想早年从一个忽略学业的人成为一名资深FAE的嘛?

1. 您以为想学FPGA的话,先学好什么才最重要?

Andrew:咱们玩FPGA的一般便是跟数字电路打交道,要想玩得转,有必要先学习并把握最最根底的数字电路和HDL硬件描绘言语,当然这仅仅入门必备,实际上远远不行。个人拙见,要入行除了至少把握一种FPGA的仿真及开发调试流程之外;最少还要了解一些模仿电路常识,把握比方电源纹波、时钟颤动、信号质量等常常需求丈量的硬件参数的测验办法;最少还要把握一种原理图和Layout规划软件,可以检查剖析调试电路板上的电路模块,如电源、时钟、存储器、装备、I/O和高速收发器等模块;最少还要把握一种单片机的开发流程,项目中不免有一些需求装备操控的需求,运用外置单片机或许内置ARM硬核或许其他软CPU来完结,简略又便利;由于自己水平有限,其他方面这儿就不再赘述。

那么,针对FPGA入门学习的一般流程,简略总结一下,供朋友们参阅,有阅历的大牛可以绕道:

1.首要要有开发渠道,把该预备的都预备好,磨刀不误砍柴工:

比方ALTERA的Quartus II软件、开发板和装备调试东西USB Blaster,以及仿真软件Modelsim SE。软件可以从网上下载,入门功用的答应的调和办法一大堆;开发板和USB Blaster可以借,可以买,着手才能强的朋友,自己画一块也行。关于初学者,主张找一块有详细配套教程的开发板。

2. 关于新手来讲,墨守成规地学习往往便是最快的学习办法:

照本宣科虽然囫囵吞枣一知半解,但最少能把开发流程摸熟,能跑起来。刚拿到开发板,肯定是丈二和尚摸不着头脑。这个时分,主张先依据开发板的配套教程,把原理图上的各项模块功用厘清,把FPGA周围的电源、时钟、复位、装备、GPIO和连接器等的电路原理理一理剖析剖析。再依照配套教程中介绍的流程,把配套的测验工程跑通,在这个阶段,把FPGA开发所触及的RTL输入,概括、前仿真、布局布线、后仿真、装备调试的流程摸清楚。学习新东西的进程中,不免会呈现一些不了解的“疑难杂症”,切莫悲观,坚持便是胜利。当然,往往这个时分,有些朋友开端厌弃教程写得冗长、写得烂,或许碰到英文教程推托看不明白,就开端凭空捏造,天天受阻,逐渐损失爱好和决心,当开发板上面落满了灰,你还好意思在换岗的时分吹嘘有过怎么丰厚FPGA阅历吗?

3. 了解了开发流程:

接下来就可以剖析或许改写原教程中的代码或许模块,有针对性地去完结一些功用模块,而且经过一些软件自带的调试组件来辅佐验证效果是否契合预期,如SignalTap II等。无论是原厂的单板,仍是FPGA爱好者做的单板,配套例程都会有一些经典的电路完结事例,比方根本的分频器,简略的I2C通讯、SRAM读写操控,以及略微杂乱的SDRAM读写操控等,仔细剖析他人怎么写代码完结所观测到的时序,与此一同,阅览相应模块手册或许器材内部组件文档中的时序描绘章节来比照剖析,查阅网上他人共享的调试心得博客、论文等,直到了解并把握停止,而且恰当地做些笔记概括总结,所谓常常记记,以防忘掉,给其他人或许给往后的自己参阅。

4. 光靠自己研讨,有时会被一些问题堵塞思绪,大脑会卡壳:

那么,参与一些学习小组、专业的评论圈子是有必要的,是利大于弊的,比方论坛、FPGA工业圈QQ群,共享心得,咨询问题,评论人生。这个进程,也有或许误入歧途,有些朋友或许过共享用交际的愉悦,沉迷于灌水的浪潮中。主张在学习作业的时分,把精力首要放到学习研讨中,切莫堕入无聊的灌水大军中。除了线上交流,咱们也可以参与社区安排的线下沙龙活动,面对面地交流学习,评论问题的一同还或许往来一些好朋友。跟他人评论问题,意图是为了处理问题,处理进程需求一些技巧,主张尽量把现已遇到的问题的器材类型软件版别、观测到的症状、仿真调试的波形、已测验的办法和已剖析的或许原因先罗列出来,让能帮你且有时间有心境帮你的朋友快速及时地剖分出原因并给出处理办法,这是一个简略的评论问题的办法论。他人帮你是恩德,不是责任。假如没有人帮到你,不要悲观,持续想其他办法。

5. 有一点根底了,就可以当令挑选一些项目练手:

不只可以训练FPGA开发才能,还可以增强决心,沉积阅历,获取价值表现。老是拿着开发板玩,思维简略囿于开发板所触及的小小“骗局”,其实开发板仅仅个学习东西,开发板玩得再熟,也仅仅了解那上面的几个小模块罢了。FPGA运用广泛,相关产品层出不穷,大把的作业及商场时机,假如光学不练,那真是白瞎了韶光,浪费了生命。

2.从事FPGA开发作业有些什么要求呢?

Andrew:坦白地讲,这个问题很难答复,不同的公司、不同的产品、不同的项目组、不同的研制人员需求千差万别。不过,可以评论评论。公司与研制之间是双向挑选,公司要求产品具有必定的技能优势和安稳度,可以及时上市掩盖必定的细分作业,研制需求公司依照合同供给合理的待遇和福利。 大公司人员分工相比照较明晰,FPGA工程师需求协作体系工程师、算法工程师、软件工程师、硬件工程师和测验工程师完结产品单板的功用规划和安稳性测验,由于不是一个人在战役,所以更需求注重团队协作。而且大公司往往与芯片的供货商有战略协作关系,获取相应的支撑资源在力度和速度的优先级上远远高于一般公司,这对FPGA技能层面的修炼是大有裨益的。

在这样的公司里作业,窃以为需求培育:

1. 自我学习才能。公司假如有相关训练,抓住时机好好学习;假如没有,平常在作业之余要加强专业常识充电,把自己打形成不可或缺的人才。别的要注意公司不是校园,公司要的是精干实事的职工,不是坐而论道坐而论道的赵括,不能天天想着学习而不干活。

2. 交流和谐才能。遇到疑难问题要及时主张集体评论确诊,切莫蒙头自己死扛,一来自己压力大,二来影响项目开发进展,必要时要及时把芯片供货商的支撑团队拉进来一同评论剖析。要意识到自己的缺乏,尊重团队中其他成员的定见和主张,常常训练自己的交流和谐才能,为往后自己带团队做预备。

3. 抗压才能。FPGA开发的难度高居主控芯片(CPU,DSP,FPGA,专用芯片等)的榜首,芯片厂家为了协作商场需求,连年不断晋级器材软件,这关于研制来讲便是灾祸,但是为了提高终究产品的比赛力,提高咱们本身的价值,咱们不得不去学习把握。别的公司项目往往严厉依照预期进展展开,假如遇到难题,加班加点是有必要的。所以咱们平常必定要多训练身体,多看书,培育必定的爱好爱好,以排解项目开发中的苦闷。像某为那样,只注重作业效率,把研制当作加班的机器,时不时就有报导研制跳楼的新闻,简直便是业界的羞耻。

4. 作业生涯规划才能。大公司作业使命单一,对专业深度要求高。要逐渐规划调整自己未来的路,往专业深度走,做技能专家;往专业广度上走,做体系工程师;往技能之外的岗位走,转行。作业要积极自动,选好的路就好好走下去,切忌反复无常,滥竽充数,杯水车薪,碰到好光景,还可以混日子;碰到比方其时这种外企裁人潮,诺基亚、思科、微软等公司纷繁大裁人,老大不小的南郭处士再作业难度就比较大。凡事都逃不过因果关系,给公司努力作业,便是为自己的未来努力作业。只需有才能,将来仍是有时机出去自创企业,发明更多社会价值。

小公司自由度高,单独的FPGA工程师的职位设置不太常见,往往环绕着项意图需求,工程师既要当爹又要当妈,硬件软件逻辑机械模型一同搞。从表面上看,要做的作业比较杂,新人往往感觉在打酱油,跑龙套。有一些朋友耐性比较差,简略堕入常常换岗的怪圈。其实呢,小公司有小公司的好,产品的杂乱度相对来讲不高,研制出项意图速度比较快,数目也比较多,简略堆集本身的成就感,这感触和大公司里边有时的无力感有大相径庭。再者小公司由于企业规模小的原因,直接做渠道与大公司比赛的或许性不大,往往都是做一些环绕大公司渠道的配套产品,或许做一些大公司不愿意做或许没有注意到的新的细分产品。作为研制,可以直接或直触摸摸终端作业运用,对产品的功用了解直观透彻,对作业也有必定的调研,将来很简略出去创业,做出愈加细分的作业产品。

在小公司作业,窃以为需求训练:

1. 产品规划的大局观。自动去研讨产品的运用需求,整合现有的计划,揣摩或许改善的部分,将其开发规划为产品的亮点,赢得细分作业的商场。产品本身技能含量不高,所以咱们也没有必要纠结一些技能细节,只需能完结能出产品,便是研制的价值表现。

2. 技能的广度。多了解一些常用的芯片渠道,抢手的完结计划。产品在规划进程中,尽量挑选老练的芯片渠道和结构,下降产品研制的危险和出资。

3. 交流才能。小公司的老板一般不太注重研制,对研制的投入力度有限,研制团队里往往只需光杆司令几人。长时间短缺交流,有些朋友或许表现得比较迟钝,比较闷骚,其实对往后的作业生涯是有坏处的。必定要找时机与公司其他部分的人交流交流,不要给自己画圈。平常要积极参与一些线下沙龙,活动,训练本身的交流才能。

4. 耐性。人生漫漫,来日方长,剩者为王。所谓干一行爱一行,时机永久留给有预备的朋友。

3. 初级工程师应具有哪些专业技能?

Andrew:至于FPGA工程师的所需的专业技能,仁者见仁,智者见智,我在榜首个问题的答复中也说到若干。

这儿专门罗列一下我个人浅见,仅供参阅:

1. 时序的规划和仿真才能。时序是规划出来的,一些常见的电路模块有必要要把握,如流水线操作,状态机,localbus接口,存储器读写等电路的时序规划。FPGA相关的作品数不胜数,这儿引荐两本:《FPGA Prototyping by Verilog Examples》,美籍华人Pong P. Chu针对Xilinx Spatran3E 开发套件编著的Verilog根底教材,可以在网上下载英文版的pdf,可以自行打印成册参阅;别的一本有中译本出书,可以在Amazon购买,作者克里兹,孟宪元翻译的《高档FPGA规划 结构、完结和优化》,书很好很薄,翻译得有待改善。这两本可以作为学习FPGA办法论的“红宝书”。

2. 电路调试才能。安稳的产品是建立在不断调试改善的根底上的。娴熟运用常用的测验东西,如万用表、示波器、逻辑剖析仪等。了解FPGA厂家供给的调试东西,关于FPGA规划事半功倍,如前面说到的SignalTap II。一些辅佐的调试东西最好也可以把握,如串口、网络报文剖析东西等等。电子规划相关的小东西有许多,依据自己的作业需求恰当挑选。

3. 文档阅览和编写才能。作为一名FPGA工程师,免不了与器材软件的英文文档打交道,阅览文档要先是搞清楚几条:读哪些文档哪个章节,在哪里找这些文档。我想这些一时半会也讲不完,我早年在某论坛发了一个关于ALTEAR FPGA材料列表的帖子,很受欢迎,至今仍然在热帖之中。主张常常自动与相关芯片厂家的FAE交流,获取有用的直接的技能支撑;当然文档是需求自己读的,他人不能永久帮你读。再一个,公司内部技能堆集,编写文档也是必要的,有一些东西需求把握,如画波形的TimeGen或许Timing Designer,字处理软件Word或许WPS等。关于文档建造,有些公司不太注重,其实文档很重要很必要,对团队内部审理评论,对未来的自己参阅都是有用的。

4. 讲演交流的才能。俗话说,光说不练假把式,光练不说傻把式,又说又练真把式。团队内部评论产品需求,计划规划,问题确诊,都需求讲演交流。乃至恳求老板加薪,罗列自己的效果也需求必定的讲演交流才能。可以恰当地借用东西来辅佐,比方ppt。

4. 自从业以来,遇到最大的困难与应战是什么?能否给咱们共享些您的阅历以及心路历程?

Andrew:对我个人而言,在学习FPGA的道路上所遇到的最大的困难和应战是在大学期间产生的。由于高中阶段过火入神于网页规划,忽略了学业,效果只考上一所不太有名的工科大学。大一完毕的暑假,没有回家,被老乡介绍到其时由某教师安排的DSP小组中打杂。小组里有两拨人,一拨人研讨根据TI DSP的指纹识别,别的一拨人研讨ALTERA FPGA,根据友晶的DE1开发板。其时刚刚念完《电路》,比较猎奇附录章节的MATLAB试验,所以玩过一阵子MATLAB,用来解电路的习题。那个时分对DSP和数字电路都不明白,刚好小组里研讨DSP的人比较多,FPGA小组还有名额,我就被分到FPGA小组。短短两个月暑假,教师给咱们分配了MIT的《根据MATLAB的数字信号处理试验》中的一些习题使命,一同咱们也自学了《数字电路》中的部分章节,学会了 Quartus II的根本操作流程。大二上学期,我根本把DE1开发板所配套的仅有的几个试验例程都跑通了,算是入门了。那时也不晓得FPGA精干啥,横竖便是比较入神。教师平常给咱们介绍一些学习办法,安置一些试验使命,剩余的便是自我学习完结。好景不长,不晓得什么原因,咱们那个教师失踪了,至今我都没有他的消息。加上校园懂FPGA的人寥寥无几,我讨教过许多教师,但都是玩单片机和DSP的居多。也邮件联络过骏龙科技和艾睿电子,终究都是杳无音信,没有回信。所以从大二开端,我对FPGA朴实便是单独在学习。这对我来讲,是FPGA学习道路上最大的困难和应战。

还好我在网上发现了萧鸿森 oomusou的博客,他曾经搞软件的,其时他30多岁在台大读研讨生一同担任本科FPGA试验的助教,他写了上百篇根据友晶DE系列开发板的试验进程及心得的博文。我简直把萧教师的大部分博文都深入研讨试验过,萧教师写的博文首要是为了带台大本科的FPGA试验课,行文彻底依照写论文的格局,论说浅显易懂,对完结原理和代码的说明十分翔实,所引证的内容也逐个标出。这段自学阅历对我有深远的影响。再后来我仔细研讨过SOPC体系和Nios II软核处理器,参与了闻名的“SOPC技能联盟”QQ群,群主腾龙大哥,张景秀,是《SOPC体系规划与实践》的作者。在此群中我认识了许多FPGA爱好者,一向相处到现在。所以我以为网络的力气是无量的,不管身在何方,只需感爱好,可以自学任何技能,我个人的阅历便是生动的事例。

终究我拿杨振宁老先生说明过的“真情妙悟著文章”来总结一下FPGA的研习心得。

首要要存真情,要有爱好去学习,去探索,爱好是榜首教师;然后假如可以在学习研讨的一同独立或许与他人协作完结一些小效果,比方参与电子比赛完结一些量力而行而且能表现自己主意的功用模块,这便是妙语,有自己的堆集和闪光点;终究著文章,便是经年累月,在项目实践中学习总结,逐渐沉积为必定的专业涵养,将自己的思维凝聚在产品的开发规划中。

5. 您以为从“Junior”工程师生长为“Senior”工程师的进程有哪几个阶段呢?

Andrew:这个论题有难度有深度,恐怕我个人才能不行,欠好驾御。窃以为从产品规划的层面上讲,初级工程师或许只能掩盖一些根本的指定的功用模块开发规划,或许还比较费劲,进程中或许还需求向先进讨教,作业的独立性也需求逐渐加强,所开发的产品或许考虑得不全面。但是他们有优势,年青好学,积极自动,没有显着的过期的思维惯式和不良的作业习气,短缺的仅仅作业阅历,假如公司内部有好的人才培育机制,那么成为高档工程师是迟早的事。相比较于初级工程师,高档工程师愈加擅长于体系架构层面的作业,或许详细的履行层面不必定比初级工程师娴熟,但是他们身经百战,对作业运用一目了然,可以灵敏地挖掘出作业潜在的需求,并及时转化到产品项意图研制架构及计划中。他们是战略性人才,是研制型公司不可或缺的顶梁柱。

一般来讲,在初级工程师阶段,所能做的便是打打下手,做一些他人指使的作业,研讨完结某些详细的简略的或许有参阅的项目模块,一同逐渐堆集一些现已验证过的项目模块的开发阅历。然后下一步便是自己可以独立接受并完结一些有规划的有目标要求的项目,有一些共同的见地和专业的沉积,这个进程或许关于不同公司不同产品在时间跨度上各有不同。那么终究便是突变导致突变,项目开发的多了,对作业运用的认知就越来越明晰,自然而然就提高蜕变为高档工程师。

6.在您生命中早年有哪些人对你形成过影响? 给你的启示又是什么呢?

Andrew:许多人,首要是我不一同期的教师们和朋友们。给我的启示便是学习他人的利益,正视自己的矮处,展现自己的特别之处。

7. 身为一名资深FAE不知道您对这个岗位又有怎样的观点呢?

Andrew:有一个小故事,咱们或许耳熟能详。早年有个人去看医师,他说自己很懊丧,日子无情而严酷,在这充溢要挟世上觉得十分孤单。医师说:“没关系,城里的马戏团有位闻名的小丑,会说一切笑话。看了他的扮演,你就不会再烦恼了。”那个人哭着说:“但是医师,我便是那个小丑。”这个故事或许有些夸大,但我以为也在必定层面上反映了咨询支撑从业人员的现状,FAE或许也概莫能外吧。

FAE是研制人员最真挚的朋友

他们给研制人员推介最先进最合适的技能计划,协助处理一个又一个现已遇到的技能难题,而且及时指出或许呈现问题的躲避办法;在加速研制产品速度的一同,也直接地直接的被传导了一些研制压力,那么当不同方向的压力传导到单个FAE的身上,FAE的压力也在倍增。他们或许有时没有及时回复你的邮件,没有接你的电话,那是由于太忙了,请不要骂娘,请耐性等候。

FAE是一份极具应战的作业,

尤其是自动器材的FAE。需求时间坚持积极自动的学习精力,榜首时间把芯片厂商的最新技能学习消化并及时传播给研制朋友们;需求杰出的脑力和膂力,才可以在短时间内呼应及回复来自于不同公司、不同项目、不同研制人员的不同层面的技能问题。

FAE是一份走运的作业,

他们可以触摸各式各样的作业运用,可以向各式各样的研制人员学习,领会他们名贵的绚烂的开发规划思维。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ceping/baogao/287863.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部