正弦波发生器的设计

  • 实验目的

1、熟悉Quartus环境,掌握创建工程的基本步骤。

2、熟练掌握VHDL的基本语法

  3、熟练掌握LPM_ROM的定制和使用

  4、熟练掌握SignalTap Il 的使用方法

二、实验原理

1、简易正弦信号发生器的结构由如下三个部分组成。如图6-25所示。

(1)计数器或地址信号发生器,这里根据以上 ROM 的参数,选择7位输出。

(2)正弦信号数据存储器 ROM (7位地址线,8位数据线),含有128个8位波形数据(一个正弦波形周期),即 LPM ROM :ROM78。

(3)8位 D / A (设此示例之实验器件选择DAC0832)。

d3da6ee2b84c4a7bb5585236384727f8.png

 

 

图6-25所示的信号发生器结构图中,顶层文件是原理图工程 SINGNT ,它包含两个部分: ROM的地址信号发生器,由7位计数器担任;正弦数据ROM,由LPM _ ROM 模块构成。地址发生器的时钟 CLK 的输入频率6与每周期的波形数据点数(在此选择128点),以及 DIA 输出的频率f的关系是:f=f6/128。图6-26是此正弦信号发生器的顶层设计原理图,图中包含作为 ROM 的地址信号发生器的7位计数器模块和 LMPROM 的ROM78模块。

46e617885e0b4018a8cfe5f715e4b078.png

 

 

三、实验器材

1.AX301开发板

2.Quartus17.1 Lite软件

四、实验内容和步骤

实验内容:设计正弦波发生器

实验步骤:①在Quartus中创建工程,工程名为SINGT。②先进行LPM_ROM的定制,生成rom68.mif,再新建VHDL文件,输入代码,对代码进行编译并改错。③代码编译通过后,进行功能仿真,观察图像是否符合预期。④配置引脚。⑤配置SignalTap Il,烧录入开发板。⑤观察现象是否正确,若不正确则检查修改,并重复上述步骤直至实验成功。

  • 实验数据与处理

1、rom68.mif数据展示

3e89aebf92d94e1abb8f2d5b1dd036f8.png26ba814ccde44617b82dadc483786fd3.png

 

 

 

2、代码展示:

2a8f36152b4a4df4b7e318337e35ca7a.png

 

 

3、仿真结果展示:

82d78338aeb94e18828640b6d3fb6b2b.png

 

 

4、SignalTap Il测试结果展示:

d0ada5beb87847aa8c94308a2abf3de9.png

 

 

测试结果说明正弦波发生器制作成功。

六、问题讨论

  如何进行LPM_ROM的定制和使用?

  可以先创建一个原理图工程文件SINGNT然后进入此工程的原理图编辑窗,双击后,进入元件放置对话框,单击Mega Wizard Plug - ln Manager 按钮。在弹窗内的左栏选择 Memory compiler下的 ROM :1-PORT项,设文件名为ROM78, FPGA 仍然是第4章中选用的 KX -4CE55核心板上的 Cyclone 4E系列的EP4CE55F484(EP4CE5SF23C8),文本表述选择 VHDL。正弦波数据初始化文件使用LAP_ROM中展示的数据即可。

 

  • 3
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值