日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基于verilog的正弦波发生器

發布時間:2024/3/12 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于verilog的正弦波发生器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基于verilog的正弦波發生器

這是我在CSDN里的第一篇文章,先做個小廣告。。
我建了一個嵌入式和FPGA的公眾號,里面也是我寫的一些文章,有的是平時學習的筆記,或者實驗的記錄,我希望和大家一起學習,記錄學習的東西。因為剛剛起步,需要大家的支持,希望大家關注一下,也可以給我點建議。。
畢竟是剛剛起步,文章寫的不好,大家別介意,一起努力哈哈哈
*


公眾號:FPGA科技室


**
已改名為:FPGA科技室

這一篇文章是關于基于verilog的正弦波發生器(即產生正弦波波形),這也是我的公眾號第一篇FPGA文章,想讓大家學習一下如何利用開發工具,產生一個正弦波形sinx。
為啥開篇講這個內容呢,因為畢竟第一篇文章,適合循序漸進,從簡單先入手,但大家不要小看這個正弦波波形的設計,因為這將會是直接數字式頻率合成器DDS的基礎,只有會第一步設計,我們才能更加深入到DDS,之后我也會來講述。
開門見山,這次的設計要用到matlab軟件(生成ram ip核的mif文件),multisim 10(仿真波形),UE(編寫代碼)。 想必大家學過數字信號處理DSP,如果要采樣信號,則其采樣頻率必須大于原信號最高頻率的兩倍,即fs>=2fc。ram既然是數字器件,我們無法存入模擬信號正弦波,則需要對其進行采樣定點化(一般fpga器件無法存浮點數,需要定點化),那么我們就用到了matlab,利用其強大的功能,編寫matlab程序,得到采樣點值,并利用matlab生成mif文件(ram的初始化文件)

下面就是大致的設計思路:
將連續的正弦波信號進行離散化;應用matlab 軟件進行實現;
2.將離散化后的正弦波一個整周期存儲到Ram中;
(1).將離散后的數據進行定點化,Ram的規格是256x8,數據規格1bit符號位和7比特小數位。
(2).創建一個Ram 用于存儲離散數據
首先我先給出matlab代碼:
**

N=2^8; %N為采樣點數 s_p=0:255;%正弦波一個周期的采樣點數 sin_data=sin(2*pi*s_p/N); %sin_data是初步采樣值,浮點數% 編寫到這里,大家可以在任務行中顯示此時的波形 fix_p_sin_data=fix(sin_data*127); %定點化 fix()函數可以直接去除小數點后的值,使之成為整數 for i=1:Nif fix_p_sin_data(i)<0fix_p_sin_data(i)=N+fix_p_sin_data(i)elsefix_p_sin_data(i)=fix_p_sin_data(i);end end%下面是mif文件固定格式,不可更改 fid=fopen('sp_ram_256x8.mif','w+'); fprintf(fid,'WIDTH=8;\n'); fprintf(fid,'DEPTH=256;\n'); fprintf(fid,'ADDRESS_RADIX=UNS;\n'); fprintf(fid,'DATA_RADIX=UNS;\n'); fprintf(fid,'CONTENT BEGIN \n'); for i=1:N fprintf(fid,'%d:%d; \n',i-1,fix_p_sin_data(i)); end fprintf(fid,'END; \n'); fclose(fid); 好了到此為止,我們就編寫完并生成了初始化**mif文件了,下面可以開始verilog編寫了,噢,不對,咱們先來利用quartus

生成一個ip ram,因為verilog編寫時需要例化IP哦

我們來生成RAM。。。。首先利用ip工具,create a new ip

選擇類型。。。。。咱們這次用單口ram ,sp_ram_256x8

如下圖是我們創建的ram,256深度,位寬為8哦


最后我們加入剛剛matlab生成的mif文件


完成了一半了,此時我們可以在工作區看到我們新建的ip核工程了
下面來編寫verilig代碼,頂層文件:在頂層中例化了ip核 ,由于我們已經初始化了mif,則ram的寫數據端用不到,我們將其置為0,數據也為0,只由地址端進行操作。

至此,只要再編寫testbench文件即可,

ok,至此我們完成了正弦波的設計,
來吧,這下我們來個仿真,見證奇跡的時刻

總結:
咦,不知道大家發現沒,如果按照這樣的mif編寫規則,我們是不是不光可以生成sinx波形,還可以生成cosx。。。等等的函數波形,因為matlab很強大,幫助了我們很多,這次的設計雖然簡單,但是用到了挺多東西,如何建立ip核,如何初始化。。可見設計一樣東西,需要全面的知識體系,verilog只是一個工具。
哈哈,第一篇文章結束了,寫的不難懂吧,用通俗的話,主要描述了操作。大家可以試試哦
發揮部分:如何實現正弦波的頻率可調?

總結

以上是生活随笔為你收集整理的基于verilog的正弦波发生器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美日韩精品亚洲精品 | 成人黄色性视频 | 国产伦理片在线观看 | 成人一区二区三区在线 | 9999免费视频 | 欧美老熟妇一区二区三区 | 天堂男人在线 | 91香蕉国产在线观看软件 | 麻豆av影院 | 黄色99 | 中文字幕第27页 | 男女瑟瑟视频 | 久久人精品 | 亚洲高清色 | 天天干视频在线 | 人成午夜| 91国产免费视频 | 欧美肉丝袜videos办公室 | jizz毛片 | 日本xxxx18高清hd| 日韩精品av一区二区三区 | 欧美怡红院一区二区三区 | 亚洲自拍第二页 | 亚洲91网 | 91色偷偷| 黄久久久 | 亚洲欧洲在线播放 | 男女一级片 | 毛片aa| 婷婷开心激情 | 日韩欧 | 久久久久国产精品视频 | 丁香六月色婷婷 | 免费二区| 福利视频在线导航 | 少妇无套内谢免费视频 | www.日韩| 深夜国产福利 | 亚洲精品~无码抽插 | 制服下的诱惑暮生 | 五月婷婷中文字幕 | 成在线人免费视频 | 国产日韩免费视频 | 久草视频免费播放 | 啪啪官网 | 玩弄丰满少妇xxxxx性多毛 | 日韩三级麻豆 | 精品视频免费观看 | 黄色网址视频 | 影音先锋国产在线 | 老汉色av| www.狠狠操.com| 黄色在线观看免费视频 | 欧美亚洲专区 | 男女免费网站 | 祥仔视觉av| 日韩一级久久 | 国产一及片 | 国产九九九精品 | 少妇 av | xxxxav| a级特黄视频 | 日本电影一区二区三区 | 亚洲AV无码精品自拍 | 午夜激情亚洲 | 综合在线亚洲 | 国产精品18久久久久久无码 | 午夜在线网站 | 成人在线免费网站 | 午夜视频导航 | 涩天堂 | 欧美综合在线一区 | 激情久久久久久久 | 日本大尺度吃奶做爰视频 | 国产成人黄色片 | 黄视频免费在线观看 | 欧美一区二区影院 | 亚欧洲精品视频 | 欧美激情精品久久久久久变态 | 韩日欧美| 久久网免费视频 | 青娱乐国产盛宴 | 伊人99热| 免费看91 | 国产精品久久久久久久免费看 | 免费看特级毛片 | 国内偷拍一区二区 | 99超碰在线观看 | 性欧美大战久久久久久久免费观看 | 麻豆传媒在线观看视频 | 黄色高清片 | 麻豆md0049免费 | 奇米影视久久 | 91干干干 | 欧美性猛交xxxⅹ富婆 | av免费福利 | 成人h视频| 久久久天堂 | 蜜臀久久99精品久久久久久 |