打印

高手给解决一下

[复制链接]
1252|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
uiodh|  楼主 | 2012-9-30 22:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
麻烦一下  我用下面的代码实现(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

相关帖子

沙发
zaxy| | 2012-9-30 22:49 | 只看该作者
design2 my2(.x(b1),.y(y1),.z(temp2));   b1应该改成x1吧

使用特权

评论回复
评分
参与人数 1威望 +2 收起 理由
GoldSunMonkey + 2 谢谢分享
板凳
GoldSunMonkey| | 2012-10-1 11:43 | 只看该作者
design2 my2(.x(b1),.y(y1),.z(temp2));   b1应该改成x1吧
zaxy 发表于 2012-9-30 22:49
兄弟,你是对的

使用特权

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

本版积分规则

11

主题

95

帖子

0

粉丝