// Verilog code for 32:1 Multiplexer using 16:1 MUX and 2:1 MUX
`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: RED-BLUE
// Engineer:
//
// Create Date: 17:38:04 11/09/2016
// Designer Name: Madhu Krishna
// Module Name: mux32_1_u_mux16_1
// Project Name:
// Target Devices:
// Tool versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//////////////////////////////////////////////////////////////////////////////////
module mux32_1_u_mux16_1(
input_d0,
input_d1,
input_d2,
input_d3,
input_d4,
input_d5,
input_d6,
input_d7,
input_d8,
input_d9,
input_d10,
input_d11,
input_d12,
input_d13,
input_d14,
input_d15,
input_d16,
input_d17,
input_d18,
input_d19,
input_d20,
input_d21,
input_d22,
input_d23,
input_d24,
input_d25,
input_d26,
input_d27,
input_d28,
input_d29,
input_d30,
input_d31,
sel_0,
sel_1,
sel_2,
sel_3,
sel_4,
output_y);
// INPUTS
input input_d0;
input input_d1;
input input_d2;
input input_d3;
input input_d4;
input input_d5;
input input_d6;
input input_d7;
input input_d8;
input input_d9;
input input_d10;
input input_d11;
input input_d12;
input input_d13;
input input_d14;
input input_d15;
input input_d16;
input input_d17;
input input_d18;
input input_d19;
input input_d20;
input input_d21;
input input_d22;
input input_d23;
input input_d24;
input input_d25;
input input_d26;
input input_d27;
input input_d28;
input input_d29;
input input_d30;
input input_d31;
input sel_0;
input sel_1;
input sel_2;
input sel_3;
input sel_4;
// OUTPUT
output output_y;
wire [1:0] mux_com_out;
// Declaration of 32:1 Multiplexer
mux16_1_code U_MUX16_1_1 (
.input_d0(input_d0),
.input_d1(input_d1),
.input_d2(input_d2),
.input_d3(input_d3),
.input_d4(input_d4),
.input_d5(input_d5),
.input_d6(input_d6),
.input_d7(input_d7),
.input_d8(input_d8),
.input_d9(input_d9),
.input_d10(input_d10),
.input_d11(input_d11),
.input_d12(input_d12),
.input_d13(input_d13),
.input_d14(input_d14),
.input_d15(input_d15),
.sel_0(sel_0),
.sel_1(sel_1),
.sel_2(sel_2),
.sel_3(sel_3),
.output_y(mux_com_out[0])
);
mux16_1_code U_MUX16_1_2 (
.input_d0(input_d16),
.input_d1(input_d17),
.input_d2(input_d18),
.input_d3(input_d19),
.input_d4(input_d20),
.input_d5(input_d21),
.input_d6(input_d22),
.input_d7(input_d23),
.input_d8(input_d24),
.input_d9(input_d25),
.input_d10(input_d26),
.input_d11(input_d27),
.input_d12(input_d28),
.input_d13(input_d29),
.input_d14(input_d30),
.input_d15(input_d31),
.sel_0(sel_0),
.sel_1(sel_1),
.sel_2(sel_2),
.sel_3(sel_3),
.output_y(mux_com_out[1])
);
// MUX2_1 Instantiation Template
mux2_1_code U_MUX2_1 (
.input_a(mux_com_out[0]),
.input_b(mux_com_out[1]),
.sel_0(sel_4),
.output_y(output_y)
);
endmodule
`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: RED-BLUE
// Engineer:
//
// Create Date: 17:38:04 11/09/2016
// Designer Name: Madhu Krishna
// Module Name: mux32_1_u_mux16_1
// Project Name:
// Target Devices:
// Tool versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//////////////////////////////////////////////////////////////////////////////////
module mux32_1_u_mux16_1(
input_d0,
input_d1,
input_d2,
input_d3,
input_d4,
input_d5,
input_d6,
input_d7,
input_d8,
input_d9,
input_d10,
input_d11,
input_d12,
input_d13,
input_d14,
input_d15,
input_d16,
input_d17,
input_d18,
input_d19,
input_d20,
input_d21,
input_d22,
input_d23,
input_d24,
input_d25,
input_d26,
input_d27,
input_d28,
input_d29,
input_d30,
input_d31,
sel_0,
sel_1,
sel_2,
sel_3,
sel_4,
output_y);
// INPUTS
input input_d0;
input input_d1;
input input_d2;
input input_d3;
input input_d4;
input input_d5;
input input_d6;
input input_d7;
input input_d8;
input input_d9;
input input_d10;
input input_d11;
input input_d12;
input input_d13;
input input_d14;
input input_d15;
input input_d16;
input input_d17;
input input_d18;
input input_d19;
input input_d20;
input input_d21;
input input_d22;
input input_d23;
input input_d24;
input input_d25;
input input_d26;
input input_d27;
input input_d28;
input input_d29;
input input_d30;
input input_d31;
input sel_0;
input sel_1;
input sel_2;
input sel_3;
input sel_4;
// OUTPUT
output output_y;
wire [1:0] mux_com_out;
// Declaration of 32:1 Multiplexer
mux16_1_code U_MUX16_1_1 (
.input_d0(input_d0),
.input_d1(input_d1),
.input_d2(input_d2),
.input_d3(input_d3),
.input_d4(input_d4),
.input_d5(input_d5),
.input_d6(input_d6),
.input_d7(input_d7),
.input_d8(input_d8),
.input_d9(input_d9),
.input_d10(input_d10),
.input_d11(input_d11),
.input_d12(input_d12),
.input_d13(input_d13),
.input_d14(input_d14),
.input_d15(input_d15),
.sel_0(sel_0),
.sel_1(sel_1),
.sel_2(sel_2),
.sel_3(sel_3),
.output_y(mux_com_out[0])
);
mux16_1_code U_MUX16_1_2 (
.input_d0(input_d16),
.input_d1(input_d17),
.input_d2(input_d18),
.input_d3(input_d19),
.input_d4(input_d20),
.input_d5(input_d21),
.input_d6(input_d22),
.input_d7(input_d23),
.input_d8(input_d24),
.input_d9(input_d25),
.input_d10(input_d26),
.input_d11(input_d27),
.input_d12(input_d28),
.input_d13(input_d29),
.input_d14(input_d30),
.input_d15(input_d31),
.sel_0(sel_0),
.sel_1(sel_1),
.sel_2(sel_2),
.sel_3(sel_3),
.output_y(mux_com_out[1])
);
// MUX2_1 Instantiation Template
mux2_1_code U_MUX2_1 (
.input_a(mux_com_out[0]),
.input_b(mux_com_out[1]),
.sel_0(sel_4),
.output_y(output_y)
);
endmodule
Id kaise khulegi
ReplyDeletetestbench kaha hai
Deletethank you
ReplyDelete