data/full_repos/permissive/174242803/datapath/src/datapath_syn.v
1: b"%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:504: Cannot find file containing module: 'AND2X2'\n  AND2X2 U1 ( .A(sel[1]), .B(n42), .Y(n38) );\n  ^~~~~~\n        ... Looked in:\n             data/full_repos/permissive/174242803/datapath/src,data/full_repos/permissive/174242803/AND2X2\n             data/full_repos/permissive/174242803/datapath/src,data/full_repos/permissive/174242803/AND2X2.v\n             data/full_repos/permissive/174242803/datapath/src,data/full_repos/permissive/174242803/AND2X2.sv\n             AND2X2\n             AND2X2.v\n             AND2X2.sv\n             obj_dir/AND2X2\n             obj_dir/AND2X2.v\n             obj_dir/AND2X2.sv\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:505: Cannot find file containing module: 'AND2X2'\n  AND2X2 U2 ( .A(sel[1]), .B(sel[0]), .Y(n39) );\n  ^~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:506: Cannot find file containing module: 'INVX2'\n  INVX2 U3 ( .A(sel[0]), .Y(n42) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:507: Cannot find file containing module: 'NAND2X1'\n  NAND2X1 U4 ( .A(n41), .B(n40), .Y(out[7]) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:508: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U5 ( .A(d[7]), .B(n39), .C(c[7]), .D(n38), .Y(n40) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:509: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U6 ( .A(b[7]), .B(n37), .C(a[7]), .D(n36), .Y(n41) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:510: Cannot find file containing module: 'NAND2X1'\n  NAND2X1 U7 ( .A(n35), .B(n34), .Y(out[6]) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:511: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U8 ( .A(d[6]), .B(n39), .C(c[6]), .D(n38), .Y(n34) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:512: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U9 ( .A(b[6]), .B(n37), .C(a[6]), .D(n36), .Y(n35) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:513: Cannot find file containing module: 'NAND2X1'\n  NAND2X1 U10 ( .A(n33), .B(n32), .Y(out[5]) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:514: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U11 ( .A(d[5]), .B(n39), .C(c[5]), .D(n38), .Y(n32) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:515: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U12 ( .A(b[5]), .B(n37), .C(a[5]), .D(n36), .Y(n33) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:516: Cannot find file containing module: 'NAND2X1'\n  NAND2X1 U13 ( .A(n31), .B(n30), .Y(out[4]) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:517: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U14 ( .A(d[4]), .B(n39), .C(c[4]), .D(n38), .Y(n30) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:518: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U15 ( .A(b[4]), .B(n37), .C(a[4]), .D(n36), .Y(n31) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:519: Cannot find file containing module: 'NAND2X1'\n  NAND2X1 U16 ( .A(n29), .B(n28), .Y(out[3]) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:520: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U17 ( .A(d[3]), .B(n39), .C(c[3]), .D(n38), .Y(n28) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:521: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U18 ( .A(b[3]), .B(n37), .C(a[3]), .D(n36), .Y(n29) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:522: Cannot find file containing module: 'NAND2X1'\n  NAND2X1 U19 ( .A(n27), .B(n26), .Y(out[2]) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:523: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U20 ( .A(d[2]), .B(n39), .C(c[2]), .D(n38), .Y(n26) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:524: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U21 ( .A(b[2]), .B(n37), .C(a[2]), .D(n36), .Y(n27) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:525: Cannot find file containing module: 'NAND2X1'\n  NAND2X1 U22 ( .A(n25), .B(n24), .Y(out[1]) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:526: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U23 ( .A(d[1]), .B(n39), .C(c[1]), .D(n38), .Y(n24) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:527: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U24 ( .A(b[1]), .B(n37), .C(a[1]), .D(n36), .Y(n25) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:528: Cannot find file containing module: 'NAND2X1'\n  NAND2X1 U25 ( .A(n23), .B(n22), .Y(out[0]) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:529: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U26 ( .A(d[0]), .B(n39), .C(c[0]), .D(n38), .Y(n22) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:530: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U27 ( .A(b[0]), .B(n37), .C(a[0]), .D(n36), .Y(n23) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:531: Cannot find file containing module: 'NOR2X1'\n  NOR2X1 U28 ( .A(sel[0]), .B(sel[1]), .Y(n36) );\n  ^~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:532: Cannot find file containing module: 'NOR2X1'\n  NOR2X1 U29 ( .A(n42), .B(sel[1]), .Y(n37) );\n  ^~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:472: Cannot find file containing module: 'INVX2'\n  INVX2 U1 ( .A(n11), .Y(out[7]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:473: Cannot find file containing module: 'INVX2'\n  INVX2 U2 ( .A(n8), .Y(out[6]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:474: Cannot find file containing module: 'INVX2'\n  INVX2 U3 ( .A(n7), .Y(out[5]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:475: Cannot find file containing module: 'INVX2'\n  INVX2 U4 ( .A(n6), .Y(out[4]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:476: Cannot find file containing module: 'INVX2'\n  INVX2 U5 ( .A(n5), .Y(out[3]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:477: Cannot find file containing module: 'INVX2'\n  INVX2 U6 ( .A(n4), .Y(out[2]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:478: Cannot find file containing module: 'INVX2'\n  INVX2 U7 ( .A(n3), .Y(out[1]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:479: Cannot find file containing module: 'INVX2'\n  INVX2 U8 ( .A(n2), .Y(out[0]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:480: Cannot find file containing module: 'INVX2'\n  INVX2 U9 ( .A(n1), .Y(n12) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:481: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U10 ( .A(n1), .B(a[7]), .C(b[7]), .D(n12), .Y(n11) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:482: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U11 ( .A(a[6]), .B(n1), .C(b[6]), .D(n12), .Y(n8) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:483: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U12 ( .A(a[5]), .B(n1), .C(b[5]), .D(n12), .Y(n7) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:484: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U13 ( .A(a[4]), .B(n1), .C(b[4]), .D(n12), .Y(n6) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:485: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U14 ( .A(a[3]), .B(n1), .C(b[3]), .D(n12), .Y(n5) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:486: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U15 ( .A(a[2]), .B(n1), .C(b[2]), .D(n12), .Y(n4) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:487: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U16 ( .A(a[1]), .B(n1), .C(b[1]), .D(n12), .Y(n3) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:488: Cannot find file containing module: 'AOI22X1'\n  AOI22X1 U17 ( .A(a[0]), .B(n1), .C(b[0]), .D(n12), .Y(n2) );\n  ^~~~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:489: Cannot find file containing module: 'BUFX2'\n  BUFX2 U18 ( .A(sel), .Y(n1) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:444: Cannot find file containing module: 'INVX2'\n  INVX2 U1 ( .A(n11), .Y(out[7]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:445: Cannot find file containing module: 'INVX2'\n  INVX2 U2 ( .A(n8), .Y(out[6]) );\n  ^~~~~\n%Error: data/full_repos/permissive/174242803/datapath/src/datapath_syn.v:446: Cannot find file containing module: 'INVX2'\n  INVX2 U3 ( .A(n7), .Y(out[5]) );\n  ^~~~~\n%Error: Exiting due to too many errors encountered; --error-limit=50\n"
module datapath ( adr, instr, writedata, zero, alucontrol, alusrca, alusrcb, 
        iord, irwrite, memdata, memtoreg, pcen, pcsource, regdst, regwrite, 
        clk, reset, const_gnd );
  output [7:0] adr;
  output [31:0] instr;
  output [7:0] writedata;
  input [2:0] alucontrol;
  input [1:0] alusrcb;
  input [3:0] irwrite;
  input [7:0] memdata;
  input [1:0] pcsource;
  input alusrca, iord, memtoreg, pcen, regdst, regwrite, clk, reset, const_gnd;
  output zero;
  wire   n2, n3, n4, n5, n6, n7, n8, n9, n10, n11, n12, n13, n14, n15, n16,
         n17, n18, n19, n20, n21, n22, n23, n24, n25, n26, n27, n28, n29, n30,
         n31, n32, n33, n34, n35, n36, n37;
  wire   [7:0] to_mux_to_srca;
  wire   [7:0] aluout;
  wire   [7:0] nextpc;
  wire   [7:0] pc;
  wire   [7:0] data;
  tri   [2:0] alucontrol;
  tri   regwrite;
  tri   clk;
  tri   [7:0] rd1;
  tri   [7:0] rd2;
  tri   [7:0] aluresult;
  tri   [7:0] srca;
  tri   [7:0] srcb;
  tri   [7:0] wd;
  tri   [2:0] wa;

  dff8bit_8 instr_dtf1 ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(
        clk), .rst(n37), .en(irwrite[0]), .q(instr[31:24]) );
  dff8bit_7 instr_dtf2 ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(
        clk), .rst(n37), .en(irwrite[1]), .q(instr[23:16]) );
  dff8bit_6 instr_dtf3 ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(
        clk), .rst(n37), .en(irwrite[2]), .q(instr[15:8]) );
  dff8bit_5 instr_dtf4 ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(
        clk), .rst(n37), .en(irwrite[3]), .q(instr[7:0]) );
  dff8bit_4 rd_dtf1 ( .d(rd1), .clk(clk), .rst(n37), .en(n34), .q(
        to_mux_to_srca) );
  dff8bit_3 rd_dtf2 ( .d(rd2), .clk(clk), .rst(n37), .en(n34), .q(writedata)
         );
  dff8bit_2 aluout_dtf ( .d(aluresult), .clk(clk), .rst(n37), .en(n34), .q(
        aluout) );
  dff8bit_1 pc_dtf ( .d(nextpc), .clk(clk), .rst(n37), .en(pcen), .q(pc) );
  dff8bit_0 data_dtf ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(clk), 
        .rst(n37), .en(n34), .q(data) );
  mux_2 rd1_mux ( .a(to_mux_to_srca), .b(pc), .sel(alusrca), .out(srca) );
  mux4_1 rd2_mux ( .a(writedata), .b({n35, n35, n35, n35, n35, n35, n35, n34}), 
        .c(instr[7:0]), .d({instr[5:0], n35, n35}), .sel({n17, n11}), .out(
        srcb) );
  mux4_0 nextpc_mux ( .a(aluresult), .b(aluout), .c({instr[5:0], n35, n35}), 
        .d({n35, n35, n35, n35, n35, n35, n35, n35}), .sel({n15, n9}), .out(
        nextpc) );
  mux_1 adr_mux ( .a(aluout), .b(pc), .sel(iord), .out(adr) );
  mux_0 wd_mux ( .a(data), .b(aluout), .sel(memtoreg), .out(wd) );
  mux_smallData wa_mux ( .a(instr[13:11]), .b(instr[18:16]), .sel(n13), .out(
        wa) );
  regfile test_reg ( .rd1(rd1), .rd2(rd2), .clk(clk), .regwrite(regwrite), 
        .ra1(instr[23:21]), .ra2(instr[18:16]), .wa(wa), .wd(wd) );
  alu inst_alu ( .result(aluresult), .a(srca), .b(srcb), .alucont(alucontrol)
         );
  NOR2X1 U2 ( .A(n2), .B(n3), .Y(zero) );
  NAND2X1 U3 ( .A(n4), .B(n5), .Y(n3) );
  NOR2X1 U4 ( .A(aluresult[3]), .B(aluresult[2]), .Y(n5) );
  NOR2X1 U5 ( .A(aluresult[1]), .B(aluresult[0]), .Y(n4) );
  NAND2X1 U6 ( .A(n6), .B(n7), .Y(n2) );
  NOR2X1 U7 ( .A(aluresult[7]), .B(aluresult[6]), .Y(n7) );
  NOR2X1 U8 ( .A(aluresult[5]), .B(aluresult[4]), .Y(n6) );
  INVX2 U9 ( .A(pcsource[0]), .Y(n8) );
  INVX2 U10 ( .A(n8), .Y(n9) );
  INVX2 U11 ( .A(alusrcb[0]), .Y(n10) );
  INVX2 U12 ( .A(n10), .Y(n11) );
  INVX2 U13 ( .A(regdst), .Y(n12) );
  INVX2 U14 ( .A(n12), .Y(n13) );
  INVX2 U15 ( .A(pcsource[1]), .Y(n14) );
  INVX2 U16 ( .A(n14), .Y(n15) );
  INVX2 U17 ( .A(alusrcb[1]), .Y(n16) );
  INVX2 U18 ( .A(n16), .Y(n17) );
  INVX2 U19 ( .A(memdata[0]), .Y(n18) );
  INVX2 U20 ( .A(n18), .Y(n19) );
  INVX2 U21 ( .A(memdata[1]), .Y(n20) );
  INVX2 U22 ( .A(n20), .Y(n21) );
  INVX2 U23 ( .A(memdata[2]), .Y(n22) );
  INVX2 U24 ( .A(n22), .Y(n23) );
  INVX2 U25 ( .A(memdata[3]), .Y(n24) );
  INVX2 U26 ( .A(n24), .Y(n25) );
  INVX2 U27 ( .A(memdata[4]), .Y(n26) );
  INVX2 U28 ( .A(n26), .Y(n27) );
  INVX2 U29 ( .A(memdata[5]), .Y(n28) );
  INVX2 U30 ( .A(n28), .Y(n29) );
  INVX2 U31 ( .A(memdata[6]), .Y(n30) );
  INVX2 U32 ( .A(n30), .Y(n31) );
  INVX2 U33 ( .A(memdata[7]), .Y(n32) );
  INVX2 U34 ( .A(n32), .Y(n33) );
  INVX2 U35 ( .A(n34), .Y(n35) );
  INVX2 U36 ( .A(n36), .Y(n37) );
  INVX2 U37 ( .A(const_gnd), .Y(n34) );
  INVX2 U38 ( .A(reset), .Y(n36) );
endmodule
module datapath ( adr, instr, writedata, zero, alucontrol, alusrca, alusrcb, 
        iord, irwrite, memdata, memtoreg, pcen, pcsource, regdst, regwrite, 
        clk, reset, const_gnd );

  output [7:0] adr;
  output [31:0] instr;
  output [7:0] writedata;
  input [2:0] alucontrol;
  input [1:0] alusrcb;
  input [3:0] irwrite;
  input [7:0] memdata;
  input [1:0] pcsource;
  input alusrca, iord, memtoreg, pcen, regdst, regwrite, clk, reset, const_gnd;
  output zero;
  wire   n2, n3, n4, n5, n6, n7, n8, n9, n10, n11, n12, n13, n14, n15, n16,
         n17, n18, n19, n20, n21, n22, n23, n24, n25, n26, n27, n28, n29, n30,
         n31, n32, n33, n34, n35, n36, n37;
  wire   [7:0] to_mux_to_srca;
  wire   [7:0] aluout;
  wire   [7:0] nextpc;
  wire   [7:0] pc;
  wire   [7:0] data;
  tri   [2:0] alucontrol;
  tri   regwrite;
  tri   clk;
  tri   [7:0] rd1;
  tri   [7:0] rd2;
  tri   [7:0] aluresult;
  tri   [7:0] srca;
  tri   [7:0] srcb;
  tri   [7:0] wd;
  tri   [2:0] wa;

  dff8bit_8 instr_dtf1 ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(
        clk), .rst(n37), .en(irwrite[0]), .q(instr[31:24]) );
  dff8bit_7 instr_dtf2 ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(
        clk), .rst(n37), .en(irwrite[1]), .q(instr[23:16]) );
  dff8bit_6 instr_dtf3 ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(
        clk), .rst(n37), .en(irwrite[2]), .q(instr[15:8]) );
  dff8bit_5 instr_dtf4 ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(
        clk), .rst(n37), .en(irwrite[3]), .q(instr[7:0]) );
  dff8bit_4 rd_dtf1 ( .d(rd1), .clk(clk), .rst(n37), .en(n34), .q(
        to_mux_to_srca) );
  dff8bit_3 rd_dtf2 ( .d(rd2), .clk(clk), .rst(n37), .en(n34), .q(writedata)
         );
  dff8bit_2 aluout_dtf ( .d(aluresult), .clk(clk), .rst(n37), .en(n34), .q(
        aluout) );
  dff8bit_1 pc_dtf ( .d(nextpc), .clk(clk), .rst(n37), .en(pcen), .q(pc) );
  dff8bit_0 data_dtf ( .d({n33, n31, n29, n27, n25, n23, n21, n19}), .clk(clk), 
        .rst(n37), .en(n34), .q(data) );
  mux_2 rd1_mux ( .a(to_mux_to_srca), .b(pc), .sel(alusrca), .out(srca) );
  mux4_1 rd2_mux ( .a(writedata), .b({n35, n35, n35, n35, n35, n35, n35, n34}), 
        .c(instr[7:0]), .d({instr[5:0], n35, n35}), .sel({n17, n11}), .out(
        srcb) );
  mux4_0 nextpc_mux ( .a(aluresult), .b(aluout), .c({instr[5:0], n35, n35}), 
        .d({n35, n35, n35, n35, n35, n35, n35, n35}), .sel({n15, n9}), .out(
        nextpc) );
  mux_1 adr_mux ( .a(aluout), .b(pc), .sel(iord), .out(adr) );
  mux_0 wd_mux ( .a(data), .b(aluout), .sel(memtoreg), .out(wd) );
  mux_smallData wa_mux ( .a(instr[13:11]), .b(instr[18:16]), .sel(n13), .out(
        wa) );
  regfile test_reg ( .rd1(rd1), .rd2(rd2), .clk(clk), .regwrite(regwrite), 
        .ra1(instr[23:21]), .ra2(instr[18:16]), .wa(wa), .wd(wd) );
  alu inst_alu ( .result(aluresult), .a(srca), .b(srcb), .alucont(alucontrol)
         );
  NOR2X1 U2 ( .A(n2), .B(n3), .Y(zero) );
  NAND2X1 U3 ( .A(n4), .B(n5), .Y(n3) );
  NOR2X1 U4 ( .A(aluresult[3]), .B(aluresult[2]), .Y(n5) );
  NOR2X1 U5 ( .A(aluresult[1]), .B(aluresult[0]), .Y(n4) );
  NAND2X1 U6 ( .A(n6), .B(n7), .Y(n2) );
  NOR2X1 U7 ( .A(aluresult[7]), .B(aluresult[6]), .Y(n7) );
  NOR2X1 U8 ( .A(aluresult[5]), .B(aluresult[4]), .Y(n6) );
  INVX2 U9 ( .A(pcsource[0]), .Y(n8) );
  INVX2 U10 ( .A(n8), .Y(n9) );
  INVX2 U11 ( .A(alusrcb[0]), .Y(n10) );
  INVX2 U12 ( .A(n10), .Y(n11) );
  INVX2 U13 ( .A(regdst), .Y(n12) );
  INVX2 U14 ( .A(n12), .Y(n13) );
  INVX2 U15 ( .A(pcsource[1]), .Y(n14) );
  INVX2 U16 ( .A(n14), .Y(n15) );
  INVX2 U17 ( .A(alusrcb[1]), .Y(n16) );
  INVX2 U18 ( .A(n16), .Y(n17) );
  INVX2 U19 ( .A(memdata[0]), .Y(n18) );
  INVX2 U20 ( .A(n18), .Y(n19) );
  INVX2 U21 ( .A(memdata[1]), .Y(n20) );
  INVX2 U22 ( .A(n20), .Y(n21) );
  INVX2 U23 ( .A(memdata[2]), .Y(n22) );
  INVX2 U24 ( .A(n22), .Y(n23) );
  INVX2 U25 ( .A(memdata[3]), .Y(n24) );
  INVX2 U26 ( .A(n24), .Y(n25) );
  INVX2 U27 ( .A(memdata[4]), .Y(n26) );
  INVX2 U28 ( .A(n26), .Y(n27) );
  INVX2 U29 ( .A(memdata[5]), .Y(n28) );
  INVX2 U30 ( .A(n28), .Y(n29) );
  INVX2 U31 ( .A(memdata[6]), .Y(n30) );
  INVX2 U32 ( .A(n30), .Y(n31) );
  INVX2 U33 ( .A(memdata[7]), .Y(n32) );
  INVX2 U34 ( .A(n32), .Y(n33) );
  INVX2 U35 ( .A(n34), .Y(n35) );
  INVX2 U36 ( .A(n36), .Y(n37) );
  INVX2 U37 ( .A(const_gnd), .Y(n34) );
  INVX2 U38 ( .A(reset), .Y(n36) );
endmodule