关于Verilog HDL的一个程序~~我是初学者,有一个程序看不懂,想用Quartus ii 仿真,但是不能实现。
modulesubtracter_4(X,Y,BIN,D,BOUT);output[3:0]D;outputBOUT;input[3:0]X;input[3:0]Y;in...
module subtracter_4(
X,Y,BIN,
D,BOUT
);
output [3:0] D;
output BOUT;
input [3:0] X;
input [3:0] Y;
input BIN ;
reg [3:0] D;
reg BOUT;
wire wire_1,
wire_2,
wire_3;
subtracter_1
U1(.X(X[3]),.Y(Y[3]),.BIN(wire_3),.D(D[3]),.BOUT(BOUT)),
U2(.X(X[2]),.Y(Y[2]),.BIN(wire_2),.D(D[2]),.BOUT(wire_3)),
U3(.X(X[1]),.Y(Y[1]),.BIN(wire_1),.D(D[1]),.BOUT(wire_2)),
U4(.X(X[0]),.Y(Y[0]),.BIN(BIN),.D(D[0]),.BOUT(wrie_1));
endmodule
麻烦高手帮忙看下~~谢谢了~~ 展开
X,Y,BIN,
D,BOUT
);
output [3:0] D;
output BOUT;
input [3:0] X;
input [3:0] Y;
input BIN ;
reg [3:0] D;
reg BOUT;
wire wire_1,
wire_2,
wire_3;
subtracter_1
U1(.X(X[3]),.Y(Y[3]),.BIN(wire_3),.D(D[3]),.BOUT(BOUT)),
U2(.X(X[2]),.Y(Y[2]),.BIN(wire_2),.D(D[2]),.BOUT(wire_3)),
U3(.X(X[1]),.Y(Y[1]),.BIN(wire_1),.D(D[1]),.BOUT(wire_2)),
U4(.X(X[0]),.Y(Y[0]),.BIN(BIN),.D(D[0]),.BOUT(wrie_1));
endmodule
麻烦高手帮忙看下~~谢谢了~~ 展开
1个回答
展开全部
你这个是用4个一位减法器搭成的4位全减器吧
subtracter_1
U1(.X(X[3]),.Y(Y[3]),.BIN(wire_3),.D(D[3]),.BOUT(BOUT)),
U2(.X(X[2]),.Y(Y[2]),.BIN(wire_2),.D(D[2]),.BOUT(wire_3)),
U3(.X(X[1]),.Y(Y[1]),.BIN(wire_1),.D(D[1]),.BOUT(wire_2)),
U4(.X(X[0]),.Y(Y[0]),.BIN(BIN),.D(D[0]),.BOUT(wrie_1));
这部分就是例化或者说调用一位减法器,可是你有一位减法器的程序吗?如果没有的话这么调用是无法识别的。
一位二进制减法器可以看成一位二进制加法器,只不过减数取补码就行了。
subtracter_1
U1(.X(X[3]),.Y(Y[3]),.BIN(wire_3),.D(D[3]),.BOUT(BOUT)),
U2(.X(X[2]),.Y(Y[2]),.BIN(wire_2),.D(D[2]),.BOUT(wire_3)),
U3(.X(X[1]),.Y(Y[1]),.BIN(wire_1),.D(D[1]),.BOUT(wire_2)),
U4(.X(X[0]),.Y(Y[0]),.BIN(BIN),.D(D[0]),.BOUT(wrie_1));
这部分就是例化或者说调用一位减法器,可是你有一位减法器的程序吗?如果没有的话这么调用是无法识别的。
一位二进制减法器可以看成一位二进制加法器,只不过减数取补码就行了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询