1)良好的溝通技能:需要與需求方核對需要的功能及性能,態(tài)度很重要,謙遜專業(yè)的溝通態(tài)度才能對需求理解無偏差,理解錯誤,后面就可能引起構(gòu)架的修改。對外團(tuán)隊協(xié)作能力很大一部分體現(xiàn)在這里。2)行業(yè)背景知識:需要把需求翻譯成FPGA的功能點以及邏輯上的處理流程(流程及需要的數(shù)據(jù)結(jié)構(gòu),用硬件的大白話就是大的pipeline流水線功能以及每個功能對應(yīng)的表項及數(shù)據(jù)結(jié)構(gòu))。1)功耗評估:xilinx和altera兩家都會提供功耗評估excel,填入使用的IP、邏輯使用量、頻率、IO類型、時鐘等,可以評估總的功耗大小,以及每一路電源的電流的大小預(yù)估,這個很重要,是板子能否做穩(wěn)定的一個重要因素2)IO設(shè)計:電路連接設(shè)計相關(guān),把對外設(shè)計的接口特別是牽涉到存儲器、transceiver相關(guān)的接口、IO電平標(biāo)準(zhǔn)、時鐘分布都要例化出來,然后編譯通過,軟件輸出csv文件,里面包含了IO的電平標(biāo)準(zhǔn)及外圍連接,這一步極大提升做板一次成功率。因為每一代FPGA以及每個系列器件的結(jié)構(gòu)總有些不同,特別是共享PLL,transceiver,存儲器的共享模塊設(shè)計都會有些不同,因此安全做法是把要使用的除LUT和RAM以外的資源例化,然后編譯通過,保證外圍連接不出錯。3)軟硬件接口設(shè)計:制定軟件要訪問FPGA的方式、以及軟硬件如何配合、FPGA如何初始化功能。這塊需要有經(jīng)驗,不同的應(yīng)用場合需要設(shè)計不同機制。大體可以分為以下幾類:數(shù)據(jù)、命令、狀態(tài)的互傳:高性能一般要設(shè)計DMA,不同應(yīng)用DMA要求不同。4)邏輯部分的總體規(guī)劃:時鐘域規(guī)劃、復(fù)位規(guī)劃、模塊劃分及模塊功能規(guī)劃、FIFO/RAM使用大小及類型規(guī)劃、模塊間傳遞接口規(guī)劃(最好標(biāo)準(zhǔn)化,類似軟件API,以后可復(fù)用)、編碼規(guī)則制定。1)良好的coding規(guī)則:主要是命名,命名至少要區(qū)分:同步寄存器、跨時鐘域寄存器、連線這些信號命名最好在前綴區(qū)分,這個在后期下約束時可以用通配符找信號。3)領(lǐng)域內(nèi)常見算法的實現(xiàn):比如針對網(wǎng)絡(luò):共享緩存設(shè)計、各種HASH算法實現(xiàn)、LPM查表算法、各種匹配算法實現(xiàn)。加解密領(lǐng)域,需要把串行算法翻譯成硬件并行算法的能力。針對目前流行的神經(jīng)網(wǎng)絡(luò),針對各種網(wǎng)絡(luò)如何設(shè)計高效的數(shù)據(jù)流入方式,如何進(jìn)行特征的預(yù)處理。1)仿真平臺搭建,看設(shè)計大小及是否將來重用,設(shè)計大且重用多,考慮UVM這些設(shè)計方法及平臺搭建。簡單的就利用verilog,通過task任務(wù)的設(shè)計及調(diào)用來設(shè)計仿真平臺。需要掌握testbench設(shè)計、仿真工具使用及debug。2)測試規(guī)劃及項目抽取,這個是目前大部分FPGA工程師容易忽略的地方,設(shè)計要穩(wěn)定,要系統(tǒng)的進(jìn)行項目抽取,最好是另一撥人根據(jù)自己對規(guī)格的理解來系統(tǒng)抽取測試項目,這樣完整驗證后保證功能大體穩(wěn)定。而性能測試一般要在實機測試中進(jìn)行。其他軟件相關(guān)的特殊信號的約束(一般通過在代碼中用屬性表示)掌握看后端的原理圖、器件映射圖、出問題時可以在后端把一些網(wǎng)絡(luò)剪短或連接(ISE之前提供,vivado不知道是否還有這種工具)一般廠商都會提供:transceiver調(diào)試工具測試回環(huán),無碼率等。存儲器調(diào)試:各種物理層參數(shù)的配置及調(diào)試軟硬件聯(lián)調(diào)時各種調(diào)試命令的設(shè)計
歡迎關(guān)注至芯科技
至芯官網(wǎng):www.zxopen.com
至芯科技技術(shù)論壇:www.fpgaw.com
至芯科技淘寶網(wǎng)址:
https://zxopen.taobao.com
至芯科技FPGA初級課程(B站):
https://space.bilibili.com/521850676
至芯科技FPGA在線課程(騰訊課堂):
https://zxopenbj.ke.qq.com/
至芯科技-FPGA 交流群(QQ):282124839
更多資料下載歡迎注冊http://www.fpgaw.com
掃碼加微信回復(fù)加群
邀請您加入FPGA學(xué)習(xí)交流群
歡迎加入至芯科技FPGA微信學(xué)習(xí)交流群,這里有一群優(yōu)秀的FPGA工程師、學(xué)生、老師、這里FPGA技術(shù)交流學(xué)習(xí)氛圍濃厚、相互分享、相互幫助、叫上小伙伴一起加入吧!
原文標(biāo)題:FPGA工程師需要掌握的技能
文章出處:【微信公眾號:FPGA設(shè)計論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
原文標(biāo)題:FPGA工程師需要掌握的技能
文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設(shè)計論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
評論