從研一開始接觸FPGA,,剛開始接觸的時候,,認為很簡單,不就是寫寫代碼就okey了嗎,?所以混混諤諤地度過了3個月,,因為剛開始的時候接觸的時比較簡單的算法,所以對設計的時序和性能要求不是很高,,寫寫代碼完全就可以了,,所以從來沒有關心底層的東西(底層的手工布局布線),也很少寫一些約束文件,??墒呛髞黼S著設計月來月復雜,才認識到約束文件和底層布局布線的重要性,。而這些東西設計的知識面還是比較廣的 ,,比如數(shù)字電路,高速時鐘系統(tǒng),,電路工藝方面,,系統(tǒng)設計等等。只有底層做好了,,才是真正的高手,。后來去709所調試板子的時候,有幸遇到一個經驗很豐富并且很樂意幫助我們的工程師,,她從90年代開始做FPGA,,那個時候EDA工具不像現(xiàn)在智能化,,她那個時候基本上完全是從底層做起來的,即使到我今年5月份去的時候,,她才開始學習語言verilog,,絕大部分工作都是自己從底層的模塊搭建起來的。和我們的設計相比,,她的設計性能更好,,代價更小,系統(tǒng)更穩(wěn)定,。那一個月學到的東西,,比我讀研三年學到的東西更多。下面是自己的一些總結(個人意見,,僅供參考):
1 要有對FPGA的興趣,,只有這樣才能用最大的熱情對待它。
2 要有對數(shù)字系統(tǒng)設計比較全面的把握,,reg ,,ram,counter,,fifo,,dsp,uc......
3 最好能有一個具體的項目(最好復雜一些,,對系統(tǒng)的性能要求高一些),,這樣才能有的放矢,有壓力才有動力,。
4 找一個好的老師
5 重視底層,,即使你的系統(tǒng)性能可以滿足要求,也嘗試著從底層進行一些開放和優(yōu)化
6 多看看別人成功的例子,,拓寬自己的視野,,沒事的時候到FPGA論壇逛逛。幫助他人也是幫助自己,。
7 對要求實現(xiàn)的算法或者系統(tǒng)有一個清楚的認識