小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

FPGA感悟

 jianxz 2013-11-23
自從接觸和認(rèn)識(shí)FPGA以后,自由電子科技堅(jiān)定的選擇了FPGA器件作為我們創(chuàng)新和實(shí)現(xiàn)自身價(jià)值的承載平臺(tái),對(duì)此,我想從以下幾個(gè)方面介紹一下。
1. 對(duì)FPGA的認(rèn)識(shí),為什么要選擇FPGA
    現(xiàn)在的FPGA器件在電子行業(yè)中是一顆明星,這是一種正在不斷采用新的半導(dǎo)體制造工藝,邏輯容量不斷增加,應(yīng)用領(lǐng)域不斷拓展,器件成本不斷下降的器件,F(xiàn)PGA廠商激烈的競(jìng)爭(zhēng)使開發(fā)軟件和方法不斷的進(jìn)步,是一個(gè)正在盤古開天時(shí)期的事物。很多人對(duì)此的解釋是FPGA擁有很大的靈活性,在半導(dǎo)體制造工藝的NRE不斷增加、應(yīng)用需求不斷變更、品種要求多而數(shù)量要求少的現(xiàn)實(shí)情況下,F(xiàn)PGA是一個(gè)最佳選擇,這正是現(xiàn)在FPGA廠商們宣傳時(shí)耳目能詳?shù)年愒~。我們認(rèn)為,F(xiàn)PGA在電子產(chǎn)業(yè)和信息產(chǎn)業(yè)上的地位并不是這么簡單。
    實(shí)際上如果通過我們對(duì)計(jì)算機(jī)發(fā)展的歷史、軟件發(fā)展歷史的認(rèn)識(shí),可以推斷FPGA器件是一方向性的創(chuàng)新,幾千年以前我國的祖先們感悟了蘊(yùn)涵在簡單的陰、陽中的事理有了太極,陰陽可以生萬物。一百多年前的布爾代數(shù)使我們從數(shù)學(xué)上有了堅(jiān)實(shí)的基礎(chǔ),從機(jī)械計(jì)算機(jī)到電子計(jì)算機(jī)的演變中,我們得到了馮.諾依曼型的程序存儲(chǔ)類的計(jì)算機(jī)體系,并在當(dāng)代發(fā)展為及至,極大的推動(dòng)了人類社會(huì)的前進(jìn)。馮.諾依曼計(jì)算機(jī)體系是在CPU硬件的基礎(chǔ)上加上千變?nèi)f化的軟件,軟件的靈活性使計(jì)算機(jī)滲透到各行各業(yè),在20世紀(jì)后半頁演繹了氣勢(shì)恢弘的發(fā)展過程,造就了象比爾.蓋茨那樣的天才和巨富。但我們要認(rèn)識(shí)到在這個(gè)體系中,由一部分人從事低層硬件,CPU架構(gòu)體系的設(shè)計(jì),大部分應(yīng)用工程師在相對(duì)固定的硬件系統(tǒng)上從事開發(fā),這種模式在現(xiàn)在依然擁有無與倫比的活力和現(xiàn)實(shí)作用,在這里我提醒一點(diǎn),在這個(gè)體系中,對(duì)大部分工程師來說,一半固定,硬件CPU是不可編程的,另一半靈活是可編程的(軟件),很自然我們會(huì)想聯(lián)想到如果兩個(gè)部分都是可編程的那會(huì)是怎么一種情況呢?很好,現(xiàn)在有一種器件來了,這就是FPGA,它代表的就是硬件的編程。這兩部分都可編程的一個(gè)結(jié)合點(diǎn)就是FPGA上的軟核,在Altera提供的開發(fā)環(huán)境中提供的SOPC環(huán)境就是如此,你可以象以往一樣在生成硬件架構(gòu)以后進(jìn)行軟件開發(fā)。但令人矚目的是它可以隨心所欲的定制外設(shè),外設(shè)不再固定,更進(jìn)一步它還支持增加自定義指令,從而改變CPU,在軟件上可以用C2H把原來屬于軟件運(yùn)行的指令變換成RTL邏輯來完成,極大的提高了效率,在這里要提醒的是,這樣的事物才剛剛開始,是長江源頭佗佗河上那不起眼的涓涓溪流,它正在發(fā)展,正在完善,從歷史的眼光看,我們要有足夠的耐心。
    以上的文字就象是傳教詞一樣令人心醉,這些還是從比較現(xiàn)實(shí)角度看待FPGA這個(gè)事物的,在比較長時(shí)期的學(xué)習(xí)和思考過程中,我還領(lǐng)悟到更深一個(gè)層次的含義,在說這個(gè)之前,容我介紹一種類型的應(yīng)用,我們知道RAM型FPGA在不上電的時(shí)候,是一個(gè)半定制的ASIC,擁有基礎(chǔ)的邏輯,而不擁有功能性邏輯,所有功能性邏輯是通過上電配置以后完成的,已經(jīng)有工程師在設(shè)計(jì)產(chǎn)品的時(shí)候使用了這樣的方案:把各種不同的電路功能編譯成不同的配置文件,根據(jù)需要通過外部單片機(jī)把合適的應(yīng)用bit流寫入到FPGA內(nèi),從而完成根據(jù)功能需要變更硬件,這個(gè)需求很好理解吧。在軟件領(lǐng)域可重構(gòu)這個(gè)詞出現(xiàn)的概率是非常多的,軟件的發(fā)展也是往這個(gè)方向前進(jìn),c++,java支持下的接口、模板、對(duì)象重載等等,再到組件、COM,無一不用可重構(gòu)這個(gè)概念。在FPGA領(lǐng)域,現(xiàn)在絕大部分器件只支持整體配置,也就是整體重構(gòu),如果能支持局部電路重構(gòu),那么上面我們敘述的應(yīng)用就能夠很自然的實(shí)現(xiàn),而且切換速度會(huì)很快,實(shí)際上我們需要的是在接口不變的情況下切換速度要非???,快的讓邏輯自身也不知道底層硬件已經(jīng)重構(gòu),就象沒有變化一樣。為什么我們這么重視電路可重構(gòu)呢?一個(gè)原因是我們?cè)谲浖l(fā)展的里程上看到的,我們可以在接口的支持下以相同的程序支持很大一類的應(yīng)用。另一個(gè)原因我認(rèn)為:人類信息科技發(fā)展的一個(gè)必然趨勢(shì)。為什么這么說呢?需要從我們?nèi)吮旧砩砩险J(rèn)識(shí)開始,我們?nèi)祟惖拇竽X是億萬年來自然選擇的結(jié)果,是宇宙中最精致的事物之一,是物質(zhì)運(yùn)動(dòng)的最高形式(這有些象哲學(xué)家的說辭了),我們的大腦能形成條件反射,一個(gè)多次重復(fù)的思考過程,最后就形成的直接的通路,這種變化能讓我們以最快的速度去適應(yīng)和處理信息,我們對(duì)計(jì)算機(jī)的要求不也是這樣嘛,可是,我們現(xiàn)在的計(jì)算機(jī)對(duì)多次重復(fù)的處理,能形成直接的通路嗎?不能,一個(gè)計(jì)算,再怎么重復(fù)和有規(guī)律,現(xiàn)在的計(jì)算機(jī)只要程序不變,它永遠(yuǎn)重復(fù),這就是人類能有直覺,而計(jì)算機(jī)不能的一個(gè)原因吧。說到這里,基于LUT查找表的FPGA倒是有些這個(gè)思想的雛形,對(duì)于一些邏輯計(jì)算,我們通過EDA軟件的計(jì)算和優(yōu)化,把輸入和結(jié)果直接下載到LUT的RAM中,省略了電路邏輯處理過程,這也算是一個(gè)直接通路吧。我們要使計(jì)算機(jī)的能力越來越強(qiáng),現(xiàn)在的一個(gè)方法是提高頻率,這個(gè)方法很直接,可是現(xiàn)在材料和工藝在功率問題上的制肘已經(jīng)使這個(gè)方法走到盡頭了(熱衷于提高頻率的Intel不是也放棄了這個(gè)方法了嘛),于是新的方法是并行,用多核,Intel和Amd現(xiàn)在都在這個(gè)陣地上拼搶,說到并行,實(shí)際上fpga是一個(gè)很好并行處理平臺(tái),只要邏輯資源允許,它內(nèi)部也可以構(gòu)建n處理模塊,n個(gè)軟核cpu。這些方法中前一個(gè)方法是靠工藝取勝,后一個(gè)方法是靠體系取勝,體系取勝是最終的辦法。人類大腦中的蛋白運(yùn)算并沒有如此高的頻率,神經(jīng)傳導(dǎo)速度也比不上電路和光纖,但它的處理能力、容量和適應(yīng)能力是驚人的。選擇FPGA的一個(gè)直接原因是它的并行和靈活,但我認(rèn)為更重要的應(yīng)該是它的可重構(gòu)上,特別是局部單元電路可重構(gòu)的FPGA更能夠做到象人類大腦中信息處理機(jī)制一樣,也就是信息處理的過程中根據(jù)需要能夠改變物理聯(lián)系通道(即底層硬件電路),局部單元可重構(gòu)的FPGA能帶來體系結(jié)構(gòu)上和實(shí)現(xiàn)算法上的革_命性創(chuàng)新。這樣的FPGA和相應(yīng)的算法會(huì)在體系結(jié)構(gòu)上取勝,能夠在不遠(yuǎn)的將來構(gòu)建軟硬件更加協(xié)同的應(yīng)用方案。這種類型的FPGA器件(或以其他名字命名的器件)必然會(huì)出現(xiàn)。
     數(shù)字信號(hào)處理應(yīng)用是目前科技創(chuàng)新的一個(gè)前沿陣地,現(xiàn)在FPGA以其并行性和高DSP處理性能進(jìn)入到信號(hào)處理領(lǐng)域。現(xiàn)代數(shù)字信號(hào)處理中,以往很多時(shí)候我們選擇的都是帶數(shù)字信號(hào)處理優(yōu)化指令的CPU,象TI和ADI公司就擁有很多DSP芯片,在這些DSP芯片上實(shí)現(xiàn)算法處理,一般用C描述算法(關(guān)鍵處理用匯編),編譯以后以機(jī)器指令的方式在DSP芯片上運(yùn)行,在一個(gè)芯片上這樣DSP處理單元是不多的,需要軟件做不斷重復(fù)的疊代運(yùn)算從而高效利用這些DSP指令單元,重復(fù)的指令執(zhí)行過程影響了DSP處理能力的提升,實(shí)際上一些DSP芯片集成了ARM處理器、DSP硬件運(yùn)算加速器以后在性能上覆蓋了大部分應(yīng)用,在高端DSP處理領(lǐng)域FPGA的并行優(yōu)勢(shì)得到很好的體現(xiàn),特別是FPGA在邏輯、DSP處理塊、片上RAM規(guī)模越來越大的情況下,這個(gè)優(yōu)勢(shì)會(huì)更多展現(xiàn)出來。我們知道不管用什么途徑實(shí)現(xiàn),在現(xiàn)代計(jì)算機(jī)中的任務(wù)或算法實(shí)現(xiàn)最終都要在嚴(yán)格的時(shí)序狀態(tài)機(jī)中完成,現(xiàn)代軟件開發(fā)語言都是接近人類語言的方式描述處理過程,盡管有一定的節(jié)拍和步驟,但主要描述的是一個(gè)過程,而非嚴(yán)格按時(shí)鐘節(jié)拍的處理過程,語言編譯軟件生成的指令和CPU硬件(或DSP處理器)已經(jīng)為我們完成了這個(gè)從語言算法描述空間到硬件狀態(tài)機(jī)處理空間的轉(zhuǎn)換。FPGA DSP應(yīng)用開發(fā)方面,盡管擁有性能優(yōu)勢(shì),但如果用HDL語言去開發(fā)DSP顯的很局促,因?yàn)槲覀儾荒芡瑫r(shí)考慮算法的實(shí)現(xiàn),又同時(shí)滿足嚴(yán)格的狀態(tài)機(jī)時(shí)序,所以用HDL直接寫DSP處理模塊這種開發(fā)模式不容易被廣大的工程師接受,這就象CPU開發(fā)出來以后,用機(jī)器碼或匯編去開發(fā)應(yīng)用一樣,計(jì)算機(jī)和軟件發(fā)展的歷史使大家可以相信,這個(gè)過程會(huì)很短暫,很快會(huì)有合適的開發(fā)工具來彌補(bǔ)這個(gè)空擋,目前math works公司的MatLab開發(fā)工具就是一個(gè)很好選擇,擁有算法仿真到RTL CORE GENERATE,使得FPGA的DSP應(yīng)用開發(fā)流程得以完整的實(shí)現(xiàn),各個(gè)FPGA廠商也提供了各自的MatLab simulink下的工具套件,比如Altea的DSP Builder,xilinx的core generate和Xilinx AccelDSP,這些軟件完成了算法描述到硬件狀態(tài)邏輯處理機(jī)的轉(zhuǎn)換。這種開發(fā)方式現(xiàn)在還處于初始階段,軟件工具、開發(fā)習(xí)慣等都需要我們有一個(gè)學(xué)習(xí)積累過程。
    現(xiàn)在越來越多的模塊被集成到FPGA芯片上,微處理器、高速收發(fā)器、以太網(wǎng)控制器、PCIE端點(diǎn)控制器、DSP處理單元、片內(nèi)RAM等等,F(xiàn)PGA不再是一個(gè)單純的編程邏輯器件,而是一個(gè)彈性很好的系統(tǒng)集成的平臺(tái),走出了IC原型驗(yàn)證的范疇。是一個(gè)很現(xiàn)實(shí)并且有前途的選擇。
2. 學(xué)習(xí)和進(jìn)階
    FPGA在電子開發(fā)工作中已經(jīng)上升到數(shù)字系統(tǒng)核心處理器,盡快掌握FPGA開發(fā)技術(shù)顯得非常迫切。我們來自五湖四海,為著一個(gè)共同的目標(biāo)走到一起來了,我們中間可能有學(xué)生,學(xué)好一門技術(shù)追求好的發(fā)展,也可能已經(jīng)是工程師,要尋求好的解決方案。
FPGA開發(fā)對(duì)學(xué)習(xí)者的要求相對(duì)是比較高的,我們上一節(jié)所說的,F(xiàn)PGA是一個(gè)可以實(shí)現(xiàn)軟硬件協(xié)同設(shè)計(jì)的平臺(tái),即需要硬件也需要軟件,而且軟件開發(fā)也比較多,不同F(xiàn)PGA提供商提供各自的開發(fā)環(huán)境,還有第三方的軟件工具。我們可以按下面的幾個(gè)方面開始 HDL語言的學(xué)習(xí)VHDL和Verilog HDL都可以,HDL語言是FPGA開發(fā)的基礎(chǔ),先掌握一門,以后根據(jù)需要去理解掌握另一門會(huì)比較方便,兩門都會(huì)是最好的,因?yàn)樘峁┯嘘P(guān)代碼資源的可能是你不熟悉的HDL,有時(shí)我們還需要把這個(gè)語言實(shí)現(xiàn)的翻譯成另一個(gè)語言,以便在開發(fā)環(huán)境上統(tǒng)一實(shí)現(xiàn)。如果你有C語言基礎(chǔ),推薦學(xué)Verilog HDL,因?yàn)檎Z法上類似,需要注意的點(diǎn)是
a、Verilog是描述,而不是運(yùn)行代碼。代碼綜合以后是邏輯網(wǎng)表,而不是指令,所以需要注意我們寫的代碼是否正確描述了需要實(shí)現(xiàn)的邏輯電路。
b、除了邏輯功能,還要把描述中的時(shí)序給看出來,一開始的時(shí)候,可以根據(jù)代碼嘗試著把波形畫出來,盡管仿真軟件也能做到這個(gè),還是建議自己畫以加強(qiáng)對(duì)語言的理解,可以用仿真軟件來驗(yàn)證你畫的波形
c、注意區(qū)分哪些是可綜合的,哪些是不可綜合的代碼,這個(gè)對(duì)出學(xué)Verilog的人會(huì)比較困惑,因?yàn)镃只要語法正確,可以編譯就能運(yùn)行,而Verilog一些代碼只能在仿真環(huán)境中用,不能綜合成實(shí)際的電路
d、要多關(guān)注描述代碼綜合后的電路,不能象C語言那樣寫好了就行,Verilog寫好代碼只能算做了一半工作,還要做仿真,如果時(shí)序不滿足還可能調(diào)整程序代碼。
e、多寫多試,這個(gè)方法對(duì)學(xué)習(xí)任何事物都一樣,如果有環(huán)境,即使沒有老師指導(dǎo)照樣可以試出來。
f、多看代碼,特別是原廠提供的代碼,這些代碼應(yīng)該代表了比較高的FPGA設(shè)計(jì)水平,從中我們可以學(xué)習(xí)兩個(gè)方面的知識(shí):一是相對(duì)比較大規(guī)模的邏輯設(shè)計(jì)如何組織模塊結(jié)構(gòu),二是局部應(yīng)用處理,可以照搬,作為我們開發(fā)時(shí)的模板。熟讀唐詩三百首,不會(huì)作詩也會(huì)吟,看多了,就會(huì)習(xí)慣的學(xué)會(huì)他們的開發(fā)模式,我有這樣的體會(huì),看多了,很多東西思想上已經(jīng)把它當(dāng)作是自己的理所當(dāng)然的東西了,實(shí)際一做,手生的很,遇到很多問題,解決這些問題,這個(gè)過程就通過了,學(xué)習(xí)就需要這么個(gè)過程
                                      Modelsim仿真環(huán)境的使用?
    學(xué)習(xí)HDL需要有一個(gè)編譯、驗(yàn)證環(huán)境,首推的就是Modelsim,Modelsim在各家FPGA廠商的開發(fā)工具中都提供內(nèi)置或外掛,這種共性的工具自然是越多越好。有很多數(shù)據(jù)介紹Modelsim的使用,網(wǎng)上有很多介紹資料,在此不在贅述。
                                 選擇合適的開發(fā)板,熟悉一種器件?
    一款合適的開發(fā)板是學(xué)習(xí)進(jìn)步的捷徑。現(xiàn)在原廠和國內(nèi)很多公司都提供FPGA學(xué)習(xí)開發(fā)板,可以根據(jù)需要選購。在使用開發(fā)板前可以先看安裝使用說明,明確開發(fā)選用的芯片型號(hào),以及外圍配置,然后根據(jù)芯片型號(hào)去相關(guān)廠商公司下載該芯片的數(shù)據(jù)手冊(cè),詳細(xì)閱讀一遍很有好處,現(xiàn)在FPGA芯片更新?lián)Q代比較快,一般2~3年就換一代,所以要適應(yīng)英文資料的閱讀,而且大量應(yīng)用文檔也是以英文形式提供的。
                                  FPGA廠商主要開發(fā)軟件工具的使用?
    目前主要的FPGA廠商有Altera、xilinx、lattice都提供的了各自的FPGA開發(fā)環(huán)境,分別是:Altera的Quartus II,Xilinx的ISE,Lattice的ispLever。我們可以選擇先熟悉一家公司的環(huán)境(或者根據(jù)開發(fā)板的具體芯片選擇廠商環(huán)境),以后根據(jù)器件選擇需要,再去熟悉其他的環(huán)境,學(xué)習(xí)周期就可以短了。通用的步驟是:建立項(xiàng)目,設(shè)計(jì)輸入(代碼或原理圖),功能仿真,引腳鎖定和相關(guān)時(shí)鐘約束,綜合,功能仿真,影射、布局、布線,時(shí)序仿真等等。這個(gè)過程需要一段時(shí)間去熟悉。
如果你是單片機(jī)系統(tǒng)轉(zhuǎn)過來學(xué)習(xí)軟核系統(tǒng)的開發(fā),也需要掌握這些工具,同時(shí)掌握廠商提供的系統(tǒng)集成工具和軟件開發(fā)工具,Altera提供的集成環(huán)境是SOPC Builder,軟件開發(fā)環(huán)境是NIOS II IDE。Xilinx提供的集成環(huán)境是Xilinx Platform Studio,軟件開發(fā)環(huán)境是:Xilinx Platform Studio SDK。
                                   分析和實(shí)現(xiàn)參考設(shè)計(jì)?
    一般開發(fā)環(huán)境會(huì)自帶example目錄,這些都是典型的開發(fā)范例,強(qiáng)烈建議分析這些范例,并在自己的開發(fā)板環(huán)境中實(shí)現(xiàn),這個(gè)過程可能需要我們修改一些設(shè)置和環(huán)境,比較硬件的不同,但這是一個(gè)很好的鍛煉機(jī)會(huì)。另外開發(fā)板也會(huì)隨板提供開發(fā)范例,分析這些范例,并常試修改他們也是很好的機(jī)會(huì)。遇到問題是很正常的,我們的進(jìn)步就是建立在遇到問題并解決問題基礎(chǔ)上的。
                                  設(shè)計(jì)實(shí)現(xiàn)自己的應(yīng)用系統(tǒng)
    要明白一點(diǎn),設(shè)計(jì)開發(fā)一個(gè)環(huán)境比使用一個(gè)環(huán)境要求要高很多,就象會(huì)使用計(jì)算機(jī)和會(huì)設(shè)計(jì)制造計(jì)算機(jī)一樣的差別。特別是自己去設(shè)計(jì)一個(gè)系統(tǒng)的時(shí)候,建議學(xué)習(xí)者設(shè)計(jì)一個(gè)自己的系統(tǒng),不論系統(tǒng)的大小。這樣會(huì)遇到方方面面的需要考慮的問題,能夠把上述學(xué)習(xí)的知識(shí)做一個(gè)考核,順利通過后就會(huì)在知識(shí)和能力上得到及大的提升,特別是在開發(fā)信心上得到強(qiáng)化。建議把遇到或想到的問題都羅列記錄在筆記本上,并嘗試逐個(gè)排查解決,這個(gè)過程中我們可能需要閱讀很多原廠提供的文檔,或者網(wǎng)上搜索到的資料,把每一個(gè)疑問逐一解決,做到?jīng)]有疑問,這樣我們?cè)O(shè)計(jì)的系統(tǒng)就會(huì)順利達(dá)到目標(biāo)。
前不久我就實(shí)際體會(huì)了這個(gè)過程,我們以前都是使用Altera的FPGA器件,熟悉他們的工具也熟悉他們的器件,但客戶需要我們開發(fā)Virtext 5 PCIE系統(tǒng),我們從4月份開始著手,到8月份完成樣板,用了4個(gè)月,熟悉開發(fā)環(huán)境,并閱讀了所有Virtex5的文檔,很多測(cè)試代碼,實(shí)際上在設(shè)計(jì)過程中已經(jīng)寫了并在ISE環(huán)境下編譯,因?yàn)镕PGA設(shè)計(jì)很重要的一點(diǎn)是規(guī)劃pin和邏輯功能塊在FPGA內(nèi)的分配,所以需要在原理圖設(shè)計(jì)過程中就做FPGA項(xiàng)目并在ISE軟件中編譯檢查和驗(yàn)證,這樣在PCB設(shè)計(jì)時(shí)原理圖基本是可行的,同時(shí)在PCB設(shè)計(jì)中做好板級(jí)仿真,這樣能減少了樣板的反復(fù)修改,我們這樣努力的結(jié)果是:一次投板成功。良好的開始是成功的一半,特別要在第一塊板的設(shè)計(jì)制作過程中用盡心計(jì),保證成功,確保我們開發(fā)工作的信心。
                              開卷有益,勤于實(shí)踐,持續(xù)提高設(shè)計(jì)能力?
    FPGA芯片技術(shù)和開發(fā)技術(shù)發(fā)展很快,學(xué)習(xí)任務(wù)重,另外羅馬不是一天建成的,需要我們?cè)诠ぷ髦胁粩嗟姆e累。FPGA設(shè)計(jì)有點(diǎn)象圍棋:易學(xué)難精。需要我們不斷拓寬知識(shí)面,不厭其繁的去嘗試,仔細(xì)去看編譯綜合報(bào)告,時(shí)序分析報(bào)告,并去嘗試提升性能,從底層更深入的去理解硬件電路的設(shè)計(jì),改進(jìn)、嘗試性能的提高。
    很多單位有非常好的高級(jí)FPGA培訓(xùn),這是個(gè)很好機(jī)會(huì),可以和高手切磋技藝,咨詢開發(fā)中遇到的問題和解決辦法,這個(gè)很令人期待。但很多人可能象我所處的環(huán)境一樣沒有提供這樣機(jī)會(huì),我建議是開卷有益,多看書,現(xiàn)在FPGA方面的新書出來的比較多,一些開發(fā)高手,或多或少的在他們的介紹中提供了提高的途徑,我都會(huì)仔細(xì)的閱讀。另外網(wǎng)上有很多各個(gè)專題的文檔也是很好的閱讀對(duì)象。
帶著問題學(xué)習(xí)是最有效率的,如果一些問題捆繞著我們,我們就會(huì)對(duì)這些問題的解決很關(guān)注,很多時(shí)候,不經(jīng)意之間,我們所需要的信息來了:別人的一句話,資料上的一句提示,或者其他人開發(fā)的代碼中等等,都會(huì)是我們提高的途徑。
就象大型數(shù)據(jù)庫性能調(diào)整一樣,時(shí)序性能的調(diào)整提高是FPGA開發(fā)能力的標(biāo)志,各個(gè)FPGA廠商都會(huì)提供很多解決方法,學(xué)習(xí)者要注意去逐步的學(xué)習(xí)使用這些方法。
    只要不斷的努力,一定可以持續(xù)提高我們的FPGA設(shè)計(jì)能力。
3. 目前的開發(fā)方法應(yīng)用介紹
    目前,在FPGA上有三種類型開發(fā)方法和應(yīng)用方向:a、邏輯類應(yīng)用 b、軟核類應(yīng)用 c、DSP類應(yīng)用。
邏輯類應(yīng)用我們接觸的最早,也是FPGA最初的應(yīng)用領(lǐng)域,大的應(yīng)用上,一些數(shù)字IC設(shè)計(jì)可以在FPGA做前期的功能驗(yàn)證,在通信領(lǐng)域,F(xiàn)PGA做信號(hào)的編解碼等等,小的應(yīng)用上我們做的最多的實(shí)際是CPLD,完成信號(hào)的變換控制等等。
軟核應(yīng)用是前幾年才興起,現(xiàn)在熱門的開發(fā)應(yīng)用方法,在原本需要FPGA結(jié)合CPU的地方有成本和靈活性優(yōu)勢(shì)。
FPGA的DSP應(yīng)用是非常有潛力的,性能優(yōu)勢(shì)非常明顯。開發(fā)方法是用Matlab的simulink中嵌入廠商的開發(fā)工具包,算法驗(yàn)證在Matlab simulink工具下完成,在開發(fā)工具包的支持下生成HDL模塊或者直接生成FPGA下載配置文件,這個(gè)方向是FPGA應(yīng)用最有挑戰(zhàn)能力領(lǐng)域。Mathworks公司不久前也推出了獨(dú)立于FPGA廠商的Simulink HDL Coder工具,使的Matlab在數(shù)字系統(tǒng)設(shè)計(jì)領(lǐng)域邁出了堅(jiān)實(shí)的一步,把Simulink 模型和Stateflow框圖生成位真(Bit-Ture)、周期精確(Cycle-Accurate)、可綜合的Verilog和VHDL代碼,為Matlab simulink用戶提供了通往FPGA設(shè)計(jì)實(shí)現(xiàn)的直接通道。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多