Python
Build a 4x2 multiplier, which takes six inputs - the 4 bits of the first factor: x3, x2, x1, and x the 2 bits of the second factor: y1 and yo and produces as outputs the six bits of the product: p5, p4, p3, p2, pl, and po. Your circuit should perform the computation shown below: x3 x2 x1 x0 y1 y0 p5 p4 p3 p2 pl po You circuit should employ the "elementary school" binary multiplication algorithm that we discussed in lecture. More specifically, you need to compute two partial products: the product of the top number (x3 x2 x1 x0) with the bit 30, and the product of the top number with the bit yl. You then need to add these partial products together in the appropriate way This circuit should not be built using the minterm expansion principle. Rather, it should be built by combining one or more instances of your 4x1 Multiplier and your 4-Bit Ripple-Carry Adder. See below for information about adding those components to your circuit. Notes Build a 4x2 multiplier, which takes six inputs - the 4 bits of the first factor: x3, x2, x1, and x the 2 bits of the second factor: y1 and yo and produces as outputs the six bits of the product: p5, p4, p3, p2, pl, and po. Your circuit should perform the computation shown below: x3 x2 x1 x0 y1 y0 p5 p4 p3 p2 pl po You circuit should employ the "elementary school" binary multiplication algorithm that we discussed in lecture. More specifically, you need to compute two partial products: the product of the top number (x3 x2 x1 x0) with the bit 30, and the product of the top number with the bit yl. You then need to add these partial products together in the appropriate way This circuit should not be built using the minterm expansion principle. Rather, it should be built by combining one or more instances of your 4x1 Multiplier and your 4-Bit Ripple-Carry Adder. See below for information about adding those components to your circuit. Notes