需 Import pin assignments DE2_115_pin_assignments
// Ch04 mux4_1.v
// 4 對 1 多工器 (閘層敘述)
/*
module mux4_1 (A, B, C, D, S1, S0, Y);
input A,B,C,D,S1,S0; // // 4位元輸入 2條選擇線
output Y; // 一位元輸出
bufif1 (CD, D, S0);
bufif0 (CD, C, S0);
bufif1 (AB, B, S0);
bufif0 (AB, A, S0);
bufif1 ( Y, CD, S1);
bufif0 ( Y, AB, S1);
endmodule */
//=============================================
//gate level Full Adder
//=============================================
module mux_4x1 (SW, LEDR, LEDG , CLOCK_50 ,KEY
,HEX0 ,HEX1 ,HEX2,HEX3 ,HEX4 ,HEX5 ,HEX6 ,HEX7 );
input [17:0] SW; // toggle switches
input [3:0] KEY; // Push bottom
input CLOCK_50; //Clock 27MHz , 50Mhz
output [17:0] LEDR; // red LEDS
output [8:0] LEDG; // green LEDs
output [6:0] HEX0,HEX1,HEX2,HEX3,HEX4,HEX5,HEX6,HEX7 ; //7-segment display
assign HEX0=7'b111_1111; //off 7-segment Display
assign HEX1=7'b111_1111;
assign HEX2=7'b111_1111; //off 7-segment Display
assign HEX3=7'b111_1111;
assign HEX4=7'b111_1111;
assign HEX5=7'b111_1111;
assign HEX6=7'b111_1111;
assign HEX7=7'b111_1111;
assign A=SW[0]; //4位元輸入 2條選擇線
assign B=SW[1]; //
assign C=SW[2]; //
assign D=SW[3]; //
assign S0=SW[4]; //2條選擇線
assign S1=SW[5]; //2條選擇線
bufif1 (CD, D, S0);
bufif0 (CD, C, S0);
bufif1 (AB, B, S0);
bufif0 (AB, A, S0);
bufif1 ( Y, CD, S1);
bufif0 ( Y, AB, S1);
assign LEDR[0] = Y;
endmodule
沒有留言:
張貼留言