发 帖  
[问答] Modelsim SE 64 10.4中,代码编译可以通过没有报错或警告但是仿真的时候点击一次Run波形图仅运行一个单位时间
418 modelsim ModelSim SE
分享
//BCD.v
module BCD(A,B,Sum,Cout);
        input [3:0]A,B;
        output [3:0]Sum;
        output Cout;
//        reg [3:0]Sum;
//        reg Cout?
        wire [4:0]Temp;
        
        assign Temp = A + B;
        assign {Cout , Sum} = (Temp > 9 )? Temp +6 : Temp;
        
/*        always@(A or B)
                begin
                {Cout , Sum} = A + B;
                if({Cout , Sum} > 9 )
                        {Cout , Sum} = {Cout , Sum} + 6;
                end
*/
endmodule
//BCD_tb.v
`timescale 1ns/1ns   
module BCD_tb;      
  reg [3:0]addend1,addend2;   
  wire [3:0]sum;
  wire C;                     
  
  parameter DELAY = 100;      //
  integer i,j;
  
  BCD U1( .A(addend1),
          .B(addend2),
          .Cout(C),
          .Sum(sum)
          );   
               
         
  initial   
  begin
    addend1 = 0;  
    addend2 = 0;
    for(i = 0;i < 10;i = i + 1)
    for(j = 0;j < 10;j = j + 1)
    begin
      #DELAY addend1 = i;
             addend2 = j;
    end
  end
  
  initial
  $monitor($time,,,"%d + %d = %d , carry = %d ",addend1,addend2,sum,C);
  
endmodule



文件编译可以成功
Picture1.png

进入仿真界面
Picture2.png



点击Run 后
Picture3.png

运行一个单位时间后就停止了。。。。。
刚开始以为是自己代码写错了。但是从网上弄来很多别人的代码测试后,发现每个代码都是这样的。。。。。。
我在找是我软件出问题了需要重装,还是我的配置有问题。。。。

0
2018-12-2 13:11:56   评论 邀请回答
1个回答
仿真文件怎么写的呢
最佳答案
2018-12-2 13:11:57 1 评论

举报

1 条评论

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

提问题
关闭

站长推荐 上一条 /8 下一条

快速回复 返回顶部 返回列表