--- VHDL generated by LogSynth framework (c) Petr Fiser
Library IEEE;
use IEEE.std_logic_1164.all;

entity DFF is
  Port ( D, CLK: in std_logic;
     Q: out std_logic);
end DFF;

architecture Behavior of DFF is
begin
  process(CLK)
  begin
    if CLK'event and CLK = '1' then
      Q <= D;
    end if;
  end process;
end Behavior;

Library IEEE;
use IEEE.std_logic_1164.all;

entity LGSynth91__s386 is 
  Port (
    pi0,pi1,pi2,pi3,pi4,pi5,pi6, CLK: in std_logic;
    po0,po1,po2,po3,po4,po5,po6: inout std_logic
  );
end LGSynth91__s386;

architecture LGSynth91__s386_behav of LGSynth91__s386 is
component DFF
  Port ( D, CLK: in std_logic;
     Q: out std_logic);
end component;

signal lo0,lo1,lo2,lo3,lo4,lo5,n32,n33,n34,n35,n36,n38,n39,n41,n43,n45,n46,n48,n50,n52,li0,n54,li1,n56,n57,li2,n59,n60,li3,n62,li4,n64,li5,n66,n67,n68,n69,n70,n71,n72,n73,n74,n75,n76,n77,n78,n79,n80,n81,n82,n83,n84,n85,n86,n87,n88,n89,n90,n91,n92,n93,n94,n95,n96,n97,n98,n99,n100,n101,n102,n103,n104,n105,n106,n107,n108,n109,n110,n111,n112,n113,n114,n115,n116,n117,n118,n119,n120,n121,n122,n123,n124,n125,n126,n127,n128,n129,n130,n131,n132,n133,n134,n135,n136,n137,n138,n139,n140,n141,n142,n143,n144,n145,n146,n147,n148,n149: std_logic;
begin
    DFF0: DFF port map (li0, CLK, lo0);
    DFF1: DFF port map (li1, CLK, lo1);
    DFF2: DFF port map (li2, CLK, lo2);
    DFF3: DFF port map (li3, CLK, lo3);
    DFF4: DFF port map (li4, CLK, lo4);
    DFF5: DFF port map (li5, CLK, lo5);
    n32 <= ( pi4 )
      or ( lo5 );
    n33 <= ( not lo4 )
      or ( not lo5 );
    n34 <= ( pi3 )
      or ( not lo4 );
    n35 <= ( pi1 and not pi6 and not lo4 and not lo5 );
    n36 <= ( not lo0 and not lo1 and lo2 and lo3 );
    po0 <= ( n35 and n36 );
    n38 <= ( not lo3 and n147 );
    n39 <= ( not pi6 and not lo2 and n146 );
    po1 <= ( n38 )
      or ( n39 );
    n41 <= ( pi5 and not lo4 and not lo5 and n94 );
    po2 <= ( not lo0 and not lo1 and lo3 and n41 );
    n43 <= ( not lo3 and not lo5 and n125 );
    po3 <= ( not lo0 and not lo1 and n43 );
    n45 <= ( not pi0 and pi6 and not lo4 and not lo5 );
    n46 <= ( not lo0 and not lo1 and lo2 and not lo3 );
    po4 <= ( n45 and n46 );
    n48 <= ( not pi5 and pi6 and n115 );
    po5 <= ( not lo0 and not lo2 and not lo3 and n48 );
    n50 <= ( not pi5 and pi6 and n148 );
    po6 <= ( not lo2 and not lo3 and n50 );
    n52 <= ( not pi5 and pi6 and n130 );
    li0 <= ( not lo2 and not lo3 and n52 );
    n54 <= ( not pi5 and pi6 and n145 );
    li1 <= ( not lo2 and not lo3 and n54 );
    n56 <= ( not lo0 and n128 );
    n57 <= ( not lo4 and not lo5 and n126 and n127 );
    li2 <= ( n56 )
      or ( n57 );
    n59 <= ( n140 and pi5 );
    n60 <= ( not pi6 and n139 );
    li3 <= ( n59 )
      or ( n60 );
    n62 <= ( not pi5 and pi6 and n149 );
    li4 <= ( not lo2 and not lo3 and n62 );
    n64 <= ( not pi5 and pi6 and n129 );
    li5 <= ( not lo0 and not lo2 and not lo3 and n64 );
    n66 <= ( not lo0 and not lo3 );
    n67 <= ( not lo4 and not lo5 );
    n68 <= ( not lo4 and not lo5 );
    n69 <= ( not pi2 and not pi3 and not lo1 );
    n70 <= ( lo5 and lo1 );
    n71 <= ( not pi1 and lo0 and lo1 and not lo5 );
    n72 <= ( pi4 and not lo0 and not lo1 );
    n73 <= ( not lo0 and lo1 and lo4 );
    n74 <= ( lo0 and not lo1 and not lo4 );
    n75 <= ( pi4 and not lo4 );
    n76 <= ( pi6 and pi1 );
    n77 <= ( pi5 and not lo3 );
    n78 <= ( not pi1 and not lo4 and not lo5 );
    n79 <= ( not lo1 and lo2 and n78 );
    n80 <= ( not lo2 and not lo3 );
    n81 <= ( pi6 and not lo0 and not lo1 );
    n82 <= ( not lo2 and not lo3 );
    n83 <= ( not pi1 and not lo0 and not lo1 and lo3 );
    n84 <= ( pi4 and pi3 and lo4 );
    n85 <= ( not lo0 and not lo1 and n84 );
    n86 <= ( lo0 and lo1 and not lo4 );
    n87 <= ( not lo0 and not lo1 );
    n88 <= ( pi6 and lo2 and not lo4 );
    n89 <= ( pi2 and not pi5 and not lo2 and not n34 );
    n90 <= ( lo1 and not lo4 and lo5 );
    n91 <= ( not pi2 and not lo1 and not n34 );
    n92 <= ( not pi2 and not lo1 and not n34 );
    n93 <= ( not lo1 and lo5 );
    n94 <= ( not lo2 )
      or ( n76 );
    n95 <= ( pi2 and lo5 );
    n96 <= ( n32 and n34 );
    n97 <= ( not lo0 and not lo2 and not lo3 );
    n98 <= ( n82 )
      or ( n81 );
    n99 <= ( not lo4 and not lo5 and n98 );
    n100 <= ( not lo0 )
      or ( n68 );
    n101 <= ( pi5 and n100 );
    n102 <= ( n70 )
      or ( n69 );
    n103 <= ( not lo0 and lo4 and n102 );
    n104 <= ( n86 )
      or ( n85 );
    n105 <= ( not lo5 and n104 );
    n106 <= ( not lo0 and lo1 and not n33 );
    n107 <= ( not pi6 and not lo2 and not lo3 );
    n108 <= ( n80 )
      or ( n79 );
    n109 <= ( n108 and pi5 );
    n110 <= ( not lo0 and not lo2 and not lo3 );
    n111 <= ( not lo2 )
      or ( n83 );
    n112 <= ( not lo4 and not lo5 and n111 );
    n113 <= ( n33 and lo1 );
    n114 <= ( not pi2 and not lo1 and not n34 );
    n115 <= ( n91 )
      or ( n90 );
    n116 <= ( n72 )
      or ( n71 );
    n117 <= ( not lo4 and n116 );
    n118 <= ( n92 )
      or ( lo5 );
    n119 <= ( not lo0 and n118 );
    n120 <= ( lo5 )
      or ( n75 );
    n121 <= ( pi2 and not lo1 and n120 );
    n122 <= ( not n32 )
      or ( n93 );
    n123 <= ( pi3 and lo4 and n122 );
    n124 <= ( pi1 and lo1 and not lo4 and lo5 );
    n125 <= ( n89 )
      or ( n88 );
    n126 <= ( not lo2 )
      or ( n87 );
    n127 <= ( not pi6 )
      or ( n77 );
    n128 <= ( n109 )
      or ( n107 );
    n129 <= ( n114 )
      or ( n113 );
    n130 <= ( n106 )
      or ( n105 );
    n131 <= ( n96 )
      or ( n95 );
    n132 <= ( not lo0 and not lo1 and n131 );
    n133 <= ( pi1 and not lo4 and not lo5 );
    n134 <= ( lo1 and lo0 and n133 );
    n135 <= ( pi6 and not lo4 and not lo5 );
    n136 <= ( not lo0 and not lo1 and lo2 and n135 );
    n137 <= ( n103 )
      or ( n101 );
    n138 <= ( not lo2 and n137 );
    n139 <= ( n112 )
      or ( n110 );
    n140 <= ( n99 )
      or ( n97 );
    n141 <= ( n74 )
      or ( n73 );
    n142 <= ( not lo5 and n141 );
    n143 <= ( n124 )
      or ( n123 )
      or ( n121 );
    n144 <= ( not lo0 and n143 );
    n145 <= ( n119 )
      or ( n117 );
    n146 <= ( n67 )
      or ( n66 );
    n147 <= ( n138 )
      or ( n136 );
    n148 <= ( n134 )
      or ( n132 );
    n149 <= ( n144 )
      or ( n142 );
end LGSynth91__s386_behav;
