FPGA|CPLD|ASIC论坛
400万+工程师在用
华为|鸿蒙开发者日
直播报名
400万+工程师在用
华为|鸿蒙开发者日
直播报名

study0558

12年用户 4经验值
私信 关注
[问答]

仿真不对,麻烦高手给解决一下

2008-12-11 19:11

麻烦一下  我用下面的代码实现(a1+b1)+(x1*y1),主要是想编小代码,熟悉一下基本的语法。但怎么功能仿真不对呢 麻烦高手给我看一下
module alldesign(a1,b1,x1,y1,out);//want to design (a1+b1)+x1*y1
   input [2:0] a1,b1,x1,y1;
  output [5:0] out;
  wire [5:0] out;
  wire [3:0] temp1; wire [5:0] temp2;
  design1 my1(.a(a1),.b(b1),.c(temp1));
  design2 my2(.x(b1),.y(y1),.z(temp2));

   assign out[5:0]=temp1[3:0]+temp2[5:0];
endmodule



module design1(a,b,c);
  input [2:0] a,b;
  output [3:0] c;
  reg [3:0] c;

  always @(a,b)
    c[3:0]=a[2:0]+b[2:0];
endmodule
module design2(x,y,z);
  input [2:0] x,y;
  output [5:0] z;
  reg [5:0] z;

  always @(x,y)
    z[5:0]=x[2:0]*y[2:0];
endmodule
   下面是仿真结果
   0  a1=0,b1=0,x1=0,y1=0,out= 0
#                    5  a1=2,b1=1,x1=1,y1=3,out= 6
#                   10  a1=2,b1=4,x1=4,y1=3,out=18
#                   15  a1=3,b1=3,x1=3,y1=3,out=15
#                   20  a1=2,b1=5,x1=3,y1=3,out=22
#                   25  a1=2,b1=4,x1=2,y1=1,out=10
#                   30  a1=6,b1=6,x1=2,y1=3,out=30
#                   35  a1=2,b1=5,x1=7,y1=1,out=12

更多回帖

打开APP