0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

從事15年FPGA的大齡工程師談FPGA經(jīng)驗

工程師人生 ? 來源:FPGA技術聯(lián)盟 ? 作者:FPGA技術聯(lián)盟 ? 2020-11-14 11:35 ? 次閱讀

很多FPGA初學者,都會懷疑學習FPGA有沒有前途,發(fā)展前景怎么樣,到底該怎樣學習FPGA???各種迷茫,導致無法踏踏實實、全身心投入FPGA學習與開發(fā)工作中。下面請看看一個死磕FPGA 15年的大神給大家的肺腑之言,相信看完之后的你不在徘徊、不再猶豫、能夠勇往直前。

作為一個從事了15年FPGA行業(yè)的大齡工程師。期間接也觸過一些項目管理和技術支持之類的工作,但總覺得自己更適合死磕技術。在FPGA的領域找到未來的指引?!?/p>

做FPGA不只是寫寫代碼

“FPGA作為數(shù)字系統(tǒng)的主角兒,經(jīng)過近20年的突飛猛進發(fā)展,大家都明白這個領域的工程師對經(jīng)驗是非??粗氐?,屬于典型的入門簡單,若要精深就很難,做FPGA開發(fā)不只是會寫寫verilog和VHDL代碼這么簡單,而是要設計芯片,如果按照芯片的設計要求,才能提高自身的能力?!?/p>

硬件開發(fā)語言是用來設計芯片的,而數(shù)字芯片也就是0/1的翻轉,HDL能夠逐漸映射出一個個與非門、觸發(fā)器、存儲器,以及他們之間的時序關系,時時刻刻考慮怎樣設計才能保證面積小、延遲低。功能做對了還要考慮時序優(yōu)化,即使功能設計的再完美,代碼寫的再簡潔,設計的時候沒有考慮時序,一切都是花架子、空擺設?!?/p>

FPGA是數(shù)字系統(tǒng)的主角

“FPGA逐漸從粘合邏輯轉變?yōu)橄到y(tǒng)級角色。開始的時候主要用于做接口、做通信,也就是偏向硬件。如此,最基本的接口協(xié)議便很重要,不懂接口協(xié)議FPGA就是孤家寡人,沒有數(shù)據(jù)的交互,什么都干不了,故一個成熟的FPGA工程師不是熟悉FPGA就好。”

后來,F(xiàn)PGA開始逐漸用來做做算法、做控制,如果要用FPGA做算法,還需要學習更高級的語言做仿真和驗證,更重要的是要把算法映射到FPGA的硬件資源或者外設,并基于速度、面積和功能做平衡,做優(yōu)化。還是挺有挑戰(zhàn)呢。

現(xiàn)在,隨著人工智能、機器視覺的崛起,F(xiàn)PGA更加偏向系統(tǒng)級設計,有了軟件算法的異構,能夠替代GPUCPU”.

所以,已經(jīng)在路上的不用回頭,也許你面前溝溝坎坎很難走,甚至有一堵墻遮光蔽日,但是,前途是絕對光明的。

01、FPGA入門之道

對于新手學習FPGA設計,要從基礎開始做,基礎牢,才有成為高手的可能。

以下幾步是初學者必須要踏實走過的:

step 1:

了解FPGA結構,F(xiàn)PGA到底是什么東西,芯片里面有什么,不要開始就拿個開發(fā)板照著別人的東西去編程。只有了解了FPGA內(nèi)部的結構才能明白為什么寫Verilog和寫C整體思路是不一樣的。

step2:

了解了FPGA的結構和設計流程才有可能知道怎么去優(yōu)化設計,提高速度,減少資源,不要急躁,不要再為選擇什么語言和選擇哪個公司的芯片上下功夫。語言只是一種表達的方式,重要的是你的思維模式,沒有好的指導思想,語言用得再好,不過是個懂語言的人。

step3:

開始學習代碼了。一定要系統(tǒng)的,由淺入深的去學習FPGA。

step4:

template很重要。能不能高效利用fpga資源,一是了解fpga結構,二是了解欲實現(xiàn)的邏輯功能和基本機構,三是使用正確的模板。FPGA內(nèi)部器件種類相對較單一,用好模板,你的邏輯才能被高效的綜合成FPGA擅長表達的結構。

做fpga主要是要有電路的思想,作為初學者,往往對器件可能不是熟悉,但對于數(shù)字電路的知識應該很熟悉,fpga中是由觸發(fā)器和查找表以及互聯(lián)線等基本結構組成的,其實我們在代碼里面能夠看到的就是與非門以及觸發(fā)器,切記不要把verilog和c語言等同起來,沒有什么可比性,根本就是不同的東西,在寫一句FPGA程序的時候應該想到出來的是一個什么樣的電路,計數(shù)器,選擇器 ,三態(tài)門等等,理解時序,邏輯是一拍一拍的東西,如果在設計初期想的不是很清楚,可以先畫畫時序圖,這樣思路會更加的清晰。

仿真很重要,不要寫完程序就去往fpga中去加載,首先要仿真,尤其是對較大型的程序,想像自己是在做asic,是沒有第二次機會的,所以一定要把仿真做好。

很多新手對于語言的學習不知道選vhdl好還是verilog好,個人偏好verilog,當然不是說vhdl不好,反正寫出來的都是電路,那當然就不要在語言的語法上面花太多的功夫了,verilog 言簡意賅assign always case if else 掌握這些幾乎可以寫出90%的電路了。

02、FPGA設計者需修煉的5項基本功

成為一名說得過去的FPGA設計者,需要練好5項基本功:仿真、綜合、時序分析、調(diào)試、驗證。練好這5項基本功,與用好相應的EDA工具是同一過程,對應關系如下:

仿真:Modelsim, Quartus II(Simulator Tool) riple,ISim

綜合:Quartus II (Compiler Tool, RTL Viewer, Technology Map Viewer, Chip Planner),ISE,Vivado

時序:Quartus II (TimeQuest Timing Analyzer, Technology Map Viewer, Chip Planner),ISE,Vivado

調(diào)試:Quartus II (SignalTap II Logic Analyzer, Virtual JTAG, Assignment Editor),Chipscope

驗證:Modelsim, Quartus II(Test Bench Template Writer)

掌握HDL語言雖然不是FPGA設計的全部,但是HDL語言對FPGA設計的影響貫穿于整個FPGA設計流程中,與FPGA設計的5項基本功是相輔相成的。對于FPGA設計者來說,用好“HDL語言的可綜合子集”可以完成FPGA設計50%的工作——設計編碼。用好“HDL語言的驗證子集”,可以完成FPGA設計另外50%的工作——調(diào)試驗證。

練好仿真、綜合、時序分析這3項基本功,對于學習“HDL語言的可綜合子集”有如下幫助:

通過仿真,可以觀察HDL語言在FPGA中的邏輯行為。

通過綜合,可以觀察HDL語言在FPGA中的物理實現(xiàn)形式。

通過時序分析,可以分析HDL語言在FPGA中的物理實現(xiàn)特性。

搭建驗證環(huán)境,通過仿真的手段可以檢驗FPGA設計的正確性。

全面的仿真驗證可以減少FPGA硬件調(diào)試的工作量。

把硬件調(diào)試與仿真驗證方法結合起來,用調(diào)試解決仿真未驗證的問題,用仿真保證已經(jīng)解決的問題不在調(diào)試中再現(xiàn),可以建立一個回歸驗證流程,有助于FPGA設計項目的維護。

編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1624

    文章

    21573

    瀏覽量

    600656
  • 工程師
    +關注

    關注

    59

    文章

    1563

    瀏覽量

    68379
收藏 人收藏

    評論

    相關推薦

    FPGA算法工程師、邏輯工程師、原型驗證工程師有什么區(qū)別?

    ,共同進步。 歡迎加入FPGA技術微信交流群14群! 交流問題(一) Q:FPGA中的FPGA算法工程師FPGA邏輯
    發(fā)表于 09-23 18:26

    fpga 工程師應該掌握的

    1.熟悉FPGA架構及應用,熟悉圖像算法的FPGA實現(xiàn)。 2.熟悉verilog hdl,熟悉Xilinx或Intel等開發(fā)工具。 3.有AI算法 fpga實現(xiàn)經(jīng)驗優(yōu)先。 4.本科及以
    發(fā)表于 05-30 17:08

    fpga工程師前景如何

    FPGA工程師的前景看起來相當積極和廣闊。隨著5G通信、物聯(lián)網(wǎng)、邊緣計算和人工智能等技術的快速發(fā)展,FPGA工程師的需求將進一步增加。FPGA
    的頭像 發(fā)表于 03-14 16:32 ?2971次閱讀

    fpga工程師就業(yè)趨勢

    FPGA工程師的就業(yè)趨勢呈現(xiàn)出積極的態(tài)勢。隨著科技的發(fā)展,FPGA(現(xiàn)場可編程門陣列)在通信、汽車、醫(yī)療、航空航天等領域的應用越來越廣泛,對FPGA
    的頭像 發(fā)表于 03-14 15:47 ?1338次閱讀

    FPGA圖像處理—VESA標準與視頻流介紹

    VESA 視頻標準同步信號產(chǎn)生器,是從事FPGA圖像領域工程師經(jīng)常使用到的模塊。
    的頭像 發(fā)表于 02-29 09:56 ?3055次閱讀
    <b class='flag-5'>FPGA</b>圖像處理—VESA標準與視頻流介紹

    FPGA的片內(nèi)資源

    FPGA的片內(nèi)資源
    發(fā)表于 01-08 22:12

    【2023電子工程師大會】國產(chǎn)FPGA技術及國內(nèi)FPGA發(fā)展pp

    【2023電子工程師大會】國產(chǎn)FPGA技術及國內(nèi)FPGA發(fā)展ppt
    發(fā)表于 01-03 16:31 ?26次下載

    【2023電子工程師大會】我和LabVIEW:工程師經(jīng)驗分享pp

    【2023電子工程師大會】我和LabVIEW:工程師經(jīng)驗分享ppt
    發(fā)表于 01-03 16:31 ?13次下載

    #人工智能 #FPGA 怎么成為一個合格的FPGA工程師?

    fpga工程師
    明德?lián)P助教小易老師
    發(fā)布于 :2023年12月18日 21:19:01

    中高級【嵌入式驅(qū)動工程師】年薪50w內(nèi)可

    中高級【嵌入式驅(qū)動工程師】 年薪50w以內(nèi)可 工作?地點:北京市 了解更多 ?5以上內(nèi)核驅(qū)動開發(fā)經(jīng)驗 ??需要有國產(chǎn)化操作系統(tǒng)/芯片平臺的驅(qū)動開發(fā)
    發(fā)表于 11-23 13:35

    經(jīng)典設計經(jīng)驗筆記,電子工程師必備基礎知識

    電子發(fā)燒友網(wǎng)站提供《經(jīng)典設計經(jīng)驗筆記,電子工程師必備基礎知識.pdf》資料免費下載
    發(fā)表于 11-21 11:13 ?13次下載
    經(jīng)典設計<b class='flag-5'>經(jīng)驗</b>筆記,電子<b class='flag-5'>工程師</b>必備基礎知識

    #FPGA #電子技術 #FPGA工程師,秋招時間緊迫FPGA簡歷怎么寫

    fpga
    明德?lián)P助教小易老師
    發(fā)布于 :2023年11月16日 06:45:57

    FPGA工程師需要具備哪些技能?

    FPGA(Field-Programmable Gate Array)芯片因其具有靈活性、高定制化、高性能等特點,被廣泛應用于數(shù)字系統(tǒng)設計、嵌入式系統(tǒng)、通信系統(tǒng)、計算機視覺等領域。作為FPGA工程師
    發(fā)表于 11-09 11:03

    FPGA工程師所需要掌握的基本技能

    的支持的??梢钥闯?b class='flag-5'>FPGA這個行業(yè)在現(xiàn)在還是很熱門的。并且這個行業(yè)的人才缺口也很大,歡迎各位加入FPGA這個大家庭! ■■■■ FPGA的結構 想成為一名FPGA
    發(fā)表于 11-03 10:32