打印
[FPGA]

fpga的计数回0出现异常

[复制链接]
636|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 宝挖小子 于 2020-7-16 17:14 编辑

各位大神,如题,我要做一个计数器复位动作,但是有时会出现下图 所示异常,这是为啥啊?代码哪里有问题,怎么改啊?

代码如下:

always @(negedge clk_10mhz) begin
                if(rst) begin
                        s_resync_cnt<=24'd0;
                        s_resync<=1'd1;
                end else begin
                        if ((!s_pps_pos[0] && s_pps) ) begin                         //或者s_pps上升沿
                                if(s_resync_cnt<24'd999_0000 && s_resync_cnt>24'd0)begin               
                                        s_resync<=1'd1;
                                end else begin
                                        s_resync<=1'd0;                        
                                end        
                                s_resync_cnt<=24'd0;
                        end else begin                        
                                s_resync_cnt<=s_resync_cnt+24'd1;
                                if(s_resync_cnt<(24'd1000_5000)) begin                                
                                        s_resync<=1'd0;                                                      
                                end else if(s_resync_cnt<(24'd1000_5020)) begin     //rst state        
                                        s_resync<=1'd1;
                                end else begin
                                        s_resync_cnt<=(24'd1000_5021);
                                        s_resync<=1'd0;
                                end
                        end
                end
    end
        
        always @(posedge clk_10mhz) begin
                 if (rst) begin
                        s_pps_pos<=3'd0;
        end else begin
                        s_pps_pos[0]<=s_pps_pos[1];
                        s_pps_pos[1]<=s_pps_pos[2];
                        s_pps_pos[2]<=s_pps;
        end
    end

无标题.png (108.12 KB )

实际抓的波形

实际抓的波形

使用特权

评论回复

相关帖子

沙发
宝挖小子|  楼主 | 2020-7-17 08:36 | 只看该作者
没人吗?自己顶一下

使用特权

评论回复
板凳
seiro| | 2020-7-17 12:08 | 只看该作者

这两个赋值有可能同时满足  不知道被综合成啥了。  最好避免这种情况。

使用特权

评论回复
地板
宝挖小子|  楼主 | 2020-7-17 15:18 | 只看该作者
seiro 发表于 2020-7-17 12:08
这两个赋值有可能同时满足  不知道被综合成啥了。  最好避免这种情况。
...

改了的,也没效果啊,测试中把下面画圈的屏蔽了就不会出现随机的错误值了,具体原因不知道是啥

使用特权

评论回复
5
宝挖小子|  楼主 | 2020-7-17 15:19 | 只看该作者
感觉这个应该是一个很常见的写法和处理方式啊

使用特权

评论回复
6
宝挖小子|  楼主 | 2020-7-21 15:37 | 只看该作者
用的是Quartus II 13.0编译的,目标芯片:EP4CE10F17

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

63

帖子

0

粉丝