打印

verilog简单问题求助.

[复制链接]
1563|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
resxpl|  楼主 | 2013-2-19 23:19 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
module counter1(nrst, clk, load, din, dout);
        parameter N = 2;
        input nrst;
        input clk;
        input load;
        input [N-1 : 0] din;
        output [N-1 : 0] dout;
        reg [N-1 : 0] dout;
       
        always @(posedge clk or negedge nrst)
        begin
                if(nrst == 0)
                        dout <= 0;
                else
                begin
                        if(load)
                                dout <= din;
                        else
                                dout <= dout + 1;
                end
        end
endmodule


图中load没起作用, 是什么原因呢?

相关帖子

沙发
nm2012| | 2013-2-20 00:28 | 只看该作者
always后面的@里要加load,不知道对不对

使用特权

评论回复
板凳
Backkom80| | 2013-2-20 08:33 | 只看该作者
本帖最后由 Backkom80 于 2013-2-20 08:37 编辑

代码没有问题,我不清楚是不是你仿真的有问题,反正我仿真了下,是正确的。如下图:

00.JPG (31.24 KB )

00.JPG

使用特权

评论回复
评分
参与人数 1威望 +3 收起 理由
resxpl + 3 很给力!
地板
jlass| | 2013-2-20 09:43 | 只看该作者
同意2楼的看法,你的逻辑不完整,必须在always后面的@里要加load

使用特权

评论回复
5
rosedao| | 2013-2-20 09:53 | 只看该作者
这是时序逻辑,不需要加load信号,逻辑上没问题,估计还是楼主其他地方出差错了

使用特权

评论回复
6
ifpga| | 2013-2-20 12:58 | 只看该作者
代码应该是没问题的,不用加 load

使用特权

评论回复
7
resxpl|  楼主 | 2013-2-20 20:17 | 只看该作者
如果加load会报错的.

使用特权

评论回复
8
resxpl|  楼主 | 2013-2-20 20:39 | 只看该作者


:victory::victory::victory:好了. 可能是仿真软件的问题.
重建一个工程就好了. 诡异.

使用特权

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

本版积分规则

3

主题

156

帖子

1

粉丝