想要學(xué)好FPGA設(shè)計不是一件簡單的事情,但是技巧和方法到位了,這不是一件難事。明德?lián)P總結(jié)了要學(xué)好FPGA,學(xué)習(xí)EDA邏輯設(shè)計的4個步驟,請拍磚!
1、首先,應(yīng)該好好學(xué)習(xí)一下FPGA/CPLD的設(shè)計設(shè)計流程。
不要簡單的以為就是設(shè)計輸入-》仿真-》綜合-》實現(xiàn)那么一回事,要摳細,要學(xué)精,要多問每個步驟的注意事項,區(qū)分相關(guān)步驟的聯(lián)系和區(qū)別。比如要搞清楚功能仿真、綜合后仿真、Translate后仿真、Map后的仿真、布局布線后仿真的作用都是什么,什么時候應(yīng)該做,什么時候可以不做這些仿真!學(xué)習(xí)清楚了設(shè)計流程最大的好處就是有利于培養(yǎng)良好的EDA設(shè)計習(xí)慣,日后會受益非淺!
2、 關(guān)于設(shè)計輸入和Coding Style。
設(shè)計輸入最好學(xué)習(xí)HDL語言,Verilog、VHDL都可以,可以把狀態(tài)機輸入和原理圖輸入作為補充內(nèi)容,但不是重點。我在前面的帖子已經(jīng)反復(fù)強調(diào)了 Coding Style的重要性。因為它是邏輯設(shè)計人員的一個基本業(yè)務(wù)素質(zhì)。而且Coding Style不是看幾篇文章,學(xué)幾條原則就能夠成為高手的,他需要您在工作中不斷的體會和積累,在學(xué)習(xí)的最初,有Coding Style的意識,設(shè)計者就會有意的積累,對日后發(fā)展很有好處。反之則后患無窮。
3、培養(yǎng)硬件的意識,培養(yǎng)系統(tǒng)的觀念。
我也在交流和授課的時候很強調(diào)硬件意識,如果從形式上看,邏輯設(shè)計隨著智能化和優(yōu)化手段的不斷發(fā)展最后會越來越靈活,越來越簡單。比如我們現(xiàn)在在使用大型 FPGA時就很少談如何用Floorplanner優(yōu)化,手動布線,如果用手動方式,其工作量太大了啊!一個設(shè)計的優(yōu)劣,關(guān)鍵看其設(shè)計者的硬件意識,和系統(tǒng)意識。硬件意識就是要求先做到對設(shè)計的硬件胸有成竹,HDL代碼僅僅是一個表述心中硬件的工具。系統(tǒng)意識要求設(shè)計者有宏觀的觀念,對設(shè)計的全局有個合適的安排,比如時鐘域,模塊復(fù)用,約束,面積,速度等問題。要知道在系統(tǒng)上復(fù)用模塊節(jié)省的面積遠比在代碼上小打小鬧來的實惠得多。
4、最后才是工具軟件的使用。
現(xiàn)在EDA軟件都越來越友好,越來越“傻瓜化”,如果您費了1年還沒有基本摸清軟件的使用,我敢說,那是一個比較爛的軟件(起碼在用戶接口上),因為這是和EDA這種方式的理念背道而馳的。但是作為設(shè)計者,軟件是工具,應(yīng)該熟練掌握各個步驟不同方面的軟件,這樣才能最大程度地發(fā)揮您的聰明才智,才能使您如虎添翼!