正弦波ROM设计a首先通过mif文件来产生正弦波注意:在生成正弦波的时候要注意与si
_rom中的数据一致。即位DEPTH1024WIDTH10这样才能保证在最后的输出中能够有完整的正弦波图形输出。
存盘并命名为si
_rommifbLPM_ROM的订制:按ADDER32的产生方法来产生LMP_ROM,在宏模块选择中选“MemoryComplier”中“ROM1PORT”项依次设定地址线与数据线
511
f的位宽均为十位,最后产生LMP_ROM。
三、DDS信号发生器原理图
原理图共分为三大部分:相位累加器,相位调制器,正弦ROM查找表。1相位累加器
相位累加器是DDS的核心,完成相位累加的过程其输入可以称为频率字输入在输入时增加一个寄存器可以使频率字改变时不会干扰相位累加器的正常工作
611
f2相位调制器相位调制器接受相位累加器的相位输出,加上一个相位偏移值,
可用于信号的相位调制。加一个寄存器可用于信号的同步保持。如图10所示3正弦ROM查找表
正弦ROM的输入是相位调制器的输出,即ROM的地址值,输出送往DAC转化为模拟信号。
四、仿真结果
五、硬件调试结果及分析
调试、仿真成功后进行硬件调试阶段,在“Assig
me
t”菜单下选择
“Device”项进行器件选择Cyclo
e中的EP1C12Q240C8器件,在
“Assig
me
t”菜单下选择”pi
s”项,进行管脚锁定。
键1(PIO0)B17233键2(PIO1)B16234
DAC2217DAC3219
711
f键3(PIO2)B15235键4(PIO3)B14236键5(PIO4)F17237键6(PIO5)F16238键7(PIO6)F15239键8(PIO7)F14240Clock0clk28
DAC4223DAC5225DAC6226DAC7224DAC8222DAC9218
管脚锁定后再次进行编译,成功后选择“tools”菜单下“programmer”项进行下载。用示波器进行波形观察。选择模式0。键1至键4用来控制频率字的输入,键5至键8控制相位字的输入,clock0选择20MHz。按动键1至键4调节频率子输入,键5至键8调节相位字输入
结果如图所示当改变频率字时波形变化如图所示
当改变相位字时波形如所示
811
f当同时改变频率字与相位字时,波形如图所示
硬件调试结果分析:该调试的结果满足了实验的要求,验证了DDS信号发生器的功能,即能够调节频率与相位。
六、心得与体会通过这次的课程设计,我复习并进一步熟练了QuartusⅡ的基本功能和操作,掌握了VerilogHDL语言的设计输入、编译、仿真和调试等过程。我的几点体会如下:首先,在编写顶层文件的过程中,要注意保证设计的芯片与书上要求的一致,这样才能减少在编译过程中r