?? unsignmulti.v.bak
字號:
module UnsignMulti
(
SW,KEY,
LEDR,LEDG,HEX0,HEX1,HEX2,HEX3,HEX4,HEX5,HEX6,HEX7
);
input [17:0] SW;
input [3:0] KEY;
output [17:0] LEDR;
output [8:0] LEDG;
output [6:0] HEX0,HEX1;
//output [6:0] HEX1;
output [6:0] HEX2;
output [6:0] HEX3;
output [6:0] HEX4;
output [6:0] HEX5;
output [6:0] HEX6;
output [6:0] HEX7;
wire [11:0] DecVal;
wire [11:0] DecVal1;
wire [11:0] DecVal2;
wire [7:0] Ans;
HEX3 = 7'b1111111;
BinMulti BM1(SW[13:10],SW[3:0],Ans);
BinToDec BTD1(SW[3:0],DecVal1);
BinToDec BTD2(SW[13:10],DecVal2);
BinToDec BTD0(Ans,DecVal);
BinDis BD1(SW[13:10],KEY[0],SW[17],LEDR[13:10]);
BinDis BD2(SW[3:0],KEY[0],SW[17],LEDR[3:0]);
BinDis BD3(Ans,KEY[0],SW[17],LEDG[7:0]);
defparam BD3.WIDTH = 8;
DecDis DD2(DecVal[11:8],KEY[0],SW[17],HEX2);
DecDis DD1(DecVal[7:4],KEY[0],SW[17],HEX1);
DecDis DD0(DecVal[3:0],KEY[0],SW[17],HEX0);
DecDis DD10(DecVal1[7:4],KEY[0],SW[17],HEX5);
DecDis DD11(DecVal1[3:0],KEY[0],SW[17],HEX4);
DecDis DD20(DecVal2[7:4],KEY[0],SW[17],HEX7);
DecDis DD21(DecVal2[3:0],KEY[0],SW[17],HEX6);
endmodule
module BinMulti
(
M1,
M2,
Result
);
input [3:0] M1;
input [3:0] M2;
output [7:0] Result;
assign Result = M1 * M2;
endmodule
module BinDis
(
BinVal,clc,rst,LedVal
);
parameter WIDTH = 4;
input [WIDTH-1:0] BinVal;
input clc;
input rst;
output reg [WIDTH-1:0] LedVal;
always @(posedge clc or posedge rst)
begin
if (rst)
LedVal = BinVal ^ BinVal;
else
LedVal = BinVal;
end
endmodule
module BinToDec
(
BinVal,DecVal
);
input [7:0] BinVal;
output [11:0] DecVal;
assign DecVal[11:8] = BinVal / 7'b1100100;
assign DecVal[7:4] = (BinVal % 7'b1100100) / 4'b1010;
assign DecVal[3:0] = (BinVal % 7'b1100100) % 4'b1010;
endmodule
module DecDis
(
DecVal,clc,rst,HexVal
);
input [3:0] DecVal;
input clc;
input rst;
output reg [6:0] HexVal;
always @(posedge clc or posedge rst)
begin
if (rst)
HexVal = 7'b1111111;
else
case (DecVal)
4'h0: HexVal = 7'b 1000000;
4'h1: HexVal = 7'b 1111001;
4'h2: HexVal = 7'b 0100100;
4'h3: HexVal = 7'b 0110000;
4'h4: HexVal = 7'b 0011001;
4'h5: HexVal = 7'b 0010010;
4'h6: HexVal = 7'b 0000010;
4'h7: HexVal = 7'b 1111000;
4'h8: HexVal = 7'b 0000000;
4'h9: HexVal = 7'b 0010000;
4'ha: HexVal = 7'b 0001000;
4'hb: HexVal = 7'b 0000011;
4'hc: HexVal = 7'b 1000110;
4'hd: HexVal = 7'b 0100001;
4'he: HexVal = 7'b 0000110;
4'hf: HexVal = 7'b 0001110;
endcase
end
endmodule
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -