sudp_shift.v 14.5 KB
/*
*************************************************************************
*									*
*               Copyright (C) 1994, Silicon Graphics, Inc.		*
*									*
*  These coded instructions, statements, and computer programs  contain	*
*  unpublished  proprietary  information of Silicon Graphics, Inc., and	*
*  are protected by Federal copyright  law.  They  may not be disclosed	*
*  to  third  parties  or copied or duplicated in any form, in whole or	*
*  in part, without the prior written consent of Silicon Graphics, Inc.	*
*									*
*************************************************************************
*/

/*
*************************************************************************
*									*
*  Project Reality							*
*									*
*  module:	sudp_shift.v						*
*  description:	32 bit right shift from 64 (really 63) bit input.	*
*									*
*  designer:	Phil Gossett						*
*  date:	4/7/95							*
*									*
*************************************************************************
*/

// $Id: sudp_shift.v,v 1.1 2002/03/28 00:26:13 berndt Exp $

module sudp_shift (a, b, z, s);

input [31:0] a;
input [31:0] b;
output [31:0] z;
input [4:0] s;

wire [4:0] sa;
wire [4:0] sb;
wire [4:0] sc;
wire [4:0] sd;

ni01d5  nis0a (.i(s[0]), .z(sa[0]));
ni01d5  nis1a (.i(s[1]), .z(sa[1]));
ni01d5  nis2a (.i(s[2]), .z(sa[2]));
ni01d5  nis3a (.i(s[3]), .z(sa[3]));
ni01d5  nis4a (.i(s[4]), .z(sa[4]));
ni01d5  nis0b (.i(s[0]), .z(sb[0]));
ni01d5  nis1b (.i(s[1]), .z(sb[1]));
ni01d5  nis2b (.i(s[2]), .z(sb[2]));
ni01d5  nis3b (.i(s[3]), .z(sb[3]));
ni01d5  nis4b (.i(s[4]), .z(sb[4]));
ni01d5  nis0c (.i(s[0]), .z(sc[0]));
ni01d5  nis1c (.i(s[1]), .z(sc[1]));
ni01d5  nis2c (.i(s[2]), .z(sc[2]));
ni01d5  nis3c (.i(s[3]), .z(sc[3]));
ni01d5  nis4c (.i(s[4]), .z(sc[4]));
ni01d5  nis0d (.i(s[0]), .z(sd[0]));
ni01d5  nis1d (.i(s[1]), .z(sd[1]));
ni01d5  nis2d (.i(s[2]), .z(sd[2]));
ni01d5  nis3d (.i(s[3]), .z(sd[3]));
ni01d5  nis4d (.i(s[4]), .z(sd[4]));

wire [62:0] m5b;

assign m5b = {b[30:0],a[31:0]};

wire [46:0] m4b;

mx21d1h mx4b0  (.z(m4b[0]),  .i0(m5b[0]),  .i1(m5b[16]), .s(sa[4]));
mx21d1h mx4b1  (.z(m4b[1]),  .i0(m5b[1]),  .i1(m5b[17]), .s(sa[4]));
mx21d1h mx4b2  (.z(m4b[2]),  .i0(m5b[2]),  .i1(m5b[18]), .s(sa[4]));
mx21d1h mx4b3  (.z(m4b[3]),  .i0(m5b[3]),  .i1(m5b[19]), .s(sa[4]));
mx21d1h mx4b4  (.z(m4b[4]),  .i0(m5b[4]),  .i1(m5b[20]), .s(sa[4]));
mx21d1h mx4b5  (.z(m4b[5]),  .i0(m5b[5]),  .i1(m5b[21]), .s(sa[4]));
mx21d1h mx4b6  (.z(m4b[6]),  .i0(m5b[6]),  .i1(m5b[22]), .s(sa[4]));
mx21d1h mx4b7  (.z(m4b[7]),  .i0(m5b[7]),  .i1(m5b[23]), .s(sa[4]));
mx21d1h mx4b8  (.z(m4b[8]),  .i0(m5b[8]),  .i1(m5b[24]), .s(sa[4]));
mx21d1h mx4b9  (.z(m4b[9]),  .i0(m5b[9]),  .i1(m5b[25]), .s(sa[4]));
mx21d1h mx4b10 (.z(m4b[10]), .i0(m5b[10]), .i1(m5b[26]), .s(sa[4]));
mx21d1h mx4b11 (.z(m4b[11]), .i0(m5b[11]), .i1(m5b[27]), .s(sa[4]));
mx21d1h mx4b12 (.z(m4b[12]), .i0(m5b[12]), .i1(m5b[28]), .s(sb[4]));
mx21d1h mx4b13 (.z(m4b[13]), .i0(m5b[13]), .i1(m5b[29]), .s(sb[4]));
mx21d1h mx4b14 (.z(m4b[14]), .i0(m5b[14]), .i1(m5b[30]), .s(sb[4]));
mx21d1h mx4b15 (.z(m4b[15]), .i0(m5b[15]), .i1(m5b[31]), .s(sb[4]));
mx21d1h mx4b16 (.z(m4b[16]), .i0(m5b[16]), .i1(m5b[32]), .s(sb[4]));
mx21d1h mx4b17 (.z(m4b[17]), .i0(m5b[17]), .i1(m5b[33]), .s(sb[4]));
mx21d1h mx4b18 (.z(m4b[18]), .i0(m5b[18]), .i1(m5b[34]), .s(sb[4]));
mx21d1h mx4b19 (.z(m4b[19]), .i0(m5b[19]), .i1(m5b[35]), .s(sb[4]));
mx21d1h mx4b20 (.z(m4b[20]), .i0(m5b[20]), .i1(m5b[36]), .s(sb[4]));
mx21d1h mx4b21 (.z(m4b[21]), .i0(m5b[21]), .i1(m5b[37]), .s(sb[4]));
mx21d1h mx4b22 (.z(m4b[22]), .i0(m5b[22]), .i1(m5b[38]), .s(sb[4]));
mx21d1h mx4b23 (.z(m4b[23]), .i0(m5b[23]), .i1(m5b[39]), .s(sb[4]));
mx21d1h mx4b24 (.z(m4b[24]), .i0(m5b[24]), .i1(m5b[40]), .s(sc[4]));
mx21d1h mx4b25 (.z(m4b[25]), .i0(m5b[25]), .i1(m5b[41]), .s(sc[4]));
mx21d1h mx4b26 (.z(m4b[26]), .i0(m5b[26]), .i1(m5b[42]), .s(sc[4]));
mx21d1h mx4b27 (.z(m4b[27]), .i0(m5b[27]), .i1(m5b[43]), .s(sc[4]));
mx21d1h mx4b28 (.z(m4b[28]), .i0(m5b[28]), .i1(m5b[44]), .s(sc[4]));
mx21d1h mx4b29 (.z(m4b[29]), .i0(m5b[29]), .i1(m5b[45]), .s(sc[4]));
mx21d1h mx4b30 (.z(m4b[30]), .i0(m5b[30]), .i1(m5b[46]), .s(sc[4]));
mx21d1h mx4b31 (.z(m4b[31]), .i0(m5b[31]), .i1(m5b[47]), .s(sc[4]));
mx21d1h mx4b32 (.z(m4b[32]), .i0(m5b[32]), .i1(m5b[48]), .s(sc[4]));
mx21d1h mx4b33 (.z(m4b[33]), .i0(m5b[33]), .i1(m5b[49]), .s(sc[4]));
mx21d1h mx4b34 (.z(m4b[34]), .i0(m5b[34]), .i1(m5b[50]), .s(sc[4]));
mx21d1h mx4b35 (.z(m4b[35]), .i0(m5b[35]), .i1(m5b[51]), .s(sc[4]));
mx21d1h mx4b36 (.z(m4b[36]), .i0(m5b[36]), .i1(m5b[52]), .s(sd[4]));
mx21d1h mx4b37 (.z(m4b[37]), .i0(m5b[37]), .i1(m5b[53]), .s(sd[4]));
mx21d1h mx4b38 (.z(m4b[38]), .i0(m5b[38]), .i1(m5b[54]), .s(sd[4]));
mx21d1h mx4b39 (.z(m4b[39]), .i0(m5b[39]), .i1(m5b[55]), .s(sd[4]));
mx21d1h mx4b40 (.z(m4b[40]), .i0(m5b[40]), .i1(m5b[56]), .s(sd[4]));
mx21d1h mx4b41 (.z(m4b[41]), .i0(m5b[41]), .i1(m5b[57]), .s(sd[4]));
mx21d1h mx4b42 (.z(m4b[42]), .i0(m5b[42]), .i1(m5b[58]), .s(sd[4]));
mx21d1h mx4b43 (.z(m4b[43]), .i0(m5b[43]), .i1(m5b[59]), .s(sd[4]));
mx21d1h mx4b44 (.z(m4b[44]), .i0(m5b[44]), .i1(m5b[60]), .s(sd[4]));
mx21d1h mx4b45 (.z(m4b[45]), .i0(m5b[45]), .i1(m5b[61]), .s(sd[4]));
mx21d1h mx4b46 (.z(m4b[46]), .i0(m5b[46]), .i1(m5b[62]), .s(sd[4]));

wire [38:0] m3b;

mx21d1h mx3b0  (.z(m3b[0]),  .i0(m4b[0]),  .i1(m4b[8]),  .s(sa[3]));
mx21d1h mx3b1  (.z(m3b[1]),  .i0(m4b[1]),  .i1(m4b[9]),  .s(sa[3]));
mx21d1h mx3b2  (.z(m3b[2]),  .i0(m4b[2]),  .i1(m4b[10]), .s(sa[3]));
mx21d1h mx3b3  (.z(m3b[3]),  .i0(m4b[3]),  .i1(m4b[11]), .s(sa[3]));
mx21d1h mx3b4  (.z(m3b[4]),  .i0(m4b[4]),  .i1(m4b[12]), .s(sa[3]));
mx21d1h mx3b5  (.z(m3b[5]),  .i0(m4b[5]),  .i1(m4b[13]), .s(sa[3]));
mx21d1h mx3b6  (.z(m3b[6]),  .i0(m4b[6]),  .i1(m4b[14]), .s(sa[3]));
mx21d1h mx3b7  (.z(m3b[7]),  .i0(m4b[7]),  .i1(m4b[15]), .s(sa[3]));
mx21d1h mx3b8  (.z(m3b[8]),  .i0(m4b[8]),  .i1(m4b[16]), .s(sa[3]));
mx21d1h mx3b9  (.z(m3b[9]),  .i0(m4b[9]),  .i1(m4b[17]), .s(sa[3]));
mx21d1h mx3b10 (.z(m3b[10]), .i0(m4b[10]), .i1(m4b[18]), .s(sb[3]));
mx21d1h mx3b11 (.z(m3b[11]), .i0(m4b[11]), .i1(m4b[19]), .s(sb[3]));
mx21d1h mx3b12 (.z(m3b[12]), .i0(m4b[12]), .i1(m4b[20]), .s(sb[3]));
mx21d1h mx3b13 (.z(m3b[13]), .i0(m4b[13]), .i1(m4b[21]), .s(sb[3]));
mx21d1h mx3b14 (.z(m3b[14]), .i0(m4b[14]), .i1(m4b[22]), .s(sb[3]));
mx21d1h mx3b15 (.z(m3b[15]), .i0(m4b[15]), .i1(m4b[23]), .s(sb[3]));
mx21d1h mx3b16 (.z(m3b[16]), .i0(m4b[16]), .i1(m4b[24]), .s(sb[3]));
mx21d1h mx3b17 (.z(m3b[17]), .i0(m4b[17]), .i1(m4b[25]), .s(sb[3]));
mx21d1h mx3b18 (.z(m3b[18]), .i0(m4b[18]), .i1(m4b[26]), .s(sb[3]));
mx21d1h mx3b19 (.z(m3b[19]), .i0(m4b[19]), .i1(m4b[27]), .s(sb[3]));
mx21d1h mx3b20 (.z(m3b[20]), .i0(m4b[20]), .i1(m4b[28]), .s(sc[3]));
mx21d1h mx3b21 (.z(m3b[21]), .i0(m4b[21]), .i1(m4b[29]), .s(sc[3]));
mx21d1h mx3b22 (.z(m3b[22]), .i0(m4b[22]), .i1(m4b[30]), .s(sc[3]));
mx21d1h mx3b23 (.z(m3b[23]), .i0(m4b[23]), .i1(m4b[31]), .s(sc[3]));
mx21d1h mx3b24 (.z(m3b[24]), .i0(m4b[24]), .i1(m4b[32]), .s(sc[3]));
mx21d1h mx3b25 (.z(m3b[25]), .i0(m4b[25]), .i1(m4b[33]), .s(sc[3]));
mx21d1h mx3b26 (.z(m3b[26]), .i0(m4b[26]), .i1(m4b[34]), .s(sc[3]));
mx21d1h mx3b27 (.z(m3b[27]), .i0(m4b[27]), .i1(m4b[35]), .s(sc[3]));
mx21d1h mx3b28 (.z(m3b[28]), .i0(m4b[28]), .i1(m4b[36]), .s(sc[3]));
mx21d1h mx3b29 (.z(m3b[29]), .i0(m4b[29]), .i1(m4b[37]), .s(sc[3]));
mx21d1h mx3b30 (.z(m3b[30]), .i0(m4b[30]), .i1(m4b[38]), .s(sd[3]));
mx21d1h mx3b31 (.z(m3b[31]), .i0(m4b[31]), .i1(m4b[39]), .s(sd[3]));
mx21d1h mx3b32 (.z(m3b[32]), .i0(m4b[32]), .i1(m4b[40]), .s(sd[3]));
mx21d1h mx3b33 (.z(m3b[33]), .i0(m4b[33]), .i1(m4b[41]), .s(sd[3]));
mx21d1h mx3b34 (.z(m3b[34]), .i0(m4b[34]), .i1(m4b[42]), .s(sd[3]));
mx21d1h mx3b35 (.z(m3b[35]), .i0(m4b[35]), .i1(m4b[43]), .s(sd[3]));
mx21d1h mx3b36 (.z(m3b[36]), .i0(m4b[36]), .i1(m4b[44]), .s(sd[3]));
mx21d1h mx3b37 (.z(m3b[37]), .i0(m4b[37]), .i1(m4b[45]), .s(sd[3]));
mx21d1h mx3b38 (.z(m3b[38]), .i0(m4b[38]), .i1(m4b[46]), .s(sd[3]));

wire [34:0] m2b;

mx21d1h mx2b0  (.z(m2b[0]),  .i0(m3b[0]),  .i1(m3b[4]),  .s(sa[2]));
mx21d1h mx2b1  (.z(m2b[1]),  .i0(m3b[1]),  .i1(m3b[5]),  .s(sa[2]));
mx21d1h mx2b2  (.z(m2b[2]),  .i0(m3b[2]),  .i1(m3b[6]),  .s(sa[2]));
mx21d1h mx2b3  (.z(m2b[3]),  .i0(m3b[3]),  .i1(m3b[7]),  .s(sa[2]));
mx21d1h mx2b4  (.z(m2b[4]),  .i0(m3b[4]),  .i1(m3b[8]),  .s(sa[2]));
mx21d1h mx2b5  (.z(m2b[5]),  .i0(m3b[5]),  .i1(m3b[9]),  .s(sa[2]));
mx21d1h mx2b6  (.z(m2b[6]),  .i0(m3b[6]),  .i1(m3b[10]), .s(sa[2]));
mx21d1h mx2b7  (.z(m2b[7]),  .i0(m3b[7]),  .i1(m3b[11]), .s(sa[2]));
mx21d1h mx2b8  (.z(m2b[8]),  .i0(m3b[8]),  .i1(m3b[12]), .s(sa[2]));
mx21d1h mx2b9  (.z(m2b[9]),  .i0(m3b[9]),  .i1(m3b[13]), .s(sb[2]));
mx21d1h mx2b10 (.z(m2b[10]), .i0(m3b[10]), .i1(m3b[14]), .s(sb[2]));
mx21d1h mx2b11 (.z(m2b[11]), .i0(m3b[11]), .i1(m3b[15]), .s(sb[2]));
mx21d1h mx2b12 (.z(m2b[12]), .i0(m3b[12]), .i1(m3b[16]), .s(sb[2]));
mx21d1h mx2b13 (.z(m2b[13]), .i0(m3b[13]), .i1(m3b[17]), .s(sb[2]));
mx21d1h mx2b14 (.z(m2b[14]), .i0(m3b[14]), .i1(m3b[18]), .s(sb[2]));
mx21d1h mx2b15 (.z(m2b[15]), .i0(m3b[15]), .i1(m3b[19]), .s(sb[2]));
mx21d1h mx2b16 (.z(m2b[16]), .i0(m3b[16]), .i1(m3b[20]), .s(sb[2]));
mx21d1h mx2b17 (.z(m2b[17]), .i0(m3b[17]), .i1(m3b[21]), .s(sb[2]));
mx21d1h mx2b18 (.z(m2b[18]), .i0(m3b[18]), .i1(m3b[22]), .s(sc[2]));
mx21d1h mx2b19 (.z(m2b[19]), .i0(m3b[19]), .i1(m3b[23]), .s(sc[2]));
mx21d1h mx2b20 (.z(m2b[20]), .i0(m3b[20]), .i1(m3b[24]), .s(sc[2]));
mx21d1h mx2b21 (.z(m2b[21]), .i0(m3b[21]), .i1(m3b[25]), .s(sc[2]));
mx21d1h mx2b22 (.z(m2b[22]), .i0(m3b[22]), .i1(m3b[26]), .s(sc[2]));
mx21d1h mx2b23 (.z(m2b[23]), .i0(m3b[23]), .i1(m3b[27]), .s(sc[2]));
mx21d1h mx2b24 (.z(m2b[24]), .i0(m3b[24]), .i1(m3b[28]), .s(sc[2]));
mx21d1h mx2b25 (.z(m2b[25]), .i0(m3b[25]), .i1(m3b[29]), .s(sc[2]));
mx21d1h mx2b26 (.z(m2b[26]), .i0(m3b[26]), .i1(m3b[30]), .s(sc[2]));
mx21d1h mx2b27 (.z(m2b[27]), .i0(m3b[27]), .i1(m3b[31]), .s(sd[2]));
mx21d1h mx2b28 (.z(m2b[28]), .i0(m3b[28]), .i1(m3b[32]), .s(sd[2]));
mx21d1h mx2b29 (.z(m2b[29]), .i0(m3b[29]), .i1(m3b[33]), .s(sd[2]));
mx21d1h mx2b30 (.z(m2b[30]), .i0(m3b[30]), .i1(m3b[34]), .s(sd[2]));
mx21d1h mx2b31 (.z(m2b[31]), .i0(m3b[31]), .i1(m3b[35]), .s(sd[2]));
mx21d1h mx2b32 (.z(m2b[32]), .i0(m3b[32]), .i1(m3b[36]), .s(sd[2]));
mx21d1h mx2b33 (.z(m2b[33]), .i0(m3b[33]), .i1(m3b[37]), .s(sd[2]));
mx21d1h mx2b34 (.z(m2b[34]), .i0(m3b[34]), .i1(m3b[38]), .s(sd[2]));

wire [32:0] m1b;

mx21d1h mx1b0  (.z(m1b[0]),  .i0(m2b[0]),  .i1(m2b[2]),  .s(sa[1]));
mx21d1h mx1b1  (.z(m1b[1]),  .i0(m2b[1]),  .i1(m2b[3]),  .s(sa[1]));
mx21d1h mx1b2  (.z(m1b[2]),  .i0(m2b[2]),  .i1(m2b[4]),  .s(sa[1]));
mx21d1h mx1b3  (.z(m1b[3]),  .i0(m2b[3]),  .i1(m2b[5]),  .s(sa[1]));
mx21d1h mx1b4  (.z(m1b[4]),  .i0(m2b[4]),  .i1(m2b[6]),  .s(sa[1]));
mx21d1h mx1b5  (.z(m1b[5]),  .i0(m2b[5]),  .i1(m2b[7]),  .s(sa[1]));
mx21d1h mx1b6  (.z(m1b[6]),  .i0(m2b[6]),  .i1(m2b[8]),  .s(sa[1]));
mx21d1h mx1b7  (.z(m1b[7]),  .i0(m2b[7]),  .i1(m2b[9]),  .s(sa[1]));
mx21d1h mx1b8  (.z(m1b[8]),  .i0(m2b[8]),  .i1(m2b[10]), .s(sb[1]));
mx21d1h mx1b9  (.z(m1b[9]),  .i0(m2b[9]),  .i1(m2b[11]), .s(sb[1]));
mx21d1h mx1b10 (.z(m1b[10]), .i0(m2b[10]), .i1(m2b[12]), .s(sb[1]));
mx21d1h mx1b11 (.z(m1b[11]), .i0(m2b[11]), .i1(m2b[13]), .s(sb[1]));
mx21d1h mx1b12 (.z(m1b[12]), .i0(m2b[12]), .i1(m2b[14]), .s(sb[1]));
mx21d1h mx1b13 (.z(m1b[13]), .i0(m2b[13]), .i1(m2b[15]), .s(sb[1]));
mx21d1h mx1b14 (.z(m1b[14]), .i0(m2b[14]), .i1(m2b[16]), .s(sb[1]));
mx21d1h mx1b15 (.z(m1b[15]), .i0(m2b[15]), .i1(m2b[17]), .s(sb[1]));
mx21d1h mx1b16 (.z(m1b[16]), .i0(m2b[16]), .i1(m2b[18]), .s(sc[1]));
mx21d1h mx1b17 (.z(m1b[17]), .i0(m2b[17]), .i1(m2b[19]), .s(sc[1]));
mx21d1h mx1b18 (.z(m1b[18]), .i0(m2b[18]), .i1(m2b[20]), .s(sc[1]));
mx21d1h mx1b19 (.z(m1b[19]), .i0(m2b[19]), .i1(m2b[21]), .s(sc[1]));
mx21d1h mx1b20 (.z(m1b[20]), .i0(m2b[20]), .i1(m2b[22]), .s(sc[1]));
mx21d1h mx1b21 (.z(m1b[21]), .i0(m2b[21]), .i1(m2b[23]), .s(sc[1]));
mx21d1h mx1b22 (.z(m1b[22]), .i0(m2b[22]), .i1(m2b[24]), .s(sc[1]));
mx21d1h mx1b23 (.z(m1b[23]), .i0(m2b[23]), .i1(m2b[25]), .s(sc[1]));
mx21d1h mx1b24 (.z(m1b[24]), .i0(m2b[24]), .i1(m2b[26]), .s(sd[1]));
mx21d1h mx1b25 (.z(m1b[25]), .i0(m2b[25]), .i1(m2b[27]), .s(sd[1]));
mx21d1h mx1b26 (.z(m1b[26]), .i0(m2b[26]), .i1(m2b[28]), .s(sd[1]));
mx21d1h mx1b27 (.z(m1b[27]), .i0(m2b[27]), .i1(m2b[29]), .s(sd[1]));
mx21d1h mx1b28 (.z(m1b[28]), .i0(m2b[28]), .i1(m2b[30]), .s(sd[1]));
mx21d1h mx1b29 (.z(m1b[29]), .i0(m2b[29]), .i1(m2b[31]), .s(sd[1]));
mx21d1h mx1b30 (.z(m1b[30]), .i0(m2b[30]), .i1(m2b[32]), .s(sd[1]));
mx21d1h mx1b31 (.z(m1b[31]), .i0(m2b[31]), .i1(m2b[33]), .s(sd[1]));
mx21d1h mx1b32 (.z(m1b[32]), .i0(m2b[32]), .i1(m2b[34]), .s(sd[1]));

mx21d1h mx0b0  (.z(z[0]),  .i0(m1b[0]),  .i1(m1b[1]),  .s(sa[0]));
mx21d1h mx0b1  (.z(z[1]),  .i0(m1b[1]),  .i1(m1b[2]),  .s(sa[0]));
mx21d1h mx0b2  (.z(z[2]),  .i0(m1b[2]),  .i1(m1b[3]),  .s(sa[0]));
mx21d1h mx0b3  (.z(z[3]),  .i0(m1b[3]),  .i1(m1b[4]),  .s(sa[0]));
mx21d1h mx0b4  (.z(z[4]),  .i0(m1b[4]),  .i1(m1b[5]),  .s(sa[0]));
mx21d1h mx0b5  (.z(z[5]),  .i0(m1b[5]),  .i1(m1b[6]),  .s(sa[0]));
mx21d1h mx0b6  (.z(z[6]),  .i0(m1b[6]),  .i1(m1b[7]),  .s(sa[0]));
mx21d1h mx0b7  (.z(z[7]),  .i0(m1b[7]),  .i1(m1b[8]),  .s(sa[0]));
mx21d1h mx0b8  (.z(z[8]),  .i0(m1b[8]),  .i1(m1b[9]),  .s(sb[0]));
mx21d1h mx0b9  (.z(z[9]),  .i0(m1b[9]),  .i1(m1b[10]), .s(sb[0]));
mx21d1h mx0b10 (.z(z[10]), .i0(m1b[10]), .i1(m1b[11]), .s(sb[0]));
mx21d1h mx0b11 (.z(z[11]), .i0(m1b[11]), .i1(m1b[12]), .s(sb[0]));
mx21d1h mx0b12 (.z(z[12]), .i0(m1b[12]), .i1(m1b[13]), .s(sb[0]));
mx21d1h mx0b13 (.z(z[13]), .i0(m1b[13]), .i1(m1b[14]), .s(sb[0]));
mx21d1h mx0b14 (.z(z[14]), .i0(m1b[14]), .i1(m1b[15]), .s(sb[0]));
mx21d1h mx0b15 (.z(z[15]), .i0(m1b[15]), .i1(m1b[16]), .s(sb[0]));
mx21d1h mx0b16 (.z(z[16]), .i0(m1b[16]), .i1(m1b[17]), .s(sc[0]));
mx21d1h mx0b17 (.z(z[17]), .i0(m1b[17]), .i1(m1b[18]), .s(sc[0]));
mx21d1h mx0b18 (.z(z[18]), .i0(m1b[18]), .i1(m1b[19]), .s(sc[0]));
mx21d1h mx0b19 (.z(z[19]), .i0(m1b[19]), .i1(m1b[20]), .s(sc[0]));
mx21d1h mx0b20 (.z(z[20]), .i0(m1b[20]), .i1(m1b[21]), .s(sc[0]));
mx21d1h mx0b21 (.z(z[21]), .i0(m1b[21]), .i1(m1b[22]), .s(sc[0]));
mx21d1h mx0b22 (.z(z[22]), .i0(m1b[22]), .i1(m1b[23]), .s(sc[0]));
mx21d1h mx0b23 (.z(z[23]), .i0(m1b[23]), .i1(m1b[24]), .s(sc[0]));
mx21d1h mx0b24 (.z(z[24]), .i0(m1b[24]), .i1(m1b[25]), .s(sd[0]));
mx21d1h mx0b25 (.z(z[25]), .i0(m1b[25]), .i1(m1b[26]), .s(sd[0]));
mx21d1h mx0b26 (.z(z[26]), .i0(m1b[26]), .i1(m1b[27]), .s(sd[0]));
mx21d1h mx0b27 (.z(z[27]), .i0(m1b[27]), .i1(m1b[28]), .s(sd[0]));
mx21d1h mx0b28 (.z(z[28]), .i0(m1b[28]), .i1(m1b[29]), .s(sd[0]));
mx21d1h mx0b29 (.z(z[29]), .i0(m1b[29]), .i1(m1b[30]), .s(sd[0]));
mx21d1h mx0b30 (.z(z[30]), .i0(m1b[30]), .i1(m1b[31]), .s(sd[0]));
mx21d1h mx0b31 (.z(z[31]), .i0(m1b[31]), .i1(m1b[32]), .s(sd[0]));

endmodule  //  sudp_shift