FPGA學習必備的基礎知識總結(jié)

2013-08-27 16:46 來源:電子信息網(wǎng) 作者:和靜

FPGA已成為現(xiàn)今的技術(shù)熱點之一,無論學生還是工程師都希望跨進FPGA的大門。網(wǎng)絡上各種開發(fā)板、培訓班更是多如牛毛,仿佛在告訴你不懂FPGA你就OUT啦。那么我們要玩轉(zhuǎn)FPGA必須具備哪些基礎知識呢?下面我們慢慢道來。

(一) 要了解什么是FPGA

既然要玩轉(zhuǎn)FPGA,那我們首先最重要的當然是要了解什么FPGA。FPGA(Field-Programmable Gate Array),即現(xiàn)場可編程門陣列??吹骄幊虄蓚€字碼農(nóng)就笑了,不就是編程嘛,那可是我們的強項。且慢,此編程非彼編程。一定要把FPGA的編程和軟件編程區(qū)分開來。軟件的編程,處理器會逐條的把語言翻譯成各種控制信號,去控制內(nèi)部電路完成一個個運算或操作。那么FPGA的編程是怎么實現(xiàn)的呢?無論Altera家還是Xlinix家的FPGA,叫法有什么差異,基本單元都相似,都是由真值表和D觸發(fā)器構(gòu)成。改變真值表的值就改變了邏輯功能,再通過和D觸發(fā)器組合來實現(xiàn)任何時序邏輯。所以我們對FPGA的編程,實際上就是去修改這些真值表和連接關(guān)系,使他們組成一張專門的真值表,去實現(xiàn)特定的功能。這和軟件編程一步步運行程序有本質(zhì)的區(qū)別。要想玩轉(zhuǎn)FPGA,就必須理解FPGA內(nèi)部的工作原理,學習如何利用這些單元實現(xiàn)復雜的邏輯設計。

(二) 正確理解HDL語言

HDL(Hardware Description Language),硬件描述語言。通過名稱我們能看出來,HDL語言是一種“描述”語言,這一點和C語言是有本質(zhì)區(qū)別的。正確理解描述的含義,對學好HDL語言很有幫助。HDL語言只是用文本的方式把硬件電路描述出來。我們在閱讀HDL程序的時候,在腦子里應該能反映出一個完整的硬件電路結(jié)構(gòu)。從另一方面說,我們在編寫HDL語言之前,就已經(jīng)對要實現(xiàn)的電路有清晰的概念。所以HDL語言只是一個描述我們頭腦中具體電路的工具,玩轉(zhuǎn)FPGA的根本不是語言而是邏輯電路設計。不要再糾結(jié)于我應該學習VHDL還是Verilog,那種語言更好學這些問題。如果把學習FPGA的重點放在學習語言上,死記硬背一些語法,那自然是抓錯了重點。語言在日常使用中會越用越熟練,不需要花很長的專門時間去學習。當然一本好的參考資料可以隨時方便查詢會是很有幫助的。

1 2 > 
FPGA

一周熱門