基于FPGA的DDS在Vivado中仿真以及在ZYNQ7020上板的实现(3)——2020版本的部分问题补充

在本系列第一篇文章中,DDS的设计代码在2020版本之后的Vivado中,综合时可能会出现这样的错误:

在这里插入图片描述
这是因为2020版本Vivado对时钟信号上升沿下降沿的要求十分严格,之前在2019版本Vivado上,为了适配ZYNQ-7020硬件,就把程序的高低电平触发调整了一下,2019版本没有问题,但在2020版本就会报错

在2020版本会报错代码举例如下:
在这里插入图片描述
只需要如下图把rst_n的下降沿有效改成上升沿有效即可
在这里插入图片描述

代码一共有三处类似地方,全部改过来即可

下面附上完整的2020版本之后的DDS代码

module DDS(
  input clk,
  input rst_n,
  input [1:0] Mode_Sel,
  input [1:0] fword_sel, 
  output DA_clk,
  output reg [11:0] Data

);
  reg [31:0] r_fword;
  reg [11:0] r_pword;
  reg [31:0] cnt;
  wire [11:0] rom_addr;
  wire[11:0]  rom_addr1;
  wire[11:0]  rom_addr2;
  wire[11:0]  rom_addr3;
  wire[11:0]  rom_addr4;
  

  always@(posedge clk or posedge rst_n)
  begi
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值