FPGA學(xué)習(xí)、發(fā)展方向_第1頁(yè)
FPGA學(xué)習(xí)、發(fā)展方向_第2頁(yè)
FPGA學(xué)習(xí)、發(fā)展方向_第3頁(yè)
FPGA學(xué)習(xí)、發(fā)展方向_第4頁(yè)
FPGA學(xué)習(xí)、發(fā)展方向_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

FPGA的學(xué)習(xí)流程FPGA作為一個(gè)技術(shù)含量高的器件,讓許多學(xué)單片機(jī)的人望而生畏,也有許多的初學(xué)者很關(guān)心FPGA到底該怎樣來(lái)學(xué),下面發(fā)表一下本人的淺見(jiàn),不對(duì)的地方還請(qǐng)各位大俠指點(diǎn)指點(diǎn).我認(rèn)為學(xué)習(xí)FPGA可分為以下三個(gè)步驟:第一步:學(xué)好硬件描述語(yǔ)言。以夏宇聞那本書(shū)為教材,一般都要2到3個(gè)星期,有C語(yǔ)言基礎(chǔ)入門(mén)更快,還要做一些練習(xí),鞏固語(yǔ)法。第二步:針對(duì)一款硬件來(lái)學(xué)習(xí),這一步非常重要,一般需要1~3個(gè)月,這個(gè)過(guò)程遇到的問(wèn)題往往是最多的,因此要有恒心與耐力,遇到問(wèn)題可以找老師或者上論壇求教.第三步:融會(huì)貫通。有了以上的基礎(chǔ),這時(shí)候就要看一個(gè)人的知識(shí)背景了,把你的專(zhuān)業(yè)與FPGA相結(jié)合,如果你數(shù)學(xué)比較好,就可以去做算法如果你通信方面比較好,就可以做通信方面的東西,如果你高頻比較好,就可以做射頻方面的東西,等等。FPGA學(xué)習(xí)、發(fā)展方向自從接觸和認(rèn)識(shí)FPGA以后,自由電子科技堅(jiān)定的選擇了FPGA器件作為我們創(chuàng)新和實(shí)現(xiàn)自身價(jià)值的承載平臺(tái),對(duì)此,我想從以下幾個(gè)方面介紹一下。對(duì)FPGA的認(rèn)識(shí),為什么要選擇FPGA現(xiàn)在的FPGA器件在電子行業(yè)中是一顆明星,這是一種正在不斷采用新的半導(dǎo)體制造工藝,邏輯容量不斷增加,應(yīng)用領(lǐng)域不斷拓展,器件成本不斷下降的器件,F(xiàn)PGA廠商激烈的競(jìng)爭(zhēng)使開(kāi)發(fā)軟件和方法不斷的進(jìn)步,是一個(gè)正在盤(pán)古開(kāi)天時(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è)上的地位并不是這么簡(jiǎn)單。實(shí)際上如果通過(guò)我們對(duì)計(jì)算機(jī)發(fā)展的歷史、軟件發(fā)展歷史的認(rèn)識(shí),可以推斷FPGA器件是一方向性的創(chuàng)新,幾千年以前我國(guó)的祖先們感悟了蘊(yùn)涵在簡(jiǎn)單的陰、陽(yáng)中的事理有了太極,陰陽(yáng)可以生萬(wàn)物。一百多年前的布爾代數(shù)使我們從數(shù)學(xué)上有了堅(jiān)實(shí)的基礎(chǔ),從機(jī)械計(jì)算機(jī)到電子計(jì)算機(jī)的演變中,我們得到了馮.諾依曼型的程序存儲(chǔ)類(lèi)的計(jì)算機(jī)體系,并在當(dāng)代發(fā)展為及全,極大的推動(dòng)了人類(lèi)社會(huì)的前進(jìn)。馮.諾依曼計(jì)算機(jī)體系是在CPU硬件的基礎(chǔ)上加上千變?nèi)f化的軟件,軟件的靈活性使計(jì)算機(jī)滲透到各行各業(yè),在20世紀(jì)后半頁(yè)演繹了氣勢(shì)恢弘的發(fā)展過(guò)程,造就了象比爾.蓋茨那樣的天才和巨富。但我們要認(rèn)識(shí)到在這個(gè)體系中,由一部分人從事低層硬件,CPU架構(gòu)體系的設(shè)計(jì),大部分應(yīng)用工程師在相對(duì)固定的硬件系統(tǒng)上從事開(kāi)發(fā),這種模式在現(xiàn)在依然擁有無(wú)與倫比的活力和現(xiàn)實(shí)作用,在這里我提醒一點(diǎn),在這個(gè)體系中,對(duì)大部分工程師來(lái)說(shuō),一半固定,硬件CPU是不可編程的,另一半靈活是可編程的(軟件),很自然我們會(huì)想聯(lián)想到如果兩個(gè)部分都是可編程的那會(huì)是怎么一種情況呢?很好,現(xiàn)在有一種器件來(lái)了,這就是FPGA,它代表的就是硬件的編程。這兩部分都可編程的一個(gè)結(jié)合點(diǎn)就是FPGA上的軟核,在Altera提供的開(kāi)發(fā)環(huán)境中提供的SOPC環(huán)境就是如此,你可以象以往一樣在生成硬件架構(gòu)以后進(jìn)行軟件開(kāi)發(fā)。但令人矚目的是它可以隨心所欲的定制外設(shè),外設(shè)不再固定,更進(jìn)一步它還支持增加自定義指令,從而改變CPU,在軟件上可以用C2H把原來(lái)屬于軟件運(yùn)行的指令變換成RTL邏輯來(lái)完成,極大的提高了效率,在這里要提醒的是,這樣的事物才剛剛開(kāi)始,是長(zhǎng)江源頭佗佗河上那不起眼的涓涓溪流,它正在發(fā)展,正在完善,從歷史的眼光看,我們要有足夠的耐心。以上的文字就象是傳教詞一樣令人心醉,這些還是從比較現(xiàn)實(shí)角度看待FPGA這個(gè)事物的,在比較長(zhǎng)時(shí)期的學(xué)習(xí)和思考過(guò)程中,我還領(lǐng)悟到更深一個(gè)層次的含義,在說(shuō)這個(gè)之前,容我介紹一種類(lèi)型的應(yīng)用,我們知道RAM型FPGA在不上電的時(shí)候,是一個(gè)半定制的ASIC,擁有基礎(chǔ)的邏輯,而不擁有功能性邏輯,所有功能性邏輯是通過(guò)上電配置以后完成的,已經(jīng)有工程師在設(shè)計(jì)產(chǎn)品的時(shí)候使用了這樣的方案:把各種不同的電路功能編譯成不同的配置文件,根據(jù)需要通過(guò)外部單片機(jī)把合適的應(yīng)用bit流寫(xiě)入到FPGA內(nèi),從而完成根據(jù)功能需要變更硬件,這個(gè)需求很好理解吧。在軟件領(lǐng)域可重構(gòu)這個(gè)詞出現(xiàn)的概率是非常多的,軟件的發(fā)展也是往這個(gè)方向前進(jìn),c++,java支持下的接口、模板、對(duì)象重載等等,再到組件、COM,無(wú)一不用可重構(gòu)這個(gè)概念。在FPGA領(lǐng)域,現(xiàn)在絕大部分器件只支持整體配置,也就是整體重構(gòu),如果能支持局部電路重構(gòu),那么上面我們敘述的應(yīng)用就能夠很自然的實(shí)現(xiàn),而且切換速度會(huì)很快,實(shí)際上我們需要的是在接口不變的情況下切換速度要非???,快的讓邏輯自身也不知道底層硬件已經(jīng)重構(gòu),就象沒(méi)有變化一樣。為什么我們這么重視電路可重構(gòu)呢?一個(gè)原因是我們?cè)谲浖l(fā)展的里程上看到的,我們可以在接口的支持下以相同的程序支持很大一類(lèi)的應(yīng)用。另一個(gè)原因我認(rèn)為:人類(lèi)信息科技發(fā)展的一個(gè)必然趨勢(shì)。為什么這么說(shuō)呢?需要從我們?nèi)吮旧砩砩险J(rèn)識(shí)開(kāi)始,我們?nèi)祟?lèi)的大腦是億萬(wàn)年來(lái)自然選擇的結(jié)果,是宇宙中最精致的事物之一,是物質(zhì)運(yùn)動(dòng)的最高形式(這有些象哲學(xué)家的說(shuō)辭了),我們的大腦能形成條件反射,一個(gè)多次重復(fù)的思考過(guò)程,最后就形成的直接的通路,這種變化能讓我們以最快的速度去適應(yīng)和處理信息,我們對(duì)計(jì)算機(jī)的要求不也是這樣嘛,可是,我們現(xiàn)在的計(jì)算機(jī)對(duì)多次重復(fù)的處理,能形成直接的通路嗎?不能,一個(gè)計(jì)算,再怎么重復(fù)和有規(guī)律,現(xiàn)在的計(jì)算機(jī)只要程序不變,它永遠(yuǎn)重復(fù),這就是人類(lèi)能有直覺(jué),而計(jì)算機(jī)不能的一個(gè)原因吧。說(shuō)到這里,基于LUT查找表的FPGA倒是有些這個(gè)思想的雛形,對(duì)于一些邏輯計(jì)算,我們通過(guò)EDA軟件的計(jì)算和優(yōu)化,把輸入和結(jié)果直接下載到LUT的RAM中,省略了電路邏輯處理過(guò)程,這也算是一個(gè)直接通路吧。我們要使計(jì)算機(jī)的能力越來(lái)越強(qiáng),現(xiàn)在的一個(gè)方法是提高頻率,這個(gè)方法很直接,可是現(xiàn)在材料和工藝在功率問(wèn)題上的制肘已經(jīng)使這個(gè)方法走到盡頭了(熱衷于提高頻率的Intel不是也放棄了這個(gè)方法了嘛),于是新的方法是并行,用多核,Intel和Amd現(xiàn)在都在這個(gè)陣地上拼搶?zhuān)f(shuō)到并行,實(shí)際上fpga是一個(gè)很好并行處理平臺(tái),只要邏輯資源允許,它內(nèi)部也可以構(gòu)建n處理模塊,n個(gè)軟核cpu。這些方法中前一個(gè)方法是靠工藝取勝,后一個(gè)方法是靠體系取勝,體系取勝是最終的辦法。人類(lèi)大腦中的蛋白運(yùn)算并沒(méi)有如此高的頻率,神經(jīng)傳導(dǎo)速度也比不上電路和光纖,但它的處理能力、容量和適應(yīng)能力是驚人的。選擇FPGA的一個(gè)直接原因是它的并行和靈活,但我認(rèn)為更重要的應(yīng)該是它的可重構(gòu)上,特別是局部單元電路可重構(gòu)的FPGA更能夠做到象人類(lèi)大腦中信息處理機(jī)制一樣,也就是信息處理的過(guò)程中根據(jù)需要能夠改變物理聯(lián)系通道(即底層硬件電路),局部單元可重構(gòu)的FPGA能帶來(lái)體系結(jié)構(gòu)上和實(shí)現(xiàn)算法上的革命性創(chuàng)新。這樣的FPGA和相應(yīng)的算法會(huì)在體系結(jié)構(gòu)上取勝,能夠在不遠(yuǎn)的將來(lái)構(gòu)建軟硬件更加協(xié)同的應(yīng)用方案。這種類(lèi)型的FPGA器件(或以其他名字命名的器件)必然會(huì)出現(xiàn)。數(shù)字信號(hào)處理應(yīng)用是目前科技創(chuàng)新的一個(gè)前沿陣地,現(xiàn)在FPGA以其并行性和高DSP處理性能進(jìn)入到信號(hào)處理領(lǐng)域?,F(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í)行過(guò)程影響了DSP處理能力的提升,實(shí)際上一些DSP芯片集成了ARM處理器、DSP硬件運(yùn)算加速器以后在性能上覆蓋了大部分應(yīng)用,在高端DSP處理領(lǐng)域FPGA的并行優(yōu)勢(shì)得到很好的體現(xiàn),特別是FPGA在邏輯、DSP處理塊、片上RAM規(guī)模越來(lái)越大的情況下,這個(gè)優(yōu)勢(shì)會(huì)更多展現(xiàn)出來(lái)。我們知道不管用什么途徑實(shí)現(xiàn),在現(xiàn)代計(jì)算機(jī)中的任務(wù)或算法實(shí)現(xiàn)最終都要在嚴(yán)格的時(shí)序狀態(tài)機(jī)中完成,現(xiàn)代軟件開(kāi)發(fā)語(yǔ)言都是接近人類(lèi)語(yǔ)言的方式描述處理過(guò)程,盡管有一定的節(jié)拍和步驟,但主要描述的是一個(gè)過(guò)程,而非嚴(yán)格按時(shí)鐘節(jié)拍的處理過(guò)程,語(yǔ)言編譯軟件生成的指令和CPU硬件(或DSP處理器)已經(jīng)為我們完成了這個(gè)從語(yǔ)言算法描述空間到硬件狀態(tài)機(jī)處理空間的轉(zhuǎn)換。FPGADSP應(yīng)用開(kāi)發(fā)方面,盡管擁有性能優(yōu)勢(shì),但如果用HDL語(yǔ)言去開(kāi)發(fā)DSP顯的很局促,因?yàn)槲覀儾荒芡瑫r(shí)考慮算法的實(shí)現(xiàn),又同時(shí)滿(mǎn)足嚴(yán)格的狀態(tài)機(jī)時(shí)序,所以用HDL直接寫(xiě)DSP處理模塊這種開(kāi)發(fā)模式不容易被廣大的工程師接受,這就象CPU開(kāi)發(fā)出來(lái)以后,用機(jī)器碼或匯編去開(kāi)發(fā)應(yīng)用一樣,計(jì)算機(jī)和軟件發(fā)展的歷史使大家可以相信,這個(gè)過(guò)程會(huì)很短暫,很快會(huì)有合適的開(kāi)發(fā)工具來(lái)彌補(bǔ)這個(gè)空擋,目前mathworks公司的MatLab開(kāi)發(fā)工具就是一個(gè)很好選擇,擁有算法仿真到RTLCOREGENERATE,使得FPGA的DSP應(yīng)用開(kāi)發(fā)流程得以完整的實(shí)現(xiàn),各個(gè)FPGA廠商也提供了各自的MatLabsimulink下的工具套件,比如Altea的DSPBuilder,xilinx的coregenerate和XilinxAccelDSP,這些軟件完成了算法描述到硬件狀態(tài)邏輯處理機(jī)的轉(zhuǎn)換。這種開(kāi)發(fā)方式現(xiàn)在還處于初始階段,軟件工具、開(kāi)發(fā)習(xí)慣等都需要我們有一個(gè)學(xué)習(xí)積累過(guò)程?,F(xiàn)在越來(lái)越多的模塊被集成到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í)并且有前途的選擇。學(xué)習(xí)和進(jìn)階FPGA在電子開(kāi)發(fā)工作中已經(jīng)上升到數(shù)字系統(tǒng)核心處理器,盡快掌握FPGA開(kāi)發(fā)技術(shù)顯得非常迫切。我們來(lái)自五湖四海,為著一個(gè)共同的目標(biāo)走到一起來(lái)了,我們中間可能有學(xué)生,學(xué)好一門(mén)技術(shù)追求好的發(fā)展,也可能已經(jīng)是工程師,要尋求好的解決方案。FPGA開(kāi)發(fā)對(duì)學(xué)習(xí)者的要求相對(duì)是比較高的,我們上一節(jié)所說(shuō)的,F(xiàn)PGA是一個(gè)可以實(shí)現(xiàn)軟硬件協(xié)同設(shè)計(jì)的平臺(tái),即需要硬件也需要軟件,而且軟件開(kāi)發(fā)也比較多,不同F(xiàn)PGA提供商提供各自的開(kāi)發(fā)環(huán)境,還有第三方的軟件工具。我們可以按下面的幾個(gè)方面開(kāi)始HDL語(yǔ)言的學(xué)習(xí)VHDL和VerilogHDL都可以,HDL語(yǔ)言是FPGA開(kāi)發(fā)的基礎(chǔ),先掌握一門(mén),以后根據(jù)需要去理解掌握另一門(mén)會(huì)比較方便,兩門(mén)都會(huì)是最好的,因?yàn)樘峁┯嘘P(guān)代碼資源的可能是你不熟悉的HDL,有時(shí)我們還需要把這個(gè)語(yǔ)言實(shí)現(xiàn)的翻譯成另一個(gè)語(yǔ)言,以便在開(kāi)發(fā)環(huán)境上統(tǒng)一實(shí)現(xiàn)。如果你有C語(yǔ)言基礎(chǔ),推薦學(xué)VerilogHDL,因?yàn)檎Z(yǔ)法上類(lèi)似,需要注意的點(diǎn)是a、Verilog是描述,而不是運(yùn)行代碼。代碼綜合以后是邏輯網(wǎng)表,而不是指令,所以需要注意我們寫(xiě)的代碼是否正確描述了需要實(shí)現(xiàn)的邏輯電路。b、除了邏輯功能,還要把描述中的時(shí)序給看出來(lái),一開(kāi)始的時(shí)候,可以根據(jù)代碼嘗試著把波形畫(huà)出來(lái),盡管仿真軟件也能做到這個(gè),還是建議自己畫(huà)以加強(qiáng)對(duì)語(yǔ)言的理解,可以用仿真軟件來(lái)驗(yàn)證你畫(huà)的波形c、注意區(qū)分哪些是可綜合的,哪些是不可綜合的代碼,這個(gè)對(duì)出學(xué)Verilog的人會(huì)比較困惑,因?yàn)镃只要語(yǔ)法正確,可以編譯就能運(yùn)行,而Verilog一些代碼只能在仿真環(huán)境中用,不能綜合成實(shí)際的電路d、要多關(guān)注描述代碼綜合后的電路,不能象C語(yǔ)言那樣寫(xiě)好了就行,Verilog寫(xiě)好代碼只能算做了一半工作,還要做仿真,如果時(shí)序不滿(mǎn)足還可能調(diào)整程序代碼。e、多寫(xiě)多試,這個(gè)方法對(duì)學(xué)習(xí)任何事物都一樣,如果有環(huán)境,即使沒(méi)有老師指導(dǎo)照樣可以試出來(lái)。f、多看代碼,特別是原廠提供的代碼,這些代碼應(yīng)該代表了比較高的FPGA設(shè)計(jì)水平,從中我們可以學(xué)習(xí)兩個(gè)方面的知識(shí):一是相對(duì)比較大規(guī)模的邏輯設(shè)計(jì)如何組織模塊結(jié)構(gòu),二是局部應(yīng)用處理,可以照搬,作為我們開(kāi)發(fā)時(shí)的模板。熟讀唐詩(shī)三百首,不會(huì)作詩(shī)也會(huì)吟,看多了,就會(huì)習(xí)慣的學(xué)會(huì)他們的開(kāi)發(fā)模式,我有這樣的體會(huì),看多了,很多東西思想上已經(jīng)把它當(dāng)作是自己的理所當(dāng)然的東西了,實(shí)際一做,手生的很,遇到很多問(wèn)題,解決這些問(wèn)題,這個(gè)過(guò)程就通過(guò)了,學(xué)習(xí)就需要這么個(gè)過(guò)程Modelsim仿真環(huán)境的使用學(xué)習(xí)HDL需要有一個(gè)編譯、驗(yàn)證環(huán)境,首推的就是Modelsim,Modelsim在各家FPGA廠商的開(kāi)發(fā)工具中都提供內(nèi)置或外掛,這種共性的工具自然是越多越好。有很多數(shù)據(jù)介紹Modelsim的使用,網(wǎng)上有很多介紹資料,在此不在贅述。選擇合適的開(kāi)發(fā)板,熟悉一種器件一款合適的開(kāi)發(fā)板是學(xué)習(xí)進(jìn)步的捷徑?,F(xiàn)在原廠和國(guó)內(nèi)很多公司都提供FPGA學(xué)習(xí)開(kāi)發(fā)板,可以根據(jù)需要選購(gòu)。在使用開(kāi)發(fā)板前可以先看安裝使用說(shuō)明,明確開(kāi)發(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廠商主要開(kāi)發(fā)軟件工具的使用目前主要的FPGA廠商有Altera、xilinx、lattice都提供的了各自的FPGA開(kāi)發(fā)環(huán)境,分別是:Altera的QuartusII,Xilinx的ISE,Lattice的ispLever。我們可以選擇先熟悉一家公司的環(huán)境(或者根據(jù)開(kāi)發(fā)板的具體芯片選擇廠商環(huán)境),以后根據(jù)器件選擇需要,再去熟悉其他的環(huán)境,學(xué)習(xí)周期就可以短了。通用的步驟是:建立項(xiàng)目,設(shè)計(jì)輸入(代碼或原理圖),功能仿真,引腳鎖定和相關(guān)時(shí)鐘約束,綜合,功能仿真,影射、布局、布線,時(shí)序仿真等等。這個(gè)過(guò)程需要一段時(shí)間去熟悉。如果你是單片機(jī)系統(tǒng)轉(zhuǎn)過(guò)來(lái)學(xué)習(xí)軟核系統(tǒng)的開(kāi)發(fā),也需要掌握這些工具,同時(shí)掌握廠商提供的系統(tǒng)集成工具和軟件開(kāi)發(fā)工具,Altera提供的集成環(huán)境是SOPCBuilder,軟件開(kāi)發(fā)環(huán)境是NIOSIIIDE。Xilinx提供的集成環(huán)境是XilinxPlatformStudio,軟件開(kāi)發(fā)環(huán)境是:XilinxPlatformStudioSDK。分析和實(shí)現(xiàn)參考設(shè)計(jì)一般開(kāi)發(fā)環(huán)境會(huì)自帶example目錄,這些都是典型的開(kāi)發(fā)范例,強(qiáng)烈建議分析這些范例,并在自己的開(kāi)發(fā)板環(huán)境中實(shí)現(xiàn),這個(gè)過(guò)程可能需要我們修改一些設(shè)置和環(huán)境,比較硬件的不同,但這是一個(gè)很好的鍛煉機(jī)會(huì)。另外開(kāi)發(fā)板也會(huì)隨板提供開(kāi)發(fā)范例,分析這些范例,并常試修改他們也是很好的機(jī)會(huì)。遇到問(wèn)題是很正常的,我們的進(jìn)步就是建立在遇到問(wèn)題并解決問(wèn)題基礎(chǔ)上的。設(shè)計(jì)實(shí)現(xiàn)自己的應(yīng)用系統(tǒng)要明白一點(diǎn),設(shè)計(jì)開(kāi)發(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ì)遇到方方面面的需要考慮的問(wèn)題,能夠把上述學(xué)習(xí)的知識(shí)做一個(gè)考核,順利通過(guò)后就會(huì)在知識(shí)和能力上得到及大的提升,特別是在開(kāi)發(fā)信心上得到強(qiáng)化。建議把遇到或想到的問(wèn)題都羅列記錄在筆記本上,并嘗試逐個(gè)排查解決,這個(gè)過(guò)程中我們可能需要閱讀很多原廠提供的文檔,或者網(wǎng)上搜索到的資料,把每一個(gè)疑問(wèn)逐一解決,做到?jīng)]有疑問(wèn),這樣我們?cè)O(shè)計(jì)的系統(tǒng)就會(huì)順利達(dá)到目標(biāo)。前不久我就實(shí)際體會(huì)了這個(gè)過(guò)程,我們以前都是使用Altera的FPGA器件,熟悉他們的工具也熟悉他們的器件,但客戶(hù)需要我們開(kāi)發(fā)Virtext5PCIE系統(tǒng),我們從4月份開(kāi)始著手,到8月份完成樣板,用了4個(gè)月,熟悉開(kāi)發(fā)環(huán)境,并閱讀了所有Virtex5的文檔,很多測(cè)試代碼,實(shí)際上在設(shè)計(jì)過(guò)程中已經(jīng)寫(xiě)了并在ISE環(huán)境下編譯,因?yàn)镕PGA設(shè)計(jì)很重要的一點(diǎn)是規(guī)劃pin和邏輯功能塊在FPGA內(nèi)的分配,所以需要在原理圖設(shè)計(jì)過(guò)程中就做FPGA項(xiàng)目并在ISE軟件中編譯檢查和驗(yàn)證,這樣在PCB設(shè)計(jì)時(shí)原理圖基本是可行的,同時(shí)在PCB設(shè)計(jì)中做好板級(jí)仿真,這樣能減少了樣板的反復(fù)修改,我們這樣努力的結(jié)果是:一次投板成功。良好的開(kāi)始是成功的一半,特別要在第一塊板的設(shè)計(jì)制作過(guò)程中用盡心計(jì),保證成功,確保我們開(kāi)發(fā)工作的信心。開(kāi)卷有益,勤于實(shí)踐,持續(xù)提高設(shè)計(jì)能力FPGA芯片技術(shù)和開(kāi)發(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ì),可以和高手切磋技藝,咨詢(xún)開(kāi)發(fā)中遇到的問(wèn)題和解決辦法,這個(gè)很令人期待。但很多人可能象我所處的環(huán)境一樣沒(méi)有提供這樣機(jī)會(huì),我建議是開(kāi)卷有益,多看書(shū),現(xiàn)在FPGA方面的新書(shū)出來(lái)的比較多,一些開(kāi)發(fā)高手,或多或少的在他們的介紹中提供了提高的途徑,我都會(huì)仔細(xì)的閱讀。另外網(wǎng)上有很多各個(gè)專(zhuān)題的文檔也是很好的閱讀對(duì)象。帶著問(wèn)題學(xué)習(xí)是最有效率的,如果一些問(wèn)題捆繞著我們,我們就會(huì)對(duì)這些問(wèn)題的解決很關(guān)注,很多時(shí)候,不經(jīng)意之間,我們所需要的信息來(lái)了:別人的一句話(huà),資料上的一句提示,或者其他人開(kāi)發(fā)的代碼中等等,都會(huì)是我們提高的途徑。就象大型數(shù)據(jù)庫(kù)性能調(diào)整一樣,時(shí)序性能的調(diào)整提高是FPGA開(kāi)發(fā)能力的標(biāo)志,各個(gè)FPGA廠商都會(huì)提供很多解決方法,學(xué)習(xí)者要注意去逐步的學(xué)習(xí)使用這些方法。只要不斷的努力,一定可以持續(xù)提高我們的FPGA設(shè)計(jì)能力。目前的開(kāi)發(fā)方法應(yīng)用介紹目前,在FPGA上有三種類(lèi)型開(kāi)發(fā)方法和應(yīng)用方向:a、邏輯類(lèi)應(yīng)用b、軟核類(lèi)應(yīng)用c、DSP類(lèi)應(yīng)用。邏輯類(lèi)應(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)在熱門(mén)的開(kāi)發(fā)應(yīng)用方法,在原本需要FPGA結(jié)合CPU的地方有成本和靈活性?xún)?yōu)勢(shì)。FPGA的DSP應(yīng)用是非常有潛力的,性能優(yōu)勢(shì)非常明顯。開(kāi)發(fā)方法是用Matlab的simulink中嵌入廠商的開(kāi)發(fā)工具包,算法驗(yàn)證在Matlabsimulink工具下完成,在開(kāi)發(fā)工具包的支持下生成HDL模塊或者直接生成FPGA下載配置文件,這個(gè)方向是FPGA應(yīng)用最有挑戰(zhàn)能力領(lǐng)域。Mathworks公司不久前也推出了獨(dú)立于FPGA廠商的SimulinkHDLCoder工具,使的Matlab在數(shù)字系統(tǒng)設(shè)計(jì)領(lǐng)域邁出了堅(jiān)實(shí)的一步,把Simulink模型和Stateflow框圖生成位真(Bit-Ture)、周期精確(Cycle-Accurate)、可綜合的Verilog和VHDL代碼,為Matlabsimulink用戶(hù)提供了通往FPGA設(shè)計(jì)實(shí)現(xiàn)的直接通道。未來(lái)FPGA技術(shù)的發(fā)展趨勢(shì)FPGA技術(shù)正處于高速發(fā)展時(shí)期,新型芯片的規(guī)模越來(lái)越大,成本也越來(lái)越低,低端的FPGA已逐步取代了傳統(tǒng)的數(shù)字元件,高端的FPGA不斷在爭(zhēng)奪ASIC的市場(chǎng)份額。本節(jié)從FPGA軟、硬件來(lái)展望未來(lái)的FPGA設(shè)計(jì)技術(shù),給讀者留一個(gè)FPGA技術(shù)的宏觀輪廓。1未來(lái)可編程器件的發(fā)展趨勢(shì)先進(jìn)的ASIC生產(chǎn)工藝已經(jīng)被用于FPGA的生產(chǎn),越來(lái)越豐富的處理器內(nèi)核被嵌入到高端的FPGA芯片中,基于FPGA的開(kāi)發(fā)成為一項(xiàng)系統(tǒng)級(jí)設(shè)計(jì)工程。隨著半導(dǎo)體制造工藝的不同提高,F(xiàn)PGA的集成度將不斷提高,制造成本將不斷降低,其作為替代ASIC來(lái)實(shí)現(xiàn)電子系統(tǒng)的前景將日趨光明。(1)大容量、低電壓、低功耗FPGA大容量FPGA是市場(chǎng)發(fā)展的焦點(diǎn)。FPGA產(chǎn)業(yè)中的兩大霸主:Altera和Xilinx在超大容量FPGA上展開(kāi)了激烈的競(jìng)爭(zhēng)。2007年Altera推出了65nm工藝的StratixIII系列芯片,其容量為67200個(gè)LE(LogicElement,邏輯單元),Xilinx推出的65nm工藝的VitexVI系列芯片,其容量為33792個(gè)Slices(一個(gè)Slices約等于2個(gè)LE)。采用深亞微米(DSM)的半導(dǎo)體工藝后,器件在性能提高的同時(shí),價(jià)格也在逐步降低。由于便攜式應(yīng)用產(chǎn)品的發(fā)展,對(duì)FPGA的低電壓、低功耗的要日益迫切。因此,無(wú)論那個(gè)廠家、哪種類(lèi)型的產(chǎn)品,都在瞄準(zhǔn)這個(gè)方向而努力。系統(tǒng)級(jí)高密度FPGA隨著生產(chǎn)規(guī)模的提高,產(chǎn)品應(yīng)用成本的下降,F(xiàn)PGA的應(yīng)用已經(jīng)不是過(guò)去的僅僅適用于系統(tǒng)接口部件的現(xiàn)場(chǎng)集成,而是將它靈活地應(yīng)用于系統(tǒng)級(jí)(包括其核心功能芯片)設(shè)計(jì)之中。在這樣的背景下,國(guó)際主要FPGA廠家在系統(tǒng)級(jí)高密度FPGA的技術(shù)發(fā)展上,主要強(qiáng)調(diào)了兩個(gè)方面:FPGA的IP(Intellec2tualProperty,知識(shí)產(chǎn)權(quán))硬核和IP軟核。當(dāng)前具有IP內(nèi)核的系統(tǒng)級(jí)FPGA的開(kāi)發(fā)主要體現(xiàn)在兩個(gè)方面:一方面是FPGA廠商將IP硬核(指完成版圖設(shè)計(jì)的功能單元模塊)嵌入到FPGA器件中,另一方面是大力擴(kuò)充優(yōu)化的IP軟核(指利用HDL語(yǔ)言設(shè)計(jì)并經(jīng)過(guò)綜合驗(yàn)證的功能單元模塊),用戶(hù)可以直接利用這些預(yù)定義的、經(jīng)過(guò)測(cè)試和驗(yàn)證的IP核資源,有效地完成復(fù)雜的片上系統(tǒng)設(shè)計(jì)。FPGA和ASIC出現(xiàn)相互融合雖然標(biāo)準(zhǔn)邏輯ASIC芯片尺寸小、功能強(qiáng)、功耗低,但其設(shè)計(jì)復(fù)雜,并且有批量要求。FPGA價(jià)格較低廉,能在現(xiàn)場(chǎng)進(jìn)行編程,但它彳門(mén)體積大、能力有限,而且功耗比ASIC大。正因如此,F(xiàn)PGA和ASIC正在互相融合,取長(zhǎng)補(bǔ)短。隨著一些ASIC制造商提供具有可編程邏輯的標(biāo)準(zhǔn)單元,F(xiàn)PGA制造商重新對(duì)標(biāo)準(zhǔn)邏輯單元發(fā)生興趣。動(dòng)態(tài)可重構(gòu)FPGA動(dòng)態(tài)可重構(gòu)FPGA是指在一定條件下芯片不僅具有在系統(tǒng)重新配置電路功能的特性,而且還具有在系統(tǒng)動(dòng)態(tài)重構(gòu)電路邏輯的能力。對(duì)于數(shù)字時(shí)序邏輯系統(tǒng),動(dòng)態(tài)可重構(gòu)FPGA的意義在于其時(shí)序邏輯的發(fā)生不是通過(guò)調(diào)用芯片內(nèi)不同區(qū)域、不同邏輯資源來(lái)組合而成,而是通過(guò)對(duì)FPGA進(jìn)行局部的或全局的芯片邏輯的動(dòng)態(tài)重構(gòu)而實(shí)現(xiàn)的。動(dòng)態(tài)可重構(gòu)FPGA在器件編程結(jié)構(gòu)上具有專(zhuān)門(mén)的特征,其內(nèi)部邏輯塊和內(nèi)部連線的改變,可以通過(guò)讀取不同的SRAM中的數(shù)據(jù)來(lái)直接實(shí)現(xiàn)這樣的邏輯重構(gòu),時(shí)間往往在納秒級(jí),有助于實(shí)現(xiàn)FPGA系統(tǒng)邏輯功能的動(dòng)態(tài)重構(gòu)。2未來(lái)EDA設(shè)計(jì)方法的發(fā)展趨勢(shì)電子產(chǎn)業(yè)瞬息萬(wàn)變,隨著新一代FPGA芯片工藝和設(shè)計(jì)方法的進(jìn)步及新的應(yīng)用領(lǐng)域和市場(chǎng)需求的變化,EDA技術(shù)也有突飛猛進(jìn)的發(fā)展,總的趨勢(shì)可以概括為:跨越器件組,甚至公司界限,越來(lái)越人性化的設(shè)計(jì),越來(lái)越高的優(yōu)化水平,越來(lái)越快的仿真速度,越來(lái)越高的仿真精度以及完備的分析驗(yàn)證手段。(1)一體化工具和IP是發(fā)展方向一體化的工具使用戶(hù)受益于一個(gè)統(tǒng)一的用戶(hù)界面,避免了在不同的工具間進(jìn)行數(shù)據(jù)轉(zhuǎn)換等繁瑣的操作。目前,各大EDA工具供應(yīng)商分別推出了集成眾多工具在內(nèi)的一體化設(shè)計(jì)工具,同時(shí)也在分別推出各自的標(biāo)準(zhǔn)數(shù)據(jù)庫(kù),以進(jìn)一步簡(jiǎn)化設(shè)計(jì)流程。未來(lái)先進(jìn)的IC設(shè)計(jì)平臺(tái),將整合各個(gè)公司的許多工具,覆蓋了從設(shè)計(jì)編譯、布局編譯、物理編譯、DFT編譯以及硅片制造的全部流程,同時(shí)還在內(nèi)部集成了向第三方開(kāi)放的數(shù)據(jù)庫(kù),將不同設(shè)計(jì)階段中的數(shù)據(jù)、時(shí)序、計(jì)算以及種種約束條件協(xié)調(diào)起來(lái),將集成新的模擬和混合信號(hào)設(shè)計(jì)工具,加強(qiáng)利用EDA工具進(jìn)行模擬電路設(shè)計(jì)的能力。IP的合理應(yīng)用是加速產(chǎn)品設(shè)計(jì)流程的一個(gè)有效途徑。按照美國(guó)EDA聯(lián)盟(TheEDAConsortium)的統(tǒng)計(jì)數(shù)據(jù)表明,IP產(chǎn)品的銷(xiāo)售額是全球EDA工業(yè)中增加最快的一個(gè)領(lǐng)域。IP應(yīng)用是IC設(shè)計(jì)業(yè)中絕對(duì)的發(fā)展趨勢(shì)。SystemVerilog將成為下一代的描述語(yǔ)言描述語(yǔ)言一直是EDA業(yè)中重要的一環(huán),VHDL和Verilog目前是中國(guó)的主流設(shè)計(jì)語(yǔ)言。然而,隨著IC復(fù)雜度的不斷提高,高級(jí)語(yǔ)言將成為FPGA開(kāi)發(fā)的利器,從更高層次入手對(duì)系統(tǒng)進(jìn)行描述是描述語(yǔ)言未來(lái)的發(fā)展方向?!癝ystemVerilog將最終取代VHDL。”這是Synopsys公司對(duì)描述語(yǔ)言發(fā)展方向上的預(yù)測(cè),在進(jìn)一步解釋這一預(yù)測(cè)時(shí),還指出多年來(lái)FPGA設(shè)計(jì)中更關(guān)注的是仿真,而目前驗(yàn)證整個(gè)設(shè)計(jì)周期中已經(jīng)占據(jù)了60%甚至更多的時(shí)間,而SystemVerilog可以有效地支持上述兩者的需求,同時(shí)SystemVerilog是與Verilog完全兼容的。系統(tǒng)級(jí)設(shè)計(jì)方法除了需要使用高級(jí)HDL語(yǔ)言外,更重要的是要得到系統(tǒng)級(jí)仿真、綜合工具的強(qiáng)力支持。目前VerilogHDL語(yǔ)言發(fā)展迅猛,并逐步完善。EsL將撐起EDA產(chǎn)業(yè)大旗ESL指的是電子級(jí)系統(tǒng)設(shè)計(jì)。軟件挑戰(zhàn)是ESL身后的關(guān)鍵推動(dòng)力。多處理器系統(tǒng)級(jí)芯片必須并行編程,EsL的目標(biāo)是單一高級(jí)別模型的協(xié)同軟硬件設(shè)計(jì)。未來(lái)幾年全球ESL工具營(yíng)收將顯著增長(zhǎng),將與RTL工具持平。三種主要的EsL方法學(xué)分別圍繞算法、處理器與存儲(chǔ)器、控制邏輯。它們均包含行為級(jí)與架構(gòu)級(jí)設(shè)計(jì),分別面向不同的工具及供應(yīng)商。Linux提速進(jìn)入EDA領(lǐng)域隨著EDA技術(shù)在全球范圍內(nèi)的飛速發(fā)展,業(yè)界都在翹首以待基于Linux環(huán)境的EDA技術(shù)成為電路設(shè)計(jì)領(lǐng)域的主流。首先,由于Linux費(fèi)用很低,源代碼開(kāi)放,這使得EDA軟件的前期開(kāi)發(fā)費(fèi)用很低,而且運(yùn)行維護(hù)的成本也很低,同時(shí)大大方便了工程師的設(shè)計(jì)工作。而Linux工作站的費(fèi)用也要比Unix工作站便宜很多。此外,Linux的成本大約是Unix以及Windows的1/15-1/10,但是效能并不比后者差,甚至運(yùn)行速度要更快一些?,F(xiàn)在業(yè)界普遍的看法就是預(yù)計(jì)在未來(lái)的5年內(nèi),Linux將成為EDA的主角??梢灶A(yù)見(jiàn),Linux的普及只是時(shí)間問(wèn)題。模塊化、增量式設(shè)計(jì)成為主流模塊化設(shè)計(jì)適用于團(tuán)隊(duì)開(kāi)發(fā)設(shè)計(jì)內(nèi)部關(guān)系易于劃分、模塊間連接較少的項(xiàng)目。模塊化設(shè)計(jì)先進(jìn)行整體設(shè)計(jì),各模塊使用黑盒子代替,只指明模塊間的連接(使用“偽邏輯”(pseudologic)連接)和整體設(shè)計(jì)的外部端口,并約束各模塊在FPGA芯片內(nèi)部的區(qū)域位置和時(shí)序、外部端口引腳。之后并行的依據(jù)約束完成各自的模塊設(shè)計(jì),最后提交到一起進(jìn)行整體的組合(assemble)。增量式設(shè)計(jì)是一種能在小范圍改動(dòng)情況下節(jié)約綜合、實(shí)現(xiàn)時(shí)間并集成以往設(shè)計(jì)成果的設(shè)計(jì)手段。包括增量綜合和增量實(shí)現(xiàn)兩個(gè)層次的含義。目前,Xilinx公司和Altera公司的模塊化、增量式設(shè)計(jì)已經(jīng)逐步成熟,在實(shí)際中開(kāi)始得到應(yīng)用,可以通過(guò)相關(guān)集成開(kāi)發(fā)環(huán)境的Help菜單得到更詳細(xì)的說(shuō)明?!鯝就業(yè)培訓(xùn)班FPGA就業(yè)培訓(xùn)目前,許多企業(yè)都在高薪聘請(qǐng)大量的FPGA工程師,除了中興、華為、諾基亞、愛(ài)立信等通信企業(yè)外,炬力、士蘭、中星微、威盛等這些微電子行業(yè)的巨頭企業(yè),以及中電集團(tuán)54所、14所、29所,航天航空等許多研究所也是大量需

求FPGA工程師。培養(yǎng)目標(biāo)01、了解FPGA工藝結(jié)構(gòu),掌握FPGA芯片選型原則與策略;02、精通FPGA設(shè)計(jì)相關(guān)軟件的使用方法及技巧;03、精通VerilogHDL設(shè)計(jì)與仿真、針對(duì)FPGA器件代碼優(yōu)化規(guī)則,建立RTL設(shè)計(jì)與電路實(shí)體的對(duì)應(yīng)概念;04、掌握FPGA設(shè)計(jì)原則及常用IP模塊的使用;05、精通FPGA四種常用操作技巧、靜態(tài)時(shí)序分析技巧;06、掌握FPGA基于MATLAB/Simulink、DSPBuilder等新型設(shè)計(jì)、驗(yàn)證工具的設(shè)計(jì)方法及技巧;07、精通FPGA資源優(yōu)化設(shè)計(jì)及低功耗設(shè)計(jì);08、掌握基于FPGA的接口互聯(lián)系統(tǒng)設(shè)計(jì);09、FPGA+DSP架構(gòu);10、掌握基于FPGA的圖像視頻處理設(shè)計(jì);11、精通基于FPGA的SoPC設(shè)計(jì)方法;課程大綱第一階段第一部分FPGA設(shè)計(jì)流程課本課程主要介紹FPGA工藝結(jié)構(gòu)、特點(diǎn)及FPGA芯片選型策略、原則;掌握程FPGA設(shè)計(jì)從RTL設(shè)計(jì)、功能仿真、綜合等,直到在FPGA開(kāi)發(fā)板上進(jìn)行下目載驗(yàn)證的設(shè)計(jì)流程;使學(xué)員掌握FPGA設(shè)計(jì)流程,對(duì)FPGA設(shè)計(jì)有一個(gè)宏觀標(biāo)認(rèn)識(shí)。第二部分VerilogHDL基礎(chǔ)知識(shí)課本課程主要讓學(xué)員掌握VerilogHDL的基本語(yǔ)法,能夠進(jìn)行較簡(jiǎn)單的RTL設(shè)程計(jì),同時(shí),建立HDL中邏輯運(yùn)算符及RTL設(shè)計(jì)與電路實(shí)體的對(duì)應(yīng)關(guān)系,深目刻理解存儲(chǔ)器工作原理及其設(shè)計(jì)方法,及三態(tài)端口控制、雙向控制等,為后標(biāo)面的高級(jí)編程打好基礎(chǔ)。第三部分FPGA開(kāi)發(fā)環(huán)境課程目標(biāo)本章主要學(xué)習(xí)FPGA開(kāi)發(fā)工具的使用:Modelsim、Debussy仿真調(diào)試工具、Synplifypro綜合工具及FPGA開(kāi)發(fā)系統(tǒng)Quartus的使用方法及技巧,且在Quartus中集成調(diào)用Modelsim、Synplify等工具的方法;在上一章節(jié)完成RTL設(shè)計(jì)的基礎(chǔ)上,完整進(jìn)行FPGA設(shè)計(jì)所有流程,掌握FPGA開(kāi)發(fā)板下載、調(diào)試的方法和技巧。課程目標(biāo)第四部分系統(tǒng)時(shí)序分析及處理課本課程旨在讓學(xué)員充分理解時(shí)序分析理論,能夠解決在項(xiàng)目開(kāi)發(fā)中所遇到的程時(shí)序問(wèn)題;且能夠?qū)鐣r(shí)鐘設(shè)計(jì)做出合理處理;能夠精通時(shí)序分析工具的使標(biāo)用,使其能夠設(shè)計(jì)出滿(mǎn)足時(shí)序要求的邏輯電路。第二階段第一部分Verilog高級(jí)編碼課本課程主要講授VerilogHDL流水線設(shè)計(jì)、同步狀態(tài)機(jī)設(shè)計(jì)及系統(tǒng)函數(shù)、任程務(wù)調(diào)用等高級(jí)編碼知識(shí),通過(guò)序列檢測(cè)器、EEPROM讀寫(xiě)器及RISCCPU等目由易全難的實(shí)驗(yàn)安排;同時(shí),強(qiáng)化RTL設(shè)計(jì)與電路實(shí)體的對(duì)應(yīng)關(guān)系,及針對(duì)標(biāo)FPGA器件的代碼優(yōu)化,使學(xué)員逐步掌握獨(dú)立完成復(fù)雜邏輯設(shè)計(jì)的能力。第二部分FPGA設(shè)計(jì)常用IP模塊使用程本章課程主要內(nèi)容為FPGA設(shè)計(jì)中常用IP模塊的使用(單/雙口RAM、程DPRAM、FIFO、ROM及串行收發(fā)器等)的講授,使學(xué)員在充分理解其結(jié)構(gòu)標(biāo)及工作原理、時(shí)序的基礎(chǔ)上,能夠在實(shí)際工程開(kāi)發(fā)中精通其使用。第三部分FPGA設(shè)計(jì)原則與技巧本課程主要講授FPGA設(shè)計(jì)的一些原則(面積與速度平衡互換原則、硬件可實(shí)課現(xiàn)原則及同步設(shè)計(jì)原則、低功耗設(shè)計(jì)原則等)及操作技巧(乒乓操作、串并轉(zhuǎn)程換、流水線操作及數(shù)據(jù)同步等),使學(xué)員能夠?qū)⑦@些原則及技巧應(yīng)用到實(shí)際工目程開(kāi)發(fā)中;同時(shí),本章將講述加法器、乘法器、乘累加器、減法器及除法器標(biāo)在工程應(yīng)用中的設(shè)計(jì)方法,在此基礎(chǔ)上讓學(xué)員完成常系數(shù)FIR濾波器設(shè)計(jì);還要求學(xué)員掌握使用基于IP核的設(shè)計(jì)方法和流程。第四部分新型FPGA設(shè)計(jì)工具使用課本章課程主要講授FPGA基于MATLAB、Simulink、DSPBuilder等新型設(shè)計(jì)、程驗(yàn)證工具的設(shè)計(jì)方法及技巧,使學(xué)員能夠利用這些新型開(kāi)發(fā)工具更好地完成標(biāo)FPGA設(shè)計(jì)。第三階段第一部分基于FPGA的通信接口設(shè)計(jì)及外圍接口設(shè)計(jì)課FPGA設(shè)計(jì)應(yīng)用最為廣泛的領(lǐng)域之一為接口互聯(lián),本章課程主要讓學(xué)員掌握程外設(shè)通信接口的設(shè)計(jì)方法:在教員演示下完成一種通信接口的設(shè)計(jì);在教員目指導(dǎo)下,獨(dú)立完成其它通信接口設(shè)計(jì),包括協(xié)議分析、完成設(shè)計(jì)文檔、RTL標(biāo)設(shè)計(jì)、FPGA芯片選型等流程。第二部分FPGA+DSP課DSP應(yīng)用是展示FPGA優(yōu)勢(shì)的最有效場(chǎng)合。通過(guò)本次課的學(xué)習(xí),可以幫助學(xué)標(biāo)員掌握使用FPGA實(shí)現(xiàn)DSP的基本理論和實(shí)現(xiàn)方法。掌握針對(duì)DSP的Verilog標(biāo)編程方法,實(shí)現(xiàn)如Cordic算法、FFTIPCore使用等經(jīng)典內(nèi)容。第三部分基于FPGA的圖像視頻處理課FPGA設(shè)計(jì)應(yīng)用最為廣泛的領(lǐng)域之一為圖像與視頻處理,本章內(nèi)容有:圖像程和視頻處理基礎(chǔ)知識(shí),使學(xué)員能夠?qū)崿F(xiàn)色彩空間變換、VGA控制器、JPEG編標(biāo)碼基礎(chǔ)、2D-DCT變換、視頻處理體系及圖像FIR濾波器設(shè)計(jì)與實(shí)現(xiàn);視頻標(biāo)降噪算法設(shè)計(jì)與實(shí)現(xiàn),基于FPGA的常用視頻處理算法體系結(jié)構(gòu)、邊緣檢測(cè)算法等。第四階段第一部分SoPC系統(tǒng)設(shè)計(jì)與應(yīng)用課本章課程使學(xué)員熟練掌握參數(shù)化庫(kù)LPM模塊的使用;精通FPGA中鎖相環(huán)程模塊及SignalTap的使用;精通SoPCBuilder的使用,能夠用NiosII軟件集成目開(kāi)發(fā)環(huán)境IDE建立用戶(hù)程序;掌握在NiosII系統(tǒng)中融入自己所設(shè)計(jì)IP的技標(biāo)術(shù)。畢畢業(yè)設(shè)計(jì)將設(shè)計(jì)并實(shí)現(xiàn)一個(gè)真實(shí)和完整FPGA項(xiàng)目的開(kāi)發(fā)流程,涉及方向?yàn)闃I(yè)通信、數(shù)據(jù)采集、軟件無(wú)線電、圖像與視頻處理等方面。要求學(xué)員將前面所答學(xué)知識(shí)融入運(yùn)用到實(shí)際項(xiàng)目開(kāi)發(fā)中,培養(yǎng)學(xué)員的團(tuán)隊(duì)開(kāi)發(fā)和協(xié)同工作能力,辯強(qiáng)化學(xué)員完成標(biāo)準(zhǔn)設(shè)計(jì)文檔能力,為以后的工作打下堅(jiān)實(shí)基礎(chǔ)。FPGA工程師的要求Verilog語(yǔ)言及其于硬件電路之間的關(guān)系。器件結(jié)構(gòu)(最好熟練掌握S

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論