0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

關于Vivado三種常用IP核的調用詳細解析

Hx ? 來源:CSDN技術社區(qū) ? 作者:雷凌峻毅 ? 2021-04-27 15:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

當前使用版本為vivado 2018.3

vivado的IP核,IP核(IP Core):Vivado中有很多IP核可以直接使用,例如數學運算(乘法器、除法器、浮點運算器等)、信號處理(FFT、DFT、DDS等)。IP核類似編程中的函數庫(例如C語言中的printf()函數),可以直接調用,非常方便,大大加快了開發(fā)速度。

今天介紹的是vivado的三種常用IP核:時鐘倍頻(Clocking Wizard),實時仿真(ILA),ROM調用(Block Memory)。

Clocking Wizard

該IP核可以將輸入的時鐘信號進行倍頻,倍數可以大于1,也可以小于1,非常方便。

打開vivado 找到IP Catelog

100062853-125516-1.jpg

在右側輸入欄中輸入clk,找到Clocking Wizard

100062853-125517-2.jpg

雙擊該項目打開,根據開發(fā)板上晶振頻率進行輸入時鐘配置

100062853-125518-3.jpg

配置需要輸出的倍頻頻率

100062853-125519-4.jpg

在最下方可選擇IP核需要的引腳,我都沒用到,因此全取消了(之前有遇到選擇reset和lock引腳后IP核不能使用的情況,原因還未弄清楚)。

100062853-125520-5.jpg

點擊OK,并點擊Generate,完成Clocking Wizard的配置

100062853-125521-6.jpg

在代碼中對IP核進行調用

100062853-125522-7.jpg

編寫TESTBENCH,仿真結果如下

100062853-125523-8.jpg

ILA

ILA是用于實時仿真的IP核,在你將bit文件燒入芯片后,可在ILA核中看到你想觀察的圖像和數據。

打開IP Catelog,輸入ILA

100062853-125524-9.jpg

雙擊打開項目,配置需要觀察的端口數,采樣的深度

100062853-125525-10.jpg

配置觀察端口的位數

100062853-125526-11.jpg

點擊OK,和Generate完成IP核配置

100062853-125527-12.jpg

在代碼中調用IP核

100062853-125528-13.jpg

完成工程綜合后,下載文件,點擊運行和循環(huán),開始觀察

100062853-125529-14.jpg

Block Memory

該IP核調用片內ROM,可以用來儲正弦波,三角波等波形。該IP核引用文件的格式為.coe,因此我們需要先使用Matlab生成一個.coe文件。

打開matlab,新建一個.m文件,輸入以下代碼生成一個位寬10位,深度1024的正弦波

width=10; %rom的位寬

depth=1024; %rom的深度

x=linspace(0,2*pi,depth); %在一個周期內產生1024個采樣點

y_sin=cos(x); %生成余弦數據

y_sin=round(y_sin*(2^(width-1)-1))+2^(width-1)-1; %將余弦數據全部轉換為整數

fid=fopen(‘C:\Users\Leixx\Desktop\sin_coe.coe’,‘w’); %創(chuàng)建.coe文件

fprintf(fid,‘%d,\n’,y_sin); %向.coe文件中寫入數據

fclose(fid); %關閉.coe文件

生成文件之后,用notepad++(或UltraEdit)打開,你會看見已經生成好的1024個數據,這時需要在文件的最開始添加下面兩句:

memory_initialization_radix=10;

memory_initialization_vector =

radix表示是十進制顯示。之后,在文件的最末尾,將最后一個數據后面的逗號改成分號,點擊保存。

100062853-125530-15.jpg

100062853-125531-16.jpg

打開vivado,點擊IP Catalog,輸入block

100062853-125532-17.jpg

雙擊打開項目,選擇Single port ROM

100062853-125533-18.jpg

配置要存入的數據位寬和數據深度,我之前生成的是位寬10位,深度1024的數據

選擇Always Enanbled,讓IP核始終處于工作狀態(tài)

100062853-125534-19.jpg

將之前生成好的文件載入IP核

100062853-125535-20.jpg

點擊OK和Generate,完成IP核配置

在代碼中調用IP核,我這里DAC是低位在前

100062853-125536-21.jpg

編寫好Testbench后,可以在仿真中看到正弦波,我這里因為低位在前,所以波形雜亂。

100062853-125537-22.jpg

以上,便是vivado三種常用IP核的調用。
編輯:lyn

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • ROM
    ROM
    +關注

    關注

    4

    文章

    578

    瀏覽量

    87237
  • IP核
    +關注

    關注

    4

    文章

    338

    瀏覽量

    50693
  • 實時仿真
    +關注

    關注

    0

    文章

    32

    瀏覽量

    8827
  • Vivado
    +關注

    關注

    19

    文章

    834

    瀏覽量

    68589
收藏 1人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    VIVADO自帶Turbo譯碼器IP怎么用?

    turbo 譯碼器IP沒有輸出,不知道哪里出了問題,有經驗的小伙伴幫忙看看啊 搭建了turbo 譯碼器IP測試工程,用Matlab產生的數據源,
    發(fā)表于 06-23 17:39

    Vivado FIR IP核實現

    Xilinx的FIR IP屬于收費IP,但是不需要像 Quartus那樣通過修改license文件來破解。如果是個人學習,現在網絡上流傳的license破解文件在破解Vivado的同
    的頭像 發(fā)表于 03-01 14:44 ?1623次閱讀
    <b class='flag-5'>Vivado</b> FIR <b class='flag-5'>IP</b>核實現

    深入解析三種鋰電池封裝形狀背后的技術路線與工藝奧秘

    的工藝制程,猶如把鑰匙,開啟著不同應用場景的大門。本文將深入解析三種鋰電池封裝形狀背后的技術路線與工藝奧秘。 一、方形鋰電池:堅固方正背后的工藝匠心 (一)結構與設計優(yōu)勢 方形鋰電池以其規(guī)整的外形示人,這種
    的頭像 發(fā)表于 02-17 10:10 ?1103次閱讀
    深入<b class='flag-5'>解析</b><b class='flag-5'>三種</b>鋰電池封裝形狀背后的技術路線與工藝奧秘

    示波器的三種觸發(fā)模式

    示波器的觸發(fā)方式不僅影響波形捕捉的時機,還決定了顯示的波形是否穩(wěn)定。 常見的觸發(fā)模式有三種: 單次觸發(fā) (Single)、 正常觸發(fā) (Normal)和 自動觸發(fā) (Auto)。下面將對這三種觸發(fā)
    的頭像 發(fā)表于 01-07 11:04 ?7206次閱讀
    示波器的<b class='flag-5'>三種</b>觸發(fā)模式

    vivado導入舊版本的項目,IP核心被鎖。

    vivado導入其他版本的項目的時候,IP被鎖,無法解開,請問該如何解決。 使用軟件:vivado 2019.2 導入項目使用版本:vivado
    發(fā)表于 11-08 21:29

    Vivado中FFT IP的使用教程

    本文介紹了Vidado中FFT IP的使用,具體內容為:調用IP>>配置界面介紹>>IP
    的頭像 發(fā)表于 11-06 09:51 ?3703次閱讀
    <b class='flag-5'>Vivado</b>中FFT <b class='flag-5'>IP</b><b class='flag-5'>核</b>的使用教程

    如何申請xilinx IP的license

    在使用FPGA的時候,有些IP是需要申請后才能使用的,本文介紹如何申請xilinx IP的license。
    的頭像 發(fā)表于 10-25 16:48 ?1327次閱讀
    如何申請xilinx <b class='flag-5'>IP</b><b class='flag-5'>核</b>的license

    I2S有左對齊,右對齊跟標準的I2S三種格式,那么這三種格式各有什么優(yōu)點呢?

    大家好,關于I2S格式,有兩個疑問請教一下 我們知道I2S有左對齊,右對齊跟標準的I2S三種格式,那么這三種格式各有什么優(yōu)點呢? 而且對于標準的I2S格式,32FS傳輸16bit的數據,48fs傳輸24bit的數據,最低位會移
    發(fā)表于 10-21 08:23

    基本放大電路有哪三種

    電路(簡稱共基放大電路)和共集電極放大電路(簡稱共集放大電路)。以下是對這三種基本放大電路的詳細分析: 一、共發(fā)射極放大電路(共射放大電路) 共發(fā)射極放大電路是最常見的放大電路形式之一。在這種電路中,輸入信號
    的頭像 發(fā)表于 10-15 11:07 ?3641次閱讀

    Windows管理內存的三種主要方式

    Windows操作系統(tǒng)提供了多種方式來管理內存,以確保系統(tǒng)資源的有效利用和性能的優(yōu)化。以下是關于Windows管理內存的三種主要方式的詳細闡述,包括堆內存管理、虛擬內存管理以及共享內存管理,每種方式都將從概念、原理、運作機制和應
    的頭像 發(fā)表于 10-12 17:09 ?2338次閱讀

    單片機的三種總線結構

    、控制信號傳遞和地址選擇中發(fā)揮著至關重要的作用。下面將詳細闡述這三種總線結構的特點及其在單片機系統(tǒng)中的應用。
    的頭像 發(fā)表于 09-10 11:32 ?7034次閱讀

    干貨!恒流電路常用三種設計方案

    作為硬件研發(fā)工程師相信對恒流電路不會陌生,本文介紹下三種恒流電路的原理圖。 極管恒流電路 極管恒流電路 極管的恒流電路,主要是利用Q2
    發(fā)表于 09-09 10:40

    常用的pwm跟蹤控制方式是哪三種

    PWM(脈寬調制)跟蹤控制是一廣泛應用于電機控制、電源管理、通信等領域的技術。它通過調整脈沖的寬度來控制輸出信號的占空比,從而實現對系統(tǒng)的精確控制。常用的PWM跟蹤控制方式主要有三種:增量式PWM
    的頭像 發(fā)表于 08-14 10:34 ?2546次閱讀

    請問IR900NAT配置常用三種情景是什么?

    IR900NAT配置常用三種情景
    發(fā)表于 07-26 07:02

    放大電路的三種組態(tài)可以放大什么

    是對這三種放大電路組態(tài)的介紹。 1. 共射放大電路(Common Emitter Amplifier) 共射放大電路是三種組態(tài)中最常用的一,其特點是具有較高的電壓增益和中等的電流增益
    的頭像 發(fā)表于 07-09 14:31 ?2711次閱讀

    電子發(fā)燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品