// // Verilog description for cell alu, // Fri 23 Dec 2005 01:04:27 AM EST // // LeonardoSpectrum Level 3, 2003b.35 // module alu ( in1, in2, sel, result ) ; input [3:0]in1 ; input [3:0]in2 ; input sel ; output [3:0]result ; wire nx8, nx18, nx60, nx62, nx97, nx99, nx103, nx105, nx107, nx110, nx112, nx115, nx118, nx121; oai21 ix17 (.Y (result[0]), .A0 (nx97), .A1 (in1[0]), .B0 (nx99)) ; inv01 ix98 (.Y (nx97), .A (sel)) ; oai21 ix100 (.Y (nx99), .A0 (in1[0]), .A1 (in2[0]), .B0 (nx8)) ; aoi21 ix9 (.Y (nx8), .A0 (in2[0]), .A1 (in1[0]), .B0 (sel)) ; mux21 ix31 (.Y (result[1]), .A0 (nx103), .A1 (in1[1]), .S0 (sel)) ; xnor2 ix104 (.Y (nx103), .A0 (nx105), .A1 (nx107)) ; nand02 ix106 (.Y (nx105), .A0 (in2[0]), .A1 (in1[0])) ; xnor2 ix108 (.Y (nx107), .A0 (in2[1]), .A1 (in1[1])) ; mux21 ix53 (.Y (result[2]), .A0 (nx110), .A1 (in1[2]), .S0 (sel)) ; xnor2 ix111 (.Y (nx110), .A0 (nx112), .A1 (nx115)) ; aoi32 ix113 (.Y (nx112), .A0 (in2[0]), .A1 (in1[0]), .A2 (nx18), .B0 (in1[1] ), .B1 (in2[1])) ; xnor2 ix116 (.Y (nx115), .A0 (in2[2]), .A1 (in1[2])) ; mux21 ix75 (.Y (result[3]), .A0 (nx118), .A1 (in1[3]), .S0 (sel)) ; xnor2 ix119 (.Y (nx118), .A0 (nx60), .A1 (nx62)) ; mux21 ix61 (.Y (nx60), .A0 (nx112), .A1 (nx121), .S0 (nx115)) ; inv01 ix122 (.Y (nx121), .A (in1[2])) ; xor2 ix63 (.Y (nx62), .A0 (in2[3]), .A1 (in1[3])) ; inv01 ix19 (.Y (nx18), .A (nx107)) ; endmodule