天天看点

基于fpga的dds设计报告

dds设计报告

大马猴

2019-3-31

版本目录:

版本 :V1.0 作者: 大马猴

说明 :初版 备注

一.dds设计需求

首先使用matalab生成可供ROM初始化的mif文件,能够提供方波、锯齿波、三角波、正弦波。通过四个不同的按键,可以实现切换波形的类型、增加波形的频率、减小波形的频率、增加振幅,四种功能。另外,每次按键按下,蜂鸣器响一声进行响应。数码管作为显示模块,选择的是6位七段共阳数码管,最高位用1/2/3/4表示选择的波形种类,次高位显示0~7不同档位的振幅大小,剩下四位作为频率大小显示,单位是百赫兹。我们将每次加减的长度设置为100HZ,初始频率也是100HZ,低于此数值便不能进行减操作,上限为1Mhz。特殊要求:当处于某一状态时,此时切换信号输入,要保持状态的频率等参数不变,当状态循环一圈后,再次回到此状态时,参数不复位,保持原来的参数。

二.顶层设计

基于fpga的dds设计报告

三.架构图

首先用IP核的锁相环生成50Mhz的频率,pll_locked作为全局的内部复位信号。

基于fpga的dds设计报告

这里由于没有用visio,可能有一点小瑕疵,在show模块里面还包括bin转bcd模块,转成bcd后,再输入数码管模块里面进行显示(代码均在我主页里面)。大致的流程思想图如上所述,用verilog搭建顶层,然后进行分层挨着进行描述就可以了。

仿真结果:

基于fpga的dds设计报告

程序下载地址:https://download.csdn.net/download/weiyunguan8611/11072859