vivado三種常用IP核的調(diào)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
當(dāng)前使用版本為vivado 2018.3
Clocking Wizard
打開vivado 找到IP Catelog
在右側(cè)輸入欄中輸入clk,找到Clocking Wizard
雙擊該項(xiàng)目打開,根據(jù)開發(fā)板上晶振頻率進(jìn)行輸入時(shí)鐘配置
配置需要輸出的倍頻頻率
在最下方可選擇IP核需要的引腳,我都沒用到,因此全取消了(之前有遇到選擇reset和lock引腳后IP核不能使用的情況,原因還未弄清楚)。
點(diǎn)擊OK,并點(diǎn)擊Generate,完成Clocking Wizard的配置
在代碼中對IP核進(jìn)行調(diào)用
編寫TESTBENCH,仿真結(jié)果如下
ILA
打開IP Catelog,輸入ILA
雙擊打開項(xiàng)目,配置需要觀察的端口數(shù),采樣的深度
配置觀察端口的位數(shù)
點(diǎn)擊OK,和Generate完成IP核配置
在代碼中調(diào)用IP核
完成工程綜合后,下載文件,點(diǎn)擊運(yùn)行和循環(huán),開始觀察
Block Memory
width=10; %rom的位寬 depth=1024; %rom的深度 x=linspace(0,2*pi,depth); %在一個(gè)周期內(nèi)產(chǎn)生1024個(gè)采樣點(diǎn) y_sin=cos(x); %生成余弦數(shù)據(jù) y_sin=round(y_sin*(2^(width-1)-1))+2^(width-1)-1; %將余弦數(shù)據(jù)全部轉(zhuǎn)換為整數(shù) fid=fopen('C:\Users\Leixx\Desktop\sin_coe.coe','w'); %創(chuàng)建.coe文件 fprintf(fid,'%d,\n',y_sin); %向.coe文件中寫入數(shù)據(jù) fclose(fid); %關(guān)閉.coe文件
memory_initialization_radix=10; memory_initialization_vector =
打開vivado,點(diǎn)擊IP Catalog,輸入block
雙擊打開項(xiàng)目,選擇Single port ROM
配置要存入的數(shù)據(jù)位寬和數(shù)據(jù)深度,我之前生成的是位寬10位,深度1024的數(shù)據(jù)
選擇Always Enanbled,讓IP核始終處于工作狀態(tài)
將之前生成好的文件載入IP核
點(diǎn)擊OK和Generate,完成IP核配置
在代碼中調(diào)用IP核,我這里DAC是低位在前
編寫好Testbench后,可以在仿真中看到正弦波,我這里因?yàn)榈臀辉谇?,所以波形雜亂。