傳授新手如何學(xué)習(xí)FPGA?
PGA作為一種高新技術(shù),由于其結(jié)構(gòu)的特殊性,可以重復(fù)編程,開發(fā)周期較短,越來越受到電子愛好者的青睞,其應(yīng)用已經(jīng)逐漸普及到了各行各業(yè)。因此,越來越多的電子愛好者想盡快掌握這門技術(shù)進(jìn)入該領(lǐng)域。
本文引用地址:http://butianyuan.cn/article/201610/308432.htm筆者從2007年初次接觸并系統(tǒng)學(xué)習(xí)FPGA及工作后應(yīng)用FPGA做產(chǎn)品至今已有7年的時間,初次接觸學(xué)習(xí)FPGA時由于沒有專業(yè)老師的指導(dǎo),自己摸索學(xué)習(xí)FPGA走了很多的彎路。有過問題迎刃而解的快樂,也有過苦苦尋求結(jié)果和答案的痛苦歷程,回想起自己學(xué)習(xí)FPGA的經(jīng)歷,從開始的茫然,到后來的瘋狂看書,購買開發(fā)板,在開發(fā)板上練習(xí)各種FPGA實例,到畢業(yè)工作后用一直FPGA做產(chǎn)品,獨(dú)立完成項目,一路走來,感受頗多。發(fā)覺學(xué)習(xí)FPGA只要選擇正確的方法是有捷徑可走的。筆者經(jīng)常在FPGA相關(guān)技術(shù)論壇及FPGA技術(shù)交流QQ群解答初學(xué)者在學(xué)習(xí)過程中遇到的技術(shù)問題,發(fā)現(xiàn)很多初學(xué)者都是懷著浮躁的心態(tài)來學(xué)習(xí)FPGA,總是急于求成。在學(xué)習(xí)FPGA設(shè)計技術(shù)的過程中,雖然剛開始學(xué)習(xí)熱情很高,但真正堅持下來一直到“學(xué)會”的卻寥寥無幾,除了學(xué)生個人毅力的因素外,另外一個重要的原因沒有好的學(xué)習(xí)教程的指引和缺乏正確的學(xué)習(xí)方法的指導(dǎo),原本FPGA的學(xué)習(xí)門檻相對于單片機(jī)來說就高了不少,再加上缺少手把手系列的教程資料和正確的學(xué)習(xí)方法,這就給初學(xué)者學(xué)習(xí)FPGA增添了更多的困難,很多初學(xué)者因為找不到入門的方法而漸漸失去了學(xué)習(xí)FPGA的興趣和信心。
針對現(xiàn)狀,筆者從初學(xué)者的角度出發(fā),結(jié)合筆者學(xué)習(xí)FPGA的經(jīng)驗以及使用FPGA做項目的親身體會,遵循“寧可嗦一點(diǎn),也不放過細(xì)節(jié)”的原則在電子產(chǎn)品世界通過在線培訓(xùn)的形式推出手把手教你學(xué)習(xí)FPGA系列教程,教程主要面向FPGA初學(xué)者。希望初學(xué)者通過對本教程的學(xué)習(xí),能夠快速掌握FPGA的學(xué)習(xí)方法,少走彎路,輕松走進(jìn)FPGA設(shè)計開發(fā)的大門。
此系列教程主要分為FPGA學(xué)習(xí)方法篇、FPGA基礎(chǔ)篇、FPGA實例篇以及FPGA設(shè)計技巧篇,其中FPGA基礎(chǔ)篇又包括FPGA基礎(chǔ)知識篇、硬件描述語言篇、FPGA開發(fā)工具篇、數(shù)字電路基礎(chǔ)篇以及硬件電路篇;FPGA實例篇包括FPGA入門實驗篇、FPGA進(jìn)階實驗篇、IP核使用篇以及FPGA綜合實驗篇。視頻共計54講。
FPGA學(xué)習(xí)方法篇:主要是結(jié)合筆者學(xué)習(xí)FPGA的經(jīng)歷及心得體會講解FPGA的學(xué)習(xí)方法,讓初學(xué)者掌握正確的學(xué)習(xí)方法,把握學(xué)習(xí)FPGA正確的方向,少走彎路,避免進(jìn)入FPGA學(xué)習(xí)的誤區(qū)。在學(xué)習(xí)方法篇中還會講解硬件描述語言有關(guān)的知識,主要是讓初學(xué)者正確認(rèn)識硬件描述語言和其他編程語言的區(qū)別,掌握學(xué)習(xí)硬件描述語言的正確方法。在學(xué)習(xí)方法篇的最后會講解如何選擇正確的硬件開發(fā)平臺,因為要掌握FPGA這門技術(shù),扎實的理論知識還遠(yuǎn)遠(yuǎn)不夠,購買一塊FPGA開發(fā)板,多動手練習(xí)實踐更顯得尤為重要。而如何選擇性價比很高的硬件開發(fā)平臺,也是初學(xué)者比較迷惑的問題,筆者通過硬件開發(fā)平臺選型指南將會教給初學(xué)者如何花最少的錢選擇性價比高的FPGA開發(fā)板入門FPGA技術(shù)。
FPGA基礎(chǔ)知識篇:主要是講解FPGA內(nèi)部結(jié)構(gòu)、FPGA可編程的基本原理以及FPGA的開發(fā)流程方面的知識。要想學(xué)好FPGA,必須先搞清楚FPGA是什么,這是入門FPGA技術(shù)的基礎(chǔ)。通過本篇教程學(xué)習(xí)主要是讓初學(xué)者掌握FPGA的基礎(chǔ)知識,了解FPGA可編程的基本原理以及了解FPGA的開發(fā)流程。
FPGA開發(fā)工具篇:主要是講解FPGA開發(fā)工具Quartus II軟件的安裝、破解和使用;FPGA仿真工具modelsim軟件的安裝、破解和使用;FPGA片上debug工具SignalTap II軟件的的使用。
硬件描述語言篇:主要是硬件描述語言的verilogHDL的簡介、基本語法介紹以及verilogHDL的編碼規(guī)范。
數(shù)字電路篇:無論是FPGA的哪個方向,都離不開數(shù)字邏輯知識的支撐。FPGA說白了是一種實現(xiàn)數(shù)字邏輯的方式而已。如果連最基本的數(shù)字邏輯的知識都有問題,學(xué)習(xí)FPGA的愿望只是空中樓閣而已。本篇主要介紹介紹組合邏輯電路,時序邏輯電路方面的基礎(chǔ)知識以及狀態(tài)機(jī)的設(shè)計,重新復(fù)習(xí)下數(shù)字電路相關(guān)知識。
FPGA硬件電路篇:介紹FPGA最小系統(tǒng)及外圍電路的設(shè)計,學(xué)習(xí)硬件電路方面的知識。
FPGA實例篇:FPGA的學(xué)習(xí)只有通過大量的操作與實踐才能很好并快速的掌握,實例篇以芯創(chuàng)電子的開發(fā)板為硬件開發(fā)平臺,對開發(fā)板上的每個外設(shè)編寫實例,為激起初學(xué)者學(xué)習(xí)FPGA的興趣,在實例篇中采用“授人以漁”的方式,努力做到不僅講述怎樣進(jìn)行試驗,而且分析為什么這樣做,重點(diǎn)介紹設(shè)計思路,以便初學(xué)者深刻理解并快速掌握FPGA的學(xué)習(xí)方法。在實例篇中會穿插介紹一些常用IP核,如PLL、單雙口ROM、RAM、同步FIFO和異步FIFO等IP核的使用。實例篇的最后是綜合實例,難度接近小的項目,筆者會從實際項目的流程進(jìn)行講解,讓初學(xué)者提前進(jìn)入項目實戰(zhàn)階段。
FPGA設(shè)計技巧篇:主要介紹FPGA設(shè)計的一些思想和原則,如串并轉(zhuǎn)換、乒乓操作、流水線、模塊劃分技巧以及同步電路設(shè)計等。
或許您可能聽說過FPGA,但不是很了解;或許您已經(jīng)知道FPGA的存在,但沒有掌握這門技術(shù);或許您打算在不久的將來對FPGA進(jìn)行初步嘗試;不管怎樣,只要您對FPGA感興趣,EEPW將帶領(lǐng)您一起踏出通往FPGA世界的第一步,輕松邁進(jìn)FPGA設(shè)計開發(fā)的大門。
FPGA技術(shù)是不斷發(fā)展變化的,要掌握FPGA技術(shù)的精髓,需要設(shè)計者在實踐中不懈地摸索與積累,逐步提高自己的設(shè)計水平,本實驗教程試圖對初學(xué)者起到快速入門的作用。
評論