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