1
Kevin一直認為學(xué)習FPGA的朋友的邏輯思維能力應(yīng)該是比其他人要強很多的。在很多求職網(wǎng)站上都可以看到FPGA相關(guān)行業(yè)的招聘信息可能會有這樣的一條工作職責:負責項目的邏輯設(shè)計。
在業(yè)內(nèi),F(xiàn)PGA工程師也被稱為邏輯工程師,而FPGA工程師寫的Verilog代碼也被稱為邏輯代碼。
上述信息均表明,F(xiàn)PGA工程師的邏輯思維能力應(yīng)該是極強的。
2
FPGA工程師遇到問題一般都是會非常淡定的去分析問題的原因,而不是看到項目出現(xiàn)了某個問題就像個無頭蒼蠅到處亂改代碼,改完之后再試,試了不行再改,在“改了又試,試了又改”這條路上糾纏不清。如果進入到這種模式,那只能說明這完全不是一個稱職的FPGA工程師。
不過很不幸,在很多初學(xué)者學(xué)習FPGA的時候,往往會進入到“改了又試,試了又改”這種死循環(huán)的狀態(tài)中。出現(xiàn)這種情形的原因,就是缺乏深度思考。
深度思考,往往比努力修改代碼重要,修改代碼是要在經(jīng)過深度思考的前提下進行的。
那如何進行深度思考呢?
第一點,需要仔細觀察問題的現(xiàn)象。每一個錯誤的現(xiàn)象都不是憑空出現(xiàn)的,而出現(xiàn)了問題之后,就必須要對錯誤的現(xiàn)象進行觀察。
第二點,仔細觀察現(xiàn)象之后,接著就需要進行深度分析了。在分析的過程中,一定要對涉及到此問題的所有因素進行排查。要做到這一點,就必須要懷疑一切與此相關(guān)、可能造成該錯誤現(xiàn)象的條件。
第三點,雖然是懷疑一切可能會觸發(fā)此錯誤現(xiàn)象的因素,但也需要進行一個預(yù)排查的過程。就是說,需要先排除一些經(jīng)過邏輯推理后能確定不會造成出現(xiàn)問題的因素。
第四點,排查了部分因素之后,那就需要多剩下的不能確定的因素進行試驗,在有試驗結(jié)果或現(xiàn)象的基礎(chǔ)上再進行分析,分析什么呢?分析實驗結(jié)果,如果改了代碼的某個地方,問題一下子解決了,那肯定就說明這一因素一定是會造成問題的。如果不是這個因素,那就再繼續(xù)做實驗,做完試驗后在繼續(xù)分析,直到找到真正能產(chǎn)生問題的那個錯誤為止。
3
Kevin這段時間做的一個項目,在常溫下產(chǎn)品能穩(wěn)定工作,在低溫(-40℃)下偏偏不能正常工作。
對于這一點,整個項目組的人員認為的問題的因素很多:
第一,懷疑邏輯代碼有問題;
第二,低溫下FPGA的參考時鐘失鎖,不夠穩(wěn)定;
第三,所選FPGA的型號的工作溫度達不到-40攝氏度,也就是在低溫下FPGA掛掉了;
。。。。。。。
當然,項目組認為會引起該問題的因素還有很多,Kevin就不一一列舉了。
Kevin舉這個例子的目的,就是告訴大家,遇到問題,一定要深度分析會引發(fā)該問題的所有因素。
審核編輯:劉清
-
FPGA
+關(guān)注
關(guān)注
1625文章
21636瀏覽量
601315 -
Verilog語言
+關(guān)注
關(guān)注
0文章
113瀏覽量
8206
原文標題:FPGA工程師的項目邏輯思維
文章出處:【微信號:FPGA研究院,微信公眾號:FPGA研究院】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論