FPGA/CPLD學習心得體會-送給入門學習的你(後附郭天祥FPGA視頻教程)

FPGA在目前應用領域非常,在目前的單板設計裏面,幾乎都可以看到它的身影。從簡單的邏輯組合,到高端的圖像、通信協議處理,從單片邏輯到複雜的ASIC原型驗證,從小家電到航天器,都可以看到FPGA應用,它的優點在這裏無庸贅述。從個人實用角度看,對於學生,掌握FPGA可以找到一份很好的工作,對於有經驗的工作人員,使用fgpa可以讓設計變得非常有靈活性。掌握了fpga的設計,單板硬件設計就非常容易(不是系統設計),特別是上大學時如同天書的邏輯時序圖,看起來就非常親切。但fpga的入門卻有一定難度,因爲它不像軟件設計,只要有一臺計算機,幾乎就可以完成所有的設計。fpga的設計與硬件直接相關,需要實實在在的調試儀器,譬如示波器等。這些硬件設備一般比較昂貴,這就造成一定的入門門檻,新人在入門時遇到一點問題或者困難,由於沒有調試設備,無法定位問題,最後可能就會放棄。其實這時如果有人稍微指點一下,這個門檻很容易就過去。
我用FPGA做設計很多年了,遠達不到精通的境界,只是熟悉使用,在這裏把我對fpga的學習步驟理解寫出來,僅是作爲一個參考,不對的地方,歡迎大家討論和指正。
1、工欲善其事,必先利其器。
計算機必不可少。目前FPGA應用較多的是Altera和xilinx這兩個公司,可以選擇安裝quartusII或者ISE軟件。這是必備的軟件環境。
硬件環境還需要下載器、目標板。雖然有人說沒有下載器和目標板也可學習fpga,但那總是紙上談兵。這就像談女朋友, 總是嘴上說說,通個電話,連個手都沒牽,能說人家是你朋友?雖說搭建硬件環境需要花費,但想想,硬件環境至多幾百元錢, 你要真的掌握FPGA的設計,起薪比別人都不止高出這麼多。這點花費算什麼?

 2、熟悉verilog語言或者vhdl語言 ,熟練使用quartusII或者ISE軟件。
 VHDL和verilog各有優點,選擇一個,建議選擇verilog。熟練使用設計軟件,知道怎樣編譯、仿真、下載等過程。
 起步階段不希望報一些培訓班,除非你有錢,或者運氣好,碰到一個水平高、又想把自己的經驗和別人共享的培訓老師, 不然的話,培訓完後總會感覺自己是一個冤大頭。入門階段可以在利用網絡資源完成。
 
 3、設計一個小代碼,下載到目標板看看結果
 此時可以設計一個最簡答的程序,譬如點燈。如果燈在閃爍了,表示基本入門了。如果此時能夠下載到fpga外掛的flash,fpga程序能夠從flash啓動,表明fpga的最簡單設計你已經成功,可以到下一步。
 
 4、設計稍微複雜的代碼,下載到目標板看看結果。
 
 可以設計一個UART程序,網上有參考,你要懂RS232協議和fpga內置的邏輯分析儀。網上下載一個串口調試助手,調試一番,如果通信成功了,  恭喜,水平有提高。進入下一步。
 
 5、設計複雜的代碼,下載到目標板看看結果。
 譬如sdram的程序,網上也有參考,這個設計難度有點大。可用串口來調試sdram,把串口的數據存儲到sdram,然後讀回,如果成功,那你就比較熟悉fpga的設計餓了
 
 6、設計高速接口,譬如ddr2或者高速串行接口
  這要對fpga的物理特性非常瞭解,而且要懂得是時序約束等設計方法,要看大量的原廠文檔,這部分成功了,那就對fpga的物理接口掌握很深,你就是設計高手了
  
 7、設計一個複雜的協議
    譬如USB、PCIexpress、圖像編解碼等,鍛鍊對系統的整體把握和邏輯劃分。完成這些,你就是一個一流的高手、
    
 8、學習再學習
    學習什麼,我也不知道,我只知道“學無止境,山外有山”。

郭天祥FPGA視頻教程下載地址:https://pan.baidu.com/s/1LYueLJcOM-rvAI7Fg_zqfQ

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章