appxB - ECEn/CS 224 Appendix B Homework Solutions B.1...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
Last updated: 10/24/2006 ECEn/CS 224 Appendix B Homework Solutions B.1 Implement a 4:1 MUX using a single dataflow assignment statement involving only concatenation, replication, and the operators for AND, OR, and NOT. module mux41(out, in0, in1, in2, in3, sel); input in0, in1, in2, in3; input [1:0] sel; output out; assign out = (in0 & (~sel[1]) & (~sel[0])) | (in1 & (~sel[1]) & sel[0] ) | (in2 & sel[1] & (~sel[0])) | (in3 & sel[1] & sel[0] ); endmodule B.2 Implement a 4:1 MUX using a single dataflow assignment statement and the ?: operator. module mux41(out, in0, in1, in2, in3, sel); input in0, in1, in2, in3; input [1:0] sel; output out; assign out = (sel == 2’b00)? in0 : (sel == 2’b01)? in1 : (sel == 2’b10)? in2 : in3; endmodule B.3 Repeat the previous 2 problems but parameterize your designs for any size operands. module mux41n_1(out, in0, in1, in2, in3, sel); parameter WID = 16; input [WID-1:0] in0, in1, in2, in3; input [1:0] sel; output [WID-1:0] out; assign out = (in0 & {WID{~sel[1]}} & {WID{~sel[0]}}) |
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 09/02/2010 for the course ELECTRICAL 360 taught by Professor Schultz during the Spring '10 term at BYU.

Page1 / 3

appxB - ECEn/CS 224 Appendix B Homework Solutions B.1...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online