基于Vivado DDS ip核的DDS信號發(fā)生器:
在Vivado軟件中調(diào)出DDS ip核進行設(shè)置,很多參數(shù)可以參考xilinx官方手冊,比較重要的是System Clock系統(tǒng)時鐘和Phase Widh相位寬度的設(shè)置,這是最終得到波形的頻率和相位所需要的基礎(chǔ)參數(shù),在這里我分別設(shè)置為50Mhz和16bit。
在implementation頁面設(shè)置頻率控制字和相位控制字是手動輸入還是固定,這里phase increment programmability(頻率控制字)設(shè)置為programmable,phase offset programmability(相位控制字)設(shè)置為streaming(none或fixed為固定,programmable意為可改變,streaming意為可以更快速高效地接收控制并改變,注意頻率控制字和相位控制字選programmable還是streaming都可以,但是不能選同一個)。輸出選sine(這個看自己需求)。
?
在這一頁將output tready打鉤,相當于加入幾個握手信號。
?
可以看到最后的參數(shù)數(shù)據(jù)是這樣的。
?
其他都設(shè)為默認,可以看到最后DDS結(jié)構(gòu)圖是這樣,除了頻率控制字、相位控制字、時鐘作為輸入以外,還有幾個ready和valid握手信號,這些ready和valid信號均為1時輸入信息才會被接收。
?
經(jīng)過Generate Output Products和create HDL Wrapper生成封裝文件后,新建testbench文件如下圖:
???????
根據(jù)頻率控制字和相位控制字的公式,我這里fclk=50mhz,N=16,如最終需要得到頻率1Mhz,相位π/2的波形,經(jīng)過計算,頻率控制字為1310,相位控制字為16384,輸入的ready和valid均設(shè)置為1。從最終仿真波形中可以看出頻率為周期為1000ns,也就是頻率1Mhz,相位也是正確的。
文章來源:http://www.zghlxwxcb.cn/news/detail-517837.html
?文章來源地址http://www.zghlxwxcb.cn/news/detail-517837.html
到了這里,關(guān)于基于vivado DDS ip核的DDS信號發(fā)生器(可調(diào)頻調(diào)相)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!