0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

vivado調(diào)用IP核詳細(xì)介紹

FPGA學(xué)習(xí)交流 ? 來(lái)源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2018-05-28 11:42 ? 次閱讀

大家好,又到了每日學(xué)習(xí)的時(shí)間了,今天咱們來(lái)聊一聊vivado 調(diào)用IP核。
首先咱們來(lái)了解一下vivado的IP核,IP核(IP Core):Vivado中有很多IP核可以直接使用,例如數(shù)學(xué)運(yùn)算(乘法器、除法器、浮點(diǎn)運(yùn)算器等)、信號(hào)處理(FFT、DFT、DDS等)。IP核類似編程中的函數(shù)庫(kù)(例如C語(yǔ)言中的printf()函數(shù)),可以直接調(diào)用,非常方便,大大加快了開(kāi)發(fā)速度。




使用Verilog調(diào)用IP核

這里簡(jiǎn)單舉一個(gè)乘法器的IP核使用實(shí)例,使用Verilog調(diào)用。首先新建工程,新建demo.v頂層模塊。

一、添加IP核

1. 點(diǎn)擊Flow Navigator中的IP Catalog。
113530xvrr2hrdnlrnnxl2.png

2. 選擇Math Functions下的Multiplier,即乘法器,并雙擊。
113531zx7g1pzzpx6up5xn.png

3. 將彈出IP核的參數(shù)設(shè)置對(duì)話框。點(diǎn)擊左上角的Documentation,可以打開(kāi)這個(gè)IP核的使用手冊(cè)查閱。這里直接設(shè)置輸入信號(hào)A和B均為4位無(wú)符號(hào)型數(shù)據(jù),其他均為默認(rèn)值,點(diǎn)擊OK。
113532ne96z1h1voh1r2vx.png

4. 稍后彈出的窗口,點(diǎn)擊Generate
113532me3rr4iww46rgz4r.png

二、調(diào)用IP核

1. 選擇IP Sources,展開(kāi)并選擇mult_gen_0 - Instantiation Template - mult_gen_0.veo,可以打開(kāi)實(shí)例化模板文件。如圖,這段代碼就是使用Verilog調(diào)用這個(gè)IP核的示例代碼。
113531crd7jfozbzan4nb4.png

2. 將示例代碼復(fù)制到demo.v文件中,并進(jìn)行修改,最終如下。代碼中聲明了無(wú)符號(hào)型的4位變量a和b,分別賦初值7、8,作為乘數(shù)使用;無(wú)符號(hào)型的8位變量p,用于保存計(jì)算結(jié)果。clk為T(mén)estbench編寫(xiě)的周期20ns的時(shí)鐘信號(hào);mult_gen_0 mul(...)語(yǔ)句實(shí)例化了mult_gen_0類型的模塊對(duì)象mul,并將clk、a、b、p作為參數(shù)傳入。
113531b78ndk752xn6ndyy.png


三、行為仿真驗(yàn)證

以demo為頂層模塊,啟動(dòng)行為仿真,即可輸出波形。設(shè)置a、b、p顯示為無(wú)符號(hào)十進(jìn)制(右擊選擇Radix - Unsigned Decimal)。如圖,可以看到a=7, b=8,第一個(gè)時(shí)鐘上升沿后p = a * b = 56。
113533i26oysu6qeeqqzcl.png




框圖(Block Design)中調(diào)用IP核

這里舉一個(gè)簡(jiǎn)單的例子,通過(guò)調(diào)用乘法器IP核,產(chǎn)生一個(gè)能計(jì)算平方的新模塊。

一、創(chuàng)建框圖設(shè)計(jì)文件

1. 選擇Flow Navigator中的Create Block Design,創(chuàng)建一個(gè)框圖設(shè)計(jì)文件。
114712kfmmuuggb1ugh15c.png

2. 輸入文件名并點(diǎn)擊OK。
114713u7w3vvd67zuc6i89.png


二、添加IP核

1. 在框圖空白處右擊,選擇Add IP。
114713man6pevcz6nd0kyu.png


2. 可以直接搜索需要的IP核,雙擊確認(rèn)。
114714biexnobxaicko0ya.png

3. IP核即可被添加進(jìn)來(lái),可以用導(dǎo)線將其與其他器件連接。
114714zqixmi280xk02o82.png

4. 雙擊這個(gè)IP核符號(hào),可以打開(kāi)參數(shù)設(shè)置對(duì)話框。點(diǎn)擊左上方的Documentation可以查看IP核的手冊(cè)。這里將輸入的A、B均設(shè)置為4為無(wú)符號(hào)型,其他為默認(rèn)值,點(diǎn)擊OK確認(rèn)。
114714a8878i6bbx5c5pih.png


三、繪制電路

1. 右擊Diagram窗口空白處,選擇Create Port。
114715bohjlol8tgl3wojk.png


2. 彈出窗口中,設(shè)置端口a為4位輸入信號(hào),并點(diǎn)擊OK。
114715vveffk3pvpv972iu.png

3. 將a與A、B都連接起來(lái)。
114716kh8n5jjzhwoj3vph.png

4. 同樣的方法,添加一個(gè)8位輸出端口p,與P連接。
114716ht9n58ccg4s457lf.png


5. 再添加一個(gè)clk時(shí)鐘輸入端口,與CLK連接。
114717ogqadsgdy2sdwg25.png

6. 最終結(jié)果如圖。
114717rk2ipv7jv1ck8jpj.png


四、仿真測(cè)試

1. 右擊框圖設(shè)計(jì)文件design_1,選擇Create HDL Wrapper。
115342oycfkdckomsbkbfk.png

2. 選擇第二項(xiàng)并點(diǎn)擊OK。
114717q1mp1c2gf5pj9p22.png

3. 打開(kāi)生成的design_1_wrapper.v文件如圖,紅框中的代碼用來(lái)調(diào)用前面畫(huà)好的Block Design模塊。
114718v2nsrz6mjjrjvjjg.png

4. 在design_1_wrapper.v文件中,添加Testbench代碼即可進(jìn)行行為仿真。修改代碼如下,給輸入信號(hào)a賦初值為8,clk連接到Testbench生成的時(shí)鐘信號(hào)c上。
114718sq0hneztlhh1w9z0.png ? ? ? ?5. 在Simulation Sources文件夾下,設(shè)置design_1_wrapper.v為行為仿真的頂層文件(右擊,選擇Set as Top)。
114719kxbagsps9za1wgpx.png


啟動(dòng)行為仿真,最終輸出的波形如下??梢钥吹剑赾lk的第一個(gè)上升沿后,就有 p = a*a = 64,即實(shí)現(xiàn)了平方運(yùn)算。
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Verilog
    +關(guān)注

    關(guān)注

    28

    文章

    1335

    瀏覽量

    109844
  • IP核
    +關(guān)注

    關(guān)注

    4

    文章

    318

    瀏覽量

    49331
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    799

    瀏覽量

    66128
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    vivadoip的工程封裝

    請(qǐng)教一下,vivado怎么把帶ip的工程進(jìn)行封裝,保證代碼不可見(jiàn),可以通過(guò)端口調(diào)用。我嘗試了以下方法,ippackage,如果要在另一個(gè)程序里調(diào)用
    發(fā)表于 07-14 09:18

    vivado 調(diào)用IP 詳細(xì)介紹

    大家伙,又到了每日學(xué)習(xí)的時(shí)間了,今天咱們來(lái)聊一聊vivado 調(diào)用IP。首先咱們來(lái)了解一下vivado
    發(fā)表于 05-15 12:05

    詳細(xì)操作 vivado 調(diào)用IP(附圖)

    大家伙,又到了每日學(xué)習(xí)的時(shí)間了,今天咱們來(lái)聊一聊vivado 調(diào)用IP。首先咱們來(lái)了解一下vivado
    發(fā)表于 05-16 11:42

    使用Vivado調(diào)用ROM IP

      本例程主要使用Vivado 調(diào)用ROM IP,用含有正弦曲線的.coe文件初始化ROM,最終通過(guò)仿真實(shí)現(xiàn)波形的顯示  一、首先建立工程      二、選擇芯片的型號(hào)  我
    發(fā)表于 01-08 17:16

    vivado有哪幾種常用IP?如何去調(diào)用它們

    運(yùn)算器等)、信號(hào)處理(FFT、DFT、DDS等)。IP類似編程中的函數(shù)庫(kù)(例如C語(yǔ)言中的printf()函數(shù)),可以直接調(diào)用,非常方便,大大加快了開(kāi)發(fā)速度。今天介紹的是
    發(fā)表于 07-29 06:07

    Vivado生成IP

    vivado生成ip后缺少一大片文件,之前是可以用的,中途卸載過(guò)Modelsim,用vivado打開(kāi)過(guò)ISE工程,因?yàn)楣こ讨泻芏?b class='flag-5'>IP
    發(fā)表于 04-24 23:42

    Xilinx Vivado的使用詳細(xì)介紹(3):使用IP

    IPIP Core) Vivado中有很多IP核可以直接使用,例如數(shù)學(xué)運(yùn)算(乘法器、除法器、浮點(diǎn)運(yùn)算器等)、信號(hào)處理(FFT、DFT、D
    發(fā)表于 02-08 13:08 ?2064次閱讀
    Xilinx <b class='flag-5'>Vivado</b>的使用<b class='flag-5'>詳細(xì)</b><b class='flag-5'>介紹</b>(3):使用<b class='flag-5'>IP</b><b class='flag-5'>核</b>

    了解VivadoIP的原理與應(yīng)用

    IPIP Core) Vivado中有很多IP核可以直接使用,例如數(shù)學(xué)運(yùn)算(乘法器、除法器、浮點(diǎn)運(yùn)算器等)、信號(hào)處理(FFT、DFT、D
    發(fā)表于 11-15 11:19 ?9025次閱讀

    調(diào)用Vivado IP的方法

    在開(kāi)發(fā)PL時(shí)一般都會(huì)用到分頻或倍頻,對(duì)晶振產(chǎn)生的時(shí)鐘進(jìn)行分頻或倍頻處理,產(chǎn)生系統(tǒng)時(shí)鐘和復(fù)位信號(hào),下面就介紹一下在vivado2017.3中進(jìn)行PL開(kāi)發(fā)時(shí)調(diào)用IP的方法。
    發(fā)表于 12-22 14:26 ?4673次閱讀

    FPGA實(shí)現(xiàn)基于Vivado的BRAM IP的使用

    ? Xilinx公司的FPGA中有著很多的有用且對(duì)整個(gè)工程很有益處的IP,比如數(shù)學(xué)類的IP,數(shù)字信號(hào)處理使用的IP
    的頭像 發(fā)表于 12-29 15:59 ?1.1w次閱讀

    關(guān)于Vivado三種常用IP調(diào)用詳細(xì)解析

    vivadoIP,IPIP Core):Vivado
    的頭像 發(fā)表于 04-27 15:45 ?2.4w次閱讀
    關(guān)于<b class='flag-5'>Vivado</b>三種常用<b class='flag-5'>IP</b><b class='flag-5'>核</b>的<b class='flag-5'>調(diào)用</b><b class='flag-5'>詳細(xì)</b>解析

    FPGA應(yīng)用之vivado三種常用IP調(diào)用

    今天介紹的是vivado的三種常用IP:時(shí)鐘倍頻(Clocking Wizard),實(shí)時(shí)仿真(ILA),ROM調(diào)用(Block Memor
    發(fā)表于 02-02 10:14 ?3178次閱讀

    VCS獨(dú)立仿真Vivado IP的問(wèn)題補(bǔ)充

    在仿真Vivado IP時(shí)分兩種情況,分為未使用SECURE IP和使用了SECURE IP
    的頭像 發(fā)表于 06-06 14:45 ?1609次閱讀
    VCS獨(dú)立仿真<b class='flag-5'>Vivado</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>的問(wèn)題補(bǔ)充

    如何在Vivado中配置FIFO IP

    Vivado IP提供了強(qiáng)大的FIFO生成器,可以通過(guò)圖形化配置快速生成FIFO IP
    的頭像 發(fā)表于 08-07 15:36 ?3708次閱讀
    如何在<b class='flag-5'>Vivado</b>中配置FIFO <b class='flag-5'>IP</b><b class='flag-5'>核</b>

    FPGA實(shí)現(xiàn)基于Vivado的BRAM IP的使用

    Xilinx公司的FPGA中有著很多的有用且對(duì)整個(gè)工程很有益處的IP,比如數(shù)學(xué)類的IP,數(shù)字信號(hào)處理使用的IP
    的頭像 發(fā)表于 12-05 15:05 ?1380次閱讀