FPGA NCOip核的使用及仿真(quartusii 13.1+modelsimse 10.5)

这篇具有很好参考价值的文章主要介绍了FPGA NCOip核的使用及仿真(quartusii 13.1+modelsimse 10.5)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

介绍了13.1版本的quartus中的NCOip核的破解、使用和仿真功能

文章目录

  • 前言
  • 一、quartus ip核
  • 、 nco ip核的配置
    • 1 ip核的配置
    • 2.代码编写
    • 3.联合仿真
  • 总结

前言

本文主要还介绍了13.1版本的quartus中的NCOip核的破解、使用仿真功能。适合正点原子开拓者等相同芯片系列产品的参考。


提示:以下是本篇文章正文内容,下面案例可供参考

一、quartus ip核

  使用nco ip核之前先要确认nco的ip核是否可用,可以通过quartus 的tool-license setup界面确认,可以正常使用的quartus如下:

nco ip核,fpga开发

使用nco、fft等ip核卡住的情况也是由于ip核没有购买导致,需要先得到许可,才可使用。

二、NCO ip核的使用

1. 首先调用NCO ip核

 创建一个新的ip核,名称命名为ip_nco

nco ip核,fpga开发

参数设置界面:(代码生成的是4.5khz,读者可自行修改输出频率,并在代码中修改,phi_inc_i)

nco ip核,fpga开发

执行栏,频率调制和相位调制取消勾选,输出数量选择1,最后一栏不需要修改,

nco ip核,fpga开发

 step2:两个都要勾选,语言注意是:verilog HDL,然后点击生成即可。

nco ip核,fpga开发

完成后可以看到file栏,存在ip_nco.qip文件,ip核栏也显示ip核,我们可以双击这个ip核来完成参数的修改并重新生成。

nco ip核,fpga开发nco ip核,fpga开发

2.  nco的例化

代码如下:

module nco(
		input                         sys_clk   ,//系统时钟
		input                         sys_rst_n ,//系统复位 低电平有效
		output     wire [9:0]         sin1      ,//4.5khz正弦波
		output                        sin1_vld   //数据输出有效标志
);

wire    [9:0]  sin1_do; 
assign  sin1 = sin1_do;
ip_nco     u_ip_nco
   (
			.clk                         ( sys_clk    ),
			.reset_n                     ( sys_rst_n  ),
			.clken                       ( 1'b1       ), //使能信号
			.phi_inc_i                   ( 32'd386547  ), //相位累加器K值
			.fsin_o                      ( sin1_do    ),
			.out_valid                   ( sin1_vld   )
    );
endmodule

仿真代码:

`timescale 1ns/1ns

module  tb_nco();

reg     sys_clk     ;
reg     sys_rst_n   ;

wire    [11:0]   sin1 ;
wire             sin1_vld      ;

initial
    begin
        sys_clk = 1'b1;
        sys_rst_n   <=  1'b0;
        #20
        sys_rst_n   <=  1'b1;
    end

always #10 sys_clk = ~sys_clk;

nco  nco_inst(

    .sys_clk       (sys_clk),
    .sys_rst_n     (sys_rst_n),

    .sin1          (sin1) ,
    .sin1_vld      (sin1_vld)


);

endmodule

 注意:将代码文件添加到工程后要先编译,找到ip核目录下的.vo文件,并添加到工程中才能仿真成功。

nco ip核,fpga开发nco ip核,fpga开发

 3、 联合仿真

RTL VIewer如下:

nco ip核,fpga开发

 modelsim:波形如下:

nco ip核,fpga开发

总结

机械自学转FPGA,后续还会讲一下nco配合fir滤波器的使用,希望大家点个赞,共同学习!文章来源地址https://www.toymoban.com/news/detail-808449.html

到了这里,关于FPGA NCOip核的使用及仿真(quartusii 13.1+modelsimse 10.5)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 基于FPGA的倒计时交通信号灯系统(使用quartusII)

    好久没更新,转眼大二下了,去年我的城市经历新冠疫情,我自己也沉迷于某csgo游戏开摆500小时,终于在上个月醒悟,正式开始fpga的学习,是跟这实验室的一位带工程师学习的,话不多说开始。 主要看着B站开源骚客和小梅哥的视频,开源骚客的视频我看完了,最近在看小梅

    2024年02月11日
    浏览(30)
  • vivado DDS IP核的使用及仿真

    参考:https://blog.csdn.net/weixin_45303812/article/details/123704440 新人第一次写文档,有错误的地方请大佬指点。 文档:Xilinx官网搜DDS Configuration 可配置参数 : 1.Configuration Options,有如下三种模式 Phase Generator and SIN/COS LUT (DDS): 相位和sin和cos的数据都是IP核自己产生 Phase Generator only:

    2023年04月15日
    浏览(31)
  • FPGA 学习分享-- 04 FIFO核的使用(2)

    写在前面: 博主耗费了四天!!!完成了FIFO核的第二部分。 在这个部分,博主遇到了很多问题,对着代码不停修改,询问学长和老师,好在终于没有报错,可以向大家交作业了!当然,我会在本文详细的帮助大家学习FIFO核的代码编写,带着大家剖析每个部分,尽可能地通俗

    2024年02月03日
    浏览(32)
  • electron+vue3全家桶+vite项目搭建【13.1】ipc通信的使用,主进程与渲染进程之间的交互

    electron项目常常由一个主进程和多个渲染进程构成,渲染进程之间是隔离的,而所有渲染进程都和主进程共享资源。 所有的渲染进程都是由主进程创建的 每个窗口都对应着一个渲染进程 所有的渲染进程共享一个主进程 我们主进程与渲染进程交互,渲染进程与渲染进程交互【

    2024年02月10日
    浏览(41)
  • FPGA学习笔记(二):clk IP核的使用

     1.打开VIVADO,点击IP Catalog   2. 搜索clk,选择Clocking Wizard   3. 配置参数 (1) 选择MMCM      (2) 设置主频50Mhz  (3) 设置输出的4个clk的参数,分别是50M,25M,100M,100M反相。Phase表示相位,0表示同相,180表示反相。      (3) 其他参数  4. 测试文件 其中clk_wiz的例化可参考模板。点击

    2024年02月12日
    浏览(41)
  • FPGA学习笔记(六): FIR IP核的使用

    1. 打开VIVADO,点击IP Catalog   2.搜索DDS,选择DDS Compiler,按照上节配置频率为3MHz和4MHz的DDS IP核。    这里注意不勾选Has Phase Out 这里注意不勾选Output TREADY     输出频率为3MHz 按照上述步骤,配置4MHz的DDS,同样不勾选Has Phase Out以及不勾选Output TREADY。 3. 点击IP Catalog,搜索mu

    2024年02月03日
    浏览(37)
  • FPGA学习笔记(五):DDS IP核的使用

     1. 打开VIVADO,点击IP Catalog    2.搜索DDS,选择DDS Compiler    3. 配置参数 (1) 设置主频频率 50MHz   (2) 选择sine,并且勾选Has Phase Out(相位输出)    (3) 勾选Output TREDAY  (4) 输入频率    (5) 同上述步骤,再加一个DDS IP核 4. 测试文件   5. 结果展示        

    2024年02月11日
    浏览(44)
  • quartusII的RTL仿真实现

      quartusII是一款集成式的EDA软件,主要用于FPGA的开发,包括了verilog代码编辑器、综合器、仿真器等,其还可以与modelsim实现联合仿真。 软件下载见:我的安装过程记录见博文,这是我转载的B站的视频以及我的下载记录,该视频我觉得讲得非常详细,非常适合入门,感谢!

    2024年04月27日
    浏览(24)
  • FPGA原理与结构——时钟IP核的使用与测试

    系列文章目录:FPGA原理与结构(0)——目录与传送门         本文介绍xilinx的时钟IP核 Clocking Wizard v6.0的具体使用与测试过程,在学习一个IP核的使用之前,首先需要对于IP核的具体参数和原理有一个基本的了解,具体可以参考: FPGA原理与结构——时钟IP核原理学习 https:/

    2024年02月09日
    浏览(28)
  • FPGA原理与结构(16)——时钟IP核的使用与测试

    系列文章目录:FPGA原理与结构(0)——目录与传送门         本文介绍xilinx的时钟IP核 Clocking Wizard v6.0的具体使用与测试过程,在学习一个IP核的使用之前,首先需要对于IP核的具体参数和原理有一个基本的了解,具体可以参考: FPGA原理与结构——时钟IP核原理学习 https:/

    2024年02月08日
    浏览(28)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包