其實(shí)學(xué)習FPGA與本科的知識并無(wú)太大的關(guān)聯(lián),數電的內容只在涉及到具體的芯片時(shí)才會(huì )用到。就我的學(xué)習感覺(jué),09年上半年看了4個(gè)月的書(shū),完全沒(méi)收獲,后來(lái)從6月開(kāi)始試著(zhù)編程,到現在基本沒(méi)問(wèn)題了。
學(xué)習FPGA,首先看看基礎知識,什么書(shū)并不重要,比如最重要的always,非阻塞賦值,case就夠了,其他的知識要點(diǎn)可以先不看,然后開(kāi)始試著(zhù)寫(xiě)小程序并編譯仿真,比如說(shuō)計數器,分頻器,串口通信,FIFO。由易到難,碰到error或者warning就翻書(shū)或者百度,只要開(kāi)始動(dòng)手,在經(jīng)歷最初的困惑后就是水到渠成了
要想學(xué)習FPGA,首先要有數字電路的基礎,要懂得最簡(jiǎn)單的門(mén)級電路和時(shí)序邏輯電路等等,教材可以使用清華大學(xué)出版社閻石主編的《數字電路基礎》,現在已經(jīng)是第五版了,很多高校通信類(lèi)專(zhuān)業(yè)都選擇這本書(shū)做教材。
有這樣的基礎至少可以保證你能夠用基本的電路搭建完成一些簡(jiǎn)單的電路設計。真正進(jìn)入FPGA的學(xué)習就不得不接觸到硬件描述語(yǔ)言了,時(shí)下主要的硬件描述語(yǔ)言有VHDL和Verilog HDL兩種,學(xué)習者對這兩種語(yǔ)言的評價(jià)也不一,這里我就不贅述了。
你可以參考網(wǎng)上的評論選擇適合自己的一種去學(xué)習。至于教材方面,Verilog目前夏宇聞的書(shū)最有名,北京航空航天大學(xué)的《Verilog數字系統設計教程》就不錯。
講VHDL的書(shū)有清華大學(xué)出版社出版的雷伏容的《VHDL電路設計》。另外,如果你有一定的C語(yǔ)言基礎的話(huà),也可以選擇nios進(jìn)行電路設計。
不過(guò),再利用該軟件之前要先學(xué)會(huì )QuartusⅡ的SOPC Builder去構建一個(gè)設計的硬件電路,因為一般初學(xué)者都是使用Altera公司的芯片,這是該公司提供的開(kāi)發(fā)套件,使用起來(lái)方便。這方面向你推薦北京航空航天大學(xué)出版社的《NiosⅡ嵌入式軟和 SOPC設計原理及應用》,這本書(shū)既介紹了SOPC的用法又講了nios的內容嗎,美中不足就是它書(shū)中使用的軟件版本比較早一些。
朋友,我和你一樣,也是對FPGA感興趣。我現在大四,也是從大三開(kāi)始接觸FPGA。以我個(gè)人的認識,我覺(jué)得學(xué)習FPGA最重要的是訓練自己硬件思維邏輯,因為FPGA是傳統軟件思維的顛覆,推薦學(xué)習Verilog,因為這個(gè)比較接近硬件層,但當你入門(mén)以后,VHDL也得學(xué)習,因為你要吸收別人的東西時(shí)別人若是用VHDL你就看不懂了。
基礎課程最重要的當然是數字電路,只有數電學(xué)得扎實(shí),看到HDL代碼你才能在頭腦中形成硬件邏輯,當然也要了解模擬電路,若你想把FPGA學(xué)得很好,模電也得學(xué)得相當好。
注意:學(xué)習FPGA是一定要理解什么是FPGA,硬件描述語(yǔ)言的功能到底是什么(建議你從原理圖輸入工具開(kāi)始著(zhù)手,當有一個(gè)概念認識后再學(xué)習HDL)。重點(diǎn)理解什么叫【綜合】,千萬(wàn)不要將HDL當成C或者其他編程語(yǔ)言看待,否則你會(huì )原地打轉始終得不到進(jìn)步。
還有,FPGA主要面對的是高端數字信號處理,因此建議你一定要把數學(xué)學(xué)好,包括:高數1、2,概率論,復變函數與積分變換。另一個(gè)重要工具就是英語(yǔ)了,FPGA在中國懂的人并不多,玩的非常精的人就更少了,不像單片機,arm那樣,網(wǎng)上一搜什么都有,這個(gè)很多東西得自己摸索,一重要資源就是官方pdf文檔,而這些對你的英語(yǔ)水平是個(gè)考驗。
最后,我們一起加油努力吧!呵呵
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:2.856秒