/* This file is generated by ttl2pld.pl */
/* Please don't edit it. */

Name     war ;
PartNo   cpld ;
Date     12/5/2018 ;
Revision 01 ;
Designer  ;
Company   ;
Assembly None ;
Location E3 ;
Device   f1508ispplcc84;

/* Input Pins */
pin 84 = del_1_low;
pin  1 = grn_delay;
pin 25 = initialize;
pin 81 = ld_del_low;
pin 50 = md3_low;
pin 44 = md4_low;
pin 41 = md5_low;
pin 40 = md6_low;
pin 39 = md7_low;
pin 22 = md8_low;
pin 21 = md9_low;
pin 20 = md10_low;
pin 18 = md11_low;
pin 54 = n_t_35x;
pin 33 = pause_low;
pin 83 = red_delay;
pin 52 = set_done;
pin 29 = tp3;
$IFDEF HCONNECTOR
pin = x_ac_low;
pin = x_dec;
pin = x_inc;
pin = y_ac_low;
pin = y_dec;
pin = y_inc;
pin = z_pulse;
$ENDIF
pin  2 = !d00;
pin  4 = !d01;
pin  5 = !d02;
pin  6 = !d03;
pin  8 = !d08;
pin  9 = !d09;
pin 10 = !d10;
pin 11 = !d11;

/* Output Pins */
pin 55 = b_dixy_low;
pin 51 = btp3;
pin 31 = c0_low;
pin 30 = c1_low;
pin 57 = chan_low;
pin 56 = col_red_low;
pin 49 = data00_low;
pin 48 = data01_low;
pin 46 = data02_low;
pin 45 = data03_low;
pin 37 = data04_low;
pin 36 = data05_low;
pin 35 = data06_low;
pin 34 = data07_low;
pin 17 = data08_low;
pin 16 = data09_low;
pin 15 = data10_low;
pin 12 = data11_low;
pin 63 = dly_done_low;
pin 58 = erase_low;
pin 28 = internal_io_low;
pin 27 = interrupt_low;
pin 61 = n_t_27x;
pin 80 = non_store_low;
pin 24 = skip_low;
pin 60 = write_thru_low;
pin 77 = load_x;
pin 79 = load_y;
pin 64 = !di02;
pin 65 = di03;
pin 67 = di04;
pin 68 = di05;
pin 69 = di06;
pin 70 = di07;
pin 73 = di08;
pin 74 = di09;
pin 75 = di10;
pin 76 = di11;

/* Internal nodes */

node write_thru;
node store;
node erase;
node chan;
node color;
node int_en;
node n_t_1x;
node x02;
node x03;
node x04;
node x05;
node x06;
node x07;
node x08;
node x09;
node x10;
node x11;
node y02;
node y03;
node y04;
node y05;
node y06;
node y07;
node y08;
node y09;
node y10;
node y11;
node int_enable;
node device_flag;

/* Equations */

spare1 = 'b'0;
/* BUGBUG: The !! in the next line should not be needed! */
n_t_15x = n_t_14x; /* W1 */
/*n_t_15x = md5_low; /* W2 */

$IFNDEF HCONNECTOR
x_ac_low = 'b'1;
x_inc = 'b'1;
x_dec = 'b'1;
y_ac_low = 'b'1;
y_inc = 'b'1;
y_dec = 'b'1;
z_pulse = 'b'1;
$ENDIF

/* e3: sn7402 */
dly_done_low = !(red_delay
               # grn_delay);
n_t_26x = !(clear
          # set_done);
n_t_34x = !(grn_delay
          # red_delay);
clear_done_low = !(n_t_35x
                 # erase);

/* e5: sn7474 */
write_thru.ar = clear;
write_thru.d = n_t_13x;
write_thru.ck = ld_en_reg;
store.ar = clear;
store.d = n_t_22x;
store.ck = ld_en_reg;

/* e6: sn7474 */
erase.ar = !n_t_26x;
erase.d = n_t_24x;
erase.ck = ld_en_reg;
color.ar = clear;
color.d = n_t_11x;
color.ck = ld_en_reg;
color_low = !color;

/* e7: n8881n */
/* col_red_low = !color; */
/* !n_t_27x = !(!store & color_low); */

/* e8: n8881n */
/* data07_low = !(!dire_low & store); */
/* data09_low = !(color & !dire_low); */
/* data06_low = !(!dire_low & write_thru); */

/* e9: sp380n */
!n_t_24x = data08_low
         # load_data_low;
!n_t_22x = load_data_low
         # data07_low;
!n_t_13x = data06_low
         # load_data_low;
!n_t_11x = load_data_low
         # data09_low;

/* e10: sn7406 */
/* erase_low = !erase; */
/* n_t_27x = n_t_27x; */
/* write_thru_low = !write_thru; */
/* n_t_43x = !color_low; */
/* non_store_low = store; */

/* e11: sp380n */
!n_t_14x = md5_low
         # pause_low;
!n_t_17x = pause_low
         # md7_low;
!n_t_12x = md4_low
         # pause_low;
!n_t_10x = pause_low
         # md3_low;

/* e12: sp314n */
/*!iot = n_t_15x
     # pause_low
     # n_t_17x
     # n_t_12x
     # n_t_10x
     # md6_low
     # md8_low;*/
iot = !(n_t_15x
     # pause_low
     # n_t_17x
     # n_t_12x
     # n_t_10x
     # md6_low
     # md8_low);

/* e13: sp380n */
!di10 = data10_low
       # load_data_low;
!di11 = data11_low
       # load_data_low;

/* e13b: n8881n */
/* data11_low = !(d11 & !iot4l); */
/* data10_low = !(d10 & !iot4l); */
/* data09_low = !(d09 & !iot4l); */
/* data08_low = !(d08 & !iot4l); */

/* e14: sn7404 */
btp3 = tp3;

/* e16: n8881n */
/* data10_low = !(chan & !dire_low); */
/* data11_low = !(!dire_low & int_en); */
/* c0_low = !n_t_4x; */
/* c1_low = dire_low; */

/* e17: n8881n */
/* skip_low = !(!disd_low & n_t_1x); */
/* interrupt_low = !(n_t_1x & int_en); */
/* internal_io_low = !iot; */
/* data00_low = !(n_t_1x & !dire_low); */

/* e18: sn7474 */
chan.ar = clear;
chan.d = di10;
chan.ck = ld_en_reg;
int_en.ar = clear;
int_en.d = di11;
int_en.ck = ld_en_reg;

/* e19: sn7474 */
n_t_1x.ar = !cl_done_low;
n_t_1x.d = 'b'1;
n_t_1x.ck = n_t_3x;

/* e20: sn7402 */
ld_en_reg = !(dile_low
            # !tp3);
load_en_low = !(!dilx_low
              # !dily_low);
n_t_23x = !(dicl_low
          # !tp3);

/* e21: sn7404 */

/* e22: sn7400 */
b_dicd_low = !(btp3 & !dicd_low);
b_dixy_low = !(btp3 & !dixy_low);
load_x = !(!dilx_low & btp3);
load_y = !(btp3 & !dily_low);

/* e23: sn74h21 */
cl_done_low = !clear & b_load_en_low & b_dixy_low & b_dicd_low;
n_t_3x = del_1_low & !set_done & dly_done_low & ld_del_low;

/* e24: sp380n */
!n_t_19x = md11_low
         # !iot;
!n_t_20x = !iot
         # md10_low;
clear = initialize
         # n_t_23x;
!n_t_21x = md9_low
         # !iot;

/* e25: dec8251 */
!dicl_low = iot & !n_t_21x & !n_t_20x & !n_t_19x;
!dicd_low = iot & !n_t_21x & !n_t_20x & n_t_19x;
!disd_low = iot & !n_t_21x & n_t_20x & !n_t_19x;
!dilx_low = iot & !n_t_21x & n_t_20x & n_t_19x;
!dily_low = iot & n_t_21x & !n_t_20x & !n_t_19x;
!dixy_low = iot & n_t_21x & !n_t_20x & n_t_19x;
!dile_low = iot & n_t_21x & n_t_20x & !n_t_19x;
!dire_low = iot & n_t_21x & n_t_20x & n_t_19x;

/* e26: sn7400 */
n_t_4x = !(dile_low & dire_low);
!load_data_low = !(dile_low & load_en_low);
n_t_2x = !(load_en_low & clear_done_low);
b_load_en_low = !(n_t_2x & btp3);

/* e27: sn7400 */
!n_t_9x = !(z_pulse & del_1_low);

/* e28: sn7416 */
/* chan_low = !chan; */
/* n_t_9x = n_t_9x; */
/* !clear = !clear; */
/* clear = clear; */
/* !iot = !iot; */
/* load_data_low = load_data_low; */

/* e29: sn7404 */

/* e30: sn7404 */

/* e31: sp380n */
!di03 = data03_low
      # load_en_low;
!di02 = load_en_low
      # data02_low;
!di09 = data09_low
      # load_en_low;
!di08 = load_en_low
      # data08_low;

/* e32: sp380n */
!di04 = data04_low
      # load_en_low;
!di05 = load_en_low
      # data05_low;
!di06 = load_en_low
      # data06_low;
!di07 = load_en_low
      # data07_low;

/* e33: sn74193 */
y03.ap = !load_y & di03;
y03.ar = !load_y & !di03;
y03.t = 'b'1;
y03.ck = n_t_64x
       # n_t_65x;
y02.ap = !load_y & di02;
y02.ar = !load_y & !di02;
y02.t = 'b'1;
y02.ck = n_t_64x & !y03
       # n_t_65x & y03;

/* e34: sn74193 */
x03.ap = !load_x & di03;
x03.ar = !load_x & !di03;
x03.t = 'b'1;
x03.ck = n_t_60x
       # n_t_61x;
x02.ap = !load_x & di02;
x02.ar = !load_x & !di02;
x02.t = 'b'1;
x02.ck = n_t_60x & !x03
       # n_t_61x & x03;

/* e35: sn74193 */
y07.ap = !load_y & di07;
y07.ar = !load_y & !di07;
y07.t = 'b'1;
y07.ck = n_t_66x
       # n_t_67x;
y06.ap = !load_y & di06;
y06.ar = !load_y & !di06;
y06.t = 'b'1;
y06.ck = n_t_66x & !y07
       # n_t_67x & y07;
y05.ap = !load_y & di05;
y05.ar = !load_y & !di05;
y05.t = 'b'1;
y05.ck = n_t_66x & !y07 & !y06
       # n_t_67x & y07 & y06;
y04.ap = !load_y & di04;
y04.ar = !load_y & !di04;
y04.t = 'b'1;
y04.ck = n_t_66x & !y05 & !y07 & !y06
       # n_t_67x & y05 & y07 & y06;
n_t_65x = y07 & y06 & y05 & y04;
n_t_64x = !y07 & !y06 & !y05 & !y04;

/* e36: sn74193 */
x07.ap = !load_x & di07;
x07.ar = !load_x & !di07;
x07.t = 'b'1;
x07.ck = n_t_62x
       # n_t_63x;
x06.ap = !load_x & di06;
x06.ar = !load_x & !di06;
x06.t = 'b'1;
x06.ck = n_t_62x & !x07
       # n_t_63x & x07;
x05.ap = !load_x & di05;
x05.ar = !load_x & !di05;
x05.t = 'b'1;
x05.ck = n_t_62x & !x07 & !x06
       # n_t_63x & x07 & x06;
x04.ap = !load_x & di04;
x04.ar = !load_x & !di04;
x04.t = 'b'1;
x04.ck = n_t_62x & !x05 & !x07 & !x06
       # n_t_63x & x05 & x07 & x06;
n_t_61x = x07 & x06 & x05 & x04;
n_t_60x = !x07 & !x06 & !x05 & !x04;

/* e37: sn74193 */
y11.ap = !load_y & di11;
y11.ar = !load_y & !di11;
y11.t = 'b'1;
y11.ck = y_dec
       # y_inc;
y10.ap = !load_y & di10;
y10.ar = !load_y & !di10;
y10.t = 'b'1;
y10.ck = y_dec & !y11
       # y_inc & y11;
y09.ap = !load_y & di09;
y09.ar = !load_y & !di09;
y09.t = 'b'1;
y09.ck = y_dec & !y11 & !y10
       # y_inc & y11 & y10;
y08.ap = !load_y & di08;
y08.ar = !load_y & !di08;
y08.t = 'b'1;
y08.ck = y_dec & !y09 & !y11 & !y10
       # y_inc & y09 & y11 & y10;
n_t_67x = y11 & y10 & y09 & y08;
n_t_66x = !y11 & !y10 & !y09 & !y08;

/* e38: sn74193 */
x11.ap = !load_x & di11;
x11.ar = !load_x & !di11;
x11.t = 'b'1;
x11.ck = x_dec
       # x_inc;
x10.ap = !load_x & di10;
x10.ar = !load_x & !di10;
x10.t = 'b'1;
x10.ck = x_dec & !x11
       # x_inc & x11;
x09.ap = !load_x & di09;
x09.ar = !load_x & !di09;
x09.t = 'b'1;
x09.ck = x_dec & !x11 & !x10
       # x_inc & x11 & x10;
x08.ap = !load_x & di08;
x08.ar = !load_x & !di08;
x08.t = 'b'1;
x08.ck = x_dec & !x09 & !x11 & !x10
       # x_inc & x09 & x11 & x10;
n_t_63x = x11 & x10 & x09 & x08;
n_t_62x = !x11 & !x10 & !x09 & !x08;

/* e39: dec8235 */
/* data10_low = !(y11 & !y_ac_low
           # x11 & !x_ac_low); */
/* data11_low = !(y10 & !y_ac_low
           # x10 & !x_ac_low); */
/* data09_low = !(y09 & !y_ac_low
           # x09 & !x_ac_low); */
/* data08_low = !(y08 & !y_ac_low
           # x08 & !x_ac_low); */

/* e40: dec8235 */
/* data07_low = !(y07 & !y_ac_low
           # x07 & !x_ac_low); */
/* data06_low = !(y06 & !y_ac_low
           # x06 & !x_ac_low); */
/* data05_low = !(y05 & !y_ac_low
           # x05 & !x_ac_low); */
/* data04_low = !(y04 & !y_ac_low
           # x04 & !x_ac_low); */

/* e41: dec8235 */
/* data03_low = !(y03 & !y_ac_low
           # x03 & !x_ac_low); */
/* data02_low = !(y02 & !y_ac_low
           # x02 & !x_ac_low); */

/* e46: sn7430 */
iotl = !(md8_low & md3_low & md4_low & !md5_low & !pause_low & md7_low & !md6_low);

/* e47: sn7474 */
int_enable.ap = !iot1l;
int_enable.d = 'b'1;
int_enable.ck = 'b'0;
int_enable.ar = !n_t_208x;
device_flag.ar = !n_t_219x;
device_flag.d = 'b'0;
device_flag.ck = 'b'0;
device_flag.ap = !rd_rqst;

/* e49: n8881n */
/* skip_low = iot3l; */
/* int_rqst_low = !(device_flag & int_enable); */

/* e50: n8881n */
/* data03_low = !(d03 & !iot4l); */
/* data02_low = !(d02 & !iot4l); */
/* data01_low = !(d01 & !iot4l); */
/* data00_low = !(d00 & !iot4l); */

/* e51: sn7442 */
!iot0l = !iotl & md9_low & md10_low & md11_low;
!iot1l = !iotl & md9_low & md10_low & !md11_low;
!iot2l = !iotl & md9_low & !md10_low & md11_low;
!iot3l = !iotl & md9_low & !md10_low & !md11_low;
!iot4l = !iotl & !md9_low & md10_low & md11_low;

/* e52: sn7410 */
!n_t_208x = !(!initialize & iot0l & iot2l);
!n_t_219x = !(iot2l & !initialize & iot4l);

/* e55: n8881n */
/* internal_io_low = iotl; */
/* c1_low = iot4l; */
/* c0_low = iot4l; */

/* r168: r_us_ */
rd_rqst = 'b'1;

/* Open collector 'wire-or's */
property atmel {open_collector= c0_low};
!c0_low = (n_t_4x)
          # (!iot4l);
c0_low.oe = (n_t_4x)
          # (!iot4l);
property atmel {open_collector= c1_low};
!c1_low = (!dire_low)
          # (!iot4l);
c1_low.oe = (!dire_low)
          # (!iot4l);
property atmel {open_collector= chan_low};
!chan_low = chan;
chan_low.oe = chan;
property atmel {open_collector= clear};
clear.oe = !clear;
property atmel {open_collector= col_red_low};
!col_red_low = color;
col_red_low.oe = color;
property atmel {open_collector= data00_low};
!data00_low = (n_t_1x & !dire_low)
              # (d00 & !iot4l);
data00_low.oe = (n_t_1x & !dire_low)
              # (d00 & !iot4l);
property atmel {open_collector= data01_low};
!data01_low = (d01 & !iot4l);
data01_low.oe = (d01 & !iot4l);
property atmel {open_collector= data02_low};
!data02_low = (y02 & !y_ac_low
           # x02 & !x_ac_low)
              # (d02 & !iot4l);
data02_low.oe = (y02 & !y_ac_low
           # x02 & !x_ac_low)
              # (d02 & !iot4l);
property atmel {open_collector= data03_low};
!data03_low = (y03 & !y_ac_low
           # x03 & !x_ac_low)
              # (d03 & !iot4l);
data03_low.oe = (y03 & !y_ac_low
           # x03 & !x_ac_low)
              # (d03 & !iot4l);
property atmel {open_collector= data04_low};
!data04_low = (y04 & !y_ac_low
           # x04 & !x_ac_low);
data04_low.oe = (y04 & !y_ac_low
           # x04 & !x_ac_low);
property atmel {open_collector= data05_low};
!data05_low = (y05 & !y_ac_low
           # x05 & !x_ac_low);
data05_low.oe = (y05 & !y_ac_low
           # x05 & !x_ac_low);
property atmel {open_collector= data06_low};
!data06_low = (!dire_low & write_thru)
           # (y06 & !y_ac_low
           # x06 & !x_ac_low);
data06_low.oe = (!dire_low & write_thru)
           # (y06 & !y_ac_low
           # x06 & !x_ac_low);
property atmel {open_collector= data07_low};
!data07_low = (!dire_low & store)
           # (y07 & !y_ac_low
           # x07 & !x_ac_low);
data07_low.oe = (!dire_low & store)
           # (y07 & !y_ac_low
           # x07 & !x_ac_low);
property atmel {open_collector= data08_low};
!data08_low = (d08 & !iot4l)
           # (y08 & !y_ac_low
           # x08 & !x_ac_low);
data08_low.oe = (d08 & !iot4l)
           # (y08 & !y_ac_low
           # x08 & !x_ac_low);
property atmel {open_collector= data09_low};
!data09_low = (color & !dire_low)
              # (d09 & !iot4l)
           # (y09 & !y_ac_low
           # x09 & !x_ac_low);
data09_low.oe = (color & !dire_low)
              # (d09 & !iot4l)
           # (y09 & !y_ac_low
           # x09 & !x_ac_low);
property atmel {open_collector= data10_low};
!data10_low = (d10 & !iot4l)
              # (chan & !dire_low)
           # (y11 & !y_ac_low
           # x11 & !x_ac_low);
data10_low.oe = (d10 & !iot4l)
              # (chan & !dire_low)
           # (y11 & !y_ac_low
           # x11 & !x_ac_low);
property atmel {open_collector= data11_low};
!data11_low = (d11 & !iot4l)
              # (!dire_low & int_en)
           # (y10 & !y_ac_low
           # x10 & !x_ac_low);
data11_low.oe = (d11 & !iot4l)
              # (!dire_low & int_en)
           # (y10 & !y_ac_low
           # x10 & !x_ac_low);
property atmel {open_collector= erase_low};
!erase_low = erase;
erase_low.oe = erase;
property atmel {open_collector= int_rqst_low};
!int_rqst_low = (device_flag & int_enable);
int_rqst_low.oe = (device_flag & int_enable);
property atmel {open_collector= internal_io_low};
!internal_io_low = (iot)
                   # (!iotl);
internal_io_low.oe = (iot)
                   # (!iotl);
property atmel {open_collector= interrupt_low};
!interrupt_low = (n_t_1x & int_en);
interrupt_low.oe = (n_t_1x & int_en);
n_t_27x = (!store & color_low);
property atmel {open_collector= n_t_27x};
n_t_27x.oe = !n_t_27x;
property atmel {open_collector= n_t_43x};
!n_t_43x = color_low;
n_t_43x.oe = color_low;
property atmel {open_collector= non_store_low};
!non_store_low = !store;
non_store_low.oe = !store;
property atmel {open_collector= skip_low};
!skip_low = (!disd_low & n_t_1x)
            # (!iot3l);
skip_low.oe = (!disd_low & n_t_1x)
            # (!iot3l);
property atmel {open_collector= write_thru_low};
!write_thru_low = write_thru;
write_thru_low.oe = write_thru;
