广工计组实验f3正弦波发生器

这篇具有很好参考价值的文章主要介绍了广工计组实验f3正弦波发生器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实验目标:

本次实验的任务是设计一个正弦信号发生器,并且熟悉Quartus软件中软件功能自模块设计的使用,以软件中自带的ROM模块设计正弦信号发生器。

设计原理:

广工计组实验f3正弦波发生器

 

ROM数据:

广工计组实验f3正弦波发生器

 

LPM_ROM设计

广工计组实验f3正弦波发生器

实验代码:

LIBRARY IEEE;  --正弦信号发生器源文件

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY SINGT IS

    PORT ( CLK  : IN STD_LOGIC;              --信号源时钟

            DOUT : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) );--8位波形数据输出

END;

ARCHITECTURE DACC OF SINGT IS

COMPONENT data_rom --调用波形数据存储器LPM_ROM文件:data_rom.vhd声明

   PORT(address : IN STD_LOGIC_VECTOR (5 DOWNTO 0);--6位地址信号

    inclock : IN STD_LOGIC ;--地址锁存时钟

           q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) );

END COMPONENT;

SIGNAL Q1 : STD_LOGIC_VECTOR (5 DOWNTO 0); --设定内部节点作为地址计数器

    BEGIN

PROCESS(CLK )                           --LPM_ROM地址发生器进程

    BEGIN

IF CLK'EVENT AND CLK = '1' THEN  Q1<=Q1+1; --Q1作为地址发生器计数器

END IF;

END PROCESS;

u1 : data_rom PORT MAP(address=>Q1, q => DOUT,inclock=>CLK);--例化

END; 

rom.mif文件

LIBRARY ieee;

USE ieee.std_logic_1164.all;

LIBRARY altera_mf;

USE altera_mf.altera_mf_components.all;    --使用宏功能库中的所有元件

ENTITY data_rom IS

PORT (address : IN STD_LOGIC_VECTOR (5 DOWNTO 0);

             inclock          : IN STD_LOGIC ;

             q                : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) );

END data_rom;

ARCHITECTURE SYN OF data_rom IS

SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0);

COMPONENT altsyncram --例化altsyncram元件,调用了LPM模块altsyncram

GENERIC (                               --参数传递语句

              intended_device_family  : STRING; --类属参量数据类型定义

              width_a                 : NATURAL;

             widthad_a         : NATURAL;

             numwords_a               : NATURAL;

             operation_mode           : STRING;

      outdata_reg_a         : STRING;

             address_aclr_a         : STRING;

outdata_aclr_a         : STRING;

             width_byteena_a         : NATURAL;

 init_file : STRING;

   lpm_hint        : STRING;

lpm_type : STRING );

PORT ( clock0 : IN STD_LOGIC ;            --altsyncram元件接口声明

address_a: IN STD_LOGIC_VECTOR (5 DOWNTO 0);

q_a : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) );

END COMPONENT;

BEGIN

q    <= sub_wire0(7 DOWNTO 0);

altsyncram_component : altsyncram

GENERIC MAP ( intended_device_family => "Cyclone", --参数传递映射

width_a => 8,                              --数据线宽度8

widthad_a => 6,                            --地址线宽度6

numwords_a => 64,                          --数据数量64

operation_mode => "ROM",                   --LPM模式ROM

outdata_reg_a => "UNREGISTERED",           --输出无锁存

address_aclr_a => "NONE",                  --无异步地址清0

outdata_aclr_a => "NONE",                --无输出锁存异步清0

width_byteena_a => 1,               -- byteena_a输入口宽度1

init_file => "D:\USER\intelFPGA2\test\SINGT\rom.mif", --ROM初始化数据文件,此处已修改过

lpm_hint => "ENABLE_RUNTIME_MOD=YES, INSTANCE_NAME=NONE", 

lpm_type => "altsyncram" )                     --LPM类型

PORT MAP (clock0 => inclock, address_a => address,q_a => sub_wire0 );

END SYN;

原件图:

广工计组实验f3正弦波发生器

实验结果波形图:

第一组

广工计组实验f3正弦波发生器

第二组

广工计组实验f3正弦波发生器

实验心得总结:

本次实验做的是正弦波信号发生器,输出仿真波形。在本次实验中除了要设计VHDL文件以外,还有.bdf .mif文件,再写VHDL时,要注意文件路径不能写错。文章来源地址https://www.toymoban.com/news/detail-410943.html

到了这里,关于广工计组实验f3正弦波发生器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 单片机实验——简易波形发生器设计

    波形发生器广泛地应用于电子和通信等领域,是应用最广泛的电子仪器之一,本设计用51单片机以及DAC0832实现基本波形的输出,参考电路如下: 可以产生方波、三角波、正弦波、锯齿波等波形,用仿真的示波器查看。 用4个按键分别控制输出相应波形。 利用C51设计程序完成以

    2024年02月12日
    浏览(38)
  • 单片机实验七 NE555脉冲发生器实验(定时/计数器)

    1.熟悉实验软件和硬件,进行正确的接线; 2.1602显示脉冲频率,调节电位器可改变频率。 1.Keil uVision4 2.PZISP自动下载软件 3.HC6800S开发板 实验界面及跳线帽位置 NE555是一种应用特别广泛作用很大的的集成电路,属于小规模集成电路,在很多电子产品中都有应用。 NE555的作用是

    2024年02月06日
    浏览(42)
  • 计算机组成原理32位MIPS CPU设计实验(指令译码器电路设计 、时序发生器状态机设计、时序发生器输出函数、硬布线控制器)

    这次实验是32位MIPS CPU设计实验(单总线CPU-定长指令周期-3级时序),在头歌当中一共需要我们进行六道题的测试,分别为MIPS指令译码器设计,定长指令周期(时序发生FSM设计,时序发生器输出函数设计,硬布线控制器,单总线CPU设计),硬布线控制器组合逻辑单元。其中由于

    2024年02月02日
    浏览(29)
  • 山东大学计算机组成与设计实验七 节拍脉冲发生器时序电路

    山东大学计算机组成与设计实验七 节拍脉冲发生器时序电路实验, 山东大学计算机组成与设计实验, 山东大学计算机组成与设计实验报告, 计算机组成原理实验报告, 山东大学计算机组成原理实验报告 掌握节拍脉冲发生器的设计方法,理解节拍脉冲发生器的工作原理。 连续节

    2023年04月15日
    浏览(56)
  • 单片机——C51实验含Proteus仿真(AD转换器(数字电压表),DA转换器(波形发生器))

    分为两部分:AD转换器实现数字电压表,DA转换器实现波形发生器(在仿真部分详细说明) 所用到的原理图:  AD转换器实现数字电压表部分         需要打开main函数中LCD_init(),ADC(),display()三个注释其中电压的输出显示用到了LCD1602关于这部分详情见(96条消息) 单片机——

    2024年02月08日
    浏览(41)
  • 多路波形发生器的控制

            本次波形发生器,主要使用运算放大器、NE555以及一些其他的电阻电容器件来实现。整体电路图如下所示: 产生的三角波如下: 正弦波如下 方波如下: 运算放大器(Operational Amplifier,简称OP-AMP)是一种重要的电子放大器,常用于模拟电路和信号处理电路中。它是

    2024年02月09日
    浏览(34)
  • Verilog设计_序列发生器

    一种序列信号发生器设计,周期性进行输出。 目录 一、序列发生器 二、代码实现 序列信号是指在同步脉冲作用下循环地产生一串周期性的二进制信号,能产生这种信号的逻辑器件则称为序列发生器。在设计中有些时候会需用使用某些非常特殊的数字信号,一般情况下就将这

    2024年02月09日
    浏览(30)
  • Verilog | M序列发生器

    m序列 :最长线性反馈移位寄存器序列的简称。是一种反馈移位型结构的电路,由n个移位寄存器加异或反馈网络组成,反馈多项式为本原多项式,其最大序列长度 M = 2 n − 1 M = 2^n-1 M = 2 n − 1 。是一种伪随机序列、伪噪声码。 伪随机序列:不能预先确定但可以重复实现的序列

    2024年02月07日
    浏览(26)
  • proteus——555 PWM 发生器

    什么是 PWM 信号? 脉宽调制(PWM)是一种数字信号,最常用于控制电路。该信号在预定义的时间和速度内设置为高(5v)和低(0v)。信号保持高电平的时间称为\\\"导通时间\\\",信号保持低电平的时间称为\\\"关断时间\\\"。PWM 有两个重要参数,如下所述: PWM 的占空比: PWM信号保持高

    2024年02月07日
    浏览(25)
  • 基于uA741 PWM发生器

    一、实验要求 二、设计任务与要求 三、设计实验报告要求 一、实验要求 查阅资料,确定方案 用 Multisim 进行验证,并 打印电路、输出波形、元器件参数表 电路基于 uA741 集成运算放大器构成 要求电路 震荡频率为300Hz , 输出电压峰峰值为14v 二、设计任务与要求 设计一个占

    2024年02月11日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包